220 likes | 225 Vues
Module 5.2: Internet Protocol. CO vs. CL protocols IP Features Fragmentation Routing IP Datagram Format IPv6. CO vs. CL. CO – Connection Oriented Modeled after the telephone system When PDU are sequenced, I.e. logical connection CL – Connectionless Modeled after the postal system
E N D
Module 5.2: Internet Protocol • CO vs. CL protocols • IP Features • Fragmentation • Routing • IP Datagram Format • IPv6 K. Salah
CO vs. CL • CO – Connection Oriented • Modeled after the telephone system • When PDU are sequenced, I.e. logical connection • CL – Connectionless • Modeled after the postal system • When PDUs are not sequenced. Each PDU is treated independently from each other. • IP is a CL protocol! • Advantages • Flexibility • Robust • Smaller Buffers Needed • No unnecessary overhead • Unreliable • Not guaranteed delivery • packets can be lost, duplicated, damaged. • Not guaranteed order of delivery • Packets can take different routes • Reliability is responsibility of next layer up (e.g. TCP) K. Salah
IP Features • IP has two primary responsibilities: • Routing: • Providing CL, best-effort delivery of datagrams through an internetwork; and • Fragmentation: • Providing fragmentation and reassembly of datagrams to support data links with different maximum transmission unit (MTU) sizes. K. Salah
Routing • IP relies on two tools to help it route datagrams: • Subnet mask • IP routing table • If source and destination network and subnet parts are the same, then the destination host is in the same network and the routing is direct. • The datagram is wrapped in a frame and transmitted directly to its destination on the local LAN. • The destination address that is placed in the frame header must be the physical address of the destination. • ARP (Address Resolution Protocol) will be used to find the physical address of the destination. • If destination is not on the local subnet, IP must consult its local routing table. • In such a case, the datagram is sent to the router specified in the routing table. • If no router (or default gateway) is found in the routing table, report error. K. Salah
Fragmentation • Each LAN and WAN technology imposes a different size limit on its frames. • For example, the maximum frame size of the ethernet (MTU) is 1500 bytes, which is far below the maximum size of an IP datagram. • Maximum IP packet size is (65537) or 216 bytes. • IP solves the size problem by chopping the datagram into several smaller datagrams called fragments. Fragmentation is performed by routers and hosts. • It is up to IP in the destination host to gather up the incoming fragments and rebuild the original datagram, before passing it to the upper layer. • Fragmentation most often is performed in a router. • Fragmentation is a performance killer. K. Salah
Fragmentation (Cont.) • When to re-assemble • At destination • Results in packets getting smaller as data traverses internet • Intermediate re-assembly • Need large buffers at routers • Buffers may fill with fragments • All fragments must go through same router • Inhibits dynamic routing • IP re-assembles at destination only K. Salah
Fragmentation (Cont.) • Uses fields in header • Data Unit Identifier (ID) • Identifies end system originated datagram • Source and destination address • Protocol layer generating data (e.g. TCP) • Identification supplied by IP layer • Data length • Length of user data in octets • Offset • Position of fragment of user data in original datagram • In multiples of 64 bits (8 octets) • More flag • Indicates that this is not the last fragment K. Salah
Fragmentation Example K. Salah
Dealing with Failure • Re-assembly may fail if some fragments get lost • Need to detect failure • Re-assembly time out • Assigned to first fragment to arrive • If timeout expires before all fragments arrive, discard partial data • Use packet lifetime (remaining time to live in IP) • If time to live runs out, kill partial data K. Salah
IP: Datagram format K. Salah
Header Fields (1) • Version • Currently 4 • IP v6 - see later • Internet header length (HLEN) • In 32 bit words • Including options • Type of service • Total length • Of datagram (header+data) in octets • Identification • unique integer • Used with addresses and user protocol to identify datagram uniquely • This parameter is needed for reassembly and error reporting. K. Salah
Header Fields (2) • Flags (only 2 bits used) • More bit • Don’t fragment • If a node does not know how to reassemble • Useful in bootstrapping. The node initially has a lightweight IP stack • Fragmentation offset • Time to live • Protocol • Next higher layer to receive data field at destination K. Salah
Header Fields (3) • Header checksum • Reverified and recomputed at each router • 16 bit ones complement sum of all 16 bit words in header • Set to zero during calculation • Source address • Destination address • Options (variable) • Padding (variable) • Used to ensure that the IP header is a multiple of 32 bits in length. • Data (variable) • Must be an integer multiple of 8 bits in legth • The maximum length of datagram (data+header) is 65,535 bytes K. Salah
Type of Service • Precedence • Measurement of packet’s relative importance. • 8 levels • Reliability • Try not to drop the packet. • Delay • Try to minimize the delay for this packet. • Throughput • Choose a network with high bandwidth. • Cost • Choose a network with least cost K. Salah
Options • Security • Attach classified information level to packet. For DOD military application. RFC 1108. • Source routing • List of all routers. • Route recording • List of routers visited. • Stream identification • For special handling of voice and data • Timestamping • Add a timestamp at each router K. Salah
IPv6 • IP v 1-3 defined and replaced • IP v4 - current version • IP v5 - streams protocol • IP v6 - replacement for IP v4 • During development it was called IPng • Next Generation • Why Change IP? • Address space exhaustion • 232 different addresses gives over 4 billion addresses is not enough! • Due to growth of wireless, PDA, and Internet. • Other enhancements K. Salah
IPv6 vs. IPv4 • The changes from IPv4 to IPv6 are primarily in: • expanded addressing capabilities; • header format simplification; • flow labeling capability; • Support for resource allocation • improved support for extensions, options, and QoS; • Support for more authentication and security. K. Salah
IPv6 Format K. Salah
Comparison • The header length field is eliminated. • The service type field is eliminated in IPv6. • The total length field is eliminated. • The identification, flag, and offset fields are eliminated. • The TTL field is called hop limit. • The protocol field is replaced by the next header field. • The header checksum is eliminated. • The option fields in IPv4 changed to extension headers. K. Salah
Extension Headers K. Salah
Extension Headers K. Salah
Status of IPv6 • Smooth transition is key factor in success of IPv6: • Dual stack • IPv6 Tunneling for IPv4 packets. • Header translation • In reality, we have a slow adoption of IPv6. This is due to the invention of NAT. • NAT may work only with certain styles of applications, but not adequate for say IP telephony. Also, it does not scale very well. • The urge is not there yet, but surely growing! K. Salah