文档库 最新最全的文档下载
当前位置:文档库 › 802.3以太网数据帧的解析报告

802.3以太网数据帧的解析报告

802.3以太网数据帧的解析报告
802.3以太网数据帧的解析报告

802.3 以太网数据帧解析

一:实验要求及目的

1、读取文件ch03_mac_frame_data中的数据帧,通过解析解析已封装好的以太帧,了解以太帧结构及各个字段的含义以及帧的接收过程,从而加深对数据链路层协议的理解,进而理解网络协议的概念,协议执行过程以及网络层次的结构。

2.通过编程实现CRC-8校验,掌握帧CRC校验算法原理。

二:实验原理

1.以太网数据帧:

网络结点间发送数据都要将它放在帧的有效部分,分为一个或多个帧进行传输。Ethernet是当今应用最广泛的局域网技术,因此本次实验是解析Ethernet。

“以太网”是指符合DIX Ethernet V2 标准的局域网。以太网提供的服务是不可靠交付,即尽最大努力交付。当目的站收到有差错的数据帧时就丢弃此帧,差错的纠正由高层来决定。如果高层发现丢失了一些数据而进行重传,但以太网并不知道这是一个重传的帧,而当做一个新的数据帧来发送。

Ethernet是目前使用最广泛的局域网,基于802.3协议,通过MAC地址(物理地址)实现主机间通信。

常用的以太网MAC帧格式有两种标准:DIX Ethernet V2 标准及IEEE 的 802.3标准。DIX Ethernet V2 是先于IEEE标准的以太网版本。Ethernet V2通过在DLC头中2个字节的类型(Type)字段来辨别接收处理。类型字段是用来指定上层协议的(如0800指示IP、0806指示ARP等),它的值一定是大于05FF的,它提供无连接服务的,本身不控制数据(DATA)的长度,它要求网络层来确保数据字段的最小包长度(46字节)。IEEE802.3把DLC层分隔成明显的两个子层:MAC层和LLC层,其中MAC层主要是指示硬件目的地址和源地址。LLC层用来提供一些服务:

–通过SAP地址来辨别接收和发送方法

–兼容无连接和面向连接服务

–提供子网访问协议(Sub-network Access Protocol,SNAP),类型字段即由它的首部给出。

MAC层要保证最小帧长度不小于64字节,如果数据不满足64字节长度就必须进行填充。

以太网的帧格式如图1 所示:

图1. 以太网的帧格式

前导码和帧开始符:一个帧以7个字节的前导码和1个字节的帧开始符作为帧的开始。

目的/源地址:48位(6B),是物理地址,又称MAC地址,如00-13-d3-a2-42-a8 单播地址:目的地址第一位为0,只被该地址节点接收

多播地址:目的地址第一位为1,被一组节点接收

广播地址:目的地址为全1,被所有节点接收

类型字段:16位(2B),表示网络层协议类型,0x0800,表示网络层为IP协议

0x8137,表示网络层为NetWare的IXP协议

2.CRC循环冗余校验

在数据后面添加上的冗余码称为帧检验序列 FCS (Frame Check Sequence)。循环冗余检验 CRC 和帧检验序列 FCS并不等同。

(1)CRC 是一种常用的检错方法,而 FCS 是添加在数据后面的冗余码。(2)FCS 可以用 CRC 这种方法得出,但 CRC 并非用来获得 FCS 的唯一方法。CRC是一类重要的线性分组码,编码和解码方法简单,检错和纠错能力强。CRC检错的原理:

根本思想就是先在要发送的帧后面附加一个数(这个就是用来校验的校验码,这里的数也是二进制序列的),生成一个新帧发送给接收端。这个附加的数不是随意的,它要使所生成的新帧能与发送端和接收端共同选定的某个特定数整除(采用一种称之为“模2除法”)。到达接收端后,再把接收到的新帧除以(同样采用“模2除法”)这个选定的除数。因为在发送端发送数据帧之前就已通过附加一个数,做了“去余”处理,所以结果应该是没有余数。如果有余数,则表明该帧在传输过程中出现了差错。

“模2除法”与“算术除法”类似,但它既不向上位借位,也不比较除数和被除数的相同位数值的大小,只要以相同位数进行相除即可。模2加法运算为:1+1=0,0+1=1,0+0=0,无进位,也无借位;模2减法运算为:1-1=0,0-1=1,1-0=1,0-0=0,也无进位,无借位。相当于二进制中的逻辑异或运算。也就是比较后,两者对应位相同则结果为“0”,不同则结果为“1”。

具体来说,CRC校验原理就是以下几个步骤:

(1)先选择一个用于在接收端进行校验时,对接收的帧进行除法运算的除数(是二进制比较特串,通常是以多项方式表示,所以CRC又称多项式编码方法,这个多项式也称之为“生成多项式”。

(2)看所选定的除数二进制位数(假设为k位),然后在要发送的数据帧(假设为m位)后面加上k-1位“0”,然后以这个加了k-1个“0“的新帧(一共是m+k-1位)以“模2除法”方式除以上面这个除数,所得到的余数(也是二进制的比特串)就是该帧的CRC校验码,也称之为FCS(帧校验序列)。余数的位数一定要是比除数位数只能少一位。

(3)再把这个校验码附加在原数据帧(就是m位的帧,注意不是在后面形成的m+k-1位的帧)后面,构建一个新帧发送到接收端;最后在接收端再把这个新帧以“模2除法”方式除以前面选择的除数,如果没有余数,则表明该帧在传输过程中没出错,否则出现了差错。

CRC校验中有两个关键点:一是要预先确定一个发送端和接收端都用来作为除数的二进制比特串(或多项式);二是把原始帧与上面选定的除进行二进制除法运算,计算出FCS。前者可以随机选择,也可按国际上通行的标准选择,但最高位和最低位必须均为“1”。

三:仿真过程:

首先读取ch03_mac_frame_data文件,用语句argv[1]="H:\\研一上课\\数据网络技术\\ch03_mac_frame_data";其次打开文件

char* filePath= argv[1];

ifstream file(filePath,ios::binary); //打开文件

再计算文件的长度及通过给定帧中连续的7个AA以及一个AB来搜索判断,若是连续的7个AA和一个AB,则说明可能是合法帧,如果不是,则说明给定帧不正确,系统退出。利用文件指针返回帧头位置,为帧解析做准备。实验中定义了一个帧解析标志位,当标志为正确时,开始帧解析,输出帧序号等信息。输出完毕后,开始CRC校验。

CRC8处理流程图:

开始

Register8=0,Input 后填8位0

数据处理完?Register8首位=1?

Register8<<1 Input1位新数据=1?Register8最低位=1

Register8^=0x7结束

Register8<<1

Input1位新数据=1?

Register8最低位=1

图2. CRC8的流程图

CRC8检验的代码实现如下:

void checkCRC(int&chCurrByte, int chNextByte)

{

// CRC循环:每次调用进行8次循环,处理一个字节的数据。

for (int nMask = 0x80; nMask > 0; nMask >>= 1)

{

if ((chCurrByte & 0x80) != 0) // 首位为1:移位,并进行异或运算

{

chCurrByte <<= 1; // 移一位

if ( (chNextByte & nMask) != 0) // 补一位

{

chCurrByte |= 1;

}

chCurrByte ^= 7; // 首位已经移出,仅对低8位进行异或运算,7的二进制为0000,0111

}

else// 首位为0,只移位,不进行异或运算

{

chCurrByte <<= 1; // 移一位

if ( (chNextByte & nMask) != 0) // 补一位

{

chCurrByte |= 1;

}

}

}

}

四:实验结果及分析

如图分别显示了解析出的四个帧,并将每个帧的帧结构内容显示出来,如图3显示的解析出的前两个帧,图4显示的解析出的后两个帧。其中分别输出了前同步码,帧定界符,目的地址,源地址,类型字段,数据字段的解析结果,以及FCS和CRC校验结果。

计算机网络课程设计-模拟以太网帧封装

计算机网络期中考试试题 —模拟虚拟机中局域网的传输过程,完成简单图形界面。 学生:韩成周 学号: 2014117138 完成时间:2016年12月

目录 1.设计任务和要求 ......................................... 1.1 课程设计任务 ...................................... 1.2课程设计要求 ...................................... 2.设计原理 ............................................... 2.1 802.3标准帧结构................................... 2.2CRC的基本实现..................................... 3.设计思路 ............................................... 4.程序源码 ............................................... 5.运行结果 ............................................... 1.设计任务和要求 1.1课程设计任务 虚拟局域网(VLAN),是一种通过将局域网内的设备逻辑地而不是物理地划分成一个个网段从而实现虚拟工作组的新兴技术,在功能和操作上和传统的LAN 基本相同。虚拟局域网技术是目前网络界最热门的技术之一,也是交换网络中最重要的技术之一,它的出现是和局域网的交换技术的发展分不开的。而我们的任务就是模拟虚拟局域网中帧的传输过程。 1.2设计要求 1.初始化交换机的转发表; 2.模拟虚拟局域网同一个局域网或者不同局域网之间帧的传输过程 2.设计原理 2.1 802.3标准帧结构 虚拟局域网帧格式:

以太网帧的封装实验

实训报告以太网帧的封装实验 1.实训目的 1)观察以太网帧的封装格式 2)对比单播以太网帧和广播以太网帧的目标MAC地址 2.实训拓扑图 以太网帧实验拓扑 PC IP地址子网掩码 PC0 PC1 PC2 PC3 3.主要操作步骤及实训结果记录 (1)任务一:观察单播以太网帧的封装 步骤1:准备工作 打开对应文件,完成初始化,删除练习文件中预设场景 步骤2:捕获数据包 进入Simulation模式。添加数据包,单击auto capture/play捕获数据包,再次单击停止捕获 步骤3:观察以太网帧的封装格式 步骤4:观察该广播包的以太网封装

DEST MAC: MAC: 步骤4:观察交换机是否会修改以太网帧各字段取值 DEST MAC:MAC:

(2)任务二:观察广播以太网帧的封装 步骤1:捕获数据包 Pc0数据帧被交换机转发给pc1、pc2、pc3(所有节点),pc1、pc2、pc3(所有节点)接收该广播帧。 步骤2:观察该广播包的以太网封装 DEST MAC:字段的取值: MAC字段取值的含义:广播地址。

4.实训结果分析及心得体会 (1)任务一中,观察到以太网帧封装格式中前导字段的取值是什么阐述其在数据帧传输过程中的作用。 答:任务一中,前导码字段取值为···1010;以太网使用曼彻斯特编码传输数据,其特征是每个码元中间有一次电压的跳变,用于接收方提取同步信号,以太网帧中的前导码有何作用前导码是为了隔离每个以太网帧的,也是定位符。因为以太网是变长的,所以每个帧之间需要前导来区分。 (2)任务一中,Switch0转发数据帧时是否修改其源MAC地址和目标MAC地址 答:switch0转发给pc2地数据帧中源MAC地址和目标MAC地址并未进行修改。 (3)交换机接收数据帧后,依据什么判断该数据帧是单播还是广播或依据什么判断向哪个目标节点转发 答:交换机工作在数据链路层,依据数据帧中的目标MAC地址的取值判断数据帧是单播还是广播,依据目标MAC地址判断向哪个目标节点转发。

2.6 数据链路层数据帧协议分析

实验数据链路层的帧分析 一、实验目的 分析 TCP、UDP的数据链路层帧结构、 二、准备工作 虚拟机XP,虚拟网卡设置,NAT模式,TCP/IP参数设置自动获取。本实验需安装抓包工具软件IPTool。 三、实验内容及步骤 1.运行ipconfig命令 在Windows的命令提示符界面中输入命令:ipconfig /all,会显示本机的网络配置信息。 2.运行抓包工具软件 双击抓把工具软件图标,输入所需参数,和抓包过滤参数,点击捕捉。 3.进行网络访问 进行网络访问,下载文件/搜索资料/www访问/登录邮件系统等均可。 4.从抓包工具中选择典型数据帧 5.保存捕获的数据帧 6.捕获数据帧并分析 1、启动网络抓包工具软件在网络内进行捕获,获得若干以太网帧。 2、对其中的5-10个帧的以太网首部进行观察和分析,分析的内容为:源物理地址、目的物理地址、上层协议类型。 实验过程: 1.TCP协议数据包、数据帧分析 启动IPTool,IE访问https://www.wendangku.net/doc/e13974515.html,站点,使用iptool进行数据报的捕获。 TCP报文如下图:

根据所抓的数据帧进行分析: (1)MAC header 目的物理地址:00:D0:F8:BC:E7:06 源物理地址:00:16:EC:B2:BC:68 Type是0x800:意思是封装了ip数据报(2)ip数据报

由以上信息可以得出: ①版本:占4位,所以此ip是ipv4 ②首部长度:占4 位,可表示的最大十进制数值是15。此ip数据报没有选项,故它的最大十进制为5。 ③服务:占8 位,用来获得更好的服务。这里是0x00 ④总长度:总长度指首都及数据之和的长度,单位为字节。因为总长度字段为16位,所以数据报的最大长度为216-1=65 535字节。 此数据报的总长度为40字节,数据上表示为0x0028。 ⑤标识(Identification):占16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号,因为IP是无连接的服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。 在这个数据报中标识为18358,对应报文16位为47b6 ⑥标志(Flag):占3 位,但目前只有2位有意义。标志字段中的最低位记为MF (More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。标志字段中间的一位记为DF(Don't Fragment),意思是“不能分片”。只有当DF=0时才允许分片。这个报文的标志是010,故表示为不分片!对应报文16位为0x40。 ⑦片偏移:因为不分片,故此数据报为0。对应报文16位为0x00。 ⑧生存时间:占8位,生存时间字段常用的英文缩写是TTL (Time To Live),其表明数据报在网络中的寿命。每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1 秒,就把TTL值减1。当TTL值为0时,就丢弃这个数据报。经分析,这个数据报的的TTL为64跳!对应报文16位为0x40。 ⑨协议:占8 位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。这个ip数据报显示使用得是TCP协议对应报文16位为0x06。

以太网帧格式

以太网帧格式 百科名片 现在的以太网帧格式 以太网帧格式,即在以太网帧头、帧尾中用于实现以太网功能的域。目录

编辑本段 编辑本段历史分类 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中的实现. 802.3以太网帧格式备注: 前导码(7字节)、帧起始定界符(1字节)、目的MAC地址(6字节)、源MAC地址(6字节)、类型/长度(2字节)、数据(46~1500字节)、帧校验序列(4字节)[MAC地址可以用2-6字节来表示,原则上是这样,实际都是6字节] 图2 IEEE802.3以太帧头

802.11帧结构分析

802.11帧结构分析 1. 80 2.11介绍 1.1 80 2.11概述 802.11协议组是国际电工电子工程学会(IEEE)为无线局域网络制定的标准。IEEE 最初制定的一个无线局域网标准,主要用于解决办公室局域网和校园网中用户与用户终端的无线接入,业务主要限于数据存取,速率最高只能达到2Mbps。 虽然WI-FI使用了802.11的媒体访问控制层(MAC)和物理层(PHY),但是两者并不完全一致。在以下标准中,使用最多的应该是802.11n标准,工作在2.4GHz频段,可达600Mbps(理论值)。 IEEE 802.11是一个协议簇,主要包含以下规范: a.物理层规范:802.11b,802.11a,802.11g; b.增强型MAC层规范:802.11i,802.11r,802.11h等; c.高层协议规范:802.11f,802.11n,802.11p,802.11s等。 802.11中定义了三种物理层规范,分别是:频率跳变扩展频谱(FHSS)PHY规范、直接序列扩展频谱(DSSS)PHY规范和红外线(IR)PHY规范,由于物理层的规范与无线信息安全体系关系不大,故本文不对物理层做过多阐述。 802.11同802.3一样,主要定义了OSI模型中物理层和数据链路层的相关规范,其中数据链路层又可分为MAC子层和LLC子层,802.11与802.3的LLC子层统一由802.2描述。 1.2 80 2.11拓扑结构及服务类型 WLAN有以下三种网络拓扑结构: a.独立基本服务集(Independent BSS, IBSS)网络(也叫ad-hoc网络),如图1所示。 b.基本服务集(Basic Service Set, BSS)网络,如图2所示。 c.扩展服务集(Extent Service Set, ESS)网络,如图2所示。 STA1 STA2 图1

以太网的帧结构

以太网的帧结构 要讲帧结构,就要说一说OSI七层参考模型。 一个是访问服务点,每一层都对上层提供访问服务点(SAP),或者我们可以说,每一层的头里面都有一个字段来区分上层协议。 比如说传输层对应上层的访问服务点就是端口号,比如说23端口是telnet,80端口是http。IP层的SAP是什么? 其实就是protocol字段,17表示上层是UDP,6是TCP,89是OSPF,88是EGIRP,1是ICMP 等等。 以太网对应上层的SAP是什么呢?就是这个type或length。比如 0800表示上层是IP,0806表示上层是ARP。我 第二个要了解的就是对等层通讯,对等层通讯比较好理解,发送端某一层的封装,接收端要同一层才能解封装。 我们再来看看帧结构,以太网发送方式是一个帧一个帧发送的,帧与帧之间需要间隙。这个叫帧间隙IFG—InterFrame Gap IFG长度是96bit。当然还可能有Idle时间。 以太网的帧是从目的MAC地址到FCS,事实上以太网帧的前面还有preamble,我们把它叫做先导字段。作用是用来同步的,当接受端收到 preamble,就知道以太网帧就要来了。preamble 有8个字节前面7个字节是10101010也就是16进制的AA,最后一个字节是 10101011,也就是AB,当接受端接受到连续的两个高电平,就知道接着来的就是D_mac。所以最后一个字节AB我们也叫他SFD(帧开始标示符)。 所以在以太网传输过程中,即使没有idle,也就是连续传输,也有20个字节的间隔。对于

大量64字节数据来说,效率也就显得不 1s = 1,000ms=1,000,000us 以太网帧最小为64byte(512bit) 10M以太网的slot time =512×0.1 = 51.2us 100M以太网的slot time = 512×0.01 = 5.12us 以太网的理论帧速率: Packet/second=1second/(IFG+PreambleTime+FrameTime) 10M以太网:IFG time=96x0.1=9.6us 100M以太网:IFG time=96x0.01=0.96us 以太网发送方式是一个帧一个帧发送的,帧与帧之间需要间隙。这个叫帧间隙IFG—InterFrame Gap 10M以太网:Preamble time= 64bit×0.1=6.4us 100M以太网:Preamble time= 64bit×0.01=0.64us Preamble 先导字段。作用是用来同步的,当接受端收到preamble,就知道以太网帧就要来了 10M以太网:FrameTime=512bit×0.1=51.2us 100M以太网:FrameTime=512bit×0.01=5.12us 因此,10M以太网64byte包最大转发速度=1,000,000 sec÷(9.6+6.4+51.2)= 0.014880952Mpps 100M以太网64byte包最大转发速度=1,000,000 sec÷(0.96+0.64+5.12)= 0.14880952Mpps

实验二使用Wireshark分析以太网帧与ARP协议

实验二使用Wireshark分析以太网帧与ARP协议 一、实验目的 分析以太网帧,MAC地址和ARP协议 二、实验环境 与因特网连接的计算机网络系统;主机操作系统为windows;使用Wireshark、IE等软件。 三、实验步骤: IP地址用于标识因特网上每台主机,而端口号则用于区别在同一台主机上运行的不同网络应用程序。在链路层,有介质访问控制(Media Access Control,MAC)地址。在局域网中,每个网络设备必须有唯一的MAC地址。设备监听共享通信介质以获取目标MAC地址与自己相匹配的分组。 Wireshark 能把MAC地址的组织标识转化为代表生产商的字符串,例如,00:06:5b:e3:4d:1a也能以Dell:e3:4d:1a显示,因为组织唯一标识符00:06:5b属于Dell。地址ff:ff:ff:ff:ff:ff是一个特殊的MAC地址,意味着数据应该广播到局域网的所有设备。 在因特网上,IP地址用于主机间通信,无论它们是否属于同一局域网。同一局域网间主机间数据传输前,发送方首先要把目的IP地址转换成对应的MAC 地址。这通过地址解析协议ARP实现。每台主机以ARP高速缓存形式维护一张已知IP分组就放在链路层帧的数据部分,而帧的目的地址将被设置为ARP高速缓存中找到的MAC地址。如果没有发现IP地址的转换项,那么本机将广播一个报文,要求具有此IP地址的主机用它的MAC地址作出响应。具有该IP地址的主机直接应答请求方,并且把新的映射项填入ARP高速缓存。 发送分组到本地网外的主机,需要跨越一组独立的本地网,这些本地网通过称为网关或路由器的中间机器连接。网关有多个网络接口卡,用它们同时连接多个本地网。最初的发送者或源主机直接通过本地网发送数据到本地网关,网关转发数据报到其它网关,直到最后到达目的主机所在的本地网的网关。 1、俘获和分析以太网帧 (1)选择工具->Internet 选项->删除文件

Ethernet帧结构解析..

实验一Ethernet帧结构解析 一.需求分析 实验目的:(1)掌握Ethernet帧各个字段的含义与帧接收过程; (2)掌握Ethernet帧解析软件设计与编程方法; (3)掌握Ethernet帧CRC校验算法原理与软件实现方法。 实验任务:(1)捕捉任何主机发出的Ethernet 802.3格式的帧和DIX Ethernet V2(即Ethernet II)格式的帧并进行分析。 (2)捕捉并分析局域网上的所有ethernet broadcast帧进行分析。 (3)捕捉局域网上的所有ethernet multicast帧进行分析。 实验环境:安装好Windows 2000 Server操作系统+Ethereal的计算机 实验时间; 2节课 二.概要设计 1.原理概述: 以太网这个术语通常是指由DEC,Intel和Xerox公司在1982年联合公布的一个标准,它是当今TCP/IP采用的主要的局域网技术,它采用一种称作CSMA/CD的媒体接入方法。几年后,IEEE802委员会公布了一个稍有不同的标准集,其中802.3针对整个CSMA/CD网络,802.4针对令牌总线网络,802.5针对令牌环网络;此三种帧的通用部分由802.2标准来定义,也就是我们熟悉的802网络共有的逻辑链路控制(LLC)。以太网帧是OSI参考模型数据链路层的封装,网络层的数据包被加上帧头和帧尾,构成可由数据链路层识别的数据帧。虽然帧头和帧尾所用的字节数是固定不变的,但根据被封装数据包大小的不同,以太网帧的长度也随之变化,变化的范围是64-1518字节(不包括8字节的前导字)。 帧格式Ethernet II和IEEE802.3的帧格式分别如下。 EthernetrII帧格式: ---------------------------------------------------------------------------------------------- | 前序| 目的地址| 源地址| 类型| 数据 | FCS | ---------------------------------------------------------------------------------------------- | 8 byte | 6 byte | 6 byte | 2 byte | 46~1500 byte | 4 byte| IEEE802.3一般帧格式 ----------------------------------------------------------------------------------------------------------- | 前序| 帧起始定界符| 目的地址| 源地址| 长度| 数据| FCS | ----------------------------------------------------------------------------------------------------------- | 7 byte | 1 byte | 2/6 byte | 2/6 byte| 2 byte| 46~1500 byte | 4 byte | Ethernet II和IEEE802.3的帧格式比较类似,主要的不同点在于前者定义的2字节的类型,而后者定义的是2字节的长度;所幸的是,后者定义的有效长度值与前者定义的有效类型值无一相同,这样就容易区分两种帧格式 2程序流程图:

实验3分析mac帧格式

实验3 分析MAC帧格式 实验目的 1.了解MAC帧首部的格式; 2.理解MAC帧固定部分的各字段含义; 3.根据MAC帧的内容确定是单播,广播。 实验设备 Winpcap、Wireshark等软件工具 相关背景 1.据包捕获的原理:为了进行数据包,网卡必须被设置为混杂模式。在现实的网络环境中,存在着许多共享式的以太网络。这些以太网是通过Hub 连接起来的总线网络。在这种拓扑结构的网络中,任何两台计算机进行通信的时候,它们之间交换的报文全部会通过Hub进行转发,而Hub以广播的方式进行转发,网络中所有的计算机都会收到这个报文,不过只有目的机器会进行后续处理,而其它机器简单的将报文丢弃。目的机器是指自身MAC 地址与消息中指定的目的MAC 地址相匹配的计算机。网络监听的主要原理就是利用这些原本要被丢弃的报文,对它们进行全面的分析,这样就可以得到整个网络中信息的现状。 2.Tcpdump的简单介绍:Tcpdump是Unix平台下的捕获数据包的一个架构。Tcpdump最初有美国加利福尼亚大学的伯克利分校洛仑兹实验室的Van Jcaobson、Craig Leres和 Steve McCanne共同开发完成,它可以收集网上的IP数据包文,并用来分析网络可能存在的问题。现在,Tcpdump已被移植到几乎所有的UNIX系统上,如:HP-UX、SCO UNIX、SGI Irix、SunOS、Mach、Linux 和FreeBSD等等。更为重要的是Tcpdump是一个公开源代码和输出文件格式的软件,我们可以在Tcpdunp的基础上进行改进,加入辅助分析的功能,增强其网络分析能力。(详细信息可以参看相关的资料)。 3.Winpcap的简单介绍:WinPcap是由意大利Fulvio Risso和Loris Degioanni等人提出并实现的应用于Win32 平台的数据包捕获与分析的一种软件包,包括内核级的数据包监听设备驱动程序、低级动态链接库和高级系统无关库,其基本结构如图3-1所示:

802.11帧结构分析

帧结构分析 1. 介绍 概述 协议组是国际电工电子工程学会(IEEE)为无线局域网络制定的标准。IEEE最初制定的一个无线局域网标准,主要用于解决办公室局域网和校园网中用户与用户终端的无线接入,业务主要限于数据存取,速率最高只能达到2Mbps。 虽然WI-FI使用了的媒体访问控制层(MAC)和物理层(PHY),但是两者并不完全一致。在以下标准中,使用最多的应该是标准,工作在频段,可达600Mbps(理论值)。 IEEE 是一个协议簇,主要包含以下规范: a.物理层规范:,,; b.增强型MAC层规范:,,等; c.高层协议规范:,,,等。 中定义了三种物理层规范,分别是:频率跳变扩展频谱(FHSS)PHY规范、直接序列扩展频谱(DSSS)PHY规范和红外线(IR)PHY规范,由于物理层的规范与无线信息安全体系关系不大,故本文不对物理层做过多阐述。 同一样,主要定义了OSI模型中物理层和数据链路层的相关规范,其中数据链路层又可分为MAC子层和LLC子层,与的LLC子层统一由描述。 拓扑结构及服务类型 WLAN有以下三种网络拓扑结构: a.独立基本服务集(Independent BSS, IBSS)网络(也叫ad-hoc网络),如图1所 示。 b.基本服务集(Basic Service Set, BSS)网络,如图2所示。 c.扩展服务集(Extent Service Set, ESS)网络,如图2所示。 STA1STA2 图1

其中,ESS中的DS(分布式系统)是一个抽象系统,用来连接不同BSS的通信信道(通过路由服务),这样就可以消除BSS中STA与STA之间直接传输距离受到物理设备的限制。 根据拓扑结构可以得出的两类服务: 站点服务SS(每个STA都要有的服务):认证(Authentication)、解除认证(Deauthentication)、加密(Privacy)、MSDU传递(MSDU delivery); 分布式系统服务DSS(DS特有服务):关联(Association)、解除关联(Deassociation)、分布(Distribution)、集成(Integration)、重关联(Ressociation)。 2. 帧结构分析 帧格式概述 无线中的数据传播有如表格1所示的格式: preamble是一个前导标识,用于接收设备识别。 PLCP域中包含一些物理层的协议参数,显然Preamble及PLCP是物理层的一些细节。 AP STA1STA2 图2 图3

以太网帧格式 EthernetⅡ和ETHERNET 802.3 IEEE802.2.SAP和SNAP的区别

EthernetⅡ/ETHERNET 802.3 IEEE802.2.SAP/SNAP的区别 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的协议类型字段+数据。 常见协议类型如下: 0800 IP 0806 ARP 8137 Novell IPX 809b Apple Talk 如果协议类型字段取值为0000-05dc(十进制的0-1500),则该帧就不是Ethernet V2(ARPA)类型了,而是下面讲到的三种802.3帧类型之一;Ethernet可以支持TCP/IP,Novell IPX/SPX,Apple Talk Phase I等协议;RFC 894定义了IP报文在Ethernet V2上的封装格式; Ethernet_II中所包含的字段:

在每种格式的以太网帧的开始处都有64比特(8字节)的前导字符,如图所示。其中,前7个字节称为前同步码(Preamble),内容是16进制数0xAA,最后1字节为帧起始标志符0xAB,它标识着以太网帧的开始。前导字符的作用是使接收节点进行同步并做好接收数据帧的准备。 ——PR:同步位,用于收发双方的时钟同步,同时也指明了传输的速率(10M和100M的时钟频率不一样,所以100M网卡可以兼容10M网卡),是56位的二进制数101010101010..... ——SD: 分隔位,表示下面跟着的是真正的数据,而不是同步时钟,为8位的10101011,跟同步位不同的是最后2位是11而不是10. ——DA:目的地址,以太网的地址为48位(6个字节)二进制地址,表明该帧传输给哪个网卡.如果为FFFFFFFFFFFF,则是广播地址,广播地址的数据可以被任何网 卡接收到. ——SA:源地址,48位,表明该帧的数据是哪个网卡发的,即发送端的网卡地址, 同样是6个字节. ----TYPE:类型字段,表明该帧的数据是什么类型的数据,不同的协议的类型字段不同。如:0800H 表示数据为IP包,0806H 表示数据为ARP包,814CH是SNMP 包,8137H为IPX/SPX包,(小于0600H的值是用于IEEE802的,表示数据包的长度。) ----DATA:数据段,该段数据不能超过1500字节。因为以太网规定整个传输包的最大长度不能超过1514字节。(14字节为DA,SA,TYPE) ----PAD:填充位。由于以太网帧传输的数据包最小不能小于60字节, 除去(DA,SA,TYPE 14字节),还必须传输46字节的数据,当数据段的数据不足46字节时,后面补000000.....(当然也可以补其它值) ----FCS:32位数据校验位.为32位的CRC校验,该校验由网卡自动计算,自动生成,自动校验,自动在数据段后面填入.对于数据的校验算法,我们无需了解. ----事实上,PR,SD,PAD,FCS这几个数据段我们不用理它 ,它是由网卡自动产生的,我们要理的是DA,SA,TYPE,DATA四个段的内容.

以太网帧格式分析

的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和IEEE 802.3的帧格式: ⑴前导码(Preamble):由0、1间隔代码组成,用来通知目标站作好接收准备。以太网帧则使用8个字节的0、1间隔代码作为起始符。IEEE 802.3帧的前导码占用前7个字节,第8个字节是两个连续的代码1,名称为帧首定界符(SOF),表示一帧实际开始。 ⑵目标地址和源地址(Destination Address & Source Address):表示发送和接收帧的工作站的地址,各占据6个字节。其中,目标地址可以是单址,也可以是多点传送或广播地址。

以太网帧格式

以太网帧格式详解: 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个字节,指出帧的目标节点的上层协议。Destination Service Access Point SSAP:1个字节,指出帧的源节点的上层协议。Source Service Access Point DSAP和SSAP相当于IEEE802.3帧格式的协议标识符。为IP定义的DSAP和SSAP 字段值是0x06。但一般使用SNAP报头。 控件:1-2个字节。取决于封装的是LLC数据报(Type1 LLC)还是LLC通话的一部分(Type2 LLC)。 Type1 LLC:1个字节的控件字段,是一种无连接,不可靠的LLC数据报。无编号信息,UI帧,0x03。 Type2 LLC:2个字节的控件字段,是一种面向连接,可靠的LLC对话。 对IP和ARP,从不使用可靠的LLC服务。所以,都只用Type1 LLC,控件字段设为0x03。 区分两种帧 根据源地址段后的前两个字节的类型不同。 如果值大于1500(0x05DC),说明是以太网类型字段,EthernetII帧格式。值小于等于1500,说明是长度字段,IEEE802.3帧格式。因为类型字段值最小的是0x0600。而长度最大为1500。 IEEE802.3 SNAP 虽然为IP定义的SAP是0x06,但业内并不使用该值。RFC1042规定在IEEE802.3, 802.4, 802.5网络上发送的IP数据报和ARP帧必须使用SNAP(Sub Network Access Prototol)封装格式。 报头7 起始限定符1 目标地址6 源地址6 长度2 DSAP1 SSAP1 控件1 组织代码3 以太类型2 IP数据报帧检验序列 ----IEEE802.3报头-----------§IEEE8023 LLC报头---§--SNAP报头----§ §802.3报尾§ 0x0A 0x0A 0x03 0x00-00-00 0x08-00 (38-1492字节) Ethernet地址 为了标识以太网上的每台主机,需要给每台主机上的网络适配器(网络接口卡)分配一个唯一的通信地址,即Ethernet地址或称为网卡的物理地址、MAC 地址。 IEEE负责为网络适配器制造厂商分配Ethernet地址块,各厂商为自己生产的每块网络适配器分配一个唯一的Ethernet地址。因为在每块网络适配器出厂时,其Ethernet地址就已被烧录到网络适配器中。所以,有时我们也将此地址称为烧录地址(Burned-In-Address,BIA)。

分析数据链路层帧结构

南华大学计算机学院 实验报告 课程名称计算机网络原理 姓名杨国峰 学号20144360205 专业网络2班 任课教师谭邦 日期 2016年4月4日 成绩 南华大学

实验报告正文: 一、实验名称分析数据链路层帧结构 二、实验目的: 1. 掌握使用Wireshark分析俘获的踪迹文件的基本技能; 2. 深刻理解Ethernet帧结构。 3. 深刻理解IEEE 802.11帧结构。 三、实验内容和要求 1. 分析俘获的踪迹文件的Ethernet帧结构; 2. 分析IEEE 802.11帧结构。 四、实验环境

五、操作方法与实验步骤 1.Ethernet帧结构(本地连接与无线连接)

2.IEEE 802.11帧结构

六、实验数据记录和结果分析 1.Ethernet帧结构(本地连接为例) Ethernet II, Src: Tp-LinkT_95:c6:20 (fc:d7:33:95:c6:20), Dst: Clevo_00:a1:18 (80:fa:5b:00:a1:18) 以太网协议版本II,源地址:厂名_序号(网卡地址),目的:厂名_序号(网卡地址) Destination: Clevo_00:a1:18 (80:fa:5b:00:a1:18)目的:厂名_序号(网卡地址) Source: Tp-LinkT_95:c6:20 (fc:d7:33:95:c6:20) 源:厂名_序号(网卡地址) Type: IP (0x0800) 帧内封装的上层协议类型为IP Padding: 000000000000 所有内边距属性 2.分析IEEE 802.11帧结构 Protocol version:表明版本类型,现在所有帧里面这个字段都是0x00。 *Type:指明数据帧类型,是管理帧,数据帧还是控制帧。 Subtype:指明数据帧的子类型,因为就算是控制帧,控制帧还分RTS帧,CTS帧,ACK 帧等等,通过这个域判断出该数据帧的具体类型。 To DS/From DS:这两个数据帧表明数据包的发送方向,分四种可能情况讨论: **若数据包To DS为0,From DS为0,表明该数据包在网络主机间传输。 **若数据包To DS 为0,From DS为1,表明该数据帧来自AP。 **若数据包To DS为1,From DS为0,表明该数据帧发送往AP。若数据包To DS为1,From DS为1,表明该数据帧是从AP发送自AP的,也就是说这个是个WDS(Wireless Distribution System)数据帧。 Moreflag:分片标志,若数据帧被分片了,那么这个标志为1,否则为0。 *Retry:表明是否是重发的帧,若是为1,不是为0。 PowerManage:当网络主机处于省电模式时,该标志为1,否则为0。 Moredata:当AP缓存了处于省电模式下的网络主机的数据包时,AP给该省电模式下的网络主机的数据帧中该位为1,否则为0。 Wep:加密标志,若为1表示数据内容加密,否则为0。 *Order 这个表示用于PCF模式下。 Duration/ID(持续时间/标识):表明该帧和它的确认帧将会占用信道多长时间;对于帧控制域子类型为:Power Save-Poll的帧,该域表示了STA的连接身份(AID, Association Indentification)。

实验一 以太网数据帧的构成

【实验一以太网数据帧的构成】 【实验目的】 1、掌握以太网帧的构成,了解各个字段的含义; 2、能够识别不同的MAC地址并理解MAC地址的作用; 3、掌握网络协议分析器的基本使用方法; 4、掌握协议仿真编辑器的基本使用方法; 【实验学时】 4学时; 【实验类型】 验证型; 【实验内容】 1、学习协议仿真编辑器的五个组成部分及其功能; 2、学习网络协议分析器的各组成部分及其功能; 3、学会使用协议仿真编辑器编辑以太网帧,包括单帧和多帧; 4、学会分析以太网帧的MAC首部; 5、理解MAC地址的作用; 6、理解MAC首部中的LLC-PDU长度/类型字段的功能; 7、学会观察并分析地址本中的MAC地址; 8、了解LLC-PDU的内容; 【实验原理】 局域网(LAN)是在一个小的范围内,将分散的独立计算机系统互联起来,实现资源的共享和数据通信。局域网的技术要素包括了体系结构和标准、传输媒体、拓扑结构、数据编码、媒体访问控制和逻辑链路控制等,其中主要的技术是传输媒体、拓扑结构和媒体访问控制方法。局域网的主要的特点是:地理分布范围小、数据传输速率高、误码率低和协议简单等。 1、三个主要技术 ⑴传输媒体:双绞线、同轴电缆、光缆、无线。 ⑵拓扑结构:总线型拓扑、星型拓扑和环型拓扑。 ⑶媒体访问控制方法:载波监听多路访问/冲突检测(CSMA/CD)技术。 2、IEEE 802标准的局域网参考模型 IEEE 802参考模型包括了OSI/RM最低两层(物理层和数据链路层)的功能。OSI/RM的数据链路层功能,在局域网参考模型中被分成媒体访问控制MAC(Medium Access Control)和逻辑链路控制LLC(Logical Link Control)两个子层。由于局域网采用的媒体有多种,对应的媒体访问控制方法也有多种,为了使数据帧的传送独立于所采用的物理媒体和媒体访问控制方法,IEEE 802 标准特意把LLC 独立出来形成单独子层,使LLC子层与媒体无关,仅让MAC子层依赖于物理媒体和媒

计算机网络实验报告(以太网帧格式分析)

计算机网络实验报告 学院计算机与通信工程学院专业网络工程班级1401班 学号20姓名实验时间:2016.5.13 一、实验名称: FTP协议分析实验 二、实验目的: 分析FTP 报文格式和FTP 协议的工作过程,同时学习 Serv-U FTP Server服务软件的基本配置和FTP 客户端命令的使用。 三、实验环境: 实验室局域网中任意两台主机PC1,PC2。 四、实验步骤及结果: 步骤1:查看实验室PC1和PC2的IP地址,并记录,假设PC1的IP 地址为10.64.44.34,PC2的IP地址为10.64.44.35。 步骤2:在PC1上安装Serv-U FTP Server,启动后出现图1-20所示界面。 点击新建域,打开添加新建域向导,完成如下操作。 添加域名:https://www.wendangku.net/doc/e13974515.html,;设置域端口号:21(默认);添加域IP地址:10.28.23.141;设置密码加密模式:无加密,完成后界面如图1-21所示。 完成上述操作后,还需要创建用于实验的用户帐号。点击图1.20中

浮动窗口中的“是”按钮,打开添加新建用户向导:添加用户名:test1;添加密码:123;设置用户根目录(登陆文件夹);设置是否将用户锁定于根目录:是(默认);访问权限:只读访问,完成后界面如图1-22所示。 新建的用户只有文件读取和目录列表权限,为完成实验内容,还需要为新建的用户设置目录访问权限,方法为点击导航——〉目录——〉目录访问界面,然后点击添加按钮, 按照图1-23所示进行配置。 步骤3:在PC1 和PC2 上运行Wireshark,开始捕获报文。 步骤4:在PC2 命令行窗口中登录FTP 服务器,根据步骤2中的配置信息输入用户名和口令,参考命令如下: C:\ >ftp ftp> open To 10.28.23.141 //登录ftp 服务器 Connected to 10.28.23.141 220 Serv-U FTP Server v6.2 for WinSock ready... User(none): test1 //输入用户名 331 User name okay, need password. Password:123 //输入用户密码 230 User logged in, proceed. //通过认证,登录成功

相关文档