- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验10TCP协定分析
Electronic Commerce, Third Edition 實驗10 TCP協定分析 實驗目的 明瞭可靠傳輸層的基礎觀念 TCP協定下區段資料傳送的格式 背景資料 TCP協定主要是為了在主機間實現高可靠性的封包交換傳輸協定,因為TCP協定主要是用在網路不可靠的時候完成通信,對於軍方可能特别有用,但是以目前來說,對於政府部門以及商業單位也非常適合。 TCP點對點的可靠協定,它支援許多種的網路應用程式,TCP對於下層的服務並沒有多少要求,它直接假設下層只能提供不可靠的資料傳輸服務,而且可以在多種硬體介面組成的網路上使用。 TCP協定 TCP協定 TCP的上面一層就是應用層,下面是IP協定,上層包括一系列類似作業系統中中斷的運用,對於上層應用程式來說,TCP應該可以同步的來傳送資料,下層假設為IP協定。 為了在不可靠的網路介面上建立可靠的傳送資料服務,TCP必須解決可靠性,流量控制的問題,而且必須能為上層的應用程式來提供多個埠口,用來同時為多個應用程式提供資料,同時,TCP必須解決連接的問題,這樣子的話,TCP才是個可靠的通訊協定,而最後也要克服通訊安全的問題。 TCP協定 在運行TCP協定的電腦主機上,TCP可以被看成是一個模組,和文件系统區别不大,TCP也可以調用一些作業系统的功能,TCP不直接和網路相連,控制網路的任務是由專門的設備來完成,TCP協定只是用來配置埠號,IP協定向TCP協定提供所有TCP需求的服務。 TCP連接是可靠的,而且保証了傳送區段的順序,保証順序的能力是用一個序號來達成的,區段內也包括一個序列號,表示接收方準備好這個序號的區段,在TCP協定傳送一個區段時,它會同時把這個區段放入重新發送的序列中,同時啟動計數器,如果收到了確認訊息,就會把重送的區段序列刪除,如果超過計數時間時,就會將這個區段重送。 TCP協定 每一個用於傳送TCP資料的通道都有一個埠號記錄,因這個記錄是由每個TCP的终端來確定的,因此TCP可能是不唯一,為了保証這個數值的唯一性,要使用網路位址和埠號的組合來達到唯一的目的,稱這個為Socket。 一個通訊由連接兩端的Socket來標示,本地端的Socket可能和不同的外部Socket來通訊,這種通訊是全雙工的。 TCP 連線 所有TCP的傳輸都必須在TCP連線(TCP Connection)下進行,TCP連線的定義至少需要四組參數,即來源端的IP地址、連線埠號和目的端的IP地址、連線埠號。在下圖中雖有三個客戶端機器連線至伺服器端,C1和C2雖連線埠號相同但IP地址不同故互為獨立的TCP連線,C3中連線埠號兩組故也互為獨立的TCP連線,所以圖中有4組TCP連線。 確認與重送 肯定確認與重新傳輸(Positive Acknowledgement and Retransmission;PAR),是許多通訊協定用來確保可信度,經常使用的一種技術。有了PAR,發送端送出一個封包後,會開始計時,待對方確認後,才會再送出下一個封包。若尚未收到確認,而計時器已逾時,則發送端會再傳輸一次該封包,並重新計時。上述傳送的過程,雖然具有確認與重送的功能, 但在效能方面會造成很大的問題,當發送端每傳送出去一個封包後,便只能等待,一直等到收到對方確認封包後,才能傳送下一個封包,所以在整個傳送過程中,絕大部份時間都浪費在等待確認封包。這種機制只有在早期通訊品質和計算機效能均很差的年代出現過,如X.25,現今已不復存在。 由於TCP具有PAR,所以UDP可能可為單向式傳輸,TCP必為雙向式傳輸,不過傳輸時上下載頻寬不必相同(如ADSL),上下載路徑也可以不相同(如單向式Cable Modem)。 確認與重送 視窗大小決定在收到目的地確認之前,一次可以傳送的資料量。代表視窗大小的數字越大(位元組),主機可以傳輸的資料量就越多。當主機傳輸視窗大小數目的位元組資料後,就必須等收到確認以後,才可以再傳下面的訊息。例如,若視窗的大小為1,則傳完每個(1)區段後,都必須經過確認,才可以再傳下一個區段。 緩衝區與滑動視窗(Sliding Window) 滑動視窗是一種資料流量控制技巧,它要求發送端設備在傳送一定量的資料以後,必須接收對方確認。 想像有一扇窗戶,如果將窗戶向左拉開時,空隙增大此時空氣進來的多,將窗戶向右關閉時,空隙變小此時空氣進來的少,所以利用窗戶的位置決定空氣進來的數量,水龍頭左轉右轉也相同道理。不過由於計算機處理資訊流僅有一個方向,並不能像上述的左拉右關左轉右轉,所以此時將窗戶的外框不再是固定而是可以滑動,如此外框和窗戶的相對位置便可決定空隙大小決定流量。 例如,若視窗大小為3,就表示發送端設備可以連續送出三個封包給接收端。然後就必須等待對方確認。如果目的地接收到三個位元組,就會傳送確認到來源
文档评论(0)