如下是個人答案。如有不對請指正,謝謝。網絡
課程地址 http://www.icourse163.org/course/HIT-154005 個人課程id: aweffrspa
如圖所示網絡。A在t=0時刻開始向C發送一個2Mbits的文件;B在t=0.1+e秒(e爲無限趨近於0的小正實數)向D發送一個1Mbits的文件。忽略傳播延遲和結點處理延遲。blog
請回答下列問題:接口
1) 若是圖中網絡採用存儲-轉發方式的報文交換,則A將2Mbits的文件交付給C須要多長時間?B將1Mbits的文件交付給D須要多長時間?路由
2) 若是圖中網絡採用存儲-轉發方式的分組交換,分組長度爲等長的1kbits,且忽略分組頭開銷以及報文的拆裝開銷,則A將2Mbits的文件交付給C須要大約多長時間?B將1Mbits的文件交付給D須要大約多長時間?it
3) 報文交換與分組交換相比,哪一種交換方式更公平?(即傳輸數據量小用時少,傳輸數據量大用時長)io
解路由器
報文交換:源發送信息總體。im
分組交換:拆成一系列相對較小的數據包,多個源共享一個路由器的(進/出)鏈路時,按需共享鏈路(統計多路複用)。統計
此外:本題中,存儲-轉發式網絡中路由器能同時接收和發送多個用戶的數據。只要是不一樣的接口,就能夠同時接收。同理,在不一樣接口也能夠同時發送分組。
(1) 報文交換
綜上,A到C交付2Mbits須要0.5s。B到D交付1Mbits須要0.35s。
(2) 採用分組長度爲等長的1kbits進行傳輸。
E-F的傳輸帶寬爲20Mb, 不會出現擁塞問題。
所以,T = M/R + nL/R =>
A-C 須要 (2Mbits) / (10Mb) + 2 * (1Kbits) / (10Mb) = 0.2002s。
B-D 須要 (1Mbits) / (10Mb) + 2 * (1Kbits) / (10Mb) = 0.1002s。
本題與課件中公式的背景不同。(感謝網友 Geralt白狼)
花費時間應該是總體消息的大小除以瓶頸鍊路的帶寬,再加上最後一個包由出發到第二個路由器的時間。
B-D發送過程當中,A-C也還正在發送,B-D的最後一個包的歷程中,它在中間的兩個路由器上只享受到了10M的帶寬,0.1002s。
而A-C的最後一個包能獨享中間的20M帶寬,所以 0.20015s。
所以 A-C須要 0.2 + 0.001 + 0.0005 = 0.20015s
B-D須要 0.1 + 0.001 + 0.0005 = 0.1002s
(3) 由1, 2兩種狀況能夠看出,分組交換用時少。且在報文交換狀況下,當B-D慢了0.1+e秒開始傳輸時,在E-F鏈路上須要等待A的報文發送完畢的額外0.1s。在分組交換狀況中,能夠按需共享來複用鏈路,使得B的報文分組不被阻塞。所以分組交換更爲公平。