Ethernet帧格式

以太网帧格式演变
本文详细介绍了以太网帧格式的发展历程,包括Ethernet I、Ethernet II、802.3、Novell Ethernet及Ethernet SNAP等格式的区别。重点对比了Ethernet II与802.3帧格式,并解释了其在网络设备中的应用。

一、Ethernet帧格式的发展

1980 DEC,Intel,Xerox制订了Ethernet I的标准
1982 DEC,Intel,Xerox又制订了Ehternet II的标准
1982 IEEE开始研究Ethernet的国际标准802.3
1983 迫不及待的Novell基于IEEE的802.3的原始版开发了专用的Ethernet帧格式 (因此802.3 Raw 先于 IEEE 802.3 出台)
1985 IEEE推出IEEE 802.3规范


后来为解决EthernetII与802.3帧格式的兼容问题推出折衷的Ethernet SNAP格式

(其中早期的Ethernet I已经完全被其他帧格式取代了所以现在Ethernet只能见到后面几种Ethernet的帧格式

现在大部分的网络设备都支持这几种Ethernet的帧格式

如:cisco的路由器在设定Ethernet接口时可以指定不同的以太网的帧格式:arpa,sap,snap,novell-ether)

 

不同厂商对这几种帧格式通常有不同的叫法,比如:

Frame Type                          Novell公司                    Cisco 公司
Ethernet Version 2              Ethernet_II                   arpa
802.3 Raw                            Ethernet_802.3           novell_ether
IEEE 802.3/802.2                Ethernet_802.2           sap
IEEE 802.3/802.2 SNAP    ETHERNET_SNAP     snap

 

二、各种不同的帧格式

1. Ethernet II
就是DIX以太网联盟推出的,它由6个字节的目的MAC地址,6个字节的源MAC地址,2个字节的类型域(用于标示封装在这个Frame、里面数据的类型)以上为Frame Header,接下来是46--1500 字节的数据,和4字节的帧校验)


2. Novell Ethernet
它的帧头与Ethernet有所不同其中EthernetII帧头中的类型域变成了长度域,后面接着的两个字节为0xFFFF
用于标示这个帧是Novell Ether类型的Frame 由于前面的0xFFFF站掉了两个字节所以数据域缩小为44-1498个字节,帧校验不变。


3. IEEE 802.3/802.2
802.3的Frame Header和Ethernet II的帧头有所不同EthernetII类型域变成了长度域。其中又引入802.2协议(LLC)在802.3帧头后面添加了一个LLC首部,由DSAP(Destination Service Access Point)
1 byte,SSAP(Source SAP),一个控制域--1 byte!
SAP用于标示帧的上层协议


4. Ethernet SNAP
SNAP Frame与802.3/802.2 Frame的最大区别是增加了一个5 Bytes的SNAP ID其中前面3个byte通常与源mac地址的前三个bytes相同为厂商代码!有时也可设为0,后2 bytes 与Ethernet II的类型域相同。。。

 

常用的帧格式

MAC帧主要有两种格式,一种是以太网V2标准,一种是IEEE 802.3,常用的是前者。

 

1. Ethernet II帧


    DMAC(Destination MAC)是目的MAC地址。DMAC字段长度为6个字节,标识帧的接收者。
    SMAC(Source MAC)是源MAC地址。SMAC字段长度为6个字节,标识帧的发送者。
    Type(类型字段)用于标识数据字段中包含的高层协议,该字段长度为2个字节。类型字段值为 0x0800的帧代表IP协议帧;类型字段值为0806的帧代表ARP协议帧。
    Data(数据字段)是网络层数据,最小长度必须为46字节以保证帧长至少为64字节,数据字段的最大长度为1500字节。
    FCS(循环冗余校验字段)提供了一种错误检测机制。该字段长度为4个字节。

2. 802.3帧


    EEE802.3帧格式类似于Ethernet_II帧,只是Ethernet_II帧的Type域被802.3帧的Length域取代,并且占用了Data字段的8个字节作为LLC和SNAP字段。
   

    Length字段定义了Data字段包含的字节数。
    LLC(逻辑链路控制 Logical Link Control)由目的服务访问点DSAP(Destination Service Access Point)、源服务访问点SSAP(Source Service Access Point)和Control字段组成。
    SNAP(Sub-network Access Protocol)由机构代码(Org Code)和类型(Type)字段组成。Org code三个字节都为0。Type字段的含义与Ethernet_II帧中的Type字段相同。

    IEEE802.3帧根据DSAP和SSAP字段的取值又可分为以下几类:
    1)  当DSAP和SSAP都取特定值0xff时,802.3帧就变成了Netware-ETHERNET帧,用来承载NetWare类型的数据。
    2)  当DSAP和SSAP都取特定值0xaa时,802.3帧就变成了ETHERNET_SNAP帧。ETHERNET_SNAP帧可以用于传输多 种协议。
    3)  DSAP和SSAP其他的取值均为纯IEEE802.3帧。

    802.3帧的长度也是64-1518字节之间

    感觉网络层一些协议才用到802.3帧格式,是因为需要802.3帧携带一些控制信息

转载于:https://www.cnblogs.com/code1992/p/10370569.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值