傳輸層
互聯網協定套組 |
---|
應用層 |
傳輸層 |
網路層 |
連結層 |
傳輸層(英語:Transport Layer)在電腦網絡中是互聯網協定套件與開放系統互連(OSI)網絡堆疊中協定的分層結構中的方法的一個概念劃分。該層的協定為應用行程提供端到端的通訊服務。[1] 它提供面向連接的數據流支援、可靠性、流量控制、多路復用等服務。
互聯網與一般性網絡的開放系統互連OSI模型的基礎,TCP/IP模型的傳輸層的具體實現和含義(RFC 1122)[2]是不同的。在OSI模型中傳輸層最常被稱作第4層或L4,而TCP/IP中不常給網路層編號。
最著名的TCP/IP傳輸協定是傳輸控制協定(TCP), 它的名稱借用自整個套件的名稱。它用於面向連接的傳輸,而無連接的用戶數據報協定(UDP)用於簡單訊息傳輸。TCP是更複雜的協定,因為它的狀態性設計結合了可靠傳輸和數據流服務。這個協定組中其他重要協定有數據擁塞控制協定(DCCP)與流控制傳輸協定(SCTP)。
OSI模型 |
---|
應用層(application layer) OSI Layer 7 |
表現層(presentation layer) OSI Layer 6 |
應用層的HTTP、FTP、Telnet等協定有類似的功能。傳輸層的TLS/SSL也有類似功能。 |
會議層(session layer) OSI Layer 5 |
應用層的HTTP、RPC、SDP、RTCP等協定有類似的功能。 |
傳輸層(transport layer) OSI Layer 4 |
網路層(network layer) OSI Layer 3 |
資料鏈結層(data link layer) OSI Layer 2 |
實體層(physical layer) OSI Layer 1 |
服務
傳輸層服務通過傳輸層協定的編程介面傳遞給應用行程。該服務可以包括以下功能:
- 連接導向式通訊:通常對於一個應用行程來說,把連接解讀為數據流而非處理底層的無連接模型(如用戶數據報協定(UDP)與網際協定(IP)的資料包模型)更加容易。
- 相同次序交付:網路層通常不保證封包到達順序與傳送順序相同,但這往往是一個可取的特點。這通常是通過給報文段編號來完成的,接收者按次序將它們傳給應用行程。這可能會造成隊頭阻塞。
- 可靠性:由於網絡擁塞和錯誤,封包可能在傳輸過程中遺失。通過偵錯碼(如校驗和),傳輸協定可以檢查數據是否損壞,並通過向傳送者傳ACK或NACK訊息確認正確接收。自動重發請求方案可用於重新傳輸遺失或損壞的數據。
- 流量控制:有時必須控制兩個節點之間的數據傳輸速率以阻止快速的傳送者傳輸超出接收緩衝器所能承受的數據,造成緩衝區溢位。這也可以通過減少緩衝區不足來提高效率。
- 擁塞避免:擁塞控制可以控制進入到電信網絡的流量。
- 多路復用:埠可以在單個節點上提供多個端點。例如,郵政地址的名稱是一種多路復用,並區分同一位置的不同收件人。每個電腦應用行程會監聽它們自己的埠,這使得在同一時間可以使用多個網絡服務。它是在TCP/IP模型中是傳輸層的一部分,但在OSI模型中屬於會議層。