理解TCP IP協議棧 1

2021-08-09 21:08:25 字數 774 閱讀 8145

翻譯自:

使用者層面和核心層面的任務由cpu來處理. 使用者層和核心層稱為」host」, 以此與裝置層區分. 這裡的裝置指的是用於傳送/接收資料報的network inte***ce card (nic). 更準確的術語叫」lan card」.

使用者層面: 首先應用程式建立要傳送的資料 (figure 1中」user data」)並呼叫系統函式write()來傳送資料. 假設socket已建立好(figure 1中的fd). 當進入系統呼叫時, 系統進入核心態.

posix系列作業系統(包括linux, unix)通過檔案描述符將socket暴露給應用程式. 在此類系統中, socket可看作是一種檔案. 檔案層執行簡單校驗後呼叫socket函式來連線到檔案結構.

核心socket有兩個buffer:

當系統函式write被呼叫時, 資料將從使用者區拷貝到核心區記憶體並且新增到socket buffer的末端, 這樣按順序傳送資料. 如figure 1, 淺灰色框包含的部分表示的是在傳送buffer中的資料. 然後呼叫tcp.

tcp control block (tcb)結構用於連線socket. tcb包含請求處理tcp連線的資料, 包括: 連線狀態(listen, established, time_wait), 接收視窗, 擁塞視窗, 序號, 重發時鐘, 等等.

如果當前tcp狀態允許資料傳輸, 乙個新的tcp段(也叫packet)將被建立. 如果由於流控制這些原因無法傳輸資料, 系統呼叫會結束並且系統返回到 使用者態(也就是將控制權交回應用程式).

figure 2展示了兩個tcp段:

TCP IP 協議 協議棧

tcp ip協議棧 整個協議棧被分為了四層,每一層協議負責不同的功能 鏈路層 負責處理物理介面的細節,接受傳送的都是位元流,鏈路層主要有三個目的 1.為ip模組傳送和接收i p資料報 2.為arp模組傳送arp請求和接收arp應答 3.為rarp傳送rarp請求和接收rarp應答 網路層 用來處理網...

小白筆記理解TCP IP協議棧

網際網路最初是由於軍事用途出現的,現在網路已經走進千家萬戶,稱為生活的一部分。網際網路的各個終端之間能否進行互動的軟體基礎是 網路協議棧 目前主流的網路協議棧是tcp ip協議棧,下面我們就結合osi國際標準的七層模型和tcp ip的四層實際標準來將說明一下這個網路協議棧是如何工作的。在此之前,我們...

理解TCP IP協議

在教學中,很多學員對網路協議都很模糊。其實網路協議有三種,一是internet協議tcp ip規範,適合於網際網路 二是netware中的協議spx ipx規範,適合於區域網 三是移動通訊網路協議g 和cdma。在目前internet中,tcp ip協議使用廣泛。tcp ip協議是1974年推出,到...