Internet Protocol Connectionless Datagram Delivery - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

Internet Protocol Connectionless Datagram Delivery

Description:

Frame trailer. Frame header. MTU. Notes-5. CMPT 471 2003-3. 10 ... Objective: to guarantees that datagrams cannot travel around internet forever. Notes-5 ... – PowerPoint PPT presentation

Number of Views:447
Avg rating:3.0/5.0
Slides: 31
Provided by: lxwu
Category:

less

Transcript and Presenter's Notes

Title: Internet Protocol Connectionless Datagram Delivery


1
Internet Protocol--- Connectionless Datagram
Delivery
  • Linda Wu
  • (CMPT 471 2003-3)

2
Content
  • TCP/IP internet services
  • Internet datagram format
  • Fragmentation Reassembly
  • Datagram fields
  • Reference chapter 7

3
TCP/IP Internet Services
  • Networking services are arranged in a hierarchy
  • Internet software is designed around three
    conceptual networking services
  • Replacing one service will not disturb others

4
TCP/IP Internet Services (cont.)
  • Connectionless delivery system
  • Data are split into several packets
  • Unreliable delivery is not guaranteed packet
    may be lost, duplicated, delayed
  • Connectionless each packet is treated
    independently from all others
  • Best-effort internet software makes an earnest
    attempt to deliver packets unreliability arises
    only when resources are exhausted or networks fail

5
TCP/IP Internet Services (cont.)
  • Internet protocol (IP)
  • IP protocol defines the unreliable,
    connectionless delivery mechanism, and provides 3
    important definitions
  • Format of data passed across the internet
  • internet transfer unit is called internet
    datagram
  • Routing function
  • Rules of unreliable packet delivery packet
    processing, error handling, etc.

6
Internet Datagram Format
  • Internet datagram (IP datagram, datagram)
  • Datagram vs. frame

7
Internet Datagram Format (cont.)
  • Datagram format

8
Fragmentation Reassembly
  • IPv4 datagram length
  • ? 216 1 65,535
  • Includes the length of header and data
  • Network MTU
  • Maximum transfer unit (MTU) each hardware
    technology places a fixed upper bound on the
    amount of data transferred in one frame
  • Ethernet MTU 1500 (bytes/frame)
  • FDDI MTU 4470

9
Fragmentation Reassembly (cont.)
  • Datagram encapsulation
  • Carrying one datagram in one frame
  • Hardware does not recognize datagram format
  • Efficient transportation

? MTU
10
Fragmentation Reassembly (cont.)
  • MTU vs. datagram length
  • Limiting datagram to fit the smallest possible
    MTU makes transfer inefficient
  • Allowing datagrams to be larger than the minimum
    MTU means a datagram cannot always fit into a
    single frame
  • Solution in IP protocol datagram fragmentation

11
Fragmentation Reassembly (cont.)
  • Datagram fragmentation
  • The source chooses a convenient datagram size
  • Intermediate routers divide large datagram into
    small fragments when needed
  • Fragments may not be of equal size their sizes
    must be multiple of 8
  • Each fragment can be shipped in a single frame
  • Router must accept datagram up to the maximal
    MTUs of the networks they attach to
  • Fragments travel to the destination as separate
    datagrams

12
Fragmentation Reassembly (cont.)
Original datagram A ? B (1400 bytes of data)
Fragmentation at R1
Fragment header duplicates most of the fields in
the datagram header
Fragment 1 (offset 0/8)
Fragment 2 (offset 600/8)
Fragment 3 (offset 1200/8)
13
Fragmentation Reassembly (cont.)
  • Reassembly at ultimate destination
  • Reassembly timer
  • Started when an initial fragment is received
  • If the timer expires before all fragments arrive,
    all the received fragments will be discarded
  • Advantages
  • Fragments are routed independently
  • Intermediate routers are not required to store or
    reassemble fragments
  • Disadvantages
  • Small fragments may traverse on networks with
    large MTU capability
  • If any fragment is lost, datagram cannot be
    reassembled

14
Datagram Fields
  • VERS
  • 4 bits
  • Specifies the version of IP protocol used to
    create the datagram
  • To verify that sender, receiver and any router in
    between them agree on the datagram format
  • Machines reject datagram with protocol version
    that differs from theirs
  • Current version 4 (IPv4)

15
Datagram Fields (cont.)
  • HLEN
  • 4 bits
  • Specifies datagram header length (unit 32-bit
    word / 4 bytes)
  • TOTAL LENGTH
  • 16 bits
  • Specifies of bytes in header and data (unit
    byte)
  • TOTAL LENGTH ? 216 1 65,535
  • Size of data TOTAL LENGTH - HLEN

16
Datagram Fields (cont.)
  • SERVICE TYPE
  • 8 bits
  • Original TOS interpretation

Precedence importance of datagram D low
delay T high throughput R high reliability
17
Datagram Fields (cont.)
  • Revised differentiated services interpretation
  • A codepoint value maps to an underlying service
    definition
  • 3 right-most bits of codepoint
  • All 0s xxx000 (backward compatible with
    original interpretation)
  • Not all 0s 3 administrative groups

18
Datagram Fields (cont.)
  • Fragmentation control fields
  • IDENTIFICATION
  • Datagram sender generates a unique IDENTIFICATION
    for each datagram
  • It is copied to fragment header for reassembly at
    a later time
  • Source address IDENTIFICATION to identify
    datagram
  • FRAGMENT OFFSET
  • The offset in the original datagram of the data
    carried in the fragment (unit 8 bytes)

19
Datagram Fields (cont.)
  • FLAGS 3 bits
  • D do not fragment
  • When a router needs to fragment a datagram with D
    bit set, it will discard the datagram and send an
    error message to the source
  • M more fragments
  • To indicate whether a fragment is the tail of the
    datagram
  • Destination gets the TOTAL LENGTH of the fragment
    instead of the original datagram
  • Upon receiving a fragment F with M bit off,
    calculate total length of the datagram based on
    Fs total length and Fs fragment offset

20
Datagram Fields (cont.)
  • TIME TO LIVE (TTL)
  • Defines hop limit of a datagram
  • Each router along the path from source to
    destination decrements TTL by 1
  • If datagrams TTL filed is 0, router discards
    datagram and sends back an error message to the
    source
  • Objective to guarantees that datagrams cannot
    travel around internet forever

21
Datagram Fields (cont.)
  • PROTOCOL
  • 8 bits
  • Defines the higher-level protocol to which
    datagram should be delivered

22
Datagram Fields (cont.)
  • HEADER CHECKSUM
  • To ensure integrity of header
  • Calculated at the sender and the value obtained
    is sent with datagram
  • The receiver repeats the same calculation
  • If the result is satisfactory, accept the
    datagram
  • Otherwise, reject it
  • Only applies to values in header, not to data

23
Datagram Fields (cont.)
  • SOURCE / DESTINATION IP ADDRESS
  • Specifies sender / intended recipient of datagram
  • Never changes when datagram is routed through
    intermediate routers
  • DATA
  • Specifies the data sent in datagram
  • Variable length
  • PADDING
  • Composed of all 0s
  • Its length depends on IP OPTIONS selected
  • To ensure the datagram header extends to an exact
    multiple of 32 bits

24
Datagram Fields (cont.)
  • IP OPTIONS
  • Optional fields with variable length
  • Appear contiguously without separators between
    them
  • Format
  • COPY
  • 0 Copy only in the first fragment
  • 1 Copy in all fragments
  • CLASS
  • 00 Datagram control
  • 01 Reserved
  • Debugging and management
  • 11 Reserved
  • NUMBER
  • See examples on P109

LENGTH total length of the option, including
code field and length field DATA data that
specific options require
25
Datagram Fields (cont.)
  • Record route option
  • To record the routers that handle the datagram
  • POINTER the offset within option of the next
    available slot
  • When a machine handles a datagram with record
    route option
  • If POINTER gt LENGTH, forward datagram without
    inserting its entry
  • Otherwise, insert its entry, increase POINTER by 4

26
Datagram Fields (cont.)
  • Source route option
  • Used by the source to predetermine a route for
    the datagram
  • At the router side
  • If POINTER gt LENGTH, do routing as usual
  • Otherwise, follow POINTER to pickup IP address,
    replace it with its outgoing IP address, increase
    POINTER by 4, and forward the datagram

27
Datagram Fields (cont.)
  • Strict source route (CODE 137)
  • All the routers in the option must be visited
  • A router not listed in the option must not be
    visited
  • If datagram visits a router not in the list, or,
    if it arrives at destination with some listed
    routers not visited, the datagram is discarded
    and an error message is issued
  • Loose source route (CODE 131)
  • Each router in the list must be visited
  • The datagram can visit other routers as well

28
Datagram Fields (cont.)
  • Timestamp option
  • To record the time at which router processes
    datagram
  • To keep track of router behavior in the internet
  • OFLOW of routers that cannot supply a
    timestamp because the option is full
  • FLAGS specifies the visited router
    responsibilities
  • Timestamp time and date at which router
    processes datagram expressed as milliseconds
    since midnight, Universal Time

29
Datagram Fields (cont.)
  • Subfield FLAGS

30
Datagram Fields (cont.)
  • Processing IP OPTIONs during fragmentation
  • The function of COPY bit in fragmentation
  • Some IP OPTIONs are replicated in all fragments
  • Some IP OPTIONs are placed in one fragment
  • Record route option should only be copied into
    one of the fragments
  • Source route option should be copied into all
    fragments
Write a Comment
User Comments (0)
About PowerShow.com