基于FPGA的网络处理技术的性能和灵活性分析.docxVIP

基于FPGA的网络处理技术的性能和灵活性分析.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FPGA的网络处理技术的性能和灵活性分析

基于FPGA的网络处理技术的性能和灵活性分析??? 网络处理是指对在通信和网络设备中传送的数据包进行的处理,网络处理不仅出现在网络核心,还出现在MAN/LAN(图1)中。??? 网络处理可通过几类半导体器件实现,因而网络OEM能根据特定需求选择适当的器件组合。那么究竟由谁决定需求呢?这些需求是由通信运营商和互联网业务提供商(ISP)决定的。业务提供商要求网络设备的架构和增值功能不仅能为客户提供不同类型的业务,而且还能增加收入。业务提供商与商业用户签署了数百万美元的业务品质协议(SLA),以确保特定的业务类型和品质。因此业务提供商在开发构成网络设备的半导体器件中,为获得适当的特性和灵活性,需要投入大量资金。??? 揭开网络处理的面纱??? 网络处理最基本的概念是建立在预定义分类和规则上的网络数据包智能分组处理分析、流程和实现准则。需要注意的是,分类和规则必须可定制,以满足不同业务提供商的需求。本文将重点讨论线路卡。每个线路卡的入口和出口信道上均带有数据通路和控制通路,数据通路负责以线速率处理和传送分组数据而不产生较大的延迟,而控制通路则负责提供处理智能、强化规则、处理意外情况并监控统计数字。??? 图2显示了线路卡网络处理的核心功能,其中虚线包围的3个模块给出了主要的网络处理功能。尽管网络处理限制在线路卡以内,但也足以影响整个系统的架构。例如,某些路由器专用于一组独立的线路卡,以获取专项功能(如安全处理)。根据网络处理所需的设备,系统可以(或不必)需要这些线路卡。??? 选择适当的半导体器件??? 网络处理可采用多种半导体解决方案,但可广义地归为ASIC和可编程器件两类。那么这两类器件是如何实现网络系统设计的呢?应用于网络处理的ASIC和可编程器件的主要原理与任何其他应用并无区别。从高端角度看,ASIC可为固定功能提供较高性能,但灵活度很有限。虽然ASIC的流片费用(NRE)较高并且产品的上市时间较长,但其高产量还是颇具成本效益。??? 另一方面,可编程解决方案可提供较高的系统速率,包括复杂功能(特殊和异常处理)、灵活性和最短的产品上市时间。可编程器件无需流片费用,价格比相应的ASIC略为昂贵。因为可编程解决方案灵活度较高并可升级,因而具有比ASIC更长的产品寿命,由此降低了整体系统的成本。??? 尽管上面对ASIC和可编程解决方案进行了区分,但目前还没有能综合两种半导体优势并满足各种需求的完美解决方案。器件的最终选择取决于特定需求,首先考虑应用于网络处理的可编程解决方案。??? 1.可编程解决方案??? 可编程解决方案主要有两类:网络处理器(NPU)和FPGA,两者都是可编程的。NPU可提供以处理器为中心(即以软件为中心)的可编程特性,而FPGA则提供以硬件为中心的可编程特性。设计人员很快就能认识到以软件为中心的方法的性能将低于以硬件为中心的方法。理解网络处理和网络处理器之间的差异相当重要:网络处理是一种功能,而网络处理器则是一类可编程器件。??? 2.实现网络处理器??? 网络处理器最初被用于设计网络设备中的现成器件,这些器件在各方面提供灵活性和扩展性的同时,还提供了充分的性能。几家大型和小型半导体公司参与了竞争,并推出带有极高灵活性和超短产品上市时间的线速网络处理器。大多数NPU均带有多种编程特性经过优化的嵌入式RISCCPU以及适用于通用分组处理功能的类ASIC硬件电路(图3)。每个RISC引擎经过优化以执行特定任务。该思想有利于在硬件电路中处理常规层2/层3功能,而RISC引擎则处理复杂和特殊情形。当然,所需的任何定制均可委托给RISC引擎。NPU通常采用汇编/微代码,有时也采用定制的C语言实现可编程特性。??? 3.FPGA??? FPGA是对数据进行高速并行处理的理想器件,具有极强的灵活性和扩展性。FPGA总是通过增添简单实用的网络设备,解决由NPU引发的问题并紧跟市场。例如,Virtex-IIProFPGA包含高性能的可编程架构、嵌入式PowerPC处理器和3.125Gbps收发器,从而成为网络处理的理想选择。FPGA是OEM跨接层2/层3不同传输流并实现高速功能(如安全协处理器)的最佳选择。通过增强网络特性,FPGA可提供高性能的数据和控制处理功能。但与NPU不同,FPGA不带有内置的网络处理功能,因而必须通过编程以进行网络处理。对于NPU,OEM必须开发汇编代码(或某种层次的C代码)以实现网络处理功能;而对于FPGA,OEM必须采用硬件描述语言(HDL)、具有知识产权的内核和C语言实现FPGA中的数据通路和控制通路。??? 可编程解决方案如何解决网络处理问题???? 首先考虑那些能从可编程解决方案(NPU或FPGA)中获得巨大利益的特定网络处理功能。??? 1.深度分组处理??? 尽管层2和层3处理在ASIC

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档