Xilinx采用最新SDNet环境实现“软”定义网络
扫描二维码
随时随地手机看文章
在通信架构受消费者对更高带宽、更好更可靠更安全服务需求推动而快速发展演进之际,赛灵思积极创新,推出了一项改变游戏规则的技术和设计方法,致力于帮助客户快速为有线和无线网络以及数据中心推出和升级下一代线路卡。这种新技术就是其软件定义规范环境SDNet。结合使用赛灵思All Programmable FPGA和SoC,SDNet能让通信设计团队运用赛灵思所谓的“软”定义网络(“Softly”Defined Network)这一革命性创新方法来实现下一代软定义网络架构线路卡的设计和升级。
从固定网络到SDN
赛灵思通信IP和服务副总裁Nick Possley指出,过去20年来,通信架构主要包含固定的控制层和数据层,而且无法随着网络要求的发展进行扩展。如果电信运营商想扩展网络功能、提高整体带宽,这种僵硬化的架构就迫使其不得不频繁更换设备。线路卡是系统的核心器件,基本采用高度专业化的ASIC、ASSP和存储器IC组合。FPGA则用于加速和桥接线路卡芯片间的通信。
随着需求的加快,电信运营商和通信系统企业为满足有关需求开始探索更好的解决方案。过去几年来,这些企业开始转而采用软件定义网络(SDN)和网络功能虚拟化(NFV)技术。这种架构将控制层和数据层相分离,并为控制层添加了更多软件虚拟化功能,这样电信运营商就能快速部署新应用,而且网络设备也比在传统网络中更易于升级换代,从而有助于延长使用寿命(进而提高盈利能力)并简化网络管理(见图1)。
图1 – 今天的软件定义网络将控制层和数据层相分离,但仍采用固定的数据层,差异化极低,生命周期也很短。
图中文字如下:
更好的解决方案:软定义网络
采用SDNet和赛灵思革命性创新型软定义网络方法,通信系统公司能够开发出集成低功耗All Programmable线路卡,其功能绝不仅限于软定义控制层和SDN架构所需要的网络智能。这种新技术还能帮助厂商用具有内容智能功能的软件定义数据层硬件实现系统差异化。这意味着设计团队能够根据他们系统对网络服务和应用的确切需求来定制硬件(见图2)。
网络架构师(这些人通常没有硬件设计背景)习惯用英语描述来表达具体协议要求,如Internet 的请求注解(RFC)或ISO标准文档。
不过Possley指出,即便是最近新推出的SDN和NFV架构也仍然相当死板,因为数据层不具可编程性,设计通常采用现成的ASSP。居网络核心地位的线路卡采用现成的分立包处理器和连接至光学器件的流量管理器ASSP,与协处理器和外部存储器一起使用。这种线路卡还采用FPGA来加速所有这些芯片间的通信。
许多不同芯片制造商为SDN和NFV架构打造的最新版ASSP确实符合SDN规范。但由于供应商推出向所有网络系统公司推出通用的ASSP,因此这些芯片在产品差异化或功能扩展方面缺乏竞争力。这样一来,网络系统厂商被迫降低价格来赢得电信运营商的青睐。
表面上,我们认为电信运营商会喜欢这种设备价格走低的趋势。但实际上,即便是基于ASSP的SDN架构中,固定的数据层设计也仍然非常僵硬,电信运营商如果发现ASSP固定的硬件功能无法满足不断变化的应用、协议升级和新特性需求,就只能进行昂贵的现场线路卡更换。线路卡更换需要关闭网络,同时还要求技术人员拆下老旧线路卡并安上新卡。此外,ASSP厂商还倾向于在设计中内置过多功能,试图让单个器件满足众多不同市场需求。这样,这些ASSP线路卡就会耗费更多电力,导致设备发烫,因此电信运营商必须采取额外措施来给设备降温。冷却成本当然也会增加运营支出,从而进一步影响电信运营商的最终盈利能力。
然后,他们要依靠精通目标器件底层架构的专业工程师来手动将这些协议要求转换为低层特定实现描述(通常要采用高度专业化的微代码)。这些硬件工程师要么指定通用处理器或专用网络处理器如何执行包处理,要么在定制ASIC中设计有关功能。
随后网络设计团队必须验证硬件能否实现架构师的最初设计意图,或者说能否至少满足线路卡应使用的最新协议版本要求。如果线路卡无法满足有关要求,那就必须重复设计过程直至能正确运行为止。由于所需规范和微代码之间的关系不够直观,这一过程变得更加复杂,同时底层架构性能存在局限性,功能因面向不同服务公司也存在差异。
SDNet的软定义网络方法直击问题根源,使网络系统设计团队能够快速设计出“生成即保证正确(correct by construction.)”的线路卡。具体说来,SDNet侧重线路卡最复杂设计部分的自动化,即现代线路卡中包处理器和流量管理器功能的设计和编程(见图3)。
网络系统团队不是让两个不同的分立ASSP执行这些功能,而是在单个赛灵思All Programmable FPGA或SoC上集成包处理和流量管理功能以及其它线路卡功能。他们能确保为目标应用创建最佳实现方案。除了在单个All Programmable器件中集成许多芯片功能之外,SDNet还能优化线路卡高级行为规范的创建,并自动生成RTL模块,便于实现在赛灵思All Programmable器件、固件和验证测试平台中。
Possley指出:“借助SDNet,系统架构师能够指定内容,而不是方式。系统架构师能精确指定他们要部署的服务,而不去管底层硅硬件上到底怎么部署。”
在SDNet流程中,系统架构师可用高级功能规范定义线路卡功能(见图4)。让架构师用SDNet能够描述语法分析、编辑、搜索和服务质量(QoS)策略引擎等多种不同类型包处理引擎所需的行为。架构师能够分层级描述引擎,从而简化子引擎,它们能够互联并编排进入分组数据流中。这些子引擎还能包含用户提供的引擎。SDNet规范环境不提供实现细节。这样客户能够自由扩展缩放设计的性能和资源,而且无需了解底层架构的细节。SDNet规范也不局限于任何特定的网络协议。
Possley指出,SDNet非常简单,赛灵思选定几家客户进行了beta测试,这些客户都认为其非常直观易用。他说:“它以简单直观的规范大幅减少了客户要生成的代码量,因此相对于网络处理器的微编码而言工作量大幅减少。”
一旦架构师完成了SDNet规范环境中的系统引擎和流程定义,就能为SDNet的编译器提供吞吐量和时延要求以及运行时间可编程性要求,这将影响编译器生成的优化硬件架构。架构师随后执行命令,SDNet的编译器会自动为硬件模块生成设计需要的RTL。编译器还生成固件和核实/验证测试平台。SDNet设计环境不仅包括赛灵思针对网络优化的SmartCORE和针对连接功能优化的LogiCOREs,同时还集成了外部存储器控制处理器和嵌入式处理器。
图2 – SDNet为数据层带来灵活性和自动化,实现了用于下一代网络设计和升级的软定义网络方法。
图中文字如下:
图3 – 各大公司借助SDNet能够创建高度集成的All Programmable线路卡。.
编译后,网络工程师就能在Vivado® 设计套件中用IP生成器(IPI)工具完成设计实现。他们首先使用Vivado工具和IPI转换SDNet编译器生成的RTL架构描述为最佳的赛灵思FPGA实现方案,如果所选器件上有足够的可用资源,然后网络工程师就可在FPGA中集成任何其它线路卡功能,从而创建出片上All Programmable线路卡。
图4 – 基于SDNet的实现流程支持All Programmable线路卡的生成即保证正确设计。
此外,SDNet可为功能核实和验证生成数据,引导实现生成即保证正确的设计。具体来说,SDNet的编译器接受一系列测试包来测试设计的输入输出。架构师可在设计流程的规范定义阶段使用该测试包,确保其创建正确的SDNet描述解释。网络工程师可在SDNet编译器生成的RTL描述仿真阶段使用测试包。最后但同样重要的是,这些测试包能在设计最后实现阶段配合使用网络测试设备协助硬件验证。此外,SDNet将为搜索引擎查询表生成相应的内容。这种核对-验证功能可大幅缩短设计时间,消除系统架构师和网络硬件工程师之间的迭代工作,从而有助于不同工作团队加快向市场推出高度差异化的产品。
赛灵思杰出工程师Gordon Brebner指出,编译器自动生成定制固件操作及其针对架构中不同组件的二进制编码。他说:“这使得架构师能直接控制处理。”SDNet有一个实用功能,能够记录所生成的架构及其固件的运行和存储细节。用户以更新版SDNet描述作为输入返回编译器时,它能明确是否只需固件升级就能支持修改(无需生成新硬件),抑或需要重新生成硬件(和固件)。在大多数情况下,仅升级固件即可完成中等规模的升级(如添加或减少线路卡要处理的协议)。
Brebner指出:“由SDNet编译器生成的固件和架构之间密切关联,这意味着用户能执行无中断升级,固件更改并投运都不会中断数据包传输。这样,企业进行重大服务升级就不会对造成服务中断。这种革命性开发成果要归功于SDNet技术及其配套使用的赛灵思All Programmable器件高级规范的独有特性。”(见图5)
Possley指出:“SDNet能够生成支持无中断操作即时升级的数据路径处理功能,这是其独到之处。电信运营商能通过标准的SDNet API用软件控制器为线路卡组件添加新的特性或功能。”
他补充指出,其能在嵌入式软处理器或外部处理器上运行升级软件。当然,如果在赛灵思Zynq®-7000 All Programmable SoC上实现设计,那就能在器件的嵌入式ARM®处理器上运行软件。
Possley指出:“SDNet在软件控制下可提供全面的硬件可编程功能,因此我们称之为‘软’定义网络。”
如需了解有关SDNet规范环境的更多信息,包括SDNet的视频演示,敬请访问:china.xilinx.com/sdnet。
该网站还为您提供题为《针对网络的全新SDNet软件定义规范环境》的深度白皮书。
图5 – 部署后,SDNet能让厂商不中断服务就升级线路卡协议。