a Top-Down Approach (8th ed.):
Chapter 6 The Link Layer and LANs
6.1 Introduction to the Link Layer
Link-layer: services, implementation context.
Some important terminology:
• Node (节点): any device that runs a link-layer (i.e., layer 2) protocol. Nodes include hosts, routers, switches, and WiFi access points
• Links (链路): the communication channels that connect adjacent nodes along the communication path as.
• In order for a datagram to be transferred from source host to destination host, it must be moved over each of the individual links in the end-to-end path.
• Link-layer frame (链路层帧): over a given link, a transmitting node encapsulates the datagram in a link-layer frame and transmits the frame into the link.
6.1.1 The Services Provided by the Link Layer
The basic service: to move a datagram from one node to an adjacent node over a single communication link
The details: vary from one protocol to the next. Possible services:
• Framing (成帧).
• Almost all link-layer protocols encapsulate each datagram within a frame before transmission over the link. A frame consists of a data field and a number of header fields.
• Link access.
• A medium access control (MAC, 媒体访问控制) protocol: specifies the rules by which a frame is transmitted onto the link.
• for point-to-point links: simple.
• when multiple access problem: coordinates the frame transmissions of the many nodes.
• Reliable delivery.
• guarantees to move each network-layer datagram across the link without error.
• can be achieved with acknowledgments and retransmissions.
• often used for links that are prone to high error rates, such as a wireless link.
• can be considered an unnecessary overhead for low bit-error links.
• Error detection and correction.
• Bit errors are introduced by signal attenuation and electromagnetic noise.
• Error detection: done by
• having the transmitting node include error-detection bits in the frame, and
• having the receiving node perform an error check.
• Error correction: a receiver
• not only detects when
• but also determines exactly where
• (and then corrects).
6.1.2 Where Is the Link Layer Implemented?
• For the most part, implemented on a chip called the network adapter (网络适配器), also sometimes known as a network interface controller (NIC, 网络接口控制器). Thus, much of a controller's functionality is implemented in hardware.
• Interface communicating
• On the sending side, the controller takes a datagram, encapsulates the datagram in a frame, and then transmits the frame into the communication link.
• On the receiving side, a controller receives the entire frame, and extracts the datagram.
• If error detection, then
• the sending controller: sets the error-detection bits in the frame header
• the receiving controller: performs error detection
• The link layer is a combination of hardware and software.