TCP IP協議 TCP協議

2021-08-25 20:02:40 字數 1196 閱讀 5129

今天算是對了tcp協議有個膚淺的理解了!

儘管tcp和udp都是一樣的網路層ip,但是tcp卻和udp實現著不一樣的服務,tcp是乙個面向連線的,可靠地位元組流服務!

面向連線是指:兩個使用tcp的程式要建立乙個tcp連線才能交換資料。

tcp以以下方式提供可靠性:

1)應用程式被分為tcp認為合適傳送的資料塊!

2)tcp傳送乙個資料段以後,它啟動乙個定時器,等待目的端確認收到這個資料段,超時將會重新傳送這個資料段!

3)當tcp接收到發自tcp連線另一端的資料,他會傳送乙個確認!

4)tcp會保持他首部和資料的檢驗和!

5)既然tcp報文段可以作為ip資料報來傳送,而ip資料報的到達可能會失序,因此tcp報文段的到達也可能會失序!

6)既然ip資料報會發生重複,那麼tcp的接收端必定會丟棄重複的資料報!

7)tcp還提供流量控制。

每個tcp段都包含了源端和目的端的埠號和ip位址。

首先我們得知道幾個符號的作用

syn:同步序號

fin:傳送方完成資料傳送

rst:復位連線

psh:盡可能快的將資料傳送往接受程序

tcp的三次握手:

1,客戶程序傳送乙個syn段指明客戶打算鏈結的伺服器端口,以及初始序號(isn),並將tcp的syn段為報文段1。

2,伺服器發回包含伺服器的初始序號的syn報文段(報文段為2)作為應答。

3,客戶必須將確認序號設定為伺服器的isn加1對伺服器的syn段加以確認(報文段3)。

這三個報文段完成連線的建立,這個過程就叫三次握手!

建立乙個tcp鏈結需要三次握手,但是斷開乙個tcp鏈結則要四次握手:

1,首先是客戶想伺服器程序傳送乙個資料報文段fin,

2,伺服器程序收到這個報文段fin,它發回乙個ack,確認序號為收到的加1。

3,伺服器向客戶程序傳送乙個fin,

4,和第二步一樣!

tcp的最大報文段長度

首先我們解釋一下什麼是最大報文長度:表示tcp傳往另一端的最大塊資料長度!

當乙個鏈結建立時,鏈結的雙方都要通告各自的mss大小!

有些系統是可以協商mss的大小長度的,但是有些不可以,如果一方不接受來自另一方的mss協商的話,那麼就預設為536個位元組,一般來說,如果沒有分段發生,我們的mss還是越大越好,當然了mss亦可以限制一段的傳送大小,以減少分片的發生!

(未完待續)

TCP IP協議棧 之 TCP協議

1 tcp的特點 2 tcp資料格式 tcp在ip協議的基礎上進行傳輸資料,tcp資料在ip報文中的位置如下 ip頭部 20位元組 tcp頭部 20字 tcp資料 tcp報文包含頭部和資料兩部分,其資料格式如下 源埠號 16位 目的埠號 16位 序列號 32位 確認號 32位 頭部長度 4位 保留 ...

TCP IP隨筆 TCP協議詳解

tcp協議詳解 應用層 訊息 報文包含了將要傳送的完整的資料資訊 傳輸層 資料段 報文段 segment 注 tcp叫tcp報文段,udp叫udp資料報,也有人叫udp段 網路層 分組 資料報 packet 鏈路層 幀 frame 物理層 p pdu bit 位元組流和資料報都是一種資料傳遞方式 t...

TCP IP協議詳解卷1學習筆記 TCP協議

tcp協議 tcp首部 源埠號 目的埠號 位序號 位確認序號 首部長度 標誌位 視窗大小 檢驗和 緊急指標和其它選項。乙個ip位址和乙個埠號也成為乙個插口 socket 插口對可唯一確定網際網路中每個tcp連線的雙方。tcp連線的建立與終止 tcp是乙個面向連線的協議,無論哪方向另一方傳送資料之前,...