新一代可编程ASIC技术浅析


专用集成电路ASIC是指应特定需要而设计制造的集成电路,在网络芯片中使用广泛。它通过把指令或计算逻辑固化到芯片中,获得很高的处理能力,实现性能极高的网络功能。一般来说,ASIC针对特定功能,采用的是相对封闭而集中的软硬件开发平台,如果要引入新的网络协议和功能,必须重新设计ASIC,这一点无疑让设备商非常头疼。现在,可编程的ASIC技术已经出现,它将一些对性能要求高、重要的网络功能模块或者需要升级的功能置于可编程的电路层,大大增加网络的灵活性,同时保护用户投资。

但遗憾的是,目前仅少部分网络设备供应商能支持ASIC。因为开发定制芯片需要巨大的成本投入,同时需要最短2年的研发时间。绝大部分的网络设备商依靠专业芯片制造商如博通,Intel旗下Fulcrum,Marvell等生产的通用网络芯片,只有Juniper和思科这样的巨头更倾向于采用ASIC芯片,可提供比采用纯软件更快的网络性能。

思科和Juniper推出的可编程ASIC,不仅可以在无需重新设计ASIC的情况下支持新的网络协议,还可以将所有的数据流量汇聚到单一的数据平面进行处理,支持网络可编程,实现软件定义网络SDN功能,并支持各种协议的可持续性发展。

哪些供应商能提供可编程ASIC交换机?

除了思科、Juniper外,还有哪些网络设备商可提供可编程ASIC?ASIC的投入较大,例如Juniper就花费3 年时间及数百万美元的投资来研发可编程ASIC,目前能支持ASIC的网络设备商还屈指可数。

Juniper高级产品营销总监Dhritiman Dasgupta表示,“定制芯片相比通用芯片优势明显,一般来说,通用芯片要落后ASIC定制芯片约3年。”

Juniper的Trio可编程ASIC技术最先是为路由器而设计,现在已在其最新的园区和数据中心交换机产品EX9200中得到运用。Trio是Juniper最新一代的Packet Forwarding Engine ASIC,它让EX9200的数据平面可编程,无需额外硬件便能实现网络自动化和互操作性,帮助企业应对新兴SDN协议。

Dasgupta表示,可编程意味着在提升网络的灵活性的同时保证网络性能,让网络的数据包转发、路由、交换、安全等功能通过软件来实现,ASIC比芯片方案的速度要快100-1000倍。

思科软件与战略规划部高级总监Lauren Cooney表示,思科也推出了可编程ASIC交换机,其Catalyst交换机3850与WLAN控制器5760都基于新的cisco可编程ASIC,也被称为统一接入数据平面(UADP),旨在将有线与无线的数据流量汇聚到一个单一的数据平面进行处理,为用户提供一致的管理,并允许用户使用SDN服务。

IDC数据中心网络研究总监Brad Casemore表示,“这也是一个有趣的现象,除了思科和Juniper,很少有厂商一直对专用ASIC如此青睐。未来这些ASIC核心交换机究竟有多重要的意义,发展态势如何?我想,还得看客户的需求。”

为何要使用可编程ASIC?

我们知道,普通的可编程芯片一般都不是定制的,在数据中心,园区网、服务提供商、城域以太网等环境应用比较广泛。而不同网络类型对数据平面性能需求不一样,可编程的ASIC可以灵活编程,实现对所有网络类型的支持。

但可编程ASIC并不是每个企业都必需的,不同企业对定制芯片的性能、功能、灵活性水平的需求都不一样,企业最好根据自身需求而定。

Dasgupta还表示,一些厂商声称自己的ASIC是完全可编程的,可引入新的网络协议进行封装。但企业客户一定要注意,它们是否能以线速工作,谨防被忽悠。

还有些厂商声称其可编程ASIC支持网络功能虚拟化,“如果一台服务器接收或发送海量的数据到不同的网络中去,数据中心的核心交换机需要将这些数据包发送到MPLS或IP网络,它需要将数据包发送到PCI接口或者是高安全的网络”。例如Juniper的EX9200采用了可编程ASIC芯片,可完成通常由3个独立交换机和路由器完成的处理、聚合、虚拟化功能,同时添加对新的网络协议(例如VXLAN和NVGRE)的支持,可处理未来的SDN协议,加速应对不断变化的业务需求。

可编程ASIC技术助推SDN

在SDN架构下,硬件只是负责数据转发,相应的控制和管理则交给了控制器软件,控制器将计算出来的转发策略通过网络注入到ASIC芯片,ASIC硬件芯片用来快速转发数据,而其可编程的特性,则可以实现更快速地重新配置和扩展,可以更快提高网络性能,保护用户投资。

可编程ASIC技术允许企业在自己的核心交换机的数据平面进行重新编程,添加新的SDN协议支持,同时可扩展性强,企业可不用担心自己的网络架构被重新建设或者被替换。可编程ASIC核心交换机可以让企业的底层IT基础设施和网络能够与时俱进,借可编程性帮助企业应对新兴SDN协议和应用程序;并确保网络运营及服务商无需更新硬件,便能灵活添加未来服务,高度可靠。

基于可编程ASIC的SDN可以让客户、合作伙伴、开发人员利用API接口去构建自己的应用程序和服务控制网络,包括自己的ASIC。但其规模应用还为时尚早,不过专家表示,核心交换机上采用可编程ASIC技术非常有可能,近期也有望有实质性的进展。同时,通用芯片制造商也有望在自己的可编程的芯片中引入SDN支持,希望Intel,博通等通用芯片商在SDN及下一代网络协议的支持上不断突破,最终实现SDN的推广应用。

相关内容