TCP offload engine(TCP减负引擎)

执行TCP/IP协议要消耗大量的 网络内存, CPU及前端总线资源。TCP/IP协议请求需要多次与 CPU产生互动。


如上图所示,TOE消除了步骤1和2.这就减少了通过前端总线的 数据流,从4到2,几乎少了一半的 数据流量。

当执行TCP/IP协议请求时,CPU要参与以下活动:
数据包处理
数据传输
数据前后连接
处理中断

TOE适配器使得 服务器CPU从小数据包处理工作中解脱出来,因为在NIC里有一个专门的TCP/IP 引擎来执行该工作。但是CPU还得处理中断处理及数据连接工作。对于大块数据包来讲,由于单一的拷贝动作被完全消除掉,因而数据传输效率大大提高了。

如 果一台服务器有一块100 Mbps网卡,它最大吞吐量可达到16 MBps的话,那么它需要CPU处理大约43 000次内存操作(假设1460 byte的包)来在没有延迟的情况下满足应用的要求。这种情况没有包括CPU时钟循环周期来执行错误校验和TCP checksum确认过程。同样地,一块220 MBps 速度的Gigabit网卡需要CPU来处理大约613 000次内存操作。这就占用了大量的子 系统资源。

使用一块支持TOE的网卡将会大量地减轻对CPU的影响。这是通过改变包的传输模式来实现的,从每一网卡数据包对应一个事件到每个应用I/O对应一个事件。在本质上,通过消除从 驱动到栈的拷贝操作(读与写)来减少前端总线的数据流。

考虑到以上的因素,CPU对Gigabit网卡的I/O操作请求处理次数将从每秒613 000 I/Os次减少到大约306 000 I/Os次,有效地减少了大约一半CPU的数量处理工作。

下图表明了以前由 操作系统来管理处理的工作现在移交TOE适配器来管理。



这项技术将会减少CPU及前端总线的工作量,因此使服务器将潜在的有限资源分配给其它任务。10 Gigabit适配器足以可以造成内存及前端总线溢出,在这种情况下使用TOE适配器将有效地减少性能瓶颈影响。

下图表明了TOE适配器对CPU利用率的有效提高所发挥的作用。可以显而易见地看到小数据包传输容易导致服务器的CPU性能出现瓶颈。


在下图可以看到TOE可以在一定程度上提高某些包的吞吐量,一个单口的GigabitTOE适配器的线速度可以达到160 MBps。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值