the internet technology and applications course 635 413 31 l.
Skip this Video
Loading SlideShow in 5 Seconds..
The Internet: Technology and Applications Course: 635.413.31 PowerPoint Presentation
Download Presentation
The Internet: Technology and Applications Course: 635.413.31

Loading in 2 Seconds...

play fullscreen
1 / 37

The Internet: Technology and Applications Course: 635.413.31 - PowerPoint PPT Presentation

  • Uploaded on

The Internet: Technology and Applications Course: 635.413.31 Summer 2007 Johns Hopkins University Instructor: John A. Romano Internetworking Review The Goals of the Internet Hide technological details from the user

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'The Internet: Technology and Applications Course: 635.413.31' - omer

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
the internet technology and applications course 635 413 31

The Internet: Technology and ApplicationsCourse: 635.413.31

Summer 2007

Johns Hopkins University

Instructor: John A. Romano

internetworking review
Internetworking Review
  • The Goals of the Internet
    • Hide technological details from the user
    • Refrain from mandating a specific network interconnection technology or topology
    • Utilize a universal address space
  • Internet Architecture & Routers
    • The key piece of equipment in the internet are routers
      • Special systems that attach to two or more networks and forward packets between them
      • Can separate networks of different technologies
    • The key protocol (the ‘glue’ to the Internet) is called IP, or the Internet Protocol
  • Review -- where does IP fit?
the internet protocol
The Internet Protocol
  • Why IP?
    • Creates a seamless virtual network
    • Provides global address space
    • Defines a connectionless, packet-oriented protocol
    • Provides “best effort” delivery; up to higher layer protocols to detect & recover from failures
    • Core definition in RFC 791 (with several extensions and amendment RFCs)
  • What we cover in this class
    • IP Addressing
    • ARP: how IP addresses translate to Hardware addresses
    • IP Packet (Datagram) Structure & Operation
    • IP Packet Forwarding
    • ICMP: Error & Status Reporting
classful ip addressing
Classful IP Addressing
  • IP Addresses
    • Hierarchical versus Flat Addressing
    • IP Address Hierarchy: Host part vs. network part
      • Allows for smaller routing tables
      • Allows for distributed control and distribution of addresses
      • Can cause inefficient allocation of addresses
    • Classful Addressing Scheme: 5 different ‘classes’
      • BIG Networks: Class A
        • Network mask is eight bits (high order address bit is zero)
        • 127 possible networks (actually 125)
      • Medium Networks: Class B
        • Network mask is 16 bits (high order address bits are ‘10’)
      • Small Networks: Class C
        • Network mask is 24 bits (high order address bits are ‘110’)
classful ip addressing6
Classful IP Addressing
  • Multicast Addresses: Class D
    • High order address bits are ‘1110’
    • The rest of the address has no inherent structure like the ‘primary’ addresses; each address defines a multicast ‘group’ (think channels stations “tune” into)
    • Some multicast IP addresses are reserved as ‘well-known’ addresses
  • Experimental Addresses: Class E
    • High order address bits are ‘11110’
    • Used for research; example -- the development of ‘Anycast’ services
  • The Classful Scheme has been largely replaced by a “Classless” Scheme that is much more flexible
    • The newer scheme requires the transmission of a ‘mask’ value to determine which part of the address is ‘network’ and which is ‘host’
    • Classful & Classless Examples
classful ip addressing7
Classful IP Addressing
  • IP Address Field Details
  • Allows a single network address to span multiple physical networks
    • Adds another hierarchical level to the IP address scheme
    • Instead of dividing the address into network & host parts, it is divided into network and local parts (Figure 9.3 in textbook)
    • A 32 bit subnet mask denotes what portion of the address is the host part
  • So important that support of subnetting is now a required part of the IP standard
  • Reasons for subnetting
    • Better control and security of network traffic
    • Allows for more efficient routing within an organization’s network (particularly a large network)
    • Allows for distributed control and distribution of addresses, but can contribute to inefficient address allocation if improperly used
  • Variable-length Subnet Masking (VLSM)
    • A enhancement to subnetting that allows the flexible allocation of different size subnets to physical networks
    • Allows for even more efficient allocation of addresses
    • Requires the use & exchange of subnet masks for proper network operation (e.g. – in routing protocols)
  • Calculation of netmask with subnetting (Regular & VLSM)
special ip addresses
Special IP Addresses
  • Multicast
    • Allows for more efficient use of network bandwidth
    • Important for one-to-many services
      • Video
      • Software distribution
      • Newsfeeds
    • Used in several routing protocols
    • Relationship between Multicast IP and Ethernet addresses
      • Ethernet HW address range 01:00:5e:00:00:00 to 01:00:5e:7f:ff:ff reserved for multicast
      • Low order 23 bits of IP Multicast address map to an ethernet HW multicast address
    • Well-known Multicast Addresses (RFC 1700)
      • – All OSPF routers
      • – HSRP (Hot Standby Router Protocol)
special ip addresses11
Special IP Addresses
  • Broadcast
    • Another one-to-many means of communication related to multicast
    • Important in many host’s initialization process
    • If managed carelessly can severely degrade network performance (or worse!)
    • Two classes of broadcast:
      • Local Broadcast
        • Local uses IP address of all ones (
        • Broadcasts to the network physically connected to the host interface
        • Local broadcast not forwarded by routers
      • Directed Broadcast
        • Allows a host to send a broadcast to a ‘remote’ network or subnet
        • Network/Subnet part of address is the real address while the host part is all ones (example
        • CAREFUL!!! This feature may not make you many friends
special ip addresses12
Special IP Addresses
  • Loopback
    • Whole Class A (127.x.y.z) allocated to this function
    • Allows the testing of a host’s protocol stack without affecting the network
    • Similar in function to addressing something to the local host’s ‘real’ IP address (though differences can be implementation dependent)
  • ‘Network’ & Special Host Addresses
    • An IP address specifying a network has all zeros in the host field
    • Typically see network addresses in routing tables
    • During startup a host may need to use a temporary IP address; typically is used for this purpose
special ip addresses13
Special IP Addresses
  • ‘Private’ IP Addresses (Non-routable)
    • The IETF has declared several blocks of addresses as private or nonroutable
    • Internet routers should be configured to block/filter these addresses
    • Commonly used with DSL, Cable Modems, and behind Firewalls in conjunction with NAT (Network Address Translation)
    • Reserved Blocks
  • Other Special IP Addresses (RFC 3330)
    • ‘Link Local’ addresses for use across a single link
    • Used for network benchmarking [per RFC 2544]
    • A ‘test network’ block of addresses
address resolution protocol arp
Address Resolution Protocol (ARP)
  • What is ARP needed for?
    • For delivery an IP address must be ‘mapped’ to a data link layer address
    • ARP defines a dynamic means for mapping to occur
    • There are other ways for providing this functionality: table lookup & computational methods
    • ARP for Ethernet defined in RFC 826
  • ARP packet format (for Ethernet)
    • Can accommodate multiple lower layer protocols (not just Ethernet)
    • ARP frame type is 0x0806; ARP Request type is 1 & Reply is type 2
address resolution protocol arp15
Address Resolution Protocol (ARP)
  • The ARP cache
    • Reduces network traffic by storing recently used address ARP data
    • Entries typically time out after 20 minutes
    • Newer ARP information replaces older information in the ARP cache
  • Automatic ARP Cache Revalidation
    • Minimizes the ‘jitter’ in network traffic flow after an ARP entry expires
  • The Address Resolution process
    • ARP requests are broadcast while a reply is typically unicast
    • ARP example
address resolution protocol arp16
Address Resolution Protocol (ARP)
  • Variations of ARP
    • Proxy ARP
      • Allows a router to answer ARP requests on one interface for a host on a different router interface
      • Proxy ARP examples
    • Gratuitous ARP
      • Denotes a host broadcasting an ARP request for its own IP address
      • Contains a new or updated IP to HW address binding; other hosts update their cache
      • Sometimes used to provide faster recovery from system outages
      • Not implemented on all operating system network protocol stacks
address resolution protocol arp17
Address Resolution Protocol (ARP)
  • ARP’s relative: RARP (the Reverse Address Resolution Protocol)
    • Allows a host (particularly diskless workstations) to obtain IP address automatically
    • RARP packet format
      • Same as ARP except the Ethernet frame type is 0x8035
      • RARP Request =3 and Reply = 4
  • There are better ways of providing this information and more (e.g. – BOOTP & DHCP) which we will learn about later!
ip packet format structure
IP Packet Format & Structure
  • The Internet Protocol (IP) Packet
ip packet structure mandatory fields
IP Packet Structure – Mandatory Fields
  • Protocol Field
    • Version 4 (current) and Version 6 (future)
  • IP packet header length field (4 bits)
    • Header size is not fixed; there can be options
    • Field counts the number of four byte ‘words’ in the header
    • Maximum header size: 60 bytes
  • Type of Service (TOS) field (8 bits)
    • Original definition: 3 bits for precedence and 3 bits for TOS
    • TOS bits: Minimize delay, maximize throughput, & maximize reliability
    • The original specification has been superseded by the “Diff-Serv” specs
      • New definitions in RFC 2474 redefine the use of the field
      • Backwards compatible with older definitions
      • A whole new set of ‘codepoints’ defined to help apply QoS to IP networks
      • Finding wider use because of VoIP and other real-time streaming services
ip packet structure mandatory fields20
IP Packet Structure – Mandatory Fields
  • IP packet length field (16 bits)
    • Some IP packets can be smaller than the minimum data link frame size
      • Example: minimum Ethernet frame size is 46 bytes
      • Tiny IP packets are padded out to the minimum frame size with zeros
    • Maximum packet size: 65535 bytes
  • IP packet identification field (16 bits)
    • Uniquely identifies each IP packet; very important for fragmentation
    • Hosts typically use an internal counter to set this field which is incremented each time an IP packet is sent
  • Fragmentation Flags and Offset fields
    • DF (Don’t Fragment) bit
    • MF (More Fragments) bit
    • Offset field (13 bits) - specifies the offset in 8 byte units of the fragment from the beginning of the original IP packet
ip packet structure mandatory fields21
IP Packet Structure – Mandatory Fields
  • Time-to-Live (TTL) field (8 bits)
    • Used to limit the lifetime of an IP packet
    • Decremented every time the IP packet transits a router
    • TTL set by the source host; value is OS and application dependent
  • Protocol field (8 bits)
    • Identifies the higher layer protocol payload encapsulated in the IP packet
    • Allows IP layer to determine what higher layer process should receive the data
  • Header Checksum field (16 bits)
    • Checks for errors in the IP header ONLY
    • One’s complement addition used to calculate checksum
    • Errored IP packets are silently discarded; recovery is up to higher layers
    • Source & destination IP address fields (32 bits each)
ip packet structure optional fields
IP Packet Structure – Optional Fields
  • Header Option Fields
    • Header options can take up an additional 40 bytes in the IP header
    • Provide a variety of services used in special circumstances
    • First byte specifies option type – some options are only one byte while others are variable length
  • Generic Structure of Header Options
ip packet structure optional fields23
IP Packet Structure – Optional Fields

Record Route Option

  • Used to detect and record the path being taken by a particular IP packet
  • Code field: Record Route option specified by a value of 7 in this 8 bit field
  • Length Field: contains total length of the option header (usually 39 bytes)
  • At maximum length option can store nine IP addresses in the list, after that the list is full and routers ignore the option
  • Pointer Field: shows the router where to store the next IP address; points to the first empty byte (i.e.– ptr=4 if no IP addresses have been recorded)
  • Routers typically record the outgoing interface of the IP packet
ip packet structure optional fields24
IP Packet Structure – Optional Fields
  • Timestamp Option (Code field = 44)
    • Allows a host to query another system for its current time
    • Same fields at the Record Route option plus two additional 4 bit fields
    • Overflow (OF) field- 4 bit counter incremented by routers after option header is full
    • Flags (FL) field specifies whether routers record a timestamp only or a timestamp and its IP address.
    • Time returned is number of milliseconds past midnight UTC
    • There are now better ways of time synchronization (NTP, OSF DCE, etc)
  • Security Options
    • Defined in RFC 1108; rarely used today
    • Allowed the labeling of IP packets with classification information
    • Provided no inherent protection; relied on routers to read labels and route packets through paths of the appropriate security level
ip packet structure optional fields25
IP Packet Structure – Optional Fields
  • Source Routing Options
    • Allows a source host to specify the path IP packets will take through the Internet
    • Option header fields (code, length, pointer) and maximum size are the same as the Record Route option
    • Code is 0x83 for loose source routing and 0x89 for strict source routing
    • Two varieties: Loose and Strict
      • Strict Source Routing: the EXACT path is specified in the IP packet
      • Loose Source Routing: the IP packet contains a list of IP addresses that it must traverse but it can traverse others not listed.
    • Source Route Examples
ip fragmentation and reassembly
IP Fragmentation and Reassembly
  • Concept -- Maximum Transmission Unit (MTU)
    • Based on underlying transmission protocol
    • Cannot be violated (includes the frame headers & trailers)
    • MTU example
    • Fragmentation
      • Allows IP to deal with physical networks that have different MTUs
      • IP header fields and flags important during IP Fragmentation
      • IP Fragmentation example
    • Reassembly
      • Done at destination host
      • Eases processing burden on routers
      • Allows IP fragments to traverse different routes in the network
      • Example illustrating different routing of IP packet fragments
      • Example for reassembly at destination host
ip fragmentation and reassembly27
IP Fragmentation and Reassembly
  • Concept -- Maximum Transmission Unit (MTU)
    • Loss of a fragment can & does occur (just like any other IP packet)
    • Two things that can go wrong
      • Fragment gets corrupted and are discarded
      • Upon receipt of the first fragment destination host sets a timer; if any fragment fails to make it into the reassembly buffers before the timer expires ALL fragments are discarded.
    • Multiple Fragmentations & Example
ip packet forwarding
IP Packet Forwarding
  • Encapsulation of an IP packet for transmission
    • Lower layer frame may change many times during transit
  • The role of routers (versus a multi-homed host)
  • The characteristics of IP packet forwarding
    • Table-driven
    • Next-hop
    • Done on a per-packet basis
  • The routing table
    • The mechanism a host uses to determine what to do with an IP packet it’s trying to send
    • The mechanism a router uses to determine how to forward an IP packet
    • In general routing tables contain routes to networks
    • How the tables are filled is covered in Class #4!
ip packet forwarding29
IP Packet Forwarding
  • IP Forwarding example
ip packet forwarding30
IP Packet Forwarding
  • Example routing table from a Cisco Router

a-tserver>sh ip route

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP

i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default U - per-user static route

Gateway of last resort is to network is variably subnetted, 126 subnets, 8 masks

O E2 [110/1] via, 16:03:32, Ethernet0

O E1 [110/34] via, 16:03:32, Ethernet0

O IA [110/27] via, 16:03:32, Ethernet0

O [110/75] via, 16:03:32, Ethernet0

O IA [110/17] via, 16:03:32, Ethernet0

O [110/21] via, 16:03:32, Ethernet0

O E2 [110/20] via, 16:03:32, Ethernet0

O [110/11] via, 16:03:42, Ethernet0

C is directly connected, Ethernet0

internet message control protocol icmp
Internet Message Control Protocol (ICMP)
  • What is ICMP used for?
    • Provides rudimentary error reporting capability
    • Provides a basic informational and troubleshooting mechanism
  • ICMP Mechanics
    • Required part of IP
    • Defined in RFC 792
    • Generic ICMP Message Format
      • Type and Code fields
      • Header Checksum
      • Additional header bytes
internet message control protocol icmp32
Internet Message Control Protocol (ICMP)
  • ICMP Error Messages
    • Sent in response to a problem delivering an IP packet
    • Includes the IP header plus eight bytes of payload from the packet causing the error (contains the TCP or UDP port numbers so the source application can be notified)
    • NOT sent under the following conditions:
      • in response to any other Network layer protocol besides IP
      • in response to an errored ICMP packet
      • in response to an IP multicast or broadcast source
internet message control protocol icmp33
Internet Message Control Protocol (ICMP)
  • ICMP Error Messages
    • Major Error Types
      • Destination Unreachable (Type 3)
        • Network Unreachable (Code 0)
        • Host Unreachable (Code 1)
        • Protocol Unreachable (Code 2)
        • Port Unreachable (Code 3)
        • Fragmentation required but the DF bit set (Code 4)
      • IP Redirect (Type 5)
        • Used by routers to ‘correct’ hosts
      • Time Exceeded (Type 11)
        • Either a TTL or a Destination Reassembly Issue
      • Parameter Problem (Type 12)
        • The ‘catch-all’ error message
internet message control protocol icmp34
Internet Message Control Protocol (ICMP)
  • ICMP Informational & Troubleshooting Messages
    • Echo Request (Type 8) and Echo Reply (Type 0)
      • Used to tell whether a host’s network interface card is functioning
      • Payload typically empty but certain implementations will allow you to specify the ICMP payload
  • Older Messages no longer in use

Timestamp Request (Type 13) and Timestamp Reply (Type 14)

      • Allows a host to query another for the current time
      • Returns the number of milliseconds past midnight UTC; stills requires the receiving host to calculate the current time
      • There are better ways of doing this: NTP, RPC time functions
    • Address Mask Request (Type 17) & (Type 18)
      • Allows a host to determine its address mask from it’s neighbors
      • Sometimes good (if the mask is right) and sometimes bad!
internet message control protocol icmp35
Internet Message Control Protocol (ICMP)
  • PING
    • A fundamental troubleshooting tool based on ICMP
    • PING Example:

> ping

PING ( 56 data bytes

64 bytes from icmp_seq=0 ttl=117 time=94.168 ms

64 bytes from icmp_seq=1 ttl=117 time=73.961 ms

64 bytes from icmp_seq=2 ttl=117 time=63.667 ms

64 bytes from icmp_seq=3 ttl=117 time=57.443 ms

64 bytes from icmp_seq=4 ttl=117 time=65.453 ms

64 bytes from icmp_seq=5 ttl=117 time=85.126 ms

64 bytes from icmp_seq=6 ttl=117 time=69.730 ms

64 bytes from icmp_seq=7 ttl=117 time=67.107 ms


--- ping statistics ---

10 packets transmitted, 10 packets received, 0% packet loss

round-trip min/avg/max/stddev = 57.004/70.505/94.168/11.062 ms

review of class 2
Review of Class #2
  • The Key Conclusions to Class #2
    • The Network Interconnection ‘model’ from Class #1 is used in the Internet
    • The Internet Protocol is the key to internetworking; it is a flexible and feature-rich base to the family of internet protocols
    • ARP provides a dynamic & standard means to map between MAC and network layer addresses
    • IP forwarding is a datagram-based, next-hop, table-driven process
    • ICMP provides error reporting, informational, & troubleshooting mechanism for IP
reading and homework
Reading and Homework
  • Reading
    • Comer: Chapters 4 through 9 (except sections 9.20 and 9.21)
  • First Homework Assignment is due in a week (see Class #1 slides for the problems)
  • Next Monday: Transport Layer (TCP & UDP) Protocols