第十三章 TCP/IP 與 Internet 網路連結技術 13-12 IPv6 協定 13-13 IPv6 位址格式 13-14 Internet 網路連結 13-15 網域內路徑選擇 13-16 自治系統內路徑選擇 13-17 RIP 路徑協定 13-18 IGRP 路徑協定 13-19 EIGRP 路徑協定 13-20 OSPF 路徑協定 13-21 自治系統之間路徑選擇 13-1 TCP/IP 協定堆疊 13-2 協定資料單元 13-3 IP 位址 13-4 IP 網路遮罩 13-5 IP 協定 13-6 IP 路徑選擇 13-7 ARP 與 RARP 協定 13-8 ICMP 協定 13-9 TCP 協定 13-10TCP 連線管理 13-11 UDP 協定
13-1 TCP/IP 協定堆疊 (一) TCP/IP 通訊協定堆疊
13-1 TCP/IP 協定堆疊 (二) (C) 網際層 (Internet Layer) IP (Internet Protocol) ICMP (Internet Control Message Protocol) ARP (Address Resolution Protocol) RARP (Reverse Address Resolution Protocol) (D) 網路存取層 (Network Access Layer) Ethernet 網路 Token-Ring 網路 FDDI、ATM、PPP、SLIP 網路 (A) 應用層 (Application Layer) FTP (File Transfer Protocol) TFTP (Trivial File Transfer Protocol) SMTP (Simple Mail Transfer Protocol) HTTP (HyperText Transfer Protocol) DNS (Domain Name Server) (B) 傳輸層 (Transport Layer) TCP (Transmission Control Protocol) UTP (User Datagram Protocol)
13-2 協定資料單元 (一) 協定資料單元 (PDU) 包裝
13-2 協定資料單元 (二) 協定資料單元名稱 Application Layer:Stream, Message Transport Layer :Segment, Packet Internet Layer : Datagram Network Access Layer : Frame
13-2 協定資料單元 (三) 協定資料單元定址 Port Number Protocol Number IP Address Network Address (Ethernet Address)
13-3 IP 位址 (一) IP 位址結構 長度 32 位元 區分成四段,每段已十進位表示 (0~255) dec3.dec2.dec1.dec0 (如 163.15.2.1) 包含:網路號碼 (Network Number) 與主機號碼 (Host Number)
13-3 IP 位址 (二) IP 位址分級 Class A : Class D : Class E : Class B : 網路位址:1.0.0.0 ~ 126.0.0.0 主機位址:1.0.0.0 ~ 126.255.255.255 Netmask = 255.0.0.0 Class B : 網路位址:128.0.0.0 ~ 191.255.0.0 主機位址:128.0.0.0 ~ 191.255.255.255 Netmask = 255.255.0.0 Class C : 網路位址:192.0.0.0 ~ 223.255.255.0 主機位址:192.0.0.0 ~ 223.255.255.255 Netmask = 255.255.255.0 Class D : 多點廣播 (Multicast) Class E : 保留未用 0.0.0.0 為 Default Router 127.0.0.0 為 Loopback Address 127.0.0.1 為 Local Host
13-3 IP 位址 (三) IP 位址分級
13-4 IP 網路遮罩 (一) IP 網路遮罩 (Network Mask) IP Netmask:32 位元 1 表示網路;0 表示主機 『主機號碼/網路號碼長度』(network#, host#)。如 163.15.2.1/16 表示網路遮罩長度為前面 16 位元,則網路位址為 163.15.0.0;主機號碼為 0.0.2.1。
13-4 IP 網路遮罩 (二) 次網遮罩 (Subnet Mask) 取某些主機號碼之位元做為次網路號碼。 [network#, subnet#, host#] 範例: 163.15.0.0 之網路上增加 8 個次網路 原來 IP Netmask = 255.255.0.0,改為 255.255.224.0 次網路位址為: 163.15.0.0/19, 163.15.32.0/19, 163.15.64.0/19, 163.15.96.0/19, 163.15.128.0/19, 163.15.160.0/19, 163.15.192.0/19, 163.15.224.0/19。
13-5 IP 協定 (一) IP 協定之特性 非連接服務 (Connectionless) 無錯誤偵測功能 封包到達順序和原來發送不同 封包可能重複傳送 不驗證封包是否到達目的地。
13-5 IP 協定 (二) IP 封包結構 Fragment Offset (13 bits) Time to Live, TTL (8 bits) Protocol Number (8 bits) Header Checksum (16 bits) Source Address (32 bits) Destination Address (32 bits) Options (Variable) Padding (Variable) IP 封包結構 Version (4 bits) Internet Header Length, IHL (4 bits) Type of Service, ToS (8 bits) Total Length (16 bits) Identification (8 bits) Flags (3 bits)
13-5 IP 協定 (三) 著名協定號碼 協定名稱 協定號碼 協定全名(協定包裝在 IP 資料片內) ICMP 1 Internet Control Message Protocol IGMP 2 Internet Group Management Protocol GGP 3 Gateway-to –Gateway Protocol IP 4 IP in IP encapsulation TCP 6 Transmission Control Protocol EGP 8 Exterior Gateway Protocol IGP 9 Interior Gateway Protocol UDP 17 User Datagram Protocol
13-6 IP 路徑選擇 (一) IP 路徑選擇之處理程序 路由表的建立有: 網路位址與本機 (或路由器) 相同,則將封包廣播到網路上。 網路位址與本機 (或路由器) 不同時,則轉送到適當之埠口 (或網路) 上。 一般路由器都有兩個以上的埠口,每一埠口負責轉送封包,當封包由埠口進入,依照步驟 1 與 2 轉送。 轉送封包時,依照『路由表』轉送。 路由表的建立有: 靜態路徑選擇 動態路徑選擇
13-6 IP 路徑選擇 (二) 路徑選擇範例 三個網路:163.15.2.0/19、163.15.3.0/19、163.15.4.0/19 兩個路由器:Router_A、Router_B。 工作站 A(163.15.2.1) →工作站 B (163.15.2.2) 工作站 A (153.15.2.1) →工作站 C (163.15.3.1) 工作站 A (163.15.2.1) →工作站 D (163.15.4.1)
13-7 ARP 與 RARP 協定 (一) 位址解析協定 (Address Resolution Protocol, ARP) 以網路 IP 位址查問對方的網路實體位址 (Ethernet 位址)。 運作程序:
13-7 ARP 與 RARP 協定 (二) 反向位址解析協定 (Reverse Address Resolution Protocol, RARP) 以自己的網路實體位址查詢 IP 位址。 運作程序:
13-7 ARP 與 RARP 協定 (三) ARP/RARP 封包格式 Hardware Type: 1 表 Ethernet。 Protocol Type : 0x0800 表示 IP 協定。 Operation Type: 1 → ARP Request 2 → ARP Reply 3 → RARP Request 4 → RARP Reply HLEN:Ethernet 為 6。 PLEN:IP 協定為 4。
13-8 ICMP 協定 (一) 網際控制訊息協定 (Internet Control Message Protocol, ICMP) 偵測及回應網路狀況。 ICMP 封包崁入 IP 封包內傳送。
13-8 ICMP 協定 (二) ICMP 封包格式 Message Type:計有 13 種控制訊息型態。 Code :訊息型態之工作內容。 Checksum :封包頭隻檢查碼。 Message Description :訊息說明。 Message Data :訊息資料。
13-8 ICMP 協定 (三) 訊息型態 Message Type ICMP 訊息功能 Echo Reply(回應答覆) 3 Echo Reply(回應答覆) 3 Destination Unreachable(目的地無法到達) 4 Source Quench(來源抑制) 5 Redirect(改變傳輸路徑) 8 Echo Request(回應要求) 11 Time Exceeded for a Datagram(溢時傳輸) 12 Parameter Problem on a Datagram(參數問題) 13 Timestamp Request(時間標籤要求) 14 Timestamp Reply(時間標籤回覆) 15 Information Request(資訊要求)(停用) 16 Information Reply(資訊回覆)(停用) 17 Address Mask Request(位址遮罩要求) 18 Address Mask Reply(位址遮罩回覆)
13-9 TCP 協定 (一) TCP 封包格式 (Transmission Control Protocol) Code bit Source Port Destination Port Sequence Number Acknowledge Number Data Offset Code bit URG (Urgent) ACK (Acknowledge) PSH (Push) RST (Reset) SYN (Synchronous) FIN (Finish) Window Checksum Urgent Point Option Padding
13-9 TCP 協定 (二) TCP 埠口 TCP 與 IP 連線關係
13-9 TCP 協定 (三) 著名服務埠口 號碼 服務名稱 傳輸協定 應用服務說明 保留 1 tcpmux TCP 保留 1 tcpmux TCP TCP port 服務多處理 7 Echo TCP/UDP 回應測試 11 systat 系統狀態顯示 15 netstat 網路狀態顯示 20 ftp-data FTP 資料傳輸埠 21 ftp FTP 控制埠 23 telnet Telnet 遠端登入埠 25 smtp Simple Mail Transfer Protocol 37 time Time Server 42 name UDP Name Server 43 whois 是誰、nickname(別名) 53 domain Domain Name Server(DNS) 79 finger 尋找使用者 80 http Web Server 109 pop-2 Post Office Protocol 119 nntp Network News Transfer Protocol 123 ntp Network Time Protocol
13-10 TCP 連線管理 (一) TCP 連線管理簡介 建立連線之運作程序 三向握手式連絡法。 使用到 Sequence Number (seq) 與 Acknowledge Number (ack)。及 Code 欄位中 ACK 、SYN、FIN 與 RST 四個旗標。 建立連線之運作程序
13-10 TCP 連線管理 (二) 資料傳送之運作程序
13-10 TCP 連線管理 (三) 連線終止之運作程序
13-11 UDP 協定 使用者電報傳輸協定 (User Datagram Protocol, UDP) 非連接方式之傳輸服務 一般使用於:資料較少量之快速傳輸或網路上管理控制 (如 SMTP、DNS) UDP 封包格式
13-12 IPv6 協定 (一) IPv6 與 IPv4 之比較 IPv6 提供更寬廣的 IP 位址空間。128 bits IPv6 提供流量標籤 (Flow Label)。 IPv6 提供傳輸流量等級 (Traffic Class) 的分類。 IPv6 減少封包分段 (Fragmentation) 的機率。 IPv6 簡化封包標頭。
13-12 IPv6 協定 (二) IPv6 封包格式 Version : IPv6 = 6 Traffic Class: 0 ~ 7 提供回應壅塞;0 ~ 15 則不提供。 0:Uncharacterized traffic 1 :Filler Traffic 2:Unattaended data transfer 3:Reserved 4:Attended bulk transfer 5:Reserved 6:Interactive traffic 7:Internet control traffic Flow Label:同一筆資料給予相同的標籤。 Payload Length Next Header:本封包所承載的標頭型態 (如 TCP 或 ICMP)。 Hop Limit:如同 TTL。 Source Address Destination Address
13-13 IPv6 位址格式 (一) IPv6 位址表示 128 bits (16 Bytes) X:X:X:X:X:X:X:X 例如:A2E5:56EF:906B:4590:12EC:D532:7812:0001 以 『::』表示許多 0 的情形: 0:0:0:0:0:0:0:1 → ::1 為 loop back 位址 0:0:0:0:0:0:0:0 → :: 為未指定位址
13-13 IPv6 位址格式 (二) IPv6 位址格式 單一廣播位址 (Unicast Address) 可集合式整體位址 (Aggregatable Global Address) 地區本地位址 (Sit-local Address) 鏈路本地位址 (Link-local Address) IPv4 相容 (IPv4-compatible) 位址格式 任一廣播位址 (Anycast Address)
13-14 Internet 網路連結 Internet 網路連結之型態 網域內路徑選擇 自治系統內路徑選擇 自治系統之間路徑選擇 Routing Information Protocol (RIP) Interior Gateway Routing Protocol (IGRP) Enhanced Interior Gateway Routing Protocol (EIGRP) Open Shortest Path First (OSPF) 自治系統之間路徑選擇 Border Gateway Protocol (BGP)
13-15 網域內路徑選擇 以固定路由表為主
13-16 自治系統內路徑選擇 動態路由表為主 Routing Information Protocol (RIP) Interior Gateway Routing Protocol (IGRP) Enhanced Interior Gateway Routing Protocol (EIGRP) Open Shortest Path First (OSPF)
13-17 RIP 路徑協定 (一) RIP 路徑協定之特性 (Routing Information Protocol) RIP 封包格式 由 Xeror 公司發展出來,為 Unix 電腦上之共通的路徑選擇協定。 採用『距離向量路徑選擇法』(Distance-Vector Routing) (請參考第四章說明) 每一段時間 (30 秒) 廣播訊息給相鄰路由器。 RIP 封包格式 Command (COM) :Request 或 Response Version (Ver) Address Family Identifier (AFI) :網路型態 Address (Addr) : IP 位址 Metric :路由值,到達 IP 位址所必須跳躍的數目,最高為 15。
13-17 RIP 路徑協定 (二) RIP 2 封包格式 Routing Tag (RT) Subnet Mask (SM) Next Hop (NH)
13-18 IGRP 路徑協定 IGRP 路徑協定之特性 (Interior Gateway Routing Protocol) 由 CISCO 公司所發展出來。 為 RIP 的增強型。 採用『距離向量路徑選擇』(請參考第四章說明) IGRP 與 RIP 之比較 跳躍距離不受限於 15。 可提供多條路徑選擇,RIP 只提供一條路徑選擇。 可重新配置於 RIP、OSPF、EIGRP 之協定內。 提供快速更新資料計時器 (Flush timer),如有資料變動,將更新資料迅速告知相鄰路由器 (10 秒)。 廣播訊息週期為 90 秒。
13-19 EIGRP 路徑協定 EIGRP 路徑協定 (Enhanced Interior Gateway Routing Protocol) 由 CISCO 公司所發展 整合『鏈路狀態法』(LS Routing) 與『距離向量法』(DV Routing) 成為『擴張型更新演算法』(Diffusing-Update Algorithm, DUAL)。(請參考第四章說明) EIGRP 與其他路徑協定之不同點: 提供重新配置 (Redistribution) 功能以整合不同路徑協定。 快速收斂。 提供可變長度之網路遮罩。 非週期廣播。 EIGRP 的主要技術 鄰居發現與復原 (Neighbor discovery/recovery) 可靠的傳輸協定 (Reliable Transport Protocol) DUAL 狀態轉換 (DUAL finite-state Machine) 協定相依模組 (Protocol-dependent module)
13-20 OSPF 路徑協定 (一) OSPF 路徑協定之特性 (Open Shortest Path First) (Dijkstra Algorithm) (請參考第四章說明) 採用『鏈路狀態路徑選擇法』(Link-state routing) 路由器固定時間傳送『鏈路狀態宣傳』(Link-state Advertisement, LSA) 給同等級的所有路由器。 每一路由器維護一只『路由拓樸圖』,並定期廣播。 區分為 intra-AS (自治系統之內) 及 inter-AS (自治系統之間)。
13-20 OSPF 路徑協定 (二) 範例:
13-21 自治系統之間路徑選擇 (一) 一般採用『距離向量路徑選擇法』。 邊界網路架構範例:
13-21 自治系統之間路徑選擇 (二) BGP 路徑協定 (Border Gateway Protocol) 自治系統之間路徑選擇 (Inter-autonomous System Routing) 自治系統內路徑選擇 (Intra-autonomous System Routing) 貫穿自治系統路徑選擇 (Pass-through Autonomous System Routing)