可扩展低延迟多协议网络设备的制造方法与工艺

文档序号:11294193阅读:426来源:国知局
可扩展低延迟多协议网络设备的制造方法与工艺
可扩展低延迟多协议网络设备相关申请本申请要求于2012年9月18日提交的,题为“ScalableLowLatencyMulti-ProtocolNetworkingDevice”,申请号为No.61/702312的美国临时申请的优先权,其全部内容被通过引用结合于此。技术领域本公开一般涉及降低网络设备中的延迟。

背景技术:
高性能计算(HPC)使用超级计算机和/或计算机集群来解决使用针对网络内的分组传输需要高带宽、低延迟网络以及很高的计算能力的应用的复杂科学、工程和商业项目。开放式系统互连(OSI)模型层通常被用于在网络内处理分组,例如,用于确定分组在网络内从源节点传输到目的地节点的路由。这些模型层包括OSI第2层(数据链路)、第3层(网络)和第4层(传输)。传统网络设备(例如,交换机)依赖于串行做出决策的传统方法。这些决策在逻辑上被分组为,例如,第2层(L2)桥接,第3层(L3)路由、访问控制等。虽然该方法简化了设计考虑,但是串行方法也引入了固有延迟,因为决策被推迟,并且重要资源(即,复制表)被消耗以满足逻辑分区。附图说明图1是其中可执行这里给出的技术的示例性网络设备的框图。图2是被配置为在网络设备中做出超低延迟处理决策的交换信息库的详细框图。图3是以图形示出了分组的字段组的处理以在网络设备中对分组做出低延迟处理决策的图。图4是一般地示出由交换信息库执行以对分组做出低延迟处理决策的操作的流程图。具体实施方式概述根据这里给出的技术,网络设备接收分组,该分组包括多个字段组。该分组的字段组被解析,并且一旦这些字段组可用就被评估以确定是否能够对该分组做出处理决策。额外的字段组可并行于确定是否能够做出处理决策而从所述分组中被解析并获得,但是一旦确定能够做出处理决策,则终止字段组的评估,从而忽略该分组的任何其他字段组,以对该分组做出处理决策。示例性实施例在通过网络进行分组传输的过程中,网络设备可执行将延迟引入分组传输过程中的一个或多个操作。网络设备(例如,交换机)中的延迟的一个起因是分组决策单元,也被称为交换信息库(SIB)。SIB基于到达分组及网络策略的内容进行处理决策。通过这里给出的新技术可实现大大降低SIB延迟,该新技术通过例如将传统上串行处理的逻辑动作并行化的范例实现了高可扩展性、全功能、低延迟以及多协议的网络设备架构。图1是被配置为执行这些技术的示例性网络设备10的框图。网络设备10包括:被配置为从网络接收分组并向网络发送分组的多个端口12(1)-12(N),用于在端口12(1)-12(N)之间交换分组的交换结构14,中央处理单元(CPU)16以及存储器18。交换结构14包括一个或多个缓冲器20、交换表30以及分组决策单元40(即,SIB)。CPU16执行网络设备10的操作的较高级别控制。缓冲器20在分组被处理时临时存储网络设备10内的分组。SIB40做出决策,包括但不限于:安全、服务质量(QoS)、统计、入口和出口访问控制策略、分类、标记、分组字段的添加或删除、负载均衡、多租户处理、第2层桥接(交换)和第3层路由以及分组的丢弃。交换结构14可以以一个或多个专用集成电路(ASIC)中的数字逻辑门实现。存储器18可包括只读存储器(ROM),随机存取存储器(RAM),磁盘存储介质设备,光学存储介质设备,闪存设备,电的、光的或其他物理/有形存储器存储设备。CPU16例如是微处理器或微控制器。因此,一般而言,存储器18可包括一个或多个有形(非暂态)计算机可读存储介质(例如,存储器设备),该存储介质编码有包括计算机可执行指令的软件,并且当该软件被(CPU16)执行时可操作为执行这里所述的技术。例如,SIB40的操作可部分或全部以存储于存储器18中的软件执行并且由CPU16执行。网络设备10可以是现在已知或今后开发的任何网络设备,包括:交换机、路由器、网关、主机设备上的软件栈、虚拟网络接口卡(VNIC)、虚拟交换机以及物理网络接口卡(包括支持虚拟化的那些物理网络接口卡)。现在转到图2,示出了SIB40的更详细的图。为了实现可扩展性,多个端口(不必所有端口)通过串行来自多个端口的经解析的数据来共享单个SIB。因此,对于每个端口12(1)-12(N),均存在分组解析器。具体地,存在端口12(1)的解析器42(1),端口12(2)的解析器42(2),……,端口12(N)的解析器42(N)。每个分组解析器42(1)_42(N)对在相应的端口接收到的分组进行解析,并且顺序生成多个分组字段组,然后一旦它们准备好就发送它们。分组字段可被任意组织为M个字段组,被表示为:字段组1、字段组2、……、字段组M。作为示例,解析器可产生4组字段:字段组1包括第2层(L2)字段,字段组2包括第3层(L3)字段,字段组3包括第4层(L4)字段,而字段组4包括深度分组检测(DPI)字段。因此,每个字段组包括一个或多个字段。分组解析器42(1)_42(N)被耦合到字段组处理块43。字段组处理块43包括多个字段组专用决策子块44(1)-44(M)。每个字段组专用决策子块专用于相应的字段组,并且包括字段组决策逻辑单元和字段组仲裁器(arbiter)。因此,存在多个决策逻辑单元,每个均被配置为基于分组的特定字段组(而在一些情况中,还基于来自该分组的先前另一字段组的处理的处理结果)来确定是否能够对分组做出处理决策。具体地,字段组专用决策子块44(1)包括字段组1决策逻辑单元46(1)和字段组1仲裁器48(1),字段组专用决策子块44(2)包括字段组2决策逻辑单元46(2)和字段组2仲裁器48(2),字段组专用决策子块44(3)包括字段组3决策逻辑单元46(3)和字段组3仲裁器48(3),字段组专用决策子块44(M-1)包括字段组M-1决策逻辑单元46(M-1)和字段组M-1仲裁器48(M-1),字段...
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1