以太网帧

原创 2016年08月30日 18:06:51

每种格式的以太网帧的开始处都有64比特(8字节)的前导字符,其中前7个字节称为前同步码(Preamble),内容是16进制数 0xAA,最后1字节为帧起始标志符0xAB,它标识着以太网帧的开始。前导字符的作用是使接收节点进行同步并做好接收数据帧的准备。

    以太网帧格式 - Xmo0 -


目前有四种在用的贞格式,它们分别是:

  

  ●Ethernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco名称为:ARPA。

   以太网帧格式
Ethernet II类型以太网帧的最小长度为64字节(6+6+2+46+4),最大长度为1518字节(6+6+2+1500+4)。其中前12字节分别标识出发送数据帧的源节点MAC地址和接收数据帧的目标节点MAC地址。接下来的2个字节标识出以太网帧所携带的上层数据类型,如16进制数0x0800代表IP协议数据,16进制数0x809B代表AppleTalk协议数据,16进制数0x8138代表Novell类型协议数据等。在不定长的数据字段后是4个字节的帧校验序列(Frame Check Sequence,FCS),采用32位CRC循环冗余校验对从"目标MAC地址"字段到"数据"字段的数据进行校验。


  ●Ethernet 802.3 raw:Novell在1983年公布的专用以太网标准帧格式。Cisco名称为:Novell-Ether。
  以太网帧格式 - Xmo0 -

  区分这两种格式的方法是判断类型/总长度字段值,大于1500则为类型值,贞格式则为Ethernet II,否则为Ethernet 802.3 raw。


  ●Ethernet 802.3 SAP:IEEE在1985年公布的Ethernet 802.3的SAP版本以太网帧格式。Cisco名称为:SAP。

    以太网帧格式 - Xmo0 -

    从图中可以看出,在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网络环境中。
  
  新增的802.2 LLC首部包括两个服务访问点:源服务访问点(SSAP)和目标服务访问点(DSAP)。它们用于标识以太网帧所携带的上层数据类型,如16进制数 0x06代表IP协议数据,16进制数0xE0代表Novell类型协议数据,16进制数0xF0代表IBM NetBIOS类型协议数据等。
  
  至于1个字节的"控制"字段,则基本不使用(一般被设为0x03,指明采用无连接服务的802.2无编号数据格式)。

  ●Ethernet 802.3 SNAP:IEEE在1985年公布的Ethernet 802.3的SNAP版本以太网帧格式。Cisco名称为:SNAP。


    以太网帧格式 - Xmo0 -

 
 Ethernet 802. 3 SNAP类型以太网帧格式和Ethernet 802. 3 SAP类型以太网帧格式的主要区别在于:

  ●2个字节的DSAP和SSAP字段内容被固定下来,其值为16进制数0xAA。
  ●1个字节的"控制"字段内容被固定下来,其值为16进制数0x03。
  ●增加了SNAP字段,由下面两项组成:
  
  ◆新增了3个字节的组织唯一标识符(Organizationally Unique Identifier,OUI ID)字段,其值通常等于MAC地址的前3字节,即网络适配器厂商代码。
  ◆2个字节的"类型"字段用来标识以太网帧所携带的上层数据类型。

 今天的大多数TCP/IP应用都是用Ethernet II帧格式,而交换机之间的BPDU(桥协议数据单元)数据包则是IEEE802.3/LLC的帧,VLAN Trunk协议如802.1Q和Cisco的CDP(思科发现协议)等则是采用IEEE802.3SNAP的帧。

附:Ethernet II帧格式类型字段中常用值及其对应的协议:

Ethertype 
( 十六进制 )

协议

0x0000 - 0x05DC

IEEE 802.3 长度

0x0101 – 0x01FF

实验

0x0600

XEROX NS IDP

0x0660 
0x0661

DLOG

0x0800

网际协议(IP)

0x0801

X.75 Internet

0x0802

NBS Internet

0x0803

ECMA Internet

0x0804

Chaosnet

0x0805

X.25 Level 3

0x0806

地址解析协议(ARP : Address Resolution Protocol)

0x0808

帧中继 ARP (Frame Relay ARP) [RFC1701]

0x6559

原始帧中继(Raw Frame Relay) [RFC1701]

0x8035

动态 DARP (DRARP:Dynamic RARP)
反向地址解析协议(RARP:Reverse Address Resolution Protocol)

0x8037

Novell Netware IPX

0x809B

EtherTalk

0x80D5

IBM SNA Services over Ethernet

0x 80F 3

AppleTalk 地址解析协议(AARP:AppleTalk Address Resolution Protocol)

0x8100

以太网自动保护开关(EAPS:Ethernet Automatic Protection Switching)

0x8137

因特网包交换(IPX:Internet Packet Exchange)

0x 814C

简单网络管理协议(SNMP:Simple Network Management Protocol)

0x86DD

网际协议v6 (IPv6,Internet Protocol version 6)

0x880B

点对点协议(PPP:Point-to-Point Protocol)

0x 880C

通用交换管理协议(GSMP:General Switch Management Protocol)

0x8847

多协议标签交换(单播) MPLS:Multi-Protocol Label Switching )

0x8848

多协议标签交换(组播)(MPLS, Multi-Protocol Label Switching )

0x8863

以太网上的 PPP(发现阶段)(PPPoE:PPP Over Ethernet )

0x8864

以太网上的 PPP(PPP 会话阶段) (PPPoE,PPP Over Ethernet)

0x88BB

轻量级访问点协议(LWAPP:Light Weight Access Point Protocol)

0x88CC

链接层发现协议(LLDP:Link Layer Discovery Protocol)

0x8E88

局域网上的 EAP(EAPOL:EAP over LAN)

0x9000

配置测试协议(Loopback)

0x9100

VLAN 标签协议标识符(VLAN Tag Protocol Identifier)

0x9200

VLAN 标签协议标识符(VLAN Tag Protocol Identifier)

0xFFFF

保留




版权声明:本文为博主原创文章,未经博主允许不得转载。

以太网MAC帧格式

常用的以太网MAC帧格式有两种标准 : DIX Ethernet V2 标准 IEEE 的 802.3 标准 最常用的 MAC 帧是以太网V2的格式 类型字段 ...
  • huihuang1515
  • huihuang1515
  • 2013年10月17日 00:57
  • 6326

3.HCNA-HNTD——以太网帧结构

网络中传输数据时需要定义并遵循一些标准,以太网是根据IEEE 802.3标准来管理和控制数据帧的。了解IEEE802.3标准时充分理解以太网中链路层通信的基础。 学习目标: 理解分层模型的作用 掌握...
  • wdkirchhoff
  • wdkirchhoff
  • 2015年02月23日 11:36
  • 6085

TCP/IP详解--数据链路层 & 以太网帧格式

链路层上最常见的封装就是以太网和IEEE 802封装,这里就使用以太网作为讲解的对象。 一、以太网帧格式         以太网的帧格式才有6字节的目的地址和源头地址。帧长度字段是指它后续数据的...
  • yusiguyuan
  • yusiguyuan
  • 2014年04月02日 11:08
  • 6540

学习整理——以太帧、ip帧、udp/tcp帧、http报文结构

从最简单的一个http请求开发,根据TCP/IP协议,分开来看每一层的数据帧结构,以及它们是怎样承担起网络服务得。 协议栈 因特网协议栈共有五层: 1.应用层,是网络应用程序及其应用层协议存留的地方。...
  • Jeffery_Gong
  • Jeffery_Gong
  • 2016年04月28日 09:56
  • 14638

2.6.28内核以太网帧接收时的流量控制

2.6.28内核的接收拥塞控制比Understanding Linux Network Internals中所描述的已经简化了很多 这里给出一个简单描述 首先是内核结构成员的变化 1.每cpu变量s...
  • yiyeguzhou100
  • yiyeguzhou100
  • 2016年07月20日 09:32
  • 831

自己动手学TCP/IP--以太网帧

数据链路层主要的功能 把网络层的包封装成帧 对帧的校验和确认 流量的控制 数据链路层生成以太网帧,以太网帧的主要格式如下。 太网帧的传输大小是由传输媒介决定的...
  • firefoxbug
  • firefoxbug
  • 2012年07月19日 14:43
  • 7652

以太网帧,IP,TCP,UDP首部结构

1.以太网帧的格式以太网封装格式2.IP报头格式  IP是TCP/IP协议簇中最为重要的协议。所有的TCP,UDP, ICMP和IGMP数据都以IP数据报格式传输。IP提供的是不可靠、无连接的协议。 ...
  • wangtingyao1990
  • wangtingyao1990
  • 2016年10月13日 18:31
  • 1864

如何使用Windows C++发送以太网(Ethernet)帧

Objective To send an arbitrary Ethernet frame using an AF_PACKET socket Background Ethernet is ...
  • srzhz
  • srzhz
  • 2012年08月16日 10:03
  • 5206

为什么传统以太网最小帧长度是64字节

概念说明: 这里说的传统以太网是指10M以太网
  • wangjian20095356
  • wangjian20095356
  • 2014年11月22日 18:49
  • 630

python 使用Raw Socket进行以太网帧注入

1. 帧注入  对于以太网帧和Raw Socket的介绍可参考之前的一篇博文利用Raw Socket进行以太网帧嗅探。帧注入的特点:    可以将原数据格式的包注入到网络中。 在模拟网络应答方面很强...
  • Jeanphorn
  • Jeanphorn
  • 2015年05月09日 10:40
  • 6474
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:以太网帧
举报原因:
原因补充:

(最多只允许输入30个字)