680 likes | 903 Views
Organizing the Internet. Chapter 9. Knowledge Checkpoints. Internet protocols Routing and protocols Internet addressing Organization of the Internet How ISPs work. Terms to Remember. TCP/IP suite Packet sequence numbers Port numbers UDP, ICMP,IGMP ARP, RARP RIP, OSPF, IGP, EGP, BGP
E N D
Organizing the Internet Chapter 9
Knowledge Checkpoints • Internet protocols • Routing and protocols • Internet addressing • Organization of the Internet • How ISPs work
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
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
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
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
TCP/IP • TCP performs the packetizing function • Breaking data into smaller packets • Numbering packets • Ensuring reliable delivery of packets • Ordering packets at the destination
TCP/IP • IP performs network routing and addressing functions • IPv4 - 32-bit address - 192-bit header • IPv6 - 128-bit address - 320-bit header
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
TCP Packet 1 2 3 4 5 6 7 8 9 10 11 User Data 1 Source port number 16 bits 2 Destination port number 16 bits 3 Sequence number 32 bits 4 ACK number 32 bits 5 Header length 4 bits 6 Unused 6 bits 7 Flags 6 bits 8 Flow control 16 bits 9 CRC 16 16 bits 10 Urgent pointer 16 bits 11 Options 16 bits
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.
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)
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
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
Protocols The four most commonly used protocols are: • TCP/IP • IPX/SPX • X.25 • SNA
IP Packet version 4 vs 6 IP4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 Version number 4 bits 2 Header length 4 bits 3 Type of Service 8 bits 4 Total length 16 bits 5 Identifiers 16 bits 6 Flags 3 bits 7 Packet offset 13 bits 8 Hop limit 8 bits 9 Protocol 8 bits 10 CRC 16 16 bits 11 Source address 32 bits 12 Destination Address 32 bits 13 Options varies 14 User data varies 15 Priority 4 bits 16 Flow name 8 bits 17 Next header IP6 1 15 16 4 17 8 11 (128 bits) 12 (128 bits) 14
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
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
1 2 3 4 5 6 7 8 9 10 IPX Packet User Data 1 Checksum 2 bytes 2 Length 2 byte 3 Control 1 byte 4 Type 1 byte 5 Destination address 6 bytes 6 Destination network address 4 bytes 7 Destination socket 2 bytes 8 Source address 6 bytes 9 Source network address 4 bytes 10 Source socket 2 bytes IPX packet
1 2 3 4 5 6 7 SPX Packet User Data SPX packet 1 Control 1 byte 2 Type 1 byte 3 Source ID 2 bytes 4 Destination ID 2 bytes 5 Sequence number 2 bytes 6 ACK number 2 bytes 7 Allocation number 2 bytes
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
SNA - 7 Layer Model Application Layer Presentation Layer Data Flow Layer Transmission Control Path Control Data Link Control Physical Layer
Transport and Network Protocols - Summary Routing and Addressing Packetizing TCP IP TCP/IP SPX IPX IPX/SPX X.25 X.3 PLP Transmission Control Layer SNA Path Control Layer
Transport Layer Functions • Linking to the application layer • Packetizing • Connection-oriented routing • Connectionless routing • Quality of service (qos)
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
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
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
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
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.
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.
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
Addressing Key Concept Each computer has several addresses, each used by a different layer. Example Address Example Software Address Application Layer Web Browser www.cob.niu.edu Network Layer IP 131.156.120.128 Data Link Layer 00-0C-00-F5-03-5A Ethernet
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
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
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
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
Addressing Dotted Decimal Notation IPv4 address is four bytes long Address Class 0 7 8 31 Host number Network number 1.0.0.0 to 126.0.0.0 A 0 16 million user addresses 15 16 31 0 1 128.1.0.0 to 191.254.0.0 B Network number Host number 1 0 65,000 user addresses 0 1 31 23 24 192.0.1.0 to 223.255.254.0 Network number Host number C 1 1 0 254 addresses Assigned by ICANN
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
Subnet Addressing Figure 5-6
Subnet Addressing Example 1 Suppose that the first two bytes are the subnet indicator with addresses of the form 131.156.x.x Then, 131.156.29.156 and 131.156.34.215 would be on the same subnet. The subnet mask would be 255.255.0.0, which corresponds to 11111111.11111111.00000000.00000000, where 1 indicates that the position is part of the subnet address and a 0 indicates that it is not.
Subnet Addressing Example 2 Partial bytes can also be used as subnets. For example, consider the subnet mask 255.255.255.128, which is 11111111.11111111.11111111.10000000. Here, all computers with the same first three bytes and last byte from 128 to 254 would be on the same subnet.
Providing Addresses • Providing addresses to networked computers • Static addressing • Dynamic addressing
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
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
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
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)
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)
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
Weber State University DNS Server sol.acs.unt.edu 137.90.2.122 DNS Response DNS Request Client computer LAN DNS Request DNS Response Root DNS Server for .EDU domain Internet DNS Request Northern Illinois University DNS Server netmgr.cso.niu.edu 131.156.1.11 LAN DNS Response Figure 5-7
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)