TCP/IP之大明内阁---协议的制定
個人感言:真正的知識是深入淺出的,碼農(nóng)翻身”?公共號將苦澀難懂的計算機知識,用形象有趣的生活中實例呈現(xiàn)給我們,讓我們更好地理解。感謝“碼農(nóng)翻身”?公共號,感謝你們的成果,謝謝你們的分享。
本文源地址:TCP/IP之大明內(nèi)閣
本文是《TCP/IP之大明王朝郵差》的前傳,講一講大明內(nèi)閣的各位大人是怎么設(shè)計TCP/IP網(wǎng)絡(luò)的。大明天啟年間,明熹宗朱由校醉心于木工,重用宦官魏忠賢,不上朝已經(jīng)很久了。
內(nèi)閣首輔葉大人憂心忡忡,大明各地民不聊生,大片田地荒蕪,強盜、野獸橫行。之前修建的官道也基本廢棄了,不但收不到各地送來的奏報, 自己昨天好不容易擺脫魏忠賢,面見了一次皇上,但是請求頒發(fā)的一道圣旨竟然無法送到各個府縣,送信的郵差都被半路搶劫了,或者失蹤了!
葉首輔決定召開一次內(nèi)閣會議,研究下怎么建立一個可靠的、穩(wěn)定的、通暢的上情下達機制。
虛電路(Virtual Circuit)
首先來看一下“360百科(虛電路)”給出的解釋:虛電路是分組交換的兩種傳輸方式中的一種。在通信和網(wǎng)絡(luò)中,虛電路是由分組交換通信所提供的面向連接的通信服務(wù)。在兩個節(jié)點或應用進程之間建立起一個邏輯上的連接或虛電路后,就可以再兩個節(jié)點之間一次發(fā)送每一個分組,接收端收到分組的順序必然與發(fā)送端的發(fā)送順序一致,因此接收端無須負責在收集分組后重新進行排序。虛電路協(xié)議向高層協(xié)議隱藏了將數(shù)據(jù)分割成段、包或幀的過程。
虛電路是建立一條邏輯連接,發(fā)送方和接收方不需要預先建立連接。
好了,下面繼續(xù)原文。
前來開會的大人們聽了葉首輔說的情況,立刻都是愁眉苦臉的,面對這么一個艱巨的挑戰(zhàn),沒人愿意開口,都是在不住的嘆氣搖頭。
過了一炷香功夫,韓大人看到首輔不斷的給自己使眼色,只好開口了: “各位大人,我有個不成熟的想法,說出來大家評判一下。現(xiàn)在主要的問題是強盜橫行、野獸出沒。我想我們可以派出我們的大軍,沿路站崗,五步一崗,三部一哨, 給官道建立一個可靠的保障。”
朱大人道:“韓大人此法差矣!我大明這么多官道,大軍再多也不夠用啊。”
韓大人笑道: “朱大人,看來你沒明白,我的意思不是把所有的官道都布上崗哨, 而是說我們要建立一個連接通道!”
“連接?什么連接? ” 朱大人說 ,“沒聽說過”。
?“假如我們京城要和開封府通信,中間會經(jīng)過很多的市鎮(zhèn)。我們只需要派出一隊官兵,把從京城到開封府的道路給保護好就可以了,這樣就不怕那些強盜虎豹,等到雙方通信一完,大軍即可撤回,去保護另外一個通信通道,這就是用官兵建立一個連接!”
葉首輔道:“韓大人說的有道理,至少能解決問題。不過我們的主力大軍都被派到東北對付努爾哈赤去了。所以,我們需要和沿途的市鎮(zhèn)、驛站協(xié)商,主要讓他們出兵, 和京城的大軍一起建立安全的通道。”
“這樣的話在一次通信中都可以走這個安全的通道,很寬敞、很可靠。但是代價也很高,為了通信一次,得動用這么多士兵,還得和中間節(jié)點協(xié)商。” 朱大人也學會了抽象,造出了”中間節(jié)點“這樣的新詞兒。
韓大人道:“嗯, 還有一點就是如果通道暫時不發(fā)信件的話,就閑置浪費了。”
葉首輔道:“那也是沒有辦法的事情,我們先這么試行一段時間吧。”
(碼農(nóng)翻身公眾號注:這就是所謂的虛電路,綠色部分為連接通道,所有的消息都從同一個通道上發(fā)送)
虛電路的特點
關(guān)于“虛電路”,從上面可以總結(jié)出其如下特點:
虛電路通信與電路交換類似,兩者都是面向連接的,即數(shù)據(jù)按照正確的順序發(fā)送,并且在連接建立階段都需要額外開銷。但是,電路交換提供穩(wěn)定的比特率和延遲時間,而虛電路服務(wù)的比特率和延遲時間要取決于以下因素:
1.網(wǎng)絡(luò)節(jié)點上包隊列的長度,
2.應用程序產(chǎn)生數(shù)據(jù)的比特率,
3.使用統(tǒng)計多路復用技術(shù)時,共享同一網(wǎng)絡(luò)資源的其他用戶的負荷。
4.許多虛電路協(xié)議通過數(shù)據(jù)重傳,包括檢錯糾錯和自動重傳請求(ARQ),提供可靠的通信服務(wù)。
虛電路是在分組交換散列網(wǎng)絡(luò)上的兩個或多個端點站點間的鏈路。它為兩個端點間提供臨時或?qū)S妹嫦蜻B接的會話。它的固有特點是,有一條通過多路徑網(wǎng)絡(luò)的預定路徑。提前定義好一條路徑,可以改進性能,并且消除了幀和分組對頭的需求,從而增加了吞吐率。從技術(shù)上看,可以通過分組交換網(wǎng)絡(luò)的物理路徑進行改變,以避免擁擠和失效線路,但是兩個端系統(tǒng)要保持一條連接,并根據(jù)需要改變路徑描述。
分組交換
先看一下摘選自“360百科(分組交換)”上的解釋:
在通信過程中,通信雙方以分組為單位、使用存儲-轉(zhuǎn)發(fā)機制實現(xiàn)數(shù)據(jù)交互的通信方式,被稱為分組交換(PS:packet switching)。
分組交換也稱為包交換,它將用戶通信的數(shù)據(jù)劃分成多個更小的等長數(shù)據(jù)段,在每個數(shù)據(jù)段的前面加上必要的控制信息作為數(shù)據(jù)段的首部,每個帶有首部的數(shù)據(jù)段就構(gòu)成了一個分組。首部指明了該分組發(fā)送的地址,當交換機收到分組之后,將根據(jù)首部中的地址信息將分組轉(zhuǎn)發(fā)到目的地,這個過程就是分組交換。能夠進行分組交換的通信網(wǎng)被稱為分組交換網(wǎng)。
分組交換網(wǎng)一般由分組交換機、網(wǎng)絡(luò)管理中心、遠程集中器、分組裝拆設(shè)備、分組終端/非分組終端和傳輸線路等基本設(shè)備組成。
分組交換的本質(zhì)就是存儲轉(zhuǎn)發(fā),它將所接受的分組暫時存儲下來,在目的方向路由上排隊,當它可以發(fā)送信息時,再將信息發(fā)送到相應的路由上,完成轉(zhuǎn)發(fā)。其存儲轉(zhuǎn)發(fā)的過程就是分組交換的過程。
分組交換的思想來源于報文交換,報文交換也稱為存儲轉(zhuǎn)發(fā)交換,它們交換過程的本質(zhì)都是存儲轉(zhuǎn)發(fā),所不同的是分組交換的最小信息單位是分組,而報文交換則是一個個報文。由于以較小的分組為單位進行傳輸和交換,所以分組交換比報文交換快。報文交換主要應用于公用電報網(wǎng)中。
分組由分組頭和其后的用戶數(shù)據(jù)部分組成,分組頭包含接收地址和控制信息,其長度為3-10B,用戶數(shù)據(jù)部分長度是固定的,平均為128B,最長不超過256B。分組交換路由選擇確定了輸出端口和下一個節(jié)點后,必須使用交換技術(shù)將分組從輸入端口傳送到輸出端口,實現(xiàn)輸送比特通過網(wǎng)絡(luò)節(jié)點。
好,下面繼續(xù)正文:
“虛電路”運行了半年,終于勉強上情下達了。但是被魏忠賢得知,添油加醋的給皇帝朱由校說了很多壞話,木匠皇帝雷霆大怒,大罵內(nèi)閣浪費國家人力物力,下令立即停止。
內(nèi)閣恨透了魏忠賢,但是又不得不停止。
這一天皇上又沒上早朝,大家愁眉苦臉的聚到一起商議。
禮部右侍郎孫承宗突然想起了一件事情:“我巡防邊關(guān)的時候聽說袁崇煥使用了一個奇怪的辦法來傳遞軍務(wù)物資,他不用軍隊在官道站崗,不用建立安全的連接通道,完全依靠馬匹、騾子這樣的牲畜進行通信。”
“怎么可能? 馬匹不通人性,跑丟了怎么辦?”
孫承宗道:“他這些馬是訓練過的,身上帶著信件或者物資,可以在官道上走,每到一個驛站或者市鎮(zhèn),里邊的衙役看看信件的目的地,喂喂馬,然后把馬引到下一個官道就可以了。很省事!?當然具體到那個官道是衙役決定的,他會搜集各種消息,確定那個官道匪患少、虎狼少。”(碼農(nóng)翻身注:驛站類似路由器,需要構(gòu)建路由表, 轉(zhuǎn)發(fā)數(shù)據(jù)分組)
“這還解決不了問題,路上沒官兵保護,馬可能會把搶走,或者被虎豹吃掉,這樣物資還是丟了。”
孫承宗道:“這一點袁崇煥他們也想到了,他們發(fā)明了一種叫失敗重傳的方法,如果收不到對方的確認回信,就會重新發(fā)送。”
“重新發(fā)送的代價太高了吧,畢竟是物資啊!”(在計算機中,物資是很廉價的數(shù)據(jù)分組)
“是這樣,他們一般把一個大件的物資拆成小塊,因為一匹馬也拉不了多少,然后給每個小塊變編號,哪個小塊丟了,就只發(fā)送那個編號的。袁崇煥說他們有個叫‘幻月寶鏡’的東西,丟了的東西可以從中再取出來!”
“這真是個寶貝啊, 一般人怎么可能有啊。”
葉首輔道:“不過這倒是一個有意思的思路,不需要事先建立真正的連接通道,每個編號小塊走的路可能也不一樣,完全由中間節(jié)點的衙役們來決定馬匹的下一個路徑是哪一個。”
(碼農(nóng)翻身注: 這叫做分組交換)
孫承宗補充道:”葉大人看的很透徹,不僅路徑不同,這些小塊也可能不按次序(失序)到達。他用這種方法其實是說中間節(jié)點并不承諾提供可靠的連接通道,物資完全可能失序、重復、甚至丟失。所謂可靠的傳輸完全由兩個端點(例如京城和開封府)來實現(xiàn)。”
(碼農(nóng)翻身注:京城午門給內(nèi)鄉(xiāng)縣衙發(fā)了A1、A2,京城德勝門給開封府發(fā)送B1、B2、B3,圖中顯示分組的路徑)
韓大人道:“首輔大人,要不我們也試試?不過我們得想辦法把幻月寶鏡弄來。 ”
葉首輔道:“我們奏請皇上讓袁崇煥進京述職,讓他把寶鏡帶來,這一次一定得讓皇上支持,要不然還會中途夭折,我馬上進宮,大家靜候佳音吧。”
分組交換的特點
補充知識,從上面的形象案例總結(jié)一下分組交換的特點,如下:
1、線路利用率高:分組交換以虛電路的形式進行信道的多路復用,實現(xiàn)資源共享,可在一條物理線路上提供多條邏輯信道,極大地提高線路的利用率。使傳輸費用明顯下降。
?
2、不同種類的終端可以相互通信:分組網(wǎng)以X.25協(xié)議向用戶提供標準接口,數(shù)據(jù)以分組為單位在網(wǎng)絡(luò)內(nèi)存儲轉(zhuǎn)發(fā),使不同速率終端,不同協(xié)議的設(shè)備經(jīng)網(wǎng)絡(luò)提供的協(xié)議變換功能后實現(xiàn)互相通信。
3、信息傳輸可靠性高:在網(wǎng)絡(luò)中每個分組進行傳輸時,在節(jié)點交換機之間采用差錯校驗與重發(fā)的功能,因而在網(wǎng)中傳送的誤碼率大大降低。而且在網(wǎng)內(nèi)發(fā)生故障時,網(wǎng)絡(luò)中的路由機制會使分組自動地選擇一條新的路由避開故障點,不會造成通信中斷。
4、分組多路通信:由于每個分組都包含有控制信息,所以分組型終端可以同時與多個用戶終端進行通信,可把同一信息發(fā)送到不同用戶。
5、計費與傳輸距離無關(guān):網(wǎng)絡(luò)計費按時長、信息量計費,與傳輸距離無關(guān),特別適合那些非實時性,而通信量不大的用戶。
?(END)
?補充知識
除了虛電路、分組交換技術(shù),還有電路交換和報文交換。
電路交換
電路交換就是計算機終端之間通信時,一方發(fā)起呼叫,獨占一條物理線路。當交換機完成接續(xù),對方收到發(fā)起端的信號,雙方即可進行通信(主要應用于電話通信網(wǎng)中)。在整個通信過程中雙方一直占用該電路。它的特點是實時性強,時延小,交換設(shè)備成本較低。但同時也帶來線路利用率低,電路接續(xù)時間長,通信效率低,不同類型終端用戶不能通信等缺點。電路交換比較適用于信息量大、長報文,經(jīng)常使用的固定用戶之間的通信。
報文交換
將用戶的報文存儲在交換機的存儲器中。當所需要的輸出電路空閑時,再將該報文發(fā)向接收交換機或終端,它以"存儲-轉(zhuǎn)發(fā)"方式在網(wǎng)內(nèi)傳輸數(shù)據(jù)。報文交換的優(yōu)點是中繼電路利用率高,可以多個用戶同時在一條線路上傳送,可實現(xiàn)不同速率、不同規(guī)程的終端間互通。但它的缺點也是顯而易見的。以報文為單位進行存儲轉(zhuǎn)發(fā),網(wǎng)絡(luò)傳輸時延大,且占用大量的交換機內(nèi)存和外存,不能滿足對實時性要求高的用戶。報文交換適用于傳輸?shù)膱笪妮^短、實時性要求較低的網(wǎng)絡(luò)用戶之間的通信,如公用電報網(wǎng)。電子郵件系統(tǒng)(E-mail)也適合采用報文交換方式。
“碼農(nóng)翻身”?公共號?: 由工作15年的前IBM架構(gòu)師創(chuàng)建,分享編程和職場的經(jīng)驗教訓。
長按二維碼, 關(guān)注碼農(nóng)翻身
寫代碼是一種藝術(shù),甚于蒙娜麗莎的微笑。from:?http://www.cnblogs.com/tgycoder/p/6075767.html
總結(jié)
以上是生活随笔為你收集整理的TCP/IP之大明内阁---协议的制定的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我为何爱读代码?你为何也应当爱?
- 下一篇: 使Docker搭建Java Web运行环