8 0 2 . 3标准定义的帧和以太网的帧都有最小长度要求 。8 0 2 . 3规定数据部分必须至少为3 8字节,而对于以太网,则要求最少要有 4 6字节 。(卷一.p16)
Ethernet II以太网帧无LLC子层 。
2、Ethernet 802.3 raw帧格式:1983
1983年Novell以当时尚未正式发布的802.3标准为基础 , 发布其划时代的Netware/86网络套件时采用的私有以太网帧格式;
当两年以后IEEE正式发布802.3标准时情况发生了变化—IEEE在802.3帧头中又加入了802.2 LLC(Logical Link Control)头,这使得Novell的RAW 802.3格式跟正式的IEEE 802.3标准互不兼容;
在Novell的RAW 802.3帧结构中没有标志协议类型的字段,而只有Length 字段(2bytes,取值为0000-05dc,即十进制的0-1500),因此RAW 802.3帧只支持IPX/SPX一种协议;
Ethernet 802.3 raw帧格式 (NOVELL Ethernet 802.3):
目标MAC6字节
源MAC6字节
总长度2字节
0xFFFF2字节
数据44-1498字节
FCS4字节
最小帧长:6+6+2+2+44+4 = 64
最大帧长:6+6+2+2+1498+4 = 1518 。
3. Ethernet 802.3 SAP帧格式(IEEE 802.3/802.2 LLC帧格式):1985
这是IEEE 正式的802.3标准,它由Ethernet V2发展而来 。它将Ethernet V2帧头的协议类型字段替换为帧长度字段(取值为0000-05dc;十进制的1500 );并加入802.2 LLC头用以标志上层协议,LLC头中包含DSAP,SSAP以及Crontrol字段;
802.2SAP
为了区别802.3数据帧中所封装的数据类型, IEEE引入了802.2SAP和SNAP的标准 。它们工作在数据链路层的LLC(逻辑链路控制)子层 。
通过在802.3帧的数据字段中划分出被称为服务访问点(SAP)的新区域来解决识别上层协议的问题,这就是802.2SAP 。
LLC标准
LLC标准包括两个服务访问点,源服务访问点(SSAP)和目标服务访问点(DSAP) 。每个SAP只有1字节长,而其中仅保留了6比特用于标识上层协议,所能标识的协议数有限 。因此,又开发出另外一种解决方案,在802.2SAP的基础上又新添加了一个2字节长的类型域(同时将SAP的值置为AA),使其可以标识更多的上层协议类型,这就是802.2SNAP 。
常见SAP值
0:Null LSAP[IEEE]
4:SNA Path Control[IEEE]
6:DOD IP[79,JBP]
AA:SNAP[IEEE]
FE:ISO DIS 8473[52,JXJ]
FF:Global DSAP[IEEE]
Ethernet 802.3 SAP帧
在Ethernet 802.3 SAP帧中,将原Ethernet 802.3 raw帧中2个字节的0xFFFF变为各1个字节的DSAP和SSAP,同时增加了1个字节的"控制"字段,构成了802.2逻辑链路控制(LLC)的首部 。LLC提供了无连接(LLC类型1)和面向连接(LLC类型2)的网络服务 。LLC1是应用于以太网中 , 而LLC2应用在IBM SNA网络环境中 。
目MAC6字节
源MAC6字节
总长2字节
DSAP1字节
SSAP1字节
控制1字节
数据43-1497字节
FCS4字节
最小帧长:6+6+2+1+1+1+43+4 = 64 。
最大帧长:6+6+2+1+1+1+1497+4 = 1518 。
4、802.3标准的以太网帧格式 (RFC1042 1988):
协议标准802.3 SNAP
长度:包含他之后除了CRC的部分 。
DSAP:0XAA (固定值)
SSAP:0XAA (固定值)
control:全0 (固定值)
type:上层协议类型
Ethernet 802.3 SNAP帧格式: 标准以太网 802.3 RFC 10421988
目标MAC 源MAC 总长 0xAA 0xAA 0x03 OUI_ID 类型 数据FCS
6字节6字节 2字节 1字节 1字节 1字节 3字节 2字节 38-1492字节 4字节
最?。?+6+2+1+1+1+3+2+38+4 = 64
最大:6+6+2+1+1+1+3+2+1492+4 = 1518
Ethernet V2 比 IEEE802.3 更适合于传输大量的数据,但Ethernet V2缺乏数据链路层的控制,不利于传输需要严格传输控制的数据,这也正是IEEE802.3的优势所在 , 越需要严格传输控制的应用,越需要用 IEEE802.3或SNAP来封装,但IEEE802.3也不可避免的带来数据装载量的损失,因此该格式的封装往往用在较少数据量承载但又需要严格控制传输的应用中 。
- nodejs mongodb封装 mongodb封装和使用
- redis实现类 redisc封装类
- mongodb内嵌文档查询 封装mongodb查询条件
- redis single redis封装类如何使用
- mongodb容器 mongodb封装类
- redis缓存场景 redis缓存封装
- redistemplate泛型封装 redis工具类封装
- redis界面工具 redis工具封装图片
- python redis封装 redis常用封装
- mysql函数定义 mysql函数封装教程
