(Latest Revision:
Mon Sep 16 23:13:11 PDT 2002
)
Notes On Chapter Nine
-- Hardware Addressing And Frame Type Identification
- 9.1 Introduction
-
How does one facilitate one-pair-at-a-time communication on a
shared LAN? This chapter discusses hardware addressing and frame
type identifiers.
- 9.2 Specifying a recipient
- (Note: some of the details described below could differ slightly
on some LAN's)
- Typically
each node on a shared LAN has a unique physical address.
For example, the ethernet address of altair is: 8:0:20:9f:a0:c2.
Note that this physical address is NOT the same thing as the IP
address. (The IP address of altair is 130.17.1.50).
- When host X wants to send a frame to host Y, X places the
physical address of Y in the frame and puts the frame on the LAN.
-
In a shared LAN, the frame sent by X arrives at the network
interface (e.g. ethernet card) of every host on the LAN.
- When a frame arrives at the network interface on a host Z, the
interface
hardware compares the destination address in the frame
with Z's physical address. Unless the two addresses match, the
interface does not pass the frame up to the software running on
host Z. The interface hardware does this screening all by
itself. There's no involvment of the host Z's CPU if the
addresses do not match.
If lots of frames that are not addressed to Z arrive at the
network interface of Z, it will not slow down the programs that
are running on Z (unless of course they are specifically waiting
for something to happen on the network, like the arrival of a
packet).
- If the addresses do match, the network interface copies
the frame to a location in RAM and then
interrupts the CPU. Software on the host then
examines the frame and does whatever it needs to do with it.
- 9.3 How LAN Hardware Uses Addresses To Filter Packets
- The network interface hardware is sophisticated and powerful.
The host operating system does not have to be concerned with
details of how packets are transmitted.
-
Interface hardware checks packet length and CRC. It discards
frames containing errors and handles all the details of sending
and receiving frames -- including maintaining queues of incoming
and outgoing packets.
- We see then that hosts X and Y on a shared LAN can communicate
without requiring any additional work from other CPU's on the
LAN.
- 9.4 Format of a Physical Address
- Each network technology has its own standards for the kind of
addresses and frame layouts that will be used on the network.
- The physical address is assigned to the network interface, not
the host. A host with more than one network interface therefore
has (at least) one address for each interface.
- a physical address can be assigned statically by the manufacturer
of the interface, dynamically at boot time, or it can be a
configurable property that the user sets by issuing a software
command or by setting hardware switches. Each method of
assignment has its advantages and disadvantages.
- 9.5 Broadcasting
-
There is a way to "broadcast" on most
shared LAN's.
This means that a packet can be addressed in such a way that it
is treated as if it were addressed to every host on the
LAN.
- Network interface hardware recognizes a special broadcast
address.
If a frame arrives at the interface of host Z
addressed either specifically to Z, or
addressed to the broadcast address, then the interface will pass
the frame up
to the OS on the host Z.
- 9.6 Multicasting
- Broadcasts are "expensive" to the network because all the hosts
CPU's have to process a broadcast packet.
-
Multicasting is a way to send just one packet to a group of several
hosts, yet avoid a broadcast.
- 9.7 Multicast Addressing
- There are special multicast addresses that cannot be used as
individual host addresses or as broadcast addresses.
-
A program can configure a network interface
to accept packets addressed to a particular multicast address,
or some set of multicast addresses.
- Multicasting can be used to allow a group of say four out of fifty
hosts on a LAN to receive a streaming audio performance.
- This is much preferable to broadcasting the performance,
which would force all 50 hosts to process all the packets of
the performance.
- Also it is better to multicast than to send four individual
copies of the performance, one to each of the four hosts.
The use of multicast conserves network bandwidth.
- 9.8 Identifying Packet Contents
- Different kinds of information can be carried in frames --
similar to the idea of data types.
- Often it is useful to mark a frame with some indicator of its
type. A special field within the frame can be used for this.
- The type field of a frame can be part of the standard that
defines the frame format, or it can just be some part of the
frame that the sender and receiver agree will be used for this
purpose.
- 9.9 Frame Headers And Frame Format
-
Most standards for frames call for a header portion followed by a
payload portion for the actual data. Headers contain fields such
as addresses, flags, type, and "checksums."
- Headers are usually a fixed size. Payloads are often variable in
size. Usually the header has a field that tells the total size
of the packet.
- 9.10 An Example Frame Format
-
Ethernet frame headers have an 8-byte preamble for receiver sync,
6-byte destination address, 6-byte source address, and 2-byte
frame type field.
- The ethernet frame has a payload section following the header
that can contain from 46 to 1500 bytes.
- The type field can indicate what is in the payload section of the
ethernet packet. For example the payload is often a packet
belonging to a higher-level protocol. The type field can
indicate that the payload is an IP, ARP, AppleTalk, or Novell
Network packet.
- The type field can help the receiver determine what to do with
the ethernet packet. For example, if the payload is an IP packet the
ethernet packt would be passed to a process running Internet Protocol
software. On the other hand if the payload is a Novell Network
packet, it would be handed to a Novell protocol process.
- The ethernet frame has a trailer containing a 4-byte CRC.
- 9.11 Using Networks That Do Not Have Self Identifying Frames
- For network technologies that do not have self-identifying frame
standards, there is a LLC/SNAP standard whereby applications can
use the first part of the payload section of a frame as a type
field.
- 9.12 Network Analyzers, Physical Addresses, Frame Types
- A network analyzer is a special purpose computer that connects to
a network and monitors the performance of the network.
- The analyzer can report throughput, average frame size, frequency
of collision, break down of frame types, and so on.
- The network interface on a network analyzer runs in promiscuous
mode so that the interface passes all packets received up to the
system software on the analyzer.
-
Note: Most any computer attached to a LAN can be used to read all
information in all packets on the LAN.
- The network analyzer can be instructed to examine all frames
coming from a certain host, or all frames of a certain type, or
combinations of these kinds of things, based on matching patterns
in header or payload areas of the frames.
- 9.13 Summary
- 9.14 Ethernet Address Assignment
- Manufacturers of Ethernet hardware apply to the
IEEE Registration Authority
to get ethernet numbers assigned to the ethernet cards they make.