CN108206785A - 针对多播流量优化与路由和/或下一跳相关的信息 - Google Patents
针对多播流量优化与路由和/或下一跳相关的信息 Download PDFInfo
- Publication number
- CN108206785A CN108206785A CN201710210011.6A CN201710210011A CN108206785A CN 108206785 A CN108206785 A CN 108206785A CN 201710210011 A CN201710210011 A CN 201710210011A CN 108206785 A CN108206785 A CN 108206785A
- Authority
- CN
- China
- Prior art keywords
- equipment
- information
- border networks
- group
- networks equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/20—Hop count for routing purposes, e.g. TTL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/80—Ingress point selection by the source endpoint, e.g. selection of ISP or POP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/611—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/54—Loss aware scheduling
Abstract
本公开的各实施例总体上涉及针对多播流量优化与路由和/或下一跳相关的信息。具体地,第一设备可以接收标识第二设备的信息。第二设备可以被连接到第一设备或第三设备。第二设备可以是将由第一设备接收的流量的源。第一设备可以基于接收到的信息,确定第二设备对于第一设备是本地或远程。第一设备可以基于确定第二设备是本地或远程,存储第一信息或第二信息。第一信息可以标识与第二设备相关联的路由。第二信息可以标识与多个第二设备相关联的单个路由。第一设备可以在存储第一信息或第二信息之后,使用第一信息或第二信息来提供流量。
Description
技术领域
本公开的各实施例总体上涉及计算机网络,具体地涉及针对多播流量优化与路由和/或下一跳相关的信息。
背景技术
在网络通信中,多播传输可以包括一种类型的群组通信,其中流量在单个传输中被同时寻址到一组感兴趣的接收方。因特网协议(IP)多播传输是IP特定版本的多播传输。在IP多播传输中,IP流量可以在单个传输中被发送到一组感兴趣的接收方。IP多播传输可以被用于在因特网和专用网络上流传输媒体应用。
发明内容
根据某些可能的实现方式,第一设备可以接收标识第二设备的信息。第二设备可以经由所述第一设备或第三设备的入口接口被连接到所述第一设备或所述第三设备。第一设备可以确定所述第二设备是否被连接到所述第一设备或第三设备。所述第二设备在被连接到所述第一设备时可以对于所述第一设备是本地。所述第二设备在被连接到所述第三设备时可以对于所述第一设备是远程。第一设备可以基于确定所述第二设备被连接到所述第一设备或所述第三设备,来存储第一路由信息或第二路由信息。所述第一路由信息可以标识与所述第二设备相关联的路由。所述第二路由信息可以标识针对多个设备的聚合路由。所述多个设备可以包括所述第二设备。第一设备可以在存储所述第一路由信息或所述第二路由信息之后,使用所述第一路由信息或所述第二路由信息来提供从所述第二设备接收的流量。
在一个示例性实施例中,其中所述一个或多个处理器可以进一步用于:基于确定所述第二设备被连接到所述第一设备,来确定所述第二设备是本地;以及其中所述一个或多个处理器在存储所述第一路由信息或所述第二路由信息时可以用于:基于确定所述第二设备是本地,来存储所述第一路由信息。
在另一示例性实施例中,其中所述一个或多个处理器可以进一步用于:基于确定所述第二设备被连接到所述第三设备,来确定所述第二设备是远程;以及其中所述一个或多个处理器在存储所述第一路由信息或所述第二路由信息时可以用于:基于确定所述第二设备是远程,来存储所述第二路由信息。
在另一示例性实施例中,其中所述一个或多个处理器可以进一步用于:基于确定所述第二设备被连接到所述第一设备或所述第三设备,来确定与所述多个设备相关联的入口接口,所述入口接口由所述信息中包括的入口接口标识符来标识;基于确定与所述多个设备相关联的所述入口接口,来确定与所述多个设备相关联的多播群组,所述多播群组由所述信息中包括的多播群组标识符来标识;通过将所述入口接口标识符和所述多播群组标识符与串相关联存储,来生成所述第二路由信息;以及其中所述一个或多个处理器在存储所述第二路由信息时可以用于:在生成所述第二路由信息之后,存储所述第二路由信息。
在另一示例性实施例中,其中所述一个或多个处理器可以进一步用于:基于确定所述第二设备被连接到所述第一设备或所述第三设备,来确定与所述第二设备相关联的入口接口,所述入口接口由所述信息中包括的入口接口标识符来标识;基于确定与所述第二设备相关联的所述入口接口,确定与所述第二设备相关联的多播群组,所述多播群组由所述信息中包括的多播群组标识符来标识;通过将所述入口接口标识符和所述多播群组标识符与标识所述第二设备的设备标识符相关联存储,来生成第一路由信息;以及其中所述一个或多个处理器在存储所述第一路由信息时可以用于:在生成所述第一路由信息之后,存储所述第一路由信息。
在另一示例性实施例中,其中所述一个或多个处理器可以进一步用于:基于确定所述第二设备被连接到所述第一设备或所述第三设备,来确定所述第二设备是本地或远程;以及其中所述一个或多个处理器在存储所述第一路由信息或所述第二路由信息时可以用于:基于确定所述第二设备是本地或远程,来存储所述第一路由信息或所述第二路由信息。
在另一示例性实施例中,其中所述一个或多个处理器可以进一步用于:接收第一下一跳信息,所述第一下一跳信息标识将被用作针对第一多播群组的第一组下一跳的第一组设备;基于接收到的所述第一下一跳信息,确定先前存储的第二下一跳信息是否包括所述第一下一跳信息,所述第二下一跳信息标识将被用作针对第二多播群组的第二组下一跳的第二组设备;基于确定所述先前存储的第二下一跳信息是否包括所述第一下一跳信息,确定是否修改所述第二下一跳信息以包括所述第一下一跳信息;以及其中所述一个或多个处理器在提供所述流量时可以用于:基于确定是否修改所述第二下一跳信息以包括所述第一下一跳信息,来使用所述第一下一跳信息或所述第二下一跳信息以向所述第一组下一跳提供所述流量。
根据某些可能的实现方式,一种非瞬态计算机可读介质可以存储一个或多个指令,在由第一设备的一个或多个处理器执行时使得所述一个或多个处理器接收标识多个第二设备的信息。所述多个第二设备可以被连接到所述第一设备或第三设备。所述多个第二设备可以是将由所述第一设备接收的流量的多个源。一个或多个指令可以使得第一设备的一个或多个处理器基于接收到的所述信息,确定所述多个第二设备对于所述第一设备是本地或远程。一个或多个指令可以使得第一设备的一个或多个处理器基于确定所述多个第二设备是本地或远程,存储第一信息或第二信息。所述第一信息可以标识与所述多个第二设备相关联的多个路由。所述第二信息可以标识与所述多个第二设备相关联的单个路由。一个或多个指令可以使得第一设备的一个或多个处理器在存储所述第一信息或所述第二信息之后,使用所述第一信息或所述第二信息来提供所述流量。所述流量可以是多播流量。
在一个示例性实施例中,其中所述一个或多个指令在由所述一个或多个处理器执行时可以进一步使得所述一个或多个处理器用于:在存储所述第一信息或所述第二信息之后,从所述多个第二设备接收所述流量,所述多个第二设备对于所述第一设备是本地;以及其中使得所述一个或多个处理器提供所述流量的所述一个或多个指令可以使得所述一个或多个处理器用于:基于从所述多个第二设备接收到的所述流量,使用所述第一信息向目的地提供所述流量。
在另一示例性实施例中,其中所述一个或多个指令在由所述一个或多个处理器执行时可以进一步使得所述一个或多个处理器用于:在存储所述第一信息或所述第二信息之后,从所述第三设备接收所述流量,所述多个第二设备对于所述第一设备是远程;以及其中使得所述一个或多个处理器提供所述流量的所述一个或多个指令可以使得所述一个或多个处理器用于:基于从所述第三设备接收到的所述流量,使用所述第二信息向目的地提供所述流量。
在另一示例性实施例中,其中所述一个或多个指令在由所述一个或多个处理器执行时可以进一步使得所述一个或多个处理器用于:基于确定所述多个第二设备对于所述第一设备是本地,生成所述第一信息;以及其中使得所述一个或多个处理器存储所述第一信息或所述第二信息的所述一个或多个指令可以使得所述一个或多个处理器用于:在生成所述第一信息之后,存储所述第一信息。
在另一示例性实施例中,其中所述一个或多个指令在由所述一个或多个处理器执行时可以进一步使得所述一个或多个处理器用于:基于确定所述多个第二设备对于所述第一设备是远程,生成所述第二信息;以及其中使得所述一个或多个处理器存储所述第一信息或所述第二信息的所述一个或多个指令可以使得所述一个或多个处理器用于:在生成所述第二信息之后,存储所述第二信息。
在另一示例性实施例中,其中所述一个或多个指令在由所述一个或多个处理器执行时可以进一步使得所述一个或多个处理器用于:接收第一下一跳信息,所述第一下一跳信息标识将被用作针对第一多播群组的第一组下一跳的第一组设备;以及其中使得所述一个或多个处理器提供所述流量的所述一个或多个指令可以使得所述一个或多个处理器用于:基于接收到的所述第一下一跳信息,使用所述第一下一跳信息或第二下一跳信息以向所述第一组下一跳提供所述流量,所述第二下一跳信息标识将被用作针对第二多播群组的第二组下一跳的第二组设备。
在另一示例性实施例中,其中所述一个或多个指令在由所述一个或多个处理器执行时可以进一步使得所述一个或多个处理器用于:基于接收到的所述第一下一跳信息,确定使用所述第一下一跳信息或所述第二下一跳信息;以及其中使得所述一个或多个处理器提供所述流量的所述一个或多个指令可以使得所述一个或多个处理器用于:基于确定使用所述第一下一跳信息或所述第二下一跳信息,使用所述第一下一跳信息或所述第二下一跳信息来向所述第一组下一跳提供所述流量。
根据某些可能的实现方式,一种方法可以包括由第一设备接收标识流量的一个或多个源的信息。所述流量是将由所述第一设备接收。所述一个或多个源可用与所述第一设备或第二设备相关联。方法可以包括由所述第一设备基于接收到的所述信息来确定所述一个或多个源被连接到所述第一设备或所述第二设备。所述一个或多个源可以在被连接到所述第一设备时对于所述第一设备是本地。所述一个或多个源可以在被连接到所述第二设备时对于所述第一设备是远程。方法可以包括由所述第一设备基于确定所述一个或多个源被连接到所述第一设备或所述第二设备,来存储第一信息或第二信息。所述第一信息可以标识与所述一个或多个源相关联的一个或多个路由。所述第二信息可以标识与包括所述一个或多个源的多个源相关联的单个路由。方法可以包括由所述第一设备在存储所述第一信息或所述第二信息之后使用所述第一信息或所述第二信息提供路由。
在一个示例性实施例中,其中提供所述路由包括:在基于所述一个或多个源对于所述第一设备是本地而存储所述第一信息之后,使用所述第一信息提供所述流量。
在另一示例性实施例中,其中提供所述路由包括:在基于所述一个或多个源对于所述第一设备是远程而存储所述第二信息之后,使用所述第二信息提供所述流量。
在另一示例性实施例中,其中存储所述第一信息或所述第二信息包括:基于确定所述一个或多个源被连接到所述第二设备,将所述第二信息作为单个条目存储在数据结构中。
在另一示例性实施例中,其中所述一个或多个路由或所述单个路由包括:以太网虚拟专用网络(EVPN)路由,或与网络层可达性信息(NLRI)相关联的路由。
在另一示例性实施例中,其中所述流量是多播流量。
附图说明
图1A至图1C是本文所描述的示例实现方式的总览的示图;
图2是其中可以实现本文所描述的系统和/或方法的示例环境的示图;
图3是图2的一个或多个设备的示例部件的示图;
图4是用于优化与针对多播流量的路由相关的信息的示例过程的流程图;以及
图5是用于优化与针对多播流量的下一跳相关的信息的示例过程的流程图。
具体实施方式
下面参考附图对示例实现方式进行详细描述。不同附图中的相同附图标记可以标示相同或相似的元件。
网络设备可以存储标识与该网络设备和/或其他网络设备相关联的路由的路由信息。该信息可以标识针对流过网络设备之间的流量(例如,多播流量)的路由。另外,网络设备可以存储标识针对流量(例如,多播流量)来自多个网络设备中的下一跳的信息。在某些情况下,被用于存储标识路由和/或下一跳的信息的网络设备存储器资源可能限制网络设备可以存储的信息量(例如,通过限制网络设备可以存储的路由或下一跳标识符的数量)。
本文所述实现方式允许网络设备聚合和/或合并与路由和/或下一跳相关的信息。通过此方式,网络设备可以通过减少网络设备要存储的信息量来保存存储器资源,并且通过减少网络设备要处理以执行针对流量的路由和/或下一跳的查找的信息量来保存处理资源。另外,网络设备通过减少网络设备用于执行查找花费的时间量来提高执行路由查找和/或下一跳查找的效率。另外,这增加了网络设备可以存储针对给定存储器资源量的信息的路由和/或下一跳的数量。
图1A至图1C是本文所描述的示例实现方式100的总览的示图。示例实现方式100包括发送方设备1-200、边界网络设备1-5、核心网络设备1和2以及接收方设备1-3。边界网络设备可以被连接到发送方设备和/或接收方设备。例如,边界网络设备1被示为经由边界网络设备1的入口接口连接到发送方设备1-100,边界网络设备2被示为经由边界网络设备2的入口接口连接到发送方设备101-200,边界网络设备3被示为经由边界网络设备3的出口接口连接到接收方设备1,边界网络设备4被示为经由边界网络设备4的出口接口连接到接收方设备2,以及边界网络设备5被示为经由边界网络设备5的出口接口连接到接收方设备3。
发送方设备、接收方设备、边界网络设备和/或入口/出口接口可以被描述为本地或远程。例如,从边界网络设备1的角度,发送方设备1-100是本地(例如,基于被连接到边界网络设备1的入口接口),而发送方设备101-200是远程(例如,基于被连接到边界网络设备2的入口接口)。作为另一示例,从边界网络设备3的角度,发送方设备1-200是远程(例如,基于被连接到边界网络设备1和2的入口接口)。
如图1A中附图标记110进一步所示,边界网络设备1-5以及核心网络设备1和2可以交换信息。例如,边界网络设备1-5以及核心网络设备1和2可以交换路由信息和/或下一跳信息,该路由信息标识针对发送方设备1-200的一个或多个路由(例如,多播路由),以及该下一跳信息标识针对来自发送方设备1-200的流量的一个或多个下一跳。下一跳信息将在下面针对图1B和图1C进一步详细描述。
如附图标记1115所示,边界网络设备1-5可以确定路由信息是否与本地或远程发送方设备和/或本地或远程入口接口相关联。例如,边界网络设备1可以确定针对发送方设备1-100的路由信息与本地发送方设备和/或本地入口接口相关联,并且针对发送方设备101-200的路由信息与远程发送方设备和/或远程入口接口相关联。
作为另一示例,边界网络设备2可以确定针对发送方设备1-100的路由信息与远程发送方设备和/或远程入口接口相关联,并且针对发送方设备101-200的路由信息与本地发送方设备和/或本地入口接口相关联。作为另一示例,边界网络设备3-5可以确定针对发送方设备1-200的路由信息与远程发送方设备和/或远程入口接口相关联。
边界网络设备1-5可以存储针对发送方设备1-200的路由信息(例如,在列表、表或另一类型的数据结构中)。边界网络设备1-5中的每个边界网络设备存储路由信息的方式可以取决于路由信息是否与本地或远程发送方设备和/或本地或远程入口接口相关联。
如附图标记120所示,边界网络设备1可以基于发送方设备1-100是本地发送方设备和/或与边界网络设备1的入口接口(例如,第一入口接口,被示为iif1)相关联,来存储针对发送方设备1-100的每个发送方设备(例如,被示为S1至S100)的路由信息。即,边界网络设备1可以存储针对本地发送方设备和/或本地入口接口的单独路由信息。
此外,边界网络设备1可以基于发送方设备101-200是远程发送方设备和/或与边界网络设备2的入口接口(例如,第二入口接口,被示为iif2)相关联,来存储标识针对发送方设备101-200(例如,被示为*,其中*表示发送方设备101-200)的单个路由的路由信息。即,边界网络设备1可以存储与远程发送方设备和/或远程入口接口相关联的聚合路由信息(例如,而不是如本地发送方设备和/或本地入口接口的情况存储单独路由信息)。
这通过减少边界网络设备1要存储针对远程发送方设备和/或远程入口接口的路由信息量(例如,路由的数量),来保存边界网络设备1的存储器资源。如附图标记120进一步所示,路由信息可以包括标识与发送方设备和入口接口的特定组合相关联的特定多播群组(例如,被示为Gn)的信息,由此使得边界网络设备1能够确定针对特定发送方设备/输入接口组合向其提供流量的多播群组。
如附图标记125所示,边界网络设备2可以基于发送方设备101-200与边界网络设备2的入口接口相关联,来存储针对发送方设备101-200的每个发送方设备(例如,被示为S101至S200)的路由信息。即,边界网络设备1可以存储针对本地发送方设备和/或入口接口的单独路由信息。
此外,边界网络设备2可以基于发送方设备1-100与边界网络设备1的入口接口而不是边界网络设备2的入口接口相关联,来存储标识针对发送方设备1-100(例如,被示为*,类似于上文所述)的单个路由的路由信息。即,边界网络设备2可以存储针对远程发送方设备和/或入口接口的聚合路由信息。这通过减少边界网络设备2要存储针对远程发送方设备和/或远程入口接口的路由信息量,来保存边界网络设备2的存储器资源。如附图标记125进一步所示,路由信息可以包括标识与特定发送方设备和入口接口组合相关联的特定多播群组(例如,被示为Gn)的信息,类似于上文所述。
如附图标记130所示,边界网络设备3可以基于发送方设备1-200是远程或远程入口接口相关联,来存储标识针对发送方设备1-200(例如,被示为*,类似于上文所述)的一个或多个聚合路由的路由信息。例如,边界网络设备3可以基于发送方设备1-100与边界网络设备1和/或边界网络设备1的入口接口(例如,iif1)相关联,来存储标识针对发送方设备1-100的单个路由的信息。
作为另一示例,边界网络设备3可以基于发送方设备101-200与边界网络设备2和/或边界网络设备2的入口接口(例如,iif2)相关联,来存储标识针对发送方设备101-200的单个路由的信息。这通过减少边界网络设备3要存储针对远程发送方设备和/或远程入口接口的路由信息量,来保存边界网络设备3的存储器资源。
边界网络设备4和5可以通过与针对附图标记130所述的相似方式来存储路由信息。例如,边界网络设备4和5可以基于发送方设备1-200是远程发送方设备和/或与远程入口接口相关联,来通过相似的方式存储信息。
通过此方式,特定边界网络设备可以存储针对本地发送方设备或被连接到特定边界网络设备的入口接口的发送方设备的单独路由信息,并且可以存储针对远程发送方设备或被连接到远程入口接口的发送方设备的聚合路由信息,由此保存存储器资源。
边界网络设备1-3可以使用所存储的路由信息来提供流量(例如,一组分组)。例如,边界网络设备1可以使用由附图标记120所示的路由信息将去往接收方设备1-3的流量从发送方设备1-100提供到边界网络设备3-5。作为另一示例,边界网络设备2可以使用由附图标记125所示的路由信息将去往接收方设备1-3的流量从发送方设备101-200提供到边界网络设备3-5。
边界网络设备3-5通过使用数据结构标识流量去往哪个接收方设备,来经由边界网络设备3-5的输出接口向接收方设备1-3提供流量,该数据结构包括标识发送方设备、输入接口和/或多播群组的信息以及标识输出接口和/或接收方设备的对应信息。
如图1B中附图标记135所示,边界网络设备1可以存储下一跳信息(例如,如针对附图标记110所述,该下一跳信息在边界网络设备1-5之间交换)。下一跳信息可以包括标识作为针对流量的一组下一跳的一组边界网络设备的组标识符(例如,被示为SI1和SI2)。此外,下一跳信息可以包括标识每组边界网络设备中包括的边界网络设备(例如,作为下一跳的网络设备)的设备标识符。例如,下一跳信息可以指示组SI1包括边界网络设备3并且组SI2包括边界网络设备3和5。通过此方式,边界网络设备1可以基于标识一组边界网络设备来标识要向其提供流量的下一跳。
如附图标记140所示,边界网络设备1可以存储标识多组边界网络设备(类似于上文所述)以及与该多组边界网络设备相关联的对应多播群组(例如,被示为多播群组标识符G1和G2)的信息。通过此方式,边界网络设备1可以基于标识多播群组来标识要向其提供流量的一组边界网络设备。
如附图标记145所示,边界网络设备1可以经由核心网络设备1从边界网络设备4接收多播群组加入消息以加入特定多播群组。作为一个示例,假设多播群组加入消息是加入多播群组3(例如,G3)的请求。例如,假设边界网络设备1先前没有存储针对多播群组3的信息。
如图1C中附图标记150所示,边界网络设备1可以处理多播群组加入消息。例如,边界网络设备1可以处理多播群组加入消息以确定边界网络设备1先前是否存储了将边界网络设备4标识为针对要向多播群组3发送的流量的下一跳的下一跳信息(例如,通过确定由附图标记135所示的下一跳信息是否包括针对边界网络设备4的设备标识符以及/或者通过确定由附图标记140所示的信息不包括针对多播群组3的信息)。例如,假设边界网络设备1确定由附图标记135所示的下一跳信息不包括针对边界网络设备4的设备标识符以及/或者由附图标记140所示的信息不包括针对多播群组3的信息。
如附图标记155所示,边界网络设备1可以确定将针对边界网络设备4的设备标识符包括在先前存储的一组设备标识符中(例如,而不是将附加条目存储在针对边界网络设备4的下一跳信息中)。例如,边界网络设备1可以基于边界网络设备1没有足够的存储器资源将附加条目存储在下一跳信息中、基于边界网络设备1确定保存存储器资源等,来确定将针对边界网络设备4的设备标识符包括在先前存储的一组设备标识符中。如附图标记155进一步所示,边界网络设备1可以通过将针对边界网络设备4的设备标识符包括在针对组SI1的一组设备标识符中,来存储标识边界网络设备4的信息。这减少或消除了对边界网络设备1将附加条目存储在下一跳信息中(例如,附加组标识符和对应一组设备标识符)的需求,由此保存了存储器资源。
边界网络设备1可以基于与较少数量的设备标识符相关联的组SI1与组SI2相关,将组SI1选择为将针对边界网络设备4的设备标识符包括在其中的组。通过此方式,当边界网络设备1使用包括针对不同于边界网络设备4的设备的设备标识符的一组设备标识符发送仅去往边界网络设备4的流量时,边界网络设备1减少了多余的网络流量,由此保存了网络资源和/或处理资源。
如附图标记160所示,边界网络设备1可以存储要向组SI1(例如,由组标识符SI1所示)发送的、指示去往多播群组3(例如,由多播群组标识符G3所示)的流量的信息。在某些实现方式中,针对多播群组G3所存储的信息可以代替针对多播群组G1所存储的信息。通过此方式,边界网络设备1通过使用针对多个多播群组的相同下一跳信息来保存存储器资源。
如上文所指示的,图1A至图1C仅被提供为示例。其他示例是可能的,并且可以与关于图1A至图1C所描述的不同。例如,虽然动作可以被描述为由特定设备(例如,边界网络设备1)执行,但是其他设备也可以执行相同或相似的动作。另外,虽然针对图1A至图1C所述的动作被描述为由各种设备执行,但是动作也可以被描述为由各种设备的部件(诸如,控制器或处理器)执行。
图2是其中可以实现本文所描述的系统和/或方法的示例环境200的示图。如图2所示,环境200可以包括一组发送方设备210、一个或多个边界网络设备220-1至220-M(M≥1)(在下文中被统称为“边界网络设备220”并且单独地“边界网络设备220”)、一个或多个核心网络设备230-1至230-N(N≥1)(在下文中被统称为“核心网络设备230”并且单独地“核心网络设备230”)、一组接收方设备240和网络250。环境200中的设备可以经由有线连接、无线连接或者有线连接和无线连接的组合进行互连。
发送方设备210包括一个或多个能够接收、存储、生成、处理和/或提供流量(例如,向接收方设备240)的设备。例如,发送方设备210可以包括通信和/或计算设备,诸如台式计算机、移动电话(例如,智能电话或无线电电话)、膝上型计算机、平板计算机、游戏设备、可穿戴通信设备(例如,智能腕表、一副智能眼镜或活动带)或相似类型的设备。在某些实现方式中,发送方设备210可以包括像物理机执行程序的机器(例如,计算机)的虚拟实现。如本文其他位置所述,在某些实现方式中,发送方设备210可以被连接到边界网络设备220的入口接口(例如,入口边界网络设备220)。附加地或备选地,如本文其他位置所述,发送方设备210可以经由入口接口向边界网络设备220提供流量(例如,去往接收方设备240的流量)。
边界网络设备220包括一个或多个能够接收、存储、生成、处理和/或提供信息(诸如与路由和/或下一跳相关的信息)的设备。例如,边界网络设备220可以包括路由器、网关、交换机、集线器、桥接器、逆向代理、服务器(例如,代理服务器、web服务器、主机服务器、存储服务器、数据中心或云计算环境中的服务器等)、防火墙、安全设备、入侵检测设备、负载平衡器或类似设备。如本文其他位置所述,在某些实现方式中,边界网络设备220可以作为入口边界网络设备220,其中例如边界网络设备220经由边界网络设备220的入口接口从发送方设备210接收流量。附加地或备选地,如本文其他位置所述,边界网络设备220可以作为出口边界网络设备220,其中例如边界网络设备220经由边界网络设备220的出口接口向接收方设备240提供流量。如本文其他位置所述,在某些实现方式中,边界网络设备220可以位于网络250外部的一个或多个设备(例如,发送方设备210和/或接收方设备240)与网络250内部的一个或多个其他设备(例如,核心网络设备230)之间网络250的边界处。在某些实现方式中,单个边界网络设备220可以作为入口边界网络设备220和出口边界网络设备220。
核心网络设备230包括一个或多个能够接收、存储、生成、处理和/或提供信息(诸如与路由和/或下一跳相关的信息)的设备。例如,核心网络设备230可以包括路由器、网关、交换机、集线器、桥接器、逆向代理、服务器(例如,代理服务器、web服务器、主机服务器、存储服务器、数据中心或云计算环境中的服务器等)、防火墙、安全设备、入侵检测设备、负载平衡器或类似设备。如本文其他位置所述,在某些实现方式中,核心网络设备230可以交换与边界网络设备220之间路由和/或下一跳相关的信息。如本文其他位置所述,在某些实现方式中,核心网络设备230可以位于入口边界网络设备220与出口边界网络设备220之间网络250的核心处。
接收方设备240包括一个或多个能够存储、生成、处理、提供和/或接收流量(例如,从发送方设备210)的设备。例如,接收方设备240可以包括通信和/或计算设备,诸如台式计算机、移动电话(例如,智能电话或无线电电话)、膝上型计算机、平板计算机、游戏设备、可穿戴通信设备(例如,智能腕表、一副智能眼镜或活动带)或相似类型的设备。在某些实现方式中,接收方设备240可以包括像物理机执行程序的机器(例如,计算机)的软件实现。如本文其他位置所述,在某些实现方式中,接收方设备240可以被连接到边界网络设备220的出口接口(例如,出口边界网络设备220)。附加地或备选地,如本文其他位置所述,接收方设备240可以经由边界网络设备220的输出接口从边界网络设备220接收流量(例如,由发送方设备210提供的流量)。
网络250包括一个或多个有线网络和/或无线网络。例如,网络250可以包括蜂窝网络(例如,长期演进(LTE)网络、码分多址(CDMA)网络、3G网络、4G网络、5G网络、其他类型的高级生成网络等)、公共陆地移动网络(PLMN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、电话网络(例如,公共交换电话网络(PSTN))、私人网络、自组织网络、内联网、因特网、基于光纤的网络、云计算网络等,和/或这些或其他类型的网络的组合。
图2所示的设备和网络的数目和布置是作为示例而被提供的。在实践中,可能存在附加的设备和/或网络,更少的设备和/或网络,不同的设备和/或网络,或者与图2所示不同布置的设备和/或网络。此外,图2所示的两个或更多设备可以在单个设备内实施,或者图2所示的单个设备可以被实现为多个分布式设备。附加地或备选地,环境200的一组设备(例如,一个或多个设备)可以执行被描述为由环境200的另一组设备所执行的一个或多个功能。
图3是设备300的示例部件的示图。设备300可以对应于发送方设备210、边界网络设备220、核心网络设备230和/或接收方设备240。在某些实现方式中,发送方设备210、边界网络设备220、核心网络设备230和/或接收方设备240可以包括一个或多个设备300和/或设备300的一个或多个部件。如图3所示,设备300可以包括一个或多个输入部件305-1至305-B(B≥1)(在下文中被统称为“输入部件305”并且单独地“输入部件305”)、交换部件310、一个或多个输出部件315-1至315-C(C≥1)(在下文中被统称为“输出部件315”并且单独地“输出部件315”)和控制器320。
输入部件305可以是针对物理链路的附接点并且可以是针对传入流量(诸如分组)的进入点。输入部件305可以处理传入流量(诸如通过执行数据链路层封装或者解封装)。在某些实现方式中,输入部件305可以发送和/或接收分组。在某些实现方式中,输入部件305可以包括输入线卡,该输入线卡包括一个或多个分组处理部件(例如,以集成电路的形式),诸如一个或多个接口卡(IFC)、分组转发部件、线卡控制器部件、输入端口、处理器、存储器和/或输入队列。在某些实现方式中,设备300可以包括一个或多个输入部件305。
交换部件310可以将输入部件305与输出部件315相互连接。在某些实现方式中,交换部件310可以经由一个或多个交叉开关、经由总线和/或利用共享存储器被实现。共享存储器可以充当在分组最终被调度用于递送到输出部件315之前存储来自输入部件305的分组的临时缓冲器。在某些实现方式中,交换部件310可以使得输入部件305、输出部件315和/或控制器320能够进行通信。
输出部件315可以存储分组并且可以调度针对输出物理链路上的传输的分组。输出部件315可以支持数据链路层封装或者解封装和/或各种高层协议。在某些实现方式中,输出部件315可以发送分组和/或接收分组。在某些实现方式中,输出部件315可以包括输出线卡,该输出线卡包括一个或多个分组处理部件(例如,以集成电路的形式),诸如一个或多个IFC、分组转发部件、线卡控制器部件、输出端口、处理器、存储器和/或输出队列。如上文所述,在某些实现方式中,设备300可以包括一个或多个输出部件315。在某些实现方式中,输入部件305和输出部件315可以由相同部件集合实现(例如,输入/输出部件可以是输入部件305和输出部件315的组合)。
控制器320包括例如以下各项的形式的处理器:中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)和/或可以解译和/或执行指令的另一类型的处理器。处理器以硬件、固件或硬件和软件的组合来实现。在某些实现方式中,控制器320可以包括可以被编程为执行功能的一个或多个处理器。
在某些实现方式中,控制器320可以包括随机存取存储器(RAM)、只读存储器(ROM)和/或另一类型的动态或静态存储设备(例如,闪存、磁性存储器、光学存储器等),其存储供控制器320使用的信息和/或指令。
在某些实现方式中,控制器320可以与连接到设备300的其他设备、网络和/或系统进行通信以交换关于网络拓扑的信息。控制器320可以基于网络拓扑信息来创建路由表,基于路由表来创建转发表,并且将转发表转发给输入部件305和/或输出部件315。输入部件305和/或输出部件315可以使用转发表来执行针对传入分组和/或传出分组的路由查找。
控制器320可以执行本文所描述的一个或多个过程。控制器320可以响应于执行由非瞬态计算机可读介质存储的软件指令而执行这些过程。计算机可读介质在本文中被限定为非瞬态存储器设备。存储器设备包括单个物理存储设备内的存储器空间或者跨多个物理存储设备分散的存储器空间。
软件指令可以经由通信接口从另一计算机可读介质或者从另一设备被读取到与控制器320相关联的存储器和/或存储部件中。在执行时,被存储在与控制器320相关联的存储器和/或存储部件中的软件指令可以使得控制器320执行本文所描述的一个或多个过程。附加地或者备选地,硬线电路可以代替或与软件指令结合使用来执行本文所描述的一个或多个过程。因此,本文所描述的实现方式并不局限于硬件电路和软件的任何具体组合。
图3中所示的部件的数量和布置是作为示例而被提供的。在实践中,设备300可以包括附加的部件、更少的部件、不同的部件,或者与图3中所示不同布置的部件。附加地或备选地,设备300的一组部件(例如,一个或多个部件)可以执行被描述为由设备300的另一组部件所执行的一种或多种功能。
图4是用于优化与针对多播流量的路由相关的信息的示例过程400的流程图。在某些实现方式中,图4的一个或多个处理框可以由边界网络设备220执行。在某些实现方式中,图4的一个或多个处理框可以由与边界网络设备220分离的另一设备(诸如发送方设备210、核心网络设备230和/或接收方设备240)或者包括边界网络设备220的一组设备来执行。
如图4所示,过程400可以包括接收标识被连接到边界网络设备的发送方设备或边界网络设备的入口接口的信息(框410)。例如,边界网络设备220可以接收标识被连接到特定边界网络设备220的发送方设备210或发送方设备210被连接到的特定边界网络设备220的入口接口的信息。在某些实现方式中,边界网络设备220可以根据调度和/或在边界网络设备220向发送方设备210请求信息时周期性地接收信息。在某些实现方式中,边界网络设备220可以经由虚拟可扩展LAN(VXLAN)、使用通用路由封装的网络虚拟化(NVGRE)、通用路由封装(GRE)上的多协议标签交换(MPLS)和/或相似类型的网络虚拟化技术接收信息。
在某些实现方式中,边界网络设备220可以基于另一边界网络设备220和/或核心网络设备230的广告接收标识发送方设备210的信息。在某些实现方式中,标识发送方设备210的信息可以根据协议(诸如边界网关协议(BGP)、因特网组管理协议(IGMP)等)进行广告。
在某些实现方式中,标识发送方设备210的信息可以标识路由(本文指的是路由信息)。例如,该信息可以标识路由(诸如以太网虚拟专用网络(EVPN)路由)或者使用网络层可达性信息(NLRI)经由网络250去往发送方设备210、另一边界网络设备220和/或核心网络设备230的路由。附加地或备选地,该信息可以标识与入口边界网络设备220的特定入口接口(例如,本地或远程入口接口)相关联的路由、与入口接口相关联的特定发送方设备210(例如,本地或远程发送方设备210)和/或从发送方设备210和/或入口接口向其提供流量的多播群组。
在某些实现方式中,流量可以包括一组分组。分组可以指的是用于通信信息的通信结构,诸如协议数据单元(PDU)、网络分组、数据报、段、消息、块、单元、帧、子帧、隙、符号、任意上述所述的一部分和/或另一类型能够经由网络传输的格式或非格式数据单元。
在某些实现方式中,入口接口可以包括发送方设备210与边界网络设备220之间的接口,发送方设备210经由该接口向边界网络设备220提供流量。在某些实现方式中,入口接口可以与网络250的入口边界网络设备220相关联。
通过此方式,边界网络设备220可以接收标识被连接到边界网络设备220或另一边界网络设备220的入口接口的发送方设备210的信息。
如图4进一步所示,过程400可以包括确定发送方设备和/或发送方设备与其连接的入口接口是本地或远程(框420)。例如,边界网络设备220可以确定发送方设备210和/或发送方设备210与其连接的入口接口是本地或远程。在某些实现方式中,边界网络设备220可以使用上述接收到的信息来确定发送方设备210和/或发送方设备210与其连接的入口接口是本地或远程。
在某些实现方式中,发送方设备210在被连接到特定边界网络设备220(或特定边界网络设备220的入口接口)时可以对于该特定边界网络设备220是本地。附加地或备选地,入口接口在与特定边界网络设备220相关联时可以对于该特定边界网络设备220是本地。在某些实现方式中,发送方设备210在被连接到另一边界网络设备220(或另一边界网络设备220的入口接口)时可以对于特定边界网络设备220是远程。附加地或备选地,入口接口在与另一边界网络设备220相关联时可以对于特定边界网络设备220是远程。
例如,假设网络250包括两个入口边界网络设备220和单个出口边界网络设备220。例如,进一步假设第一入口边界网络设备220具有第一入口接口并且被连接到第一发送方设备210,第二入口边界网络设备220具有第二入口接口并且被连接到第二发送方设备210,出口边界网络设备220基于作为针对流量的出口点不具有入口接口并且不被连接到发送方设备210。在此情况下,第一入口接口/发送方设备210对于第一入口边界网络设备220是本地并且对于第二入口边界网络设备220是远程。另外,第二入口接口/发送方设备210对于第二入口边界网络设备220是本地并且对于第一入口边界网络设备220是远程。另外,第一入口接口/发送方设备210和第二入口接口/发送方设备210对于出口边界网络设备220是远程。
在某些实现方式中,确定入口接口/发送方设备210是本地或远程可以使用数据结构中的信息来执行。例如,数据结构可以包括标识哪些入口接口和/或发送方设备210被连接到边界网络设备220的信息。附加地或备选地,边界网络设备220可以基于所接收到的信息来确定入口接口/发送方设备210是本地或远程。例如,所接收到的信息可以包括指示标识路由的信息来自本地或远程入口接口/发送方设备210的指示符,由此通过较少或消除对边界网络设备220存储信息的需求,来保存边界网络设备220的存储器资源。
通过此方式,边界网络设备220可以确定发送方设备210和/或边界网络设备220的入口接口是本地或远程。
如图4进一步所示,过程400可以包括在入口接口和/或发送方设备是本地时存储第一路由信息,或者在入口接口和/或发送方设备是远程时存储第二路由信息(框430)。例如,边界网络设备220可以存储第一路由信息或第二路由信息。在某些实现方式中,边界网络设备220可以在入口接口和/或发送方设备210是本地时存储第一路由信息。附加地或备选地,边界网络设备220可以在入口接口和/或发送方设备210是远程时存储第二路由信息。
在某些实现方式中,路由信息可以包括标识发送方设备210、与发送方设备210相关联的入口接口、从发送方设备210向其发送流量的多播群组等的信息。在某些实现方式中,边界网络设备220可以使用上述所接收到的信息来存储路由信息。
在某些实现方式中,当存储第一路由信息时,边界网络设备220可以存储针对与特定边界网络设备220相关联的每个本地发送方设备210的单独路由信息(例如,通过将单独条目存储在针对每个本地发送方设备210的数据结构中)。例如,入口边界网络设备220可以存储针对被连接到入口边界网络设备220的本地入口接口的每个本地发送方设备210的第一路由信息。
继续先前示例,假设有两个本地发送方设备210连接到入口边界网络设备220的本地入口接口,该入口边界网络设备220可以存储针对第一本地发送方设备210的路由信息和针对第二本地发送方设备210的不同路由信息。通过此方式,边界网络设备220存储针对被连接到边界网络设备220的入口接口的每个本地发送方设备210的第一路由信息(例如,针对本地发送方设备210和/或本地入口接口)。
在某些实现方式中,当存储第二路由信息时,边界网络设备220可以存储针对远程发送方设备210和/或远程入口接口的聚合路由信息。例如,边界网络设备220可以存储针对远程发送方设备210和/或与另一边界网络设备220相关联的远程入口接口的聚合路由信息。
在某些实现方式中,当存储聚合路由信息时,边界网络设备220可以存储针对与远程入口接口相关联的远程发送方设备210的路由信息的单个条目而不是存储第一路由信息,其中路由信息针对每个远程发送方设备210被分别存储(例如,如在本地发送方设备210的情况下,作为数据结构中的单独条目)。例如,假设有两个远程发送方设备210连接到远程边界网络设备220,边界网络设备220可以存储与两个远程发送方设备210相关联的聚合路由信息(例如,而不是将针对每个发送方设备210的路由信息分别作为单独条目存储在数据结构中)。
通过此方式,边界网络设备220可以存储针对远程发送方设备210和/或远程入口接口的第二路由信息(例如,聚合路由信息),而不是存储第一路由信息(例如,如在本地发送方设备210和/或入口接口的情况下的单独路由信息)。
在某些实现方式中,第二路由信息可以基于远程入口接口、多播群组等来聚合。附加地或备选地,第二路由信息可以基于向其提供流量的出口接口来聚合。通过此方式,边界网络设备220可以存储针对远程发送方设备210和/或远程接口的较小量的路由信息,由此保存边界网络设备220的存储器资源。
在某些实现方式中,在存储第一路由信息之前或当时,边界网络设备220可以生成第一路由信息。例如,边界网络设备220可以使用所接收到的信息生成第一路由信息。在某些实现方式中,边界网络设备220可以确定与发送方设备210相关联的入口接口(例如,通过标识所接收到的信息中包括的入口接口标识符)。附加地或备选地,边界网络设备220可以标识与发送方设备210相关联的多播群组(例如,通过标识所接收到的信息中包括的多播群组标识符)。
附加地或备选地,边界网络设备220可以标识针对发送方设备210的设备标识符(例如,通过标识所接收到的信息中包括的设备标识符)。在某些实现方式中,边界网络设备220可以存储入口接口标识符、多播群组标识符和/或彼此相关联的设备标识符以生成第一路由信息。
在某些实现方式中,在存储第二路由信息之前或当时,边界网络设备220可以生成第二路由信息。例如,边界网络设备220可以使用所接收到的信息生成第二路由信息。在某些实现方式中,边界网络设备220可以确定与一个或多个发送方设备210相关联的入口接口(例如,通过标识所接收到的信息中包括的入口接口标识符)。附加地或备选地,边界网络设备220可以标识与一个或多个发送方设备210相关联的多播群组(例如,通过标识所接收到的信息中包括的多播群组标识符)。
附加地或备选地,边界网络设备220可以标识用于表示针对与第二路由信息相关联的一个或多个发送方设备210的设备标识符的串(例如,字符(诸如,如上文所述的*)、字符串、符号等)。在某些实现方式中,边界网络设备220可以存储入口接口标识符、多播群组标识符和/或彼此相关联的串以生成第二路由信息。
通过此方式,边界网络设备220可以基于发送方设备210和/或发送方设备210与其连接的入口接口是本地或远程,来存储第一路由信息和/或第二路由信息。
如图4进一步所示,过程400可以包括使用第一路由信息和/或第二路由信息来提供流量(框440)。例如,边界网络设备220可以向另一边界网络设备220、核心网络设备230和/或接收方设备240提供流量。在某些实现方式中,边界网络设备220可以使用第一路由信息或第二路由信息来提供流量。
在某些实现方式中,边界网络设备220可以从发送方设备210接收流量。例如,入口边界网络设备220可以经由本地入口接口从本地发送方设备210接收流量。在某些实现方式中,边界网络设备220可以标识与提供流量的本地发送方设备210和/或经其接收流量的本地入口接口相关联的多播群组。在某些实现方式中,边界网络设备220可以使用所存储的第一路由信息向多播群组提供流量。例如,边界网络设备220可以向由第一路由信息标识的多播群组提供流量。通过此方式,边界网络设备220可以使用第一路由信息来提供流量。
附加地或备选地,边界网络设备220可以从远程发送方设备210接收流量。例如,出口边界网络设备220可以经由入口边界网络设备220和/或核心网络设备230从远程发送方设备210接收流量。在某些实现方式中,边界网络设备220可以标识针对流量的出口接口和/或接收方设备240。例如,出口边界网络设备220可以通过使用与流量相关联的第二路由信息来标识出口接口和/或向其提供流量的特定接收方设备240。
继续先前示例,边界网络设备220可以通过标识与流量相关联的入口接口和/或多播群组并且标识与入口接口和/或多播群组相关联的对应出口接口(例如,使用数据结构),来标识针对流量的出口接口。这在执行出口接口的查找时通过减少数据结构中边界网络设备220要处理的条目数量(例如,基于正在针对多个远程发送方设备210聚合的第二路由信息),来保存边界网络设备220的处理资源。在某些实现方式中,边界网络设备220经由所标识的出口接口向所标识的接收方设备240提供流量。通过此方式,边界网络设备220可以使用第二路由信息来提供流量(例如,经由出口接口向接收方设备240)。
在某些实现方式中,边界网络设备220可以提供标识与多播群组相关联的设备的信息。例如,边界网络设备220在提供流量(例如,基于接收多播群组加入消息)之前向群组(例如,多播群组)广告成员关系。在某些实现方式中,边界网络设备220可以抑制或防止其他设备要加入群组的后续请求和/或抑制和/或防止对群组的成员关系的后续广告。这保存了与提供标识与多播群组相关联的设备的信息相关的处理资源。
在某些实现方式中,边界网络设备220可以提供指示多播群组中的成员已经离开群组的信息(例如,通过发送多播群组离开消息)。在某些实现方式中,边界网络设备220可以抑制或防止多播群组离开消息,除了在多播群组的最后一个成员离开多播群组时。例如,边界网络设备220可以在最后一个设备离开群组时(例如,而不是多播群组的每个成员离开时),广告群组离开消息,由此保存与提供指示多播群组的的成员已经离开群组的信息相关的处理资源。
通过此方式,边界网络设备220可以使用第一路由信息和/或第二路由信息来提供流量。
虽然图4示出了过程400的示例框,但是在某些实现方式中,过程400可以包括附加的框、较少的框、不同的框或与图4中所描绘的那些不同地布置的框。附加地或备选地,过程400的框中的两个或更多个框可以被并行执行。
图5是用于优化与针对多播流量的下一跳相关的信息的示例过程500的流程图。在某些实现方式中,图5的一个或多个处理框可以由边界网络设备220执行。在某些实现方式中,图5的一个或多个处理框可以由与边界网络设备220分离的另一设备(诸如发送方设备210、核心网络设备230和/或接收方设备240)或者包括边界网络设备220的一组设备来执行。
如图5所示,过程500可以包括接收标识将被用作针对第一多播群组的第一组下一跳的第一组边界网络设备的第一信息(框510)。例如,边界网络设备220可以接收标识将被用作针对第一多播群组的第一组下一跳的第一组边界网络设备220的第一信息(本文被称为下一跳信息)。在某些实现方式中,边界网络设备220可以通过与上文针对图4所述相似的方式来接收第一信息。
在某些实现方式中,第一组边界网络设备220可以与提供经由网络250的流量相关联。例如,第一组边界网络设备220可以与针对经由网络250的流量(例如,从入口边界网络设备220去往接收方设备240的流量)的第一组下一跳相关联。在某些实现方式中,第一组边界网络设备220可以被用作针对向多播群组发送的流量的第一组下一跳。
通过此方式,边界网络设备220可以接收标识将被用作针对第一多播群组的第一组下一跳的第一组边界网络设备的第一信息。
如图5所示,过程500可以包括确定第一信息是否先前已经由边界网络设备存储(框520)。例如,边界网络设备220可以确定第一信息是否先前已经由边界网络设备220存储。在某些实现方式中,边界网络设备220可以使用数据结构中的信息来确定边界网络设备220是否先前已经存储了第一信息。
在某些实现方式中,当边界网络设备220确定第一信息是否先前已经被存储时,边界网络设备220可以确定第一信息是否已经与标识其他组边界网络设备220的其他信息分离存储(例如,作为数据结构中的单独条目)。例如,假设第一多播群组具有第一边界网络设备220和第二边界网络设备220作为下一跳。在此情况下,边界网络设备220可以从标识针对包括第三边界网络设备220和第四边界网络设备220的第二多播群组的第二组边界网络设备220的信息,确定标识第一和第二边界网络设备220的信息是否先前已经作为单独条目存储在数据结构中。
在某些实现方式中,如果第一信息先前已经与针对其他组边界网络设备220分离存储(例如,作为数据结构中的单独条目),则边界网络设备220可以存储指示先前存储的第一信息将被用于向第一多播群组提供流量的一组指令。通过此方式,边界网络设备220可以使用先前存储的第一信息来向作为针对第一多播群组的第一组下一跳的第一组边界网络设备220提供流量。这保存了与存储冗余信息相关联的处理资源和/或存储器资源。
通过此方式,边界网络设备220可以确定第一信息是否先前由边界网络设备220存储。
如图5进一步所示,过程500可以包括确定第一信息是否可以由边界网络设备存储(框530)。例如,边界网络设备220可以确定第一信息是否可以由边界网络设备220存储作为数据结构中用于存储标识各组边界网络设备220的信息的单独条目。在某些实现方式中,边界网络设备220可以在确定边界网络设备220先前没有存储第一信息之后,确定第一信息是否可以被存储。
在某些实现方式中,边界网络设备220可以确定边界网络设备220是否具有足够存储器资源用于存储第一信息。例如,边界网络设备220可以确定边界网络设备220是否存储了标识阈值数量的多组边界网络设备220的信息、阈值量的边界网络设备220的存储器空间是否可用、用于存储标识多组边界网络设备220的信息的数据结构是否具有阈值数量的条目等。
在某些实现方式中,如果边界网络设备220确定边界网络设备220具有足够的存储器资源用于存储第一信息,则边界网络设备220可以存储该信息(例如,作为数据结构中的新条目)。附加地或备选地,边界网络设备220可以存储一组指令,该组指令指示将在向与该组边界网络设备220相关联的多播群组提供流量时使用的第一信息。相反地,在某些实现方式中,如果边界网络设备220确定边界网络设备220没有足够的存储器资源用于存储第一信息,则边界网络设备220可以不存储或尝试存储该第一信息(例如,作为数据结构中的单独条目),由此保存边界网络设备220的处理资源。
通过此方式,边界网络设备220可以确定第一信息是否可以由边界网络设备220存储。
如图5进一步所示,过程500可以包括确定先前存储的第二信息是否包括第一信息,该第二信息标识将被用作针对第二多播群组的第二组下一跳的第二组边界网络设备(框540)。例如,边界网络设备220可以确定数据结构中针对第二组边界网络设备的条目是否包括标识第一组边界网络设备的信息。在某些实现方式中,边界网络设备220可以在确定边界网络设备220无法存储第一信息(例如,基于没有足够的存储器资源而作为数据结构中的单独条目)之后,确定先前存储的第二信息是否包括第一信息。
在某些实现方式中,在确定先前存储的第二信息是否包括第一信息时,边界网络设备220可以执行与第一组和第二组边界网络设备220相关联的设备标识符的比较。例如,假设第一组边界网络设备220包括第一边界网络设备220并且第二组边界网络设备220包括第一边界网络设备220和第二边界网络设备220。
在此情况下,边界网络设备220可以将针对第一信息中包括的第一组边界网络设备220(例如,第一边界网络设备220)与第二信息中包括的第二组边界网络设备220(例如,第一边界网络设备220和第二边界网络设备220)的设备标识符进行比较,以确定第二信息是否包括第一信息。通过此方式,边界网络设备220可以将针对第一组边界网络设备220与第二组边界网络设备220的设备标识符进行比较,以确定先前存储的针对第二组边界网络设备220的第二信息是否包括针对第一组边界网络设备220的第一信息。
在某些实现方式中,边界网络设备220可以确定比较的结果。继续先前示例,边界网络设备220可以基于确定第二组边界网络设备220包括第一组边界网络设备220的边界网络设备220(例如,尽管第二组边界网络设备220包括其他边界网络设备220),来确定第二信息包括第一信息。
在某些实现方式中,如果先前存储的第二信息包括第一信息,则边界网络设备220可以存储一组指令,该组指令指示边界网络设备220将使用第二信息来标识针对去往第一组边界网络设备220的流量的下一跳。通过此方式,边界网络设备220可以使用先前存储的针对第二组边界网络设备220的第二信息来标识针对第一组边界网络设备220的下一跳。这通过减少或消除对边界网络设备220存储针对第一组边界网络设备220的第一消息(例如,作为单独数据条目)的需求,来保存边界网络设备220的存储器资源。
在某些实现方式中,先前存储的针对多组边界网络设备220的信息可以包括第一信息。在某些实现方式中,边界网络设备220可以选择各组边界网络设备220之一来用于标识针对第一组边界网络设备220的下一跳。在某些实现方式中,边界网络设备220可以基于哪组边界网络设备220包括最小数量的第一组边界网络设备220中不包括的边界网络设备220,来选择各组边界网络设备220之一来使用。
例如,假设第一组边界网络设备220包括第一和第二边界网络设备220。此外,例如假设第二组边界网络设备220包括第一边界网络设备220、第二边界网络设备220和第三边界网络设备220。此外,例如假设第三组边界网络设备220包括第一边界网络设备220、第二边界网络设备220、第三边界网络设备220和第四边界网络设备220。
在此情况下,边界网络设备220可以基于相对于第三组边界网络设备220第二组边界网络设备220包括较少第一组边界网络设备220中不包括的边界网络设备220,来选择第二组边界网络设备220而不是第三组边界网络设备220以用于标识针对第一组边界网络设备220的下一跳。例如,第二组边界网络设备220包括一个第一组边界网络设备220中不包括的边界网络设备220(例如,第三边界网络设备220),而第三组边界网络设备220包括两个第一组边界网络设备220中不包括的边界网络设备220(例如,第三边界网络设备220和第四边界网络设备220)。通过此方式,边界网络设备220减少了在使用另一组边界网络设备220来标识针对第一组边界网络设备220的下一跳时的多余网络流量。
在某些实现方式中,边界网络设备220可以随机选择各组边界网络设备220之一来用于第一组边界网络设备220。在某些实现方式中,边界网络设备220可以基于边界网络设备220或另一设备的用户的输入来选择各组边界网络设备220之一来用于第一组边界网络设备220。
通过此方式,边界网络设备220可以确定先前存储的第二信息是否包括第一信息。
如图5进一步所示,过程500可以包括确定是否修改第二信息以包括第一信息(框550)。例如,边界网络设备220可以确定是否修改先前存储的第二信息。在某些实现方式中,如果先前存储的针对第二组边界网络设备220的第二信息不包括标识第一组边界网络设备220的第一信息,则边界网络设备220可以确定是否修改先前存储的第二信息(例如,以将第一信息包括在第二信息中)。
作为一个示例,假设第一组边界网络设备220包括第一边界网络设备220和第二边界网络设备220。此外,假设先前存储的针对第二组边界网络设备220的第二信息不包括标识第一和第二边界网络设备220两者的信息。在此情况下,边界网络设备220可以一组边界网络设备220来修改针对选定组边界网络设备220的第二信息,使得包括标识第一组边界网络设备220的第一信息。
在某些实现方式中,当选择一组边界网络设备220时,边界网络设备220可以选择相对于其他组边界网络设备220具有最少数量的边界网络设备220的一组边界网络设备220。例如,假设第二组边界网络设备220包括两个边界网络设备220并且第三组边界网络设备220包括三个边界网络设备220,则边界网络设备220可以基于相对于第三组边界网络设备220第二组边界网络设备220包括较少边界网络设备220,来选择第二组边界网络设备220。在某些实现方式中,如果多组边界网络设备220包括相同数量的边界网络设备220,则边界网络设备220可以随机、基于一组规则、基于设备的用户的输入等,来选择一组边界网络设备220。
在某些实现方式中,当边界网络设备220已经选择了一组边界网络设备220来修改时,边界网络设备220可以通过向第二信息添加标识第一组边界网络设备220的第一信息,来修改标识第二组边界网络设备220的第二信息。例如,假设第一组边界网络设备220包括第一和第二边界网络设备220,并且选定组边界网络设备220包括第三边界网络设备220。在此情况下,边界网络设备220可以修改针对第二组边界网络设备220的信息,使得该信息包括标识第一、第二和第三边界网络设备220(例如,而不是只是第三边界网络设备220)的信息。这通过减少或消除对边界网络设备220在数据结构中存储针对标识第一组边界网络设备220的第一信息的单独条目的需求,来保存存储器资源。
在某些实现方式中,边界网络设备220可以存储一组指令,该组指令指示当边界网络设备220要向与第一组边界网络设备220相关联的多播群组提供流量时,边界网络设备220可以使用针对修改的第二组边界网络设备220的第二信息来确定针对流量的下一跳。
通过此方式,边界网络设备220可以确定是否修改先前存储的第二信息以包括标识第一组边界网络设备220的第一信息。
如图5进一步所示,过程500可以包括使用第一信息或第二信息向第一组下一跳提供流量(框560)。例如,边界网络设备220可以向作为针对多播群组的一组下一跳的第一组边界网络设备220提供流量。
在某些实现方式中,当边界网络设备220已经将第一信息作为单独条目存储在数据结构中时,边界网络设备220可以使用该第一信息来向第一组边界网络设备220提供流量。附加地或备选地,边界网络设备220可以使用第二信息来向第一组边界网络设备220提供流量。在某些实现方式中,当先前存储的标识第二组边界网络设备220的第二信息包括标识第一组边界网络设备220的信息时,边界网络设备220可以使用先前存储的第二信息。附加地或备选地,当边界网络设备220修改标识第二组边界网络设备220的第二信息以包括标识第一组边界网络设备220的第一信息时,边界网络设备220可以使用该第二信息。
在某些实现方式中,边界网络设备220可以使用第一信息或第二信息来标识针对与多播群组相关联的流量的下一跳。例如,假设第一组边界网络设备220包括第一边界网络设备220,边界网络设备220可以使用第一信息将该第一边界网络设备220标识为针对来自边界网络设备220的流量的下一跳。作为另一示例,假设第一组边界网络设备220包括第一边界网络设备220并且第二组边界网络设备220包括第一边界网络设备220和第二边界网络设备220。继续先前示例,边界网络设备220可以使用第二信息将该第一边界网络设备220和第二边界网络设备220标识为针对去往第一边界网络设备220的流量的下一跳。在此情况下,边界网络设备220可以基于向与第二边界网络设备220的多播群组不同的多播群组发送分组,来丢掉所接收的分组。
在某些实现方式中,边界网络设备220可以存储与一组边界网络设备220中包括的边界网络设备220的状态相关的信息。例如,特定边界网络设备220的状态可以与该特定边界网络设备220是否已经离开与该组边界网络设备220相关联的多播群组相关。
在某些实现方式中,当特定边界网络设备220离开多播群组时,边界网络设备220可以从与一组边界网络设备220相关联的信息中移除针对该特定边界网络设备220的信息。这通过减少或消除针对已经离开与一组边界网络设备220相关联的多播群组的边界网络设备220的信息的存储,来保存存储器资源。
通过此方式,边界网络设备220可以使用针对第一组边界网络设备220的第一信息和/或针对第二组边界网络设备220的第二信息来向一组下一跳提供流量。
虽然图5示出了过程500的示例框,但是在某些实现方式中,过程500可以包括附加的框、较少的框、不同的框或与图5中所描绘的那些不同地布置的框。附加地或备选地,过程500的框中的两个或更多个框可以被并行执行。
虽然本文所述动作被描述为由各设备(例如,发送方设备210、边界网络设备220、核心网络设备230和/或接收方设备240)执行,但是所述动作可以被描述为由各设备的部件(例如,控制器320)执行。
本文所述实现方式允许网络设备(诸如边界网络设备)聚合和/或合并路由信息和/或下一跳信息。通过此方式,网络设备可以通过减少网络设备要存储的信息量来保存存储器资源,并且通过减少网络设备要处理以执行针对流量的路由和/或下一跳的查找的信息量来保存处理资源。另外,网络设备通过减少网络设备用于执行查找花费的时间量来提高执行路由查找和/或下一跳查找的效率。
以上公开提供了图示和描述,但是并非旨在是穷举的或者将实施方式局限于所公开的确切形式。鉴于以上公开,修改和变化是可能的或者可以通过实现方式的实践而获得。
如本文所使用的,术语部件意在宽泛地被理解为硬件、固件和/或硬件和软件的组合。
在本文中结合阈值描述了一些实施方式。如本文所使用的,满足阈值可以是指大于阈值、多于阈值、高于阈值、大于或者等于阈值、小于阈值、少于阈值、低于阈值、小于或者等于阈值、等于阈值等的值。
显然,本文所描述的系统和/或方法可以以不同形式的硬件、固件或者硬件和软件的组合来实现。用来实现这些系统和/或方法的实际专用控制硬件或软件并非是实现方式的限制。因此,系统和/或方法的操作和行为在本文并未参看具体软件代码进行描述—所要理解的是,软件和硬件能够被设计为实施基于本文的描述的系统和/或方法。
即使在权利要求中引用和/或在说明书中公开了特定特征组合,但是这些组合并非旨在对可能实现方式的公开进行限制。实际上,这些特征中的许多可以以并未在权利要求中特别引用和/或在说明书中特别公开的方式进行组合。虽然以下所列出的每项从属权利要求仅可以直接引用一项权利要求,但是可能实现方式的公开包括与权利要求集合中的每项其它权利要求进行组合的每项从属权利要求。
除非明确如此描述,否则本文所使用的部件、动作或指令都不应当被理解为是关键的或必要的。而且,如本文所使用的,冠词“一”(“a”和“an”)意在包括一个或多个事项,并且可以与“一个或多个”互换使用。此外,如本文所使用的,术语“集合”意在包括一个或多个事项(例如,相关事项、非相关事项、相关和非相关事项的组合,等等),并且可以与“一个或多个”互换使用。在意在表示仅一个事项的情况下,使用术语“一个”或类似语言。而且,如本文所使用的,术语“具有”、“拥有”、“带有”等意在是开放端点的术语。此外,除非以其它方式明确指出,否则短语“基于”意在表示“至少部分基于”。
Claims (13)
1.一种第一设备,包括:
用于接收标识第二设备的信息的装置,
所述第二设备经由所述第一设备或第三设备的入口接口被连接到所述第一设备或所述第三设备;
用于确定所述第二设备被连接到所述第一设备或所述第三设备的装置,
所述第二设备在被连接到所述第一设备时对于所述第一设备是本地,
所述第二设备在被连接到所述第三设备时对于所述第一设备是远程;
用于基于确定所述第二设备被连接到所述第一设备或所述第三设备,来存储第一路由信息或第二路由信息的装置,
所述第一路由信息标识与所述第二设备相关联的路由,
所述第二路由信息标识针对多个设备的聚合路由,
所述多个设备包括所述第二设备;以及
用于在存储所述第一路由信息或所述第二路由信息之后,使用所述第一路由信息或所述第二路由信息来提供从所述第二设备接收的流量的装置。
2.根据权利要求1所述的第一设备,进一步包括:
用于基于确定所述第二设备被连接到所述第一设备,来确定所述第二设备是本地的装置;以及
其中用于存储所述第一路由信息或所述第二路由信息的所述装置包括:
用于基于确定所述第二设备是本地,来存储所述第一路由信息的装置。
3.根据权利要求1所述的第一设备,进一步包括:
用于基于确定所述第二设备被连接到所述第三设备,来确定所述第二设备是远程的装置;以及
其中所述用于存储所述第一路由信息或所述第二路由信息的装置包括:
用于基于确定所述第二设备是远程,来存储所述第二路由信息的装置。
4.根据权利要求1所述的第一设备,进一步包括:
用于基于确定所述第二设备被连接到所述第一设备或所述第三设备,来确定与所述多个设备相关联的入口接口的装置,
所述入口接口由所述信息中包括的入口接口标识符来标识;
用于基于确定与所述多个设备相关联的所述入口接口,来确定与所述多个设备相关联的多播群组的装置,
所述多播群组由所述信息中包括的多播群组标识符来标识;
用于通过将所述入口接口标识符和所述多播群组标识符与串相关联存储,来生成所述第二路由信息的装置;以及
其中用于存储所述第二路由信息的所述装置包括:
用于在生成所述第二路由信息之后,存储所述第二路由信息的装置。
5.根据权利要求1所述的第一设备,进一步包括:
用于基于确定所述第二设备被连接到所述第一设备或所述第三设备,来确定与所述第二设备相关联的入口接口的装置,
所述入口接口由所述信息中包括的入口接口标识符来标识;
用于基于确定与所述第二设备相关联的所述入口接口,确定与所述第二设备相关联的多播群组的装置,
所述多播群组由所述信息中包括的多播群组标识符来标识;
用于通过将所述入口接口标识符和所述多播群组标识符与标识所述第二设备的设备标识符相关联存储,来生成所述第一路由信息的装置;以及
其中所述用于存储所述第一路由信息的装置包括:
用于在生成所述第一路由信息之后,存储所述第一路由信息的装置。
6.根据权利要求1所述的第一设备,进一步包括:
用于基于确定所述第二设备被连接到所述第一设备或所述第三设备,来确定所述第二设备是本地或远程的装置;以及
其中用于存储所述第一路由信息或所述第二路由信息的所述装置包括:
用于基于确定所述第二设备是本地或远程,来存储所述第一路由信息或所述第二路由信息的装置。
7.根据权利要求1所述的第一设备,进一步包括:
用于接收第一下一跳信息的装置,所述第一下一跳信息标识将被用作针对第一多播群组的第一组下一跳的第一组设备;
用于基于接收到的所述第一下一跳信息,确定先前存储的第二下一跳信息是否包括所述第一下一跳信息的装置,所述第二下一跳信息标识将被用作针对第二多播群组的第二组下一跳的第二组设备;
用于基于确定所述先前存储的第二下一跳信息是否包括所述第一下一跳信息,来确定是否修改所述第二下一跳信息以包括所述第一下一跳信息的装置;以及
其中用于提供所述流量的所述装置包括:
用于基于确定是否修改所述第二下一跳信息以包括所述第一下一跳信息,来使用所述第一下一跳信息或所述第二下一跳信息以向所述第一组下一跳提供所述流量的装置。
8.一种方法,包括:
由第一设备接收标识流量的一个或多个源的信息,
所述流量将由所述第一设备接收,
所述一个或多个源与所述第一设备或第二设备相关联;
由所述第一设备基于接收到的所述信息来确定所述一个或多个源被连接到所述第一设备或所述第二设备,
所述一个或多个源在被连接到所述第一设备时对于所述第一设备是本地,
所述一个或多个源在被连接到所述第二设备时对于所述第一设备是远程,
由所述第一设备基于确定所述一个或多个源被连接到所述第一设备或所述第二设备,来存储第一信息或第二信息,
所述第一信息标识与所述一个或多个源相关联的一个或多个路由,
所述第二信息标识与包括所述一个或多个源的多个源相关联的单个路由;以及
由所述第一设备在存储所述第一信息或所述第二信息之后,使用所述第一信息或所述第二信息来提供路由。
9.根据权利要求8所述的方法,其中提供所述路由包括:
在基于所述一个或多个源对于所述第一设备是本地而存储所述第一信息之后,使用所述第一信息来提供所述流量。
10.根据权利要求8所述的方法,其中提供所述路由包括:
在基于所述一个或多个源对于所述第一设备是远程而存储所述第二信息之后,使用所述第二信息来提供所述流量。
11.根据权利要求8所述的方法,其中存储所述第一信息或所述第二信息包括:
基于确定所述一个或多个源被连接到所述第二设备,将所述第二信息作为单个条目存储在数据结构中。
12.根据权利要求8所述的方法,其中所述一个或多个路由或所述单个路由包括:
以太网虚拟专用网络(EVPN)路由,或
与网络层可达性信息(NLRI)相关联的路由。
13.根据权利要求8所述的方法,其中所述流量是多播流量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/381,905 | 2016-12-16 | ||
US15/381,905 US10181999B2 (en) | 2016-12-16 | 2016-12-16 | Optimizing information related to a route and/or a next hop for multicast traffic |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108206785A true CN108206785A (zh) | 2018-06-26 |
CN108206785B CN108206785B (zh) | 2020-12-15 |
Family
ID=58669576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710210011.6A Active CN108206785B (zh) | 2016-12-16 | 2017-03-31 | 针对多播流量优化与路由和/或下一跳相关的信息 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10181999B2 (zh) |
EP (2) | EP3767880B1 (zh) |
CN (1) | CN108206785B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112054962A (zh) * | 2019-06-06 | 2020-12-08 | 华为技术有限公司 | 一种实现组播的方法和装置 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10164876B2 (en) * | 2016-12-09 | 2018-12-25 | Cisco Technology, Inc. | Efficient multicast traffic forwarding in EVPN-based multi-homed networks |
US10181999B2 (en) | 2016-12-16 | 2019-01-15 | Juniper Networks, Inc. | Optimizing information related to a route and/or a next hop for multicast traffic |
US10305795B1 (en) * | 2017-10-06 | 2019-05-28 | Juniper Networks, Inc | Apparatus, system, and method for improving the process of establishing peering relationships via internet exchanges |
US10897471B2 (en) * | 2018-01-30 | 2021-01-19 | Hewlett Packard Enterprise Development Lp | Indicating malicious entities based on multicast communication patterns |
US10904949B2 (en) * | 2019-03-21 | 2021-01-26 | Hall Labs Llc | Bridge for wireless communication |
US11546185B2 (en) | 2020-04-27 | 2023-01-03 | Hewlett Packard Enterprise Development Lp | Multicast route summarization |
US20230008238A1 (en) * | 2021-07-08 | 2023-01-12 | Dell Products, L.P. | Communication path obfuscation system and method |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1881931A (zh) * | 2005-06-13 | 2006-12-20 | 中兴通讯股份有限公司 | 组播转发路由聚合方法 |
CN102724120A (zh) * | 2012-06-08 | 2012-10-10 | 华为技术有限公司 | 通告传输路径信息的方法及路由网桥 |
US8615015B1 (en) * | 2010-12-30 | 2013-12-24 | Juniper Networks, Inc. | Apparatus, systems and methods for aggregate routes within a communications network |
US20160183163A1 (en) * | 2014-12-23 | 2016-06-23 | Industrial Technology Research Institute | Control method, controller and packet processing method for software-defined network |
CN105978804A (zh) * | 2015-03-11 | 2016-09-28 | 丛林网络公司 | 路由方法和路由装置 |
US9510133B2 (en) * | 2011-10-03 | 2016-11-29 | Intel Corporation | Multi-rat carrier aggregation for integrated WWAN-WLAN operation |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6707796B1 (en) | 1999-05-07 | 2004-03-16 | Nortel Networks Limited | System device and method for reducing forwarding states in a communication system |
US7570604B1 (en) * | 2004-08-30 | 2009-08-04 | Juniper Networks, Inc. | Multicast data trees for virtual private local area network (LAN) service multicast |
US7649884B1 (en) * | 2004-12-01 | 2010-01-19 | Hrl Laboratories, Llc | Collaborative multicast routing (CMR) for multicasting in unidirectional, hybrid, multi-tiered mobile wireless network |
US8873563B2 (en) * | 2009-09-21 | 2014-10-28 | Brocade Communications Systems, Inc. | Techniques for next-hop optimization |
US20140189154A1 (en) * | 2012-12-27 | 2014-07-03 | Deep River Ventures, Llc | Methods, Systems, and Computer Program Products for Determining a Shared Identifier for a Hop in a Network |
GB201321148D0 (en) * | 2013-11-29 | 2014-01-15 | Bridgeworks Ltd | Data transfer |
US9450862B2 (en) * | 2014-03-11 | 2016-09-20 | Futurewei Technologies, Inc. | Virtual private network migration and management in centrally controlled networks |
US10547543B2 (en) * | 2015-06-24 | 2020-01-28 | Futurewei Technologies, Inc. | Elegant temporal label switched path tunnel service controller |
US20170026282A1 (en) * | 2015-07-21 | 2017-01-26 | Intel IP Corporation | Configuration of Data Path Groups in Wireless Networks |
EP3427446A4 (en) * | 2016-03-07 | 2019-09-04 | Level 3 Communications, LLC | SYSTEMS AND METHOD FOR THE DYNAMIC CONNECTION OF NETWORK ELEMENTS TO ENABLE A SERVICE |
US10181999B2 (en) | 2016-12-16 | 2019-01-15 | Juniper Networks, Inc. | Optimizing information related to a route and/or a next hop for multicast traffic |
-
2016
- 2016-12-16 US US15/381,905 patent/US10181999B2/en active Active
-
2017
- 2017-03-30 EP EP20190132.9A patent/EP3767880B1/en active Active
- 2017-03-30 EP EP17164031.1A patent/EP3337093B1/en active Active
- 2017-03-31 CN CN201710210011.6A patent/CN108206785B/zh active Active
-
2019
- 2019-01-11 US US16/245,385 patent/US11140069B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1881931A (zh) * | 2005-06-13 | 2006-12-20 | 中兴通讯股份有限公司 | 组播转发路由聚合方法 |
US8615015B1 (en) * | 2010-12-30 | 2013-12-24 | Juniper Networks, Inc. | Apparatus, systems and methods for aggregate routes within a communications network |
US9510133B2 (en) * | 2011-10-03 | 2016-11-29 | Intel Corporation | Multi-rat carrier aggregation for integrated WWAN-WLAN operation |
CN102724120A (zh) * | 2012-06-08 | 2012-10-10 | 华为技术有限公司 | 通告传输路径信息的方法及路由网桥 |
US20160183163A1 (en) * | 2014-12-23 | 2016-06-23 | Industrial Technology Research Institute | Control method, controller and packet processing method for software-defined network |
CN105978804A (zh) * | 2015-03-11 | 2016-09-28 | 丛林网络公司 | 路由方法和路由装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112054962A (zh) * | 2019-06-06 | 2020-12-08 | 华为技术有限公司 | 一种实现组播的方法和装置 |
CN112054962B (zh) * | 2019-06-06 | 2021-12-14 | 华为技术有限公司 | 一种实现组播的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US11140069B2 (en) | 2021-10-05 |
EP3337093B1 (en) | 2020-09-16 |
US10181999B2 (en) | 2019-01-15 |
EP3767880A1 (en) | 2021-01-20 |
EP3767880B1 (en) | 2022-10-12 |
US20190149452A1 (en) | 2019-05-16 |
EP3337093A1 (en) | 2018-06-20 |
US20180176121A1 (en) | 2018-06-21 |
CN108206785B (zh) | 2020-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108206785A (zh) | 针对多播流量优化与路由和/或下一跳相关的信息 | |
US10158561B2 (en) | Data plane learning of bi-directional service chains | |
CN102771094B (zh) | 分布式路由架构 | |
US10069764B2 (en) | Ruled-based network traffic interception and distribution scheme | |
CN102763380B (zh) | 用于路由分组的系统和方法 | |
CN108989213A (zh) | 使用虚拟节点之间的所选择的结构路径传输lsp设置 | |
CN108989212A (zh) | 多个下一跳的路由协议信令及其关系 | |
CN106713137B (zh) | 基于分段路由和sdn技术的vpn方法、装置及系统 | |
CN108989203A (zh) | 通告用于虚拟节点中的服务路由的选定结构路径 | |
CN107040462A (zh) | 路由方法和中间路由器 | |
CN105591978A (zh) | 基于网络的服务功能链接 | |
CN108463989A (zh) | 跨多个子网络的业务功能链接 | |
CN109076018A (zh) | 利用is-is暴露最大节点和/或链路分段标识符深度的技术 | |
CN101841487A (zh) | 聚合链路服务流的配置方法及包交换装置 | |
CN106470158A (zh) | 报文转发方法及装置 | |
CN109525501A (zh) | 一种调整转发路径的方法和装置 | |
CN107872389A (zh) | 多归连接的网络中的对称子网间业务负载平衡 | |
CN108123878A (zh) | 一种路由方法、装置及数据转发设备 | |
CN106533946A (zh) | 报文转发方法和装置 | |
CN103329493A (zh) | 芯片上分组穿过 | |
CN107078953A (zh) | 用于可扩展计算机网络划分的方法 | |
EP3871159A1 (en) | Architecture for utilizing key-value store for distributed neural networks and deep learning | |
CN106254282B (zh) | 链路聚合的实现方法及装置 | |
WO2015154393A1 (zh) | 业务节点能力处理方法、装置、业务分类器及业务控制器 | |
CN107078954A (zh) | 用于计算机网络中的端点标识的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |