Transcript CHAP06
Business Data
Communications and
Networking, 6th ed.
FitzGerald and Dennis
6-1
Copyright © 1999 John Wiley & Sons, Inc.
All rights reserved. Reproduction or translation of this work
beyond that permitted in Section 117 of the 1976 United
States Copyright Act without the express written
permission of the copyright owner is unlawful.
Request for further information should be addressed to the
Permissions Department, John Wiley & Sons, Inc.
The purchaser may make back-up copies for his/her own use
only and not for redistribution or resale.
The Publisher assumes no responsibility for errors,
omissions, or damages, caused by the use of these
programs or from the use of the information contained
herein.
6-2
Objectives of Chapter 6
Become familiar with…
four standard network protocols,
network addressing,
different types of routing,
Understand how TCP/IP works.
6-3
INTRODUCTION
6-4
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.
6-5
Introduction
A network protocol provides three functions:
• Breaks large messages into packets for
transmission and reassembles them at the
receiver’s end (packetizing).
• Determines the correct network layer and data
link layer addresses. (addressing).
• Determines where the message should be
send next on its way to its final destination
(routing).
6-6
Introduction
Some network layers are compatible with a
variety of different data link layer protocols
and can be used interchangeably in the
same network.
6-7
NETWORK PROTOCOLS
6-8
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
X.25
IPX/SPX
SNA
6-9
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 errorfree transmission.
6-10
Transmission Control Protocol/
Internet Protocol (TCP/IP)
TCP/IP has two parts:
• TCP - performs packetizing: breaking the data
into smaller packets, numbering them, ensuring
each packet is reliably delivered, and putting
them into the proper order at the destination.
TCP is only active at the sender and receiver.
• IP - performs routing and addressing.
A typical TCP packet has 192-bit header of
control information.
6-11
Transmission Control Protocol/
Internet Protocol (TCP/IP)
Two forms of IP are currently in use:
• IPv4 also has a 192-bit header.
• IPv6 has a 320-bit header.
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.
6-12
TCP Packet
1
2
3
4
1
2
3
4
5
6
7
8
9
10
11
5
6
7
8
9
Source ID
Destination ID
Sequence number
ACK number
Header length
Unused
Flags
Flow control
CRC 16
Urgent pointer
Options
10
11
User Data
16 bits
16 bits
32 bits
32 bits
4 bits
6 bits
6 bits
16 bits
16 bits
16 bits
16 bits
6-13
IP Packet version
IP4
1
1
2
3
4
5
6
7
8
2
3
4
5
Version number
Header length
Type of Service
Total length
Identifiers
Flags
Packet offset
Hop limit
6
7
8
4 bits
4 bits
8 bits
16 bits
16 bits
3 bits
13 bits
8 bits
9
10
11
12
13
14
15
16
9
10
11
12
13
Protocol
CRC 16
Source address
Destination Address
Options
User data
Flow name
Next header
14
8 bits
16 bits
32 bits
32 bits
varies
varies
24 bits
8 bits
IP6
1
15
4
16
8
11 (128 bits)
12 (128 bits)
14
6-14
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.
6-15
IPX/SPX
IPX/SPX has two parts:
• SPX performs the same packetizing functions
of TCP: breaking the data into smaller packets,
numbering them, ensuring each packet is
reliably delivered, and putting them into the
proper order at the destination.
• IPX performs the same routing and addressing
functions as IP.
IPX/SPX is similar to TCP/IP in concept, but
different in structure.
6-16
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.
6-17
IPX/SPX
SPX packet
1
1
2
3
4
5
6
7
2
3
Control
Type
1 byte
Source ID
Destination ID
Sequence number
ACK number
Allocation number
4
5
1 byte
2
3
4
2 bytes
2 bytes
2 bytes
2 bytes
2 bytes
5
6
7
User Data
1 Checksum
2 Lensill
3 Control
4 Type
1 byte
5 Destination address
6 Destination network address
7 Destination socket
8 Source address
9 Source network address
10 Source socket
IPX packet
1
6
7
8
9
10
2 bytes
2 byte
1 byte
6 bytes
4 bytes
2 bytes
6 bytes
4 bytes
2 bytes
User Data
6-18
X.25
X.25 is a standard developed by ITU-ISS
for use in wide area networks.
X.25 also has two parts:
• Packet layer protocol (PLP) the routing
protocol that performs routing and
addressing functions similar to IP
• X.3 performs the packetizing functions of
TCP.
6-19
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.
6-20
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.
6-21
ADDRESSING
6-22
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.
6-23
Types of addresses
Address
Example Software
Application Layer
Network Layer
Data Link Layer
Web browser
TCP/IP
Ethernet
Example Address
www.cba.uga.edu
128.192.98.5
00-0C-00-F5-03-5A
6-24
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.
6-25
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.
6-26
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.
6-27
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.
6-28
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
Organization assigns last byte
192.1.56.x
6-29
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.
6-30
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.
6-31
6-32
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.
6-33
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.
6-34
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:
• Bootstrap Protocol (bootp)
• Dynamic Host Control Protocol (DHCP)
6-35
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.
6-36
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.
6-37
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.
6-38
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.
6-39
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.
6-40
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-ResolutionProtocol or ARP) to all computers in its
subnet requesting the data link layer
address.
6-41
ROUTING
6-42
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.
6-43
Routing
6-44
Routing Table
Destination
A
C
D
E
F
G
Route
A
C
A
E
E
C
6-45
Routing
There are two fundamental approaches to
routing:
• Centralized routing - all routing decisions are
made by one central computer.
• Decentralized Routing - allows all computers in
the network to make their own routing decisions
following a formal routing protocol. Most
decentralized routing protocols are selfadjusting, adapting to changes in the network
configurations.
6-46
Static Routing
There are two types of dynamic routing:
Static
Routing - where the routing table
developed by the network manager, and
changes made only when computers
are added or removed from network.
6-47
Dynamic Routing
Dynamic
Routing (adaptive routing)- is used
when there are multiple routes through a
network and it is important to select the best
(or fastest) route, in order to route messages
away from traffic on busy circuits.
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.
6-48
Dynamic Routing
There are three commonly used dynamic
routing protocols
• Routing Information Protocol (RIP)- used by the
network manager to develop the routing table.
Used by both TCP/IP and IPX/SPX.
• Internet Control Message Protocol (ICMP)-used
on the internet with TCP/IP.
• Open Shortest Path First (OSPF) uses the
number of computers in a route as well as
network traffic and error rates to select the best
route.
6-49
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.
• It requires more processing by each computer
in the network than centralized or static routing.
• The transmission of status information “wastes”
network capacity.
6-50
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.
6-51
Connectionless vs.
Connection-Oriented Routing
There are two ways these sets of packets can
be routed through a network.
• Connectionless routing means each packet is
treated separately and makes its own way
through the network.
• Connection-Oriented routing Sets up a virtual
circuit between the sender and receiver.
Appears to use point-to-point circuit-switching,
but actually uses store-and-forward. Has
greater overhead than connectionless, due to
the routing information.
6-52
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.
6-53
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.
6-54
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).
6-55
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.
6-56
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.
6-57
6-58
Data transmission using
TCP/IP and Ethernet
Ethernet
packet header
IP
packet
TCP
packet
HTTP
packet
User Data
Ethernet
packet trailer
6-59
End of Chapter 6
6-60