計算機網路自頂向下第三章習題

2021-08-19 22:17:26 字數 2628 閱讀 6356

計算機網路第三章作業

r9:

接收方通過檢查序號可以判斷接收到的分組是新的資料還是一次重傳,這樣可以解決冗餘分組問題。

r10:

當在通道上發生丟包時,傳送方不知道是乙個資料分組丟失還是乙個ack丟失,或者只是該分組或ack過度延時。引入定時器是為了實現基於時間的重傳機制。如果在規定的時間內沒有收到分組或者該分組的ack,則可能發生了丟包,則傳送方重傳該分組。

r14:

a. 錯誤。tcp要求主機b要傳送確認訊息,因為主機b不能隨資料捎帶確認,所以需要單獨傳送確認訊息。

b. 錯誤。rwnd表示接受快取中的空閒空間,是動態變化的。

c. 正確。

d. 錯誤。序號的設定不是以報文段為單位,而是以傳送的位元組流為單位。乙個報文段的序號是該報文段中資料段的第乙個位元組在位元組流中的編號 。

e. 正確。

f. 錯誤。對於該連線的timeoutinterval由samplertt和estimatedrtt共同決定。

g. 錯誤。接收方可能會傳送重複的ack,確認號可能還是38。

r15:

a. 第乙個報文段中有20位元組的資料。因為tcp把資料看成乙個無結構的但是有序的位元組流。因此tcp的序號是建立在傳送的位元組流上的。由第乙個報文段序號為90,第二個報文段序號為110可推出第乙個報文段中的資料大小為110 - 90 = 20 bytes。

b. 若第乙個報文段丟失,則傳送方會在一定時間後沒有收到接收方的反饋確認包,接受方此時會傳送乙個重複的ack,在主機b發往主機a的確認報文中,確認號應該是90。

p22:

a. 傳送方的視窗大小n=4,假設在時刻t接收方期待的下乙個有序分組的序號為k,則說明接收方已收到k-1號分組,並對之前收到的所有分組進行過確認。如果分組全部正確到達傳送方,則此時傳送方視窗內的報文序號是[k , k+n-1]。如果傳送方沒有收到所有應收到的ack,此時傳送方視窗內報文序號為[k-n , k-1]。因此傳送方視窗內的報文序號可能是: [ k-4 , k-1 ],[ k-3 , k ],[ k-2 , k+1 ],[ k-1 , k+2 ],[ k , k+3 ]。

b. 由上題得到,傳送方傳送報文序號最小為[k-n , k-1],說明傳送方已經收到了k-n-1的ack確認,所以不會對k-n-1之前的分組再進行確認。所以ack欄位的所有可能值為[ k-5 , k-1 ]。

p27:

a. 序號是207,源埠號是302,目的埠號是80。(207 = 127 + 80)

b. 如果第乙個報文段在第二個報文段之前到達,在第乙個到達報文段的確認中,確認號是207,源埠是80,目的埠號是302。

c. 如果第二個報文段在第乙個報文段之前到達,在第乙個到達報文段的確認中確認號是127。

a. tcp慢啟動執行時的時間間隔為[1 , 6]和[23 , 26]。

b. tcp擁塞避免執行時的時間間隔為[6 , 16]和[17 , 22]。

c. 在第16個傳輸輪迴之後報文段的丟失是根據3個冗餘ack檢測出來的。因為擁塞視窗長度沒有降到1個mss而是減半。

d. 在第22個傳輸輪迴之後報文段的丟失是根據超時檢測出來的。因為擁塞視窗長度降到了1個mss。

e. 在第1個傳輸輪迴裡,ssthresh的初始值設定成32個mss,因為在第6輪傳輸時到達了閾值32。然後擁塞視窗開始以線性速度爬公升,直到在第16輪傳輸後出現3個冗餘ack。

f. 在第18個傳輸輪迴裡,ssthresh的值被設定成21個mss,因為當第16個週期丟包事件發生時,擁塞視窗值為42個mss,所以ssthresh的值被設定成0.5 × cwnd = 21 × mss。

g. 在第24個傳輸輪迴裡,ssthresh的值被設定成14.5個mss,因為當第22個週期丟包事件第二次發生時,擁塞視窗值為29個mss,所以ssthresh的值被設定成0.5 × cwnd = 14.5 × mss。

h. 在前6個傳輸週期中已經傳送了1 + 2 + 4 + 8 + 16 + 32 = 63 個報文段,第7個傳輸輪迴要傳送32 + 1 = 33個報文段,即第64 - 96個報文段,所以第70個報文段在第7個傳輸輪迴中傳送。

i. 在第26個傳輸輪迴時,擁塞視窗值為8個mss,因此通過收到3個冗餘ack檢測出有分組丟失時ssthresh的值被設定成0.5 × cwnd = 4 × mss。擁塞視窗長度應當為4 + 3 = 7個mss。

j. 假定使用tcp tahoe(不管是發生超時指示的丟包事件,還是發生3個冗餘ack指示的丟包事件,都無條件地將擁塞視窗減至1個mss,並進入慢啟動階段),並假定在第16個傳輸輪**到3個冗餘ack。在第19個傳輸輪迴,ssthresh的值被設定成21個mss,因為當第16個週期丟包事件發生時,擁塞視窗值為42個mss,所以ssthresh的值被設定成0.5 × cwnd = 21 × mss。但是此時擁塞視窗值為1個mss。

k. 第17個傳輸輪迴到第21個輪迴分別傳送了1 + 2 + 4 + 8 + 16 = 31個分組,第22個輪迴傳送分組為閾值21個,所以一共傳送了52個分組。

計算機網路自頂向下第三章傳輸層

傳輸層主要的協議有tcp和udp 傳輸層協議主要為主機內部程式提供傳輸服務,而網路層協議是為兩台主機提供傳輸服務 udp不可靠無連線的服務 不能保證乙個程序所傳送的資料能夠完整無缺的 全部 到達目的程序 tcp可靠面向連線的服務 ip盡力而為的交付服務也是不可靠服務 多路復用指在運輸層封裝套接字繫結...

計算機網路 自頂向下方法 第三章 運輸層

tags 計算機網路 2 多路復用與多路分解 3 無連線運輸udp 4 可靠資料傳輸原理 42 流水線可靠資料傳輸 43 回退 n 步gbn 44 選擇重傳sr 5 面向連線的運輸tcp 用 udp 建立可靠資料傳輸機制可以在應用層中實現。首部只有 4 個字段,每個字段 2 位元組。其中,lengt...

計算機網路第三章

傳輸層解決的問題是,資料傳輸的問題。資料傳輸分為不可靠傳輸和可靠資料傳輸,分別對應的是udp協議和tcp協議。運輸層協議是在端系統中,只在端系統中發生作用,而不是在路由器中實現的。網路層提供了主機之間的邏輯通訊,而運輸層為執行在不同主機上的程序之間提供邏輯通訊。在傳送端,傳輸層將從傳送應用程式接收到...