精华内容
下载资源
问答
  • 自适应帧长系统的帧同步方法
  • 自适应帧长系统的帧同步算法
  • 以太网帧最小帧长与最大帧长

    万次阅读 多人点赞 2016-11-13 10:58:11
    以太网最小帧长为64字节,那么IP报文最小为46字节,而局域网规定IP最大传输单元1500字节,实际上加上以太网帧的18字节,就是1518字节。 讨论以太网的帧长,就不得不先提一下以太网的大名鼎鼎的CSMA/CD协议...

    以太网的帧开销是18字节,是“目的MAC(6)+源MAC(6)+Type(2)+CRC(4)”。以太网最小帧长为64字节,那么IP报文最小为46字节,而局域网规定IP最大传输单元1500字节,实际上加上以太网帧的18字节,就是1518字节。


    讨论以太网的帧长,就不得不先提一下以太网的大名鼎鼎的CSMA/CD协议。

    1.1  CSMA/CD协议

    CSMA/CD是英文carrier sense multiple access/collision detected 的缩写,可把它翻成“载波监听多路访问/冲突检测”,或“带有冲突检测的载波侦听多路访问”。

    所谓载波监听(carrier sense),意思就是以太网络上的各个工作站在发送数据前,都要监听总线上有没有数据正在传输。若有数据传输 (称总线为忙),则不发送数据,需要等待;若无数据传输(称总线为空),可以立即发送准备好的数据。

    所谓多路访问(multiple access),意思就是以太网络上的各个工作站在发送数据时,共同使用一条总线,且发送数据是广播式的。

    所谓冲突(collision),意思就是,若以太网上有两个或两个以上工作站同时发送数据,在总线上就会产生信号的冲突;多个工作站都同时发送数据,在总线上就会产生信号的冲突,哪个工作站接收到的数据都辨别不出真正的信息。这种情况称冲突或者碰撞。

    为了减少冲突发生的影响,工作站在发送数据过程中还要不停地检测自己发送的数据,检测自己传输过程中有没有其他工作站在发送数据,在传输过程中与其它工作站的数据发生冲突,这就是冲突检测(collision detected)。

    详细见CSMA/CD协议介绍。

    1.2  以太网探测帧

    当多个工作站均想向以太网发送数据时,如果总线处于忙的状态,大家都等待,也不会有何争议;但是如果总线处于空的状态,而且工作站是依次监听到空状态,那么各个工作站就会陆续向总线发送数据,A工作站发送的数据还未传递到另一个要发送数据的B工作站,那么B工作站仍然认为总线为空的状态,那么B工作站也向总线注入数据;如果还有更多工作站向总线注入数据,原理一样,只是更加复杂而已。

    A工作站传递的数据与B工作站传递的数据就会在总线的某处发送冲突,导致此次数据发送失败。那有什么办法可以提前判断,使得工作站不必每次都源源不断的向总线注入数据,其后又检测到冲突,而重新等待,如此反复,既浪费了宝贵的工作站资源与总线资源,又使得数据迟迟不能发送出去。

    先了解下碰撞信号,就是连续的01010101或者10101010,十六进制就是55或AA。以太网实现原理是,假设某个工作站检测到冲突发生,那就发送碰撞信号,使冲突更加明显,使得所有工作站均能检测到总线发生了冲突。

    我们来看一下,假设A检测到总线是空闲的,开始发数据包,尽力传输,当数据包还没有到达B时,B也监测到总线是空闲的,开始发数据包,这时就会发生冲突。假设B 首先发现发生碰撞,开始发送碰撞信号。

    这个碰撞信号会返回到 A,如果碰撞信号到达A时,A还没有发完这个数据包,A就知道这个数据包发生了错误,就会重传这个数据包。但如果碰撞信号会返回到A时,数据包已经发完, 则A不会重传这个数据包。

    以太网为什么要设计这样的重传机制。首先,以太网不想采用连接机制,这会降低传输效率,但他又想保证一定的传输效率。因为以太网的重传是微秒级,而传输层的重传,如TCP的重传达到毫秒级,应用层的重传更达到秒级。我们可以看到越底层的重传,速度越快,所以对于链路层发生的错误,以太网必须有重传机制。

    要保证以太网的重传,必须保证A收到碰撞信号的时候,数据包没有传完,要实现这一要求,A和B之间的距离很关键,也就是说信号在A和B之间传输的来回时间 必须控制在一定范围之内。

    解决方法就是,每个想要发送数据的工作站,检测到总线为空状态,在发送数据之前,先发送一个探测帧,探测帧的发送就圆满的解决了上面的问题。而探测帧的长度既要达到最快速的传递到目的地,又要确保探测帧的传递时间足够使得其他工作站能够监听到。这个探测帧的长度就是以太网规定的最小帧长,就是一个最小最长帧。

    由于以太网传递的帧,归根结底还是由比特流组成。上面提到的传输速率,其实就是工作站的发送速率,传输一个帧还是一个个的比特发送出去。即,工作站发送一个帧的第一个比特到达目的地,而此帧的最后一个比特正好发送出去。

    2.1  碰撞槽时间

    C代表光速,也就是20.3cm/ns(每纳秒20.3厘米), C是30W。电子在铜介质(普通铜)中的移动速度是21W/s  。

    假设公共总线媒体长度为S,帧在媒体上的传播速度为0.7C(光速),网络的传输率为R(bps),帧长为L(bps),tPHY为某站的物理层时延; 

    则有:

    碰撞槽时间=2S/0.7C+2tPHY

    因为Lmin/R=碰撞槽时间 

    所以:Lmin =(2S/0.7C+2tPHY )×R 

    Lmin 称为最小帧长度。

    碰撞槽时间在以太网中是一个极为重要的参数,有如下特点: 

    (1)它是检测一次碰撞所需的最长时间。

    (2)要求帧长度有个下限。(即最短帧长)

    (3)产生碰撞,就会出现帧碎片。

    (4)如发生碰撞,要等待一定的时间。t=rT。(T为碰撞槽时间)

    假设:A、B两地之间通过一个单向传送带传递物品,传送带的传输速度是C(C代表光速),也就是20.3cm/ns(每纳秒20.3厘米),A点有个人叫Marcia,她要把一车荔枝一串一串的发送给B点的那个人Allen,现在Marcia需要抉择的是:我在传送荔枝给Allen的时候,如果Allen同时也有荔枝传给我,这个时候就会产生冲突,而冲突会把传送中的荔枝撞碎,破碎的荔枝渣会通过传送带反送给我,我很想知道是哪一串荔枝被撞碎了,如何实现?一个办法就是:在我收到荔枝碎片的时候,我仍旧在传着这串荔枝!比如有很多串荔枝,第1串,第2串等,当我发送第3串荔枝的过程中,收了荔枝碎片,那肯定是第3串里先发出的荔枝出现了碰撞,而不是第2串或第1串中的荔枝发生碰撞。

    为了实现这一点,假如Marcia到Allen点的距离是2500米(250000厘米),传送带上的荔枝每纳秒20.3厘米,那么一串荔枝中的第一个荔枝到达Allen点的用时就是250000除以20.3=12500纳秒,在加上碎片返回的时间是12500纳秒,等于25000纳秒,这个时间就是一串荔枝在传送带上必须持续的时间。

    Marcia高兴的时候,往传送带上放荔枝的时候快,不高兴的时候就慢。高兴的时候每秒可以往传送带上放100Mbit个荔枝,换算一下,也就是说放一个荔枝用10纳秒。不高兴的时候每秒钟只能往传送带上放10Mbit个,也就是说放一个荔枝用100纳秒。

    因为一串荔枝必须持续的时间25000纳秒,那么对于不高兴的时候,25000除以100=250个荔枝,这个结果就是一串荔枝的数量。所以,理论上一个10Mbit/s的以太网,最小帧长应该是250bit。但为了确保Marcia在放荔枝的过程中不会被扎到手,放送荔枝间会有一定的延时,所以最小帧长被定义为512bit(64字节)。

    因为一串荔枝必须持续的时间25000纳秒,对于高兴的时候,25000除以10=2500个荔枝,这个结果就是一串荔枝的数量。所以,理论上一个100Mbit/s的以太网,最小帧长应该是2500bit。但一个2500bit的帧又太大了,上层来的数据包不可能这么大。所以我们只能缩短A点到B点的距离为250米,一个荔枝在传送带上往返的时间也变成了2500纳秒。这时用2500除以10=250个荔枝,这个结果就是一串荔枝的数量。所以,理论上一个100Mbit/s的以太网,最小帧长应该是250bit,网络最大有效距离是250米。但为了确保Marcia在放荔枝的过程中不会被扎到手,放送荔枝间会有一定的延时,所以帧长被定义为512bit(64字节)。

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

    2.2  最优冲突时间

    下面我们来估计在最坏情况下,检测到冲突所需的时间 

    (1)A和B是网上相距最远的两个主机,设信号在A和B之间传播时延为τ,假定A在t时刻开始发送一帧,则这个帧在t+τ时刻到达B,若B在t+τ-ε时刻开始发送一帧,则B在t+τ时就会检测到冲突,并发出阻塞信号。

    (2)阻塞信号将在t+2τ时到达A。所以A必须在t+2τ时仍在发送才可以检测到冲突,所以一帧的发送时间必须大于2τ。 

    (3)按照标准,10Mbps以太网采用中继器时,连接最大长度为2500米,最多经过4个中继器(以太网中使用中继器的5-4-3-2-1原则),因此规定对于10Mbps以太网规定一帧的最小发送时间必须为51.2μs。 

    (4)51.2μs也就是512位数据在10Mbps以太网速率下的传播时间,常称为512位时。这个时间定义为以太网时隙。512位时=64字节,因此以太网帧的最小长度为512位时=64字节。

    2.3  以太网帧长

    802.3-2002标准定了以太网的头结构为DA(6)+SA(6)+Len/Type(2)=14字节。帧校验序列(FCS):4字节,使用CRC计算从目的MAC到数据域这部分内容而得到的校验和。

    以太网的帧开销是18字节,是“目的MAC(6)+源MAC(6)+Type(2)+CRC(4)”。以太网最小帧长为64字节,那么IP报文最小为46字节,而局域网规定IP最大传输单元1500字节,实际上加上以太网帧的18字节,就是1518字节。

    IEEE定义了这个标准,一个碰撞域内,最远的两台机器之间的round-trip time 要小于512bit time。(来回时间小于512位时,所谓位时就是传输一个比特需要的时间)。这也是我们常说的一个碰撞域的直径。

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

    这就是为什么以太网要最小64个字节,同样,在正常的情况下,碰撞信号应该出现在64个字节之内,这是正常的以太网碰撞,如果碰撞信号出现在64个字节之后,叫 late collision。这是不正常的。

    CISCO交换机有一种转发方式叫fragment-free,叫无碎片转发,他就是检查64个字节之内有没有错误,有的话不转发,这样就排除了正常的以太网错误包。

    转自http://www.cnblogs.com/aixin0813/p/3310040.html

    展开全文
  • 以太网原理 最大帧长 最小帧长

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

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

    以太网(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。

     

    熟悉了最小帧长,可以说就明白了为什么基于CSMA/CD协议的以太网有网段长度限制,同时也掌握了以太网的精髓。 
    在这之前,我们应该先了解一下CSMA/CD协议。

    什么是CSMA/CD协议(载波侦听多路访问/冲突检测协议)?一个房间有很多人,如果同时说话,就谁也听不清楚别人说什么,于是大家约定了一个机制:每个人在说话之前先听一下有没有其他人说话(载波侦听),如果有,自己就先不说话,如果没有,就说话。如果大家同时发现房间里没有人说话,则同时开口,此时就产生冲突(冲突检测),产生冲突后大家都闭嘴,每个人心里都随机的选一个时间开口说话,这样随机时间时间最短的那个人就可以说话了,而其他人听着。在这一个大房间里,大家在同一个空间(共享同一个介质)里可以彼此说话(多路访问。而不仅是只能和某个人说话)。以太网就是遵循这种方式通信,链接在同一条网线上的多个设备必须在发送数据前先侦听线上有无其他机器在传输,如果没有就发送,如果遇到冲突就等一个随机的时间再发送。 
    关键的一点是:发送和接受端如何感知冲突? 
    假设:A、B两地间通过一个传送带链起来,传送带的滚动速度是C(C代表光速),也就是20.3cm/ns(每纳秒20.3厘米),A点有个人叫A1,他要把一车苹果分成一小堆一小堆的发送给B点的那个人B1,现则A1需要抉择的是:我在传送苹果给B1的时,如果B1同时也有苹果传给我,这个时候就会产生冲突,而冲突会把传送中的苹果撞碎,破碎的苹果渣会通过传送带反送给我,我很想知道是哪一小堆苹果被撞碎了,如何实现?一个办法就是:在我收到苹果碎片的时候,我仍旧在传着这堆苹果!比如有很多堆苹果,第1堆,第2堆等,当我发送第3堆苹果的过程中,收了苹果碎片,那肯定是第3堆里先发出的苹果出现了碰撞,而不是第2堆或第1堆中的苹果发生碰撞。 
    为了实现这一点,假如A到B点的距离是2500米(250000厘米),传送带上的苹果每纳秒20.3厘米,那么一堆苹果中的第一个苹果到达B点的用时就是250000除以20.3=12500纳秒,在加上碎片返回的时间是12500纳秒,等于25000纳秒,这个时间就是一堆苹果必须持续的时间。 
    体力稍好的人,往传送带上放苹果的时候快,体力不好的就慢。体力稍好的人每秒可以往传送带上放100Mbit个苹果,换算一下,也就是说放一个苹果用10纳秒。体力不好的人每秒钟只能往传送带上放10Mbit个,也就是说放一个苹果用100纳秒。 
    因为一堆苹果必须持续的时间25000纳秒,那么对于体力不好的人,25000除以100=250个苹果,这个结果就是一堆苹果的数量。所以,理论上一个10Mbit/s的以太网,最小帧长应该是250bit。但为了确保碰撞切实的被检测到,最小帧长被定义为512bit(64字节)。 
    因为一堆苹果必须持续的时间25000纳秒,对于体力好的人,25000除以10=2500个苹果,这个结果就是一堆苹果的数量。所以,理论上一个100Mbit/s的以太网,最小帧长应该是2500bit。但一个2500bit的帧又太大了,上层来的数据包不可能这么大。所以我们只能缩短A点到B点的距离为250米,一个苹果在传送带上往返的时间也变成了2500纳秒。这时用2500除以10=250个苹果,这个结果就是一堆苹果的数量。所以,理论上一个100Mbit/s的以太网,最小帧长应该是250bit,网络最大有效距离是250米。但为了确保碰撞切实的被检测到,最小帧长被定义为512bit(64字节)。 
    以下动画演示了发送端A在把数据传输给B时,在将要到达B点的地方出现了碰撞,于是碰撞碎片传回了A,A就知道正在传输的数据出现冲突了。

     

     

    由此可见,MAC层发送的速度越快,以太网的最大有效距离就越短。但对于1000Mb/s的吉比特以太网,MAC层有两种选择,要么保留CSMA/CD,要么不用它。若保留CSMA/CD协议,必须面临碰撞检测问题,这就要再一次减小网络的最大有效传输距离到25米。当然您可以不缩短网络的距离,而是增加一个帧的程度,就如我们开始分析100Mb/s以太网那样,让一个帧持续足够长的时间。但因为上层来的数据没有这么多,所以就需要在MAC层进行一些无用数据的填充来满足这个要求。 
    最后,我们推导出以下比例关系: 
    最小帧长/传输速率 
    正比于 
    网络最大传输距离/光速 
    一个网络的最大传输距离也称为冲突域,传输一个最小帧所用的时间(最小帧长/传输速率)正比于1位信息穿越冲突域的时间。

    展开全文
  • 最大帧长和最小帧长详解

    万次阅读 多人点赞 2018-04-01 16:02:52
    文章出处:... 以太网(IEEE 802.3)格式: 1. 前导码:7字节0x55,一串1、0间隔,用于信号同步; 2. 起始定界符:1字节0xD5( 10101011 ),表示一开始; 3. DA ( 目...

    文章出处:

    https://blog.csdn.net/ixidof/article/details/7799891



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

        以太网(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。

     

        熟悉了最小帧长,可以说就明白了为什么基于CSMA/CD协议的以太网有网段长度限制,同时也掌握了以太网的精髓。

        在这之前,我们应该先了解一下CSMA/CD协议。

        什么是CSMA/CD协议(载波侦听多路访问/冲突检测协议)?一个房间有很多人,如果同时说话,就谁也听不清楚别人说什么,于是大家约定了一个机制:每个人在说话之前先听一下有没有其他人说话(载波侦听),如果有,自己就先不说话,如果没有,就说话。如果大家同时发现房间里没有人说话,则同时开口,此时就产生冲突(冲突检测),产生冲突后大家都闭嘴,每个人心里都随机的选一个时间开口说话,这样随机时间时间最短的那个人就可以说话了,而其他人听着。在这一个大房间里,大家在同一个空间(共享同一个介质)里可以彼此说话(多路访问。而不仅是只能和某个人说话)。以太网就是遵循这种方式通信,链接在同一条网线上的多个设备必须在发送数据前先侦听线上有无其他机器在传输,如果没有就发送,如果遇到冲突就等一个随机的时间再发送。
       

        关键的一点是:发送和接受端如何感知冲突?
        假设:A、B两地间通过一个传送带链起来,传送带的滚动速度是C(C代表光速),也就是20.3cm/ns(每纳秒20.3厘米),A点有个人叫A1,他要把一车苹果分成一小堆一小堆的发送给B点的那个人B1,现则A1需要抉择的是:我在传送苹果给B1的时,如果B1同时也有苹果传给我,这个时候就会产生冲突,而冲突会把传送中的苹果撞碎,破碎的苹果渣会通过传送带反送给我,我很想知道是哪一小堆苹果被撞碎了,如何实现?一个办法就是:在我收到苹果碎片的时候,我仍旧在传着这堆苹果!比如有很多堆苹果,第1堆,第2堆等,当我发送第3堆苹果的过程中,收了苹果碎片,那肯定是第3堆里先发出的苹果出现了碰撞,而不是第2堆或第1堆中的苹果发生碰撞。

        为了实现这一点,假如A到B点的距离是2500米(250000厘米),传送带上的苹果每纳秒20.3厘米,那么一堆苹果中的第一个苹果到达B点的用时就是250000除以20.3=12500纳秒,在加上碎片返回的时间是12500纳秒,等于25000纳秒,这个时间就是一堆苹果必须持续的时间。
        体力稍好的人,往传送带上放苹果的时候快,体力不好的就慢。体力稍好的人每秒可以往传送带上放100Mbit个苹果,换算一下,也就是说放一个苹果用10纳秒。体力不好的人每秒钟只能往传送带上放10Mbit个,也就是说放一个苹果用100纳秒。
        因为一堆苹果必须持续的时间25000纳秒,那么对于体力不好的人,25000除以100=250个苹果,这个结果就是一堆苹果的数量。所以,理论上一个10Mbit/s的以太网,最小帧长应该是250bit。但为了确保碰撞切实的被检测到,最小帧长被定义为512bit(64字节)。
        因为一堆苹果必须持续的时间25000纳秒,对于体力好的人,25000除以10=2500个苹果,这个结果就是一堆苹果的数量。所以,理论上一个100Mbit/s的以太网,最小帧长应该是2500bit。但一个2500bit的帧又太大了,上层来的数据包不可能这么大。所以我们只能缩短A点到B点的距离为250米,一个苹果在传送带上往返的时间也变成了2500纳秒。这时用2500除以10=250个苹果,这个结果就是一堆苹果的数量。所以,理论上一个100Mbit/s的以太网,最小帧长应该是250bit,网络最大有效距离是250米。但为了确保碰撞切实的被检测到,最小帧长被定义为512bit(64字节)。


        以下动画演示了发送端A在把数据传输给B时,在将要到达B点的地方出现了碰撞,于是碰撞碎片传回了A,A就知道正在传输的数据出现冲突了。

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

        最后,我们推导出以下比例关系:
        最小帧长/传输速率
        正比于
        网络最大传输距离/光速
        一个网络的最大传输距离也称为冲突域,传输一个最小帧所用的时间(最小帧长/传输速率)正比于1位信息穿越冲突域的时间。


    展开全文
  • CSMA CD)的最小帧长计算 ——总结 CSMA CD)的最小帧长计算 ——总结 CSMA CD)的最小帧长计算 ——总结
  • 以太网长度大小限制

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

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

    千次阅读 2019-04-17 16:04:50
    以太网最小合法长度为?( B ) A 32字节 B 64字节 C 100字节 D 不确定 解析: 以太网格式:目标 MAC 地址 6 字节,源 MAC 地址 6 字节,类型 2 字节,数据和填充 46-1500 字节,FCS(检验序列) 4 ...
  • 在传统以太网中,为什么要有最小长度和最大长度的限制?   以太网(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...
  • 以太网数据帧最短帧长问题

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

    万次阅读 多人点赞 2015-12-09 21:46:07
    以太网中传输的数据帧的长度并不是一个常数,而是一个范围内的,以太网帧长度最大限制(MTU)是1518字节,最小长度是64字节。... 首先,这是一个历史问题,今天确实没有必要限制最小帧长了。早期的以太网使用总线拓
  • 以太网的最小帧和最大帧长的意义

    万次阅读 多人点赞 2018-09-18 23:45:20
    以太网最小帧长为什么是64字节 以太网是无连接的,不可靠的服务,采用尽力传输的机制。以太网CSMA/CD我就不多讲了,我相信大家都了解这个原理。  以太网是不可靠的,这意味着它并不知道对方有没有收到自己发出的...
  • 关于可变长度数据的解析

    千次阅读 2018-11-15 16:54:10
    关于可变长度数据的解析 在项目中需要解析另一主机的数据,而该主机数据是由积木式拼搭而成的可变的数据格式,每个积木所包含的数据长度不定,但是都小于10; 这里说明一下我在实际应用中的解决方法: 首先是和...
  • 总时延=发送时延+传播时延+处理时延+排队时延发送时延:是从发送数据的第一个比特算起,到该的最后一个比特发送完毕所需的时间。发送时延=数据长度(b) /信道带宽(b/s) [信道带宽就是数据率...
  • 计算机网络——CSMA/CD最小帧长相关题目

    千次阅读 多人点赞 2021-01-08 14:45:00
    计算机网络——CSMA/CD最小帧长问题 本篇博客主要讲解有关CSMA/CD最小帧长求解相关例题,关于CSMA/CD详细详解请参考博客:CSMA/CD协议分析笔记 例题一、假定1km长的CSMA/CD网络的数据率为1Gbit/s。设信号在网络上的...
  • IP协议的数据长度是多少?

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

    千次阅读 2016-12-07 01:30:43
    以太网最小帧长与TCP/IP的联合运用@(计算机网络) 在平均往返时延RTT = 20ms的快速以太网上运行TCP/IP协议,假设TCP的最大窗口尺寸是64KB,问此时TCP协议所能支持的最大数据传输率约是(C) A. 3.2Mbit/s B. ...
  • CSMA/CD协议最小帧长的思考

    万次阅读 多人点赞 2016-10-01 22:43:44
    但是CSMA/CD协议,我想很多人和我一样对于最小帧长,争用期,二进制指数退避算法的应用是有一些困惑的。也因此,这是出数字计算的出题点。 本篇便是对这部分知识点的归纳总结。CSMA/CD的流程首先,需要建立的认识是...
  • 大小与长度

    万次阅读 2018-03-06 16:33:59
    几乎所有视频编码格式都可以简单的认为一就是编码后的一副图像。而音频跟音频格式有关,由各个编码标准规定。如果以PCM(未经编码的音频数据)来说,它根本就不需要的概念,根据采样率和采样精度就可以播放了...
  • (2012年联考) 两台主机之间的数据链路层采用了后退N协议(GBN)传输数据,数据的传输速率为16kbps,单向传播时延为270ms,数据的长度范围是128~512字节,接收方总是以数据进行确认(即确认长度与发送...
  • 以太网原理 之 最大帧长和最小帧长

    千次阅读 2012-07-29 21:42:56
     在传统以太网中,为什么要有最小长度和最大长度的限制?  以太网(IEEE 802.3)格式:  1. 前导码:7字节0x55,一串1、0间隔,用于信号同步;  2. 起始定界符:1字节0xD5( 10101011 ),表示一
  • 引入Hub再生的最短帧长及主机之间距离的最大值计算@(计算机网络)首先看一道题。相关的一个小的知识点想了很久,查了很多书,资料,最后只能暗自说一句,找到有效信息真难。历时三个小时求索不得,出去吃了一点东西,...
  • 以太网帧长64字节与46字节

    千次阅读 2019-01-29 22:05:13
    根据CSMA/CD要求,为保证碰撞检测以太网最小帧长为64字节,其中以太网帧头+帧尾共18字节,所以以太网的data(IP,arp,rarp数据报) 至少为46字节,而arp或者rarp为28字节,为达到46字节需要填充18字节(pad).. ...
  • CSMA/CD最大/最小帧长 争用期

    千次阅读 2021-01-04 23:23:13
    CSMA/CD协议 1.概念 CSMA/CD (Carrier Sense Multiple Access/collision detection) MA(Multiple Access)多址接入 CS(Carrier Sense)载波监听 CD(collision detection)碰撞检测 多址接入:多个主机连接...最大帧长
  • 混合帧长的流量模型更符合真实的应用场景,因此我们在越来越多的测试场景中看到测试例要求加入测试混合帧长,而不仅仅是测试固定帧长的流量。如何设置混合流量模型:首先在配置流量的界面选择iMIX,然后选择Edit。在...
  • 一种不定帧长的语音压缩编码算法一种不定帧长的语音压缩编码算法

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 232,990
精华内容 93,196
关键字:

帧长