傳輸控制協議

標籤: 暫無標籤

20

更新時間: 2013-09-04

廣告

傳輸控制協議(Transmission Control Protocol, TCP)是一種面向連接的、可靠的、基於位元組流的運輸層(Transport layer)通信協議,由IETF的RFC 793說明(specified)。在簡化的計算機網路OSI模型中,它完成第四層傳輸層所指定的功能,UDP是同一層內另一個重要的傳輸協議。在網際網路協議族(Internet protocol suite)中,TCP層是位於IP層之上,應用層之下的中間層。不同主機的應用層之間經常需要可靠的、像管道一樣的連接,但是IP層不提供這樣的流機制,而是提供不可靠的包交換。

傳輸控制協議 -介紹
傳輸控制協議(Transmission Control Protocol,TCP)是一種面向連接的、可靠的、基於位元組流的運輸層通信協議,通常由IETF的RFC 793說明。在簡化的計算機網路OSI模型中,它完成傳輸層所指定的功能。

傳輸控制協議 -說明
在網際網路協議族中,TCP層是位於IP層之上,應用層之下的中間層。不同主機的應用層之間經常需要可靠的、像管道一樣的連接,但是IP層不提供這樣的流機制,而是提供不可靠的包交換。
應用層向TCP層發送用於網間傳輸的、用8位位元組表示的數據流,然後TCP把數據流分割成適當長度的報文段(通常受該計算機連接的網路的數據鏈路層的最大傳送單元(MTU)的限制)。之後TCP把結果包傳給IP層,由它來通過網路將包傳送給接收端實體的TCP層。TCP為了保證不發生丟包,就給每個位元組一個序號,同時序號也保證了傳送到接收端實體的包的按序接收。然後接收端實體對已成功收到的位元組發回一個相應的確認(ACK);如果發送端實體在合理的往返時延(RTT)內未收到確認,那麼對應的數據(假設丟失了)將會被重傳。TCP用一個校驗和函數來檢驗數據是否有錯誤;在發送和接收時都要計算校驗和。
傳輸控制協議 -連接狀態

TCP連接包括三個狀態:連接創建、數據傳送和連接終止。

傳輸控制協議 -發展過程

TCP是一個複雜的但同時又是在發展之中的協議。儘管許多重要的改進被提出和實施,發表於1981年的RFC793中說明的TCP (TCP-Tahoe)的許多基本操作還是未作多大改動。RFC1122:《網際網路對主機的要求》闡明了許多TCP協議的實現要求。RFC2581:《TCP的擁塞控制》是一篇近年來關於TCP的很重要的RFC,描述了更新后的避免過度擁塞的演算法。寫於2001年的RFC3168描述了對明顯擁塞的報告,這是一種擁塞避免的信號量機制。在21世紀早期,在所有網際網路的數據包中,通常有大約95%的包使用了TCP協議。常見的使用TCP的應用層有HTTP/HTTPS(萬維網協議),SMTP/POP3/IMAP(電子郵件協議)以及FTP(文件傳輸協議)。這些協議在今天被廣泛地使用,這證明了它們的原作者的創造是卓越的。
最近,一個新協議已經被加州理工學院的科研人員開發出來,命名為FAST TCP(基於快速活動隊列管理的規模可變的傳輸控制協議)。它使用排隊延遲作為擁塞控制信號;但是因為端到端的延遲通常不僅僅包括排隊延遲,所以FAST TCP (或更一般地,所有基於排隊延遲的演算法) 在實際互聯網中的能否工作仍然是一個沒有解決的問題。

廣告

廣告