1 / 69

本投影片檔案僅供本書上課 教師 使用 , 非經 作者 同意請勿拷貝或轉載,謝謝。 教學單位若需教材上網,請洽旗標業務取得另一 Web 版,以免觸法,謝謝‧

本投影片檔案僅供本書上課 教師 使用 , 非經 作者 同意請勿拷貝或轉載,謝謝。 教學單位若需教材上網,請洽旗標業務取得另一 Web 版,以免觸法,謝謝‧. 大綱. 簡介 埠編號 UDP TCP 序列號碼 緩衝區與滑動訊窗 TCP 標頭欄位定義與實例解析 TCP 連線的啟動與結束 TCP 協定選擇項. 簡介. 傳輸層介於網路層與會議層之間 傳輸層協定標頭位於網路層協定標頭後 TCP/IP 協定架構下 TCP Transmission Control Protocol; 傳輸控制協定 UDP

frayne
Download Presentation

本投影片檔案僅供本書上課 教師 使用 , 非經 作者 同意請勿拷貝或轉載,謝謝。 教學單位若需教材上網,請洽旗標業務取得另一 Web 版,以免觸法,謝謝‧

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 本投影片檔案僅供本書上課教師使用,非經作者同意請勿拷貝或轉載,謝謝。本投影片檔案僅供本書上課教師使用,非經作者同意請勿拷貝或轉載,謝謝。 教學單位若需教材上網,請洽旗標業務取得另一Web版,以免觸法,謝謝‧

  2. 大綱 • 簡介 • 埠編號 • UDP • TCP • 序列號碼 • 緩衝區與滑動訊窗 • TCP標頭欄位定義與實例解析 • TCP連線的啟動與結束 • TCP協定選擇項

  3. 簡介 • 傳輸層介於網路層與會議層之間 • 傳輸層協定標頭位於網路層協定標頭後 • TCP/IP協定架構下 • TCP • Transmission Control Protocol;傳輸控制協定 • UDP • User Datagram Protocol;使用者資料報協定

  4. TCP與UDP • Examples: • TCP: FTP、Telnet、SMTP、POP3等 • UDP:音視訊資料的傳輸、DNS、SNMP、NFS、BOOTP

  5. TCP

  6. 埠編號 (Port Number)

  7. 埠編號 (Port Number) • 傳輸層的定址工作 • 在網路層定址之外,定義一個參數做為相同節點間不同通訊服務的辨識

  8. 埠編號 • 佔16位元 • 埠編號由ICANN的IANA所管轄 • Internet Corporation for Assigned Names and Numbers • 網際網路名稱與數字位址分配機構 • 分為三種類型 • 公認埠:公共、常用服務應用程式 • 註冊埠:一般應用服務程式向IANA註冊後使用 • 動態埠:不被註冊佔用,提供自由運用

  9. 常見的保留埠編號

  10. 客戶端 (Client) 埠編號 • IANA規範的埠編號是針對伺服端 (Server) • 客戶端埠編號與伺服端埠編號的設定分開 • 相互不衝突 • 隨機產生 • 常設在1,024 ~ 4,096

  11. UDP 協定

  12. UDP 協定 • 一種非可靠性的傳輸模式 • 不會檢測是否已經成功地將資料傳送給對方 • UDP標頭 • UDP訊息長度 : 以位元組為單位 • 記錄UDP標頭及其所屬資料的總合長度

  13. Checksum值運算 • 標頭、資料、虛擬標頭 (Pseudo Header) • Checksum:16個位元為單位,運用1補數演算法執行加總後,再求1的補數 • 虛擬標頭 • 對網路層再次檢測,也破壞各層級各自負責的原則,是好是壞:見仁見智

  14. UDP封包範例

  15. TCP 協定

  16. TCP 協定 • 高可靠度的資料傳輸 • 比UDP複雜的標頭格式與定義 • 提供豐富的通訊控制功能 • 詳細對TCP標頭各欄位定義說明之前 • TCP協定序列號碼 (Sequence Number) • 滑動視窗 (Sliding Window)

  17. 序列號碼 • 用以記錄傳送資料過程的累積序號 • 隨傳送完成的位元組數進行循環累加 • 最初 TCP序號累加以「封包數」為累進單位 • 目前則以「位元組數」為單位 • 對100Mbps傳輸速率的系統而言,序號的循環累加大約14天才循環一次 • 因傳輸延遲與等待,實際時程會更長 • 更快網路架構,序號循環時間會更短 • > > IP TTL 的255秒 • 且遇上相同序號的機率也相當微小

  18. 回應號碼欄位 • 與序列號碼一起運作 • 告知資料順利收到 • 象徵期望下次收到對方來信的序列號碼

  19. 單向資料發送

  20. 雙向資料傳送

  21. 傳送發生錯誤

  22. 緩衝區

  23. 一般通訊傳輸情形

  24. 緩衝區運用

  25. 合併回應

  26. 滑動訊窗 (Sliding Windows)

  27. 滑動訊窗 (1/2) • 緩衝區也稱之為「訊窗」(Windows) • 訊窗大小由各項參考參數調整 • 單位 • 封包數量:HDLC 、X.25 • 位元組數:TCP • 整體可用的訊窗大小固定 • 剩餘訊窗容量記錄在標頭Window欄位

  28. 滑動訊窗的運作

  29. 訊窗運作範例

  30. TCP 標頭

  31. TCP標頭 • 由於TCP協定的高可靠度傳輸要求 • TCP標頭比UDP標頭要複雜得多

  32. TCP 欄位定義 (1~4) • Source Port Number (來源埠編號) • Destination Port Number (目的埠編號) • Sequence Number (序列號碼) • Acknowledgement Number (回應號碼) • Example: • 140.134.28.206 (簡稱206節點) 與140.134.36.110 (簡稱110節點) 間的傳輸 • 開始時序號分別為10072715與22385505

  33. 206節點與110節點 (1/6) • 訊息長度49 (107-20-20-18) 位元組

  34. 206節點與110節點 (2/6) • 10072764 = 10072715 + 49

  35. 206節點與110節點 (3/6) • 60位元組資料傳送 (60=118-20-20-18)

  36. 206節點與110節點 (4/6) • 10072824=10072764+60 • 13 (=71-58) 個位元組資料的傳送

  37. 206節點與110節點 (5/6) • 22385518=22385505+13

  38. 206節點與110節點 (6/6) • 10072861=10072824+37

  39. TCP 欄位定義 (5,6) • HLEN (Header Length;4位元) • 記錄TCP標頭長度 • 以四個位元組為單位 • 沒有選擇項,HLEN值為5 => 20位元組 • 也代表資料從TCP標頭開始位置起算的開端 • 也稱Data Offset (資料位移) 欄位 • Reserved (保留位元;4位元) • 未使用,四位元,設為0

  40. TCP 欄位定義 (7) • 控制旗標欄位 (Control Flag) • 用來對TCP封包進行控制 • CWR (Congestion Window Reduced;擁塞視窗已降低) • ECE (ECN Echo;明確擁塞通知回聲)

  41. 控制旗標欄位 (2/3) • URG (Urgent;緊急) • 1:緊急資料,需立即處理 • Ex: Crtl-C • 位置 : 緊急指標 (Urgent Pointer) 欄位描述 • ACK (Acknowledgement;回應) • 1:帶回應確認訊息 • 一般的TCP封包,此旗標通常都設為1 • PSH (Push;推進) • 1:直接送往上層應用程式,不經TCP處理,或等待緩衝區完全接收資料後再處理,Ex: Enter • 圖9.17~圖9.22,除圖9.18外都以PSH進行

  42. 控制旗標欄位 (3/3) • RST (Reset;重設) • 1:重新對TCP封包進行設定傳送 • SYN (Synchronize;同步) • 1:進行雙方同步溝通 • 每次TCP連線建立之初,都必須執行 • FIN (Final;結束) • 1:連線結束訊息

  43. TCP 欄位定義 (8-9) • Window欄位 : 16個位元 • 記錄緩衝區剩下的資料空間 • Example :圖9.17~圖9.22 • Checksum欄位 : 與UDP類似 • TCP標頭、資料以及虛擬標頭三部分 • 以16位元為單位,1補數演算法,再求1的補數 • 運算時,標頭Checksum欄位 : 0

  44. TCP 欄位定義 (10-11) • Urgent Pointer(緊急指標);16位元 • 旗標URG位元為1時才會運用 • 描述緊急資料所在位置 • Ex:資料流量超過網路的頻寬時,系統發出緊急訊息,要求網路主機暫緩傳送資料封包 • TCP Options (選擇項) 欄位 • 可變長度欄位 : 32位元整數倍 • 不足32位元 : 加填充位元 (Padding) • 最常見的TCP選擇項 • 定義傳送封包的最大值 • SACK機制

  45. TCP連線的啟動與結束

  46. TCP連線的啟動

  47. 110對206進行連線啟動

  48. 206對110進行連線啟動與訊息回應

  49. 110對206連線啟動進行回應

More Related