Back Next

Establishing a "session" over the internet.

  Application prepares data for communication and hands it off to the
    TCP/IP functions.
  
  Using user specified destination site's DNS name, it requests a valid IP 
    from a name server. Function of  TCP/IP.

    Name resolution (Domain Name Service) is part of the Internet protocol
      implemented on a distributed hierarchical database system.

    * If DNS is down, it is possible to contact a system by specifying
      a valid IP number if known.

  Depending on need, a TCP, UDP, or other packet is built.
    If data larger than one packet,
     data parsed into sequenced packets

    Adds sequence id to packet.

    Port of service being contacted added to packet header.

    Port of sesssion requesting service added.
      Random port > 49151 gotten from network support software.
        Port id assigned when a particular session started.

        If 2 copies of ftp running, each would have its own port id.
        Web brower with 2 open tabs will also be using 2 ephemeral ports.

  Packet passed to IP layer where Source node's IP and target node's IP 
    are added with various support info.

  Packet passed to network interface card.

  DHCP (ARP) or local routing records accessed to determine whether network 
    level frames have local destination or should be sent to gateway 
    interface.

    * Systems support software will cache this so that it doesn't have
      to do look up for every packet.

  At this point, the network card 
    Possibly breaks the packet up into packets of an appropriate size for
      the LAN to move.

    Embeds packet in a network datalink frame that makes is transportable at 
      the LAN level.
  
    Puts initiator's mac@ in frame and the mac@ of the target node or the
      gateway router out of the local subnet.
  
    Converts the bits of the datalink frame to electronic/optical pulses 
      appropriate to LAN.
 
  If destination on same LAN, process reversed at receiving node.

  If destination elsewhere, the mac@ will target a special machine called 
    a gateway router. 

    The gateway router will further manipulate the packets into a form 
      appropriate to the next hop on the "Internet".
  
    It will then ecapulate the IP packet in the appropriate frame with the
      mac@ of the gateway node and the mac@ fo the target gateway router node.
      
    The target node may be a router complex with many alternative paths.  
      The same process reoccurs until the packet arrives at destination or hop
      or TTL count hits zero.

    Like the local system, the router keeps rcords of available connecting
      node's mac@ and which ones were used to move a particular IP packet 
      along the Internet. 

      If an ICMP packet comes back indicating problems, the router will note 
        that and attemp to use an alternative node.

      By doing this, the router node build a continually changing database
        of best guesses for the next hop of an IP packet.
    
      While very good, not perfect and that is why we have the TTL/Hop count
       field.