Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5771660
  • 博文数量: 675
  • 博客积分: 20301
  • 博客等级: 上将
  • 技术积分: 7671
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-31 16:15
文章分类

全部博文(675)

文章存档

2012年(1)

2011年(20)

2010年(14)

2009年(63)

2008年(118)

2007年(141)

2006年(318)

分类: 网络与安全

2008-08-27 21:02:31

IPv4和IPv6比特转发率和包转发率的关系
目录:
一、bps和pps如何换算?
二、为什么以太网最短是64字节?
三、IPv6 的最短包长是多少?
四、Spirent上为什么设置IPv6最短长度为76字节,Spirent仪器上能否发送64字节的IPv6报文?
五、IPv6 包的pps如何计算比价合理?


一、bps和pps如何换算?
比特转发率:bps(bits per second)/包转发率:pps(packets per second)
两者采用最短64字节包进行换算。
1Gbps = 1000M bits/((84字节)*8(bit 每字节))=1.488095 Mpps .
包的转发率在最短字节的时候最难达到线速,所以,采用最短字节做为计算包转发率(pps)的包长参数。最短以太包长为64字节,包含DMAC(6)+SMAC(6)+Type(2)+IP Header(20)+填充+CRC(4)。
根据Ethernet的CSMA/CD的工作原理,报文在发送之前,要先侦听一段时间线路是否空闲,空闲才能发送。这个监听时间为帧间隙(IPG Inter-Packet Gap),为发送12个字节的时间。
为了能接受同步,在以太网帧结构前增加了8个字节的前导码(Preamble),其中7个字节为AA(其二进制形式为01010101)用于与接收端同步,第8个字节为AB(帧定界符),用于定界,标明从现在开始后面的是以太网帧。
所以,最短帧的实际长度为:
64字节+12(字节帧间隙)+8(前导码)= 84字节,从而得出前面的转换公式。


二、为什么以太网最短是64字节?
全双工方式下,允许两个站点通过支持全双工数据传输的点到点链路来交换数据,站点能同时传输和接收。没有别的站点来竞争对链路的访问权限,从而也不会出现冲突,不促要CSMA/CD协议的限制,有帧要传输就可以马上发送。
半双工采用CSMA/CD:一个站点要么传输,要么接收,它不可以同时做这两件事,所以存在冲突。由于半双工来自古老的过去,而恰恰最短64字节来10M的自半双工的机制。
半双工里面的,碰撞槽时间在以太网中是一个极为重要的参数,有如下特点:
(1)它是检测一次碰撞所需的最长时间。
(2)要求帧长度有个下限。(即最短帧长)
(3)产生碰撞,就会出现帧碎片。
(4)如发生碰撞,要等待一定的时间。t=rT。(T为碰撞槽时间)
最坏情况下,检测到冲突所需的时间描述如下:
(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字节。
对于半双工:10Mbps以太网的最小帧长为512比特,覆盖的范围可以为2500米,而100Mbps以太网为了能够和10Mbps以太网兼容,同样也要求最小帧长为512比特,这时覆盖的范围只有200米。那么在1Gbps以太网中呢?
1G以太网的半双工对CSMA/CD机制做了修改,在MAC帧的尾部附加了一些特殊的编码,这些编码不会和正常数据相同,这样使得帧的传输时间最少为4096比特时间。
所以,以太网帧采用64字节(512 bits)做为最短帧。


三、IPv6 的最短包长是多少?
IPv6和IPv4区别很小,IPv6的报文头40字节,但这个不会影响到最短的报文长度。实际上IPv6 最短的协议报文应该是ICMP的(destination unreachable )报文,这个报文长度为DMAC(6)+SMAC(6)+TYPE(2)+IP头 (40)+type(1)+Code(1)+Checksum(2)+payload(xx)+CRC(4)= 62+payload。
对于数据报文,最短应该和ICMP报文长度一致。所以IPv6的最短包长也来自半双工以太网的限制。


四、 Spirent上为什么设置IPv6最短长度为76字节,Spirent仪器上能否发送64字节的IPv6报文?
Spirent公司为了统计报文的时延,抖动等参数,在payload打邮戳,共18个字节。如果不打这个邮戳,将无法统计测试数据,如果将这个signature去掉,在Spirent公司的仪器上可以发送出长度为64字节的报文。
76 = 40(报文头)+ 18(Dmac,Smac,CRC,type)+18(用来打时间邮戳,以便统计报文的时延等)=76字节。


五、 IPv6 包的pps如何计算比价合理?
由于采用64字节无法测试出设备包转发的重要参数,所以,建议使用76字节做为最短的包长来进行pps的计算。也可以直接提供76或64字节能达到的bps转发率,而不提供pps参数

阅读(3570) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~