July 12 overheads



(This is only a joke! You might be wearing suspenders before the term is over!)
ICMP time exceeded message format. A router sends this message whenever a datagram is discarded because the time-to-live field in the datagram header has reached zero or because its reassembly timer expired while waiting for fragments


Internet Control Message Protocol (ICMP)

A part of IP that handles error and control messages

  • ICMP reports error condition back to original datagram source
  • ICMP messages are data for an IP datagram
  • Parameter problem ICMP type 12 message includes a pointer to the octet (in the datagram header) containing the parameter that caused the datagram to be discarded (incorrect parameter value).


    Code ValueMeaning
    0Network unreachable
    1Host unreachable
    2Protocol unreachable
    3Port unreachable
    4Fragmentation needed and DF set
    5Source route failed
    6Destination network unknown
    7Destination host unknown
    8Source host isolated
    9Communication with destination
    network administratively prohibited
    10Communication with destination host
    administratively prohibited
    11Network unreachable for type of service
    12Host unreachable for type of service







    July 13 overheads


    Subnet addressing and routing

    Supernet addressing

    Too many class B networks (eyeing expansion) eat up address space (roads)

    A block of class C networks (but fewer than 256) is assigned to an organization.

    Classless inter-domain routing (CIDR)
    OSes supernetting by incorporating the count of contiguous lower class addresses in the network address. (RFC 1519)


    Algorithm:

    RouteDatagram(Datagram, RoutingTable)

      Extract destination IP address, D, from the datagram and compute the network prefix, N;
      if N matches any directly connected network address deliver datagram to destination D over that network (This involves resolving D to a physical address, encapsulating the datagram, and sending the frame.)
      else if the table contains a host-specific route for D send datagram to next-hop specified in table
      else if the table contains a route for network N send datagram to next-hop specified in table
      else if the table contains a default route send datagram to the default router specified in table
      else declare a routing error
    The algorithm IP uses to forward a datagram. Given an IP datagram and a routing table, this algorithm selects the next hop to which the datagram should be sent. All routes must specify a next hop that lies on a directly connected network.

    Algorithm:

    Route_IP_Datagram(datagram, routing_table)

      Extract destination IP address, ID, from datagram;
      Compute IP address of destination network, IN;
      if IN matches any directly connected network address send datagram to destination over that network (This involves resolving ID to a physical address, encapsulating the datagram, and sending the frame.)
      else
        for each entry in routing table do
          Let N be the bitwise-and of ID and the subnet mask
          If N equals the network address field of the entry then route the datagram to the specified next hop address
        endforloop
      If no matches were found, declare a routing error;
    The unified IP routing algorithm. Given an IP datagram and a routing table with masks, this algorithm selects a next hop router to which the datagram should be sent. The next hop must lie on a directly connected network.

    The lower protocol layers of the TCP/IP architecture.




    ser@cs.uoregon.edu