本張試卷分成三個部分:選擇題,簡答題以及理解題三個部分,目標再於檢測同學們對老師上課內容的理解,既可以考察大家上課聽講情況,也能考察大家融會貫通的能力,最重要的是擴展思維的能力。
一、選擇題
1、假設一個采用CSMA/CD協議的100 Mhps局域網,最小幀長是128B,則在一個沖突域內兩個站點之間的單向傳播延時最多是(2019年408考試題)
A.2.56 μs
B. 5.12 μs
C. 10.24 μs
D.20.48 μs
2、對於滑動窗口協議,如果分組序號采用3比特編號,發送窗口大小為5,則接收窗口最大是
A. 2
B. 3
C. 4
D. 5
答案選B
3、假設連接R1、R2和R3之間的點對點鏈路使用201.1.3.x/30地址,當H3訪問Web服務器S時,R2轉發出去的封裝HTTP請求報文的IP分組的源IP地址和目的IP地址分別是
A.192.168.3.251,130.18.10.1 B.192.168.3.251,201.1.3.9
C.201.1.3.8,130.18.10.1 D.201.1.3.10,130.18.10.1、
4. 下列網絡設備中,能夠抑制廣播風暴的是______。
Ⅰ中繼器
Ⅱ集線器
Ⅲ網橋
Ⅳ路由器
A.僅Ⅰ 和Ⅱ
B.僅Ⅲ
C.僅Ⅲ 和Ⅳ
D.僅Ⅳ
5. 主機甲和主機乙之間已建立了一個 TCP 連接,TCP 最大段長度為 1 000 字節。若主機甲的當前擁塞窗口為 4 000 字節,在主機甲向主機乙連續發送兩個最大段后,成功收到主機乙發送的第一個段的確認段,確認段 中通告的接收窗口大小為 2 000 字節,則此時主機甲還可以向主機乙發送的最大字節數是______。
A.1 000
B.2 000
C.3 000
D.4 000
一、簡答題
1.簡述 tcp 協議的套接字通信流程。提示:可根據UNIXTCP狀態轉換圖考慮。

2、為什么TIME_WAIT狀態還需要等2MSL后才能返回到CLOSED狀態?
3、tcp和udp有什么區別
一、綜合題
假設 Internet 的兩個自治系統構成的網絡如題 47 圖所示,自治系統 ASI 由路由器 R1 連接兩個子網構成;自治系統 AS2 由路由器 R2、R3 互聯並連接 3 個子網構成。各子網地址、R2 的接口名、R1 與 R3 的部分接口 IP 地址如題 47 圖所示。

請回答下列問題。
(1)假設路由表結構如下表所示。請利用路由聚合技術,給出 R2 的路由表,要求包括到達題 47 圖中所有子網的路由,且路由表中的路由項盡可能少。
(2)若 R2 收到一個目的 IP 地址為 194.17.20.200 的 IP 分組,R2 會通過哪個接口轉發該 IP 分組?
答案及解析
一、選擇
1、答案選B。考察CSMA/CD協議中最小數據幀長與單項傳播時延的關系。
每次發送一個數據幀,最少需要2τ時間才能收到其回復。因此發送一個最小數據幀的時間必須大於2τ,再本題中 128×8/100M>=2t,所以τ最大為5.12us,答案為B。另外,以太網的最小幀長是64B。
解析如下所示:


2、答案選B
解析:對於一般的如果要滿足在窗口中發送緩存的幀序號不存在二義性,那么需要發送窗口大小 + 接收窗口大小 <= 2^n。例如當n=3時,若發送窗口大小+接收窗口大小大於幀序號數,那么說明其容納下的幀數已經超過了幀的序號,則對於接收方,一定會出現重復的幀號,此時若出現故障,就不能辨別是同幀號中哪一個幀出現了丟失。

擴展:滑動窗口協議一共有三種:
(1)停等協議:對窗口大小沒有要求。
(2)回退n幀協議
在回退N協議中,發送窗口大小必須<=2m-1,接收窗口大小始終為1。本質就是窗口大小不能 超過序號能表示的范圍,例如最大序號是3,窗口是6窗口比最大序號大,會出現0,1,2,3,0,1這樣的窗口,你無法判斷接收窗口返回的ACK0是代表第一個0收到還是第二個0收到。
(3)選擇重傳:窗口大小<=2^(m-1)
首先,發送窗口不能比接收窗口大,不然接收窗口可能會溢出。因為發送窗口<=接收窗口。要最大化發送窗口,則發送窗口=接收窗口。假設發送窗口為m,則接收窗口也為m.發送窗口發送m個分組時,接收窗口向前移動m,接收窗口為m+1,m+2,...2m.要避免二義性,必須滿足2m<=序號最大值。
3、D
解析:
由題意知連接R1、R2和R3之間的點對點鏈路使用201.1.3.X/30地址,其子網掩碼為255.255.255.252,R1的一個接口的IP地址為201.1.3.9,轉換為對應的二進制的后8位為00001001 (由201.1.3.X/30知,IP地址對應的二進制的后兩位為主機號,而主機號全為0表示本網絡本身,主機號全為1表示本網絡的廣播地址,不用於源IP地址或者目的IP地址),那么除201.1.3.9外,只有IP地址為201.1.3.10才可以作為源IP地址使用(本題為201.1.3.10)。Web服務器的IP地址為130.18.10.1,作為IP分組的目的1P地址。綜上可知,選項D正確。
4、D
解析:
廣播域:是指在網段上的所有設備的集合,這些設備可以接聽送往某個網段的所有廣播
沖突域:在同一個沖突域中的每一個節點都能收到所有被發送的幀
沖突域是基於第一層(物理層)
廣播域是基於第二層(鏈路層)
中繼器和集線器是第一層的設備,所以分割不了沖突域,物理層設備中繼器和集線器既不隔離沖突域也不隔離廣播域
交換機和網橋屬於第二層設備,所以能分割沖突域,網橋可隔離沖突域,但不能隔離廣播域
路由器屬於第三層設備,所以既能分割沖突域,也能分割廣播域
VLAN(虛擬局域網)也可隔離廣播域
對於不隔離廣播域的設備,它們互連的不同網絡都屬於同一廣播域,因此擴大了廣播域的范圍,更容易引起網絡風暴
5、A
解析:發送方發送窗口的上限值應該取接收窗口和擁塞窗口這兩個值中較小的一個,於是此時發送方的發送窗口為min{4000,2000}
TCP采用序列號、確認、滑動窗口協議等機制來實現端到端節點之間可靠的數據傳輸。其中,滑動窗口協議規定未被確認的分組數最多為窗口的大小,且只需要重傳未被確認的分組。
依題意,主機甲的當前擁塞窗口為4000B,主機甲向主機乙連續發送2個最大段,其中第1個段的序列號為4000,窗口值為1000;第2個段的序列號為5000,窗口值為1000。主機甲成功接收到主機乙發送的第一段的確認段,確認段的序列號為5000,其通告的接收窗口大小為2000B,則說明此時主機乙具有一個2000B的空閑緩沖區,即此時主機乙最大還可以接收2000B的數據。由於主機乙還未對主機甲發出第2個報文段進行確認,因此這2000B的空閑緩沖區還需預留出1000B用於接收第2個報文段,即此時主機甲還可以向主機乙發送的最大字節數只有1000B。
二、簡答題
1、socket(簡稱套接字) 是進程間通信的⼀種⽅式, 能實現不同主機間的進程間通信,我們⽹絡上各種各樣的服務⼤多都是基於 Socket 來完成通信的。
tcp協議套接字通信流程
(1)服務器先用 socket 函數來建立一個套接字,用這個套接字完成通信的監聽。
(2)用 bind 函數來綁定一個端口號和 IP 地址。因為本地計算機可能有多個網址和 IP,每一個 IP 和端口有多個端口。需要指定一個 IP 和端口進行監聽。
(3)服務器調用 listen 函數,使服務器的這個端口和 IP 處於監聽狀態,等待客戶機的連接。
(4)客戶機用 socket 函數建立一個套接字,設定遠程 IP 和端口。
(5)客戶機調用 connect 函數連接遠程計算機指定的端口。
(6)服務器用 accept 函數來接受遠程計算機的連接,建立起與客戶機之間的通信。
(7)建立連接以后,客戶機用 write 函數向 socket 中寫入數據。也可以用 read 函數讀取服務器發送來的數據。
(8)服務器用 read 函數讀取客戶機發送來的數據,也可以用 write 函數來發送數據。
(9)完成通信以后,用 close 函數關閉 socket 連接。

2、解析:
(1)可靠的實現TCP全雙工鏈接的終止
這是因為雖然雙方都同意關閉連接了,而且握手的4個報文也都協調和發送完畢,按理可以直接回到CLOSED狀態(就好比從SYN_SEND狀態到ESTABLISH狀態那樣);但是因為我們必須要假想網絡是不可靠的,你無法保證你最后發送的ACK報文會一定被對方收到,因此對方處於LAST_ACK狀態下的SOCKET可能會因為超時未收到ACK報文,而重發FIN報文,所以這個TIME_WAIT狀態的作用就是用來重發可能丟失的ACK報文。
(2)允許老的重復的分節在網絡中消逝。
假設在服務器端口和客戶機端口之間有一個TCP連接。我們關閉這個鏈接,過一段時間后在 相同的IP地址和端口建立另一個連接。后一個鏈接成為前一個的化身。因為它們的IP地址和端口號都相同。TCP必須防止來自某一個連接的老的重復分組在連 接已經終止后再現,從而被誤解成屬於同一鏈接的某一個某一個新的化身。為做到這一點,TCP將不給處於TIME_WAIT狀態的鏈接發起新的化身。既然 TIME_WAIT狀態的持續時間是MSL的2倍,這就足以讓某個方向上的分組最多存活msl秒即被丟棄,另一個方向上的應答最多存活msl秒也被丟棄。 通過實施這個規則,我們就能保證每成功建立一個TCP連接時。來自該鏈接先前化身的重復分組都已經在網絡中消逝了。
(3)出於安全考慮
當客戶機惡意發送攻擊的考慮,若沒有等待2MSL時間就關閉,則需要服務器端一直發送ACK,等待客戶端發過來的消息。
解析:四次揮手過程圖如下所示。

3、TCP和UDP區別(答出重點即可)
(1)TCP是面向連接的,UDP是無連接的,TCP提供可靠的服務,也就是說,通過TCP連接傳輸的數據不會丟失,沒有重復,並且按順序到達,UDP沒有可靠性。
(2)TCP是面向字節流的,實際上是TCP把數據看成一連串無結構的字節流;UDP是面向報文的。
(3)TCP是全雙工的可靠信道,UDP是不可靠信道。
三、綜合題
【答案要點】
【評分說明】
① 每正確解答 1 個路由項,給 2 分,共 6 分,每條路由項正確解答目的網絡 IP 地址但無 前綴長度,給 0.5 分,正確解答前綴長度給 0.5 分,正確解答下一跳 IP 地址給 0.5 分 正確解答接口給 0.5 分。
② 路由項解答部分正確或路由項多於 3 條,可酌情給分。
(2)該 IP 分組的目的 IP 地址 194.17.20.200 與路由表中 194.17.20.0/23 和 194.17.20.128/25
兩個路由表項均匹配,根據最長匹配原則,R2 將通過 E0 接口轉發該 1P 分組。(1分)
(3)R1 與 R2 之間利用 BGP4交換路由信息;(1 分)BGP4 的報文被封裝到 TCP 協議段中進行傳輸。(1 分)
【評分說明】
若考生解答為 EGP 協議,且正確解答 EGP 采用 IP 協議進行通信,亦給分。
(此題出自於2013年408試題的最后一題)
參考:
https://www.cnblogs.com/Andya/p/7272462.html
