Presentation is loading. Please wait.

Presentation is loading. Please wait.

Network Layer Packet Forwarding IS250 Spring 2010

Similar presentations


Presentation on theme: "Network Layer Packet Forwarding IS250 Spring 2010"— Presentation transcript:

1 Network Layer Packet Forwarding IS250 Spring 2010 chuang@ischool.berkeley.edu

2 John Chuang2 Packet Switching Host AHost B 128.32.226.8712.2.14.60 Local loop Backbone MAN Ethernet

3 John Chuang3 Two Basic Functions in Packet Switching  Routing -Learn the best route to (or best next-hop for) any given destination -Exchange local link status or destination reachability information -Compute best path to destinations Algorithms for computing shortest paths (e.g., Dijkstra’s) Policies that reflect business agreements (use BGP) -Update the routing table  Packet forwarding -For each packet received on an incoming link, forward it to an outgoing link according to the routing table

4 John Chuang4 L3 Outline  Addressing: -Internet Protocol (IP): address notation; address allocation; address translation  Packet switching: -Routing: BGP, OSPF, RIP -Packet forwarding: IP fragmentation, TTL, …  Extensions: -IP Multicast; QoS; Mobile IP; IPSec; …  Evolution: -IPv6

5 John Chuang5 IP Packet aka IP Datagram  Header -Contains destination address -Fixed-size fields  Payload -Variable size up to 64K -No minimum size

6 John Chuang6 Internetworking Standards  Internetworking standards set by IETF (Internet Engineering Task Force)  Documented as RFCs (Requests for Comment): -RFC 791: IP -RFC 793: TCP -RFC 2460: IPv6 -RFC 1034, 1035: DNS  http://www.ietf.org/rfc.html

7 John Chuang7 IPv4 Datagram Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8) Data (variable length) Header Data

8 John Chuang8 IP Packet Header  Version -Version number of IP protocol -Current version is Version 4 -Version 6 has different header format Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

9 John Chuang9 IP Packet Header  Header Length (in 32 bit words) -Indicates end of header and beginning of payload -If no options, Header length = 5 Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

10 John Chuang10 IP Packet Header  Type of Service (TOS) -Allows different types of service to be requested -Initially, meaning was not well defined -Different subsequent attempts to define (e.g., diffserv) Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

11 John Chuang11 IP Packet Header  Packet Length (in Bytes) -Unambiguously specify end of packet -Max packet size = 2 16 – 1 = 65,535 Bytes Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

12 John Chuang12 IP Packet Header  These three fields for Fragmentation Control (will come back to them later) Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

13 John Chuang13 IP Packet Header  Time to Live -For avoiding infinite routing loops -Initially set by sender (up to 255) -Decremented by each router -Discard when TTL = 0 Total Length in bytes (16) Time to Live (8) Options (if any) Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

14 John Chuang14 IP Packet Header  Protocol -Value indicates what is in the data field -Example: TCP or UDP Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

15 John Chuang15 IP Packet Header  Header Checksum -Checks for error in the header only -Bad headers can harm the network -If error found, packet is simply discarded Total Length in bytes (16) Time to Live (8) Options (if any) Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8) Bit 0

16 John Chuang16 IP Packet Header  Source and Destination IP Addresses -Strings of 32 ones and zeros Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

17 John Chuang17 IP Packet Header  Options -Example: timestamp, record route, source route Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

18 John Chuang18 IP Fragmentation & Reassembly  Maximum Transmission Unit (MTU) -Largest IP packet a network will accept -Arriving IP packet may be larger (max IP packet size = 65,535 bytes)  Sender or router will split the packet into multiple fragments  Destination will reassemble the packet  IP header fields used to identify and order related fragments MTU = 4352 MTU = 1500

19 John Chuang19 Illustration of Datagram Fragmentation  Each fragment has IP datagram header  Header fields -Identify original datagram -Indicate where fragment fits

20 John Chuang20 IP Packet Header  Identification -All fragments of a single datagram have the same identification number Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

21 John Chuang21 IP Packet Header  Flags: -1 st bit: reserved, must be zero -2 nd bit: DF -- Do Not Fragment -3 rd bit: MF -- More Fragments Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

22 John Chuang22 IP Packet Header  Fragment Offset (in units of 8 bytes) -Used for reassembly of packet -1 st fragment has offset = 0 Total Length in bytes (16) Time to Live (8) Options (if any) Bit 0Bit 31 Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8)

23 John Chuang23 IP Fragmentation Example MTU = 4352 MTU = 1500  Host A wants to send to Host B an IP datagram of size = 4000 Bytes

24 John Chuang24 IP Fragmentation Example ID =x offset =0 MF =0 length =4000 ID =x offset =0 MF =1 length =1500 ID =x offset =185 MF =1 length =1500 ID =x offset =370 MF =0 length =1040 One large datagram becomes several smaller datagrams Offsets in units of 8 bytes

25 John Chuang25 Multiple Fragmenting Points  Let MTUs along path be: -1500 -1000 -1500 -576 -1500  Result: fragmentation can occur twice

26 John Chuang26 Fragmenting a Fragment  Needed when fragment too large for network MTU  Arbitrary sub-fragmentation possible  Router divides fragments into smaller pieces  All fragments at same “level” -Offset given with respect to original datagram -Destination cannot distinguish sub-fragments

27 John Chuang27 Fragment Loss  Receiver -Collects incoming fragments -Reassembles when all fragments arrive -Does not know identity of router that did fragmentation -Cannot request missing pieces  Consequence: loss of one fragment means entire datagram lost


Download ppt "Network Layer Packet Forwarding IS250 Spring 2010"

Similar presentations


Ads by Google