無連線通信 分類
通信技術大致分為三類:面向連線的電路交換,面向連線的包交換,以及無連線的包交換。
面向無連線 在無連線方法中,網路除了把分組傳送到目的地以外不需做任何事情,如果分組丟失了,接收方必須檢測出錯誤並請求重發;如果分組因採用不同的路徑而沒有按序到達,接收方必須將它們重新排序。無連線的協定有TCP/IP協定組的IP部分,NetWare的SPX/IPX協定的IPX部分和OSI的
無連線網路協定 (CLNP)。這些協定在與OSI協定模型相當的網路層中。
在無連線的通信會話中,每個數據分組是一個在網路上傳輸的獨立單元,稱作數據報。傳送方和接收方之間沒有初始協商,傳送方僅僅向網路上傳送數據報,每個分組含有源地址和目的地址。該方法中沒有接收方發來的分組接收或未接收的應答,也沒有
流控制 ,所以分組可能不按次序到達,接收方必須對它們重新排序。如果接收到有錯誤的分組,則將它刪掉。當重新整理分組時,就會發現被刪掉的包並請求重發。
使用無連線的協定有許多好處
就性能來說,無連線策略通常更好,因為大多數網路上只有相對少的錯誤,所以被破壞的或丟失的分組很少,端點不需很多時間來重發。
區別 面向連線與無連線是計算機網路諸多概念中的很重要的之一。所謂面向連線,是指通信雙方在進行通信之前,要事先在雙方之間建立起一個完整的可以彼此溝通的通道。這個通道也就是連線,在通信過程中,整個連線的情況一直可以被實時地監控和管理。而無連線的通信,就不需要預先建立起一個聯絡兩個通信節點的連線來,需要通信的時候,傳送節點就可以往“網路”上送出信息,讓信息自主地在網路上去傳,一般在傳輸的過程中不再加以監控,讓該信息的傳遞在網上盡力而為地往目的地節點傳送。
面向無連線 在遠程通信的技術中,X.25協定是面向連線的,它的傳輸方式叫做“虛電路”(virtual circuit);在網際網路技術里,IP協定就是無連線的,它的信息傳輸方式叫做數據報(datagram)。而TCP協定就是面向連線的。
TCP是面向連線的。
UDP是面向無連線的。
TCP(Transmission Control Protocol,傳輸控制協定)
UDP(User Datagram Protocol,用戶數據包協定)
當IP包通過
路由 將數據傳輸到目的地時,會根據TCP或UDP包頭中的
源連線埠 和目的連線埠信息,請求和獲取不同的套用。也就是說,不管TCP還是UDP,都含有網路服務必須的源連線埠和目的連線埠信息,以建立和實現網路傳輸服務。
在網路中,有些服務,如HTTP、FTP等,對數據的可靠性要求較高,在使用這些服務時,必須保證
數據包 能夠完整無誤的送達;而另外一些服務,如DNS、
即時聊天 工具等,並不需要這么高的可靠性,高效率和實時性才是它們所關心的。根據這兩種服務不同的需求,也就誕生了面向連線的TCP協定,以及面向無連線的UDP協定。
連線(Connection)和無連線(Connectionless)是網路傳輸中常用的術語,二者的的關係可以用一個形象地比喻來說明,就是打電話和寫信。
打電話時,一個人首先必須撥號(發出連線請求),等待對方回響,接聽電話(建立了連線)後,才能夠相互傳遞信息。通話完成後,還需要掛斷電話(下線),才算完成了整個通話過程。寫信則不同,你只需填寫好收信人的地址信息,然後將信投入郵局,就算完成了任務。此時,郵局會根據收信人的地址信息,將信件送達指定目的地。
兩者之間有很大不同。打電話時,通話雙方必須建立一個連線,才能夠傳遞信息。連線也保證了信息傳遞的可靠性,因此,面向連線的協定必然是可靠的。無連線就沒有這么多講究,它不管對方是否有回響,是否有回饋,只管將信息傳送出去。就像信件一旦進了信箱,在它到達目的地之前,你沒法追蹤這封信的下落;接收者即使收到了信件,也不會通知你信件何時到達。在整個通訊過程中,沒有任何保障。因此面向無連線的協定也是不可靠的。當然,郵局會盡力將郵件送到目的地,99%的情況信件會安全到達,但在少數情況下也有例外。
面向連線的協定比面向無連線的協定在可靠性上有著顯著的優勢,但建立連線前必須等待接收方回響,傳輸信息過程中必須確認信息是否傳到,下線時需要發出回響信號等,無形中加大了面向
連線協定 的資源開銷。具體到TCP和UDP協定來說,除了
源連線埠 和目的連線埠,TCP還包括序號、確認信號、數據偏移、控制標誌(通常說的URG、ACK、PSH、RST、SYN、FIN)、視窗、
校驗和 、緊急指針、選項等信息,UDP則只包含長度和校驗和信息。UDP數據報比TCP小許多,這意味著更小的負載和更有效的使用
頻寬 。許多
即時聊天軟體 採用UDP協定,與此有莫大的關係。
套用 電路交換&面向連線:
電路交換是指在通信開始之前,先建立一條端到端的連線(中間可能經過很多的交換結點)。連線建立後,通信就沿著這條路徑進行。在通信期間始終占用這條信道,只是通信完畢時就釋放所占用的信道,即下線,此時其他用戶才可以使用釋放的資源。因此說電路交換是使用面向連線的服務。
分組交換&面向連線&無連線:
① 分組交換採用了
存儲轉發 技術。將欲傳送數據以組為單位進行分割,再加上一些必要的控制信息,朝著目的地傳送過去。各分組包可以通過不同的路逕到達目的地。 ② 分組交換在被使用的時候,在傳送數據之前可以先不建立連線,傳送到哪條鏈路上才占用了該鏈路的信道資源,這種不建立連線而隨時可以傳送信息的方式,我們稱為無連線。
面向無連線 ③
分組交換 也可以使用面向連線的服務,例如X.25網路、
幀中繼 網路或ATM網路都是屬於分組交換網。這種面向連線的分組交換網在傳送用戶數據之前必須先建立連線,
數據傳送 完畢後還必須釋放連線。
物理連線&虛連線:
① 電路交換是在兩個站點之間通過
通信子網 的結點建立一條專用的通信線路。這些結點通常是一些交換設備(例如
程控交換機 )。也就是說,在兩個通信站點之間需要建立實際的物理連線。
② 兩
主機 之間建立的TCP連線:
運輸層 並不知道所傳送的
報文段 都經過哪些中間結點,因此並非真正的物理連線。實際上,IP數據報都各自獨立地選擇
路由 ,而所經過的中間結點(
路由器 )並不記錄各IP數據報通過的情況。TCP連線只是從運輸層看來,好像在兩個運輸實體之間有一條連線。因此這條連線可以稱之為“虛連線”。
③
分組交換 則可分為面向連線的虛電路傳輸和無連線的數據報傳輸。
電路交換&分組交換 VS 面向連線&無連線:
① 電路交換&
分組交換 是強調在通信時用戶對網路資源的占用方式。
電路交換是在連線建立後到連線釋放前全程占用信道資源,而分組交換則是在
數據傳送 是斷續占用信道資源(分組在哪一條鏈路上傳送就占用該鏈路的信道資源)。
② 面向連線&無連線則強調通信必須經過什麼樣的階段。
面向連線必須經過三個階段:“建立連線→傳送數據→釋放連線”,而無連線則只有一個階段:“傳送數據”。