一种用于处理通信网络中的分组的网络设备和方法技术

技术编号:30542753 阅读:25 留言:0更新日期:2021-10-30 13:20
本公开涉及用于处理通信网络中的分组的网络设备和方法。分组由网络设备接收。处理分组并且确定要经由其发送分组的至少一个传出端口。基于在处理分组期间针对分组确定的信息来修改分组的报头,以生成经修改的报头。至少部分地基于经修改的报头来执行出口分类。出口分类包括确定分组是否将被网络设备丢弃。在确定分组不会被网络设备丢弃时,生成分组的副本以用于将该分组镜像到除所确定的至少一个传出端口之外的目的地。然后,使该分组入队到出口队列中,出口队列与所确定的至少一个传出端口相对应。该分组随后被传送到所确定的至少一个传出端口。个传出端口。个传出端口。

【技术实现步骤摘要】
一种用于处理通信网络中的分组的网络设备和方法
[0001]本申请是国际申请日为2017年5月18日、于2019年1月17日进入中国国家阶段、中国国家申请号201780044402.3、专利技术名称为“一种用于在网络设备中处理分组的方法及网络设备”的专利技术专利申请的分案申请。
[0002]本公开要求于2016年5月18日递交的、名称为“到分析器或CPU的出口流镜像”的美国临时专利申请第62/338,067号的权益,在此通过引用将其整体并入本文。


[0003]本公开总体上涉及诸如网络交换机、桥接器、路由器等的网络设备,并且更具体地涉及在网络设备中处理分组。

技术介绍

[0004]诸如交换机、桥接器和路由器之类的网络设备基于分组中的地址通过网络转发分组。网络设备通常包括耦合到不同网络链路的多个端口。网络设备可以经由一个端口接收分组,并且处理该分组至少以确定网络交换机应当经由哪个或哪些其他端口来发送该分组。然后,网络设备向所确定的一个或多个其他端口转发该分组。网络设备经常将接收的分组存储在分组存储器中,并且使用与分组相关联的分组描述符来处理分组。在由网络设备确定用于发送分组的端口之后,网络设备将与分组相关联的分组描述符加入与该端口对应的出口队列中,以用于随后经由该端口调度和发送该分组。当该分组被调度用于发送时,网络设备将分组描述符从出口队列中出队,并且从分组存储器取回相关联的分组。在一些情况下,网络设备执行对取回的分组的修改(例如,对取回的分组的报头的修改),并且然后从网络设备的端口发送该经修改的分组。在一些情况下,在发送该分组之前,网络设备基于经修改的分组来执行附加的分组的出口处理。附加的分组处理包括,例如,分组的出口流分类,分组的出口流量监管,分组的出口操作、管理和维护(OAM)处理等。
[0005]网络设备有时执行出口分组镜像来向处理器或分析器发送出口分组的副本,例如用于执行网络监控和分析。在典型的网络设备中,为了镜像分组,网络设备在使分组描述符入队到出口队列中以用于随后从网络设备发送分组之前生成与该分组相关联的分组描述符的副本。然而,在某些情况下,基于分组的出口处理,分组被丢掉或丢弃,并且因此实际上不从网络设备发送。在这种情况下,在典型的网络设备中,即使该分组随后基于出口分组处理而被丢掉并且因此实际上不从网络设备发送,出口分组也可以被镜像。此外,因为在从分组存储器取回分组之后执行典型网络设备中的分组的出口处理,所以在分组的出口处理之后不能容易地复制分组,因为分组不再存储在分组存储器中。

技术实现思路

[0006]一种用于在网络设备中处理分组的方法包括:在网络设备的分组处理器处,接收来自网络链路的分组。该方法还包括:利用分组处理器来处理分组以至少(i)确定至少一个传出端口,分组经由至少一个传出端口被发送,以及(ii)执行分组的出口处理,出口处理至
少包括(a)至少部分地基于在由分组处理器处理分组期间针对分组确定的信息,修改分组的报头以生成经修改的报头,以及(b)至少部分地基于经修改的报头执行分组的出口分类,出口分类包括确定该分组是否将被网络设备丢弃。该方法另外包括:在确定该分组不会被网络设备丢弃时:利用分组处理器生成分组的副本,以用于将分组镜像到除所确定的至少一个传出端口之外的目的地;以及使分组入队到出口队列中,出口队列与所确定的至少一个传出端口相对应,以及将分组从出口队列传送到所确定的至少一个传出端口,以用于经由所确定的至少一个传出端口将分组发送到被设置在网络中的另一网络设备。
[0007]在另一实施例中,网络设备包括接收处理器,该接收处理器被配置为从网络接收分组。网络设备还包括分组处理器,该分组处理器被配置为处理分组以至少:确定至少一个传出端口,分组将经由至少一个传出端口被发送;至少部分地基于在由分组处理器处理分组期间针对分组确定的信息,修改分组的报头以生成经修改的报头;至少部分地基于经修改的报头执行分组的出口分类,出口分类包括确定该分组是否将被网络设备丢弃;以及在确定该分组不会被网络设备丢弃时,生成分组的副本以用于将分组镜像到除所确定的至少一个传出端口之外的目的地,以及使分组入队到出口队列中,出口队列与所确定的至少一个传出端口相对应。该网络设备另外包括发送处理器,该发送处理器被配置为将分组从出口队列传送到所确定的至少一个传出端口,以用于经由所确定的至少一个传出端口发送分组。
附图说明
[0008]图1是根据实施例的示例网络设备的框图。
[0009]图2是根据实施例的被包括在图1的网络设备中的示例处理管线的框图。
[0010]图3是根据实施例的用于镜像网络设备的出口分组的示例方法的流程图。
具体实施方式
[0011]在本文所描述的各种实施例中,分组由网络设备接收,并且生成分组的副本以用于将该分组镜像到处理器或分析器,以用于执行例如网络诊断或分析。在一个实施例中,在执行分组的出口处理之后并且在分组的副本被入队到出口队列中以用于从网络设备发送分组之前,生成分组的副本。另外,在一个实施例中,执行出口队列拥塞避免分析来确定分组是否应当被网络设备丢掉。在一些实施例中,在分组被提供用于由网络设备进行出口处理和镜像之前,执行出口队列拥塞分析。在至少一些实施例中,在镜像分组之前执行分组的出口处理允许网络设备基于出口处理的结果做出镜像决定。此外,如果在分组的出口处理期间做出不发送分组(例如,丢弃分组)的决定,则将不触发分组镜像,确保了仅在从网络设备实际发送分组的情况下才由网络设备镜像分组。此外,在至少一些实施例中,在提供分组用于出口处理和镜像之前执行出口队列拥塞避免分析允许网络设备仅在分组实际上将由网络设备发送的情况下才触发分组的出口分类和镜像。
[0012]在一个实施例中,在由网络设备接收分组时,分组的至少第一部分(例如,至少有效载荷)被存储在网络设备的分组存储器中,并且分组的第二部分(例如,至少报头部分)被提供给分组处理器用于由网络设备处理分组。在一个实施例中,分组的处理包括确定至少一个传出端口,分组将经由至少一个传出端口从网络设备被发送。在一个实施例中,在至少
一些场景中,分组的处理还包括修改分组的报头以生成要被包括在出口分组中的经修改的报头。在一个实施例中,在分组的报头被修改之后,至少部分地基于分组的经修改的报头来执行出口分组处理操作,诸如,例如,出口流分类、出口流量监管、出口操作、管理和维护(OAM)处理等。此外,在一个实施例中,做出出口镜像决定以确定出口分组是否应当被镜像。在一个实施例中,至少部分地基于出口处理来做出出口镜像决定,出口处理基于分组的经修改的报头。此外,在一个实施例中,基于分组的出口处理丢弃分组,针对该分组不触发出口镜像。然后,在一个实施例中,分组的第二部分被存储在分组存储器中,其中第二部分包括经修改的报头。在一个实施例中,使与分组相关联的分组描述符入队到一个或多个出口队列中以用于随后经由所确定的至少一个端口发送该分组。另外,在要镜像出口分组时,生成分组描述符的副本,并且使分组描述符的副本入队到队列中,以便随后分组可以例如被提本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于处理通信网络中的分组的网络设备,包括:接收处理器,被配置为从所述通信网络接收分组,以及将所述分组的至少有效载荷存储在分组存储器中;分组处理器,被配置为处理所述分组,所述分组处理器被配置为至少:确定至少一个传出端口,所述分组将由所述网络设备经由所述至少一个传出端口发送,修改所述分组的报头中的一个或多个字段,以生成经修改的报头,至少部分地基于所述经修改的报头,确定所述分组(a)将由所述网络设备发送,或者(b)将被所述网络设备丢弃,以及将所述经修改的报头存储在所述分组存储器中;以及发送处理器,被配置为响应于由所述分组处理器至少部分地基于所述经修改的报头所做出的、所述分组将由所述网络设备发送并且将不被所述网络设备丢弃的确定,从所述分组存储器取回所述分组的所述至少有效载荷,从所述分组存储器取回所述经修改的报头,至少通过组合所述分组的所述至少有效载荷与所述经修改的报头,生成发送分组,以及经由所述网络设备的所确定的所述至少一个传出端口,发送所述发送分组。2.根据权利要求1所述的网络设备,其中所述分组处理器被配置为将所述分组的所述至少有效载荷存储在所述分组存储器中的第一存储器位置处,以及将所述经修改的报头存储在所述分组存储器中的第二存储器位置处,所述第二存储器位置与所述第一存储器位置分离。3.根据权利要求2所述的网络设备,其中所述分组处理器被配置为使用与所述分组相关联的分组描述符来处理所述分组,以及在使用所述分组描述符来处理所述分组之后,生成与所述分组对应的出口分组描述符,所述出口分组描述符小于被用于处理所述分组的所述分组描述符,以及响应于确定所述分组将从所述网络设备被发送,使所述出口分组描述符入队到出口队列中,以用于所述发送分组经由所确定的所述至少一个传出端口的后续传输。4.根据权利要求3所述的网络设备,其中所述分组处理器被配置为生成所述出口分组描述符以至少包括存储器位置信息,所述存储器位置信息指示i)所述第一存储器位置和ii)所述第二存储器位置,所述分组的所述至少有效载荷被存储在所述分组存储器中的所述第一存储器位置处,所述经修改的报头被存储在所述分组存储器中的所述第二存储器位置处。5.根据权利要求4所述的网络设备,其中所述发送处理器被配置为:当所述出口分组描述符从所述出口队列出队时,基于所述出口分组描述符中的所述存储器位置信息,从所述分组存储器中的所述第一存储器位置取回所述分组的所述至少有效载荷,以及从所述分组存储器中的所述第二存储器位置取回所述经修改的报头,以及
至少通过组合从所述分组存储器中的所述第一存储器位置取回的所述分组的所述至少有效载荷与从所述分组存储器中的所述第二存储器位置取回的所述经修改的报头,生成所述发送分组。6.根据权利要求4所述的网络设备,其中所述分组处理器被配置为i)响应于确定所述分组将从所述网络设备被发送以及ii)在从所述分组存储器取回所述分组的所述至少有效载荷之前,生成所述出口分组描述符的副本,以及使所述出口分组描述符的所述副本入队到附加出口队列中,以用于将所述分组镜像到除所确定的所述至少一个传出端口之外的目的地。7.根据权利要求6所述的网络设备,其中所述发送处理器被配置为当所述出口分组描述符的所述副本从附加出口队列出队时,基于所述出口分组描述符的所述副本中的所述存储器位置信息,从所述分组存储器中的所述第一存储器位置取回所述分组的所述至少有效载荷,以及从所述分组存储器中的所述第二存储器位置取回所述经修改的报头,以及至少通过组合基于所述出口分组描述符的所述副本中的所述存储器位置信息而从所述分组存储器中的所述第一存储器位置取回的所述分组的所述至少有效载荷与基于所述出口分组描述符的所述副本中的所述存储器位置信息而从所述分组存储器中的所述第二存储器位置取回的所述经修改的报头,生成经镜像的分组,以及将所述经镜像的分组发送到除所确定的所述至少一个传出端口之外的所述目的地。8.根据权利要求1所述的网络设备,其中所述分组处理器被配置为响应于确定所述分组将被所述网络设备丢弃,i)在所述网络设备处丢弃所述分组,以及ii)不触发由所述网络设备对所述分组的镜像。9.根据权利要求1所述的网络设备,其中所述分组处理器还被配置为至少部分地基于所述经修改的报头来执行所述分组的出口分类,其中所述分组处理器被配置为确定所述分组是a)将由所述网络设备发送,还是(b)将被所述网络设备丢弃,所述确定被执行为所述分组的所述出口分类的一部分。10.根据权利要求1所述的网络设备,其中所述分组处理器被配置为:至少部分地基于由所述报头的经修改的所述一个或多个字段指示的访问控制策略的应用,确定所述分组是a)将由所述网络设备发送,还是(b)将被所述网络设备丢弃。11.一种用于处理通信网络中的分组的方法,所述方法包括:在网络设备处从所...

【专利技术属性】
技术研发人员:D
申请(专利权)人:马维尔以色列MISL有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1