Chinaunix首页 | 论坛 | 博客
  • 博客访问: 78628
  • 博文数量: 52
  • 博客积分: 2575
  • 博客等级: 少校
  • 技术积分: 640
  • 用 户 组: 普通用户
  • 注册时间: 2010-10-08 09:29
文章分类

全部博文(52)

文章存档

2010年(52)

我的朋友

分类:

2010-10-28 14:17:02

PCIX还是PCIE?
网络设备性能高低主要体现在如下两个方面:
(1) CPU
性能: 这直接影响到小包的处理速度,也就是pps
(2) IO:
主要体现在网卡同内存之间交换数据的接口,目前主要有PCIXPCIE
两种.下面主要介绍一下PCIXPCIE

PCIX
是共享式总线,PCIX有如下规格:
(1) 66bit * 64Mhz:
总带宽约66 * 64M = 4Gbits/s
(2) 66bit * 100Mhz:
总带宽约66 * 100M = 6.6Gbits/s
(3) 66bit * 133Mhz:
总贷款约66 * 133M = 8Gbits/s

PCIE
PCIX不一样, PCIE不是共享式的,PCI-E是一种双向串行连接。

其总线本身又分成数个通道,每个通道支持2.5Gbit/S的双向数据传输速度。通过编码和误差校验处理后,数据 被转换成适用于NICHCAHBA传输的2Gbit/秒的有效带宽。
这里需要着重介绍的一个概念就是通道。举个例子,如果你要使用4GbFiber Channel 并在一个端口的HBA上全双工运行的话,就需要400MB/S的双向带宽。如果使用PCI-E技术,只需要两个全速开放的子通道就能够满足需求。也可以使用单通道,但是会被限制在250MB/S的速度上。

PCIE的通道数及其速率:
(1) x1:
每个方向可以同时传输2.5Gbits/s,实际有效数据为2.5G * 8 / 10 = 2.0Gbits/s
(2) x2: x1 * 2 = 4.0Gbits/s * 2
(3) x4: x1 * 4 = 8.0Gbits/s * 2
(4) x8: x1 * 8 = 16.0Gbits/s * 2
(5) x16: x1 * 16 = 32.0Gbits/s * 2

系统接收到一个数据包到数据包发送出去,总共要从总线上传输两次,因此,如果希望 系统能够实现双向2G线速,则要求总线至少具备4Gbits/s的带宽,从理论上说,上述两种总线都是足够的.

但是由于PCIX是共享式的,并且地址和数据都通过总线进行传输,因此在实际中需要打一个 折扣,一般为60%(如果是打包,则比例会更高一些) ,也就是说对于66bit * 64MhzPCIX 线而言,其提供给数据的有效带宽为60% * 4Gbits/s = 2.4Gbits/s,因此它不能达到双向 2G线速的要求.同样的我们也可以得出,只有100Mhz133Mhz的总线才有可能达到这个要求.

PCIE由于是独享式的,两个方向可以同时发送和接收,因此x1, x2, x4, x8, x16均可以达到要求.

总结一下:
(1) PCIEPCIX有更高的带宽
(2) PCIE
PCIX有更低的单向延迟,这主要是由于其全双工操作特性.
因此在选择主板和网卡的时候,要尽量考虑其对PCIE的支持.

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