CN112787925B - 拥塞信息收集方法、确定最优路径方法、网络交换机 - Google Patents
拥塞信息收集方法、确定最优路径方法、网络交换机 Download PDFInfo
- Publication number
- CN112787925B CN112787925B CN202011083906.6A CN202011083906A CN112787925B CN 112787925 B CN112787925 B CN 112787925B CN 202011083906 A CN202011083906 A CN 202011083906A CN 112787925 B CN112787925 B CN 112787925B
- Authority
- CN
- China
- Prior art keywords
- leaf switch
- port
- switch
- network
- congestion information
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 124
- 230000015654 memory Effects 0.000 claims description 14
- 238000004891 communication Methods 0.000 abstract description 6
- 238000004364 calculation method Methods 0.000 description 50
- 230000006870 function Effects 0.000 description 17
- 239000010410 layer Substances 0.000 description 11
- 238000001514 detection method Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000006855 networking Effects 0.000 description 4
- 235000008694 Humulus lupulus Nutrition 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 239000002355 dual-layer Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Images
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/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开实施例提供脊叶网络中收集拥塞信息的方法、确定最优路径的方法、网络交换机和计算机可读存储介质,属于通信技术领域。收集拥塞信息的方法,包括:确定网络侧端口;获取所述网络侧端口相关的拥塞信息;根据配置策略确定第一leaf交换机的路径端口;根据所述路径端口将所述拥塞信息插入到原始报文中,得到中间报文;将所述中间报文发出。本实施例提供的技术方案中,可以收集路径拥塞信息,并把拥塞信息插入到原始报文中,第二leaf交换机可以解析出拥塞信息,并跟就拥塞信息计算出最优路径,leaf交换机可以按照最优路径转发,以提升整个网络的吞吐率。
Description
技术领域
本发明涉及通信技术领域,尤其涉及脊叶网络中收集拥塞信息的方法、确定最优路径的方法、网络交换机和计算机可读存储介质。
背景技术
数据中心采用fat-tree组网(胖树拓扑结构组网),服务器之间通讯存在大量相等开销的路径。采用多路径负载均衡技术,能够实现不同路径流量的负载均衡,大幅提升网络的吞吐量和高可用性。常用方案是等价路由(Equal-CostMultipathRouting,ECMP)方案。ECMP 是逐跳的基于流的负载均衡策略,当路由器发现同一目的地址出现多个等价路径时,会更新路由表,为此目的地址添加多条规则,对应多个下一跳。在转发流量时可同时利用上述等价路径转发数据。然而,ECMP没有拥塞探测的机制,对于已经产生拥塞的路径来说,很可能加剧路径的拥塞。
随着软件定义技术的兴起,出现了利用SDN(Software Defined Network,软件定义网络)控制器进行拥塞探测的方案。该方案原理是:SDN控制器统一收集所有交换机互联链路的拥塞状态,结合拥塞状态实时计算TOR(Top of Rank)到TOR的优化路径。如果优化路径发生变化,SDN控制器把最新的优化路径对应的转发表信息下发给相关交换机,交换机更新本地转发表项。交换机基于流实现流量按照优化后的路径进行转发。该方案的不足之处在于: SDN控制器需要收集全网路径的拥塞信息,计算量巨大,整个网络更新优化路径的时间过长。
目前在数据中心又提出了利用组播技术进行拥塞探测的方案。该方案中,汇聚交换机定时发起拥塞探测报文,并向core节点交换机进行组播,core节点交换机收到该拥塞探测报文后,一方面添加自身端口的拥塞信息,并把该拥塞探测报文再向其他汇聚节点交换机组播,最终所有TOR交换机获取到所有全网的拥塞信息。TOR交换机实施计算、更新到其他TOR交换机的优化路径,最终基于流实现流量按照优化路径进行转发。该方案中,交换机需要定时发出拥塞探测报文,这部分拥塞探测报文不仅占用了数据中心内的网络带宽,而且增加了转发设备的计算量。
发明内容
本公开实施例的主要目的在于提出一种脊叶网络中收集拥塞信息的方法、确定最优路径的方法、网络交换机和计算机可读存储介质,以提升网络的吞吐率。
为实现上述目的,本公开实施例的第一方面提出了一种脊叶网络中收集拥塞信息的方法,包括:
确定网络侧端口;
获取所述网络侧端口相关的拥塞信息;
根据配置策略确定第一leaf交换机的路径端口;
根据所述路径端口将所述拥塞信息插入到原始报文中,得到中间报文;
将所述中间报文发出。
为实现上述目的,本公开实施例的第二方面提出了一种脊叶网络中确定最优路径的方法,包括:
通过spine交换机接收由第一leaf交换机发出的中间报文;
确定所述中间报文中存在拥塞信息;
从所述中间报文中解析出所述拥塞信息;
根据所述拥塞信息计算出最小拥塞路径,将所述最小拥塞路径确定为最优路径。
为实现上述目的,本公开实施例的第三方面提出了一种脊叶网络中收集拥塞信息的方法,包括:
从网络侧端口获取第一leaf交换机发出的原始报文;
获取所述网络侧端口相关的拥塞信息;
确定所述第一leaf交换机的路径端口;
根据所述路径端口将所述拥塞信息插入到原始报文中,得到中间报文;
将所述中间报文发送给第二leaf交换机。
为实现上述目的,本公开实施例的第四方面提出了一种脊叶网络的网络交换机,包括:
至少一个存储器;
至少一个处理器;
至少一个程序;
所述程序被存储在存储器中,处理器执行所述至少一个程序以实现:
如上述第一方面所述的方法;
或者,
如上述第二方面所述的方法。
为实现上述目的,本公开实施例的第五方面提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行:
如上述第一方面所述的方法;
或者,
如上述第二方面所述的方法;
或者,
如上述第三方面所述的方法。
本公开实施例提出的脊叶网络中收集拥塞信息的方法、确定最优路径的方法、网络交换机和计算机可读存储介质,通过收集拥塞信息的方法,包括:确定网络侧端口;获取所述网络侧端口相关的拥塞信息;根据配置策略确定第一leaf交换机的路径端口;根据所述路径端口将所述拥塞信息插入到原始报文中,得到中间报文;将所述中间报文发出。本实施例提供的技术方案中,可以收集路径拥塞信息,并把拥塞信息插入到原始报文中,第二leaf交换机可以解析出拥塞信息,并跟就拥塞信息计算出最优路径,leaf交换机可以按照最优路径转发,以提升整个网络的吞吐率。
附图说明
图1是本公开实施例提供的用于负载均衡的最优路径确定方法的一应用场景示意图。
图2是本公开实施例提供的用于负载均衡的最优路径确定方法的另一应用场景示意图。
图3是本公开实施例提供的用于负载均衡的最优路径确定方法的又一应用场景示意图
图4是本公开实施例提供的用于负载均衡的最优路径确定方法的流程图。
图5是本公开第一实施例提供的用于负载均衡的最优路径确定方法的一应用场景示意图。
图6是本公开第二实施例提供的用于负载均衡的最优路径确定方法的流程图。
图7是本公开第二实施例提供的用于负载均衡的最优路径确定方法的另一应用场景示意图。
图8是本公开第三实施例提供的用于负载均衡的最优路径确定方法的第二应用场景示意图的部分流程图。
图9是本公开第四实施例提供的用于负载均衡的最优路径确定方法的第三应用场景示意图的流程图。
图10是本公开第五实施例提供的用于负载均衡的最优路径确定方法的第四应用场景示意图的流程图。
图11是本公开第五实施例提供的用于负载均衡的最优路径确定方法的的第五应用场景示意图的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
首先,对本申请中涉及的若干名词进行解析:
等价路由(Equal-CostMultipathRouting,ECMP):是逐跳的基于流的负载均衡策略,当路由器发现同一目的地址出现多个等价路径时,会更新路由表,为此目的地址添加多条规则,对应多个下一跳;在转发流量时可同时利用等价路径转发数据。
fat-tree组网:又叫胖树拓扑结构组网。
spine交换机:又叫脊交换机,本申请中是指接入leaf交换机。
leaf交换机:又叫叶交换机,本申请中是指接入服务器的交换机。
spine-leaf网络结构:又叫脊叶网络结构或者脊叶拓扑网络结构,是包括leaf交换机(连接设备或服务器)和spine节点(连接交换机)的网络结构,是数据中心的网络拓扑的重要部分。
上行链路:本公开实施例是指从leaf交换机到spine交换机的一条链路。
下行链路:本公开实施例是指从spine交换机到leaf交换机的一条链路。
链路层发现协议(Link Layer Discovery Protocol,LLDP):是一种数据链路层协议。
本公开实施例的应用场景,是数据中心网络。在数据中心网络,多路径负载均衡技术是一种实现高吞吐量、低延迟和高可用的技术。而用于实现多路径负载均衡技术的常用方案是 ECMP方案。ECMP是逐跳的基于流的负载均衡策略,当路由器发现同一目的地址出现多个等价路径时,会更新路由表,为此目的地址添加多条规则,对应多个下一跳。然而,ECMP没有拥塞探测的机制,对于已经产生拥塞的路径来说,很可能加剧路径的拥塞。基于此,本公开实施例提出一种应用于两层spine-leaf网络结构的用于脊叶网络中收集拥塞信息的方法、确定最优路径的方法、网络交换机和计算机可读存储介质,用于实现流量按照优化路径转发、以提高整个网络的吞吐率。具体通过如下实施例进行说明,首先描述本公开实施例中的用于负载均衡的最优路径确定方法。
图1是本公开实施例的应用场景示意图,本公开实施例的脊叶网络中收集拥塞信息的方法和最优路径确定方法应用于脊叶通信网络(spine-leaf网络)中,spine-leaf网络至少包括:第一leaf交换机101、第二leaf交换机102、spine交换机。图1所示意的实施例中,spine-leaf网络是双层网络,包括脊层和叶层,脊层包括了spine交换机,叶层包括了leaf交换机,每个leaf交换机连接到相应的一个spine交换机,同一个leaf交换机可以分别连接到多个不同的spine交换机,同一个spine交换机也可以分别连接多个不同的leaf交换机;其中,第一leaf交换机101为源leaf交换机,用于接入源服务器105;第二leaf交换机102 为目的leaf交换机,用于接入目的服务器106。源服务器105用于发送报文,目的服务器106 用于接收报文;源服务器105发送的报文经由第一leaf交换机101、spine交换机、第二leaf 交换机102,发送给目的服务器106,目的服务器106用于接收由第二leaf交换机102发送的报文。图1示意的一实施例中,spine交换机包括第一spine交换机103和第二spine交换机104。第一leaf交换机101用于连接第一spine交换机103,第二leaf交换机102用于连接第二spine交换机104。网络系统还可以包括第三leaf交换机107。
leaf交换机为终端设备,该终端设备可以包括台式计算机或服务器。每一交换机(leaf 交换机或者spine交换机)可以包括路由器等。
本公开实施例中,leaf交换机的端口中,与服务器(源服务器105或者目的服务器106) 连接的端口是用户侧端口,与spine交换机连接的端口是网络侧接口,例如,第一leaf交换机101的端口Port C和第二leaf交换机102的Port C是用户侧端口;第一leaf交换机101 的Port A、Port B和第二leaf交换机102的Port A和Port B是网络侧端口。spine交换机上的所有端口均为网络侧端口,例如第一spine交换机103的Port A、Port B、Port C均为网络侧端口,第二spine交换机104的Port A、Port B、Port C均为网络侧端口。
在本公开实施例中,两个交换机之间的直接连接可以称为链路,报文从源leaf交换机到目的leaf交换机所遍历的所有链路的总和为路径,其中,所有链路包括源leaf交换机和目的leaf交换机之间的任何中间交换机(例如spine交换)。本公开实施例中,上行链路是指从leaf交换机到spine交换机的一条链路,例如,从第二leaf交换机102的Port A到第二 spine交换机104的Port C的链路就是一条上行链路。下行链路是指spine交换机到leaf交换机的一条链路,例如,从第一spine交换机103的Port A到第一leaf交换机101的Port A的链路就是一条下行链路。
本公开实施例中,leaf交换机之间端到端的路径是指:从其中一个leaf交换机的某个网络侧端口(路径首节点)到另外一台leaf交换机的某个网络侧端口(路径尾节点)的路径。在图1所示的spine-leaf双层网络中,该路径由一条上行链路和一条下行链路唯一确定,并可以用路径首节点和路径尾节点来标识。例如,从第二leaf交换机102的Port A到第一leaf 交换机101的Port A的路径表征了一条从第二leaf交换机102到第一leaf交换机101的端到端路径,该路径由一条上行链路(第二leaf交换机102的Port A到第一spine交换机103 的Port C)和一条下行链路(第一spine交换机103的Port A到第一leaf交换机101的Port A)唯一确定,并可以用路径首节点(第二leaf交换机102的Port A)和路径尾节点(第一 leaf交换机101的Port A)唯一标识。
一对leaf交换机(例如图1所示的第一leaf交换机101和第二leaf交换机102)之间的报文流经所述经由的路径是从源leaf交换机到spine交换机、再到目的leaf交换机。交换机接收报文的端口也称为入端口,可以用于识别发送该报文的交换机,例如图1所示,在端口的任何报文都可以确定从第一leaf交换机101发出。应当理解的是,端口可以是双工端口,也就是说,单个端口可以用于接收报文(即,用作入端口)和用于发送报文(即,用作出端口)。
当报文从同一交换机内的入端口传输到出端口时,可能会出现拥塞(例如图1所示的,报文从第一leaf交换机101的Port C传输到Port A)。拥塞可能取决于交换机的端口利用率、端口的传输速率、端口处的队列拥塞和/或处理器和存储器资源等。
在一实施例中,每个leaf交换机到其中一个spine交换机之间可以通过一条链路连接;在另一实施例中,每个leaf交换机到其中一个spine交换机之间可以通过多条链路连接。图 1所示意的是每个leaf交换机到其中一个spine交换机之间通过一条链路连接。
图2是本公开实施例的另一应用场景示意图,与图1不同的是,图2中的每个leaf交换机到其中一个spine交换机之间通过多条链路连接。例如,从第一leaf交换机101的PortA 到第一spine交换机103的Port A之间是一条链路连接,从第一leaf交换机101的Port B到第一spine交换机103的Port B之间是另一条链路连接;从第二leaf交换机102的Port E到第二spine交换机104的Port A之间是一条链路连接,从第二leaf交换机102的Port F 到第二spine交换机104的Port A之间是另一条链路连接;从第二leaf交换机102的Port A 到第一spine交换机103的Port C之间是一条链路连接,从第二leaf交换机102的Port B 到第一spine交换机103的Port D之间是另一条链路连接;从第二leaf交换机102的Port E到第二spine交换机104的Port C之间是一条链路连接,从第二leaf交换机102的Port F 到第二spine交换机104的Port D之间是另一条链路连接。
相比于图1,图3是本公开实施例的又一应用场景示意图,与图1不同的是,图3所示意的用于负载均衡的最优路径确定方法是应用于单台网络设备的场景,单台网络设备内部包括多个芯片,用于实现图1所示的spine-leaf网络结构的功能,例如,第一leaf交换机作为第一leaf模块(例如是芯片1),第二leaf交换机作为第二leaf模块(例如是芯片2),第三leaf交换机作为第三leaf模块(例如是芯片3),第一spine交换机作为第一spine模块(例如是芯片14),第二spine交换机作为第二spine模块(例如是芯片5),源服务器可以与第一面板端口通信连接,目的服务器可以与第二面板端口通信连接。
图4是本公开实施例提供的脊叶网络中收集拥塞信息的方法的一个可选的流程图,图4 中的脊叶网络中收集拥塞信息的方法至少包括步骤201至步骤205。图4所示的脊叶网络中收集拥塞信息的方法应用于第一leaf交换机执行。
步骤201、确定网络侧端口;其中,网络侧端口包括第一leaf交换机的网络侧端口和spine 交换机的网络侧端口;
步骤202、获取网络侧端口相关的拥塞信息;其中,拥塞信息包括第一leaf交换机网络侧端口的拥塞信息和spine交换机的网络侧端口的拥塞信息;
步骤203、根据配置策略确定第一leaf交换机的路径端口;
步骤204、根据路径端口将拥塞信息插入到原始报文中,得到中间报文。
步骤205、将中间报文发出。
在一些公开实施例的步骤201中,本公开实施例中,leaf交换机的端口中,与服务器(源服务器105或者目的服务器106)连接的端口是用户侧端口,与spine交换机连接的端口是网络侧接口。
步骤202中,拥塞信息包括路径端口信息、路径拥塞数据;通过拥塞信息计算节点获取网络侧端口相关的拥塞信息。拥塞信息计算节点可以用于计算本地的网络侧端口的拥塞信息;拥塞信息计算节点还可以用于:当原始报文通过拥塞信息计算节点时,该拥塞信息计算节点按照用户配置的策略,把本地计算的拥塞信息插入到原始报文中。
在一些实施例中,拥塞信息计算节点可以为leaf交换机;在其他的实施例中,拥塞信息计算节点可以为spine交换机。具体地,若拥塞信息计算节点为leaf交换机,则叶层中的所有leaf交换机均为拥塞信息计算节点,例如,图1中,第一leaf交换机101、第二leaf交换机102、第三leaf交换机107均为拥塞信息计算节点;且脊层中的所有spine交换机为正常的转发节点。若拥塞信息计算节点为spine交换机,则脊层中的所有spine交换机均为拥塞信息计算节点,例如,图1中,第一spine交换机103、第二spine交换机104均为拥塞信息计算节点;且叶层中的所有leaf交换机为正常的转发节点。报文可以从转发节点转发出去。
在一些实施例中,拥塞信息,可以是报文的出端口的拥塞信息,也可以是按照一定策略选出的某个本设备网络侧端口的拥塞信息,还可以是所有本设备的网络侧端口入方向的拥塞信息,本公开实施例对拥塞信息不做限定。
拥塞数据可以包括网络侧端口带宽利用率,时间戳信息或其他任何可以标识端口或链路拥塞状态的信息等。在一实施例中,这些拥塞数据可以单独使用;在另一实施例中,拥塞数据也可以组合使用。
步骤202中,拥塞信息计算节点获取本设备的所有网络侧端口相关的拥塞信息。在一些实施例中,结合图1,若拥塞信息计算节点为leaf交换机,则第一leaf交换机101执行上述的步骤201至步骤205;spine交换机作为正常的转发节点,进行正常的报文转发。在其他的实施例中,结合图1所示,若拥塞信息计算节点为spine交换机,则第一spine交换机103执行另一实施例的脊叶网络中收集拥塞信息的方法,后文将详细进行说明,第二leaf交换机 102从第一spine交换机103收到中间报文后执行后文的脊叶网络中确定最优路径的方法;第一leaf交换机101作为正常的转发节点,进行正常的报文转发。
本公开实施例中,原始报文是指由源服务器向目的服务器发送的报文。由源服务器发出的原始报文需流经第一leaf交换机、spine交换机、第二leaf交换机,通过第二leaf交换机转发至目的服务器。
应该理解的是,拥塞信息可以插入到原始报文中的任何位置,本公开实施例对拥塞信息插入原始报文中的位置不做限制。
在一些实施例的步骤203包括:
将原始报文的出端口或者将第一leaf交换机的网络侧端口确定为第一leaf交换机的路径端口;
或者,
对第一leaf交换机的所有网络侧端口进行轮询方式选择其中一个网络侧端口作为第一 leaf交换机的路径端口。
在一些实施例中,脊叶网络中收集拥塞信息的方法,还包括:
为相应的leaf交换机配置定时器;
若从网络侧端口向第二leaf交换机发送报文,则将定时器清零。
进一步地,脊叶网络中收集拥塞信息的方法,还包括:
若定时器超时,则从对应定时器的网络侧端口向对应定时器的第二leaf交换机发送第一数据报文;其中,第一数据报文包括拥塞信息。
在另一些实施例中,脊叶网络中收集拥塞信息的方法,还包括:
为相应的leaf交换机配置定时器;
确定原始报文从网络侧端口发出;
确定第二leaf交换机的ID信息;
若定时器超时,则根据网络侧端口的ID信息和第二leaf交换机的ID信息将拥塞信息插入到原始报文中,得到中间报文。
以拥塞信息计算节点为leaf交换机,本公开实施例还提供一种脊叶网络中确定最优路径的方法,确定最优路径的方法由第二leaf交换机执行,确定最优路径的方法包括:
通过spine交换机接收由第一leaf交换机发出的中间报文;
确定中间报文中存在拥塞信息;
从中间报文中解析出拥塞信息;
根据拥塞信息计算出最小拥塞路径,将最小拥塞路径确定为最优路径。
在该实施例中,第二leaf交换机收到中间报文后,从中间报文解析出拥塞信息,并处理解析出的拥塞信息,得到原始报文、路径端口信息、路径拥塞数据。
具体地,若拥塞信息计算节点为leaf交换机,第二leaf交换机解析中间报文中插入的拥塞信息,获得某条下行链路的拥塞情况;第二leaf交换机根据本交换机计算的拥塞信息,获得某条上行链路的拥塞情况;第二leaf交换机根据上行链路的拥塞情况和下行链路的拥塞情况,更新从第二leaf交换机到第一leaf交换机端到端的相应路径的拥塞状态;若拥塞信息计算节点为spine交换机,第二leaf交换机解析原始报文中插入的拥塞信息和相关报文信息,可以获得有关上行链路与下行链路的拥塞信息;第二leaf交换机根据上述拥塞信息,更新从第二leaf交换机到第一leaf交换机端到端的相应关路径的拥塞状态。
上述的拥塞信息最终保存到本地拥塞状态表中。示例地,结合图1,第二leaf交换机更新的拥塞状态表可以参照表1所示。表1的列坐标表示网络中的所有leaf交换机(例如第一 leaf交换机101、第二leaf交换机102、第三leaf交换机107),表1的横坐标表示本leaf交换机(例如第一leaf交换机101)到其他leaf交换机的不同路径,该路径可以用路径首节点(例如第一leaf交换机101的Port A)和路径尾节点(例如第二leaf交换机102的Port A)唯一标识。
表1
路径的拥塞状态可以用路径首节点出方向的端口利用率和路径尾节点入方向的端口利用率来表示。在本公开实施例中,选择两个端口利用率的最大值作为整条路径的拥塞信息。例如在图5中,第二leaf交换机102到第一leaf交换机101的一条路径,该路径的路径首节点是第二leaf交换机102的Port A,该路径的路径尾节点是第一leaf交换机101的Port A。假定第二leaf交换机102的Port A(路径首节点出方向)的带宽利用率是0.3,第一leaf 交换机101的Port A(路径尾节点入方向)的带宽利用率是0.7,则该路径的总体带宽利用率是0.7,即取0.3和0.7中的最大值0.7。
通过上述实施例所确定的最优路径,当第一leaf交换机向第二leaf交换机发送报文时,第一leaf交换机可以基于flowlet流选择最优路径进行转发。
在执行上述步骤之后,最终第二leaf交换机更新本交换机(本设备,也即第二leaf交换机)到第一leaf交换机端到端的其中一条路径的拥塞信息,该路径的拥塞信息最终保存到本地拥塞状态表中。
在一些实施例中,确定最优路径的方法,还包括:
为相应的leaf交换机配置定时器;
若定时器超时,则从对应定时器的网络侧端口向对应所述定时器的第二leaf交换机发送第二数据报文;其中,第二数据报文不包括拥塞信息。
进步地,确定最优路径之后,在步骤204之后,本公开实施例提供的确定最优路径的方法,还包括:
将解析出的拥塞信息删除,得到原始报文。具体地,通过剥离插入的拥塞信息,即删除被插入的拥塞信息,最终得到原始报文,并把原始报文发给第二leaf交换机,以通过第二 leaf交换机将原始报文转发给目的服务器,从而目的服务器可以接收到原始报文。
以下将以拥塞信息计算节点为spine交换机,对另一实施例的脊叶网络中收集拥塞信息的方法进行说明。该实施例中的脊叶网络中收集拥塞信息的方法,包括:
从网络侧端口获取第一leaf交换机发出的原始报文;其中,网络侧端口包括第一leaf 交换机的网络侧端口和spine交换机的网络侧端口;
获取网络侧端口相关的拥塞信息;其中,拥塞信息包括第一leaf交换机的网络侧端口的拥塞信息和spine交换机的网络侧端口的拥塞信息;
确定第一leaf交换机的路径端口;
根据路径端口将拥塞信息插入到原始报文中,得到中间报文;
将中间报文发送给第二leaf交换机。
通过上述所记载的脊叶网络中收集拥塞信息的方法和确定最优路径的方法中,所有的 leaf交换机最终将获取到本节点到其他leaf交换机端到端相关路径的拥塞信息,并计算出到其他leaf交换机的最小拥塞路径。第一leaf交换机向第二leaf交换机发送报文时,第一 leaf交换机可以基于flowlet流选择拥塞最小的路径进行转发。在本公开实施例中,只有拥塞信息计算节点(leaf交换机或spine交换机)才需要启用拥塞信息计算功能,该功能不需要全网部署,降低了部署成本和难度;整个报文的传输过程,leaf交换机仅仅需要在原始报文内插入相关拥塞信息,相比采用带外方式构造拥塞报文的方案,信息开销较小;整个拥塞信息的计算、处理、解析等操作都在交换机上进行,相比SDN方案,拥塞信息更新更快,流量负载均衡的效果更明显。
下面将结合具体的应用场景进一步说明。
图6是本公开实施例提供的基于收集拥塞信息的方法和确定最优路径的方法的第一个应用场景的流程图,图6中以leaf交换机作为拥塞信息计算节点、采用带宽利用率作为路径拥塞情况的判断标准,进行举例说明。图6中的方法包括步骤301至步骤311。
结合图5,源服务器105用于向目的服务器106发送报文。所有leaf交换机均为拥塞信息计算节点,即第一leaf交换机101、第二leaf交换机102、第三leaf交换机107均为拥塞信息计算节点,所有的leaf交换机需要启用拥塞信息计算功能,即第一leaf交换机101、第二leaf交换机102、第三leaf交换机107需要启用拥塞信息计算功能;spine交换机仅作为转发节点、可以不启用拥塞信息计算功能,即第一spine交换机103和第二spine交换机 104可以不启用拥塞信息计算功能,仅进行正常的报文转发即可。
步骤301、源服务器发出原始报文。
步骤302、第一leaf交换机判断出端口是否是网络侧端口;若判断是网络侧端口,则执行步骤303;否则,执行步骤304。
步骤303、第一leaf交换机插入拥塞信息,得到中间报文。
步骤304、第一leaf交换机正常转发原始报文。
步骤305、spine交换机正常转发中间报文;具体地,spine交换机正常转发中间报文至第二leaf交换机。
步骤306、第二leaf交换机判断中间报文中是否存在拥塞信息,若判断中间报文中存在拥塞信息,则执行步骤307,否则,执行步骤311;具体地,第二leaf交换机接收到由spine 交换机转发的中间报文后判断中间报文中是否存在拥塞信息。
步骤307、第二leaf交换机解析出拥塞信息;具体地,第二leaf交换机解析出拥塞信息后得到第一leaf交换机的ID信息、第一leaf交换机的路径端口信息和相关路径拥塞数据、第二leaf交换机的ID信息、第二leaf交换机的路径端口信息和相关路径拥塞数据。
步骤308、第二leaf交换机计算从第二leaf交换机到第一leaf交换机的端到端的其中一条路径的拥塞信息,并更新到本地拥塞状态表中。
步骤309、删除拥塞信息、得到原始报文、将原始报文转发给目的服务器。
步骤310、目的服务器接收原始报文。
步骤311、第二leaf交换机正常转发中间报文。
实际应用场景中,用户可以在leaf交换机上通过配置启用拥塞信息计算功能。拥塞信息与leaf交换机的网络侧端口相关,用户可以通过静态配置或者启用协议(比如LLDP协议等),从而发现在leaf交换机上哪些接口是网络侧接口。
拥塞信息可以是网络侧端口带宽利用率信息(包括出方向或入方向)或其他任何可以标识端口或链路拥塞状态的信息。
结合图5,在步骤301中,源服务105向目的服务器106发送原始报文。该原始报文在网络中,假定沿如下路径进行转发:第一leaf交换机101的Port C——>第一leaf交换机101的Port A——>第一spine交换机103的Port A——>第一spine交换机103的Port C——>第二leaf交换机102的Port A——>第二leaf交换机102的Port C。
通过步骤302确定网络侧端口。在步骤302中,第一leaf交换机判断此原始报文需要从网络侧端口发出,此时第一leaf交换机需要将拥塞信息插入到原始报文中。例如在图5中,第一leaf交换机发现该原始报文的出端口是Port A,而Port A是网络侧端口,则第一leaf 交换机需要把第一交换机的路径端口有关的拥塞信息插入到原始报文中。其中,第一交换机的路径端口是指第一leaf交换机101需要插入的拥塞信息相关的端口,例如图5所示,若第一leaf交换机101需要插入Port A的拥塞信息,在这种情况下,Port A就是第一leaf交换机的路径端口,Port B不是第一leaf交换机的路径端口。
步骤303包括:获取网络侧端口相关的拥塞信息;该网络侧端口由步骤302确定。
步骤303还包括:根据配置策略确定路径端口。具体地,在第一leaf交换机上,用户可以配置相关策略,根据相应的配置策略确定第一leaf交换机的路径端口。
具体地,第一配置策略可以是:可以选择报文的出端口作为第一leaf交换机的路径端口。在图5中,第一leaf交换机101的报文出端口是Port A,我们可以把Port A作为第一leaf 交换机的路径端口。
第二配置策略可以是:可以按照预设方式,选择某个本设备网络侧端口作为第一leaf交换机的路径端口,例如轮询方式。在图5中,第一leaf交换机101可以采用轮询方式选择本身的某一个网络侧端口作为第一leaf交换机的路径端口。在轮询方式下,若分别有第一次报文和第二次报文到来,则第一次报文到来时选择Port A作为第一leaf交换机的路径端口,第二次报文到来时可以选择Port B作为第一leaf交换机的路径端口。因为第一leaf交换机 101只有Port A和Port B两个网络侧端口,所以本轮端口轮询结束。若第三次报文到来时,第一leaf交换机101又重新选择Port A作为第一leaf交换机的路径端口,以此类推。
第三配置策略可以是:可以将第一leaf交换机101的所有网络侧端口同时作为第一leaf 交换机的路径端口。在图5中,第一leaf交换机101可以把自身所有网络侧端口(Port A 和Port B)同时作为第一leaf交换机的路径端口。
第一leaf交换机101确定配置策略后,需要把第一leaf交换机的路径端口相关的拥塞信息插入到原始报文中。
在一些实施例中,一个第一leaf交换机的路径端口,对应一条拥塞信息。如果有多个第一leaf交换机的路径端口,需要插入多条拥塞信息。本公开实施例对拥塞信息数量不做限定。每条拥塞信息可以选择插入到报文中的任何位置。
每条拥塞信息可以描述一个第一leaf交换机的路径端口的一个属性(例如端口入方向的带宽利用率)或多个属性(例如,端口的出方向或入方向的两个方向的带宽利用率信息、时间戳信息等)。具体地,拥塞信息可以描述的属性包括:第一leaf交换机的ID信息,该ID 信息包括ID号码,该ID号码唯一标识了第一leaf交换机101。拥塞信息可以描述的属性还包括:第一leaf交换机的路径端口的ID信息;该ID信息唯一标识了第一leaf交换机101上的端口。拥塞信息可以描述的属性还包括:拥塞属性信息;该拥塞属性信息是指与第一leaf 交换机上路径端口相关的一个或多个拥塞属性,例如:该端口入方向的带宽利用率是第一个拥塞属性,该原始报文进入第一leaf交换机101的时间戳信息是第二个拥塞属性。本公开实施例中,拥塞属性必须包括第一leaf交换机的路径端口入方向的带宽利用率,该带宽利用率信息表示从spine交换机到leaf交换机的某条下行链路的拥塞状态,例如在图5中,如Port A是第一leaf交换机的路径端口,该端口的拥塞属性中包括了入方向的带宽利用率,该带宽利用率表示第一spine 103交换机的Port A到第一leaf交换机101的Port A的这条下行链路的拥塞情况。
从而中间报文从第一leaf交换机101的Port A发出。
在一具体的实施例中,对第一leaf交换机的处理过程进行说明。请参阅图5,第一leaf 交换机101从本设备的Port C收到报文,从本设备的Port A发出报文。第一leaf交换机 101发现该报文从网络侧端口(Port A)发出。此时,第一leaf交换机101通过本地配置的策略判定,Port A是第一leaf交换机的路径端口,则第一leaf交换机101需要将Port A 相关的拥塞信息插入到原始报文中。其中,第一leaf交换机101插入的拥塞信息内容可以包括:第一leaf交换机的ID号码。此外,第一leaf交换机101插入的拥塞信息内容还可以包括:第一leaf交换机的路径端口号信息,例如,第一leaf交换机101的Port A的ID号。进一步地,第一leaf交换机101插入的拥塞信息内容还可以包括:第一leaf交换机的路径端口相关的拥塞属性,例如第一leaf交换机101的Port A入方向的带宽利用率,该带宽利用率表示第一spine交换机103的Port A到第一leaf交换机101的Port A的下行链路的拥塞情况。
步骤305中,第一spine交换机103从本设备的Port A收到中间报文,进行正常转发处理,从本设备的Port C发出中间报文。
步骤306中,第二leaf交换机102从本设备的Port A收到中间报文;识别该中间报文的信息,如果发现该中间报文中包含有插入的1条或多条拥塞信息,则执行步骤307。在本实例中,该拥塞信息由第一leaf交换机101插入,第二leaf交换机103解析该拥塞信息。
在步骤307中,第二leaf交换机102解析出拥塞信息;具体地,第二leaf交换机解析出拥塞信息后得到第一leaf交换机的ID信息、第一leaf交换机的路径端口信息和相关路径拥塞数据、第二leaf交换机的ID信息、第二leaf交换机的路径端口信息和相关路径拥塞数据。具体地,步骤307包括:
根据中间报文的源IP或第一leaf交换机的ID号信息获取第一leaf交换机的ID信息;
获取第一交换机的路径端口号信息;
获取第一交换机的端口相关的拥塞属性;在本实例中,获取到第一leaf交换机相关端口的带宽利用率信息。
步骤307还包括:
获取相关第二交换机ID,及相关路径端口的拥塞信息;具体地,包括:
根据报文的入端口,获取到第二leaf交换机的路径端口的端口号信息;在图5中,该端口号就是第二leaf交换机102交换机的Port A的ID号;
根据第二leaf交换机的路径端口的端口号信息,获取本地计算的该端口出方向的带宽利用率信息。该带宽利用率信息标识了从leaf到spine某条下行链路的拥塞状态。比如在图3 中,该带宽利用率表示第二leaf交换机102的Port A到第一spine交换机103的PortC 这条上行链路的拥塞情况。
在步骤308中,比较第一leaf交换机的路径端口入方向带宽利用率信息和第二leaf交换机的路径端口出方向带宽利用率信息,获取最大值(表明拥塞最严重的值),并把该值作为第二leaf交换机103到第一leaf交换机101的某条路径的拥塞值。该路径由第二leaf交换机的路径端口(路径首节点)与第一leaf交换机的路径端口(路径尾节点)唯一确定;
综合第一交换机的ID信息和路径端口号信息、第二交换机的ID信息和路径端口号信息,能够索引到本地拥塞状态表中对应的某条表项中,本地拥塞状态表可以参照表1所示。表1 的列坐标表示网络中的所有leaf交换机(例如第一leaf交换机101、第二leaf交换机102、第三leaf交换机107),表1的横坐标表示本leaf交换机(例如第一leaf交换机101)到其他leaf交换机的不同路径,该路径可以用路径首节点(例如第一leaf交换机101的PortA) 和路径尾节点(例如第二leaf交换机102的Port A)唯一标识。路径的拥塞状态可以用路径首节点出方向的端口利用率和路径尾节点入方向的端口利用率来表示。在本公开实施例中,选择两个端口利用率的最大值作为整条路径的拥塞信息。例如在图5中,第二leaf交换机 102到第一leaf交换机101的一条路径,该路径的路径首节点是第二leaf交换机102的Port A,该路径的路径尾节点是第一leaf交换机101的Port A。假定第二leaf交换机102的Port A(路径首节点出方向)的带宽利用率是0.3,第一leaf交换机101的Port A(路径尾节点入方向)的带宽利用率是0.7,则该路径的总体带宽利用率是0.7,即取0.3和0.7中的最大值0.7。
从而,第二leaf交换机102更新相关的路径信息。如果有多条拥塞信息,第二leaf交换机102可以按照上述步骤逐条解析拥塞信息,最终获得第二leaf交换机102到第一leaf交换机101的多条端到端的路径。上述多条路径的状态信息更新到本地的路径拥塞状态表中。
在步骤309中,第二leaf交换机去除中间报文中的拥塞信息,以将拥塞信息删除,从而可以得到原始报文,并将原始报文通过Port C转发给目的服务器,从而目的服务器106可以接收原始报文。
具体地,对第二leaf交换机102的处理过程进行举例说明。在图5中,第二leaf交换机102从Port A收到中间报文,从Port C发出删除拥塞信息的原始报文。第二leaf交换机102识别中间报文的相关信息,若发现该中间报文中存在插入的1条或多条拥塞信息,则解析拥塞信息,具体地:第二leaf交换机102解析拥塞信息,第二leaf交换机ID、Port A的 ID值及Port A入方向的带宽利用率信息,假定该值是0.3;第二leaf交换机102获取自己的交换机ID、Port A的ID值,Port A(报文入端口)出方向的带宽利用率信息,假定该值是0.7;第二leaf交换机102计算从第二leaf交换机102到第一leaf交换机101的某条路径的拥塞值:比较第二leaf交换机102的Port A出方向的带宽利用率信息(0.7)和第二 leaf交换机102的Port A入方向的带宽利用率信息(0.3),最终得出:第二leaf交换机102 到第一leaf交换机101的路径拥塞值是0.7。该路径的路径首节点是第二leaf交换机102 的Port A,路径尾节点是第一leaf交换机101的Port A;第二leaf交换机102更新本地的路径拥塞状态表:根据第一leaf交换机ID信息、Port A的ID信息、第二leaf交换机ID 信息、第二leaf交换机102的Port A的ID信息,能够在本地路径拥塞信息表中的找到相关路径项,更新该路径的拥塞信息为0.7。
实际场景中,如果第一leaf交换机101下的服务器(例如源服务器105)向第二leaf交换机102下的服务器(例如目的服务器106)发送报文时,部分网络流量沿其他路径转发。如图7所示,源服务器105向目的服务器106发送报文,该报文假定沿以下路径传输:第一leaf交换机101的Port C——>第一leaf交换机101的Port B——>第一spine交换机103 的Port A——>第二spine交换机104的Port C——>第二leaf交换机102的Port B——> 第二leaf交换机102的Port C。在这种情况下:
第一leaf交换机101重复执行上述步骤302至步骤304的流程,第二spine交换机104 重复执行步骤上述步骤305的流程,第二leaf交换机102重复执行上述步骤306至步骤309 的流程,最终第二leaf交换机102获得本设备到第一leaf交换机101的另一条端到端路径的拥塞状态。该路径的路径首节点是第二leaf交换机102的Port B,路径的尾节点是第一leaf交换机101的Port B。
上述实施例中,只要网络上存在持续的流量,并且该流量从第一leaf交换机101到第二 leaf交换机102之间沿所有的路径传输,则第二leaf交换机102可以获得并能不断更新本设备到第一leaf交换机101相关端到端路径的拥塞状态。
本公开实施例是基于流的多路径转发,所有leaf交换机需具备基于flowlet流(即小流) 的多路径转发功能。第一leaf交换机101向第二leaf交换机102发送报文时,可以基于 flowlet流选择拥塞最小的路径进行转发。具体地:
当第一leaf交换机101收到报文时,按照预设规则计算报文的流标识,通过上述流标识索引到流转发表中的相关表项,该预设规则可以是:通过提取报文的五元组计算的哈希值 (hash值)作为流标识信息;
如果该表项无效,则:
第一leaf交换机101根据目的地址再查找路径拥塞状态表;该拥塞状态表中保存了第一 leaf交换机101到第二leaf交换机102(可以有报文的目的地址计算出)所有端到端路径的拥塞信息;路径拥塞状态表的内容可以参考上述表1的描述;
根据路径拥塞状态表中的信息,第一leaf交换机101找到拥塞最小的出端口,并把该出端口写入流转发表中,同时设置流转发表有效;
第一leaf交换机101把报文从该端口发出;
如果该表项有效,则:leaf交换机直接根据流转发表标识的出端口转发报文。
本公开实施的流转发表具有老化机制。如果流转发表中某一表项,T时间内没有报文刷新,则该表项设置为无效。
本公开实施基于两层spine-leaf网络,利用leaf交换机或spine交换机计算网络中的拥塞信息,并把拥塞信息插入到正常的原始报文中、以得到中间报文,第二leaf交换机收到中间报文、并从中间报文解析拥塞信息,最终所有的leaf交换机将获取到本节点到其他leaf 交换机相关链路的拥塞信息。leaf交换机基于上述拥塞信息,计算端到端最小拥塞路径并更新自己的转发表项。在流量转发时,leaf交换机基于flowLet流,实现流量按照最小拥塞路径转发,最终实现提升整个网络的吞吐率。
图8是本公开实施例提供的基于收集拥塞信息的方法和确定最优路径的方法的第二个应用场景的新增流程图,图8中以leaf交换机作为拥塞信息计算节点进行举例说明,并且,以本机的每个交换机网络侧端口+每个leaf交换机为维度,配置定时器。与图4不同的是,图 8所示的用于负载均衡的最优路径确定方法在图4的基础上至少新增步骤401至步骤403。
在第二个应用场景的用于负载均衡的最优路径确定方法中,为了防止第一leaf交换机 101下的源服务器105长时间没有向第二leaf交换机102下的目的服务器106发送报文,造成第二leaf交换机102无法及时更新本节点到第一leaf交换机101路径的拥塞情况。在本实施例中,基于上述第一个应用场景的实施例,可以在leaf交换机上,以本机交换机的每个网络侧端口+其他leaf交换机为维度,配置1个定时器。当定时器超时时,第一leaf交换机 101主动从相关网络侧端口向相关leaf交换机发送拥塞报文。
关于计算拥塞信息的流程,可以参照上述第一个应用场景的实施例的步骤,本实施例不再赘述。
在第二个应用场景的最优路径确定方法不同于第一个应用场景的最优路径确定方法的是:第一leaf交换机101的处理上,通过配置相应定时器来确定是否主动发送报文。
步骤401、给相应leaf交换机配置定时器。
具体地,在leaf交换机上,以本机交换机的每个网络侧端口,其他每个leaf交换机这 2个参数为维度,配置1个定时器。举例来说,在图5的网络拓扑中,在第一leaf交换机101上,需要配置4个定时器,该定时器与本机网络侧接口与其他leaf交换机的关系,可以参考下表2所示,定时器1对应第一leaf交换机101的Port A,第三leaf交换机107;定时器 2对应第一leaf交换机101的Port A,第二leaf交换机102;定时器3对应第一leaf交换机101的Port A,第三leaf交换机107;定时器4对应第一leaf交换机101的Port B,第二leaf交换机102。
定时器 | 网络侧端口 | 第二leaf交换机ID信息 |
定时器1 | Port A | 第三leaf交换机107 |
定时器2 | Port A | 第二leaf交换机102 |
定时器3 | Port B | 第三leaf交换机107 |
定时器4 | Port B | 第二leaf交换机102 |
表2
步骤402、将相应定时器进行清零。
具体地,本Leaf交换机从自身某个网络侧端口向其他leaf交换机发出报文时,则相关定时器进行清零并重新开始计时。比如在表2中,第一leaf交换机101从本设备的PortA 向第二leaf交换机102发出报文,则对定时器2进行清零并重新开始计时
步骤403、若定时器超时,本leaf交换机向相应的其他leaf交换发送第一数据报文。
具体地,若定时器超时,本leaf交换机需要主动通过定时器相关的网络侧端口向定时器相关的leaf交换机发送第一数据报文。在一实施例中,第一数据报文的目的IP可以是相关 leaf交换机自身的IP地址。第一数据报文至少包括定时器相关端口入方向的拥塞信息;第一数据报文的其他内容可以自己定义,但至少包括定时器相关端口入方向的拥塞信息。
示例地,结合表2,在一实施例中,以表2所示的内容配置定时器,其中,若定时器2超时,因定时器2与第二leaf交换机102,和自身的网络侧接口Port A相关,所以第一leaf交换机101主动从本设备的Port A向第二leaf交换机102发送第一数据报文。该第一数据报文的目的IP地址是第二leaf交换机102的自身IP,第一数据报文中需要包括第一leaf 交换机101的Port A入方向的拥塞信息。
图9是本公开实施例提供的基于收集拥塞信息的方法和确定最优路径的方法的第三个应用场景的流程图,图9中以spine交换机作为拥塞信息计算节点、采用带宽利用率作为路径拥塞情况的判断标准进行举例说明。与图4不同的是,图9所示的用于负载均衡的最优路径确定方法至少包括步骤501至步骤511。
第三个应用场景的用于负载均衡的最优路径确定方法中,结合图5,源服务器105用于向目的服务器106发送报文。所有spine交换机均为拥塞信息计算节点、所有的leaf交换机需要启用拥塞信息计算功能,即第一spine交换机103和第二spine交换机104均为拥塞信息计算节点,第一spine交换机103和第二spine交换机104均需要启用拥塞信息计算功能; leaf交换机仅作为转发节点、可以不启用拥塞信息计算功能,即第一leaf交换机101、第二 leaf交换机102、第三leaf交换机107可以不启用拥塞信息计算功能,仅进行正常的报文转发即可。
步骤501、源服务器发出原始报文。
步骤502、第一leaf交换机正常转发原始报文。
步骤503、spine交换机获取拥塞相关数据。
步骤504、spine交换机根据拥塞相关数据计算拥塞信息。
步骤505、spine交换机插入拥塞信息,得到中间报文。
步骤506、第二leaf交换机判断中间报文中是否存在拥塞信息,若判断中间报文中存在拥塞信息,则执行步骤507,否则,执行步骤511;具体地,第二leaf交换机接收到由spine 交换机转发的中间报文后判断中间报文中是否存在拥塞信息。
步骤507、第二leaf交换机解析出拥塞信息;具体地,第二leaf交换机解析出拥塞信息后得到第一leaf交换机的ID信息、第一leaf交换机的路径端口信息和相关路径拥塞数据、第二leaf交换机的ID信息、第二leaf交换机的路径端口信息和相关路径拥塞数据。
步骤508、第二leaf交换机计算从第二leaf交换机到第一leaf交换机的端到端的其中一条路径的拥塞信息,并更新到本地拥塞状态表中。
步骤509、删除拥塞信息、得到原始报文、将原始报文转发给目的服务器。
步骤510、目的服务器接收原始报文。
步骤511、第二leaf交换机正常转发中间报文。
第三个应用场景的用于负载均衡的最优路径确定方法中拥塞信息计算功能的启动类似于第一个应用场景的用于负载均衡的最优路径确定方法的拥塞信息计算功能的启动,不同于第一个应用场景的是,在第三个应用场景中由spine交换机完成拥塞信息计算功能,参照图6 的所示的原理,在本实施例中,用户可以在spine交换机上通过配置启用拥塞信息计算功能。
拥塞信息可以是网络侧端口带宽利用率信息(包括出方向或入方向)或其他任何可以标识端口或链路拥塞状态的信息。
步骤501中,源服务器105向目的服务器106发送的原始报文,假定沿如下路径进行转发,如图5所示:第一leaf交换机101的Port C——>第一leaf交换机101的Port A——>第一spine交换机103的Port A——>第一spine交换机103的Port C——>第二leaf交换机102的Port A——>第二leaf交换机102的Port C。
步骤502中,第一leaf交换机101正常转发原始报文。如图5所示,第一leaf交换机101从本设备的Port C收到原始报文,进行正常转发,从本设备的Port A发出。
步骤503中,拥塞相关数据包括:原始报文的入端口信息和出端口信息。spine交换机正常转发原始报文,可以获取原始报文的入端口信息和出端口信息。在本实例中,入端口是指报文进入spine交换机的端口,出端口是指报文离开spine交换机的端口。在图5中,spine 交换机的入端口是Port A,spine交换机的出端口是Port C。
拥塞相关数据还包括:第一leaf交换机的ID信息和相关路径端口信息。步骤503包括:
获取第一leaf交换机的ID信息和相关路径端口信息;在本实施例中,第一leaf交换机的路径端口是指:与spine交换机报文的入端口直接相连的其中一个第一leaf交换机的端口;其中,spine交换机可以通过静态配置或者动态协议(比如LLDP协议)获取该信息;在图5 中,第一spine交换机103的Port A是报文的入端口,第一leaf交换机101的Port A就是第一leaf交换机的路径端口。
拥塞相关数据还包括:报文的入端口出方向的拥塞值。步骤503还包括:
获取报文的入端口出方向的拥塞值;spine交换机根据报文的入端口ID号,并结合本地拥塞信息计算结果,可以获取到该端口出方向的拥塞信息,该拥塞信息表明了一条从spine 交换机到leaf交换机的下行链路的拥塞情况;在本实施例中,该信息可以是该端口出方向的带宽利用率值;在图5中,Port A是该报文在第一spine交换机103上的入端口,该端口出方向的拥塞信息就是指第一spine交换机103的Port A到第一leaf交换机101的PortA下行链路的拥塞信息。
拥塞相关数据还包括:第二leaf交换机的ID信息及相关路径端口信息。步骤503还包括:
获取第二leaf交换机的ID信息及相关路径端口信息;在本实施例中,第二leaf交换机的路径端口是指:与spine交换机报文的出端口直接连接的第二leaf交换机102的端口; spine交换机可以通过静态配置或者动态协议(比如LLDP协议)获取该信息;在图5中,第一spine交换机103的Port C是报文入端口,第二leaf交换机102的Port A就是第二leaf交换机102的路径端口。
拥塞相关数据还包括:报文的出端口ID入方向的拥塞值。步骤503还包括:
获取报文的出端口ID入方向的拥塞值;spine交换机根据报文出端口ID号,并结合本地拥塞信息计算结果,可以获取到该端口入方向的拥塞信息,该拥塞信息表明了一条从leaf 到spine的上行链路的拥塞情况;在本实施例中,该信息可以是该端口入方向的带宽利用率值;在图5中,Port C是该报文在第一spine交换机103上的出端口,该端口入方向的拥塞信息是指第二leaf交换机102的Port A到第一spine交换机103的Port A上行链路的拥塞信息。
在步骤504包括:
spine交换机根据拥塞相关数据计算第二leaf交换机到第一leaf交换机的其中一条路径的拥塞值。具体地:spine交换机根据第二leaf交换机的ID信息及相关路径端口信息、报文的出端口ID入方向的拥塞值,选择较大值(表明拥塞最严重的值)作为第二leaf交换机102到第一leaf交换机101的其中一条路径的拥塞值,并作为插入到原始报文中的拥塞信息,从而得到包括拥塞信息的中间报文;在本实施例中,该路径由第二leaf交换机的ID信息及相关路径端口和第一leaf交换机的ID信息及相关路径端口唯一确定。
更进一步地,spine交换机根据以下拥塞相关信息数据第二leaf交换机到第一leaf交换机的一条端到端路径的拥塞值:第一leaf交换机的ID号,第一leaf交换机的路径端口 ID号,第二leaf交换机ID号、第二leaf交换机的路径端口号信息。计算出的该端到端路径由第二leaf交换机的ID信息及相关路径端口和第一leaf交换机的ID信息及相关路径端口唯一确定。
以下对第一leaf交换机处理的原理进行举例说明。在图5中,第一spine交换机103从本设备的Port A收到报文,从本设备的Port C发出报文。
第一spine交换机103根据报文入端口Port A信息,获取到第一leaf交换机的ID信息和第一leaf交换机的路径端口Port A的ID号;
第一spine交换机103根据报文入端口Port A信息,获取Port A出方向的带宽利用率;
第一spine交换机103根据报文出端口Port C信息,获取到第二leaf交换机的ID信息和第二leaf交换机的路径端口Port A的ID号;
第一spine交换机103根据报文入端口Port C信息,获取Port C入方向的带宽利用率;
第一spine交换机103比较Port A出方向的带宽利用率和Port C入方向的带宽利用率,获取路径的拥塞值;
第一spine交换机103把相关拥塞值作为拥塞信息插入到原始报文中。具体地,相关拥塞值可以包括:第一leaf交换机的ID号(例如,在图5中是指第一leaf交换机101的ID号);相关拥塞值还可以包括:第一leaf交换机的路径端口号信息(例如,在图5中是指第一leaf交换机101的Port A的ID号);相关拥塞值还可以包括:第二leaf交换机的ID号 (例如,在图5中是指第二leaf交换机102的ID号);相关拥塞值还可以包括:第二leaf 交换机的路径端口号信息(例如,在图5中是指第二leaf交换机102的Port A的ID号)。
第二leaf交换机到第一leaf交换机某条路径的拥塞值。该路径由leaf3交换机Port A 和leaf1交换机Port A唯一确定。
步骤506、第二leaf交换机判断中间报文中是否存在拥塞信息,若判断中间报文中存在拥塞信息,则执行步骤507,否则,执行步骤511;具体地,第二leaf交换机接收到由spine 交换机转发的中间报文后判断中间报文中是否存在拥塞信息。
步骤507、第二leaf交换机解析出拥塞信息;具体地,第二leaf交换机解析出拥塞信息后得到第一leaf交换机的ID信息、第一leaf交换机的路径端口信息和相关路径拥塞数据、第二leaf交换机的ID信息、第二leaf交换机的路径端口信息和相关路径拥塞数据。
步骤508、第二leaf交换机计算从第二leaf交换机到第一leaf交换机的端到端的其中一条路径的拥塞信息,并更新到本地拥塞状态表中。
步骤509、删除拥塞信息、得到原始报文、将原始报文转发给目的服务器。
步骤510、目的服务器接收原始报文。
步骤511、第二leaf交换机正常转发中间报文。
结合图5,步骤506包括:
第二leaf交换机102从本设备的Port A收到中间报文;
第二leaf交换机102识别中间报文的信息,判断中间报文中是否存在插入的拥塞信息。
若步骤506中,判断中间报文中存在插入的拥塞信息,则执行步骤507。具体地,步骤 507包括:
根据报文的源IP或第一leaf交换机的ID号信息获取到第一leaf交换机的ID信息;
从拥塞信息中获取到第一交换机的路径端口的ID信息;
根据拥塞信息或从本地获取第二leaf交换机的ID信息;
根据拥塞信息或从报文入端口获取到第二交换机的路径端口的ID信息。
步骤508包括:
第二leaf交换机102综合第一leaf交换机的ID信息和相关路径端口号信息、第二leaf 交换机的ID信息和相关路径端口号信息,最终索引到本地拥塞状态中相关的其中一条路径信息中,本地拥塞状态表的格式如上表1所示;
第二leaf交换机102更新相关的路径信息。
本公开实施例中,若第一leaf交换机101下的源服务器105向第二leaf交换机102下的目的服务器106发送报文时,有流量沿其他路径转发,如图7所示,第一leaf交换机101的Port C——>第一leaf交换机101的Port B——>第二spine交换机104的Port A——> 第一spine交换机103的Port C——>第二leaf交换机102的Port B——>第二leaf交换机102的交换机Port C。重复上述步骤501至步骤510的流程,最终第二leaf交换机102 获得本设备到第一leaf交换机101的端到端路径的拥塞状态,该路径由上行链路第二leaf 交换机102的Port B到spine2交换机Port C和下行链路spine2交换机Port A到第一leaf 交换机101的Port B确定。
通过上述过程,第二leaf交换机102获得本设备到第一leaf交换机101所有端到端路径的拥塞状态。
图10是本公开实施例提供的基于收集拥塞信息的方法和确定最优路径的方法的第四个应用场景的流程图,图10中以spine交换机作为拥塞信息计算节点进行举例说明,并且,leaf 交换机以本机的每个交换机网络侧端口+每个leaf交换机为维度,配置定时器。图10在图9 的基础上,至少新增步骤601至步骤603。
第四个应用场景的用于负载均衡的最优路径确定方法中,为了防止第一leaf交换机下的服务器节点长时间没有向第二leaf交换机下的服务器节点发送报文,造成第二leaf交换机无法及时更新本节点到第一leaf交换机路径的拥塞情况。在本案例中,基于第三个应用场景,可以在leaf交换机上,以本机交换机每个网络侧端口+其他leaf交换机为维度,配置1个定时器。若定时器超时,第一leaf交换机主动从相关网络侧端口向相关leaf交换机发送拥塞报文。
步骤601、给相应leaf交换机配置定时器。
步骤601与步骤401类似。具体地,在leaf交换机上,以本机交换机的每个网络侧端口,其他每个leaf交换机这2个参数为维度,配置1个定时器。举例来说,在图5的网络拓扑中,在第一leaf交换机101上,需要配置4个定时器,该定时器与本机网络侧接口与其他leaf交换机的关系,可以参考上表2所示,定时器1对应第一leaf交换机101的Port A,第三leaf交换机107;定时器2对应第一leaf交换机101的Port A,第二leaf交换机102;定时器3对应第一leaf交换机101的Port A,第三leaf交换机107;定时器4对应第一leaf 交换机101的Port B,第二leaf交换机102。
步骤602、将相应定时器进行清零。
步骤602与步骤402类似。具体地,本Leaf交换机从自身某个网络侧端口向其他leaf 交换机发出报文时,则相关定时器进行清零并重新开始计时。比如在表2中,第一leaf交换机101从自己的Port A向第二leaf交换机102发出报文,则对定时器2进行清零并重新开始计时。
步骤603、若定时器超时,本leaf交换机向相应的其他leaf交换发送第二数据报文。
步骤603与步骤403类似,不同于步骤403的是,步骤403所发送的是第一数据报文,步骤603发送的是第二数据报文。具体地,若定时器超时,表明本leaf交换机已经在时间T内没有从相关网络侧端口向其他相关leaf交换机发送报文;此时本leaf交换机需要主动通过定时器相关的网络侧端口向定时器相关的leaf交换机发送第二数据报文。在一实施例中,第二数据报文的目的IP可以是相关leaf交换机自身的IP地址。与上述第二个应用场景所不同的是,第一数据报文至少包括定时器相关端口入方向的拥塞信息,而第二数据报文不包括拥塞信息;第二数据报文的其他内容可以自己定义,但不包括拥塞信息。
示例地,结合表2,在一实施例中,以表2所示的内容配置定时器,其中,若定时器2超时,因定时器2与第二leaf交换机102,和自身的网络侧接口Port A相关,所以第一leaf交换机101主动从本设备的Port A向第二leaf交换机102发送第二数据报文。该第二数据报文的目的IP地址是第二leaf交换机102的自身IP,第二数据报文中不包括拥塞信息。
图11是本公开实施例提供的基于收集拥塞信息的方法和确定最优路径的方法的第五个应用场景的新增流程图,图11中,以leaf交换机计算拥塞信息、leaf交换机配置定时器、定时向报文中插入拥塞信息进行举例说明。图11中的方法至少新增步骤701至步骤703。
在第一个应用场景中,leaf交换机计算拥塞信息,当收到报文时,只要判断出端口是网络侧端口,就需要在报文中插入拥塞信息。该方法相当于增加了数据报文的长度,拥塞信息消耗了一定的网络带宽。为了减少拥塞信息占用的网络带宽,在第五个应用场景中,基于第一个应用场景,在leaf交换机上,以本机交换机每个网络侧端口+其他leaf交换为维度,配置1个定时器。当定时器超时,第一leaf交换机才将拥塞信息插入到报文中。
步骤701、给相应leaf交换机配置定时器。
步骤701与步骤401类似。具体地,在leaf交换机上,以本机交换机的每个网络侧端口,其他每个leaf交换机这2个参数为维度,配置1个定时器。举例来说,在图5的网络拓扑中,在第一leaf交换机101上,需要配置4个定时器,该定时器与本机网络侧接口与其他leaf交换机的关系,可以参考上表2所示,定时器1对应第一leaf交换机101的Port A,第三 leaf交换机107;定时器2对应第一leaf交换机101的Port A,第二leaf交换机102;定时器3对应第一leaf交换机101的Port A,第三leaf交换机107;定时器4对应第一leaf 交换机101的Port B,第二leaf交换机102。
步骤702、若定时器到达预设时间,则停止计时。
步骤703、第一leaf交换机确定报文需要从网络侧端口发出。
在步骤703中,具体地,
第一leaf交换机根据目的IP找到对应的第二leaf交换机ID;
第一leaf交换机根据网络侧端口ID和第二leaf交换机ID,获得对应的定时器信息;若定时器超时,则:
第一leaf交换机需要将拥塞信息插入到原始报文中;
该定时器重新开始计时。
通过上述所记载的脊叶网络中收集拥塞信息的方法和确定最优路径的方法中,所有的 leaf交换机最终将获取到本节点到其他leaf交换机端到端相关路径的拥塞信息,并计算出到其他leaf交换机的最小拥塞路径。第一leaf交换机向第二leaf交换机发送报文时,第一 leaf交换机可以基于flowlet流选择拥塞最小的路径进行转发。在本公开实施例中,只有拥塞信息计算节点(leaf交换机或spine交换机)才需要启用拥塞信息计算功能,该功能不需要全网部署,降低了部署成本和难度;整个报文的传输过程,leaf交换机仅仅需要在原始报文内插入相关拥塞信息,相比采用带外方式构造拥塞报文的方案,信息开销较小;整个拥塞信息的计算、处理、解析等操作都在交换机上进行,相比SDN方案,拥塞信息更新更快,流量负载均衡的效果更明显。
本公开实施例还提供一种脊叶网络中收集拥塞信息的装置,可以实现上述脊叶网络中收集拥塞信息的方法,该装置包括:
网络侧端口确定模块,用于确定网络侧端口;
第一拥塞信息获取模块,用于获取网络侧端口相关的拥塞信息;
第一路径端口确定模块,用于根据配置策略确定第一leaf交换机的路径端口;
第一插入模块,用于根据路径端口将拥塞信息插入到原始报文中,得到中间报文;
第一转发模块,用于将中间报文发出。
本公开实施例还提供另一种脊叶网络中收集拥塞信息的装置,可以实现上述脊叶网络中收集拥塞信息的方法,该装置包括:
报文获取模块,用于从网络侧端口获取第一leaf交换机发出的原始报文;
第二拥塞信息获取模块,用于获取网络侧端口相关的拥塞信息;
第二路径端口确定模块,用于确定第一leaf交换机的路径端口;
第二插入模块,用于根据路径端口将拥塞信息插入到原始报文中,得到中间报文;
第二转发模块,用于将中间报文发送给第二leaf交换机。
本公开实施例还提供另一种脊叶网络中确定最优路径的装置,可以实现上述脊叶网络中确定最优路径的方法,该装置包括:
报文接收模块,用于通过spine交换机接收由第一leaf交换机发出的中间报文;
拥塞信息确定模块,用于确定中间报文中存在拥塞信息;
解析模块,用于从中间报文中解析出所述拥塞信息;
计算模块,用于根据拥塞信息计算出最小拥塞路径,将最小拥塞路径确定为最优路径。
本公开实施例还提供了一种脊叶网络的网络交换机,包括:
至少一个存储器;
至少一个处理器;
至少一个程序;
所述程序被存储在存储器中,处理器执行所述至少一个程序以实现本公开实施上述的脊叶网络中收集拥塞信息的方法或者脊叶网络中确定最优路径的方法。该网络交换机可以为 leaf交换机,也可以为spine交换机。
本公开实施例还提供了一种计算机可读存储介质,所述计算机可执行指令用于执行上述脊叶网络中收集拥塞信息的方法或者脊叶网络中确定最优路径的方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本公开实施例描述的实施例是为了更加清楚的说明本公开实施例的技术方案,并不构成对于本公开实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本公开实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图1-11中示出的技术方案并不构成对本公开实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在) 是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c 中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本公开实施例的优选实施例,并非因此局限本公开实施例的权利范围。本领域技术人员不脱离本公开实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本公开实施例的权利范围之内。
Claims (10)
1.一种脊叶网络中收集拥塞信息的方法,应用于第一leaf交换机,其特征在于,包括:
确定网络侧端口;其中,所述网络侧端口包括所述第一leaf交换机的网络侧端口和spine交换机的网络侧端口;
获取所述网络侧端口相关的拥塞信息;其中,所述拥塞信息包括所述第一leaf交换机网络侧端口的拥塞信息和所述spine交换机的网络侧端口的拥塞信息;
根据配置策略确定第一leaf交换机的路径端口;
根据所述路径端口将所述拥塞信息插入到原始报文中,得到中间报文;
通过spine交换机将所述中间报文发送给第二leaf交换机。
2.根据权利要求1所述的方法,其特征在于,还包括:
为相应的leaf交换机配置定时器;
若从所述网络侧端口向第二leaf交换机发送报文,则将所述定时器清零。
3.根据权利要求2所述的方法,其特征在于,还包括:
若所述定时器超时,则从对应所述定时器的网络侧端口向对应所述定时器的第二leaf交换机发送第一数据报文;其中,所述第一数据报文包括所述拥塞信息。
4.根据权利要求1所述的方法,其特征在于,还包括:
为相应的leaf交换机配置定时器;
确定所述原始报文从所述网络侧端口发出;
确定所述第二leaf交换机的ID信息;
若定时器超时,则根据所述网络侧端口的ID信息和所述第二leaf交换机的ID信息将所述拥塞信息插入到所述原始报文中,得到所述中间报文。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述根据配置策略确定第一leaf交换机的路径端口,包括:
将所述原始报文的出端口或者将所述第一leaf交换机的网络侧端口确定为所述第一leaf交换机的路径端口;
或者,
对所述第一leaf交换机的所有网络侧端口进行轮询方式选择其中一个网络侧端口作为所述第一leaf交换机的路径端口。
6.一种脊叶网络中确定最优路径的方法,应用于第二leaf交换机,其特征在于,包括:
通过spine交换机接收由第一leaf交换机发出的中间报文;其中,所述中间报文为根据权利要求1至5任一项所述的方法得到;
确定所述中间报文中存在拥塞信息;
从所述中间报文中解析出所述拥塞信息;
根据所述拥塞信息计算出最小拥塞路径,将所述最小拥塞路径确定为最优路径。
7.根据权利要求6所述的方法,其特征在于,还包括:
为相应的leaf交换机配置定时器;
若所述定时器超时,则从对应所述定时器的网络侧端口向对应所述定时器的第二leaf交换机发送第二数据报文;其中,所述第二数据报文不包括所述拥塞信息。
8.一种脊叶网络中收集拥塞信息的方法,应用于spine交换机,其特征在于,包括:
从网络侧端口获取第一leaf交换机发出的原始报文;其中,所述网络侧端口包括所述第一leaf交换机的网络侧端口和所述spine交换机的网络侧端口;
获取所述网络侧端口相关的拥塞信息;其中,所述拥塞信息包括所述第一leaf交换机的网络侧端口的拥塞信息和所述spine交换机的网络侧端口的拥塞信息;
确定所述第一leaf交换机的路径端口;
根据所述路径端口将所述拥塞信息插入到原始报文中,得到中间报文;
将所述中间报文发送给第二leaf交换机。
9.一种脊叶网络的网络交换机,其特征在于,包括:
至少一个存储器;
至少一个处理器;
至少一个程序;
所述程序被存储在存储器中,处理器执行所述至少一个程序以实现:
如权利要求1至5任一项所述的方法;
或者,
如权利要求6至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行:
如权利要求1至5任一项所述的方法;
或者,
如权利要求6至7任一项所述的方法;
或者,
如权利要求8所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011083906.6A CN112787925B (zh) | 2020-10-12 | 2020-10-12 | 拥塞信息收集方法、确定最优路径方法、网络交换机 |
PCT/CN2021/113568 WO2022078063A1 (zh) | 2020-10-12 | 2021-08-19 | 拥塞信息收集方法、确定最优路径方法、网络交换机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011083906.6A CN112787925B (zh) | 2020-10-12 | 2020-10-12 | 拥塞信息收集方法、确定最优路径方法、网络交换机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112787925A CN112787925A (zh) | 2021-05-11 |
CN112787925B true CN112787925B (zh) | 2022-07-19 |
Family
ID=75750468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011083906.6A Active CN112787925B (zh) | 2020-10-12 | 2020-10-12 | 拥塞信息收集方法、确定最优路径方法、网络交换机 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112787925B (zh) |
WO (1) | WO2022078063A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112787925B (zh) * | 2020-10-12 | 2022-07-19 | 中兴通讯股份有限公司 | 拥塞信息收集方法、确定最优路径方法、网络交换机 |
CN115348210B (zh) * | 2022-06-21 | 2024-06-14 | 深圳市高德信通信股份有限公司 | 一种基于边缘计算的延迟优化方法 |
CN117376258A (zh) * | 2022-07-01 | 2024-01-09 | 华为技术有限公司 | 一种发送数据流的方法以及相关装置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9246818B2 (en) * | 2013-06-24 | 2016-01-26 | Cisco Technology, Inc. | Congestion notification in leaf and spine networks |
US9419908B2 (en) * | 2013-11-27 | 2016-08-16 | Cisco Technology, Inc. | Network congestion management using flow rebalancing |
CN106470116B (zh) * | 2015-08-20 | 2019-06-25 | 中国移动通信集团公司 | 一种网络故障检测与恢复方法及装置 |
US20170118108A1 (en) * | 2015-10-27 | 2017-04-27 | Futurewei Technologies, Inc. | Real Time Priority Selection Engine for Improved Burst Tolerance |
CN106911584B (zh) * | 2015-12-23 | 2020-04-14 | 华为技术有限公司 | 一种基于叶-脊拓扑结构的流量负载分担方法、装置及系统 |
CN106998302B (zh) * | 2016-01-26 | 2020-04-14 | 华为技术有限公司 | 一种业务流量的分配方法及装置 |
US10454830B2 (en) * | 2016-05-05 | 2019-10-22 | City University Of Hong Kong | System and method for load balancing in a data network |
CN107634912B (zh) * | 2016-07-19 | 2020-04-28 | 华为技术有限公司 | 负载均衡方法、装置及设备 |
US10715446B2 (en) * | 2016-09-12 | 2020-07-14 | Huawei Technologies Co., Ltd. | Methods and systems for data center load balancing |
CN108234320B (zh) * | 2016-12-14 | 2021-07-09 | 华为技术有限公司 | 报文传输方法及交换机 |
CN108243111B (zh) * | 2016-12-27 | 2021-08-27 | 华为技术有限公司 | 确定传输路径的方法和装置 |
CN108667739B (zh) * | 2017-03-27 | 2020-12-08 | 华为技术有限公司 | 拥塞控制方法、装置及系统 |
US10454839B1 (en) * | 2018-05-15 | 2019-10-22 | Cisco Technology, Inc. | Deadlock avoidance in leaf-spine networks |
CN111224888A (zh) * | 2018-11-27 | 2020-06-02 | 华为技术有限公司 | 发送报文的方法及报文转发设备 |
CN109802879B (zh) * | 2019-01-31 | 2021-05-28 | 新华三技术有限公司 | 一种数据流路由方法及装置 |
CN110351286B (zh) * | 2019-07-17 | 2021-05-18 | 东北大学 | 一种软件定义网络中链路洪泛攻击检测响应机制 |
CN111225031B (zh) * | 2019-12-17 | 2020-12-18 | 长沙星融元数据技术有限公司 | 云数据中心虚拟底层网络架构及其数据传输方法 |
CN112787925B (zh) * | 2020-10-12 | 2022-07-19 | 中兴通讯股份有限公司 | 拥塞信息收集方法、确定最优路径方法、网络交换机 |
-
2020
- 2020-10-12 CN CN202011083906.6A patent/CN112787925B/zh active Active
-
2021
- 2021-08-19 WO PCT/CN2021/113568 patent/WO2022078063A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2022078063A1 (zh) | 2022-04-21 |
CN112787925A (zh) | 2021-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112787925B (zh) | 拥塞信息收集方法、确定最优路径方法、网络交换机 | |
CN107579923B (zh) | 一种sdn网络的链路负载均衡方法和sdn控制器 | |
US8427958B2 (en) | Dynamic latency-based rerouting | |
US10075371B2 (en) | Communication system, control apparatus, packet handling operation setting method, and program | |
CN108243111B (zh) | 确定传输路径的方法和装置 | |
CA2882535C (en) | Control device discovery in networks having separate control and forwarding devices | |
US9397934B2 (en) | Methods for packet forwarding though a communication link of a distributed link aggregation group using mesh tagging | |
EP2737672B1 (en) | Resiliency-aware hybrid design of controller-switch connectivity in a split-architecture system | |
EP2544409B1 (en) | Generic monitoring packet handling mechanism for OpenFlow 1.1 | |
US10728154B2 (en) | Flow table processing method and apparatus | |
US9124509B2 (en) | Method, apparatus, and system for controlling network traffic switching | |
CN110351286B (zh) | 一种软件定义网络中链路洪泛攻击检测响应机制 | |
CN107800668B (zh) | 一种分布式拒绝服务攻击防御方法、装置及系统 | |
JPWO2012127894A1 (ja) | ネットワークシステム、及びスイッチ方法 | |
EP2879335A1 (en) | Control device, communication system, communication method and program | |
US9270593B2 (en) | Prediction based methods for fast routing of IP flows using communication/network processors | |
CN115037667A (zh) | 一种细粒度网络态势感知与源路由智能优化方法与装置 | |
CN112995036A (zh) | 网络流量的调度方法及装置 | |
CN110536187B (zh) | 转发数据的方法和接入层交换设备 | |
EP2916497A1 (en) | Communication system, path information exchange device, communication node, transfer method for path information and program | |
JP5935897B2 (ja) | 通信ノード、通信システム、制御装置、パケット転送方法及びプログラム | |
US20150334032A1 (en) | Control apparatus, communication system, communication node control method, and program | |
US20130336321A1 (en) | Relay forward system, path control device, and edge apparatus | |
CN108337181B (zh) | 一种交换网拥塞管理方法和装置 | |
CN116074236A (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 |