以太网帧长度 64 octet

ZZ

1.碰撞槽时间

假设公共总线媒体长度为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为碰撞槽时间)

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个中继器,因此规定对于10Mbps以太网规定一帧的最小发送时间必须为51.2μs。
(3)51.2μs也就是512位数据在10Mbps以太网速率下的传播时间,常称为512位时。这个时间定义为以太网时隙。512位时=64字节,因此以太网帧的最小长度为512位时=64字节。

3.以太网的帧头开销是18字节,可能是“目的MAC(6)+源MAC(6)+Type(2)+CRC(4)”至于IP最大传输单元1500,只是规定。

====================================================

最大1518应该有地方限制才对,先记在这,找到原因再补上
 
以太网最小字节长度(64 bytes)
以太网为什么要有最小字节限制:以太网采用的是CSMA/CD方法在介质上传输数据,而CSMA/CD的特性要求有最小字节限制
CSMA/CD 为什么要有最小字节限制:在CSMA/CD网络中,发送数据的一方在发送数据的同时会监听网络是否有碰撞。
一旦发送方发送完一个最后一个bit以后,仍然没有检测到碰撞,它就会认为,这次传输已经成功

A----------------------c(冲突)------------------------------------B

如果发送方(A)传输的是一个非常小的帧的话,它发送完帧以后,认为这次传输已经成功,并会在继续监听碰撞。
当数据在A与B之间进行传输时,B并没有检测到A发送帧的第一个bit,认为线路是空闲的,所以B就会发送帧,这样在线路上肯定会有碰撞。
碰撞发送以后,由于A不监听碰撞,所以A也不会进行碰撞处理,不会再重传帧,导致发出去的这个帧丢失,从而导致数据丢失
这就要求有最小的帧长限制

在IEEE802.3 Baseband 5-4-3中规定:在任意两个节点之间,最大的physical segments为5个,所以最多可以有4个repeaters在两个节点之间。
这5个physical segments 之间, 只有三个可以连接节点,而其它的两个只能被当作延长网络之用
在使用10Base-5线缆的网络中,每个physical segment 最长是500米,所以,每个Ethernet的最大长度是2500米

A------------Repeater1---------- Repeater2--------- Repeater3----------- Repeater4-----------B
|----------------------------------------------2500meter-------------------------------------|

最小时间要求:

A传送帧的第一个bit到达B,B开始传输,产生碰撞,发出碰撞信号,碰撞信号要在A传输完最后一个bit时,能够到达A,从而让A感知到碰撞,从而重传这个帧。
一个帧从A-B,B-A的这个时间被称为slot time,这个时间计算出来为57.6 μs.

在10Mbit/s的网络中,在57.6μs的时间内,能够传输576个bit,所以要求以太网帧的大小最小为576个bits,从而让所有的碰撞都能够被检测到

以太网帧的构成:


Preamble
Start-of-
Frame-Delimiter
Destination MAC
Source MAC
Type
Payload
CRC
Interframe
Gap
7 bytes
10101010
1 bytes
10101011
6 bytes
6bytes
2 Bytes
46-1500
bytes
4 Bytes
12 bytes


在传输完一个数据帧以后,在传输下一个数据帧之前,要传输12bytes的空闲帧

12 bytes = 12×8 = 96 bits
在10Mbit/s的网络中,传输1个bit 需要的时间为 1×10-7s
所以Interframe Gap 的时间为 96×10-7=9.6×10-6 s= 9.6μs
在一个数据帧发送完以后,要等待9.6μs的时间,然后再传输下一个数据帧

576bits= 72 bytes
通常情况下我们所说的以太网长度,不包括preamble和start of frame delimiter,所以以太网最小长度为:72-8= 64 bytes
以太网的最大字节长度(1518/1522)
为什么在以太网中,三层的IP包长要规定为64~1500 字节,都是二层的Ethernet特性来决定的:
最小包长由CSMA/CD的最小检测碰撞时间来决定
最大包长没有特别的规定,但是考虑到如下的因数,将IP最大包长设置为1500 bytes:
1.       以太网是所有的终端共享传输介质,如果一台终端发送一个很长的帧,传输时将占用太多的时间,其它的终端将等待,直到这个帧传输完毕。帧越长,等待的时间将越长
2.       如果一个帧太长,如果在传输的过程中,发生一个传输错误,那么整个帧要重传,这样又要占有大量的时间,导致效率不高---—早期的以太网由于传输的错误率非常高
3.       帧越长,需要的缓存越大,1979年在设计网卡时,缓存的价格非常昂贵,所以当时选用1500 bytes作为最大的长度。

标准的以太网的最大字节长度为1518/1522:
untagged的frame最大帧长为1518
tagged的frame 最大帧长为1522
其它的长度都是设备厂商自己规定的:如Jumbo frame 等
MTU1.  MTU:Maximum Transmission Unit,设备发送数据时,任何比MTU大的数据包都会被分片,分片是在三层进行的,所以这里所说的MTU,指的是三层报文的长度,不包括二层的信息-------指的是最大IP报文的长度
2.  标准的以太网上,MTU值为1500bytes,不包括以太网头和CRC(Cyclic Redundancy Check),总共18bytes
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章