IRC (網際網路中繼聊天)

2021-06-14 20:23:49 字數 2013 閱讀 4643

irc是internet relay chat 的英文縮寫,中文一般稱為網際網路中繼聊天。它是由芬蘭人jarkko oikarinen於2023年首創的一種網路聊天協議。經過十年的發展,目前世界上有超過60個國家提供了irc的服務。irc的工作原理非常簡單,您只要在自己的pc上執行客戶端軟體,然後通過網際網路以irc協議連線到一台irc伺服器上即可。它的特點是速度非常之快,聊天時幾乎沒有延遲的現象,並且只占用很小的

頻寬資源。所有使用者可以在乙個被稱為\"channel\"(頻道)的地方就某一話題進行交談或密談。每個irc的使用者都有乙個nickname(暱稱)。

目錄中轉

伺服器網路

頻道請求與應答

我們來做乙個比較說明. 假設,a 與 b 要交談. 如果不採用中轉,那麼 a 直接建立一條到達 b 的通訊隧道,二者通過這條通訊隧道進行資訊交流,資訊流的方向為: a->b 和 b->a; 如果採用中轉,則需要有乙個第三方來擔任中轉角色,設為 c,a 建立一條到達 c 的通訊隧道,b 也建立一條到達c 的通訊隧道,然後 a 與 b 通過 c 來間接進行通訊,資訊流的方向為:

a->;c->;b 和 b->;c->;a

c 就起著 a 與 b 間的中轉站的作用. 中轉有什麼優點呢? 中轉的最大優點是使"群聊"能夠方便地進行. 恰當地說,中轉模式為資訊廣播提供了方便. 我們來舉例子. 假設 a,b 和 d 三者要一起聊天. 如果沒有 c 的中轉,那麼 a 要將所說的每句話分別發給 b 和d; 如果有 c 做中轉,那麼 a 將所說的話發給 c,然後 c 將 a 的話分別發給 b 和 d. 可見,當沒有中轉時,每個參與聊天的計算機都要執行資訊廣播的任務,當存在中轉時,資訊廣播的任務全由中轉者來執行.中轉站 c 的存在使得資訊交流過程中的工作任務發生分離,可以把網路環境好、機器配置高的計算機作為中轉站來提供服務功能. 這就形成了irc 的伺服器-客戶端 模型,聊天者作為客戶端,連線到中轉站伺服器上.

在上面的例子裡,只有乙個中轉者 c 來承擔服務. 當聊天者數量很多時,會使 c 不堪重負. 解決的辦法是,使用多個伺服器,伺服器之間互相連線成網路,把聊天者分散到各個伺服器上. 伺服器網路以樹型結構互相連通. 聊天者可以任選乙個伺服器連線. 舉例來說,在

北京建立乙個 irc 伺服器,稱為 bj,在

上海建立乙個 irc 伺服器,稱為 sh,然後將 bj 和 sh 連線起來,組成乙個只有兩個伺服器的 irc 網路. 北京的使用者連線到 bj 上,上海的使用者連線到 sh 上,這樣北京的使用者就可以與上海的使用者聊天了. 其他地區的使用者可以根據地理位置的遠近選擇使用bj 或 sh 伺服器. 概括地說,聊天網路上的每個伺服器都是乙個中轉站,當它從乙個伺服器或客戶收到一條訊息時,就將該訊息**給其它伺服器,同時也根據具體情況,決定是否將訊息**給連線到自己的使用者.

頻道的本質是廣播組. 使用者可以進入乙個頻道,也可以離開乙個頻道. 當乙個使用者朝頻道說話時,頻道裡的其他使用者都能收到他的話(由伺服器中轉). 當第乙個使用者進入頻道時,頻道被建立,當最後乙個使用者離開頻道時,頻道被取消. 因此,從使用者的角度看,頻道就是聊天室. 下面說說頻道之所以被稱為"頻道"的原因. 如果乙個聊天網路有多個伺服器,頻道要由伺服器共同維護. 舉乙個例子. 有三個伺服器,連線方式為 a-b-c. 在 伺服器a上,有第乙個使用者進入 #irc 頻道,這時,伺服器a上即建立頻道"#irc",a 將頻道 "irc" 的建立訊息發給 b 和 c. 由於 b 和 c 上都沒有使用者位於 #irc 頻道,因此不執行任何操作. 在這以後,伺服器c上有 乙個使用者進入 #irc 頻道,此時伺服器c上也建立頻道 "#irc",c 將"#irc" 的建立訊息發給 a 和 b. 之後,需要執行以下操作: b 上建立頻道 "#irc" 並將 a 與 c 的 "#irc" 頻道連線起來,組成乙個統一的#irc . 現在,雖然 b 上沒有使用者位於 #irc 頻道內,但是 b 上也開通了 #irc 頻道. 可見,頻道好像一條通訊管道,將所有開通此頻道的伺服器貫穿起來,資訊流在這個管道中流通.

irc上的資訊交流採用請求與應答的模式. 請求是由伺服器或客戶端發出的,其目的是請求(另)乙個伺服器執行某個操作或提供某些資訊; 應答是伺服器對乙個請求的回應資訊. 請求通常被稱為命令; 由於對每種應答都規定了乙個三位數字做標識,應答也稱為數字應答(numeric reply).

網際網路聊天

愛好自然風光攝影的小莫剛剛結識了一位有著相同興趣的美國朋友,兩人經常在msn上交流攝影技術。不過小莫的英文不太好,只能說一些簡單的英文句子,對於攝影術語的英文單詞也是一知半解,因此他對美國朋友說的很多話都不太理解。他需要不斷地把美國朋友的對話或者某個單詞複製到翻譯 中進行翻譯,並且每次都要等待十幾甚...

mysql 網際網路 MySQL網際網路業務使用建議

一 基礎規範 表儲存引擎必須使用innodb 表字符集預設使用utf8,必要時候使用utf8mb4 解讀 1 通用,無亂碼風險,漢字3位元組,英文1位元組 2 utf8mb4是utf8的超集,有儲存4位元組例如表情符號時,使用它 禁止使用儲存過程,檢視,觸發器,event 解讀 1 對資料庫效能影響...

網際網路與網際網路的區別

網際網路的英文單詞是 internet,網際網路的英文單詞是 internet。在英語中,專有名詞首字母都是大寫,用於特指某一事物。大寫的 internet 是作為乙個專有名詞出現的,所指的是由阿帕網發展而來的現如今全球最大的計算機網路,稱之為網際網路。小寫 internet 是作為乙個普通單詞出現...