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