【TCP面試考點】9個知識點教你怎麼答

烏鴉反哺:

《本草綱目·禽部》載:
「慈烏:此鳥初生,母哺六十日,長則反哺六十日。」
大意是說,小烏鴉長大之後,老烏鴉不能飛了,不能本身找食物了,
小烏鴉會反過來找食物餵養它的母親。
複製代碼

借用這個典故,我但願表達的意思是:當咱們和麪試官探討相關知識的時候,可以讓他從你這獲得更多的理解,從而達到反哺的效果。面試

但願這篇文章能給你帶來幫助。bash

1.五層協議

計算機網絡中,五層協議的體系結構以下:服務器

五層協議模型

運輸層是整個網絡體系結構中的關鍵層次之一。網絡

網絡層爲主機之間提供通信邏輯,而運輸層爲應用進程之間提供端到端的邏輯通訊。spa

2.複用和分用

運輸層服務於應用層。計算機網絡

運輸層一個很重要的功能就是複用和分用。code

運輸層至關於一個辦公室,應用層全部的應用進程均可以經過運輸層傳遞給網絡層(複用)。cdn

運輸層從網絡層接受到數據後,分別交付給指明的應用進程(分用)。blog

不一樣主機的不一樣進程使用協議端口號(protocol port number)識別對方。進程

3.用戶數據報協議 UDP

UDP的一些特色:

  1. UDP是無鏈接的,即發送數據以前不須要創建鏈接。
  2. UDP盡最大努力交付,但不保證可靠交付。
  3. UDP是面向報文的。
  4. UDP沒有擁塞控制。
  5. UDP支持一對1、一對多、多對一和多對多的交互通訊。
  6. UDP首部開銷小。

總結就是:快狠準,我管你收沒收到。

UDP的報文首部只有4個字段:源端口、目的端口、報文長度和檢驗和。

4.傳輸控制協議 TCP

TCP的一些特色:

  1. TCP是面向鏈接的,使用TCP協議以前,必須創建鏈接。
  2. TCP提供可靠交付的服務。無差錯、不丟失、不重複、按序到達。
  3. TCP是面向字節流的。
  4. TCP有擁塞控制。
  5. TCP只能是一對一。
  6. TCP提供全雙工通訊。

TCP的全部特性都是爲了保證可靠性。

5.超時重傳

B接收M1時檢測出了差錯,就丟棄M1,或者是M1傳輸過程當中丟失。在這兩種狀況下,B都不會發送任何信息。

只要A超過了一段時間仍然沒有收到確認,就認爲剛纔發送的分組丟失了,由於重傳前面發送過的分組。這就叫超時重傳。

超時重傳實現的原理是每發送完一個分組時設置一個超時計時器。若是未超時就銷燬該計時器,不然重發分組。

下面這種確認遲到的狀況A什麼都不會作。

6.以字節爲單位的滑動窗口

TCP的滑動窗口是以字節爲單位的。接收方會把本身的接收窗口數值放在窗口字段中發送給對方,已保證A的發送窗口不會大於B的接收窗口。

發送窗口前沿一般是不斷向前移動的,如下兩種狀況會致使發送窗口中止滑動:

  1. A發送窗口沒有收到新的確認。
  2. B接收窗口接收的窗口縮小了。

7.TCP 的鏈接創建

TCP 創建鏈接的過程叫作過程,握手須要在客戶合服務器之間交換三個TCP報文段。

爲何須要三次?不能兩次?

如今有這麼一種狀況,A發送的第一個請求報文段M1在網絡中滯留,B未收到。A超時未收到確認,觸發超時重傳。

A再次發送請求報文段M2,這以後都是正常的,A與B創建鏈接完成數據傳輸而後斷開鏈接。

此時滯留在網絡中的請求報文段M1才傳送給B,若只須要兩次握手就創建鏈接,B將請求報文段發送給A後將創建鏈接。

A會將這個延遲的報文丟棄掉,不會創建鏈接。所以致使B的許多資源就這樣白白浪費了。

8.TCP的鏈接釋放

TCP斷開鏈接須要四次握手,是由於其全雙工的特性。即客戶端A與服務端B二者既能發送報文,也能接收報文。

值得注意的是,A在收到B的鏈接釋放報文段後,發出確認報文段。以後A並無直接關閉,而是進入TIME-WAIT(時間等待)狀態。

等待的時間是2MSL,MSL叫作最長報文段壽命(Maximum Segment Lifetime),RFC793建議設爲2分鐘。

若是A在2MSL沒收到B發送的重傳報文段,則表示B已收到A發送的關閉信號。2MSL是接收B的重傳報文的最長時間。

9.保活計時器(keepalive timer)

假設客戶段與服務器已創建了TCP鏈接,可是客戶端因爲異常掛掉。若服務器連續發送10個探測報文後,間隔通常爲75秒,客戶端都沒有迴應則關閉鏈接。

10.面試常問

  1. 講講計算機網絡的五層模型
  2. 講講運輸層的複用與分用
  3. TCP與UDP的區別
  4. 講講TCP的三次握手(理解三次握手圖)
  5. 講講TCP的四次揮手(理解四次揮手圖,可講2MSL細節)
  6. TCP爲何是可靠的(從TCP的特性出發答)
  7. TCP能兩次握手創建鏈接嗎?爲何(能夠創建,但資源浪費,如上文)

ps: 如想要《計算機網絡第7版》的 可留言/

相關文章
相關標籤/搜索