Chapter 8 TCP/IP School of Info. Sci. & Eng. Shandong Univ. Outline l l l l l l l 1. TCP/IP Architecture 2. Internet Protocol IP Version 4 3. IP Version 6 (skip) 4. Transport Layer Protocols (TCP and UDP) 5. DHCP and Mobile Internet (just a little) 6 Internet Routing 7. Multicast Routing (skip) Application Application TCP UDP ICMP IP ARP RARP Physical network Figure 8.1 HTTP Request Header contains source and destination port numbers Header contains: source and destination IP addresses; transport protocol type Header contains: source and destination Ethernet physical addresses; network protocol type Header TCP Header IP Header FCS Figure 8.2 Machine A Machine B Application Application Transport Transport Router/Gateway Internet Internet Network Interface Network Interface Network 1 Internet Network Interface Network 2 Figure 8.3 IP Packet Design: Fields Defined on next two slides 0 4 Version 8 IHL 16 Type of Service Identification Time to Live 19 24 31 Total Length Flags Protocol Fragment Offset Header Checksum Source IP Address Destination IP Address Options Padding Figure 8.4 IP Packet Fields l l l l l Version. mostly 4 or 6 Internet Header Length IHL in 32-bit words if no options are present IHL=5 Type of Service. (priority) Most routers ignore Total Length. No of bytes in IP packet including header and info. Max is 65,535. Usually less. Ethernet only allows 1500 bytes. ID, Flags, Frag Offset. Used in reassembling fragmented packets. IP Packet Fields, Continued l l l l l l Time to Live TTL. Sending host sets. Decremented by one by each router. When field reaches zero, packet is discarded. Normally counts hops. Protocol that will receive packet. TCP=6, UDP=17, ICMP=1 Header checksum. Info part not checked. Since the TTL is decremented by each router, this has to recalculated by each router Source and Destination IP addresses 32 bits each. Options. Rarely used. Padding. used to make header a multiple of 32-bit words Varieties of IP addresses Bit position: 0 1 2 3 Class A 0 Class B 1 0 Class C 1 1 0 Class D 1 1 1 0 Class E 1 1 1 1 8 16 Net ID 31 Host ID Net ID Host ID Net ID Host ID Multicast address Reserved for experiments Figure 8.5 Original 1 0 address Net ID Subnetted address 1 0 Net ID Host ID Subnet ID Host ID Figure 8.6 H1 H2 220.127.116.11 18.104.22.168 22.214.171.124 126.96.36.199 188.8.131.52 To the rest of the Internet R1 184.108.40.206 H3 H4 220.127.116.11 18.104.22.168 22.214.171.124 126.96.36.199 R2 H5 188.8.131.52 184.108.40.206 220.127.116.11 Figure 8.7 MGl RL 8.8 Address Resolution Protocol FIGURE 8.9 Packet fragmentation TABLE 8.1 Values of the IP header in a fragmented packet FIGURE 8.10 IPv6 basic header TABLE 8.2 Address types based on prefixes FIGURE 8.11 Provider-based address format FIGURE 8.12 Daisy-chain extension headers TABLE 8.3 Extension headers FIGURE 8.13 Extension header for jumbo packet FIGURE 8.14 Fragment extension header FIGURE 8.15 Routing extension header FIGURE 8.16 I DP datagram FIGURE 8.16 I DP datagram FIGURE 8.18 TCP preview FIGURE 8.19 TCP end-io-end How control FIGURE 8.20 TCP segment FIGURE 8.21 TCP pseudoheader FIGURE 8.22 Three-way handshake FIGURE 8.23 If a host always uses the same initial sequence number, old segments cannot be distinguished from the current ones FIGURE 8.24 Client server application process actions and TCP FIGURE 8.25 TCP window flow control FIGURE 8.26 Header overhead FIGURE 8.27 TCP graceful close FIGURE S.28 TCP state transition diagram Note: The thick solid line is the normal state trajectory for a client; the dashed line is the normal state trajectory for a server FIGURE 8.29 Routing for mobile hosts FIGURE 8.30 IP to IP encapsulation FIGURE 8.31 Rome optimization for mobile IP FIGURE 8.32 RIP message format TABLE 8.4 RIP fields FIGURE 8.33 OSPF areas FIGURE 8.34 OSPF common header TABLE 8.5 OSPF header fields FIGURE 8.35 OSPF Hello packet format TABLE 8.6 Hello packet fields FIGURE 8.36 OSFP database description packet TABLE 8.7 OSPF database description packet fields FIGURE 8.37 LSA header TABLE 8.8 LSA header fields FIGURE 8.38 OSPF link-state request packet FIGURE 8.39 OSPF link-state update packet FIGURE 8.40 A graph of ASs FIGURE 8.41 Internal and external BGP FIGURE 8.42 iBGP mesh FIGURE 8.43 BGP header format FIGURE 8.44 BGP OPEN message FIGURE 8.45 KEEP ALIVE message format FIGURE 8.46 NOTIFICATION message format TABLE 8.9 BGP error codes and subcodes FIGURE 8.47 UPDATE message FIGURE 8.48 Format of each attribute FIGURE 8.49 Attribute type FIGURE 8.50 BGP NEXT_HOP FIGURE 8.51 Example of the MED attribute FIGURE 8.52 Multicast tree rooted at source FIGURE 8.53 Router 1 forwards the packet FIGURE 8.54 Routes 2, 3, 4, and 5 forward the packets FIGURE 8.55 Routers 6, 7, and 8 forward the packets FIGURE 8.56 IGMP message format FIGURE 8.57 Grafting to cancel pruning SUMMARY We began this chapter with an end-to-end view of the flow of application layer messages through the IP layer in the end systems and across an IP internetwork. We then examined the details of how Internet Protocol enables communications across a collection of networks. We paid particular attention to the hierarchical structure of IP addresses and explained their role in ensuring scalability of the Internet. The role of address prefixes and the use of masks was explained. We also examined the interplay between IP addresses, routing tables, and router operation. We discussed how the IP layer must perform segmentation and reassembly in order to provide the higher layers with independence from the underlying network technologies. We also introduced Internet Protocol version 6 and identified its advantages relative to IPv4 in terms of address space and streamlined header design. The Internet offers two basic communication services that operate on top of IP: TCP reliable stream service and UDP datagram service. We examined the simple operation of UDP, and we then focussed on the details of how TCP provides reliable stream service and flow control. We also discussed the various issues that underlie the design of TCP: the rationale for using the three-way handshake; the separation of acknowledgments and window size; the difficulties in closing a connection, and the consequences of sequence number space limitations as well as of round-trip time variability. we introduced DHCP and mobile IP and explained their role in extending IP service to mobile and transitory users. The later sections of the chapter were concerned with IP routing. We introduced the Autonomous System structure of the Internet and explained how the routing problem is then partitioned into intradomain and interdomain components. We introduced RIP and OSPF for intradomain routing. We identified the advantages of OSPF and explained its operation in detail. We discussed how intradomain and inter-domain routing involve different concerns, e.g. optimal path routing versus policy routing. We also explained how BGP4 provides interdomain routing. Finally, we showed how the hierarchy of the Autonomous System structure and the hierarchy inherent in CIDR addressing work together to provide an Internet that can scale to enormous size. In the last section we provided an introduction to multicast routing.
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project