CN116489068A - 路由反射对等端点的自动发现 - Google Patents
路由反射对等端点的自动发现 Download PDFInfo
- Publication number
- CN116489068A CN116489068A CN202211393947.4A CN202211393947A CN116489068A CN 116489068 A CN116489068 A CN 116489068A CN 202211393947 A CN202211393947 A CN 202211393947A CN 116489068 A CN116489068 A CN 116489068A
- Authority
- CN
- China
- Prior art keywords
- route
- network device
- originating
- reflector
- client
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 79
- 230000000977 initiatory effect Effects 0.000 claims description 41
- 230000015654 memory Effects 0.000 claims description 36
- 230000008569 process Effects 0.000 description 56
- 238000004891 communication Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 12
- 230000011664 signaling Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- 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/02—Topology update or discovery
- H04L45/033—Topology update or discovery by updating distance vector protocols
-
- 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/02—Topology update or discovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- 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/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical 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/26—Route discovery packet
-
- 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/74—Address processing for routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种自动发现路由反射器(自动发现RR)可以从始发网络设备获得路由,并且可以更新数据结构以包括路由中所包含的至少一些信息。自动发现RR可以基于所述数据结构来标识多个目标网络设备,其中多个目标网络设备包括至少一个路由反射器(RR)和至少一个路由反射器客户端(RR客户端)。自动发现RR可以向多个目标网络设备发送路由,以促进始发网络设备与多个目标网络设备中的至少一个目标网络设备之间的连接的建立。
Description
分案申请说明
本申请是申请日为2020年11月27日、优先权日为2019年12月5日、申请号为202011358757.X、名称为“路由反射对等端点的自动发现”的中国发明专利申请的分案申请。
技术领域
本发明涉及通信领域,特别地,涉及路由反射对等端点的自动发现。
背景技术
符合边界网关协议(BGP)的网络可以利用路由反射,这允许网络设备将业务发送给一个或多个网络设备(例如BGP对等体),而不必将业务单独发送给一个或多个网络设备中的每个网络设备。
发明内容
根据一些实现,一种方法可以包括:由自动发现路由反射器(自动发现RR)从始发网络设备获得路由;由自动发现RR更新数据结构,以包括路由中所包含的至少一些信息;由自动发现RR基于数据结构来标识多个目标网络设备,其中所述多个目标网络设备包括至少一个路由反射器(RR)和至少一个路由反射器客户端(RR客户端);以及由自动发现RR向多个目标网络设备发送路由,以促进在始发网络设备与多个目标网络设备中的至少一个目标网络设备之间的连接的建立。
根据一些实现,一种路由反射器(RR)可以包括一个或多个存储器以及一个或多个处理器,用以:经由自动发现路由反射器(自动发现RR)从始发网络设备接收路由;处理该路由,以确定标识始发网络设备的信息和与始发网络设备有关的附加信息;更新数据结构,以包括标识始发网络设备的信息和与始发网络设备有关的附加信息中的至少一些附加信息;以及基于标识始发网络设备的信息,使RR与始发网络设备之间的连接被建立。
根据一些实现,一种非瞬态计算机可读介质可以存储一个或多个指令。一个或多个指令当被路由反射器客户端(RR客户端)的一个或多个处理器执行时,可以使一个或多个处理器:经由自动发现路由反射器(自动发现RR)从始发路由反射器(RR)接收路由反射器通告路由;处理该RR通告路由,以确定标识始发RR的信息、标识与始发RR相关联的地址族的信息、和与始发RR有关的附加信息;更新数据结构,以包括标识始发RR的信息、标识与始发RR相关联的地址族的信息、和与始发RR有关的附加信息中的至少一些附加信息;确定与始发RR相关联的地址族是否与关联于RR客户端的地址族匹配;以及基于确定与始发RR相关联的地址族与关联于RR客户端的地址族匹配,更新RR客户端的一个或多个设置,以允许始发RR能够使与RR客户端的连接被建立。
附图说明
图1A-1D是本文中所描述的一个或多个示例实现的图。
图2A-2C是描绘本文中所描述的示例路由的图。
图3是本文中所描述的系统和/或方法可以被实施的示例环境的图。
图4A-4B是图3的一个或多个设备的示例组件的图。
图5-7是用于路由反射对等端点的自动发现的示例过程的流程图。
具体实施方式
示例实现的以下详细描述参考附图。不同图式中的相同附图标记可以标识相同或类似的元件。
启用BGP的网络中的路由反射允许网络的一个或多个网络设备彼此通信,而无需将一个或多个网络设备单独地彼此连接(例如完全网合)。例如,路由反射集群可以包括服务于一个或多个RR客户端的一个或多个路由反射器(RR)。一个或多个RR可以彼此完全网合,并且每个RR可以单独地与一个或多个RR客户端中的每个RR客户端连接。因此,在一些情况下,集群外部的网络设备可以连接到一个或多个RR中的至少一个RR,以经由至少一个RR将业务发送给一个或多个RR客户端。以该方式,外部网络设备不需要与一个或多个RR客户端单独地连接以将业务发送给一个或多个RR客户端,这可以减少服务于网络的网络设备所需的连接总数。然而,设计和实施利用路由反射的网络需要手动配置以确保每个网络设备的恰当操作。这可能是容易受到人为错误的影响的资源密集的耗时的过程。此外,在许多情况下,由于路由反射所涉及的配置复杂性,现有网络设备不能轻易地被改变和/或从网络被移除,并且新网络设备不能轻易地被添加到网络。
本文中所描述的一些实现提供一种自动发现路由反射器(自动发现RR)(例如也被称为引导(bootstrap)RR),其连接到网络的每个网络设备。在一些实现中,自动发现RR可以反射网络的网络设备之间的自动发现信令路由(例如也被称为引导信令路由)。例如,在一些实现中,具体的RR可以将RR通告路由发送(例如,当具体的RR被添加或被更新时)给自动发现RR,该自动发现RR可以将RR通告路由发送(例如反射RR通告路由)给网络的一个或多个RR和/或一个或多个RR客户端。在一些实现中,一个或多个RR可以与具体的RR连接,和/或一个或多个RR客户端可以分别更新一个或多个设置,以允许具体的RR使与一个或多个RR客户端的连接被建立。在另一示例中,在一些实现中,具体的RR客户端可以将RR客户端请求路由发送给自动发现RR,该自动发现RR可以将RR客户端请求路由(例如反射RR客户端请求路由)发送给网络的一个或多个RR。在一些实现中,一个或多个RR中的至少一些RR可以分别使与具体的RR客户端的连接被建立。在一些实现中,一个或多个RR中的RR可以将RR邻居通告路由发送给其他RR,以指示活动连接已在RR与具体的RR客户端之间被建立。
以该方式,自动发现RR可以促进网络中的路由反射的自动配置。由于自动发现信令路由,当RR和/或RR客户端被更新和/或从网络被移除和/或新RR和/或新RR客户端被添加到网络时,自动发现RR可以促进RR和/或RR客户端的恰当路由反射配置。因此,RR和RR客户端不需要在每次RR或RR客户端被更新、从网络被移除和/或被添加到网络时就被手动配置。因此,自动发现RR可以减少配置或重新配置网络的网络设备的时间量,从而相对于使用手动配置过程配置网络设备来改善网络的性能。此外,自动发现RR可以促进网络自动适配于对网络的网络设备的动态改变,以维持恰当路由反射配置,这是使用手动配置过程不可能的。
图1A-1D是本文中所描述的一个或多个示例实现100的图。如图1A中所示,(多个)示例实现100可以包括多个网络设备,诸如自动发现RR、一个或多个RR(例如在图1A中示出为RR 1至RR N,其中N大于或等于1)、一个或多个RR客户端(例如在图1A中示出为RR客户端1至RR客户端M,其中M大于或等于1)。多个网络设备可以在网络(诸如利用BGP路由反射的网络)中被包括。如本文中所描述,RR或RR客户端可以被配置为当被添加到网络时仅具有自动发现RR的地址,以促进路由反射对等端点的自动发现。
每个RR可以与一个或多个RR中的其他RR中的每个RR连接(例如,一个或多个RR可以被完全网合作为BGP对等体)。此外,一个或多个RR中的RR的集合和一个或多个RR客户端中的RR客户端的集合可以形成集群(例如RR集群)。集群可以与具体的寻址族相关联。集群中的每个RR可以分别被连接到集群的每个RR客户端(例如作为BGP对等体)。一个或多个集群可以从一个或多个RR和一个或多个RR客户端被形成。
自动发现RR可以分别被连接到一个或多个RR中的每个RR和/或可以分别被连接到一个或多个RR客户端中的每个RR客户端。例如,参考图1A,自动发现RR可以分别与RR 1至RRN中的每一个连接和/或可以与RR客户端1至RR客户端M中的每一个连接(例如,自动发现RR具有所有RR和所有RR客户端作为所配置的BGP邻居)。自动发现RR可以包括和/或维护数据结构,该数据结构包括:标识一个或多个RR中的每个RR和/或一个或多个RR客户端中的每个RR客户端的信息;与一个或多个RR中的每个RR和/或一个或多个RR客户端中的每个RR客户端相关联的路由信息;等等。因此,如本文中所描述,自动发现RR可以促进用于网络的路由反射的自动配置。
在一些实现中,一个或多个RR中的RR可以生成自动发现信令路由(诸如RR通告路由)和/或将自动发现信令路由发送给自动发现RR。例如,如图1B中并且由附图标记102所示,始发RR(例如RR1)可以生成RR通告路由和/或将RR通告路由发送给自动发现RR。当始发RR被添加到网络时、当始发RR被更新(例如,与始发RR相关联的地址改变、被始发RR支持的地址族改变等)时、等等,始发RR可以生成RR通告路由和/或将RR通告路由发送给自动发现RR。RR通告路由可以包括:标识路由的路由区分符的信息(例如唯一标识符);标识路由的类型的信息(例如指示路由是RR通告路由的信息);标识与始发RR相关联的至少一个地址族的信息(例如指示对IPv4和/或IPv6的支持的地址族指示符(AFI);指示对单播、多播、虚拟专用网络(VPN)等的支持的后续地址族指示符(SAFI);等);标识始发RR的信息(例如与始发RR相关联的因特网协议(IP)地址、始发RR的物理位置等);标识与始发RR相关联的网络的信息(例如与始发RR相关联的自动系统(AS));标识始发RR的至少一个配置偏好的信息(例如被始发RR支持的连接的最大数目);标识与始发RR相关联的至少一个路由目标的信息(例如指示始发RR属于具体群组(诸如包括一个或多个RR的群组)的路由目标);等等。
如通过附图标记104所示,自动发现RR在接收到RR通告路由时,可以更新自动发现RR中所包括的数据结构,以包括RR通告路由中所包含的至少一些信息。例如,自动发现RR可以更新数据结构以包括标识始发RR的信息、标识与始发RR相关联的网络的信息、标识始发RR的至少一个配置偏好的信息、标识与始发RR相关联的至少一个路由目标的信息等。如通过附图标记106所示,自动发现RR可以搜索数据结构以标识一个或多个RR,并且可以将RR通告路由发送给一个或多个RR中的至少一个RR(例如至少一个目标RR)(例如,自动发现RR可以将RR通告路由发送给RR N,如图1B中所示)。在一些实现中,自动发现RR可以将RR通告发送给一个或多个RR(例如RR 1至RR N)中的每个RR、发送给不包括始发RR的一个或多个RR(例如RR 2至RR N)中的每个RR等。
接收到RR通告路由的目标RR可以处理RR通告路由,以确定标识始发RR的信息和/或与始发RR有关的附加信息(例如标识与始发RR相关联的至少一个地址族的信息;标识与始发RR相关联的网络的信息;标识始发RR的至少一个配置偏好的信息;标识与始发RR相关联的至少一个路由目标的信息;等)。目标RR可以更新数据结构(例如被包括在目标RR中),以包括标识始发RR的信息和/或与始发RR有关的附加信息中的至少一些附加信息。
在一些实现中,目标RR可以使始发RR与目标RR之间的连接(例如BGP会话)被建立。例如,目标RR可以基于标识始发RR的信息确定始发RR的地址,并且可以生成连接发起请求和/或将连接发起请求发送给始发RR,以使RR与始发RR之间的连接被建立。如通过附图标记108所示,RR N可以使RR 1与RR N之间的连接(例如基于RR通告路由)被建立。
在一些实现中,在使始发RR与目标RR之间的连接被建立之后,目标RR可以向始发RR发送标识目标RR的信息、标识与目标RR相关联的至少一个地址族的信息等。始发RR可以更新数据结构(例如被包括在始发RR中),以包括标识目标RR的信息、标识与目标RR相关联的至少一个地址族的信息等。附加地或备选地,目标RR可以更新目标RR的一个或多个设置(例如,目标RR可以启用针对同一寻址前缀的多个路径的通告,以确保关于其他RR的所有路由都被存储在目标RR的数据结构中)。
在一些实现中,始发RR可以生成RR通告路由和/或将RR通告路由发送给自动发现RR,并且自动发现RR可以将RR通告路由发送给一个或多个RR客户RR中的至少一个RR客户端。例如,如图1C中并且通过附图标记110所示,始发RR(例如RR 1)可以生成RR通告路由和/或将RR通告路由发送给自动发现RR(例如以与本文中关于图1B和附图标记102所描述的方式类似的方式)。如通过附图标记112所示,自动发现RR可以更新在自动发现RR中所包括的数据结构(例如以与本文中关于图1B和附图标记104所描述的方式类似的方式)。如通过附图标记114所示,自动发现RR可以搜索数据结构以标识一个或多个RR客户端,并且可以将RR通告路由发送给一个或多个RR客户端中的至少一个RR客户端(例如至少一个目标RR客户端)(例如以与本文中关于图1B和附图标记106所描述的方式类似的方式)。在一些实现中,自动发现RR可以将RR通告发送给一个或多个RR客户端(例如RR客户端1至RR客户端M)中的每个RR客户端。
接收到RR通告路由的目标RR客户端可以处理RR通告路由,以确定标识始发RR的信息、标识与始发RR相关联的地址族的信息和/或与始发RR有关的附加信息(例如标识与始发RR相关联的网络的信息;标识始发RR的至少一个配置偏好的信息;标识与始发RR相关联的至少一个路由目标的信息;等等)。目标RR客户端可以更新数据结构(例如被包括在目标RR客户端中),以包括标识始发RR的信息、标识与始发RR相关联的地址族的信息和/或与始发RR有关的附加信息中的至少一些附加信息。
在一些实现中,目标RR客户端可以确定与始发RR相关联的地址族是否与关联于RR客户端的地址族匹配(例如基于可以由目标RR客户端的数据结构中所包括的信息所指示的目标RR客户端的一个或多个配置)。当目标RR客户端确定与始发RR相关联的地址族与关联于RR客户端的地址族匹配时,目标RR客户端可以更新RR客户端的一个或多个设置。例如,如通过附图标记116所示,RR客户端1可以更新RR客户端1的一个或多个设置(例如基于RR通告路由)。在一些实现中,更新目标RR客户端的一个或多个设置可以允许始发RR能够使与目标RR客户端的连接被建立。例如,目标RR客户端可以更新目标RR客户端的至少一个设置(例如,该至少一个设置可以被存储在目标RR客户端的数据结构中),以指示目标RR客户端可以从始发RR接受连接发起请求。
在一些实现中,一个或多个RR客户端中的RR客户端可以生成自动发现信令路由(诸如RR客户端请求路由)和/或将自动发现信令路由发送给自动发现RR。例如,如图1D中并且通过附图标记118所示,始发RR客户端(例如RR客户端1)可以生成RR客户端请求路由和/或将RR客户端请求路由发送给自动发现RR。当始发RR客户端被添加到网络时、当始发RR客户端被更新(例如,与始发RR客户端相关联的地址改变、被始发RR客户端支持的地址族改变、与始发RR客户端的连接数改变等)时等,始发RR客户端可以生成RR客户端请求路由和/或将RR客户端请求路由发送给自动发现RR。RR客户端请求路由可以包括标识路由的路由区分符的信息(例如唯一标识符);标识路由的类型的信息(例如指示路由是RR客户端请求路由的信息);标识与始发RR客户端相关联的至少一个地址族的信息(例如AFI、SAFI等);标识始发RR客户端的信息(例如与始发RR客户端相关联的IP地址、始发RR客户端的物理位置等);标识与始发RR客户端相关联的网络的信息(例如与始发RR客户端相关联的AS);标识始发RR的至少一个配置偏好的信息(例如被始发RR客户端支持的连接的最大数目、用于连接到具有在始发RR客户端的物理位置的阈值距离内的物理位置的RR的偏好;等);标识与始发RR相关联的至少一个路由目标的信息(例如指示始发RR客户端属于具体群组(诸如包括一个或多个RR客户端的群组、仅包括始发RR客户端的群组等)的路由目标);等。
如通过附图标记120所示,自动发现RR在接收到RR客户端请求路由时,可以更新自动发现RR中所包括的数据结构,以包括RR客户端请求路由中所包含的至少一些信息。例如,自动发现RR可以更新数据结构,以包括:标识始发RR客户端的信息、标识与始发RR客户端相关联的网络的信息、标识始发RR客户端的至少一个配置偏好的信息、标识与始发RR客户端相关联的至少一个路由目标的信息等。在一些实现中,自动发现RR可以搜索数据结构以标识一个或多个RR,并且可以将RR客户端请求路由发送给一个或多个RR中的至少一个RR(例如至少一个目标RR)。例如,如通过附图标记122-1和122-2所示,自动发现RR可以将RR客户端请求路由发送给RR 1和RR N。在一些实现中,自动发现RR可以将RR客户端请求路由发送给一个或多个RR(例如RR 1至RR N)中的每个RR。
接收到RR客户端请求路由的目标RR可以处理RR客户端请求路由,以确定标识始发RR客户端的信息和/或与始发RR客户端有关的附加信息(例如标识与始发RR客户端相关联的至少一个地址族的信息;标识与始发RR客户端相关联的网络的信息;标识始发RR客户端的至少一个配置偏好的信息;标识与始发RR客户端相关联的至少一个路由目标的信息;等)。目标RR可以更新数据结构(例如被包括在目标RR中),以包括标识始发RR客户端的信息和/或与始发RR客户端有关的附加信息中的至少一些附加信息。
在一些实现中,目标RR可以使始发RR客户端与目标RR之间的连接(例如BGP会话)被建立。例如,如通过附图标记124所示,RR 1可以使RR客户端1与RR 1之间的连接(例如基于RR客户端请求路由)被建立。目标RR可以通过基于标识始发RR客户端的信息确定始发RR客户端的地址并且基于始发RR客户端的地址将连接发起请求发送给始发RR客户端,来使目标RR与始发RR客户端之间的连接被建立。
在一些实现中,目标RR可以基于与始发RR客户端有关的附加信息来确定是否使目标RR与始发RR客户端之间的连接被建立。例如,目标RR可以基于与始发RR客户端有关的附加信息来确定与始发RR客户端相关联的地址族,并且可以基于目标RR的数据结构中所包括的配置信息来确定与目标RR相关联的地址族。当目标RR确定与始发网络设备相关联的地址族与关联于目标RR的地址族匹配时,目标RR可以将连接发起请求发送给始发RR客户端,以使目标RR与始发RR客户端之间的连接被建立。附加地或备选地,当目标RR确定与始发网络设备相关联的地址族与关联于目标RR的地址族不匹配时,目标RR可以确定不将连接发起请求发送给始发RR客户端,并且从而可以防止目标RR与始发RR客户端之间的连接被建立。
在附加示例中,目标RR可以基于与始发RR客户端有关的附加信息来确定始发RR客户端的连接的最大数目,并且可以搜索目标RR的数据结构,以确定与始发RR客户端的活动连接的数目。当目标RR确定活动连接的数目小于连接的最大数目时,目标RR可以将连接发起请求发送给始发RR客户端,以使目标RR与始发RR客户端之间的连接被建立。附加地或备选地,当目标RR确定活动连接的数目大于或等于连接的最大数目时,目标RR可以确定不将连接发起请求发送给始发RR客户端,并且从而可以防止目标RR与始发RR客户端之间的连接被建立。
在另一示例中,目标RR可以基于与始发RR客户端有关的附加信息来确定始发RR客户端的物理位置,并且可以基于目标RR的数据结构中所存储的信息来确定目标RR的物理位置。当目标RR确定目标RR的物理位置在始发RR客户端的物理位置的阈值距离(例如1公里(km)、10km、100km、1,000km等)内(例如小于或等于该阈值距离)时,目标RR可以将连接发起请求发送给始发RR客户端,以使目标RR与始发RR客户端之间的连接被建立。附加地或备选地,当目标RR确定目标RR的物理位置不在始发RR客户端的物理位置的阈值距离内(例如大于该阈值距离)时,目标RR可以确定不将连接发起请求发送给始发RR客户端,并且从而可以防止目标RR与始发RR客户端之间的连接被建立。
在一些实现中,在接收到由目标RR所发送的连接发起请求时(例如,如在上文示例中所描述),始发RR客户端可以确定(例如通过搜索RR客户端中所包括的数据结构)始发RR客户端具有的与一个或多个RR中的至少一些RR的活动连接的数目。始发RR客户端可以确定活动连接的数目是否满足(例如大于或等于)阈值(例如被始发RR客户端支持的连接的最大数目)。当始发RR客户端确定活动连接的数目不满足阈值(例如,活动会话的数目小于被始发RR客户端支持的连接的最大数目)时,始发RR客户端可以将连接发起请求接受发送给目标RR,以使始发RR客户端与目标RR之间的连接被建立。因此,始发RR客户端可以更新RR客户端中所包括的数据结构和/或目标RR可以更新目标RR中所包括的数据结构,以分别指示在始发RR客户端与目标RR之间存在活动连接。附加地或备选地,当始发RR客户端确定活动连接的数目满足阈值(例如,活动会话的数目大于或等于被始发RR客户端支持的连接的最大数目)时,始发RR客户端可以将连接发起请求拒绝发送给目标RR,以防止始发RR客户端与目标RR之间的连接被建立。
在一些实现中,在使目标RR与始发RR客户端之间的连接被建立之后,目标RR可以生成自动发现信令路由和/或将自动发现信令路由(诸如RR邻居通告路由)发送给一个或多个RR中的至少一个不同的目标RR。例如,如通过附图标记126所示,RR 1可以生成RR邻居通告路由和/或将RR邻居通告路由发送给RR N(例如基于使RR1与RR客户端1之间的连接被建立)。在一些实现中,目标RR可以将RR邻居通告路由发送给自动发现RR,以使自动发现RR将RR邻居通告路由发送给一个或多个RR中的至少一个不同的目标RR(例如以与本文中关于图1B所描述的方式类似的方式)。附加地或备选地,目标RR可以直接将RR邻居通告路由发送给一个或多个RR中的至少一个不同的目标RR(例如基于目标RR与一个或多个RR之间的相应连接)。
RR邻居通告路由可以包括指示目标RR已经使与始发RR客户端的连接被建立的信息。附加地或备选地,RR邻居通告路由可以包括:标识RR邻居通告路由的路由区分符的信息(例如唯一标识符);标识RR邻居通告路由的类型的信息(例如指示路由是RR邻居通告路由的信息);标识始发RR客户端的地址的信息;标识与目标RR相关联的地址族的信息(例如AFI、SAFI等);标识目标RR的信息(例如与目标RR相关联的IP地址、目标RR的物理位置等);标识目标RR的至少一个配置偏好的信息(例如被目标RR支持的连接的最大数目);标识与目标RR相关联的至少一个路由目标的信息(例如指示目标RR属于具体群组(诸如包括一个或多个RR的群组、仅包括目标RR的群组等)的信息);指示成本的信息(例如用以从目标RR路由到始发RR客户端的内部网关协议(IGP)成本);等。
接收到RR邻居通告路由的不同目标RR可以处理RR邻居通告路由,以确定指示目标RR已使与始发RR客户端的连接被建立的信息和/或与目标RR有关的附加信息(例如标识始发RR客户端的地址的信息;标识与目标RR相关联的地址族的信息;标识目标RR的信息;标识目标RR的至少一个配置偏好的信息;标识与目标RR相关联的至少一个路由目标的信息;指示用以从目标RR路由到始发RR客户端的成本的信息;等)。不同的目标RR可以更新数据结构(例如被包括在不同目标RR中),以包括指示目标RR已使与始发RR客户端的连接被建立的信息和/或与目标RR有关的附加信息中的至少一些附加信息。
在一些实现中,不同的目标RR在接收和处理RR邻居通告路由之后可以接收RR客户端请求路由。例如,如图1D中所示,在接收到由RR 1所发送的RR邻居通告路由(例如在本文中关于附图标记126所描述)之后,RR N可以接收由自动发现RR所发送的RR客户端请求路由(例如在本文中关于附图标记122-2所描述)。不同的目标RR可以处理RR客户端请求路由,以确定是否以与本文中关于附图标记124所描述的方式类似的方式使不同的目标RR与始发RR客户端之间的连接被建立。
例如,不同的目标RR可以搜索不同的目标RR的数据结构(例如在基于接收到RR邻居通告路由而更新数据结构之后),以确定与始发RR客户端的活动连接的数目。当不同的目标RR确定与始发RR客户端的活动连接的数目小于与RR客户端的连接的最大数目(例如,如由RR客户端请求路由所指示的)时,不同的目标RR可以将连接发起请求发送给始发RR客户端,以使不同的目标RR与始发RR客户端之间的连接被建立。
附加地或备选地,当不同的目标RR确定与始发RR客户端的活动连接的数目大于或等于与RR客户端的连接的最大数目时,不同的目标RR可以确定不将连接发起请求发送给始发RR客户端,并且从而可以防止在不同的目标RR与始发RR客户端之间的连接被建立。例如,如通过附图标记128所示,RR N可以确定与RR客户端1的活动连接的数目大于或等于与RR客户端1的连接的最大数目,并且可以确定防止RR N与RR客户端1之间的连接被建立。
如上文所指示,图1A-1D仅仅作为一个或多个示例被提供。其他示例可以与关于图1A-1D所描述的示例不同。
图2A-2C描绘本文中所描述的示例路由。如图2A中所示,示例RR通告路由200可以包括前缀,该前缀包括“路由区分符”字段(例如针对路由的唯一标识符)、“类型”字段(例如,其指示路由是RR通告路由)、“版本”字段(例如,其指示RR通告路由的版本)和/或“AFI”字段和“SAFI”字段(其指示发送RR通告路由的始发RR的地址族)。此外,RR通告路由可以包括(例如在RR通告路由的有效载荷中)“Nexthop”属性或“Multinexthop”属性(例如,其指示始发RR的IP地址)、“origin-AS”属性(例如,其指示与始发RR相关联的AS)、“Local-pref”属性(例如,其指示始发RR的一个或多个配置偏好)、“可选”属性(例如,其指示与始发RR相关联的唯一标识符)、“RT”属性(例如,其指示始发RR属于具体的群组,诸如RR群组)等。
如图2B中所示,示例RR客户端请求路由210可以包括前缀,该前缀包括“路由区分符”字段(例如针对路由的唯一标识符)、“类型”字段(例如,其指示路由是RR客户端请求路由)、“版本”字段(例如,其指示RR客户端请求路由的版本)和/或“AFI”字段和“SAFI”字段(其指示发送RR客户端请求路由的始发RR客户端的地址族)。此外,RR客户端请求路由可以包括(例如在RR客户端请求路由的有效载荷中)“Nexthop”属性或“Multinexthop”属性(例如,其指示始发RR客户端的IP地址)、“origin-AS”属性(例如,其指示与始发RR客户端相关联的AS)、“Config attr”属性(例如,其指示始发RR客户端的一个或多个配置偏好)、“可选”属性(例如,其指示与始发RR客户端相关联的唯一标识符)、“RT”属性(例如,其指示始发RR属于具体的群组,诸如RR客户端群组)等。
如图2C中所示,示例RR邻居通告路由220可以包括前缀,该前缀包括“路由区分符”字段(例如针对路由的唯一标识符)、“类型”字段(例如,其指示路由是RR邻居通告路由)、“版本”字段(例如,其指示RR邻居通告路由的版本)、“ver”字段(例如,其指示被连接到发送RR邻居通告路由的始发RR的RR客户端的地址的IP版本)、“客户端地址”字段(例如,其指示RR客户端的IP地址)、和/或“AFI”字段和“SAFI”字段(其指示始发RR的地址族)。此外,RR邻居通告路由可以包括(例如在RR邻居通告路由的有效载荷中)“Nexthop”属性或“Multinexthop”属性(例如,其指示始发RR的IP地址)、“MED”属性(例如,其指示用以从始发RR路由到RR客户端的成本)、“可选”属性(例如,其指示与始发RR相关联的唯一标识符)、“RT”属性(例如,其指示始发RR属于具体的群组,诸如RR群组、仅包括始发RR的群组等)等。
如上文所指示,图2A-2C仅仅作为一个或多个示例被提供。其他示例可以与关于图2A-2C所描述的示例不同。
图3是本文中所描述的系统和/或方法可以被实施的示例环境300的图。如图3所示,环境300可以包括自动发现RR 310、RR 320-1至RR 320-N(在下文被统称为“RR 320”,并且单独地被称为“RR320”)、RR客户端330-1至RR客户端330-M(在下文被统称为“RR客户端330”,并且单独地被称为“RR客户端330”)和网络340。环境300的设备可以经由有线连接、无线连接、或有线和无线连接的组合来互连。
自动发现RR 310包括能够处理和/或传送业务的一个或多个设备(例如一个或多个业务传送设备)。例如,自动发现RR 310可以包括防火墙、路由器、网关、交换机、集线器、网桥、反向代理、服务器(例如代理服务器)、安全设备、入侵检测设备、负载平衡器、或类似类型的设备。在一些实现中,自动发现RR 310可以经由链路、多个链路等分别被连接到RR320和/或RR客户端330。在一些实现中,自动发现RR 310可以将业务传输给RR 320和/或RR客户端330和/或从RR 320和/或RR客户端330接收业务,如本文中其他地方所描述。在一些实现中,自动发现RR 310可以是被实施在壳体(诸如机架(chassis))内的物理设备。在一些实现中,自动发现RR 310可以是由云计算环境或数据中心的一个或多个计算机设备所实施的虚拟设备。
RR 320包括能够处理和/或传送业务的一个或多个设备(例如一个或多个业务传送设备)。例如,RR 320可以包括防火墙、路由器、网关、交换机、集线器、网桥、反向代理、服务器(例如代理服务器)、安全设备、入侵检测设备、负载平衡器、或类似类型的设备。在一些实现中,RR 320可以被完全网合。在一些实现中,一个或多个RR 320可以用作针对包括一个或多个RR 320和一个或多个RR客户端330的集群的RR。在一些实现中,RR 320可以将业务传输给自动发现RR 310和/或RR客户端330和/或从自动发现RR 310和/或RR客户端330接收业务,如本文中其他地方所描述。在一些实现中,RR 320可以是被实施在壳体(诸如机架)内的物理设备。在一些实现中,RR320可以是由云计算环境或数据中心的一个或多个计算机设备所实施的虚拟设备。
RR客户端330包括能够处理和/或传送业务的一个或多个设备(例如一个或多个业务传送设备)。例如,RR客户端330可以包括防火墙、路由器、网关、交换机、集线器、网桥、反向代理、服务器(例如代理服务器)、安全设备、入侵检测设备、负载平衡器、或类似类型的设备。在一些实现中,一个或多个RR客户端330可以在包括一个或多个RR 320的集群中。在一些实现中,RR客户端330可以将业务传输给自动发现RR 310和/或RR 320和/或从自动发现RR 310和/或RR 320接收业务,如本文中其他地方所描述。在一些实现中,RR客户端330可以是被实施在壳体(诸如机架)内的物理设备。在一些实现中,RR客户端330可以是由云计算环境或数据中心的一个或多个计算机设备所实施的虚拟设备。
网络340包括一个或多个有线和/或无线网络。例如,网络340可以包括蜂窝网络(例如长期演进(LTE)网络、3G网络、4G网络、5G网络、新无线电(NR)网络、码分多址(CDMA)网络等)、公共陆地移动网络(PLMN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、电话网络(例如公共交换电话网络(PSTN))、以太网、VPN(例如VPLS、EVPN、VPWS、L2VPN、L3VPN等)、专用网络、自组织网络、内联网、因特网、基于光纤的网络、云计算网络等,和/或这些或其他类型的网络的组合。网络340可以采用路由协议,诸如BGP。
图3中所示的设备和网络的数目和布置作为一个或多个示例被提供。实际上,与图3中所示的相比,可能存在附加的设备、更少的设备和/或网络、不同的设备和/或网络、或不同地布置的设备和/或网络。此外,图3中所示的两个或更多个设备可以被实施在单个设备内,或图3中所示的单个设备可以被实施为多个分散式设备。附加地或备选地,环境300的设备的集合(例如一个或多个设备)可以执行被描述为被环境300的设备的另一集合执行的一个或多个功能。
图4A-4B是图3的一个或多个设备的示例组件的图。图4A是设备400的示例组件的图。设备400可以与自动发现RR 310、RR 320、RR客户端330等对应。在一些实现中,自动发现RR 310、RR 320、RR客户端330等可以包括一个或多个设备400和/或设备400的一个或多个组件。如图4A中所示,设备400可以包括总线405、处理器410、存储器415、存储组件420、输入组件425、输出组件430和通信接口435。
总线405包括准许在设备400的组件之中通信的组件。处理器410被实施在硬件、固件、或硬件和软件的组合中。处理器410采取中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、ASIC、或另一类型的处理组件的形式。在一些实现中,处理器410包括能够被编程以执行功能的一个或多个处理器。存储器415包括存储信息和/或指令以供处理器410使用的随机存取存储器(RAM)、只读存储器(ROM)、和/或另一类型的动态或静态存储设备(例如闪速存储器、磁存储器和/或光学存储器)。
存储组件420存储与设备400的操作和使用有关的信息和/或软件。例如,存储组件420可以包括硬盘(例如磁盘、光盘、磁光盘、和/或固态盘)、压缩盘(CD)、数字通用光盘(DVD)、软盘、盒式磁带(cartridge)、磁带、和/或另一类型的非瞬态计算机可读介质、以及对应的驱动。
输入组件425包括准许设备400诸如经由用户输入(例如触摸屏显示器、键盘、小键盘、鼠标、按钮、交换机、和/或麦克风)接收信息的组件。附加地或备选地,输入组件425可以包括用于感测信息的传感器(例如全球定位系统(GPS)组件、加速度计、陀螺仪、和/或致动器)。输出组件430包括提供来自设备400的输出信息的组件(例如显示器、扬声器、和/或一个或多个发光二极管(LED))。
通信接口435包括类收发器组件(例如收发器和/或单独的接收器和发射器),该类收发器组件使设备400能够诸如经由有线连接、无线连接、或有线和无线连接的组合与其他设备通信。通信接口435可以准许设备400从另一设备接收信息和/或向另一设备提供信息。例如,通信接口435可以包括以太网接口、光接口、同轴接口、红外接口、射频(RF)接口、通用串行总线(USB)接口、Wi-Fi接口、蜂窝网络接口等。
设备400可以执行本文中所描述的一个或多个过程。设备400可以基于处理器410执行由非瞬态计算机可读介质(诸如存储器415和/或存储组件420)所存储的软件指令来执行这些过程。计算机可读介质在本文中被定义为非瞬态存储器设备。存储器设备包括单个物理存储设备内的存储器空间或跨多个物理存储设备展开的存储空间。
软件指令可以经由通信接口435从另一计算机可读介质或另一设备被读入存储器415和/或存储组件420中。当被执行时,被存储在存储器415和/或存储组件420中的软件指令可以使处理器410执行本文中所描述的一个或多个过程。附加地或备选地,硬接线电路装置可以代替软件指令或与软件指令结合被使用以执行本文中所描述的一个或多个过程。因此,本文中所描述的实现不被限于硬件电路装置和软件的任何特定组合。
图4A中所示的组件的数目和布置作为示例被提供。实际上,与图4A中所示的相比,设备400可以包括附加的组件、更少的组件、不同的组件、或不同地布置的组件。附加地或备选地,设备400的组件的集合(例如一个或多个组件)可以执行被描述为由设备400的组件的另一集合所执行的一个或多个功能。
图4B是设备450的示例组件的图。设备450可以与自动发现RR310、RR 320、RR客户端330等对应。在一些实现中,自动发现RR 310、RR 320、RR客户端330等可以包括一个或多个设备450和/或设备450的一个或多个组件。如图4B中所示,设备450可以包括一个或多个输入组件455-1至455-B(B≥1)(在下文中被统称为输入组件455,并且单独地被称为输入组件455)、交换组件460、一个或多个输出组件465-1至465-C(C≥1)(在下文中被统称为输出组件465,并且单独地被称为输出组件465)、和控制器470。
输入组件455可以是用于物理链路的附接点,并且可以是用于传入业务(诸如分组(packet))的入口点。输入组件455可以诸如通过执行数据链路层封装或解封装来处理传入业务。在一些实现中,输入组件455可以发送和/或接收分组。在一些实现中,输入组件455可以包括输入线卡,该输入线卡包括一个或多个分组处理组件(例如,呈集成电路的形式),诸如一个或多个接口卡(IFC)、分组转发组件、线卡控制器组件、输入端口、处理器、存储器、和/或输入队列。在一些实现中,设备450可以包括一个或多个输入组件455。
交换组件460可以将输入组件455与输出组件465互连。在一些实现中,交换组件460可以经由一个或多个交叉杆(crossbar)、经由总线、和/或用共享存储器被实施。共享存储器可以充当临时缓冲区,以在分组被最终调度以用于向输出组件465递送之前,存储来自输入组件455的分组。在一些实现中,交换组件460可以使输入组件455、输出组件465和/或控制器470能够通信。
输出组件465可以存储分组并且可以调度分组以用于在输出物理链路上传输。输出组件465可以支持数据链路层封装或解封装、和/或很多较高级别的协议。在一些实现中,输出组件465可以发送分组和/或接收分组。在一些实现中,输出组件465可以包括输出线卡,该输出线卡包括一个或多个分组处理组件(例如,呈集成电路的形式),诸如一个或多个IFC、分组转发组件、线卡控制器组件、输出端口、处理器、存储器、和/或输出队列。在一些实现中,设备450可以包括一个或多个输出组件465。在一些实现中,输入组件455和输出组件465可以由相同的组件的集合来实施(例如,并且输入/输出组件可以是输入组件455和输出组件465的组合)。
控制器470包括呈例如CPU、GPU、APU、微处理器、微控制器、DSP、FPGA、ASIC、和/或另一类型的处理器的形式的处理器。处理器被实施在硬件、固件、或硬件和软件的组合中。在一些实现中,控制器470可以包括可以被编程以执行功能的一个或多个处理器。
在一些实现中,控制器470可以包括存储信息和/或指令以供控制器470使用的RAM、ROM、和/或另一类型的动态或静态存储设备(例如闪速存储器、磁存储器、光学存储器等)。
在一些实现中,控制器470可以与被连接到设备400的其他设备、网络、和/或系统通信,以互换关于网络拓扑的信息。控制器470可以基于网络拓扑信息来创建路由表,基于路由表创建转发表,并且向输入组件455和/或输出组件465转发所述转发表。输入组件455和/或输出组件465可以使用转发表来执行针对传入和/或传出分组的路由查找。
控制器470可以执行本文中所描述的一个或多个过程。控制器470可以响应于执行由非瞬态计算机可读介质所存储的软件指令来执行这些过程。
软件指令可以经由通信接口从另一计算机可读介质或者从另一设备被读入到与控制器470相关联的存储器和/或存储组件中。当被执行时,被存储在与控制器470相关联的存储器和/或存储组件中的软件指令可以使控制器470执行本文中所描述的一个或多个过程。附加地或备选地,硬接线电路装置可以代替软件指令或与软件指令结合被使用,以执行本文中所描述的一个或多个过程。因此,本文中所描述的实现不被限于硬件电路装置和软件的任何特定组合。
图4B中所示的组件的数目和布置作为示例被提供。实际上,与图4B中所示的相比,设备450可以包括附加的组件、更少的组件、不同的组件、或不同地布置的组件。附加地或备选地,设备450的组件的集合(例如一个或多个组件)可以执行被描述为被设备450的组件的另一集合执行的一个或多个功能。
图5是用于路由反射对等端点的自动发现的示例过程500的流程图。在一些实现中,图5的一个或多个过程框可以被自动发现RR(例如自动发现RR 310)执行。在一些实现中,图5的一个或多个过程框可以被另一设备或与自动发现RR分离或包括自动发现RR的一组设备(诸如另一自动发现RR等)执行。
如图5中所示,过程500可以包括从始发网络设备获得路由(框510)。例如,自动发现RR(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以从始发网络设备获得路由,如上文所描述。
如图5中进一步示出,过程500可以包括更新数据结构以包括路由中所包含的至少一些信息(框520)。例如,自动发现RR(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以更新数据结构以包括路由中所包含的至少一些信息,如上文所描述。
如图5中进一步示出,过程500可以包括基于数据结构标识多个目标网络设备,其中多个目标网络设备包括至少一个RR和至少一个RR客户端(框530)。例如,自动发现RR(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以基于数据结构标识多个目标网络设备,如上文所描述。在一些实现中,多个目标网络设备包括至少一个RR和至少一个RR客户端。
如图5中进一步示出,过程500可以包括向多个目标网络设备发送路由,以促进在始发网络设备与多个目标网络设备中的至少一个目标网络设备之间的连接的建立(框540)。例如,自动发现RR(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以向多个目标网络设备发送路由,以促进在始发网络设备与多个目标网络设备中的至少一个目标网络设备之间建立连接,如上文所描述。
过程500可以包括附加实现,诸如下文和/或结合本文中其他地方所描述的一个或多个其他过程所描述的任何单个实现或实现的任何组合。
在第一实现中,自动发现RR分别被连接到始发网络设备和多个目标网络设备中的每个目标网络设备。
在单独的或与第一实现结合的第二实现中,路由包括以下至少一项:标识路由的路由区分符的信息;标识路由的类型的信息;标识与始发网络设备相关联的地址族的信息;标识始发网络设备的信息;标识与始发网络设备相关联的网络的信息;标识始发网络设备的至少一个配置偏好的信息;或者标识与始发网络设备相关联的至少一个路由目标的信息。
在单独的或与第一和第二实现中的一个或多个结合的第三实现中,始发网络设备和至少一个目标网络设备分别是RR,并且路由是RR通告路由,其中向多个目标网络设备发送路由使至少一个目标网络设备:使与始发网络设备的连接被建立。
在单独的或与第一至第三实现中的一个或多个结合的第四实现中,始发网络设备和至少一个目标网络设备分别是RR,并且路由是RR通告路由,其中向多个目标网络设备发送路由使至少一个目标网络设备:使与始发网络设备的连接被建立,并且经由连接向始发网络设备发送关于被至少一个目标网络设备支持的至少一个地址族的信息。
在单独的或与第一至第四实现中的一个或多个结合的第五实现中,始发网络设备是RR,至少一个目标网络设备是RR客户端,并且路由是RR通告路由,其中向多个目标网络设备发送路由使至少一个目标网络设备:更新所述至少一个目标网络设备的一个或多个设置,以允许始发网络设备能够使与至少一个目标网络设备的连接被建立。
在单独的或与第一至第五实现中的一个或多个结合的第六实现中,始发网络设备是RR客户端,至少一个目标网络设备是RR,并且路由是RR客户端请求路由,其中向多个目标网络设备发送路由使至少一个目标网络设备:使与始发网络设备的连接被建立。
在单独的或与第一至第六实现中的一个或多个结合的第七实现中,始发网络设备是RR客户端,至少一个目标网络设备是RR,并且路由是RR客户端请求路由,其中向多个目标网络设备发送路由使至少一个目标网络设备:使与始发网络设备的连接被建立,并且基于使与始发网络设备的连接被建立,向多个目标网络设备中的至少一个其他目标网络设备发送RR邻居通告路由。
尽管图5示出了过程500的示例框,但是在一些实现中,与图5中所描绘的相比,过程500可以包括附加的框、更少的框、不同的框、或不同地布置的框。附加地或备选地,过程500的两个或更多个框可以被并行执行。
图6是用于路由反射对等端点的自动发现的示例过程600的流程图。在一些实现中,图6的一个或多个过程框可以由RR(例如RR 320)来执行。在一些实现中,图6的一个或多个过程框可以被另一设备或与RR分离或包括RR的一组设备(诸如另一RR)执行。
如图6中所示,过程600可以包括经由自动发现RR从始发网络设备接收路由(框610)。例如,RR(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以经由自动发现RR从始发网络设备接收路由,如上文所描述。
如图6中进一步示出,过程600可以包括:处理路由,以确定标识始发网络设备的信息和与始发网络设备有关的附加信息(框620)。例如,RR(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以处理路由,以确定标识始发网络设备的信息和与始发网络设备有关的附加信息,如上文所描述。
如图6中进一步示出,过程600可以包括:更新数据结构,以包括标识始发网络设备的信息和与始发网络设备有关的附加信息中的至少一些附加信息(框630)。例如,RR(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以更新数据结构,以包括标识始发网络设备的信息和与始发网络设备有关的附加信息中的至少一些附加信息,如上文所描述。
如图6中进一步示出,过程600可以包括:基于标识始发网络设备的信息而使RR与始发网络设备之间的连接被建立(框640)。例如,RR(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以基于标识始发网络设备的信息而使RR与始发网络设备之间的连接被建立,如上文所描述。
过程600可以包括附加实现,诸如下文和/或结合本文中其他地方所描述的一个或多个其他过程所描述的任何单个实现或实现的任何组合。
在第一实现中,始发网络设备是RR,并且路由是RR通告路由,并且当使与始发网络设备的连接被建立时,RR可以:基于标识始发网络设备的信息而确定始发网络设备的地址;基于始发网络设备的地址而向始发网络设备发送连接发起请求,以使RR与始发网络设备之间的连接被建立;以及经由连接向始发网络设备发送关于被RR支持的至少一个地址族的信息。
在单独的或与第一实现结合的第二实现中,始发网络设备是RR客户端,并且路由是RR客户端请求路由,并且当使与始发网络设备的连接被建立时,RR可以:基于与始发网络设备有关的附加信息,确定与始发网络设备相关联的地址族;确定与始发网络设备相关联的地址族与被RR支持的地址族匹配;以及基于确定与始发网络设备相关联的地址族与被RR支持的地址族匹配,向始发网络设备发送连接发起请求,以使RR与始发网络设备之间的连接被建立。
在单独的或与第一和第二实现中的一个或多个结合的第三实现中,始发网络设备是RR客户端,并且路由是RR客户端请求路由,并且当使与始发网络设备的连接被建立时,RR可以:基于与始发网络设备有关的附加信息,确定与始发网络设备相关联的地址族、和始发网络设备的连接的最大数目;确定与始发网络设备相关联的地址族与被RR支持的地址族匹配;基于数据结构,确定与始发网络设备的活动连接的数目小于与始发网络设备的连接的最大数目;以及基于确定与始发网络设备相关联的地址族与被RR支持的地址族匹配、以及确定与始发网络设备的活动连接的数目小于与始发网络设备的连接的最大数目,使RR与始发网络设备之间的连接被建立。
在单独的或与第一至第三实现中的一个或多个结合的第四实现中,始发网络设备是RR客户端,并且路由是RR客户端请求路由,并且当使与始发网络设备的连接被建立时,RR可以:基于与始发网络设备有关的附加信息,确定与始发网络设备相关联的地址族、和始发网络设备的物理位置;确定与始发网络设备相关联的地址族与被RR支持的地址族匹配;确定RR的物理位置在始发网络设备的物理位置的阈值距离内;以及基于确定与始发网络设备相关联的地址族与被RR支持的地址族匹配、以及确定RR的物理位置在始发网络设备的物理位置的阈值距离内,使RR与始发网络设备之间的连接被建立。
在单独的或与第一至第四实现中的一个或多个结合的第五实现中,始发网络设备是RR客户端,并且路由是RR客户端请求路由,并且RR还可以:生成RR邻居通告路由,该RR邻居通告路由指示RR已经使与始发网络设备的连接被建立;基于数据结构,确定至少一个其他RR,以及向至少一个其他RR发送RR邻居通告路由。
在单独的或与第一至第五实现中的一个或多个结合的第六实现中,始发网络设备是RR客户端,并且路由是RR客户端请求路由,并且当使与始发网络设备的连接被建立时,RR可以:基于与始发网络设备有关的附加信息而确定与始发网络设备相关联的地址族、和始发网络设备的连接的最大数目;确定与始发网络设备相关联的地址族与被RR支持的地址族匹配;从另一RR接收RR邻居通告路由,该RR邻居通告路由指示另一RR已经使与始发网络设备的连接被建立;基于数据结构和RR邻居通告路由,确定与始发网络设备的活动连接的数目小于与始发网络设备的连接的最大数目;以及基于确定与始发网络设备相关联的地址族与被RR支持的地址族匹配、以及确定与始发网络设备的活动连接的数目小于与始发网络设备的连接的最大数目,使RR与始发网络设备之间的连接被建立。
在单独的或与第一至第六实现中的一个或多个结合的第七实现中,RR邻居通告路由包括以下各者中的至少一个:标识RR邻居通告路由的路由区分符的信息;标识RR邻居通告路由的类型的信息;标识始发网络设备的地址的信息;标识与其他RR相关联的地址族的信息;标识其他RR的信息;标识其他RR的至少一个配置偏好的信息;或者标识与其他RR相关联的至少一个路由目标的信息。
尽管图6示出了过程600的示例框,但是在一些实现中,与图6中所描绘的相比,过程600可以包括附加的框、更少的框、不同的框、或不同地布置的框。附加地或备选地,过程600的两个或更多个框可以被并行执行。
图7是用于路由反射对等端点的自动发现的示例过程700的流程图。在一些实现中,图7的一个或多个过程框可以被RR客户端(例如RR客户端330)执行。在一些实现中,图7的一个或多个过程框可以被另一设备或与RR客户端分离或包括RR客户端的一组设备(诸如另一RR客户端)执行。
如图7中所示,过程700可以包括经由自动发现RR从始发RR接收路由反射器通告路由(框710)。例如,RR客户端(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以经由自动发现RR从始发RR接收路由反射器通告路由,如上文所描述。
如图7中进一步示出,过程700可以包括:处理RR通告路由,以确定标识始发RR的信息、标识与始发RR相关联的地址族的信息、和与始发RR有关的附加信息(框720)。例如,RR客户端(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以处理RR通告路由,以确定标识始发RR的信息、标识与始发RR相关联的地址族的信息、和与始发RR有关的附加信息,如上文所描述。
如图7中进一步示出,过程700可以包括:更新数据结构,以包括标识始发RR的信息、标识与始发RR相关联的地址族的信息、和与始发RR有关的附加信息中的至少一些附加信息(框730)。例如,RR客户端(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以更新数据结构,以包括标识始发RR的信息、标识与始发RR相关联的地址族的信息、和与始发RR有关的附加信息中的至少一些附加信息,如上文所描述。
如图7中进一步示出,过程700可以包括:确定与始发RR相关联的地址族是否与关联于RR客户端的地址族匹配(框740)。例如,RR客户端(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以确定与始发RR相关联的地址族是否与关联于RR客户端的地址族匹配,如上文所描述。
如图7中进一步示出,过程700可以包括:基于确定与始发RR相关联的地址族与关联于RR客户端的地址族匹配,更新RR客户端的一个或多个设置,以允许始发RR能够使与RR客户端的连接被建立(框750)。例如,RR客户端(例如,使用处理器410、存储器415、存储组件420、输入组件425、输出组件430、通信接口435、输入组件455、交换组件460、输出组件465、控制器470等)可以基于确定与始发RR相关联的地址族与关联于RR客户端的地址族匹配,更新RR客户端的一个或多个设置,以允许始发RR能够使与RR客户端的连接被建立,如上文所描述。
过程700可以包括附加实现,诸如下文和/或结合本文中其他地方所描述的一个或多个其他过程所描述的任何单个实现或实现的任何组合。
在第一实现中,RR客户端还可以从始发RR接收连接发起请求;向始发RR发送连接发起请求接受,以使始发RR与RR客户端之间的连接被建立;以及更新数据结构,以指示在始发RR与RR客户端之间存在活动连接。
在单独的或与第一实现结合的第二实现中,RR客户端还可以:向多个RR发送RR客户端请求路由,其中多个RR包括始发RR;基于发送RR客户端请求路由,从始发RR接收连接发起请求;在接收到连接发起请求之后基于数据结构,确定RR客户端的活动连接的数目是否满足阈值;基于确定RR客户端的活动连接的数目不满足阈值,向始发RR发送连接发起请求接受,以使始发RR与RR客户端之间的连接被建立;以及更新数据结构以指示在始发RR与RR客户端之间存在活动连接。
在单独的或与第一和第二实现中的一个或多个结合的第三实现中,RR客户端还可以:向多个RR发送RR客户端请求路由,其中多个RR包括始发RR和不同的RR;基于发送RR客户端请求路由,从不同的RR接收第一连接发起请求;在接收到第一连接发起请求之后基于数据结构,确定RR客户端的活动连接的数目不满足阈值;基于确定RR客户端的活动连接的数目不满足阈值,向不同的RR发送连接发起请求接受,以使不同的RR与RR客户端之间的连接被建立;更新数据结构,以指示在不同的RR与RR客户端之间存在活动连接;基于发送RR客户端请求路由,从始发RR接收第二连接发起请求;在接收到第二连接发起请求之后基于数据结构,确定RR客户端的活动连接的数目满足阈值;以及基于确定RR客户端的活动连接的数目满足阈值,向始发RR发送连接发起请求拒绝,以防止始发RR与RR客户端之间的连接被建立。
尽管图7示出了过程700的示例框,但是在一些实现中,与图7中所描绘的相比,过程700可以包括附加的框、更少的框、不同的框、或不同地布置的框。附加地或备选地,过程700的两个或更多个框可以被并行执行。
例1.一种方法,包括:
由自动发现路由反射器(自动发现RR)从始发网络设备获得路由;
由所述自动发现RR更新数据结构,以包括所述路由中所包含的至少一些信息;
由所述自动发现RR基于所述数据结构来标识多个目标网络设备;
其中所述多个目标网络设备包括至少一个路由反射器(RR)和至少一个路由反射器客户端(RR客户端);以及
由所述自动发现RR向所述多个目标网络设备发送所述路由,以促进在所述始发网络设备与所述多个目标网络设备中的至少一个目标网络设备之间的连接的建立。
例2.根据例1所述的方法,其中所述自动发现RR分别被连接到所述始发网络设备和所述多个目标网络设备中的每个目标网络设备。
例3.根据例1所述的方法,其中所述路由包括以下至少一项:
标识所述路由的路由区分符的信息;
标识所述路由的类型的信息;
标识与所述始发网络设备相关联的地址族的信息;
标识所述始发网络设备的信息;
标识与所述始发网络设备相关联的网络的信息;
标识所述始发网络设备的至少一个配置偏好的信息;或者
标识与所述始发网络设备相关联的至少一个路由目标的信息。
例4.根据例1所述的方法,其中所述始发网络设备和所述至少一个目标网络设备分别是RR,并且所述路由是RR通告路由,
其中向所述多个目标网络设备发送所述路由使所述至少一个目标网络设备:使与所述始发网络设备的连接被建立。
例5.根据例1所述的方法,其中所述始发网络设备和所述至少一个目标网络设备分别是RR,并且所述路由是RR通告路由,
其中向所述多个目标网络设备发送所述路由使所述至少一个目标网络设备:
使与所述始发网络设备的连接被建立;以及
经由所述连接向所述始发网络设备发送关于被所述至少一个目标网络设备支持的至少一个地址族的信息。
例6.根据例1所述的方法,其中所述始发网络设备是RR,所述至少一个目标网络设备是RR客户端,并且所述路由是RR通告路由,
其中向所述多个目标网络设备发送所述路由使所述至少一个目标网络设备:更新所述至少一个目标网络设备的一个或多个设置,以允许所述始发网络设备能够使与所述至少一个目标网络设备的连接被建立。
例7.根据例1所述的方法,其中所述始发网络设备是RR客户端,所述至少一个目标网络设备是RR,并且所述路由是RR客户端请求路由,
其中向所述多个目标网络设备发送所述路由使所述至少一个目标网络设备:使与所述始发网络设备的连接被建立。
例8.根据例1所述的方法,其中所述始发网络设备是RR客户端,所述至少一个目标网络设备是RR,并且所述路由是RR客户端请求路由,
其中向所述多个目标网络设备发送所述路由使所述至少一个目标网络设备:
使与所述始发网络设备的连接被建立;以及
基于使与所述始发网络设备的所述连接被建立,向所述多个目标网络设备中的至少一个其他目标网络设备发送RR邻居通告路由。
例9.一种路由反射器(RR),包括:
一个或多个存储器;以及
一个或多个处理器,用以:
经由自动发现路由反射器(自动发现RR)从始发网络设备接收路由;
处理所述路由,以确定标识所述始发网络设备的信息和与所述始发网络设备有关的附加信息;
更新数据结构,以包括标识所述始发网络设备的所述信息和与所述始发网络设备有关的所述附加信息中的至少一些附加信息;以及
基于标识所述始发网络设备的所述信息,使所述RR与所述始发网络设备之间的连接被建立。
例10.根据例9所述的RR,其中所述始发网络设备是RR,并且所述路由是RR通告路由,
其中所述一个或多个处理器在使与所述始发网络设备的所述连接被建立时,用以:
基于标识所述始发网络设备的所述信息,确定所述始发网络设备的地址;
基于所述始发网络设备的所述地址,向所述始发网络设备发送连接发起请求,以使所述RR与所述始发网络设备之间的所述连接被建立;以及
经由所述连接向所述始发网络设备发送关于被所述RR支持的至少一个地址族的信息。
例11.根据例9所述的RR,其中所述始发网络设备是路由反射器客户端(RR客户端),并且所述路由是RR客户端请求路由,
其中所述一个或多个处理器在使与所述始发网络设备的所述连接被建立时,用以:
基于与所述始发网络设备有关的所述附加信息,确定与所述始发网络设备相关联的地址族;
确定与所述始发网络设备相关联的所述地址族与被所述RR支持的地址族匹配;以及
基于确定与所述始发网络设备相关联的所述地址族与被所述RR支持的所述地址族匹配,向所述始发网络设备发送连接发起请求,以使所述RR与所述始发网络设备之间的所述连接被建立。
例12.根据例9所述的RR,其中所述始发网络设备是路由反射器客户端(RR客户端),并且所述路由是RR客户端请求路由,
其中所述一个或多个处理器在使与所述始发网络设备的所述连接被建立时,用以:
基于与所述始发网络设备有关的所述附加信息,确定与所述始发网络设备相关联的地址族、和所述始发网络设备的连接的最大数目;
确定与所述始发网络设备相关联的所述地址族与被所述RR支持的地址族匹配;
基于所述数据结构,确定与所述始发网络设备的活动连接的数目小于与所述始发网络设备的连接的所述最大数目;以及
基于确定与所述始发网络设备相关联的所述地址族与被所述RR支持的所述地址族匹配、以及确定与所述始发网络设备的活动连接的所述数目小于与所述始发网络设备的连接的所述最大数目,使所述RR与所述始发网络设备之间的所述连接被建立。
例13.根据例9所述的RR,其中所述始发网络设备是路由反射器客户端(RR客户端),并且所述路由是RR客户端请求路由,
其中所述一个或多个处理器在使与所述始发网络设备的所述连接被建立时,用以:
基于与所述始发网络设备有关的所述附加信息,确定与所述始发网络设备相关联的地址族、和所述始发网络设备的物理位置;
确定与所述始发网络设备相关联的所述地址族与被所述RR支持的地址族匹配;
确定所述RR的物理位置在所述始发网络设备的物理位置的阈值距离内;以及
基于确定与所述始发网络设备相关联的所述地址族与被所述RR支持的所述地址族匹配、以及确定所述RR的所述物理位置在所述始发网络设备的所述物理位置的所述阈值距离内,使所述RR与所述始发网络设备之间的所述连接被建立。
例14.根据例9所述的RR,其中所述始发网络设备是路由反射器客户端(RR客户端),并且所述路由是RR客户端请求路由,
其中所述一个或多个处理器还用以:
生成RR邻居通告路由,所述RR邻居通告路由指示所述RR已经使与所述始发网络设备的连接被建立;
基于所述数据结构,确定至少一个其他RR;以及
向所述至少一个其他RR发送所述RR邻居通告路由。
例15.根据例9所述的RR,其中所述始发网络设备是路由反射器客户端(RR客户端),并且所述路由是RR客户端请求路由,
其中所述一个或多个处理器在使与所述始发网络设备的所述连接被建立时,用以:
基于与所述始发网络设备有关的所述附加信息,确定与所述始发网络设备相关联的地址族、和所述始发网络设备的连接的最大数目;
确定与所述始发网络设备相关联的所述地址族与被所述RR支持的地址族匹配;
从另一RR接收RR邻居通告路由,所述RR邻居通告路由指示所述另一RR已经使与所述始发网络设备的连接被建立;
基于所述数据结构和所述RR邻居通告路由,确定与所述始发网络设备的活动连接的数目小于与所述始发网络设备的连接的所述最大数目;以及
基于确定与所述始发网络设备相关联的所述地址族与被所述RR支持的所述地址族匹配、以及确定与所述始发网络设备的活动连接的所述数目小于与所述始发网络设备的连接的所述最大数目,使所述RR与所述始发网络设备之间的所述连接被建立。
例16.根据例15所述的RR,其中所述RR邻居通告路由包括以下至少一项:
标识所述RR邻居通告路由的路由区分符的信息;
标识所述RR邻居通告路由的类型的信息;
标识所述始发网络设备的地址的信息;
标识与所述其他RR相关联的地址族的信息;
标识所述其他RR的信息;
标识所述其他RR的至少一个配置偏好的信息;或者
标识与所述其他RR相关联的至少一个路由目标的信息。
例17.一种存储指令的非瞬态计算机可读介质,所述指令包括:
一个或多个指令,所述一个或多个指令在被路由反射器客户端(RR客户端)的一个或多个处理器执行时,使所述一个或多个处理器:
经由自动发现路由反射器(自动发现RR)从始发路由反射器(RR)接收路由反射器通告路由;
处理所述RR通告路由,以确定标识所述始发RR的信息、标识与所述始发RR相关联的地址族的信息、和与所述始发RR有关的附加信息;
更新数据结构,以包括标识所述始发RR的所述信息、标识与所述始发RR相关联的所述地址族的所述信息、和与所述始发RR有关的所述附加信息中的至少一些附加信息;
确定与所述始发RR相关联的所述地址族是否与关联于所述RR客户端的地址族匹配;以及
基于确定与所述始发RR相关联的所述地址族与关联于所述RR客户端的所述地址族匹配,更新所述RR客户端的一个或多个设置,以允许所述始发RR能够使与所述RR客户端的连接被建立。
例18.根据例17所述的非瞬态计算机可读介质,其中所述一个或多个指令在被所述一个或多个处理器执行时,还使所述一个或多个处理器:
从所述始发RR接收连接发起请求;
向所述始发RR发送连接发起请求接受,以使所述始发RR与所述RR客户端之间的连接被建立;以及
更新所述数据结构,以指示在所述始发RR与所述RR客户端之间存在活动连接。
例19.根据例17所述的非瞬态计算机可读介质,其中所述一个或多个指令在被所述一个或多个处理器执行时,还使所述一个或多个处理器:
向多个RR发送RR客户端请求路由,
其中所述多个RR包括所述始发RR;
基于发送所述RR客户端请求路由,从所述始发RR接收连接发起请求;
在接收到所述连接发起请求之后基于所述数据结构,确定所述RR客户端的活动连接的数目是否满足阈值;
基于确定所述RR客户端的活动连接的所述数目不满足所述阈值,向所述始发RR发送连接发起请求接受,以使所述始发RR与所述RR客户端之间的连接被建立;以及
更新所述数据结构,以指示在所述始发RR与所述RR客户端之间存在活动连接。
例20.根据例17所述的非瞬态计算机可读介质,其中所述一个或多个指令在被所述一个或多个处理器执行时,还使所述一个或多个处理器:
向多个RR发送RR客户端请求路由,
其中所述多个RR包括所述始发RR和不同的RR;
基于发送所述RR客户端请求路由,从所述不同的RR接收第一连接发起请求;
在接收到所述第一连接发起请求之后基于所述数据结构,确定所述RR客户端的活动连接的数目不满足阈值;
基于确定所述RR客户端的活动连接的所述数目不满足所述阈值,向所述不同的RR发送连接发起请求接受,以使所述不同的RR与所述RR客户端之间的连接被建立;
更新所述数据结构,以指示在所述不同的RR与所述RR客户端之间存在活动连接;
基于发送所述RR客户端请求路由,从所述始发RR接收第二连接发起请求;
在接收到所述第二连接发起请求之后基于所述数据结构,确定所述RR客户端的活动连接的所述数目满足所述阈值;以及
基于确定所述RR客户端的活动连接的所述数目满足所述阈值,向所述始发RR发送连接发起请求拒绝,以防止所述始发RR与所述RR客户端之间的连接被建立。
前述公开内容提供了说明和描述,但并不旨在穷举或将实现限制为所公开的精确形式。可以根据上文公开内容进行修改和变型,或可以从实现的实践中获取修改和变型。
如本文中所使用,术语业务或内容可以包括分组的集合。分组可以指用于传达信息的通信结构,诸如协议数据单元(PDU)、网络分组、数据报、段、消息、块、单元(cell)、帧、子帧、槽(slot)、符号、上文中的任一个的一部分和/或能够经由网络被传输的另一类型的格式化或未格式化数据单元。
如本文中所使用,术语“组件”旨在被广义地解释为硬件、固件和/或硬件和软件的组合。
如本文中所使用,取决于上下文,满足阈值可以指大于阈值、多于阈值、高于阈值、大于或等于阈值、小于阈值、少于阈值、低于阈值、小于或等于阈值、等于阈值等的值。
将显而易见的是,本文中所描述的系统和/或方法可以以硬件、固件或硬件和软件的组合的不同形式被实施。被用于实施这些系统和/或方法的实际的专用控制硬件或软件代码不限制实现。因此,本文中在不参考特定软件代码的情况下描述系统和/或方法的操作和行为——应当理解,软件和硬件可以被设计成基于本文中的描述来实施系统和/或方法。
即使在权利要求书中叙述了特征的具体组合和/或在说明书中公开了特征的具体组合,这些组合也不旨在限制各种实现的公开内容。实际上,这些特征中的许多特征可以以权利要求书中未具体叙述和/或在说明书中未公开的方式被组合。尽管下文所列出的每个从属权利要求可能仅直接取决于一个权利要求,但是各种实现的公开内容包括与权利要求集合中的每个其他权利要求结合的每个从属权利要求。
除非明确地如此描述,否则本文中所使用的元件、动作或指令均不应被解释为关键或必要的。此外,如本文中所使用,冠词“一”和“一个”旨在包括一个或多个项,并且可以与“一个或多个”可互换地被使用。此外,如本文中所使用,冠词“该”旨在包括与冠词“该”结合引用的一个或多个项,并且可以与“该一个或多个”可互换地被使用。此外,如本文中所使用,术语“集合”旨在包括一个或多个项(例如相关项、不相关项、相关和不相关项的组合等),并且可以与“一个或多个”可互换地被使用。在仅旨在一个项的情况下,短语“仅一个”或类似语言被使用。此外,如本文中所使用,术语“具有”旨在是开放式术语。此外,除非另有明确说明,否则短语“基于”旨在意味着“至少部分地基于”。此外,如本文中所使用,除非另有明确说明(例如,在结合“任一个”或“仅以下各者中的一个”使用的情况下),术语“或”在串联使用时旨在是包括性的,并且可以与“和/或”可互换地被使用。
Claims (20)
1.一种电子设备,包括:
一个或多个存储器;以及
一个或多个处理器,用以:
从第一网络设备获得路由;
更新数据结构,以包括所述路由中所包含的至少一些信息;
基于所述数据结构来标识多个第二网络设备,
其中所述多个第二网络设备包括至少一个路由反射器和至少一个路由反射器客户端,并且
其中所述路由反射器和所述路由反射器客户端是不同于所述设备的设备;以及
向所述多个第二网络设备发送所述路由,以在所述第一网络设备与所述多个第二网络设备中的至少一个第二网络设备之间建立连接。
2.根据权利要求1所述的设备,其中所述设备是与所述第一网络设备相关联的自动发现路由反射器。
3.根据权利要求1所述的设备,其中所述第二网络设备是路由反射器,其中所述路由是路由反射器通告路由。
4.根据权利要求1所述的设备,其中所述第一网络设备是路由反射器,所述至少一个第二网络设备是路由反射器客户端,并且所述路由是路由反射器通告路由,
其中与所述至少一个第二网络设备相关联的一个或多个设置基于向所述多个第二网络设备发送所述路由而被更新,并且
其中所述连接基于经更新的所述一个或多个设置而被建立。
5.根据权利要求1所述的设备,其中所述第一网络设备是路由反射器客户端,并且所述至少一个第二网络设备是路由反射器,并且所述路由是路由反射器客户端请求路由,并且
其中所述连接基于向所述多个第二网络设备发送所述路由而被建立。
6.根据权利要求1所述的设备,其中所述路由包括以下至少一项:
标识所述路由的路由区分符的信息;
标识所述路由的类型的信息;
标识与所述第一网络设备相关联的地址族的信息;
标识所述第一网络设备的信息;
标识与所述第一网络设备相关联的网络的信息;
标识所述第一网络设备的至少一个配置偏好的信息;或者
标识与所述第一网络设备相关联的至少一个路由目标的信息。
7.根据权利要求1所述的设备,其中所述第一网络设备和所述至少一个第二网络设备分别是路由反射器,并且所述路由是路由反射器通告路由,并且
其中与被所述至少一个第二网络设备支持的至少一个地址族相关联的信息经由所述连接而被发送。
8.一种路由的方法,包括:
由路由反射器经由自动发现路由反射器从第一网络设备接收路由,
其中所述自动发现路由反射器不同于所述路由反射器;
由所述路由反射器处理所述路由,以确定标识所述第一网络设备的信息和与所述第一网络设备有关的附加信息;
由所述路由反射器更新数据结构,以包括标识所述第一网络设备的所述信息和所述附加信息中的至少一些附加信息;以及
由所述路由反射器基于标识所述第一网络设备的所述信息,使所述路由反射器与所述第一网络设备之间的连接被建立。
9.根据权利要求8所述的方法,其中所述路由反射器是第一路由反射器,
其中所述第一网络设备是第二路由反射器,并且所述路由是路由反射器通告路由,
其中使所述连接被建立包括:
基于标识所述第一网络设备的所述信息,确定所述第一网络设备的地址;
基于所述第一网络设备的所述地址,发送关联于建立与所述第一路由反射器的所述连接的请求;以及
经由所述连接向所述第一网络设备发送与被所述第一路由反射器支持的至少一个地址族相关联的信息。
10.根据权利要求8所述的方法,其中所述第一网络设备是路由反射器客户端,并且所述路由是路由反射器客户端请求路由,并且
其中使所述连接被建立包括:
基于所述附加信息,确定与所述第一网络设备相关联的第一地址族;
确定所述第一地址族与被所述路由反射器支持的第二地址族匹配;以及
基于确定所述第一地址族与所述第二地址族匹配,向所述第一网络设备发送连接发起请求,以使所述连接被建立。
11.根据权利要求8所述的方法,还包括:
基于所述数据结构,确定与所述第一网络设备相关联的活动连接的数目小于与所述第一网络设备的连接的最大数目;以及
基于确定与所述第一网络设备的活动连接的所述数目小于与所述第一网络设备的连接的最大数目,使所述连接被建立。
12.根据权利要求8所述的方法,还包括:
确定所述路由反射器的第一位置在所述第一网络设备的第二位置的阈值距离内;以及
基于确定所述第一位置在所述第二位置的所述阈值距离内,使所述连接被建立。
13.根据权利要求8所述的方法,还包括:
生成路由反射器邻居通告路由,所述路由反射器邻居通告路由指示所述路由反射器已经使所述连接被建立;
基于所述数据结构,确定至少一个其他路由反射器;以及
向所述至少一个其他路由反射器发送所述路由反射器邻居通告路由。
14.根据权利要求8所述的方法,还包括:
从另一路由反射器接收路由反射器邻居通告路由,所述路由反射器邻居通告路由指示所述另一路由反射器已经使与所述第一网络设备的另一连接被建立;
基于所述数据结构和所述路由反射器邻居通告路由,确定与所述第一网络设备相关联的活动连接的数目小于与所述第一网络设备的连接的最大数目;以及
基于确定与所述第一网络设备相关联的活动连接的所述数目小于与所述第一网络设备的连接的所述最大数目,使所述路由反射器与所述第一网络设备之间的所述连接被建立。
15.一种存储指令的非瞬态计算机可读介质,所述指令包括:
一个或多个指令,所述一个或多个指令在被设备的一个或多个处理器执行时,使所述一个或多个处理器:
从第一网络设备获得路由;
更新数据结构,以包括所述路由中所包含的至少一些信息;
基于所述数据结构来标识多个第二网络设备,
其中所述多个第二网络设备包括至少一个路由反射器和至少一个路由反射器客户端,并且
其中所述路由反射器和所述路由反射器客户端是不同于所述设备的设备;以及
向所述多个第二网络设备发送所述路由,以在所述第一网络设备与所述多个第二网络设备中的至少一个第二网络设备之间建立连接。
16.根据权利要求15所述的非瞬态计算机可读介质,其中所述设备是与所述第一网络设备相关联的自动发现路由反射器。
17.根据权利要求15所述的非瞬态计算机可读介质,其中所述第二网络设备是路由反射器,其中所述路由是路由反射器通告路由。
18.根据权利要求15所述的非瞬态计算机可读介质,其中所述第一网络设备是路由反射器,所述至少一个第二网络设备是路由反射器客户端,并且所述路由是路由反射器通告路由,
其中与所述至少一个第二网络设备相关联的一个或多个设置基于向所述多个第二网络设备发送所述路由而被更新,并且
其中所述连接基于经更新的所述一个或多个设置而被建立。
19.根据权利要求15所述的非瞬态计算机可读介质,其中所述第一网络设备是路由反射器客户端,并且所述至少一个第二网络设备是路由反射器,并且所述路由是路由反射器客户端请求路由,并且
其中所述连接基于向所述多个第二网络设备发送所述路由而被建立。
20.根据权利要求15所述的非瞬态计算机可读介质,其中所述第一网络设备和所述至少一个第二网络设备分别是路由反射器,并且所述路由是路由反射器通告路由,并且
其中与被所述至少一个第二网络设备支持的至少一个地址族相关联的信息经由所述连接而被发送。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/704,670 US11405308B2 (en) | 2019-12-05 | 2019-12-05 | Automatic discovery of route reflection peering end-points |
US16/704,670 | 2019-12-05 | ||
CN202011358757.XA CN112929268B (zh) | 2019-12-05 | 2020-11-27 | 路由反射对等端点的自动发现 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011358757.XA Division CN112929268B (zh) | 2019-12-05 | 2020-11-27 | 路由反射对等端点的自动发现 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116489068A true CN116489068A (zh) | 2023-07-25 |
Family
ID=73646139
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011358757.XA Active CN112929268B (zh) | 2019-12-05 | 2020-11-27 | 路由反射对等端点的自动发现 |
CN202211393947.4A Pending CN116489068A (zh) | 2019-12-05 | 2020-11-27 | 路由反射对等端点的自动发现 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011358757.XA Active CN112929268B (zh) | 2019-12-05 | 2020-11-27 | 路由反射对等端点的自动发现 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11405308B2 (zh) |
EP (1) | EP3832962A1 (zh) |
CN (2) | CN112929268B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11405308B2 (en) | 2019-12-05 | 2022-08-02 | Juniper Networks, Inc. | Automatic discovery of route reflection peering end-points |
US11329880B2 (en) * | 2020-01-09 | 2022-05-10 | Dell Products L.P. | Automatic route reflector configuration system |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7702765B1 (en) * | 2004-03-01 | 2010-04-20 | Cisco Technology, Inc. | Techniques for automatically creating an iBGP mesh |
US7675912B1 (en) * | 2005-07-05 | 2010-03-09 | Cisco Technology, Inc. | Method and apparatus for border gateway protocol (BGP) auto discovery |
US20070097974A1 (en) * | 2005-10-28 | 2007-05-03 | Ward David D | Distributed border gateway protocol (BGP) route reflector system |
EP2104896B1 (en) | 2007-01-17 | 2013-03-06 | Nortel Networks Limited | Border gateway protocol procedures for mpls and layer-2 vpn using ethernet-based tunnels |
US7751405B1 (en) | 2007-09-26 | 2010-07-06 | Juniper Networks, Inc. | Automatic configuration of label switched path tunnels using BGP attributes |
US9264971B2 (en) * | 2013-10-17 | 2016-02-16 | Telefonaktiebolaget L M Ericsson (Publ) | VPNv4 route control for LTE X2 son using unique route targets |
US10097449B2 (en) * | 2015-02-20 | 2018-10-09 | Cisco Technology, Inc. | Optimized border gateway protocol best path selection for optimal route reflection |
US10015073B2 (en) | 2015-02-20 | 2018-07-03 | Cisco Technology, Inc. | Automatic optimal route reflector root address assignment to route reflector clients and fast failover in a network environment |
US10129134B2 (en) * | 2016-02-29 | 2018-11-13 | Level 3 Communications, Llc | System and method for adding routing paths in a network |
US10142223B2 (en) | 2016-09-28 | 2018-11-27 | Juniper Networks, Inc. | Symmetric intersubnet traffic load balancing in multihomed networks |
CN106878166B (zh) * | 2017-01-22 | 2020-04-03 | 新华三技术有限公司 | 路由通告方法及装置 |
US10623369B2 (en) * | 2017-09-13 | 2020-04-14 | Charter Communications Operating, Llc | Device and method for discovery and announcement of secondary end-point reachability information |
US11405308B2 (en) * | 2019-12-05 | 2022-08-02 | Juniper Networks, Inc. | Automatic discovery of route reflection peering end-points |
-
2019
- 2019-12-05 US US16/704,670 patent/US11405308B2/en active Active
-
2020
- 2020-11-27 CN CN202011358757.XA patent/CN112929268B/zh active Active
- 2020-11-27 CN CN202211393947.4A patent/CN116489068A/zh active Pending
- 2020-11-30 EP EP20210565.6A patent/EP3832962A1/en active Pending
-
2022
- 2022-06-22 US US17/808,126 patent/US11811649B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN112929268B (zh) | 2022-12-02 |
US11811649B2 (en) | 2023-11-07 |
US20220321456A1 (en) | 2022-10-06 |
US11405308B2 (en) | 2022-08-02 |
US20210176165A1 (en) | 2021-06-10 |
CN112929268A (zh) | 2021-06-08 |
EP3832962A1 (en) | 2021-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106936717B (zh) | 针对网络的网络设备的媒体访问控制地址和互联网协议地址绑定代理通告 | |
CN111935007B (zh) | 用于网络的压缩路由报头信息 | |
CN107317751B (zh) | 用于提供路由的设备和方法 | |
US11902153B1 (en) | Compressed routing header | |
US9197721B2 (en) | Learning a MAC address | |
US9742586B2 (en) | Intelligent host route distribution for low latency forwarding and ubiquitous virtual machine mobility in interconnected data centers | |
US11811649B2 (en) | Automatic discovery of route reflection peering end-points | |
SG181695A1 (en) | Distributed routing architecture | |
US10291532B1 (en) | Enabling interconnection between ethernet virtual private networks (EVPNs) and provider backbone bridging EVPNs (PBB-EVPNs) | |
CN110278155B (zh) | 用于具有多归属和局部偏置的辅助复制的方法和设备 | |
CN114465776B (zh) | 一种泛洪攻击防御方法及相关装置 | |
CN107872389B (zh) | 用于业务负载平衡的方法、设备及计算机可读存储介质 | |
CN110300057B (zh) | 一种用于代理通告的方法、计算机可读介质和提供商边缘设备 | |
US11757747B2 (en) | Preventing traffic outages during address resolution protocol (ARP) storms | |
US10917378B1 (en) | Facilitating communication between network devices of a virtual router redundancy protocol (VRRP) group | |
SE545400C2 (en) | Methods, System and Apparatuses for Routing Data Packets in a Network Topology | |
US11777847B1 (en) | Point-to-multipoint transport chain | |
US20230336467A1 (en) | Standby access gateway function signaling for a dynamic host configuration protocol | |
US11252074B2 (en) | Detection of multihoming misconfiguration | |
CN117376241A (zh) | 具有路由区分符的比特索引显式复制(bier)通告 |
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 |