Ethernet帧结构解析
第02章 Ethernet帧结构解析-2
8 字节
7 字节 10101010101010 1 字节
MAC 帧
物理层
… 10101010101010101011
帧开始 定界符
计算机硬件基础教学中心
前同步码
Copyright © by LIPENG All rights reserved.
帧结构解析
1、以太网的MAC层
以太网 V2 的格式
局域网介绍
2、局域网概述
局域网技术发展的过程
Copyright © by LIPENG All rights reserved.
计算机硬件基础教学中心
局域网介绍
2、局域网概述
最早的Ethernet原理设计图
Copyright © by LIPENG All rights reserved.
计算机硬件基础教学中心
局域网介绍
1、IEEE 802 标准
ISO/OSI-RM
7 6 5 4 3 2 1 应用层 表示层 会话层 传输层 网络层 数据 链路层 物理层
UTP 同轴电缆 光缆
Copyright © by LIPENG All rights reserved.
802.10 网络安全
802.1 802.2
帧开始 定界符
计算机硬件基础教学中心
前同步码
Copyright © by LIPENG All rights reserved.
帧结构解析
1、以太网的MAC层
以太网 V2 的格式
IP 数据报 字节 以太网 V2 MAC 帧 插入 6 目的地址 6 源地址 2 类型 数 46 ~ 1500 据 4 FCS MAC 层 IP 层
• 随机接入:所有的用户可随机地发送信息。 • 受控接入:如多点线路探询(polling),或轮询。
ethernet的拓扑结构
ethernet的拓扑结构
以太网是一种常见的局域网技术,它可以采用不同的拓扑结构来连接设备。
常见的以太网拓扑结构包括总线型、星型和环型。
首先,总线型拓扑结构是指所有设备都连接到同一根传输介质(通常是一根电缆),设备通过共享这根传输介质来进行通信。
在总线型拓扑结构中,所有设备可以看到在传输介质上发送的所有数据帧,但每个设备只能接收并处理发送给它的数据帧。
其次,星型拓扑结构是指所有设备都连接到一个集线器或交换机,集线器或交换机起到中继数据的作用。
在星型拓扑结构中,每个设备通过独立的链路与集线器或交换机相连,这样可以提高网络的可靠性和扩展性。
最后,环型拓扑结构是指每个设备都与相邻的两个设备相连,形成一个闭合的环路。
在环型拓扑结构中,数据帧沿着环路传输,每个设备都可以接收并发送数据帧。
这种拓扑结构通常使用双绞线或光纤作为传输介质。
除了这些常见的以太网拓扑结构外,还有混合拓扑结构,即将
不同的拓扑结构组合在一起,以满足特定的网络需求。
例如,一个大型以太网网络可能会采用星型拓扑结构的子网,而这些子网之间则采用总线型或环型拓扑结构相连。
总的来说,以太网可以根据不同的拓扑结构来构建局域网,每种拓扑结构都有其特点和适用场景,网络管理员需要根据实际情况选择合适的拓扑结构来搭建网络。
以太网(Ethernet)的帧结构
以太网(Ethernet)的帧结构
1.Ethernet V2.0帧结构 2. IEEE802.3帧结构 3. Ethernet V2.0帧结构组成详解
Ethernet V2.0帧结构
帧前 帧校 前导 目的 源地 数据 定界 验字 类型 码 地址 址 字段 符 段 46~1 7B 1B 6B 6B 2B 4B 500B 注:Ethernet帧的最小长度为64B,最大长 度为1518B。(前导码与帧前定界符不计入 帧头长度中)
前导码与帧前定界符字段
前导码的组成: 前导码的组成:56位(7B)10101010…10 1010比特序列。 作用: 作用:提醒接收系统有帧的到来,以及使到来的 帧与计时器进行同步。 帧前定界符的组成: 帧前定界符的组成:8位(1B)10101011比特 序列。 作用: 作用:表示下面的字段是目的地址。
数据字段
数据字段的组成: 数据字段的组成:长度在46~1500B之间的比 特序列。 特点: 特点:如果数据的长度少于46B,需要加填充 字节,补充到46B。填充字节是任意的,不计 入长度字段中。
帧校验字段
帧校验字段的组成: 32位 4B)比特序列。 帧校验字段的组成: 32位(4B)比特序列。 特点: 特点:采用CRC校验。校验的范围包括目的地 址字段,源地址字段,类型字段,数据字段。 在接收端进行校验,如果发生错误,帧将被丢 弃。 32位CRC校验的生成多项式为: G(x) =x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4 +x2+x1+1
பைடு நூலகம்
以太网(Ethernet)的帧结构
以太网(Ethernet)的帧结构
1.Ethernet V2.0帧结构 2. IEEE802.3帧结构 3. Ethernet V2.0帧结构组成详解
Ethernet V2.0帧结构
帧前 帧校 前导 目的 源地 数据 定界 验字 类型 码 地址 址 字段 符 段 46~1 7B 1B 6B 6B 2B 4B 500B 注:Ethernet帧的最小长度为64B,最大长 度为1518B。(前导码与帧前定界符不计入 帧头长度中)
IEEE802.3帧结构
帧前 帧校 前导 目的 源地 数据 定界 验字 长度 码 地址 址 字段 符 段 46~1 7B 1B 6B 6B 2B 4B 500B
Ethernet V2.0帧结构组成详解
1)前导码与帧前定界符字段 ) 2)目的地址和源地址字段 ) 3)类型字段 ) 4)数据字段 5)帧校验字段
数据字段
数据字段的组成: 数据字段的组成:长度在46~1500B之间的比 特序列。 特点: 特点:如果数据的长度少于46B,需要加填充 字节,补充到46B。填充字节是任意的,不计 入长度字段中。
帧校验字段
帧校验字段的组成: 32位 4B)比特序列。 帧校验字段的组成: 32位(4B)比特序列。 特点: 特点:采用CRC校验。校验的范围包括目的地 址字段,源地址字段,类型字段,数据字段。 在接收端进行校验,如果发生错误,帧将被丢 弃。 32位CRC校验的生成多项式为: G(x) =x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4 +x2+x1+1
以太网帧结构详解
以太⽹帧结构详解⽹络通信协议⼀般地,关注于逻辑数据关系的协议通常被称为上层协议,⽽关注于物理数据流的协议通常被称为低层协议。
IEEE802就是⼀套⽤来管理物理数据流在局域⽹中传输的标准,包括在局域⽹中传输物理数据的802.3以太⽹标准。
还有⼀些⽤来管理物理数据流在使⽤串⾏介质的⼴域⽹中传输的标准,如帧中继FR(FrameRelay),⾼级数据链路控制HDLC(High-LevelDataLinkControl),异步传输模式ATM(AsynchronousTransferMode)。
分层模型0OSI国际标准化组织ISO于1984年提出了OSIRM(OpenSystemInterconnectionReferenceModel,开放系统互连参考模型)。
OSI参考模型很快成为了计算机⽹络通信的基础模型。
OSI参考模型具有以下优点:简化了相关的⽹络操作;提供了不同⼚商之间的兼容性;促进了标准化⼯作;结构上进⾏了分层;易于学习和操作。
OSI参考模型各个层次的基本功能如下:物理层:在设备之间传输⽐特流,规定了电平、速度和电缆针脚。
数据链路层:将⽐特组合成字节,再将字节组合成帧,使⽤链路层地址(以太⽹使⽤MAC地址)来访问介质,并进⾏差错检测。
⽹络层:提供逻辑地址,供路由器确定路径。
传输层:提供⾯向连接或⾮⾯向连接的数据传递以及进⾏重传前的差错检测。
会话层:负责建⽴、管理和终⽌表⽰层实体之间的通信会话。
该层的通信由不同设备中的应⽤程序之间的服务请求和响应组成。
表⽰层:提供各种⽤于应⽤层数据的编码和转换功能,确保⼀个系统的应⽤层发送的数据能被另⼀个系统的应⽤层识别。
应⽤层:OSI参考模型中最靠近⽤户的⼀层,为应⽤程序提供⽹络服务。
分层模型-TCP/IPTCP/IP模型同样采⽤了分层结构,层与层相对独⽴但是相互之间也具备⾮常密切的协作关系。
TCP/IP模型将⽹络分为四层。
TCP/IP模型不关注底层物理介质,主要关注终端之间的逻辑数据流转发。
常见以太网帧结构详解
常见以太网帧结构详解以太网是一个常用的局域网技术,其数据传输是以帧的形式进行的。
以太网帧是以太网数据传输的基本单位,通过帧头、帧数据和帧尾等部分来描述有效载荷的数据。
以太网帧的结构如下:1. 帧前同步码(Preamble):以太网帧的开始部分有7个字节的帧前同步码,其作用是为接收端提供定时的参考,帮助接收端进行帧同步。
2.帧起始界定符(SFD):帧前同步码之后的1字节帧起始界定符为0x55,标志着以太网帧的开始。
3. 目标MAC地址(Destination MAC Address):目标MAC地址占6个字节,表示帧的接收者的MAC地址。
4. 源MAC地址(Source MAC Address):源MAC地址占6个字节,表示帧的发送者的MAC地址。
5. 长度/类型字段(Length/Type Field):长度/类型字段占2个字节,当该字段的值小于等于1500时,表示以太网帧的长度;当该字段大于等于1536时,表示该字段定义了帧中的协议类型。
6. 帧数据(Data):帧数据部分是以太网帧的有效载荷,其长度为46到1500字节,不包括帧头和帧尾。
7. 帧校验序列(Frame Check Sequence,FCS):帧校验序列占4个字节,主要用于对帧进行错误检测,以保证数据的可靠性。
8. 帧尾(Frame Check Sequence,FCS):帧尾占4个字节,用于标识以太网帧的结束。
以太网帧的长度为64到1518字节,其中有效载荷部分数据长度为46到1500字节,不同帧的长度可以根据网络需求进行调整。
在发送以太网帧时,发送方会在帧尾的后面添加额外的字节以保证整个帧的长度达到最低限制。
这些额外的字节即填充字节(Padding),用于使帧长达到最小限制的要求。
以上是以太网帧的常见结构,它描述了以太网帧的各个部分的作用和位置。
了解以太网帧的结构对于理解以太网的工作原理和网络通信非常重要。
数据链路层帧结构解析(精品)
对模拟帧结构的解析一、编制程序的目的目的是应用数据链路层与介质访问控制子层的知识,根据数据链路层的基本原理,通过解析已封装好的Ethernet 帧,了解Ethernet 帧结构的各个字段的含义,从而深入理解Internet 协议族中的最底层协议——数据链路层协议。
也为后续的实验积累编程经验。
1.1前期准备:1.1.1 CRC-8按字节查表检验算法将字节序列按字节可写成:∑=ni i B D 082,按照CRC 原理,对D 左移8位,然后用生成多项式G 除,G 是16位的。
∑=n i GB GD i 0822288 (1),令GR n GB n n Q +=82,代入(1)式得∑--+++=-2082)1(8228222)(288188n i GB n GB GR n n G D i n n Q (2),令GR GR GR nL nH n +=8228,其中,nH R ,nL R 分别是n R 的高8位,低8位,代入(2)式,得:∑--++++=-208)1(8228222)(28188n i GB n GB R GR nn GD in nH nL Q (3)此时,可令GR n GB R GR n n nH nL Q 1818122--+=+-+ (4)则(3)式为:∑----+++=-208)2(82)1(81822222818n i GB n GR n n n n G D in Q Q (5)类推,将得到:GR n n n n nn G D Q Q Q Q 080)2(82)1(8182 (222)+++++=---- (6)由(6)式知,即第n-1字节的CRC 余码 = 第n 字节CRC 余码低8位 + 第n 字节CRC 余码高8位与第n-1字节和的CRC 余码。
这个结论正是参考文献3告诉我们的方法推出的结论。
二、程序说明 2.1 思路结合给定的模拟帧结构定义相应得数据结构(帧类),并定义一个帧装载类。
Ethernet帧详解
Ethernet帧详解一、Ethernet帧发展史:1.1980年DEC、Inter、Xerox制订了Ethernet I标准;2.1982年DEC、Inter、Xerox又制订了Ethernet II标准,即DIX 2.0,Cisco称为ARPA;3.1982年IEEE开始研究Ethernet的国际标准802.3;4.1983年Noverll公布了专用以太网标准帧格式,Cisco称为Novell-Ether;5.1985年IEEE公布Ethernet 802.3的SAP版本以太网帧格式,Cisco称为:SAP;6.1985年IEEE公布Ethernet 802.3的SNAP版本以太网帧格式,Cisco称为:SNAP;二、Ethernet四种帧格式:目前,Ethernet有四种不同格式的以太网帧在使用,它们分别是:1.Ethernet IIEthernet II即DIX2.0,由DEC、Inter和Xerox在1982年公布的标准。
主要更改了Ethernet I的电气特性和物理接口,在帧格式上并无变化。
Ethernet II出现后迅速取代Ethernet I成为以太网标准。
Cisco名称为ARPA。
帧格式:报头8+目标地址6+源地址6+类型2+数据46-1500+帧检验序列4(1)报头:8个字节,前7个为0、1交替的字节(10101010)用来同步接收站,一个10101011字节指出帧的开始位置。
报头提供接收器同步和帧定界服务。
(2)目标地址:6个字节,单播、多播或者广播。
广播地址全为(0xffffffffffff)。
(3)源地址:6个字节,指出发送节点的单点广播地址。
(4)类型:2个字节,用来指出以太网帧所携带的上层数据类型。
即帧格式的协议标识符(0x0800代表IP报文,0x0806代表ARP)。
(5)数据:由一个上层协议的协议数据单元PDU构成。
可以发送的最大有效负载是1500字节。
由于以太网的冲突检测特性,有效负载至少是46个字节。
以太网帧结构
一、前序字段
2.3)字节的交替出现的1和0组成,设置该字段的目的是指示帧的开始并便于网络中的所有接收器均能与到达帧同步,另外,该字段本身(在Ethernet II中)或与帧起始定界符一起(在IEEE802.3中)能保证各帧之间用于错误检测和恢复操作的时间间隔不小于9.6毫秒。
二、帧起始定界符字段
该字段仅在IEEE802.3标准中有效,它可以被看作前序字段的延续。实际上,该字段的组成方式继续使用前序字段中的格式,这个一个字节的字段的前6个比特位置由交替出现的1和0构成。该字段的最后两个比特位置是11,这两位中断了同步模式并提醒接收后面跟随的是帧数据。
当控制器将接收帧送入其缓冲器时,前序字段和帧起始定界符字段均被去除。类似地当控制器发送帧时,它将这两个字段(如果传输的是IEEE802.3帧)或一个前序字段(如果传输的是真正的以太网帧)作为前缀加入帧中。
七、数据字段
如前所述,数据字段的最小长度必须为46字节以保证帧长至少为64字节,这意味着传输一字节信息也必须使用46字节的数据字段:如果填入该该字段的信息少于46字节,该字段的其余部分也必须进行填充。数据字段的最大长度为1500字节。
八、校验序列字段
既可用于Ethernet II又可用于IEE802.3标准的帧校验序列字段提供了一种错误检测机制,每一个发送器均计算一个包括了地址字段、类型/长度字段和数据字段的循环冗余校验(CRC)码。发送器于是将计算出的CRC填入四字节的FCS字段。
在IEEE802.3标准中类型字段被替换为长度字段,因而Ethernet II帧和IEEE802.3帧之间不能兼容。
列出ethernet v2标准的数据帧的5个字段
列出ethernet v2标准的数据帧的5个字段
以太网V2 标准的数据帧通常包括以下五个字段:
1. 目的地址(Destination Address):占用6 个字节,表示数据帧的目的MAC 地址,即数据帧应该被发送到的目标设备的MAC 地址。
2. 源地址(Source Address):占用6 个字节,表示数据帧的源MAC 地址,即发送数据帧的设备的MAC 地址。
3. 类型/长度(Type/Length):占用2 个字节,用于指示数据帧中数据部分的类型或长度。
当该字段的值大于0x05DC(即1500),表示该字段表示数据的类型,当该字段的值小于等于0x05DC,则表示该字段表示数据的长度。
4. 数据(Data):占用最少46 个字节,最多1500 个字节,包含了实际的数据内容。
5. 帧校验序列(Frame Check Sequence,FCS):占用4 个字节,用于存储数据帧的差错校验码,通常使用CRC 校验算法计算得出。
这些字段构成了以太网V2 标准的数据帧的基本结构。
在实际数据帧中,还可能包括其他一些字段,如VLAN 标签、帧间隔等,但上述五个字段是构成以太网V2 数据帧的基本要素。
需要注意的是,以太网数据帧的具体结构可能会因不同的以太网标准(如以太网II、IEEE 802.3)而有所不同,上述描述是针对以太网V2 标准的数据帧。
以太网帧结构-华为-HCIA
IEEE:电气与电子工程师协会ISO:国际标准化组织协议栈:OSI :ISO国际标准组织制定TCP/IP:美国国防部制定IPX/SPXSNA局域网: IEEE802 以太网广域网: PPP HDLC分层模型-OSI应用层 ------- 直接面向用户,为应用程序提供网络服务(APDU)表示层 ------- 对应用层产生的数据进行格式化,加密,解密之类的操作(PPDU)会话层 ------- 建立,维护,删除,管理会话连接(SPDU)传输层 ------- 建立一个面向连接(TCP)或非面向连接(UDP)的端到端的连接,该连接是逻辑存在的(数据段)网络层 -------- IP路由寻址,报文重组(数据包)数据链路层 ------- 控制网络层和物理层之间通讯。
打上帧头帧尾,将数据包封装成数据帧。
(数据通过链路层承载)物理层 ------- 比特流传输,将数据帧以比特流的形式在物理介质中进行传输分层模型-TCP/IP数据封装 (从上往下) 解封(从下往上)应用层 ----- 对应OSI七层模型上三层PDU(数据单元)传输层 ----- 对应OSI七层模型传输层Segmet(数据段)网络层 ----- 对应OSI七层模型网络层Packet(数据包)网络接口层 ----- 对应OSI七层模型数据链路层与物理层Frame(数据帧)bit(比特流)数据封装过程:数据是由应用层产生,经过表示层对数据进行格式化,加密等处理后形成PDU,交由会话层,会话层建立一个不同设备间应用程序的会话,再交给传输层,传输层打上传输层头部(源目端口号),建立一个端到端的连接,形成数据段,交给网络层处理,网络层打上IP头部,形成数据包,将数据包交给数据链路层打上帧头和帧尾,将数据包封装成数据帧,再将数据帧以比特流的形式在物理层中进行传输。
数据解封装过程:将比特流转化成字节形式的数据帧,先拆帧头查看数据帧的MAC地址,若不是自己就丢弃,若是则继续拆帧尾查看数据帧的完整性,不完整就丢弃,若完整则交由网络层,网络层拆IP头,查看目的IP是否为自己,若不是自己就进行路由寻址,将数据包进行重封装并转发,若是则交由传输层,传输层拆传输层头部,查看数据帧的目的端口号,将数据段交由对应的应用程序提供对应的服务。
数字传输系统帧结构
数字传输系统帧结构数字传输系统的帧结构可以根据不同的协议和应用而有所不同。
以下是一般数字传输系统的常见帧结构:1. SDH(同步数字系列层次结构)帧结构:SDH是一种同步光纤传输技术,它的帧结构包括多个层次。
其中,最常见的SDH帧结构是STM-1(Synchronous Transport Module level-1),它的帧周期是125微秒。
STM-1帧结构如下:```- 9行270 列的容器(Container)- 3行90 列的终端传输容器(Tributary Unit)```2. SONET(同步光网络)帧结构:SONET是SDH的北美版本,其帧结构也有多个层次。
最常见的SONET帧结构是STS-1(Synchronous Transport Signal level-1),它的帧周期是125微秒。
STS-1帧结构如下:```- 3个12行90 列的VT(Virtual Tributary)容器- 1个9行90 列的STU(Synchronous Transport Unit)容器```3. Ethernet 帧结构:在以太网中,数据帧的结构是最为常见的。
一个标准的以太网帧结构如下:```-前导码:标志着数据帧的开始-目的MAC地址:接收数据的设备MAC地址-源MAC地址:发送数据的设备MAC地址-长度/类型字段:指示数据字段长度或指明上层协议类型-数据字段:携带传输的数据-帧校验序列:用于检测数据传输过程中的错误```需要注意的是,不同的数字传输系统和网络协议会有不同的帧结构,而且不同的帧结构适用于不同的数据传输需求。
上述提到的帧结构仅仅是其中的一部分,具体的帧结构会根据传输系统的要求和协议规范来设计。
以太网帧格式分析
的IP,而MAC地址是伪造的,则当A接收到伪造的ARP应答后,就会更新本地的ARP缓存,这样在A 看来B的IP地址没有变,而它的MAC地址已经不是原来那个了。
由于局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输。
所以,那个伪造出来的MAC地址在A上被改变成一个不存在的MAC地址,这样就会造成网络不通,导致A不能Ping通B!这就是一个简单的ARP欺骗。
【实验体会】这次实验最大的感触是体会到了网络通信过程的趣味性。
在做ping同学IP的实验时,我发现抓到的包之间有紧密的联系,相互的应答过程很像实际生活中人们之间的对话。
尤其是ARP帧,为了获得对方的MAC地址,乐此不疲地在网络中广播“谁有IP为XXX的主机?”,如果运气好,会收到网桥中某个路由器发来的回复“我知道,XXX的MAC地址是YYY!”。
另外,通过ping同学主机的实验,以及对实验过程中问题的分析,使我对之前模糊不清的一些概念有了全面的认识,如交换机、路由器的区别与功能,局域网各层次的传输顺序与规则等。
还有一点就是,Wireshark不是万能的,也会有错误、不全面的地方,这时更考验我们的理论分析与实践论证能力。
成绩优良中及格不及格教师签名:日期:【实验作业】1 观察并分析通常的以太网帧1.1 以太网帧格式目前主要有两种格式的以太网帧:Ethernet II(DIX 2.0)和IEEE 802.3。
我们接触过的IP、ARP、EAP和QICQ协议使用Ethernet II帧结构,而STP协议则使用IEEE 802.3帧结构。
Ethernet II是由Xerox与DEC、Intel(DIX)在1982年制定的以太网标准帧格式,后来被定义在RFC894中。
IEEE 802.3是IEEE 802委员会在1985年公布的以太网标准封装结构(可以看出二者时间相差不多,竞争激烈),RFC1042规定了该标准(但终究二者都写进了IAB管理的RFC文档中)。
以太网之帧结构
以太网的帧结构分两种:第一种是Ethernet_II的帧结构,如下图所示:| DMAC(6byte) | SMAC(6byte) | Type(2byte) | Data(46~1500byte) | CRC(4byte) |DMAC:指(destination mac)目的地址,即是接收信息设备的物理地址。
SMAC:指(source MAC)源地址,即是发送信息设备的物理地址。
Type:用来标识data字段中包含的高层协议,即是通告接收信息的设备如何解释该数据字段(数据的封装都是从应用层到低层逐渐添加的,在数据链路层以上的数据都封装在了data字段中)。
其中:(1)IP协议帧该字段为0800(2)ARP协议帧该字段为0806(3)RARP协议帧该字段为0835(4)IPX和SPX协议帧该字段为8137。
Data:数据字段,上层下到本层的数据都被包含到了这里面。
前面讲到,它必须大于46字节,但必须小于1500字节。
CRC:(Cyclic Redundancy CHeck)即是循环冗余校验字段。
发送数据的设备会提供一个包含MAC字段、Type字段、Data字段的CRC码,然后计算出CRC 码填入到该处,起到错误检测控制的功能。
第二种是IEEE802.3的帧结构,如下如所示:| DMAC(6byte) | SMAC(6byte) | Length(2byte)|llC(3byte) |Data(43~1497byte) | CRC(4byte) |DMAC、SMAC、Data和CRC字段不再赘述。
这种帧结构用length字段替代了type字段,并从Data字段中划出了3byte 作为LLC字段,作为服务访问点(SAP)的新区域来解决识别上层协议的问题。
Length:即是长度字段,记录Data字段的长度。
LLC:由目的服务访问点DSAP(Destination Service Access Point)、源服务访问点SSAP(Source Service Access Point)和Control字段组成,分别占有1byte。
实验1以太网链路层帧格式分析
实验1以太网链路层帧格式分析实验1 以太网链路层帧格式分析1.1 实验目的和要求? 分析Ethernet V2标准规定的MAC层帧结构; ? 了解IEEE802.3标准规定的MAC 层帧结构; ? 掌握TCP/IP的主要协议和协议的层次结构。
1.2 实验设备安装有Ethereal软件和windows操作系统的微机系统。
1.3 实验内容1、通过对截获帧进行分析,分析和验证Ethernet V2标准和IEEE802.3标准规定的MAC层帧结构,初步了解TCP/IP的主要协议和协议的层次结构。
2、分析以太网数据帧结构1.4 实验步骤:内容一:1. 打开PCA和PCB的Message服务,方法:控制面板――管理工具――服务――找到message,选开启2. 在PCA和PCB上运行Ethereal截获报文,然后进入PCA的Windows命令行窗口,执行如下命令: net send PCB的IP地址“hello”(或者采用ping命令),这是PCA向PCB发送消息的命令,等到PCB显示器上收到消息后,终止截获报文,将截获报文命名为HELLO―学号。
3. 对截获的报文进行分析:捕获窗口显示分为三个部分:数据包列表区、协议树区和十六进制对照区。
找到发送消息的报文并进行分析,研究主窗口中的数据报文列表窗口和协议树窗口信息,填写下表。
此报文类型此报文基本信息(数据报文列表窗口中Information项内容)EthernetⅡ协议树中 Source字段值 Destination字段值Internet Protocol协Source字段值议树中 TCP协议树中 Destination字段值Source Port字段值 Destination Port字段值应用层协议树协议名称包含Hello 的字段名 3、分析此报文信息中,源主机和目的主机的MAC地址分别是多少?内容二:4. 运行Ethereal截获报文5. 打开“命令提示符”窗口,使用“Ping”命令测试本机与网关的连通性。
以太网帧格式
以太网帧格式详解Etherne II报头8 目标地址6 源地址6 以太类型2 有效负载46-1500 帧检验序列4 报头:8个字节,前7个0,1交替的字节(10101010)用来同步接收站,一个1010101011字节指出帧的开始位置。
报头提供接收器同步和帧定界服务。
目标地址:6个字节,单播、多播或者广播。
单播地址也叫个人、物理、硬件或MAC地址。
广播地址全为1,0xFF FF FF FF。
源地址:6个字节。
指出发送节点的单点广播地址。
以太网类型:2个字节,用来指出以太网帧内所含的上层协议。
即帧格式的协议标识符。
对于IP报文来说,该字段值是0x0800。
对于ARP信息来说,以太类型字段的值是0x0806。
有效负载:由一个上层协议的协议数据单元PDU构成。
可以发送的最大有效负载是1500字节。
由于以太网的冲突检测特性,有效负载至少是46个字节。
如果上层协议数据单元长度少于46个字节,必须增补到46个字节。
帧检验序列:4个字节。
验证比特完整性。
IEEE 802.3根据IEEE802.2 和802.3标准创建的,由一个IEEE802.3报头和报尾以及一个802.2LLC报头组成。
报头7 起始限定符1 目标地址6(2)源地址6(2)长度2 DSAP1 SSAP1 控件2 有效负载3 帧检验序列4-----------802.3报头--------------§---802.2报头----§ §-802.3报尾-§IEEE802.3报头和报尾报头:7个字节,同步接收站。
位序列10101010起始限定符:1个字节,帧开始位置的位序列10101011。
报头+起始限定符=Ethernet II的报头目标地址:同Ethernet II。
也可以为2个字节,很少用。
源地址:同Ethernet II。
也可以为2个字节,很少用。
长度:2个字节。
帧检验序列:4个字节。
IEEE802.2 LLC报头DSAP:1个字节,指出帧的目标节点的上层协议。
第二次作业Ethernet帧结构解析
第二次作业Ethernet帧结构解析1.背景知识帧是网络通信的大体传输单元,熟悉帧结构对于理解网络协议的概念、协议执行进程和网络层次结构具有重要的意义。
本次作业的目的是应用数据链路层与介质访问控制子层的知识,按照数据链路层的大体原理,通过解析已封装好的Ethernet帧,了解Ethernet帧结构的各个字段的含义,从而深切理解Internet协议族中的最底层协议——数据链路层协议。
1980年,Xerox、DEC与Intel等三家公司合作,第一次发布了Ethernet的物理层、数据链路层规范;1981年Ethernet 规范发布;IEEE 标准是在Ethernet 规范的基础上制定的,IEEE 针对整个CSMA/CD网络,它的制定推动了Ethernet技术的进展和普遍应用。
Ethernet 规范和标准中的Ethernet帧结构有一些不同,这里咱们按标准的帧结构进行讨论。
图2-1给出了Ethernet帧结构图。
图1-1 Ethernet帧结构如上图所示,标准的Ethernet帧结构由6部份组成。
1)前导码和帧前定界符字段前导码由56位(7B)的…1010比特序列组成,帧前定界符由一个8位的字节组成,其比特序列为。
前导码与帧前定界符主要起到接收同步的作用,这8个字节接收后不需要保留,也不计入帧头长度中。
2)目的地址和源地址目的地址与源地址均别离表示帧的接收结点与发送结点的硬件地址。
硬件地址一般称作MAC地址或物理地址。
在Ethernet帧中,目的地址和源地址字段长度能够是2B或6B。
初期的Ethernet曾经利用过2B长度的地址,可是目前所有的Ethernet都利用6B(即48位)长度的地址。
为了方便起见,通常利用16进制数书写(例如,00-13-d3-a2-42-a8)。
3)长度字段标准中的帧用2B 概念了数据字段包括的字节数。
长度字段描述了LLC 数据的实际长度。
4) LLC 数据字段协议规定LLC 数据的长度在46B 与1500B 之间。
实验3 分析Ethernet II帧
实验3 分析Ethernet II帧1.实验目的:1)掌握使用Wireshark分析俘获的踪迹文件的基本技能;2)深刻理解Ethernet II帧结构。
2.实验内容:1)分析俘获的或踪迹文件中的Ethernet II帧结构;2)分析以太帧结构。
3.实验环境:1)Win7x86便携式笔记本;2)Realtek PCIe GBE Family Controller;3)Wireshark 1.11.2。
4.实验步骤:1)用Wireshark 俘获网络上收发分组或者打开踪迹文件,选取感兴趣的帧进行分析。
如图选取地141号帧进行分析。
在首部细节信息栏中,可以看到有关该帧到达时间、帧编号、帧长度、帧中协议和着色方案等信息。
为了进一步分析Ethernet II帧结构,点击首部细节信息栏中的“Ethernet II”行,有关信息如下图所示:其中看到源MAC地址为(f0:4d:a22:42:47:bc),目的MAC地址为(6c:e8:73:1e:37:5e);以太类型字段中值为0x0800,表示该帧封装了IP数据报;以及MAC地址分配的相关信息。
2)分析以太帧结构将计算机联入网络,打开Wireshark俘获分组,从本机向选定的Web服务器发送Ping报文。
回答下列问题:(1)本机的48比特以太网MAC地址是什么?(2)以太帧中目的MAC地址是什么?它是你选定的远地Web服务器Mac地址吗?那么,该地址是什么设备的MAC地址呢?(3)给出2字节以太类型字段的十六进制的值。
它表示以太帧包含了什么样的协议?上网查找如果期中封装的IPv6协议,其值应为多少?用本机Ping报文,用CMD使用命令ping –t发送Ping报文接下来用wireshark俘获报文本机的48比特以太网MAC地址是f0:4d:a22:42:47:bc以太网帧目的地址6c:e8:73:1e:37:5e,不是选定的远地Web服务器MAC地址,是IP包下一跳所要到达的网络设备的MAC地址。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.3 CRC 校验
CRC 是一类重要的线性分组码,编码和解码方法简 单,检错和纠错能力强。 它是目前应用最广泛的检错编码方法之一,广泛应 用于通信和测控领域。 原理
在发送端用生成多项式 G (x) 去除发送数据多项式 f (x) , 求得一个余数多项式。将余数多项式附在数据多项式之后 发送到接收端 在接收端用同样的生成多项式 G (x) 去除接收数据多项式 f (x) ,得到计算余数多项式 通过计算余数多项式与接收余数多项式是否相同来判断是 否在传输过程中出现差错
2013年3月4日 7
4
1
2.3.3 CRC-4 生成校验码算法
设 12 位待发比特序列 100100011100 , CRC-4 多项式系 数为 10011 ,求校验码。 由 CRC-4 知,其校验码 r 为 4 位,在待发序列后补充 4 位 0 ,得初始码为 1001000111000000 用初始码除以生成多项式系数,得到余数多项式系数
100010000100 ————————— 10011 ⌡ 1001000111000000 10011 ———————— 100111000000 10011 —————— 1000000 10011 ———— 1100
余数多项式系数为 1100 ,故发送 1001000111001100 CRC 编码过程实际上是循环移位的模 2 运算
XOR
xor ←0+0 ←0+1 ←0+0 ←0+1 ←0+0 ←0+0 ←0+0 ←0+0 ←1+0 ←0+1 ←1+0 ←0+1
R0
R0 0 1 0 1 0 0 0 0 0 1 0 1 0 0
XOR 输入
xor ←0+1 ←0+0 ←0+1 ←0+0 ←0+0 ←0+0 ←0+0 ←0+0 ←1+0 ←0+0 ←1+0 ←0+0 输入 清零 1 0 1 0 0 0 0 0 0 0 0 0 0
开始 Register8=0, Input 后填 8 位 0
数据处理完?
Y
N N
Register8 <<=1 Register8 首位 ==1 ? 结束
Y
Register8 <<=1
N
Input 1 位新数据 ==1 ?
Y
Register8 最低位 = 1
Input 1 位新数据 ==1 ?
N
Y
Register8 最低位 = 1 Register8 ^=0x7 2013年3月4日 13
2013年3月4日
6
2.3.2 标准 CRC 生成多项式
CRC-32
G ( x )= x 32 + x 26 + x 23 + x 22 + x 16 + x 12 + x 11 + x 10 + x 8 + x 7 + x 5 + x 4 + x 2 + x 1 + 1
CRC-ITU
G ( x )= x + x + x + 1
2013年3月4日
11
2.3.4.2 CRC-8 算法分析
R7 的移出位为 1 时,寄存器组才和 00000111 做 XOR 运算 移出位为 0 时,实际不需要运算 每次寄存器左移后,需要读入 1 位新数据到 R0 中 然后判断是否需要做 XOR 运算
2013年3月4日
12
2.3.4.3 CRC-8 处理流程
单播地址:目的地址第一位为 0 ,只被该地址节点接收 多播地址:目的地址第一位为 1 ,被一组节点接收 广播地址:目的地址为全 1 ,被所有节点接收
类型字段: 16 位 (2B), 表示网络层协议类型 0x0800 ,表示网络层为 IP 协议 0x8137 ,表示网络层为 NetWare 的 IXP 协议
2013年3月4日 14
2.4 Ethernet 帧接收流程
开始 启动接收 N
接收完成? Y 帧太短? N 地址正确? N Y
Y 帧拆解 接收成功
Y 校验正确? N 8 位的整数倍? Y 帧校验错 N
帧比特错
2013年3月4日 15
2.5 Ethernet 帧发送流程
开始 封装帧 Y 总线忙? N 启动发送 继续发送 N 发送完成? Y 发送成功 冲突次数 >16? Y 发送失败
前导码 帧前定界符 目的地址 源地址 类型字段 7B 1B 6B 6B 2B 数据字段 46~1500B 校验字段 4B
前导码: 56 位 (7B), 1010....10 帧前定界符: 8 位 (1B), 10101011 目的 / 源地址: 48 位 (6B), 是物理地址,又称 MAC 地址,如 00-13-d3-a2-42-a8
2013年3月4日
2
2.1 Ethernet
目前使用最广泛的局域网 基于 802.3 协议 通过 MAC 地址 ( 物理地址 ) 实现主机间通信 MAC (Media Access Control) 地址: 6Bytes (48bits)
2013年3月4日
3
2.2 Ethernet 2.0 帧结构
2013年3月4日 10
2.3.4.1 以比特序列 1010 为例
R7 R6 R5 R4 R3 R2
移出位 ← 0 0 0 0 0 0 0 0 1 0 1 0 结果 R7 0 0 0 0 0 0 0 0 1 0 1 0 0 0 R6 0 0 0 0 0 0 0 1 0 1 0 0 0 0 R5 0 0 0 0 0 0 1 0 1 0 0 0 1 1 R4 0 0 0 0 0 1 0 1 0 0 0 1 1 1
2013年3月4日 8
2.3.3 续
接收端校验过程 设发送端发出数据为 1001000111001100 而接收端收到数据为 1001000111101100 除以 CRC-4 多项式,判断余数是否为 0 。
100010000110 ————————— 10011 ⌡ 1001000111101100 10011 ———————— 100111101100 10011 —————— 1101100 10011 ———— 100000 10011 ———— 110
16 12 5
CRC-16
G ( x )= x + x + x + 1
16 15 2
CRC-12
G ( x )= x + x + x + x + x + 1
12 11 3 2 1
CRC-8
G ( x )= x + x + x + 1
8 2 1
CRC-4
G ( x )= x + x + 1
2.3.5 CRC-32 查找表法
串行方法算法简单,易于实现,对任意长 度的生成多项式都适用,但是它一次只能 处理一位数据,效率太低。为了提高处理 效率,可以一次处理 4 位、 8 位、 16 位 或 32 位 查找表法分两步实现: 计算参数表,计算校验码时只要从表中 查找对应的值进行处理即可 计算 CRC 校验码
2013年3月4日 5
2.3.1 CRC 校验算法
帧校验字段:采用 32 位 CRC 校验 校验范围包括目的 / 源地址字段,类型字段和数据字段; 接收端若发现错误,则帧被丢失。 CRC 校验算法: 基于线性编码理论,在 k 位待发数据之后加 r 位校验码,根 据 r 位校验码判断前面 k 位数据中是否有错。 算法: 将待发送的二进制序列作为多项式 f(x) 的系数,除以预先 设定的生成多项式 G(x) ,求得余数多项式 r(x) 并将 r(x) 的 系数作为 r 位校验码发送 接收端将收到的二进制序列作为多项式 f’(x) 的系数,除 以生成多项式 G(x) ,如果余数为 0 ,则传输无差错。
2013年3月4日 16
N
发生冲突?
Y 冲突加强
等待后退延迟时间
计算后退延迟时间 冲突次数加 1 N
2013年3月4日
9
2.3.4 CRC-8 的实现
CRC-8 可由 8 个移位寄存器和 3 个加法器(异或单元) 实现。 8 2 1
G CRC −8 ( x )= x + x + x + 1
XOR R1
R7 R6 R5 R4 R3 R2
XOR
R0
XOR 输入
编码或解码前将所有寄存器清零
输入位作为最右边异或操作的输入之一, 8 个寄存器同时 进行左移一位操作 每次移位时,寄存器同时是上图异或操作的输入之一 每输入 1 位便做一次移位操作,直到待发送的数据全部输 入完毕,此时寄存器组中值便是 CRC-8 的校验码。
XOR
R3 0 0 0 0 1 0 1 0 0 0 1 1 0 0 R2 0 0 0 1 0 1 0 0 0 1 1 0 1 1
R1
xor ←0+0 ←0+0 ←0+1 ←0+0 ←0+1 ←0+0 ←0+0 ←0+0 ←1+0 ←0+1 ←1+1 ←0+1 R1 0 0 1 0 1 0 0 0 0 1 1 1 1 1
网络高级编程技术
主讲:张江山
zhangjs@
2 Ethernet 帧结构解析
帧是网络中基本传输单元,熟悉帧结构对 于理解网络协议的概念、协议执行过程以 及网络层次结构具有重要的意义。 学习目标: