Objectives of Chapter 6
Become familiar with…
Understand how TCP/IP works.
INTRODUCTION
Introduction
The network layer sits between the application layer and the data link layer. It accepts messages from the application layer and formats and addresses 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.
Introduction
A network protocol provides three functions:
Introduction
Some network layers are compatible with a variety of different data link layer protocols and can be used interchangeably in the same network.
NETWORK PROTOCOLS
Network Protocols
There are many different network layer protocols.Each protocol performs essentially the same functions, but each is incompatible with others unless there is a special device to translate between them.
The four most commonly used network protocols are:
TCP/IP IPX/SPX
X.25 SNA
Transmission Control Protocol/ Internet Protocol (TCP/IP)
The Transmission Control Protocol/ Internet Protocol (TCP/IP) was developed for the U.S. Dept of Defense’s Advanced Research Project Agency Network (ARPANET) in 1974.
TCP/IP allows reasonable efficient and error-free transmission.
Transmission Control Protocol/ Internet Protocol (TCP/IP)
TCP/IP has two parts:
A typical TCP packet has 192-bit header of control information.
Transmission Control Protocol/ Internet Protocol (TCP/IP)
Two forms of IP are currently in use:
The primary reason for the increase in packet size is an increase in the address size from 32 bits to 128 bits, due to the dramatic growth in the usage of the Internet.
The size of the message field depends on the data link layer protocol used. TCP/IP is commonly combined with Ethernet.
TCP Packet
IP Packet version
IPX/SPX
Internet Packet Exchange /Sequenced Packet Exchange (IPX/SPX) is based on a routing protocol developed by Xerox in the 1970s, and is the primary network protocol used by Novell Netware, although Novell plans to replace IPX/SPX with TCP/IP.
IPX/SPX
IPX/SPX has two parts:
IPX/SPX is similar to TCP/IP in concept, but different in structure.
IPX/SPX
A typical SPX packet has a 12-byte header of control information. IPX has a 30-byte header.
The size of the message field depends on the data link layer protocol used. IPX/SPX is often used with Ethernet.
IPX/SPX
X.25
X.25 is a standard developed by ITU-ISS for use in wide area networks.
X.25 also has two parts:
X.25
There are several types of PLP packets. A typical packet used to transmit data has a 3-byte header.
PLP typically combined with LAP-B at the data link layer.
System Network Architecture (SNA)
System Network Architecture (SNA) is an approach to networking developed by IBM in 1974. SNA is used only on IBM and compatible mainframes.
As with the other network layer protocols, SNA has two parts. The transmission control layer performs functions similar to TCP, and the path control layer performs functions similar to IP. SNA typically uses SDLC as its data link layer protocol.
ADDRESSING
Addressing
Before you can send a message, you must know the destination address.
When the users work with application software, they typically use the application layer address.
The network layer translates this application layer address into a network layer address.
Types of addresses
Addressing
The network layer then determines the best route through the network to the final destination.
Based on this routing, the network layer identifies the data link layer address of the next computer to which the message should be sent.
Assigning Addresses
In general, the data link layer address is permanently encoded in each network card, and as part of the hardware cannot be changed.
Network layer addresses are generally assigned by software. Every network layer software package usually has a configuration file that specifies the network layer address for that computer.
Assigning Addresses
Application layer addresses (or server addresses) are also assigned by a software configuration file. Virtually all servers have an application layer address, but most client computers do not.
Network layer addresses and application layer addresses go hand in hand. (www.uga.edu -application means 192.128.98.53 at the network layer.
Internet Addresses
On the Internet, InterNIC is responsible for network layer addresses (IP addresses) and application layer addresses or domain names (www.uga.edu).
There are five classes of Internet addresses.
Classes A, B, and C are presented in Figure 6-7
Class D and E are reserved for special purposes and are not assigned to organizations.
Internet Address Classes
Number of Addresses
Class Available to User Address Structure Example
Class A 16 million First byte fixed 50.x.x.x
Organization assigns last three bytes
Class B 16,000 First two bytes fixed 128.192.x.x
Organization assigns last two bytes
Class C 250 First three bytes fixed 192.1.56.x
Organization assigns last byte
Internet Addresses
One of the problems with the current address class system is that the Internet is quickly running out of addresses. Although there are more than 1 billion possible addresses, the fact that they are assigned in sets (or groups) significantly restricts the number of usable addresses.
The IP address shortage was one of the reasons behind the IPv6, providing in theory, 3.2 x 1038 possible addresses.
Subnets
Each organization must assign the IP addresses it has received to specific computers on its networks. In general, IP addresses are assigned so that all computers on the same local area network have a similar address.
Subnets
Each LAN that is logically grouped together by IP number is called a TCP/IP subnet.
While it is customary to use the last byte of the IP address to indicate different subnets it is not required. Any portion of the IP address can be designated as a subnet by using a subnet mask. IP addresses are binary numbers, so partial bytes can be used as subnets.
Dynamic Addressing
Every computer knows its network layer address from a configuration file that is installed when the computer is first attached to the network. However, each time the computer is moved, or its network is assigned a new address, the software on each individual computer must be updated.
Dynamic Addressing
The easiest way around this problem is dynamic addressing. With this approach, a server is designated to supply a network layer address to a computer each time the computer connects to the network.
Two standards for dynamic addressing are commonly used in TCP/IP networks:
Dynamic Addressing
The boot or DHCP server can be configured to assign the same network layer address to the computer each time it requests an address or it can lease the address to the computer by picking the "next available" network layer address from a list of authorized addresses.
Dynamic addressing greatly simplifies network management in non-dial-up networks too.
Address Resolution
In order to send a message, the sender must be able to translate the application layer address (or server name) of the destination into a network layer address and in turn translate that into a data link layer address.
This process is called address resolution.
TCP/IP uses two different approaches, one for resolving application layer addresses into IP addresses and one for resolving IP addresses into data link layer addresses.
Server Name Resolution
Server name resolution is the translation of application layer addresses into network layer addresses. This is done using the Domain Name Service (DNS).
Whenever you receive a set of Internet addresses, you must inform InterNIC of the name and IP addresses of the name server that will provide DNS information for all addresses in that Class.
Server Name Resolution
When TCP/IP needs to translate an application layer address into an IP address, it sends a special TCP-level packet to the nearest DNS server.
This packet asks the DNS server to send the requesting computer the IP address that matches the Internet address provided. This is why it sometimes takes a long time to access certain sites. IP addresses are then temporarily stored in a server address table.
Data Link Layer
Address Resolution
In order to actually send a message, the network layer software must know the data link layer of the destination computer.
In the case of a distant computer, the network layer would route the message by selecting a path through the network that would ultimately lead to the destination.
Data Link Layer
Address Resolution
To send a message to a computer in its network, a computer must know the correct data link layer address. In this case, TCP/IP software sends a broadcast message (using Address-Resolution-Protocol or ARP) to all computers in its subnet requesting the data link layer address.
ROUTING
Routing
In many networks, there are many possible routes or paths a message can take to get from one computer to another.
Routing is the process of determining the route or path through the network that a message will travel from the sender to the receiver. Every computer that performs routing has a routing table developed by the network manager that specifies how message will travel through the network.
Routing
Routing Table
Destination |
Route |
A |
A |
C |
C |
D |
A |
E |
E |
F |
E |
G |
C |
Routing
There are two fundamental approaches to routing:
Static Routing
There are two types of dynamic routing:
Dynamic Routing
An initial routing table is developed by the network manager, but is continuously updated by the computers themselves to reflect changing network conditions, such as network traffic.
Dynamic Routing
There are three commonly used dynamic routing protocols
Dynamic Routing
OSPF is more efficient than RIP because it normally doesn’t use broadcast messages. Instead it selectively sends status update messages directly to selected computes (used by TCP/IP).
Two drawbacks to Dynamic Routing.
Connectionless vs. Connection-Oriented Routing
Some messages or blocks of application data are small enough that they can be transmitted in one packet or frame at the data link layer. In other cases the application data in one message is too large and must be broken into several packets.
Connectionless vs. Connection-Oriented Routing
There are two ways these sets of packets can be routed through a network.
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. SPC establishes the virtual circuit and IPX routes the messages.
When connectionless routing is desired, only IPX is needed.
Connectionless vs. Connection-Oriented Routing
Quality of Service
(QoS) routing is a special type of connection-oriented dynamic routing in which different messages or packets are assigned different priorities.With QoS routing, different classes of service are defined each with different priorities.
QoS routing is common in certain kinds of networks (e.g. ATM).
Multicasting
The most common type of message in a network is the usual transmission between two computers. This is called a unicast message.
A broadcast message can also be sent to all computers on a LAN or subnet.
A third type of message, called a multicast message is used to send the same message to a group of computers.
Multicasting
Computers wishing to participate in a multicast end a message to the sending computer or some other computer performing routing along the way using a special type of TCP-level packet called Internet Group Management Protocol.
Each multicast group is temporarily assigned a special Class D IP address to identify the group, thus allowing a restricted broadcast of messages to this specific group.
Data transmission using TCP/IP and Ethernet
End of Chapter 6