# 網路程式設計 w1 ## 1.講義中上傳alice.txt過程中,使用wireshark抓封包,回答講義的問題 - 找出整個過程TCP連線的封包 - ![image](https://hackmd.io/_uploads/HyR9qUw2a.png) - 觀察TCP三次交握 - ![image](https://hackmd.io/_uploads/SyQQo8wha.png) - 找出第一個送data的封包 - ![image](https://hackmd.io/_uploads/rygy2Lv3T.png) - seq = 634 - 找出第2個送data的封包,觀察sequence number變化 - ![image](https://hackmd.io/_uploads/BJLrn8Pha.png) - seq = 2094 - 剛好是1460(上一個封包大小) + 634(上一個seq number) - 請找出CLIENT端的IP與PORT號 - IP:192.168.1.116(是private IP,所以我家的路由器應該有NAT功能,耶) - PORT:9503 - 請找出WEB SERVER端的IP與PORT號 - IP:128.119.245.12 - PORT:80(所以他用http) - ![image](https://hackmd.io/_uploads/HyF6p8vhT.png) - 後來用DNS RR 的PTR紀錄發現正好是 gaia.cs.umass.edu,計算機網路教授所在大學系所的地方 ### 請依序回答以下問題 1. 這個檔案,以HTTP POST傳送,分為幾個TCP封包來送?如何判斷? - 他分了103個封包才傳送完畢 - 我是看封包內是否有明文,且是9503port傳送 2. 第一個TCP封包送出的時間為何?收到最後一個TCP的ACK時間為何?總長為多久? - 第一個封包送出時間是:第3.714740秒 - 最後一個收到TCP ACK的時間是:第4.549498秒 - 一共花費了0.83475秒 3. 這幾個TCP封包,長度分別為多少? - 很多個封包,詳細我放最下面,反正我傳送的幾乎都是1460byte(不包含header),直到最後一個封包是481個 4. 這些封包的長度總長為多少?是否與檔案大小相近?為何會不完全相同? - 總長總共149401 byte - 相近,但不完全相同 - 可能是包含標頭的緣故 5. 由總長除以時間,估算這次傳送的throughput為多少? - 1.431808Mbps 6. 每一個TCP封包,是否都回應一個ACK?若不是,可能的原因為何? - 不是 - 因為封包會在半路遭到分割,導致會出現多個ACK 7. 由TCP來回的封包,可以推算出RTT為何? - 0.206296 8. 回想一下,TCP為何要估算RTT? - TCP有timeout的概念,因此要透過估算來設定timeout數值,以免因網路不穩定導致不必要的重傳 9. 回想一下,TCP如何應用這個估算的RTT得到RTO? - RTO = $RTT_s+ 4 * RTT_D$ - ![image](https://hackmd.io/_uploads/HkMSYDD3p.png) 10. 過程中有發生重傳嗎?如何判斷? - 我沒有產生重傳 - 可以看有沒有重複的ACK編號判斷,或是重複的seq(或是可以看黑底反白) 11. 由analyze->follow->TCP stream,請說明此圖 - ![image](https://hackmd.io/_uploads/ryFfjwDna.png) - 紅色是Client端傳送,藍色是Server端傳送 12. 由statics->TCP stream graph->Sequence Numbers(tcptrace),並選擇stream,調整方向。找出一張可看出逐漸傳送的圖。 - ![image](https://hackmd.io/_uploads/rkSpsvD3T.png) 13. 將type改為throughput,請說明此圖,值與自己的估算接近嗎? - ![image](https://hackmd.io/_uploads/BJgPZ2wPnT.png) - 大致落在1Mbps,我覺得接近 14. 將type改為RTT,請說明此圖,值與自己的估算接近嗎? - ![image](https://hackmd.io/_uploads/BJxVHTvP2a.png) - 大致上都落在200ms,我覺得接近 15. 將type改為window scaling,請說明此圖,是否看出slow start階段的特徵? - ![image](https://hackmd.io/_uploads/Bk8HRwP2p.png) - 有看出slow Start 特徵 ## 請在google form填寫上課收穫/心得/對課程/老師的意見。 今天複習好多計算機網路的概念,只是之前都沒有試過抓封包實驗,現在終於有機會實驗,而且跟我學計算機網路的記憶相同我好感動,~~其實更感動的是還好我上學期有認真聽,不然我今天一定聽不懂~~。 我覺得我最大的收穫是如何抓封包,之前打CTF有稍微抓過,但超級不熟悉,現在感覺我更加了解wireshark的功能以及運作方法,我希望這項技能也對我的網路程式更有幫助!!! ## 附錄:我的傳送過程 | seq number | len | |-|-| | 634 | 1460 | | 2094 | 1460 | | 3554 | 1460 | | 5014 | 1460 | | 6474 | 1460 | | 7934 | 1460 | | 9394 | 1460 | | 10854 | 1460 | | 12314 | 1460 | | 13774 | 1460 | | 15234 | 1460 | | 16694 | 1460 | | 18154 | 1460 | | 19614 | 1460 | | 21074 | 1460 | | 22534 | 1460 | | 23994 | 1460 | | 25454 | 1460 | | 26914 | 1460 | | 28374 | 1460 | | 29834 | 1460 | | 31294 | 1460 | | 32754 | 1460 | | 34214 | 1460 | | 35674 | 1460 | | 37134 | 1460 | | 38594 | 1460 | | 40054 | 1460 | | 41514 | 1460 | | 42974 | 1460 | | 44434 | 1460 | | 45894 | 1460 | | 47354 | 1460 | | 50274 | 1460 | | 51734 | 1460 | | 53194 | 1460 | | 54654 | 1460 | | 56114 | 1460 | | 57574 | 1460 | | 59034 | 1460 | | 60494 | 1460 | | 61954 | 1460 | | 63414 | 1460 | | 66334 | 1460 | | 67794 | 1460 | | 69254 | 1460 | | 70714 | 1460 | | 72174 | 1460 | | 73634 | 1460 | | 75094 | 1460 | | 76554 | 1460 | | 78014 | 1460 | | 79474 | 1460 | | 80934 | 1460 | | 82394 | 1460 | | 83854 | 1460 | | 85314 | 1460 | | 86774 | 1460 | | 88234 | 1460 | | 89694 | 1460 | | 91154 | 1460 | | 92614 | 1460 | | 94074 | 1460 | | 95534 | 1460 | | 98454 | 1460 | | 99914 | 1460 | | 101374 | 1460 | | 102834 | 1460 | | 104294 | 1460 | | 105754 | 1460 | | 107214 | 1460 | | 108674 | 1460 | | 110134 | 1460 | | 111594 | 1460 | | 113054 | 1460 | | 114514 | 1460 | | 115974 | 1460 | | 117434 | 1460 | | 118894 | 1460 | | 120354 | 1460 | | 121814 | 1460 | | 123274 | 1460 | | 124734 | 1460 | | 124734 | 1460 | | 126194 | 1460 | | 127654 | 1460 | | 129114 | 1460 | | 130574 | 1460 | | 132034 | 1460 | | 133494 | 1460 | | 134954 | 1460 | | 136414 | 1460 | | 137874 | 1460 | | 139334 | 1460 | | 140794 | 1460 | | 142254 | 1460 | | 143714 | 1460 | | 145174 | 1460 | | 146634 | 1460 | | 148094 | 1460 | | 149554 | 1460 | | 151014 | 1460 | | 152474 | 481 | | 總計 | 149401 |