王朝网络
分享
 
 
 

TCP/IP协议处理 由“软”转“硬”

王朝other·作者佚名  2008-05-31
宽屏版  字体: |||超大  

面对网络带宽和速度的飞速增长,传统的通过软件进行TCP/ip协议处理的方式已经越来越成为高性能网络计算的瓶颈。

在目前的以太网环境中,TCP/IP协议的处理都是通过软件方式在中心处理器上实现。当网络速度达到G比特数量级时,主CPU就越来越繁忙,其中大部分处理负荷都是来自对TCP/IP协议的处理,例如对IP数据包的校验处理、对TCP数据流的可靠性和一致性处理。大量协议数据还需要通过I/O中断进行操作,不断在网络接口缓冲区和应用程序内存之间进行数据交换,这些额外负担极大地降低了主CPU的处理效率,增加了应用计算的平均等待时间。按照CPU对网络数据流的处理比率分析,大概CPU每处理1比特网络数据,就将消耗1Hz的处理性能,也就是说需要20GHz的CPU处理能力满负荷运行才能满足10GB以太网数据流的处理要求。

同时,由于目前对TCP/IP协议进行处理都是采用通用CPU及其配套的系统结构,而这种体系下CPU的主要功能是进行通用计算,并非进行输入输出操作。因此在网络带宽和速度飞速发展的情况下,网络链路速度高于CPU对TCP/IP协议栈的处理速度将导致系统的输入输出系统成为网络瓶颈。

TOE分担协议处理负荷

为了在高速网络环境中改进和优化服务器性能,减轻对网络协议的处理负荷,TCP/IP负荷减轻引擎(TOE,TCP/IP Offload Engine)技术应运而生。

TOE技术的基本思想是分担CPU对TCP和IP协议的处理,将协议处理过程放到高速网卡或者高速线卡等硬件上完成,其中包括TCP、IP、UDP、ICMP等子协议的处理。基于TOE技术的TCP/IP的块级数据传输将比通常方式提高10%以上的性能。

将原来通过软件方式处理的TCP/IP协议放在专门的硬件上完成,从而将应用和网络分离处理,会使10G以太环境中应用服务器的CPU资源利用率大大提高,可以显著地改善服务器性能。例如在IP存储领域,在iSCSI的协议处理过程中就明确采用了这种技术。

对传统的网卡而言,处理一个32KB的文件,需要与主机CPU进行近30次交互,大约20次数据包交换,10次应答。但网卡配置TOE功能后,数据包和应答信号处理在网卡中实现,数据与应用缓冲区间的交换由基于硬件的DMA处理,这就为应用的处理腾出了更多的CPU资源。同时也降低了系统I/O总线和内存总线的负荷,降低了应用系统的处理延时。传统网卡在集成TOE功能后,采用会话层接口在传输层与主机之间进行交互,帮助实现应用中的大文件(超过10KB)处理。TOE处理与传统TCP/IP处理方式对比如上图所示。

如3Com的3C996-T 10/100/1000 PCI-X服务器网卡,融合了基本的校验和中断处理功能,能实现双向300M到900M数据吞吐率。一块具备高级TCP/IP处理功能的网卡,如Alacritech的1000x1服务器及存储加速器,能够实现双向1500M到1800M数据吞吐率。下表列出了TOE技术的测试比较数据。

实现策略:部分分担还是全分担?

TCP协议处理过程大概可以分为以下几个部分:TCP建连过程、数据收发过程、连接维护过程、错误治理过程。因此根据TCP负荷分担的策略,TOE技术可以分为部分分担和全功能分担两种。用户可以根据应用要求进行选择。

部分分担又称为数据路径分担。由于10G以太环境下网络链路非常好,很少出现丢包的情况,TCP连接在很长一段时间内都比较稳定,大量的协议处理都来自数据收发过程,因此通过对数据收发过程进行分担处理,可以重点减轻CPU对数据收发的处理压力,改善应用的处理性能。

全功能分担就是对TCP处理的4个过程都进行分担处理,彻底释放主CPU对TCP处理的负荷。在网络连接非凡多的情况下,频繁的TCP建连、断连过程都将消耗巨大的CPU资源,另外由于TCP连接对端工作状态的不确定性,将导致CPU需要对TCP连接错误及时处理。

为了使TOE技术融入现在网络处理体系中,除了在网络接口硬件中提供TCP处理功能外,还必须在操作系统中加载TOE网络驱动软件,操作系统核心层应用通过该接口实现应用层数据的上传下达。

实现方案:板卡实现还是ASIC芯片?

从器件实现上来说,TOE方案可以采用两种结构:分离元件结构和采用专用ASIC芯片。

分离元件TOE采用电路板构建,结构上已接近计算机,具备嵌入式处理器(或微处理器)、固件、存储器、数据传输总线、实时操作系统以及PHY/MAC接口。在这里,通常由主机CPU完成的协议处理功能改由实时操作系统中嵌入的TCP/IP协议栈来处理。TOE板卡实现方案的优点是具有很大灵活性,分离元件易于更改,固件可方便运用ROM芯片进行级;可通过固件升级办法对TCP/IP栈进行修改,以适应非凡的处理环境。

采用专用ASIC芯片的实现方案是将协议的处理功能集成到定制化的芯片中,由于具备专用的处理和存储芯片,因此ASIC TOE在性能上有很大的提高,但缺点是硬件的开发和初始应用成本比较高,可编程能力、扩展性、灵活性比较差。网络设备的可编程能力和处理性能经常是一对矛盾,为了进一步提高处理的灵活性又保证处理速度,现在又出现了可配置ASIC芯片,该芯片含有可编程固件,软件可动态更新,具有较大的灵活性。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
>>返回首页<<
推荐阅读
 
 
频道精选
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有