tcp可靠傳輸的實現主要依靠滑動視窗和超時重傳機制。
滑動視窗與超時重傳,保證了資料段傳輸不重複,不丟失,不差錯,按序到達。
tcp對待傳送的資料按位元組進行編序,比如0號位元組,1號位元組,2號位元組…
tcp每傳送乙個報文段,就對這個報文段設定一次計時器,如果超時,重傳該報文。
tcp基於滑動視窗協議實現可靠傳輸和流量控制,滑動視窗以位元組為單位
tcp每傳送乙個報文段,就對這個報文段設定一次計時器,如果計時器設定的重傳時間到,但還沒有收到確認,就要重傳該報文段。
超時時間的設定是乙個複雜的問題,ip層提供資料報服務,每個資料報所選擇的路由都可能有變化,導致傳輸層的往返時間變化較大。
注:rtt—round trip time
超時重傳時間rto(retransmission time-out)
rto應該略大於rtts(可以思考為什麼)
採用如下公式計算:
傳輸層 TCP協議
1 序號 在乙個tcp連線中傳送的位元組流中的每乙個位元組都按順序編號,本欄位表示本報文段所傳送資料的第乙個位元組的序號。2 確認號 期望收到對方下乙個報文段的第乙個資料位元組的序號。若確認號為n,則證明到序號n 1為止的所有資料都已正確收到。即採用累計確認 3 資料偏移 首部長度 tcp 報文段的...
傳輸層TCP協議
面向連線,可靠傳輸,面向位元組流 tcp協議 面向連線 accept 獲取新連線 1.當呼叫accept之後,核心就會為新連線建立乙個套接字描述符,服務端使用該套接字描述符進行和客戶端進行資料通訊 2.連線建立之後,雙方都可以傳送資料 確認msg1 確認的行為是傳輸層tcp協議的行為,不是應用層的行...
傳輸層協議TCP
部分埠號 第二次握手 伺服器應用程序被動開啟。若同意客戶端的請求,則發回確認報文,其首部中 syn 1,ack 1,ack x 1,seq y。第三次握手 客戶端收到確認報文之後,通知上層應用程序連線已建立,並向伺服器發出確認報文,其首部 ack 1,ack y 1。當伺服器收到客戶端的確認報文之後...