Protocol Stack
Caveats and References
It is not possible to capture every feature of the protocol stack
traversal by a packet in an applet, because the applet becomes too
complex visually.
The references below provide more details about the process of
protocol stack traversal.
Here are a few of the simplifications in the applet.
-
For a given network there will be a single physical layer protocol
and data link layer protocol.
However, at the network layer there may be several alternative
protocol entities.
For example, the network layer often has a protocol entity
implementing IP (the Internet Protocol) and a protocol entity
implementing IPX (the network layer protocol used in the Novell
protocol stack).
All the protocols in the protocol layers above the network layer
that assume IP is the network layer protocol form the TCP/IP
protocol stack (that is, the Internet protocol stack).
All the protocols in the protocol layers above the network layer
that assume IPX is the network layer protocol form the Novell
protocol stack.
Thus, it is possible (and likely) that a single network will
have multiple protocol stacks running on it.
-
A machine may actually have more than one data link layer protocol
running on it since a machine may be connected to more than one
network and those networks may be different (e.g. Ethernet and
ATM).
Each different type of network will require different physical
layer and data link layer protocols.
A router, by definition, is connected to two or more networks.
Thus, a more detailed visual representation of a packet traversing
a router would have the frame arriving to the physical layer of
the first network, going up to the data link layer of the first
network, going up to the network layer protocol specified in
the datagram inside the frame.
At this point, the datagram will go down to the data link layer
of the protocol used in the second network, and then down to the
physical layer used in the second network.
-
There may be multiple protocol entities at each protocol layer.
For example, for a router there will be a different data link
protocol
entity for each network to which the router is connected.
At the network layer there may be both IP and IPX.
At the transport layer within the TCP/IP protocol stack there
will be both TCP (the Transmission Control Protocol) and
UDP (the User Datagram Protocol).
This fact causes protocol traversal to exhibit
multiplexing and demultiplexing.
Multiplexing occurs as packets move down the protocol layers.
Packets from different upper protocol layer entities will go to the
same lower protocol layer entity.
For example, both TCP and UDP packets at the transport layer
will be multiplexed to IP at the network layer.
Demultiplexing occurs as packets move up the protocol layers.
Packets from a single lower protocol layer entity can go
to different upper lower protocol layer entities.
For example, some IP datagrams will passed up to TCP and some
IP datagrams will be passed up to UDP.
References
[1] L. Cassel and R. Austing, Computer Networks and Open Systems, An
Applications Perspective, Jones and Bartlett, 2000.
[2]J.F. Kurose and K.W. Ross, Computer Networking: A Top-Down Approach
Featuring the Internet, Second Edition, Addison Wesley, 2003.
[3] L.L. Peterson and B.S. David,
Computer Networks: A Systems Approach, Third Edition,
Morgan Kaumfmann, 20003.
Acknowledgements and
Developer Information
Current Version Date: February 2004
Copyright notice (C) Mark A. Holliday. All rights reserved.