精华内容
下载资源
问答
  • 以太网(IEEE 802.3)格式: 1、前导码:7字节0x55,一串1、0间隔,用于信号同步 2、起始定界符:1字节0xD5(10101011),表示一开始 3、DA(目的MAC):6字节 4、SA(源MAC):6字节 5、类型/长度:2字节,0~1500保留...

    转载 https://blog.csdn.net/farmwang/article/details/64131318

    以太网(IEEE 802.3)帧格式:

    1、前导码:7字节0x55,一串1、0间隔,用于信号同步
    2、帧起始定界符:1字节0xD5(10101011),表示一帧开始
    3、DA(目的MAC):6字节
    4、SA(源MAC):6字节
    5、类型/长度:2字节,0~1500保留为长度域值,1536~65535保留为类型域值(0x0600~0xFFFF)
    6、数据:46~1500字节
    7、帧校验序列(FCS):4字节,使用CRC计算从目的MAC到数据域这部分内容而得到的校验和。

    据RFC894的说明,以太网封装IP数据包的最大长度是1500字节,也就是说以太网最大帧长应该是以太网首部加上1500,再加上7字节的前导同步码和1字节的帧开始定界符,具体就是:7字节前导同步吗+1字节帧开始定界符+6字节的目的MAC+6字节的源MAC+2字节的帧类型+1500+4字节的FCS。

    按照上述,最大帧应该是1526字节,但是实际上我们抓包得到的最大帧是1514字节,为什么不是1526字节呢?原因是当数据帧到达网卡时,在物理层上网卡要先去掉前导同步码和帧开始定界符,然后对帧进行CRC检验,如果帧校验和错,就丢弃此帧。如果校验和正确,就判断帧的目的硬件地址是否符合自己的接收条件(目的地址是自己的物理硬件地址、广播地址、可接收的多播硬件地址等),如果符合,就将帧交“设备驱动程序”做进一步处理。这时我们的抓包软件才能抓到数据,因此,抓包软件抓到的是去掉前导同步码、帧开始分界符、FCS之外的数据,其最大值是6+6+2+1500=1514。
     

    以太网规定,以太网帧数据域部分最小为46字节,也就是以太网帧最小是6+6+2+46+4=64。除去4个字节的FCS,因此,抓包时就是60字节。当数据字段的长度小于46字节时,MAC子层就会在数据字段的后面填充以满足数据帧长不小于64字节。由于填充数据是由MAC子层负责,也就是设备驱动程序。

     

    以CSMA/CD作为MAC算法的一类LAN称为以太网。CSMA/CD冲突避免的方法:先听后发、边听边发、随机延迟后重发。一旦发生冲突,必须让每台主机都能检测到。关于最小发送间隙和最小帧长的规定也是为了避免冲突。

    考虑如下的情况,主机发送的帧很小,而两台冲突主机相距很远。在主机A发送的帧传输到B的前一刻,B开始发送帧。这样,当A的帧到达B时,B检测到冲突,于是发送冲突信号。假如在B的冲突信号传输到A之前,A的帧已经发送完毕,那么A将检测不到冲突而误认为已发送成功。由于信号传播是有时延的,因此检测冲突也需要一定的时间。这也是为什么必须有个最小帧长的限制。

    按照标准,10Mbps以太网采用中继器时,连接的最大长度是2500米,最多经过4个中继器,因此规定对10Mbps以太网一帧的最小发送时间为51.2微秒。这段时间所能传输的数据为512位,因此也称该时间为512位时。这个时间定义为以太网时隙,或冲突时槽。512位=64字节,这就是以太网帧最小64字节的原因。

    512位时是主机捕获信道的时间。如果某主机发送一个帧的64字节仍无冲突,以后也就不会再发生冲突了,称此主机捕获了信道。

    由于信道是所有主机共享的,如果数据帧太长就会出现有的主机长时间不能发送数据,而且有的发送数据可能超出接收端的缓冲区大小,造成缓冲溢出。为避免单一主机占用信道时间过长,规定了以太网帧的最大帧长为1500。

    100Mbps以太网的时隙仍为512位时,以太网规定一帧的最小发送时间必须为5.12μs。

    1000Mbps以太网的时隙增至512字节,即4096位时,4.096μs。

    展开全文
  • 关于pcap截取的网卡数据帧的分析;一个Demo说明网络协议封分层以及具体截获的包分析说明 一个实际的包数据分析 packet_header ------>包帧的头部---16字节 --------packet_content start--------- 52 54 00 12 35 ...
  • 以太网帧长度大小限制

    万次阅读 2019-03-31 17:22:37
    表示以太网传输的最大帧长度。 为什么要有最大帧长度限制呢? 这是因为以太网采用的是CSMA/CD方法在介质上传输数据。CSMA/CD叫做带冲突检测的载波监听多路访问技术,在发送数据之前需要检测链路是否空闲,只有链路...

    最大长度限制

    网卡上一个参数是MTU值。一般都是1500。表示以太网传输的最大帧长度。
    为什么要有最大帧长度限制呢?
    这是因为以太网采用的是CSMA/CD方法在介质上传输数据。CSMA/CD叫做带冲突检测的载波监听多路访问技术,在发送数据之前需要检测链路是否空闲,只有链路空闲时才发送数据,并且边发送边检测。发送的过程中一旦检测到冲突则立即停止。所以也就是说,数据发送的过程中,整个链路是被独占的。所以需要限制一次传输数据的最大长度,如果一个人占用时间过长,这对其他人而言是不可接受的。
    而且限制最大长度还有以下好处:
    1)帧传输的过程中,一旦出错,需要全部重传,长度太长反而效率不高。(可能现在的传输介质已经不存在这种问题了)
    2)帧越长,需要的缓存越大,1979年在设计网卡时,缓存的价格非常昂贵,所以当时选用1500 bytes作为最大的长度。

    需要注意的是,以长帧长度限制是1518字节。减去18字节的以太网帧长度,所以ip层的报文长度限制为1500。

    最小长度限制

    最大长度还是比较直观易于理解,那么为什么又有最小长度限制呢?
    还是因为CSMA/CD。
    AB之间通信。
    当A检测到链路空闲,然后发送报文,巧的是B跟你一样,这不就冲突了嘛。
    最坏的情况,AB俩隔得最远。当A发送的报文刚好要到达B时,B开始发送报文。
    如果在B的报文到达A之前,A就已经发送完了,那么A就不知道冲突了。所以,需要限制发送的报文最小长度。
    最小长度是多少呢?
    显然,最小长度同时受两个节点最远距离和传输速度的影响。最远距离越长,传输速度越快,所需要的最小长度也就越大。

    针对不同带宽的网络,标准组织定义了不同的slot time。

    SpeedSlot timeTime Interval
    10 Mbit/s512 bit times51.2 microseconds
    100 Mbit/s512 bit times5.12 microseconds
    1 Gbit/s4096 bit times4.096 microseconds
    2.5 Gbit/s onwardno half-duplex operation

    所以,不同的网络,其实最小长度是不一定的,两个节点能相隔的最远距离也是不一样的。
    10Mbit/s的网络,报文最小长度为64字节。两个节点最远距离不能超过:
    51.210(-6)*(0.7*3*108)/2=5.376km
    在1Gbit/s的网络中,报文最小长度为512字节。最远距离不超过约0.43km

    不足的长度填充全0补齐。这些数据是不计算入ip层的。
    使用tcpdump抓包时,经常看见length=0的报文。其实这个长度指的是TCP层数据报文的长度。

    参考:
    以太网最小,最大字节长度 https://blog.51cto.com/19880206/890070
    https://en.wikipedia.org/wiki/Slot_time
    https://stackoverflow.com/questions/33039394/why-is-the-minimum-ethernet-frame-64-bytes

    展开全文
  • 以太网数据帧结构以及大小限制

    千次阅读 2018-04-09 21:47:58
    以太网数据帧结构 以太网是目前最流行的一种局域网组网技术(其他常见局域网组网技术还有令牌环局域网、无线局域网、ATM局域网),以太网技术的正式标准是IEEE 802.3标准,它规定了在以太网中传输的数据帧结构,如...

     以太网数据帧结构    

           以太网是目前最流行的一种局域网组网技术(其他常见局域网组网技术还有令牌环局域网、无线局域网、ATM局域网),以太网技术的正式标准是IEEE 802.3标准,它规定了在以太网中传输的数据帧结构,如下图所示。

                  

          1、前导码/帧起始定界符:7字节0x55,一串1、0间隔,用于信号同步,1字节0xD5(10101011),表示一帧开始
      2、目的地址:6字节
      3、源地址:6字节
      4、类型/长度:2字节,0~1500保留为长度域值,1536~65535保留为类型域值(0x0600~0xFFFF)
      5、数据:46~1500字节
      6、帧校验序列(FCS):4字节,使用CRC计算从目的MAC到数据域这部分内容而得到的校验和。

            ARP报文是典型的以太网数据帧,他的结构为:

          以太网帧头部中的前两个字段是以太网的MAC地址和源MAC地址,目的地址为全1的特殊地址是以太网广播地址。在ARP表项建立前,源主机只知道目的主机的IP地址,并不知道其MAC地址,所以在数据链路上,源主机只有通过广播的方式将ARP请求数据包发送出去,同一网段上的所有以太网接口都会接收到广播的数据包。

           两个字节长的以太网帧类型表示帧中数据的类型。对于ARP包来说,该字段值为0x0806;对IP包来说,该字段的值为0x0800。接下来就是ARP数据包部分了,第一个硬件类型字段表示发送方想要知道的硬件接口类型,对于以太网MAC地址,它的值为1.协议类型字段表示要映射的协议地址类型,它的值为0x0800时,即表示要映射为IP地址,该值与以太网数据帧头中的类型字段的值使用相同的一组值。

    接下来的两个单字节长度的字段,称为硬件地址长度和协议地址长度,它们分别指出硬件地址和协议地址的长度,长度单位为字节。对于以太网上ARP请求或应答来说,它们的值分别为6和4,代表MAC地址的长度和IP地址的长度。在ARP协议包中流出硬件地址长度和协议地址长度字段可以使得ARP协议在任何网络中被使用,而不仅仅只在以太网中。

          操作字段op指出ARP数据包的类型,它们可以使ARP请求(值为1)、ARP应答(值为2)。

          接下来的四个字段是发送端的以太网MAC地址、发送端的IP地址、目的端的以太网MAC地址和目的端的IP地址。


    大小限制

        我们注意到上面提到数据的大小46~1500字节.46是如何算出来的呢?

        这里一句话带过,为了避免信号碰撞.也就是说信号在A和B之间传输 的来回时间必须控制在一定范围之内。IEEE定义了这个标准,一个碰撞域内,最远的两台机器之间的round-trip time 要小于512bit time.(来回时间小于512位时,所谓位时就是传输一个比特需要的时间)。这也是我们常说的一个碰撞域的直径。

      512个位时,也就是64字节的传输时间,如果以太网数据包大于或等于64个字节,就能保证碰撞信号到达A的时候,数据包还没有传完。

        前面提到,以太网首部要占14个字节,最后一个帧校验序列(FCS)占4字节.(前导码/帧起始定界符并不能算是真正意义上的以太网数据帧,它们是以太网在物理层上发送以太网数据时添加上去的),所以数据最小必须是64-14-4=46字节.对于ARP协议,数据长度只有28字节,剩余必须全部补0,为18个字节.

        最长长度1500字节也是以太网的规定,目的是避免数据太长,导致数据一直占用信道.



        参考:

        为什么以太网数据帧最小为64字节

        以太网完整协议

    展开全文
  • 以太网数据帧最短帧长问题

    万次阅读 2019-09-06 20:41:13
    1.以太网帧的最短长度为64字节,或者中的数据不得少于46个字节,其中以太网帧头有18字节(以太网2的值为:MAC+2类型+4CRC,注意,如果是802.3的规范,它支持SNAP和802.3以太,其中的2个字节的类型字段就变为长度),...

    1.以太网帧的最短长度为64字节,或者帧中的数据不得少于46个字节,其中以太网帧头有18字节(以太网2的值为:MAC+2类型+4CRC,注意,如果是802.3的规范,它支持SNAP和802.3以太,其中的2个字节的类型字段就变为帧的长度),小于以上长度的帧或数据需要在帧中加入“填充数据(pad)”

     
    2.以太网帧的最长长度为1518字节。我们所说的MTU 以太网一般为1500,加上以太网帧头18字节。(1500数据+18以太网帧头,注意,802.3规范已经把最大长度改为1536(0x0600)了)。
     
    3.为什么以太网的最短长度为64字节?万一长度小于64字节呢?
    a.按以太网的标准最大长度2.5km计算,802.3标准将长度达到最大值的以太网两倍往返时延取为51.2μs = (2500*4)/((1.9~2.4)*10**8)s.
    b.5-4规则:电磁信号在铜介质上的传播速率为1.9×10**8~2.4×10**8m/s).
    c.保证在发送256bit(32字节)所需的时间内使信号充满整个碰撞域.
    d.保证最短长度的帧在发送完毕之前,必须能够监测到可能最晚来到的冲突信号。
    e.为了"冲突检测"机制成功,第帧必须至少持续发送2t时间(发送2t时间后一数据帧还没有发送完)。t的大小是由网络协议标准定义,当t确定后,最短数据帧也被确定,反过来一个冲突域最大范围也被确定,在以太网中,2t被定义为51.2us,最短帧长为64byte,一个冲突域最多由4个中继器组成,这样的话,一个冲突域中的线缆最大长度也有一定的限制。
    f.如果数据帧小于64字节的话,就会看作"碎片".即数据包在网络传输中受损。
    展开全文
  • 以太网数据帧格式及ARP协议

    千次阅读 2020-08-29 15:59:52
    在物理层上看,一个完整的以太网帧有7个字段,事实上,前两个字段并不能算是真正意义上的以太网数据帧,它们是以太网在物理层上发送以太网数据时添加上去的。为了实现底层数据的正确阐述,物理层使用7个字节前同步码...
  • 以太网数据帧详细解析 逐字节分析

    千次阅读 2020-08-25 21:18:49
    以太网数据帧详细解析 详细解析以太网通信数据帧 测试环境 机器名 mac ip port tcp_server 00:0c:29:8b:37:da 10.1.2.7 9502 tcp_client 00:50:56:c0:00:08 10.1.2.1 12345 抓包 客户端向服务端发送 '...
  • 以太网最小合法帧长度 64字节

    千次阅读 2019-04-17 16:04:50
    以太网最小合法帧长度为?( B ) A 32字节 B 64字节 C 100字节 D 不确定 解析: 以太网帧格式:目标 MAC 地址 6 字节,源 MAC 地址 6 字节,类型 2 字节,数据和填充 46-1500 字节,FCS(帧检验序列) 4 ...
  • 以太网数据帧内容详解

    千次阅读 2019-09-13 18:52:26
    在学习计算机网络的时候,好像更偏重于了解ip头部的格式,经常忽略了数据链路层下数据帧的格式,今天在书上看到一个不错的关于数据帧格式的介绍,翻译并分享给大家。 Preamble 前导码,序言:7byte或56bits的...
  • 以太网帧,属于二层数据,分为2种:EthernetII和IEEE802.3。其中EthernetII格式为:而IEEE802.3格式为:两种的区别----->在于Type / Length字段数值的大小。Type/Length >=1536(0x0600) ----->...
  • 以太网(IEEE 802.3)格式: 1、前导码:7字节0x55,一串1、0间隔,用于信号同步 2、起始定界符:1字节0xD5(10101011),表示一开始 3、DA(目的MAC):6字节 4、SA(源MAC):6字节 5、类型/长度:2字节,0~...
  • 为什么以太网的最小数据帧长度为64字节? CSMA/CD冲突避免的方法:先听后发、边听边发、随机延迟后重发。一旦发生冲突,必须让每台主机都能检测到。关于最小发送间隙和最小帧长的规定也是为了避免冲突。 以太网...
  • 以太网数据帧协议分析

    万次阅读 2015-10-17 17:58:53
    通过本次总结,更直观的学习了数据报和格式和入户正确快速利用搜索的其他主机的MAC地址和IP地址(121.42.123.186),将数据填入格式中。在实验中遇到不懂的问题及时细读实验要求和实验内容原理或者直接问同学,增强...
  • ​概述我们在工作中,经常听到小伙伴说报文的长度是64、128、256字节等,我们都知道它们是什么意思,不过在计算网络带宽时,总是会比预想的要小,并且报文越小,差距越大。这个问题几乎是所有网络新手都会遇到的困扰...
  • 1 【单选题】 下面哪个不是TCP/IP协议中的层次 A、 网络层 B、 传输层 C、 应用层 D、 ...TCP/IP协议中网络层的数据被称为 ...802.3以太网帧中length的最大...以太网帧的最小长度为 A、 38 B、 46 C、 64 D、 76 我的答案:C
  • 以太网帧和一些标准

    2021-01-13 09:22:33
    链路层3.2.2 以太网帧格式校验序列/循环冗余校验大小802.1p/q...源地址的后面跟着一个类型字段,或者长度字段,在多数情况下,它用于确定头部后面的数据类型。 TCP/IP网络常用的值IPv4(0x0800) ,IPv6(0x86DD) , ARP
  • 以太网帧到底有多大?

    千次阅读 2021-06-28 13:56:44
    在802.3标准里,规定了一个以太数据部分(Payload)的最大长度是1500个字节,这个数也是你经常在网络设备里看到的MTU。在这个限制之下,最长的以太包括6字节的目的地址(DMAC)、6字节的源地址(SMAC)、2字节的以太...
  • 为什么以太网数据帧最小为64字节

    千次阅读 2013-11-22 08:35:13
    如果把"以太网"比作是一栋"房子",这栋房子可以算得上是人类构建的非常了不起的"建筑"了,以太网设计人员制定了一系列的标 准,这些看似有... 首先我们先来看一下以太网数据帧的格式:    
  • 目的地址 源地址 类型 数据 校验序列 前导码(7字节):使接收器建立比特同步 其实定界符SFD(1字节):指示一的开始 目的地址DA(6字节):指出要接收该的工作站 源地址SA(6字节):指示发送该的工作站...
  • IEEE802.3局域网协议.以太网最小长度是64字节的原因为什么10Mbps以太网最小数据长度是64B,100Mbps以太网最小数据长度是1518B
  • 以太网帧

    万次阅读 2018-05-20 20:46:59
     以太网帧(Ethernet frame)是符合以太网标准的链路层协议数据单元(PDU),其格式有Ethernet V1、Ethernet V2、RAW 802.3、IEEE 802.3/802.2 LLC和IEEE 802.3/802.2SNAP。现在大多数网络应用都使用Ethernet V2...
  • 以太网帧分析

    2021-09-21 16:05:56
    OSI 模型的数据链路层(第 2 层)实际上由两个子层组成:媒体访问控制 (MAC) 子层和逻辑链路控制 (LLC) 子层。 MAC 子层控制设备交互。... 它们包含除其他外的以太网帧,该被分成多个数据集。 这些记录由提供重要信
  • 1.碰撞槽时间 假设公共总线媒体长度为S,帧在媒体上的传播速度为0.7C(光速),网络的传输率为R(bps),帧长为L(bps),tPHY为某站的...Lmin 称为最小帧长度。  碰撞槽时间在以太网中是一个极为重要的参数,有如下
  • 以太网数据帧结构分析

    千次阅读 2014-07-23 09:15:16
    实验目的:分析IP报头数据段组件,了解数据帧结构 实验软件:Wireshark(OmniPeek下载中……朋友介绍说该软件抓包更强大) 实验线路:ADSL 随便抓的一个数据帧,结构如下 802.3 以太网帧结构 前导...
  • 10Mbps以太网帧长度

    千次阅读 2016-07-23 14:28:42
    1.以太网帧的最短长度为64字节,或者中的数据不得少于46个字节,其中以太网帧头有18字节(以太网2的值为:MAC+2类型+4CRC,注意,如果是802.3的规范,它支持SNAP和802.3以太,其中的2个字节的类型字段就变为长度),...
  • IP协议的数据帧长度是多少?

    千次阅读 2019-04-11 22:07:26
    1、如果使用PPP协议,帧最大长度1510...2、如果在以太网中,帧的长度为:64~1518字节(10~100Mbps 的以太网),1G及以上的以太网帧长度为512~1518字节;其中数据长度(加载上层的协议数据)不超过1500字节。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,671
精华内容 12,268
关键字:

以太网数据帧长度范围