帧格式type(以太网mac帧格式)

      最后更新:2023-09-02 02:15

      以太网帧格式有哪几种?

      以太网帧格式,即在以太网帧头、帧尾中用于实现以太网功能的域。在以太网的帧头和帧尾中有几个用于实现以太网功能的域,每个域也称为字段,有其特定的名称和目的。IEEE802.3以太帧头如图所示:扩展:以太网帧格式多达5种,这是由历史原因造成的。事实上,今天的大多数TCP/IP应用都是用EthernetV2帧格式(IEEE802.3-1997改回了对这一格式的兼容),而交换机之间的BPDU(桥协议数据单元)数据包则是IEEE802.3/LLC的帧,VLANTrunk协议如802.1Q和Cisco的CDP(思科发现协议)等则是采用IEEE802.3SNAP的帧。前导码(7字节)、帧起始定界符(1字节)、目的MAC地址(6字节)、源MAC地址(6字节)、类型/长度(2字节)、数据(46~1500字节)、帧校验序列(4字节)[MAC地址可以用2-6字节来表示,原则上是这样,实际都是6字节]

      以太网帧格式有哪几种?

      以太网帧格式

      以太网数据帧格式由于技术发展的历史原因有5种格式,归类整理,以便学习工作使用。 1、Ethernet II 的以太网帧格式(RFC 894  1984): 以太网Ⅱ Ethernet II RFC 894  1984帧间隙每个以太帧之间都要有帧间隙(Interframe Gap),即每发完一个帧后要等待一段时间才能再发另外一个帧,以便让帧接收者对接收的帧作必要的处理(如调整缓存的指针、更新计数、通知对报文进行处理等)。 在以太网标准中规定最小帧间隙是12个字节,其数据为全1 。对于个别的接口,可减少到64(GE)或40比特(10GE),其他的接口都不应该小于12字节。前导码 (7B)以太网标准中规定前导码为10101010 10101010 10101010 10101010 10101010 10101010 10101010(二进制),共7字节;帧开始定界符目 (1B)帧开始定界符为10101011,共1字节。目的MAC (6B)源MAC (6B)协议类型负荷PADFCS注意:如果PIC卡实际收到的帧间隙、前导码、帧开始界定符,如果跟协议规定的不一样,是不是这个数据帧也会被丢弃?答案是,PIC卡在处理帧间隙时,帧间隙一般可以容忍跟协议规定的不一样(比如不是全1);但前导码、帧开始界定符必须符合协议规定的值,否则当做帧间隙处理,也就是帧被丢弃了。以太网标准中规定如下帧为无效帧:a.帧的长度不是整数个字节;b.用收到的帧检验序列FCS(Frame Check Sequence)查出有错误;c.收到的帧的负荷长度不在46~1500字节之间。对于检查出的无效帧就简单的丢弃,以太网不负责重传丢弃的帧。而这些检查,是在接口卡上执行的。8 0 2 . 3标准定义的帧和以太网的帧都有最小长度要求。 8 0 2 . 3规定数据部分必须至少为3 8字节,而对于以太网,则要求最少要有 4 6字节。(卷一.p16)Ethernet II以太网帧无LLC子层。2、Ethernet 802.3 raw帧格式:19831983年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):目标MAC      6字节源MAC         6字节总长度          2字节0xFFFF        2字节数据               44-1498字节FCS                4字节最小帧长: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网络环境中。目MAC   6字节源MAC   6字节总长     2字节DSAP    1字节SSAP    1字节控制       1字节数据        43-1497字节FCS       4字节最小帧长: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 1042     1988目标MAC 源MAC 总长 0xAA 0xAA 0x03 OUI_ID 类型 数据        FCS6字节   6字节 2字节 1字节 1字节 1字节 3字节 2字节 38-1492字节 4字节最小:6+6+2+1+1+1+3+2+38+4 = 64最大:6+6+2+1+1+1+3+2+1492+4 = 1518Ethernet V2 比 IEEE802.3 更适合于传输大量的数据,但Ethernet V2缺乏数据链路层的控制,不利于传输需要严格传输控制的数据,这也正是IEEE802.3的优势所在,越需要严格传输控制的应用,越需要用 IEEE802.3或SNAP来封装,但IEEE802.3也不可避免的带来数据装载量的损失,因此该格式的封装往往用在较少数据量承载但又需要严格控制传输的应用中。在实际应用中,我们会发现,大多数应用的以太网数据包是EthernetV2的帧(如HTTP、FTP、SMTP、POP3等应用),而交换机之间的BPDU(桥协议数据单元)数据包则是IEEE802.3的帧,VLANTrunk协议如802.1Q和Cisco的CDP(思科发现协议)等则是采用IEEE802.3 SNAP的帧。如STP对应的帧如下,抓包格式为IEEE 802.3,LLC中的DSAP=SSAP=0X42普通的TCP报文如下,抓包显示为ETHERNET II格式,其实LLC中DSAP=0X065、Ethernet 1 帧格式和EthernetⅡ是一样的。只是EthernetⅡ物理接口和电器特性在EthernetⅠ上有所更改。以太网历史:对于以太网的帧格式种类多达5中有其历史原因:1980 DEC,Intel,Xerox制订了Ethernet I的标准1982 DEC,Intel,Xerox又制订了Ehternet II的标准  以太网事实上的标准帧格式1982 IEEE开始研究Ethernet的国际标准802.31983 迫不及待的Novell基于IEEE的802.3的原始版开发了专用的Ethernet帧格式 802.3 RAW1985 IEEE推出IEEE 802.3规范SAP后来为解决EthernetII与802.3帧格式的兼容问题推出折衷的Ethernet SNAP格式。 DATE 2019-06-13
      以太网帧格式

      以太网帧格式有哪几种?

      以太网帧格式,即在以太网帧头、帧尾中用于实现以太网功能的域。在以太网的帧头和帧尾中有几个用于实现以太网功能的域,每个域也称为字段,有其特定的名称和目的。IEEE802.3以太帧头如图所示:扩展:以太网帧格式多达5种,这是由历史原因造成的。事实上,今天的大多数TCP/IP应用都是用Ethernet V2帧格式(IEEE802.3-1997改回了对这一格式的兼容),而交换机之间的BPDU(桥协议数据单元)数据包则是IEEE802.3/LLC的帧,VLAN Trunk协议如802.1Q和Cisco的CDP(思科发现协议)等则是采用IEEE802.3SNAP的帧。前导码(7字节)、帧起始定界符(1字节)、目的MAC地址(6字节)、源MAC地址(6字节)、类型/长度(2字节)、数据(46~1500字节)、帧校验序列(4字节)[MAC地址可以用2-6字节来表示,原则上是这样,实际都是6字节]
      历史上以太网帧格式有五种: 1.Ethernet V1:这是最原始的一种格式,是由Xerox PARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成Ethernet V1标准.2.Ethernet V2(ARPA):由DEC,Intel和Xerox在1982年公布其标准,主要更改了Ethernet V1的电气特性和物理接口,在帧格式上并无变化;Ethernet V2出现后迅速取代Ethernet V1成为以太网事实标准;Ethernet V2帧头结构为6bytes的源地址+6bytes的目标地址+2Bytes的协议类型字段+数据。3.RAW 802.3:这是1983年Novell发布其划时代的Netware/86网络套件时采用的私有以太网帧格式,该格式以当时尚未正式发布的802.3标准为基础;但是当两年以后IEEE正式发布802.3标准时情况发生了变化—IEEE在802.3帧头中又加入了802.2 LLC(Logical Link Control)头,这使得Novell的RAW 802.3格式跟正式的IEEE 802.3标准互不兼容.4.802.3/802.2 LLC:这是IEEE 正式的802.3标准,它由Ethernet V2发展而来。它将Ethernet V2帧头的协议类型字段替换为帧长度字段(取值为0000-05dc;十进制的1500);并加入802.2 LLC头用以标志上层协议,LLC头中包含DSAP,SSAP以及Crontrol字段. 5.802.3/802.2 SNAP:这是IEEE为保证在802.2 LLC上支持更多的上层协议同时更好的支持IP协议而发布的标准,与802.3/802.2 LLC一样802.3/802.2 SNAP也带有LLC头,但是扩展了LLC属性,新添加了一个2Bytes的协议类型域(同时将SAP的值置为AA),从而使其可以标识更多的上层协议类型;另外添加了一个3Bytes的OUI字段用于代表不同的组织,RFC 1042定义了IP报文在802.2网络中的封装方法和ARP协议在802.2 SANP中的实现.

      以太网帧格式有哪几种?

      以太网帧格式的历史分类

      以太网帧格式多达5种,这是由历史原因造成的。那么实际使用中具体会用哪种呢?事实上,今天的大多数TCP/IP应用都是用Ethernet V2帧格式(IEEE802.3-1997改回了对这一格式的兼容),而交换机之间的BPDU(桥协议数据单元)数据包则是IEEE802.3/LLC的帧,VLAN Trunk协议如802.1Q和Cisco的CDP(思科发现协议)等则是采用IEEE802.3SNAP的帧。前导码(7字节)、帧起始定界符(1字节)、目的MAC地址(6字节)、源MAC地址(6字节)、类型/长度(2字节)、数据(46~1500字节)、帧校验序列(4字节)[MAC地址可以用2-6字节来表示,原则上是这样,实际都是6字节]图2 IEEE802.3以太帧头字段字段长度(字节)目的前导码(Preamble)7同步帧开始符(SFD)1标明下一个字节为目的MAC字段目的MAC地址6指明帧的接受者源MAC地址6指明帧的发送者长度(Length)2帧的数据字段的长度(长度或类型)类型(Type)2帧中数据的协议类型(长度或类型)数据和填充(Data and Pad)注46~1500高层的数据,通常为3层协议数据单元。对于TCP/IP是IP数据包帧校验序列(FCS)4对接收网卡提供判断是否传输错误的一种方法,如果发现错误,丢弃此帧注:如果帧长小于64字节,则要求“填充”,以使这个帧的长度达到64字节。
      以太网帧格式的历史分类

      以太网帧,length/type 为 type,接收时如何去掉帧中的padding?

      如果是Type,那么这个Type就表明是某种协议的报文,相当于在以太网帧基础上又封装了一层协议,那么后续的字节会根据按照这种指定协议的报文格式填充数据,包括协议头、控制字 、数据以及必要的padding等,接收端需要首先解析出这种协议,再根据这种特定协议解析报文,根据协议报头、控制字的定义确定有多少内容是数据,多少数据是padding。 实际上,在Length/Type为Type类,表明承载、封装一层协议后,还可以在这一层协议上继续向上封装,层层打包,但是基本的思路都是一样的,根据前一层协议里面某些控制字,获知是否继续封装了更高层协议的报文,而每一层协议都有自己的控制信息,描述自身的一些控制信息和数据长度。
      以太网帧,length/type 为 type,接收时如何去掉帧中的padding?

      本文由 在线网速测试 整理编辑,转载请注明出处。

          热门文章

          文章分类