精华内容
下载资源
问答
  • 在传统以太网中,为什么要有最小帧长度和最大帧长度的限制?   以太网(IEEE 802.3)帧格式: 1、前导码:7字节0x55,一串1、0间隔,用于信号同步 2、帧起始定界符:1字节0xD5(10101011),表示一帧开始 3、DA(目的...

    在传统以太网中,为什么要有最小帧长度和最大帧长度的限制?

     

    以太网(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到数据域这部分内容而得到的校验和。 以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。

     

    对于1000Mb/s的吉比特以太网,MAC层有两种选择,要么保留CSMA/CD,要么不用它。若保留CSMA/CD协议,必须面临碰撞检测问题,这就要再一次减小网络的最大有效传输距离到25米。当然您可以不缩短网络的距离,而是增加一个帧的程度,就如我们开始分析100Mb/s以太网那样,让一个帧持续足够长的时间。但因为上层来的数据没有这么多,所以就需要在MAC层进行一些无用数据的填充来满足这个要求。

    最后,我们推导出以下比例关系:

    最小帧长/传输速率 正比于 网络最大传输距离/光速

    一个网络的最大传输距离也称为冲突域,传输一个最小帧所用的时间(最小帧长/传输速率)正比于1位信息穿越冲突域的时间。

     

    以太网的最大帧长有1518,1522,1536。那么这几个值是怎么来的呢?

    下面是最初802.3定义的以太网帧结构:

    Preamble (7-bytes) --前导位

    Start Frame Delimiter (1-byte) --定界符

    Dest. MAC Address (6-bytes) --目的地址

    Source MAC Address (6-bytes) --源地址

    Length / Type (2-bytes) --长度或帧类型

    MAC Client Data --数据,n最大为1500,即MTU

    (0-n bytes) Pad --填充字段,p最大为46

    (0-p bytes) Frame Check Sequence (4-bytes) --帧校验码

    其实Ethernet V2为实际的标准了。所以我们最常见到的是,源地址后是类型而非长度。

    在1998年提出的802.3ac里,加入了对vlan的支持。也就是在有vlan的情况下在源地址后多加入4个字节,所以就有了1522这个帧长度了。

    Preamble (7-bytes) --前导位

    Start Frame Delimiter (1-byte) --定界符

    Dest. MAC Address (6-bytes) --目的地址

    Source MAC Address (6-bytes) --源地址

    Length/Type = 802.1Q Tag Type (2-byte) --表明是VLAN,这个为8100

    Tag Control Information (2-bytes) --3-bits User Priority Field;1-bit Canonical Format Indicator (CFI);12-bits VLAN Identifier (VID)

    Length / Type (2-bytes) --长度或帧类型

    MAC Client Data --数据,n最大为1500,即MTU

    (0-n bytes) Pad --填充字段,p最大为46

    (0-p bytes) Frame Check Sequence (4-bytes) --帧校验码

    最后要提的就是1536这个长度了。我们知道802.3中规定,如果Length / Type的值大于0×600则表示是类型,而这个值就是1536。

    1998年提出的802.3z中的应用。802.3中提出了一个Extension字段放在了最末尾。它主要作用是在短封包(如64)传输时,由于1000M速度的加快,导致传输时间的减少,破坏了原有冲突检测的机制,缩短了有效传输矩离,所以要增加一些字节,使长度达到512。当然,这个只用在半双工时了。

    第2 / 3页

    其实在802.3中没有规定要扩展的值的大小的,所以最大可以扩展到1536。

    还有一个就是802.1ad。也就是所谓的“Q-in-Q”,就是多重的vlan了,主要为网络运营商用来管理的,实现用户的vlan和运营商的vlan相隔离。这个也会加大现有封包的长度,会增加4个字节。 以太网最大帧长 最小帧长 - Sacrifice - BabyUnion

    还有一个Jumbo frame。这东西不是802.3的标准,而一些厂商提出来的,为了提高1000M时的传输效率。由于是非标的,所以各家支持的大小也不尽相同。一般来说,现在一般可以支持到9k。 在802.3z中还提出一个Frame Bursting。这个东西可以提高短包的传输效率。在1000M以太网下,limit”。帧和帧之间以extension bits来填充gap,以表示线路处于占用状态。burst mode唯一特殊的是,第一个帧要加一个”extension field”。

    新的改变可以参见802.3as-2006。

    使用burst mode,一端可以连续发包,直到达到了65,536 bit times (8192 byte times)的”burst

    展开全文
  • MobileIMSDKServer修改TCP的帧长度为60KB的jar包
  • 以太网帧长度大小限制

    万次阅读 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

    展开全文
  • 在传统以太网中,为什么要有最小帧长度和最大帧长度的限制? 以太网(IEEE 802.3)帧格式: 1、前导码:7字节0x55,一串1、0间隔,用于信号同步 2、帧起始定界符:1字节0xD5(10101011),表示一帧开始 3、DA...

    在传统以太网中,为什么要有最小帧长度和最大帧长度的限制?

    以太网(IEEE 802.3)帧格式:

    1、前导码:7字节0x55,一串10间隔,用于信号同步

    2、帧起始定界符:1字节0xD5(10101011),表示一帧开始

    3DA(目的MAC)6字节

    4SA(MAC)6字节

    5、类型/长度:2字节,01500保留为长度域值,153665535保留为类型域值(0x06000xFFFF)

    6、数据:461500字节

    7、帧校验序列(FCS)4字节,使用CRC计算从目的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

    展开全文
  • 以太网最小合法帧长度 64字节

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

    以太网最小合法帧长度为?( B

    • A 32字节

    • B 64字节

    • C 100字节

    • D 不确定

    解析:

    以太网帧格式:目标 MAC 地址 6 字节,源 MAC 地址 6 字节,类型 2 字节,数据和填充 46-1500 字节,FCS(帧检验序列) 4 字节,所以最小合法帧为 64 字节。

    展开全文
  • 关于可变帧长度数据的解析

    千次阅读 2018-11-15 16:54:10
    关于可变帧长度数据的解析 在项目中需要解析另一主机的数据,而该主机数据是由积木式拼搭而成的可变的数据帧格式,每个积木所包含的数据长度不定,但是都小于10; 这里说明一下我在实际应用中的解决方法: 首先是和...
  • MobileIMSDK服务端修改TCP帧长度为60KB后源码与jar包
  • IP协议的数据帧长度是多少?

    千次阅读 2019-04-11 22:07:26
    1、如果使用PPP协议,帧最大长度1510...2、如果在以太网中,帧的长度为:64~1518字节(10~100Mbps 的以太网),1G及以上的以太网,帧长度为512~1518字节;其中数据长度(加载上层的协议数据)不超过1500字节。 ...
  • ALOHA算法的帧长度调整方法, 读器有效范围内可能存在的标签数目,指导阅读器设定适当的值继续下一帧清点。仿真表明该方法具有可行性和实用性。 (RFID) 帧时隙 ALOHA 防碰撞
  • 行业文档-设计装置-基于帧长度切换通道的超高频读写器天线扩展方法及智能天线分支器.zip
  • 帧大小与帧长度

    万次阅读 2018-03-06 16:33:59
    几乎所有视频编码格式都可以简单的认为一就是编码后的一副图像。而音频跟音频格式有关,由各个编码标准规定。如果以PCM(未经编码的音频数据)来说,它根本就不需要的概念,根据采样率和采样精度就可以播放了...
  • 基于双边假设检验的NEO改变帧长度机制基于双边假设检验的NEO改变帧长度机制
  • 以太网帧长度 64 octet

    千次阅读 2014-01-14 11:16:16
    ZZ 1.碰撞槽时间 假设公共总线媒体长度为S,帧在媒体上的传播速度为0.7C(光速),网络的传输率为R(bps),帧长为L(bps),tPHY为某站的物理...Lmin 称为最小帧长度。 碰撞槽时间在以太网中是一个极为重要的参数,有
  • (2012年联考) 两台主机之间的数据链路层采用了后退N帧协议(GBN)传输数据,数据的传输速率为16kbps,单向传播时延为270ms,数据帧的长度范围是128~512字节,接收方总是以数据帧等长的帧进行确认(即确认帧长度与发送...
  • 使用Directx.Capture; 从网络摄像头捕获图片(从“预览图片框”捕获)。 显示该长度有时是(很少)可以的:大约25000多数时候是大于10倍,大约320000! 这是为什么? 宽度和高度在两种情况下总是相同的...
  • 为什么以太网的最小数据帧长度为64字节? CSMA/CD冲突避免的方法:先听后发、边听边发、随机延迟后重发。一旦发生冲突,必须让每台主机都能检测到。关于最小发送间隙和最小帧长的规定也是为了避免冲突。 以太网...
  • 10Mbps以太网的帧长度

    千次阅读 2016-07-23 14:28:42
    1.以太网的最短长度为64字节,或者中的数据不得少于46个字节,其中以太网头有18字节(以太网2的值为:MAC+2类型+4CRC,注意,如果是802.3的规范,它支持SNAP和802.3以太,其中的2个字节的类型字段就变为长度),...
  • 遇到的问题:以太网的数据封装如下图所示,包含在IP数据报中的数据部分最长应该是( )字节? A.1434 B.1460 C.1480 D.1500 答案:C 原因: 以太网(IEEE 802.3)格式: 1、前导码(前同步码):7字节0x55,...
  • 为什么最小帧长度是64字节

    千次阅读 2018-05-02 18:54:25
    总结:最小数据的设计原因和以太网电缆长度有关,为的是让两个相距最远的站点能够感知到双方的数据发生了碰撞;最远两端数据的往返时间就是争用期,以太网的争用期是51.2微妙,正好发送64byte数据。 - 原文地址...
  • 以太网帧长度1518、1522、1536的说明

    千次阅读 2018-01-15 14:13:15
    一、IEEE802.3 以太网结构:  Preamble (7-bytes) --前导码 Start Frame Delimiter (1-byte) --定界符  Dest.... Source MAC Address (6-...Length / Type (2-bytes) --长度类型  Data
  • 四、 "数据" 长度、 五、 "数据" 组装方法、 六、 透明传输、 七、 字符计数法、 八、 字符填充法 ( 加转义字符 )、 九、 零比特填充法 ( 5 "1" 1 "0" )、 十、 违规编码法、 十一、 透明传输常用方法、
  • ##############################################################...Ethernet II以太网格式: 目标MAC 源MAC 类型 数据 FCS 6字节 6字节 2字节 46-1500字节 4字节 所以最小6+6+2+46+4 = 64,最大6+6+2+1500+4 = 15
  • Request ATS: ATS :answer to select 例子log : 卡的类型 :08 00 卡序列号: F4 9 E CD ...根据log 可以看出: 卡片的帧长度 大于 读卡器的帧长度,所以按照 读卡器的帧长度 来传输。
  • 题中要想达到最大数据率应该在相同时间内发送尽可能多的,所以长应该尽可能小 在发送端的发送时延=的大小/数据传输率 =确认在接收端的发送时延 这样的话,对于数据长度范围是128~512字节的,...
  • 假设总线上A发送数据到B,则连接到总线上的工作站都会收到A的数据,然后通过匹配中的目的地址来判断是不是发送给自己的数据,如果是发送给自己的数据则收下,否则丢弃。 载波监听: 由于连接在总线上...
  • 1.传输时延>...由2式,数据减小800bit,即传输时延减小 800bit/1Gbps=8*10^(-7) s 由1式,因此传播时延至少减小1/2 * (810^(-7) )=410^(-7) s 由3式,因此站点间距离最少减少 4*10^(-7) * 200000 =0.08km
  • 关于CAN标准与扩展两种格式长度的解析 ■CAN总线的标准和扩展主要决定ID的长度 ■标准ID长度是11位,也就是ID的范围是000-7FF ■扩展ID长度是29位,也就是ID的范围是0000 0000-1FFF FFFF ...
  • 1.碰撞槽时间 假设公共总线媒体长度为S,帧在媒体上的传播速度为0.7C(光速),网络的传输率为R(bps),帧长为L(bps),tPHY为某站的...Lmin 称为最小帧长度。  碰撞槽时间在以太网中是一个极为重要的参数,有如下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 134,630
精华内容 53,852
关键字:

帧的长度