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的工作原理,报文在发送之前,要先侦听一段时间线路是否空闲,空闲才能发送。这个监听时间为帧间隙( IFG: Interframe Gap; IPG: InterPacket 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参数

原文地址 http://bbs.51cto.com/thread-464060-1-1.html

IPv4和IPv6比特转发率和包转发率的关系相关推荐

  1. IPv6技术精要--第3章 对比IPv4和IPv6

    文章目录 3.1 IPv4报文头VSIPv6报文头 -----IPv4报文头------- IHL ( 4比特) ToS (8比特) 数据包总长(Total Length, 16比特) 标识符(Ide ...

  2. 线速 包转发率 吞吐率

    这里的"线速"指网络设备交换转发能力的一个标准,而非通常所言的线速度和角速度.达到线速标准的设备,避免了非线速设备的转发瓶颈,称作"无阻塞处理".即厂商标称交换 ...

  3. 交换机端口包转发率计算

    包转发线速的衡量标准是以单位时间内发送64byte的数据包(最小包)的个数作为计算基准的. 对于千兆以太网来说,计算方法如下:1,000,000,000bps/8bit/(64+8+12)byte=1 ...

  4. 交换机设备理论上线速转发的包转发率

    交换机设备理论上线速转发的包转发率 包转发率是指单位时间内发送固定数值的数据包的个数,常用的固定包大小是64byte. 对于千兆以太网来说,计算方式如下:1000 X 1000 X 1000 bps( ...

  5. 包转发率交换容量详解

    包转发率交换容量详解 交换机的包转发率(吞吐量)指的是交换机转发数据包的能力,单位是pps(包每秒),也就是交换机每秒可以转发多少个数据包. 交换机接口速率:100Mbit/s的以太网接口,学过计算机 ...

  6. 关于交换机包转发率1.488Mpps是如何计算出来的?

    包转发线速的衡量标准是以单位时间内发送64byte的数据包(最小包)的个数作为计算基准的. 对于千兆以太网来说,计算方法如下:1,000,000,000bps/[8bit*(64+8+12)]byte ...

  7. 如何理解路由器的包转发率

    [提问]:请教CISCO2600路由器包转发率是以多大的包为单位计算的啊? [解答]在描述交换机性能时有很多指标,比如,交换容量(Gbps).背板带宽(Gbps).吞吐率或包转发率(Mpps)等等.一 ...

  8. IPv4与IPv6数据包格式

    https://blog.csdn.net/frank_jb/article/details/45093615 本文给出IPv4与IPv6数据报格式示意图,并整理了各个字段含义,最后对比IPv4与IP ...

  9. 交换机两大概念:背板带宽和包转发率

    先认识一下交换机的基本参数. 交换机两大概念:背板带宽和包转发率 交换机:包转发率 这个概念到底起什么作用? 包转发线速的衡量标准---是以单位时间内发送64byte的数据包(最小包)的个数作为计算基 ...

  10. 交换机背板带宽(交换容量)与吞吐量(包转发率)

    一般所说的交换机背板带宽与吞吐量是衡量交换机数据转发能力的重要标准,与下边两个概念有关系 一.交换机交换容量(Gbps) 1.bps--bit/s 2.一般是指交换机处理器及数据总线间所能吞吐的最大数 ...

最新文章

  1. 微软学者 | 郭达雅:瞄准科研目标主动出击,挑战“不可思议”
  2. Java学习日志(一)
  3. 解决每次从cmd进入sqlplus,都得重新设置pagesize、linesize的问题
  4. MATLAB-矩阵基本语法知识
  5. java工作台无法显示_【Eclipse】使用指南(18)搜索工作台
  6. Django UnicodeEncodeError解决
  7. Bash、Terminal通过tab忽略大小写自动补全命令行提示
  8. AudioDestinationNode
  9. LWIP2.0.2 FreeRTOS MQTT 客户端的 使用
  10. 使用Spark分析拉勾网招聘信息(四): 几个常用的脚本与图片分析结果
  11. hdfs java 权限管理,HDFS的权限管理
  12. 在Ubuntu 14.04安装和使用Docker
  13. java个人博客系统源码_Java基于SSM的个人博客系统(源码 包含前后台)
  14. 启用nginx报错80端口被占用
  15. 炫酷神器,AE插件Bodymovin.zxp的安装与使用
  16. 三星2610打印机故障INTERNAL ERROR - Incomplete Session by time out
  17. python微信聊天机器人_Python搭建一个微信聊天机器人
  18. Element-ui中form组件的校验规则
  19. Android OTA升级
  20. “数据中台”在安防行业的应用与发展

热门文章

  1. js基础-(一)-基本数据类型
  2. js基础-21-事件委托
  3. 企业级NFS网络文件共享服务
  4. Linux中文件权限(有图详细讲解)
  5. python的ogr模块_Python与开源GIS:使用OGR模块打开矢量数据
  6. c++模板类_在 MCU 上使用 C++ 之模板类进阶与线性 Kalman 算法代码
  7. oracle的用户和mysql的用户_oracle数据库的用户以及表空间
  8. 安卓手机状态栏显示秒_如何让状态栏时间精确到秒显示
  9. sql_插入,修改,删除
  10. mysql数据词典生成markdown_老板让我把数据库字典导出到Markdown格式的文件