Interconnection of Heterogeneous Networks Internetworking Service model Addressing Address mapping Automatic host configuration Wireless LAN network@home outer Ethernet PPS Internet-Praktikum Internetworking 1 PPS Internet-Praktikum Internetworking 3 Successful Example: IP Technology IP Protocol Stack Key elements of the technology used in the Internet: Internet = Network of networks Many physical sub-network technologies Distributed management Packet switching, using datagrams No connection-dependent state information in the network One network protocol Two transport protocols Infrastructure for hundreds of different distributed applications Scalability: to accommodate growth Application Transport Internet Phys. Network HTTP TCP IP Ethernet FTP ATM DNS UDP outing DECnet PPS Internet-Praktikum Internetworking 2 PPS Internet-Praktikum Internetworking 4
Example of a small Internet The Internet Service Model Connectionless, unreliable service Datagram = packet A packet may be sent to a destination identified by ist (globally unique) address No quality of service guarantees eliability Throughput Delay Delay jitter not guaranteed Best effort service Source: Computer Networks PPS Internet-Praktikum Internetworking 5 PPS Internet-Praktikum Internetworking 7 Layered view of internetworking example Format of an IP packet 32 Bit Version Header length Type of service Total length Identification Flags Fragment offset Time to live Protocol Header checksum Source IP address Destination IP address IP options (if any) Padding to 32 bits Payload PPS Internet-Praktikum Internetworking 6 PPS Internet-Praktikum Internetworking 8
Type of service byte Initially meant to be used to indicate the type of service needed for the application Currently not used However, was re-discovered for the new quality of service model for the differentiated service Internet Precedence D T Unused Avoiding fragmentation Always send small datagrams: There is some datagram size that is small enough to fit without fragmentation on any network; we could simply send no datagrams larger than this limit. Guess minimum MTU of path: Use a heuristic to guess the minimum MTU along the path the datagram will follow. Discover actual minimum MTU of path: Use a protocol to determine the actual minimum MTU along the path the datagram will follow. Guess or discover MTU and backtrack if wrong: Since an estimate might be wrong, and a discovered MTU may change if a route changes, sometimes we may have to adjust the length limit. This requires both a mechanism for detecting errors, and a mechanism for correcting them. Kent & Mogul: Fragmentation Considered Harmful, Computer Communication eview, vol. 17, no. 5, pp. 390-401. PPS Internet-Praktikum Internetworking 9 PPS Internet-Praktikum Internetworking 11 Fragmentation Addressing 1 2 Net 1, MTU = 1500 outer 1 Net 2 MTU=620 outer 2 Net 3, MTU = 1500 3 4 Fragmentation is requred when a packet longer than the MTU of a network needs to be tranferred through the network e-assembly is done at the end-point Several levels of fragmentation are possible, but not recommended IP addresses are 32 bits long They reflect the internetworking architecture of the Internet (network number, host number) Where do we have to set the boundary network/host? Addresses have to be globally unique Allocation mechanism? Are there enough IP addresses? PPS Internet-Praktikum Internetworking 10 PPS Internet-Praktikum Internetworking 12
Evolution of Internet Addressing Initial addressing scheme (1973) Class-based addressing (from 1981) See next slide Class-less inter-domain routing (CID, from 1993) What are addressable entities? An IP address identifies an interface outers typically have more than one IP address s may have multiple IP addresses Network 1 I 1 I 3 I 4 1 I 2 I 5 2 Address prefix used for inter-domain routing Network Id with intra-domain routing significance Id Network 2 PPS Internet-Praktikum Internetworking 13 PPS Internet-Praktikum Internetworking 15 Classes of IP addresses User-friendly representation of addresses Four decimal numbers represent one octet each, e.g. 129.132.66.1 Class A: between 1 and 126 Class B: between 128.1 and 191.254 Class C: between 192.1.1 and 223.254.254 To identify a network, the network part of the address is set to 0: 129.132.0.0 To address all entities in a network (broadcast), the host part is set to all 1s, e.g 129.132.255.255 Class A network 127 is the loopback network, e.g. 127.0.0.1 is the (a) loopback address CID address prefix: 129.132.0.0/16 PPS Internet-Praktikum Internetworking 14 PPS Internet-Praktikum Internetworking 16
Address mapping How does an IP packet forwarded from a router to a host actually reach that host? Ethernet 1 I1 = 129.132.30.5 Ethernet 2 1 129.132.66.25 Network 129.132.30.0 Network 129.132.66.0 The Address esolution Protocol (AP) If MAC address not known: Send broadcast AP request whois IP address x? Owner of IP address x answers with (directed) AP reply equestor stores (IP address/mac address) pair in its AP cache Note: The AP protocol is only executed between neighboring nodes (e.g. host and next router, host and host) 129.132.66.25 PPS Internet-Praktikum Internetworking 17 PPS Internet-Praktikum Internetworking 19 Mapping IP address to MAC address The router needs to know the MAC address of the host in order to send the frame containing the IP packet to the host. Ethernet 1 I1 = 129.132.30.5 129.132.66.25 Network 129.132.30.0 Simple forwarding table example Internet I 4 = 212.125.134.23 2 I 3 = 129.132.30.1 Network 1 = 129.132.30.0/24 1 Ethernet 2 0a-23-45-26-1f-3e 129.132.66.25 Network 129.132.66.0 129.132.66.25 I 1 = 129.132.30.5 1 I 2 = 129.132.66.1 Network 2 = 129.132.66.0/24 129.132.30.5 (MyAddr) 129.132.66.1 (MyAddr) 129.132.30.0/24 local-i1 129.132.66.0/24 local-i2 default 129.132.30.1 129.132.66.25 129.132.30.10 129.132.66.25 (MyAddr) 129.132.66.0/24 local default 129.132.66.1 PPS Internet-Praktikum Internetworking 18 PPS Internet-Praktikum Internetworking 20
Internet Control Message Protocol (ICMP) Signaling protocol Used to signal errors or simple control elements between hosts and routers, e.g.: When a packet is dropped To check whether an interface can be reached To change the first hop from a host towards some destination Logically on the same level as IP, but ICMP messages are carried in IP packets Subnetting Subnetting provides flexibility for network-internal addressing of subnetworks Network administrators have the freedom to structure their own A/B/C address space into a few or many subnetworks 0 1 2 3 4 8 16 24 31 Class B 10 Net ID ID Subnet 10 Net ID Subnet ID ID 16 Bits n Bits 16-n Bits Subnet mask Example: Net 129.132.0.0, Mask 255.255.255.192 = 10 Bit Subnet PPS Internet-Praktikum Internetworking 21 PPS Internet-Praktikum Internetworking 23 Some ICMP message types 0 Echo response 3 Destination unreachable 4 "Source Quench" 5 oute change 8 Echo request 11 Packet dropped because of TTL exceeded 12 Packet dropped because of a parameter error Important host configuration parameters IP address Subnet mask Default router... Set by hand or automatically via the Dynamic Configuration Protocol (DHCP) etc. 0 8 16 24 31 Type (3) Code (0-12) Checksum Unused (=0) Header of related packet and first 64 bits of payload PPS Internet-Praktikum Internetworking 22 PPS Internet-Praktikum Internetworking 24
Why DHCP? Automatic configuration of hosts Parameters: IP address (default) router addresses IP mask to support subnetting Addresses of the DNS server(s) Link MTU, default time-to-live and many more, see appendix A of FC 2131 Without DHCP: do it by hand (network control panel, registry, configuration script, etc.) Some parameters may only be settable via DHCP Sometimes you have to reboot after changing the parameters by hand PPS Internet-Praktikum Internetworking 25 Typical scenario Server (not chosen) Client Server (chosen) Determines config t Chooses server Client is configured PPS Internet-Praktikum Internetworking 27 Determines config Principles of DHCP Client/server model: Clients (hosts) receive configuration parameters from a server Components DHCP Client/Server protocol Mechanism for address allocation Address allocation: Automatic/static - DHCP sets a permanent address dynamic - DHCP provides an address for some lease time manual Assignment of addresses pre-set by the administrator Mode of operation may be set by the administrator PPS Internet-Praktikum Internetworking 26