Network Layer Packet Forwarding - PowerPoint PPT Presentation

About This Presentation
Title:

Network Layer Packet Forwarding

Description:

Title: Performance Author: John Chuang Last modified by: John Chuang Created Date: 7/15/1999 10:10:00 PM Document presentation format: On-screen Show – PowerPoint PPT presentation

Number of Views:77
Avg rating:3.0/5.0
Slides: 28
Provided by: JohnCh158
Category:

less

Transcript and Presenter's Notes

Title: Network Layer Packet Forwarding


1
Network LayerPacket Forwarding
  • IS250
  • Spring 2010
  • chuang_at_ischool.berkeley.edu

2
Packet Switching
Backbone
MAN
Ethernet
Local loop
Host A
Host B
128.32.226.87
12.2.14.60
3
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.,
    Dijkstras)
  • 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
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
IP Packet aka IP Datagram
  • Header
  • Contains destination address
  • Fixed-size fields
  • Payload
  • Variable size up to 64K
  • No minimum size

6
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
IPv4 Datagram
Bit 0
Bit 31
Total Length in bytes (16)
Version (4)
Hdr Len (4)
TOS (8)
Identification (16 bits)
Flags (3)
Fragment Offset (13)
  • Header

Time to Live (8)
Header Checksum (16)
Protocol (8)
Source IP Address
Destination IP Address
Options (if any)
Data (variable length)
Data
8
IP Packet Header
  • Version
  • Version number of IP protocol
  • Current version is Version 4
  • Version 6 has different header format

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

Bit 0
Bit 31
Total Length in bytes (16)
Version (4)
Hdr Len (4)
TOS (8)
Identification (16 bits)
Flags (3)
Fragment Offset (13)
Time to Live (8)
Header Checksum (16)
Protocol (8)
Source IP Address
Destination IP Address
Options (if any)
10
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)

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

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

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

Bit 0
Bit 31
Total Length in bytes (16)
Version (4)
Hdr Len (4)
TOS (8)
Identification (16 bits)
Flags (3)
Fragment Offset (13)
Time to Live (8)
Header Checksum (16)
Protocol (8)
Source IP Address
Destination IP Address
Options (if any)
15
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

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

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

Bit 0
Bit 31
Total Length in bytes (16)
Version (4)
Hdr Len (4)
TOS (8)
Identification (16 bits)
Flags (3)
Fragment Offset (13)
Time to Live (8)
Header Checksum (16)
Protocol (8)
Source IP Address
Destination IP Address
Options (if any)
18
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 1500
MTU 4352
19
Illustration of Datagram Fragmentation
  • Each fragment has IP datagram header
  • Header fields
  • Identify original datagram
  • Indicate where fragment fits

20
IP Packet Header
  • Identification
  • All fragments of a single datagram have the same
    identification number

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

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

Bit 0
Bit 31
Total Length in bytes (16)
Version (4)
Hdr Len (4)
TOS (8)
Identification (16 bits)
Flags (3)
Fragment Offset (13)
Time to Live (8)
Header Checksum (16)
Protocol (8)
Source IP Address
Destination IP Address
Options (if any)
23
IP Fragmentation Example
  • Host A wants to send to Host B an IP datagram of
    size 4000 Bytes

MTU 1500
MTU 4352
24
IP Fragmentation Example
One large datagram becomes several smaller
datagrams
Offsets in units of 8 bytes
25
Multiple Fragmenting Points
  • Let MTUs along path be
  • 1500
  • 1500
  • 1000
  • 1500
  • 576
  • 1500
  • Result fragmentation can occur twice

26
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
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
Write a Comment
User Comments (0)
About PowerShow.com