网络处理器(英语:Network Processing UnitNPUNP),是一种专门应用于网络应用数据包的处理器

网络处理器也是集成电路的一种,但区别于特殊用途集成电路(ASIC)的单一功能,网络处理更加复杂、更加灵活,一般可以利用软件韧件依照网络运算的特性特别编程从而实现网络的特殊用途,在一块晶片上实现许多不同功能,以应用于多种不同的网络装置及产品。

特性

编辑

在现代通讯网络中,语音、视频和资料等资讯不再以模拟信号的方式发送,而是以数据包(packet data)的方式。网络处理器为了能优化处理数据包,特别具备了一些特性和架构,以加速处理网络数据包的效率。可以完成路由查找、协议分类、报文处理以及防火墙服务质量等各种任务[1]

轻度的运算负荷

编辑

网络型运算考量应用程式的不同要求,有许多重度的运算负荷,是完全在本机端运算完之后,才上传到网络。此外,网络型应用程式的兴起,也大辐改变了运算的类型,因为网络型应用程式中常见的收信、发信、写文章、删文章,对伺服器而言都只是简单的工作;相对于传统本机上的应用程式,每个线程的工作大多需要很复杂的计算才能完成。

多线程

编辑

网络型运算相对于本机型运算的单人使用、操作,必须同时执行多个操控动作(如网络社群在线服务必须在同一时间内同时应付数百、数千人同时收信、发信,就开启了多个线程),相对于本机型运算只有一个人使用、操作,网络型运算同时间得应付的线程较多。

线程关连性低

编辑

网络型应用程式上的数百、数千人的存取服务要求,彼此之间并没有强烈的关系性。例如网络电邮系统上的A收信者和B发信者,彼此之间并没有任何关系。

重视资料的通量

编辑

因为网络型运算的资料重复性低(A收信者和B发信者的资料重复性低),因此无法像CPU靠增加缓冲存储器容量以加快处理效率,而必须加强处理资料的进出量。

减少进程

编辑

网络型运算完成的资料需要直接透过网络传出去,因此网络处理器会一并集成网络控制器,让CPU能直接存取网络控制器内的资料,以减少处理资料的程序,加速资料处理量。

传统本机型运算视“网络”为附属功能,资料必须先通过网络控制、存储器、晶片组,CPU才能获得;CPU处理完的资料,还必须透过相反的路径才能送达网络控制器,增加处理资料程序的结果,是处理大量网络资料的性能不佳。

一般功能

编辑

网络处理器广泛应用于:

著名产品

编辑
  • Broadcom
    • BCM1480[2]
      • 4核心(MIPS64核心)
      • 时脉800MHz~1.2GHz
      • 用电23W(1GHz下)。
  • Cavium Networks
    • OCTEON CN5860晶片[3]
      • 16个核(MIPS64核心)
      • 时脉约600MHz~1GHz
      • 用电15~40W。
  • Sun
    • UltraSPARC T1
      • 8核32绪(SPARC v9核心)
      • 时脉1GHz~1.2GHz
      • 用电约82W
  • Tilera
    • TILE64[5]
      • 64核
      • 时脉600MHz~900MHz
      • 用电170mW~300mW(每核)

研发和生产厂商

编辑

参考文献

编辑
  1. ^ 赵玉宇; 程光,刘旭辉,袁帅,唐路. 下一代网络处理器及应用综述. 软件学报. 2021, 32 (2): 445–474 [2021-02-24]. (原始内容存档于2021-01-17). 
  2. ^ Broadcom,《BCM1480 - Quad-Core 64-bit MIPS® Processor with DDR2, GbE, SPI-4/HT 互联网档案馆存档,存档日期2010-05-20.》
  3. ^ Cavium,《OCTEON Plus CN58XX - Product Family 页面存档备份,存于互联网档案馆)》
  4. ^ RMI,《XLR 732 Processor 互联网档案馆存档,存档日期2010-02-15.》
  5. ^ Tilera,《TILE64 PROCESSOR FAMILY页面存档备份,存于互联网档案馆)》