2.2 Ethernet and IEEE 802 Encapsulation
以太网及
IEEE 802
封装
The term Ethernet generally refers to a standard published in 1982 by Digital Equipment Corp., Intel Corp., and Xerox Corp. It is the predominant form of local area network technology used with TCP/IP today. It uses an access method called CSMA/CD, which stands for Carrier Sense, Multiple Access with Collision Detection. It operates at 10 Mbits/sec and uses 48-bit addresses.
术语以外网通常指
1982
年由
Digital Equipment Corp., Intel Corp., and Xerox Corp.
发行的标准。它是如今
TCP/IP
区域网络技术的主导形式。它使用一种称为
CSMA/CD
的存取方式,表示载波监听,多路访问冲突检测。它运行于
10 Mbits/sec
及使用
48
比特地址。
A few years later the IEEE ( Institute of Electrical and Electronics Engineers) 802 Committee published a sightly different set of standards. 802.3 covers an entire set of CSMA/CD networks, 802.4 covers token bus networks, and 802.5 covers token ring networks. Common to all three of these is the 802.2 standard that defines the logical link control (LLC) common to many of the 802 networks. Unfortunately the combination of 802.2 and 802.3 defines a different frame format from true Ethernet. ([Stallings 1987] covers all the details of these IEEE 802 standards.)
几年后,
IEEE 802
协会发布了完全不同的一组标准。
802.3
包含了整组
CSMA/CD
网络。
802.4
包含了令牌总线网络,而
802.5
包含了令牌环网络。与之相同的是,
802.2
标准定义了逻辑链路控制(
LLC
),与很多
802
网络相同。不幸的是,
802.2
和
802.3
的合并定义了一个与真实以太网不同的帧格式。(
[Stallings 1987]
包含所有
IEEE802
标准的细节)
In the TCP/IP world, the encapsulation of IP datagrams is defined in RFC 894 [Hornig 1984] for Ethernets and in RFC 1042 [Postel and Reynolds 1988] for IEEE 802 networks. The Host Requirements RFC requires that every Internet host connected to a 10 Mbits/sec Ethernet cable:
在
TCP/IP
中,以太网
Ip
数据报的封装定义在
RFC 894
,
RFC 1042
定义了
IEEE802
网络。主机需求
RFC
需要每个网络主机连接到
10 Mbits/sec
以太网线缆中。
Must be able to send and receive packets using RFC 894 (Ethernet) encapsulation.
必须能使用
RFC 894
(以太网)封装收发数据。
Should be able to receive RFC 1042 (IEEE 802) packets intermixed with RFC 894 packets.
必须可接收掺杂在
RFC894
包中的
RFC 1042
(
IEEE802
)包。
May be able to send packets using RFC 1042 encapsulation. If the host can send both types of packets, the type of packet sent must be configurable and the configuration option must default to RFC 894 packets.
必须可使用
RFC1042
封装发送包。如果主机可发送这
2
中的包,发送包的类型必须可配置,而且配置选项必须与
RFC 894
默认包一致。
RFC 894 encapsulation is most commonly used. Figure 2.1 shows the two different forms of encapsulation. The number below each box in the figure is the size of that box in bytes.
RFC 894
封装最常用。图
2.1
显示了两种不同的封装形式。图框下的数字是图中此图框字节大小。
Figure 2.1. IEEE 802.2/802.3 encapsulation (RFC 1042) and Ethernet encapsulation (RFC 894).
图
2.1 IEEE 802.2/802.3
封装(
RFC 1042
)及以太网封装(
RFC 894
)
Both frame formats use 48-bit (6-byte) destination and source addresses. (802.3 allows 16-bit addresses to be used, but 48-bit addresses are normal.) These are what we call hardware addresses throughout the text. The ARP and RARP protocols (Chapters 4 and 5) map between the 32-bit IP addresses and the 48-bit hardware addresses.
两种封装格式均使用
48
比特(
6
字节)目的及源地址。(
802.3
可用
16
比特地址,
48
比特是常用值。)这就是我们本文中说的硬件地址。
ARP
和
RARP
协议(章
4
、
5
)提供
32
比特的
IP
地址和
48
比特的硬件地址间的映射。
The next 2 bytes are different in the two frame formats. The 802 length field says how many bytes follow, up to but not including the CRC at the end. The Ethernet type field identifies the type of data that follows. In the 802 frame the same type field occurs later in the SNAP (Sub-network Access Protocol) header. Fortunately none of the valid 802 length values is the same as the Ethernet type values, making the two frame formats distinguishable.
接着的
2
字节在这
2
种帧格式中是不同的。
802
长度区域说明接下来有多少字节,直到而不包括结尾的
CRC
。以太网类型区域则指出接下来数据的类型。在
802
帧中,相同的类型区域存在于
SNAP
(子网存取协议)的头部。幸运的是,可用的
802
长度值没有和以太网类型值一样的,故而两种帧格式可区分。
In the Ethernet frame the data immediately follows the type field, while in the 802 frame format 3 bytes of 802.2 LLC and 5 bytes of 802.2 SNAP follow. The DSAP (Destination Service Access Point) and SSAP (Source Service Access Point) are both set to 0xaa. The ctrl field is set to 3. The next 3 bytes, the org code are all 0. Following this is the same 2-byte type field that we had with the Ethernet frame format. (Additional type field values are given in RFC 1340 [Reynolds and Postel 1992].)
在以太帧中,数据直接跟在类型区域后,而在
802
帧格式中,其后是
3
字节的
802.2LLC
和
5
字节的
802.2SNAP
。
DSAP
(目的服务存取点)和
SSAP
(源服务存取点)都设为
0xaa
。控制区域设为
3
。接下来的
3
字节
org code
都为
0
。接着是与以太帧格式相同的
2
字节类型区域。(附加类型区域值在
RFC 1340
中。)
The CRC field is a cyclic redundancy check (a checksum) that detects errors in the rest of the frame. (This is also called the FCS or frame check sequence.)
CRC
区域是循环冗余校验(校验和)用于检测剩余帧的错误。(这也叫做
FCS
或帧校验序列)
There is a minimum size for 802.3 and Ethernet frames. This minimum requires that the data portion be at least 38 bytes for 802.3 or 46 bytes for Ethernet. To handle this, pad bytes are inserted to assure that the frame is long enough. We'll encounter this minimum when we start watching packets on the wire.
802.3
及以太帧有最小值。数据部分的最小值
802.3
是
38
字节,以太网是
46
字节。为了处理这个,填充帧插入以确保足够的长度。当我们看线缆上的包时将遇到这个最小值。
In this text we'll display the Ethernet encapsulation when we need to, because this is the most commonly used form of encapsulation.
本文我们需要时将演示以太网的封装,因为这是封装中最常用的形式。