分組交換網路、電路交換網路與TCP/IP協議的關係?

對分組交換網路、電路交換網路與TCP/IP協議之間的關係有點混亂,查了些資料有了三種理解同時也產生了相關疑問,不知道哪種理解是正確的,還是說有其它解釋。

一、對於它們的關係我的第一種理解。

TCP/IP協議是基於分組交換的協議,也就是說在當今廣域網大部分都採用TCP/IP協議的情況下,廣域網基本等同於分組交換網。TCP/IP協議棧中的UDP協議契合了分組交換網路的特點,而TCP協議的存在的目的是為了解決分組交換網路的部分缺點,比如包的亂序、重複、丟包什麼的。 那隨之產生了一個疑問,那電路交換網採用什麼又是什麼協議?還是說基於電路交換網路的廣域網已經不怎麼使用了?

二、對它們的關係我的第二種理解。

TCP/IP協議既能用在分組交換網路又能用在電路交換網路。

那這樣我又有了幾個疑問,如果TCP/IP協議能用在電路交換網路,那協議棧中的TCP協議存在的意義在哪裡?電路交換一開始就建立了連接,通信雙方獨佔,那TCP協議又進行一次連接有什麼意義?那UDP協議在這種情況下不也具備了TCP協議的一些特點?

三、對於他們的關係我的第三種理解

不管是電路交換還是分組交換,它們都是一種物理連接,而TCP/IP協議中的TCP、UDP協議是一種邏輯的連接?


30、40年代的戰爭片經常有這樣的鏡頭,國民黨司令官氣急敗壞地拿起電話:給我接通前線某某師!然後接線員會插拔一些插頭,然後電話就接通了。這種就是最老式的電話交換網路,依靠人工來將線路搭接在一起,這相當於在兩台電話機之間有一根物理線路連接。

後來有了程式控制交換機,不需要人工來插拔線路,交換機會根據用戶的撥號號碼來自動搭接端到端的線路,於是一條獨佔的電路動態生成了,只用於這個電話通信使用,只有電話掛斷了,信道釋放出來了,才可以被重新使用。

那電路交換網路可以傳輸IP嗎?

當然可以,比如最早使用電話線撥號上網,就是在PSTN電話交換網路上傳輸IP包。但是我還是想先談談電路交換網路傳輸非IP包,在談這個之前需要先談串列口RS-232通信。

串列RS-232通信

有過console口配置路由器的同學,一定有過這樣的經驗,用RS-232 串列口連接路由器的console 口,然後打開超級終端,就可以和路由器通信了,可以配置路由器,可以看到路由器的輸出,在整個過程中,無需配置任何IP地址就可以通信,不是嗎?哦,原來計算機通信並不是都需要IP地址的!如果非要把這種通信用OSI模型來模塊化,則可以表達成:

Hardware + Data link + Application = RS-232 + Application

電話撥號遠程訪問路由器AUX介面

當路由器無法通過IP網路訪問(IP網路斷),Cisco路由器上有一個AUX非同步串口,通過連接一個modem可以接受遠程電話撥號,一旦撥號成功,可以遠程配置路由器,同樣也無需配置任何IP。與RS232物理直連console口唯一區別:通過電話網路把配置命令發送到路由器,並將輸出返回電腦。電話網路所建立的電路交換相當於一根電纜,對應OSI模型:

circuit + application

電路交換網路傳輸IP

這就是電話線撥號上網,電路交換所完成的任務也是類似一根電纜:

PC---modem ----PSTN----IP Gateway ---Internet

PC 通過撥號與IP Gateway之間建立電路(這電路是獨佔的,PC與gateway之間的數據信號順著電路到達對方),然後在電路上傳輸PPP,然後IP,對應的模型為:

Circuit + PPP + IP + TCP/UDP + Application

傳統電路交換網路目前不再發展,PSTN撥號服務基本上關閉了。

至於T3/E3 介面類型,既可以配置成支持電路交換的介面類型(語音),又可以配置成HDLC/PPP封裝類型,直接可以提供分組交換,即IP包交換。

簡言之,一個串列介面,可以提供介面供電路交換使用,沒有IP概念;也可以提供介面供包交換使用,支持IP網路,但兩者不能同時使用。


電路交換最大的特點是獨佔性,一個信道,比如一條電話線,或者一個SDH系統中的時隙分給了你,這時候別人就不能用,家裡的電話加個分機,一個在通話時另一個沒法再撥其他的電話。而分組交換則是共享的,一個網口不夠用,加個交換機,幾個計算機都能上網。

但有一點,OSI的七層模型,是一種參考模型,不是唯一模型,也不是強制模型。而且,另一個關鍵,書上舉例子的協議棧都是單純而清晰的,而在實際的網路中,組網會遠比入門的書上複雜,而且多樣,協議之間可能會用很不同的層次關係疊加。比如,最典型的電路交換應用是電話,但現在電話網內部都是IP承載的,插網線的電話在公司里也經常見到;乙太網幀頭裡有MAC,那mac in mac是怎麼回事?電腦上設置了一個VPN,你用的究竟是寬頻運營商分你的IP還是VPN提供商分給你的IP,它們是什麼關係?書上都是IP承載在乙太網上,但現在很火的VxLAN是怎麼回事?或者更複雜點,PWE3是哪層的?是電路交換還是分組交換?

所以,這個是學究式的問題,在你聽說或者接觸到很多種類的網路之前,只要大致有個概念,能作對課本上的習題就足夠了。沒有足夠的知識,強行分類只會讓自己更加混淆。

希望這些文字,會對你有幫助,對於第二個問題

那這樣我又有了幾個疑問,如果TCP/IP協議能用在電路交換網路,那協議棧中的TCP協議存在的意義在哪裡?電路交換一開始就建立了連接,通信雙方獨佔,那TCP協議又進行一次連接有什麼意義?那UDP協議在這種情況下不也具備了TCP協議的一些特點?

電路交換網路也會有誤碼啊,如果碰巧開始那個IP包壞了被IP層丟掉怎麼辦?如果中間的IP包被丟了怎麼辦?所以握手和確認都是必要的。亂序似乎不大會出現,可是IP層還有更底層的實現,是否都保證了這一點?沒有明確列到文檔上的特性都是有風險的。建立一個TCP連接的時候,你知道下邊是IP,知道對端的TCP埠,其他還知道什麼?TCP的設計者們做了最壞的一種假設,然後基於這種假設設計了協議,在情況好於這些假設的情況下,協議仍然能夠正常工作,並且開銷很小。如果傳輸層協議可以感知底層提供的特性,並相應進行調整,那麼傳輸層協議會很複雜,底層給他提供這些信息也會很複雜,並且破壞了各層之間清晰的界面,但收益基本沒有。


電路交換應該是用來布置電話網用的。。分組交換和報文交換用於計算機網路,像ATM網就是用的分組交換里的虛電路


題主問的問題質量很高,贊一個!

如果套用7層模型,那麼電路交換和分組交換的概念,在L2結束,只能適用於一個子網或鏈接中。在L3上,可能分段分別使用了電路交換和分組交換。

但是很多系統設計並不是基於7層模型的,而是從物理層到應用層一路打通。傳統的電話交換網路就是這樣。這種協議的設計,通過帶外的信令,建立一個整條路徑都預留資源的交換。

介於電路交換和分組交換之間還有一個奇葩協議,叫ATM。當年號稱要一統天下的,轟轟烈烈的火了10年,最後被IP吃掉。

傳統的電話交換網也慢慢被IP吃掉,現在的電話,從家裡到端局還用傳統信令,再往大網裡走,已經是NGN的IP網路了。

但是,很多核心路由器之間的連接(分組網的中間某段),下層還是用電路交換,走SDH。

另外,教科書式的電路交換,應該是很狹義的,上面所說的都已經擴展了。狹義的電路交換,是以電信號或者以1個比特為單位的交換,在任何轉發節點上都只會有固定時鐘周期的時延,這個時延不是用於信息單元重組和排隊,而是電信號的重建。我個人認為,這才是」基於電路交換」和「基於分組交換」的本質區別:

有沒有信息單元的重組。

在這個意義上來說,程式控制交換機也不是狹義上的電路交換,因為他有基本幀的重組,時延雖然固定,但必須是收滿了一個幀才能轉發。有一個「串-&>並(校驗)-&>串」的過程。

上面是我自己定義的啊,因為找不到「精確的」定義。


分組交換網路就是包交換網路。在包交換網路裡面數據都是封裝在包里,然後路由設備以包為單位進行轉發(交換)。

電路交換網路以電路為單位進行交換,因此一路通信將完全佔用一條電路。這種交換的方式效率低下,但是由於用戶獨佔物理資源,因此通信質量得到保障。

TCP/IP是一套定義編碼、鏈接的協議棧。它不是一種網路的類型,而是一種組網和提供服務的方法。


你的第三個理解是正確的。

這個用OSI七層模型來描述更清楚。

物理層、數據鏈路層定義了道路。

網路層、傳輸層和會話層定義了交通規則。

表示層、應用層定義了車輛和行人。

分組交換和電路交換屬於道路。

TCP/IP屬於交通規則。

TCP/IP這種交通規則更適合分組交換這種道路,但是在電路交換這種道路上也能用。

就像紅燈停綠燈行在市內交通很合適,高速路上沒事來個紅綠燈,可以,但是很彆扭。


很奇怪還有人關注這個問題,作為國內數據通信的歷史見證人,簡單談下我的理解,電路交換典型就是程式控制交換的固話網路,專門的控制指令7號信令配套支持,它的csd模式可以支持ip連接;分組交換網更多是一種數據通信網,基本也是工作在數據鏈路層,當你北電x.25設備專門為銀行提供低帶寬專線服務;然後老美在分組交換思路的基礎上發明了tcp/ip,有了後來的全球互聯網,把數據通信就是升級擴展成為大眾市場,嗯手機打字累了,先寫這麼多吧


感覺你說的預留資源的電路交換網路就是circuit switching network…而tcp/ip是packet switching network的協議。只有用packet switching network來模擬virtual-circuit switching network…沒有反過來的…


你的第三種理解是準確的,稍微修正一下語句用詞即:

不管是電路交換還是分組交換,它們都是一種底層鏈路實現方式,而TCP/IP協議中的TCP、UDP協議實現高層通信應用。

完全用底層鏈路進行通信是可以的,這類應用都很簡單,有了TCP/IP軟體開發就不需要考慮網路底層特性就能實現功能豐富的網路應用,這也就是為什麼要在這些不同的物理或邏輯鏈路上應用TCP/IP協議的原因。


其實我上學那會,最難理解的應該是分組交換這個概念(Packet switching),明明就是包交換,不知道為何翻譯成分組交換,說計算機收到一個分組,blabla...尤記得方式困惑了我好久

如果直接翻譯成包交換,我想正常人都不需要解釋就能理解,哎


推薦閱讀:

我考了ccie,現在是學雲計算好還是考紅帽好呢?
在暴走漫畫工作是怎樣的體驗?
怎麼最快的將一張圖片在電腦和手機間傳輸?
區域網內,如何實現把一台電腦的100MB數據最快速的傳輸到其他50台電腦?
該怎麼看待網路語言?

TAG:互聯網 | 信息技術IT | 計算機網路 | ccna網路技術 |