1 Organizing the Internet Chapter 9
2 Knowledge Checkpoints Internet protocols Routing and protocols Internet addressing Organization of the Internet How ISPs work
3 Terms to Remember TCP/IP suite Packet sequence numbers Port numbers UDP, ICMP,IGMP ARP, RARP RIP, OSPF, IGP, EGP, BGP ARIN, RIPE,APNIC,ICANN CIDR NSP ASP
4 TCP/IP Transmission Control Protocol / Internet Protocol Oldest networking standard (DoD, 1974) Most popular network protocol (70%) Small packet size TCP/IP allows reasonable efficient and error- free transmission Combination of two protocols TCP - Transmission Control Protocol IP - Internet Protocol
5 Internet Protocols TCP/IP (suite) Provides layer 4 functionality TCP divides data into packets with a sequence number Assigned to a port (range 1-65,535) Ports identify applications on servers Ports identified by incoming and outgoing IP handles packet forwarding and transport of datagrams across a network Defines the basic unit of data Functions at Layer 3 Provides host addressing, error notification, fragmentation, reassembly, routing, and packet time-out
6 Internet Protocols UDP Layer 4 Operates over IP End-to-end connectionless, unreliable datagram service Used for query based applications, multicasting and VoIP ICMP Provides error-handling Messages related to network management IGMP Layer 3 Allows Internet hosts to participate in multi-casting
7 TCP/IP TCP performs the packetizing function Breaking data into smaller packets Numbering packets Ensuring reliable delivery of packets Ordering packets at the destination
8 TCP/IP IP performs network routing and addressing functions IPv bit address bit header IPv bit address bit header
9 Requirements for TCP/IP This information should either come from an internal configuration file or a bootp or DHCP server IP address Subnet mask IP address of DNS server IP address of router, gateway or switch
User Data 1Source port number 16 bits 2Destination port number 16 bits 3Sequence number 32 bits 4ACK number 32 bits 5Header length 4 bits 6Unused 6 bits 7Flags 6 bits 8Flow control 16 bits 9CRC bits 10Urgent pointer 16 bits 11Options 16 bits TCP Packet
11 Network and Transport Layers The transport & network layers sit between the application layer and the data link layer They accept messages from the application layer, format, and address them for transmission by the data link layer Both the sender and receiver have to agree on the rules or protocols that govern how their network layers will communicate with each other.
12 Transport Protocol A transport protocol is responsible for: End-to-end delivery of the message Breaking large messages into packets for transmission and reassembling them at the receiver’s end (packetizing) Determining the correct network layer and data link layer addresses (addressing)
13 Network Protocol A network protocol is responsible for: Determining where the message should be send next on its way to its final destination (routing) Selecting the best path from computer to computer through the network Can share the addressing function with the transport layer
14 Protocols There are many transport and network protocols They all perform the same or similar functions They are incompatible with each other Vendors now provide software with multiprotocol stacks
15 Protocols The four most commonly used protocols are: TCP/IP IPX/SPX X.25 SNA
16 IP Packet version 4 vs Version number4 bits 2Header length4 bits 3Type of Service8 bits 4Total length16 bits 5Identifiers16 bits 6Flags3 bits 7Packet offset13 bits 8Hop limit8 bits IP4 9Protocol8 bits 10 CRC bits 11Source address32 bits 12Destination Address32 bits 13 Optionsvaries 14User datavaries 15Priority4 bits 16Flow name8 bits 17Next header IP (128 bits)812 (128 bits)
17 IPX/SPX Internetwork Packet Exchange / Sequenced Packet Exchange Based on a routing protocol developed by XeroX (mid 70’s) Primary network protocol used by Novell up until they released version 5 of Netware
18 IPX/SPX A combination of two protocols SPX - Sequenced Packet Exchange Breaking the data into smaller packets Numbering them Ensuring each packet is reliably delivered Putting them in proper order at the destination IPX - internetwork packet exchange Routing Addressing Similar to TCP/IP
19 IPX Packet User Data 1 Checksum2 bytes 2 Length2 byte 3 Control1 byte 4 Type1 byte 5 Destination address6 bytes 6 Destination network address4 bytes 7 Destination socket2 bytes 8 Source address6 bytes 9 Source network address4 bytes 10 Source socket2 bytes IPX packet
20 SPX Packet User Data 1 Control1 byte 2 Type1 byte 3 Source ID2 bytes 4 Destination ID2 bytes 5 Sequence number2 bytes 6 ACK number2 bytes 7 Allocation number2 bytes SPX packet
21 SNA Systems network architecture Developed by IBM in 1974, IBM proprietary non- industry standard protocol Transmission control layer performs packetizing Path control layer performs routing and addressing Requires special equipment to translate between lans and mainframes Advanced peer-to-peer networking (APPN) was developed by IBM to support TCP/IP Uses SDLC as its data link layer protocol
22 SNA - 7 Layer Model Presentation Layer Data Flow Layer Transmission Control Path Control Data Link Control Physical Layer Application Layer
23 Transport and Network Protocols - Summary TCP/IP IPX/SPX X.25 SNA Packetizing Routing and Addressing TCPIP IPX X.3 Transmission Control Layer SPX PLP Path Control Layer
24 Transport Layer Functions Linking to the application layer Packetizing Connection-oriented routing Connectionless routing Quality of service (qos)
25 Linking to the Application Layer Each type of application has a unique port address Application software sends both source and destination port addresses to the transport layer Standard port addresses Port 80 - web server Port 21 - FTP Port 23 - telnet Port 25 - SMTP
26 Packetizing Breaking large data messages into smaller packets for transmission through the network Size is dependent of data link layer protocol Default size without protocol is 536 bits Size can be negotiated between sender and receiver Numbering packets (sequencing) when needed Ensuring reliable delivery of every packet Delivered one at a time or held until all have arrived at the destination Reassembling and ordering packets at the destination
27 Connection-Oriented Routing Sets up a virtual circuit between sender and receiver Transport layer sends a special packet called a SYN Virtual circuit appears to the application software to use point-to-point circuit-switching Actually uses store-and-forward switching Network layer decides which route the packets will be travelling and sends them sequentially High overhead - open/close of circuit
28 Connectionless Routing Each packet of a large transmission is treated separately and makes its own way through the network Packets may travel different routes and at different speeds through the network Sequence number must be added to each packet by the Network layer Network layer at receivers side must reassemble packet in sequence
29 Connectionless vs. Connection-Oriented Routing TCP/IP can operate as connection-oriented or connectionless. When connection-oriented routing is needed, both TCP and IP are used. TCP establishes the virtual circuit and IP routes the messages. When connectionless routing is desired, only IP is needed, and the TCP packet is replaced with a User Datagram Protocol (UDP) packet.
30 Connectionless vs. Connection-Oriented Routing IPX/SPX can also operate as either as connection-oriented or connectionless. When connection-oriented routing is needed, both IPX and SPX are used. SPX establishes the virtual circuit and IPX routes the messages. When connectionless routing is desired, only IPX is needed.
31 Quality of Service (QoS) Routing Special kind of connection-oriented dynamic routing Packets are assigned different priorities Depending on the type of packet sent Different classes of service are defined to determine the priority Transport layer specifies the class of service when requesting virtual circuit Each path designed to support different service classes Qos protocols Rsvp Rtsp Rtp
32 Addressing Application Layer Network Layer Data Link Layer Example Software Example Address Web Browser IP Ethernet C-00-F5-03-5A Address Key Concept Each computer has several addresses, each used by a different layer.
33 Assigning Address At the application layer Server names are specified in a software configuration file Most servers have an application address, clients are beginning to depending on the operating system A network standards group must approve all server names to insure that the addresses are unique
34 Assigning Address At the Network Layer Network layer software has a configuration file that specifies the network layer address for the computer Every network has a standards group that defines what addresses can be used by each organization
35 Assigning Address At the data link layer Address is permanently coded in each network card Every network card in the world has a unique address that differs from every other computer in the world Addresses are coded by the vendor
36 ICANN Internet corporation for assigned names and numbers (ICANN) Manages the assignment of application layer and network layer addresses Sets the rules by which new domain names are created and IP address numbers are assigned Manages a set of internet domains Authorizes private companies to become domain name registrars Approves request for application layer addresses and assigns IP numbers for those request Organizations can use any registered company for the specific domain for a fee
37 Addressing IPv4 address is four bytes long Address Class Dotted Decimal Notation A B C to to to million user addresses 65,000 user addresses 254 addresses Network number Network number Network number Host number Host number Host number Assigned by ICANN
38 Subnets Each organization assigns IP addresses to specific computers on its networks IP addresses are assigned so that all computers on the same LAN have similar addresses Each of these lans is known as a TCP/IP subnet Any portion of the IP address can be designated as a subnet using a subnet mask* * Subnet masks tell computers what part of an IP address is to be used to determine whether a destination is on the same or a different subnet
39 Subnet Addressing Figure 5-6
40 Subnet Addressing Example 1 Suppose that the first two bytes are the subnet indicator with addresses of the form x.x Then, and would be on the same subnet. The subnet mask would be , which corresponds to , where 1 indicates that the position is part of the subnet address and a 0 indicates that it is not.
41 Subnet Addressing Example 2 Partial bytes can also be used as subnets. For example, consider the subnet mask , which is Here, all computers with the same first three bytes and last byte from 128 to 254 would be on the same subnet.
42 Providing Addresses Providing addresses to networked computers Static addressing Dynamic addressing
43 Static Addressing Each computer is given an address through a configuration file Stored on individual computers Problems Moves, changes, adds and deletes Individuals could change their own IP address Network renumbered Companies do not have a good way of tracking the addresses
44 Dynamic Addressing Server supplies a network layer address automatically Each time user logs in For a specific lease period Two standards for dynamic addressing Bootstrap protocol (bootp) - developed in 1985 Dynamic host control* protocol (DHCP), developed in 1993 * some say C = configuration
45 Dynamic Addressing Bootp and DHCP Software installed on the client instructs the client to contact the server using data link layer addresses Message asks server to assign the client a unique network layer address Server runs corresponding software that sends the client its network address and subnet mask
46 Leasing Bootp or DHCP server can either: Assign the same network layer address to the client each time the client requests it (bootp) Lease the network address from the next available on a list of authorized addresses for as long as the client is connected or for a specified amount of time -- common with isps and dial-up users (DHCP)
47 Address Resolution The process of: Translating an application layer address to a network address (server name resolution) Translating the server name address to a data link layer address (data link layer address resolution)
48 Address Resolution Server name resolution Accomplished by the use of domain name service (DNS) Computers called name servers provide these DNS services Address data base includes: server names and their corresponding IP address
49 Client computer DNS Server netmgr.cso.niu.edu DNS Request LAN Internet DNS Request Root DNS Server for.EDU domain Weber State University Northern Illinois University DNS Request DNS Response DNS Server sol.acs.unt.edu Figure 5-7
50 Address Resolution Data link layer address resolution Broadcast message is sent to all computers in its subnet “if your IP address is xxx.Yyy.Zzz.Ttt, please send your data link layer address” Uses address resolution protocol (ARP)
51 Network Routing The process of determining the route a message will take through the network Centralized Decentralized Static routing Dynamic routing Broadcast or multicast routing Connectionless Connection-oriented routing
52 Route and Route Table Computer B Destination RouteAC DAE FE GC A B C G E D F
53 Internet Routes UEN WSUCanada Other destinations West Coast Europe Asia WSU Destination Route UEN Utah Oxford Europe U of Toronto Canada U of Singapore Asia UC Stanford West Coast Other
54 Types of Routing Centralized routing Static routing (decentralized) Dynamic routing (adaptive and decentralized) Distance vector Link state Other types Broadcast routing Multicast routing
55 Centralized Routing All routing decisions are made by one computer Main routing for star and mesh topologies Routing tables located on each computer Central computer sends updated tables as needed Routing table tells the device where to send messages Simplicity - no wasted resources Hardware failures or changing conditions cause table to be out of sync
56 Decentralized Routing Each of the following types of routing fall under the heading of decentralized routing Each device makes its own routing decisions with the use of a formal routing protocol Routing protocols are self-adjusting Can automatically adapt to changes in the network configuration Drawbacks Slows down the network with status messages Requires more processing by each computer
57 Static Routing Routing table developed by the network manager or some type of committee Initial table sent to each computer which then updates the routing table as needed Reroutes as needed with down or removed circuits Updated when new devices announce their presence Used in relatively static networks that have few routing options
58 Dynamic Routing (Adaptive) Routing messages over the fastest route Used when there are multiple routes in the network Improves network performance by selecting the fastest route to avoid bottlenecks or busy circuits Initial table developed by network manager Dynamically updated with changing conditions by the devices themselves Monitors message transmission time or each device reports how busy it is to avoid bottlenecks Disadvantages Requires more processing by each computer “Wastes” network capacity
59 Dynamic Routing (Adaptive) Distance vector dynamic routing The number of hops along a route Exchange information with the neighboring computers every few minutes Link state dynamic routing The number of hops along a route The speed of the circuits on the route How busy the route is Exchanges information with other routing devices every minutes Tries to determine the fastest route Converges reliable routing information more quickly
60 Routing Protocols RIP, IGP, OSPF, EGP, BGP Distance vector routing protocols (RIP, Appletalk,IPX, IGRP) Routers inform neighboring routers of table Closest router is used to route packets Link State routing protocols (OSPF) Routers have at least a partial map of the network Changes are flooded throughout network Routes are recomputed
61 Interior and Exterior Routing Interior routing is within an autonomous system (collection of routers under a single administrative control)—RIP, OSPF Exterior routing occurs between autonomous systems Network access protocols operate at Layer 2. Transport of IP datagrams IP over point-to-point connections is used by ISP when you dial in
62 Routing Protocols Border Gateway Protocol Internet Control Message Protocol Routing Information Protocol Open Shortest Path First Enhanced Interior Gateway Routing Protocol
63 Routing Protocols Internet protocols BGP (border gateway protocol) Exchanges information between autonomous systems about the condition of the internet Complex, hard to administer, exterior routing protocol ICMP (internet control message protocol) Simple, interior routing protocol used with the internet Reports routing errors but is limited in the ability to update RIP (routing information protocol) Dynamic distance vector interior routing protocol Counts the number of devices on each route Selects the route with the least number of devices
64 Routing Protocols OSPF (open shortest path first) Link state interior routing protocol used on the internet Counts number of computers, network traffic, network error rates to select the best route Doesn’t broadcast to all devices just to routing devices Preferred TCP/IP, but also used by IPX/SPX EIGRP (enhanced interior gateway routing protocol) Link state interior routing protocol developed by CISCO Uses route transmission capacity, delay, reliability and load to select best route Stores multiple routing tables SAP (service advertisement protocol) Netware servers send SAP advertisements Novell’s broadcast protocol
65 Broadcast Routing Sends the message to all computers on the network Only computer with correct address processes the message Used only in bus networks Wastes network bandwidth
66 Multicasting Similar to broadcasting Only works within one LAN or subnet Messages sent from one computer to another on the network is called a unicast message Messages sent to a group of computers is called a multicast message Targeting a specific work group IGMP (internet group management protocol) Sends an IGMP multicast request to the routing computer Assigned a special class D IP address to identify the group The routing computer sets the data link layer address All participating machines will process messages sent to this address Sends a IGMP message notifying of end of session
67 Figures and Tables P. 245 figures 9.2 & 9.3 P. 261 figure 9.7