CN107005485B - 一种确定路由的方法、对应装置及系统 - Google Patents
一种确定路由的方法、对应装置及系统 Download PDFInfo
- Publication number
- CN107005485B CN107005485B CN201580065479.XA CN201580065479A CN107005485B CN 107005485 B CN107005485 B CN 107005485B CN 201580065479 A CN201580065479 A CN 201580065479A CN 107005485 B CN107005485 B CN 107005485B
- Authority
- CN
- China
- Prior art keywords
- service
- flow
- message
- time period
- determining
- 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 79
- 238000013507 mapping Methods 0.000 claims abstract description 74
- 230000004048 modification Effects 0.000 claims description 7
- 238000012986 modification Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 12
- 230000008859 change Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 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/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
-
- 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/38—Flow based routing
-
- 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
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- 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
- H04L47/28—Flow control; Congestion control in relation to timing considerations
-
- 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
-
- 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
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种确定路由的方法、对应装置及系统,用于解决现有技术中难以高效且灵活地实现业务节点负载均衡的问题。所述方法包括:接收第一流表项,第一流表项包括第一类业务流的报文的第一路由映射关系以及各业务节点的第一负载比例;接收第二流表项,第二流表项包括第一类业务流的第二路由映射关系、各业务节点的第二负载比例以及第二流表项的起始时间;接收第一业务流的第一报文;根据第一报文包含的业务链标识确定第一业务流为第一类业务流;判断时间戳对应的时间是否早于第二流表项的起始时间;若是,则根据第一流表项确定接收第一报文的业务节点;否则,则根据第二流表项确定接收第一报文的业务节点。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种确定路由的方法、对应装置及系统。
背景技术
在通信技术领域,用户发起的业务流通常需要由多个类型的业务功能(英文:Service Function;简称:SF)进行处理,且不同类型的业务流所需的业务功能可能不同。
现有技术中,为不同类型的业务流划分不同的业务链,针对每个业务链定义其所需经过的SF序列以及经过SF序列的顺序,不同业务链的业务流只需流经相应的业务节点即可。具体实施时,通过分类器对用户发起的业务流进行分类,在业务流的报文中添加业务链标识,然后,分类器将报文发送至转发机,转发机根据报文包含的业务链标识以及该业务链的业务流的路由映射关系确定接收该报文的下一业务节点。
实际情况中,同一类型SF可能包括多个业务节点,转发机在转发报文时需要考虑同一类型的多个业务节点的负载均衡,而且多个业务节点的动态负载随时间变化,但是现有技术中缺乏高效、灵活的实现业务节点负载均衡的方法。
发明内容
本申请实施例提供一种确定路由的方法、对应装置及系统,用于解决现有技术中难以高效且灵活地实现业务节点负载均衡的问题。
第一方面,本申请实施例提供一种确定路由的方法,包括:
接收第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段;
接收第二流表项,所述第二流表项包括所述第一业务链的业务流的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,所述第二有效时间段与所述第一有效时间段不同;
接收第一业务流的第一报文,所述第一报文包含第一业务链标识以及所述第一业务流的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;
根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;
将所述第一报文发送至确定出的业务节点。
在上述实现方式中,交换机接收第一流表项以及第二流表项,并根据第一报文包含的时间戳确定采用第一流表项确定第一报文的路由,还是采用第二流表项确定第一报文的路由。因此,交换机能够在因业务节点的负载情况变化生成新的流表项时,立即采用新流表项对新创建业务流的报文进行转发,并继续基于在先的流表项对之前已创建的业务流的报文进行转发,与现有技术等待现有现有报文处理完之后才根据新的流表项进行报文转发不同,本申请实施例提供的方案中,交换机能够及时调整路由策略,能够更灵活、更快速实现负载均衡。而且,本申请实施例提供的方案中,不用针对每一业务流生成流表项,而是针对同一类业务流生成流表项,流表项数量很少,系统开销较小,效率较高。
结合第一方面,在第一方面的第一种可能的实现方式中,
在所述接收第二流表项之后,还包括:
判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;
若是,则将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
上述可能的实现方式中,在后生成的第二流表项与先生成的第一流表项的生效时间冲突时,根据第二流表项的生效时间对第一流表项的生效时间进行修正,避免流表项间的冲突。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述第一时间戳生成负载均衡因子;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述第一报文还包括负载均衡因子,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
结合第一方面的第二种或第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述第一报文为所述第一业务流的首报文,在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,还包括:
接收所述第一业务流的第二报文;
将所述第二报文发送至所述第一业务节点。
上述可能的实现方式中,直接根据第一业务流的首报文的路由方式对第一业务流的首报文之后的报文进行转发,而不用通过计算逐一确定业务流的每一个报文的路由,大大减小了交换机的运算负担。
结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,还包括:
启动超时计时器;
在所述将所述第二报文发送至所述第一业务节点之前,还包括:
确定所述超时计时器未超时。
第二方面,本申请实施例提供一种确定路由的方法,包括:
接收第一业务流的第一报文;
根据所述第一报文包含的特征字段确定所述第一业务流为第一业务链的业务流;
在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
将所述第一报文发送至交换机。
上述可能实现方式中,分类器在对业务流的报文进行分类标识时,还在业务流的报文中添加了时间戳,给报文增加时间属性,使得交换机能够对不同时间段的报文采用不同的路由策略,以实现灵活、高效地进行业务节点的负载均衡。
结合第二方面,在第二方面的第一种可能的实现方式中,在将所述第一报文发送至交换机之前,还包括:
确定所述第一报文的负载均衡因子,并将所述负载均衡因子添加在所述第一报文中。
第三方面,本申请实施例提供一种确定路由的方法,包括:
获取第一时刻时各业务节点的第一当前负载;
生成第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段,所述第一负载比例为根据各业务节点的所述第一当前负载生成;
将所述第一流表项发送至交换机;
获取第二时刻时各业务节点的第二当前负载;
生成第二流表项,所述第二流表项包括所述第一类业务流的报文的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,其中,所述第二负载比例为根据各业务节点的所述第二当前负载生成,所述第二有效时间段与所述第一有效时间段不同;
将所述第二流表项发送至所述交换机。
上述可能的实现方式中,控制器能够在检测业务节点的负载发生变更时,能够立即生成第二流表项,将第二流表项发送给交换机,以使交换机能够根据在先的第一流表项处理已有报文,并且根据第二流表项处理新创建报文,灵活、高效地实现负载均衡。
第四方面,本申请实施例提供一种确定路由的装置,包括:
第一接收模块,用于接收第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段;以及接收第二流表项,所述第二流表项包括所述第一业务链的业务流的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,所述第二有效时间段与所述第一有效时间段不同;
第二接收模块,用于接收第一业务流的第一报文,所述第一报文包含第一业务链标识以及所述第一业务流的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
第一确定模块,用于从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;
第二确定模块,用于根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;
发送模块,用于将所述第一报文发送至确定出的业务节点。
结合第四方面,在第四方面的第一种可能的实现方式中,所述装置还包括:
修改模块,用于在接收第二流表项之后,判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;并在所述第二有效时间段的起始时间早于所述第一有效时间段的结束时间时,将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述第二确定模块具体用于:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述第一时间戳生成负载均衡因子;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第三种可能的实现方式中所述第一报文还包括负载均衡因子,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述第二确定模块具体用于:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
结合第四方面的第二种或第三种可能的实现方式,在第四方面的第四种可能的实现方式中,所述第一报文为所述第一业务流的首报文;
所述第二接收模块还用于:接收所述第一业务流的第二报文;
所述发送模块,还用于将所述第二报文发送至所述第一业务节点。
结合第四方面的第四种可能的实现方式,在第四方面的第五种可能的实现方式中,所述装置还包括:
第三确定模块,用于在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,启动超时计时器;并在所述将所述第二报文发送至所述第一业务节点之前,确定所述超时计时器未超时。
第五方面,本申请实施例提供一种确定路由的装置,包括:
接收模块,用于接收第一业务流的第一报文;
确定模块,用于根据所述报文包含的特征字段确定所述第一业务流为第一业务链的业务流;
标识模块,用于在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
发送模块,用于将所述第一报文发送至交换机。
结合第五方面,在第五方面的第一种可能的实现方式中,所述标识模块还用于:确定所述第一报文的负载均衡因子,并将所述负载均衡因子添加在所述第一报文中。
第六方面,本申请实施例提供一种确定路由的装置,包括:
第一获取模块,用于获取第一时刻时各业务节点的第一当前负载;
第一生成模块,用于生成第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段,所述第一负载比例为根据各业务节点的所述第一当前负载生成;
发送模块,用于将所述第一流表项发送至交换机;
第二获取模块,用于获取第二时刻时各业务节点的第二当前负载;
第二生成模块,用于生成第二流表项,所述第二流表项包括所述第一类业务流的报文的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,其中,所述第二负载比例为根据各业务节点的所述第二当前负载生成,所述第二有效时间段与所述第一有效时间段不同;
所述发送模块,还用于将所述第二流表项发送至所述交换机。
第七方面,本申请实施例提供一种确定路由的设备,包括:
接收机,用于接收第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段;以及接收第二流表项,所述第二流表项包括所述第一业务链的业务流的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,所述第二有效时间段与所述第一有效时间段不同;以及接收第一业务流的第一报文,所述第一报文包含第一业务链标识以及所述第一业务流的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
处理器,用于从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;
发射机,用于将所述第一报文发送至确定出的业务节点。
结合第七方面,在第七方面的第一种可能的实现方式中,所述处理器还用于:在接收第二流表项之后,判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;若是,则将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
结合第七方面或第七方面的第一种可能的实现方式,在第七方面的第二种可能的实现方式中,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述处理器用于:根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述第一时间戳生成负载均衡因子;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
结合第七方面或第七方面的第一种可能的实现方式,在第七方面的第三种可能的实现方式中,所述第一报文还包括负载均衡因子,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述处理器用于:根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
结合第七方面的第二种或第三种可能的实现方式,在第七方面的第四种可能的实现方式中,所述第一报文为所述第一业务流的首报文;
所述接收机还用于:接收所述第一业务流的第二报文;
所述发射机还用于:将所述第二报文发送至所述第一业务节点。
结合第七方面的第四种可能的实现方式,在第七方面的第五种可能的实现方式中,所述处理器还用于:在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,启动超时计时器;以及在指示所述发射机将所述第二报文发送至所述第一业务节点之前,确定所述超时计时器未超时。
第八方面,本申请实施例提供一种确定路由的设备,包括:
接收机,用于接收第一业务流的第一报文;
处理器,用于根据所述第一报文包含的特征字段确定所述第一业务流为第一业务链的业务流;以及在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
发射机,用于将所述第一报文发送至交换机。
结合第八方面,在第八方面的第一种可能的实现方式中,所述处理器还用于:确定所述第一报文的负载均衡因子,并将所述负载均衡因子添加在所述第一报文中。
第九方面,本申请实施例提供一种确定路由的设备,包括:
接收机,用于接收获取第一时刻时各业务节点的第一当前负载;
处理器,用于生成第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段,所述第一负载比例为根据各业务节点的所述第一当前负载生成;
发射机,用于将所述第一流表项发送至交换机;
所述接收机还用于:获取第二时刻时各业务节点的第二当前负载;
所述处理器还用于:生成第二流表项,所述第二流表项包括所述第一类业务流的报文的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,其中,所述第二负载比例为根据各业务节点的所述第二当前负载生成,所述第二有效时间段与所述第一有效时间段不同;
所述发射机还用于:将所述第二流表项发送至所述交换机。
第十方面,本申请实施例提供一种确定路由的系统,包括:
控制器,用于获取第一时刻时各业务节点的第一当前负载;生成第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段,所述第一负载比例为根据各业务节点的所述第一当前负载生成;将所述第一流表项发送至交换机;获取第二时刻时各业务节点的第二当前负载;生成第二流表项,所述第二流表项包括所述第一类业务流的报文的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,其中,所述第二负载比例为根据各业务节点的所述第二当前负载生成;将所述第二流表项发送至所述交换机,所述第二有效时间段与所述第一有效时间段不同;
分类器,用于接收第一业务流的第一报文;根据所述第一报文包含的特征字段确定所述第一业务流为第一业务链的业务流;在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;将所述第一报文发送至交换机;
所述交换机,用于接收第一流表项;接收第二流表项;接收第一业务流的第一报文;从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;将所述第一报文发送至确定出的业务节点。
结合第十方面,在第十方面的第一种可能的实现方式中,所述交换机还用于:在接收第二流表项之后,
判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;
若是,则将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
结合第十方面或第十方面的第一种可能的实现方式,所述第一报文为所述第一业务流的首报文;
所述交换机还用于:接收所述第一业务流的第二报文;将所述第二报文发送至所述第一业务节点。
结合第十方面或第十方面的第一或第二种可能的实现方式,在第十方面的第三种可能的实现方式中,所述交换机用于:根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述时间戳生成负载均衡因子;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
结合第十方面或第十方面的第一或第二种可能的实现方式,在第十方面的第四种可能的实现方式中,所述第一报文还包括负载均衡因子,所述交换机用于:根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
结合第十方面的第二种可能的实现方式,在第十方面的第五种可能的实现方式中,所述交换机在用于:从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,还用于:启动超时计时器;
所述交换机在用于:将所述第二报文发送至所述第一业务节点之前,还用于:确定所述超时计时器未超时。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为对报文进行路由的系统的示意图;
图2为本申请实施例中确定路由的方法的流程示意图;
图3为本申请实施例中确定路由的方法的进一步细化流程的示意图;
图4为本申请实施例中确定路由的方法的另一流程示意图;
图5为本申请实施例中确定路由的装置300的结构示意框图;
图6为本申请实施例中确定路由的装置400的结构示意框图;
图7为本申请实施例中确定路由的装置500的结构示意框图;
图8为本申请实施例中确定路由的设备600的结构示意框图;
图9为本申请实施例中确定路由的系统的示意图。
具体实施方式
为了便于理解本申请实施例提供的技术方案,下面首先介绍现有技术。
图1为现有移动宽带网络技术中实现业务流的路由以及负载均衡的系统的示意图,其中,策略和计费规则功能实体(Policy and Charging Rules Function;简称:PCRF)负责业务链决策功能,即确定某个类型的业务流需要经过哪些类型的业务节点处理,以及如何对业务流进行分类。策略和计费执行功能实体(Policy and Charging EnforcementFunction;简称:PCEF)用于根据PCRF制定的分类规则对业务流进行识别以及分类,在业务流的报文中插入用于表明业务流类型的标识。软件定义网络(Software Defined Network;简称:SDN)控制器(controller)负责获取各业务节点的信息,并根据业务节点的信息决定业务流的路由策略,即获取每个类型的业务节点分别有哪些,以及每个类型的多个业务节点各自的负载情况,然后确定每个业务节点当前的业务承载比例。SDN交换机负责根据SDN控制器确定的路由策略进行业务流报文的转发。
现有技术中,采用如下两种方式进行业务节点的负载均衡:
方式一,SDN控制器获取各业务节点的位置(对应的交换机及端口)、地址、容量、动态负载等信息,以及每个业务流的五元组信息及业务链标识(Identity;简称:ID),即,表示业务链类型的标识。
然后,SDN控制器根据各业务节点的信息为每个业务流生成一流表项,决定每个业务流需要流经的业务节点,将生成的流表项发送给SDN交换机,SDN交换机根据流表项定义进行该业务流的报文进行转发。
上述方式一中,SDN控制器针对每一业务流生成一流表项,导致流表项的数量非常之大,信令开销巨大,效率较低。
方式二,一个类型的业务流分配有多个业务链ID(比如1~1000),PCEF在对业务流进行分类标识时,对同一类型的业务流可以分配不同的业务链ID。
SDN控制器获取各业务节点的位置(对应的交换机及端口)、地址、容量、动态负载等信息,并根据业务节点的信息决定业务流的路由策略,比如类型1的业务节点有2个实例,容量比例为1∶1,则SDN控制器下发流表表项给SDN交换机,指示SDN交换机将业务链ID为1~500的业务流的报文路由到实例1,将业务链ID为501~1000的业务流的报文路由到实例2。
上述方式二中,对业务节点进行负载均衡的方式不够灵活,例如,类型1的业务节点再新增2个实例,容量和前两个相同,则可以将业务链ID为251~500、751~1000的业务流的报文分别迁移到新的2个实例,但是在方式二中,这种路由策略的改变,必须等待现有业务流的报文转发完毕之后才能执行。
因此,现有技术中缺乏高效、灵活的实现业务节点负载均衡的方法,为了解决这一问题,本申请实施例提供一种确定路由的方法、对应装置及系统。下面通过附图以及具体实施例对本发明技术方案做详细的说明,应当理解本申请实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情况下,本申请实施例以及实施例中的技术特征可以相互组合。
图2为本申请提供的确定路由的方法的流程示意图,该方法包括如下步骤:
步骤101:控制器获取第一时刻时各业务节点的第一当前负载,并根据获取的各业务节点的第一当前负载生成第一流表项,第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段,第一负载比例为根据各业务节点的第一当前负载生成;
步骤102:控制器将第一流表项发送至交换机;
步骤103:交换机接收第一流表项;
步骤104:控制器获取第二时刻时各业务节点的第二当前负载,并根据各业务节点的第二当前负载生成第二流表项,第二流表项包括第一类业务流的报文的第二路由映射关系、各业务节点的第二负载比例以及第二流表项的第二有效时间段,其中,第二负载比例为根据各业务节点的第二当前负载生成,所述第二有效时间段与所述第一有效时间段不同;
步骤105:控制器将第二流表项发送至交换机;
步骤106:交换机接收第二流表项;
步骤107:交换机接收第一业务流的第一报文,所述第一报文包含第一业务链标识以及所述第一业务流的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
步骤108:交换机从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;
步骤109:交换机根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;
步骤110:交换机将所述第一报文发送至确定出的业务节点。
具体的,控制器分别获取第一时刻以及第二时刻时业务节点的信息,业务节点的信息包括每个业务节点的位置、地址、容量、以及当前负载比例,其中,第一时刻的业务节点与第二时刻的业务节点可以不完全相同,例如,在第二时刻,系统中新增加了两个类型1的业务节点,第二时刻的业务节点包含第一时刻的业务节点以及新增的两个业务节点。
控制器分别根据第一时刻以及第二时刻时业务节点的信息生成流表项,流表项中包括第一类业务流的报文的路由映射关系以及各业务节点的负载比例。其中,第一流表项中的第一路由映射关系与第二流表项中的第二路由映射关系可以相同,也可以不相同,具体由各类型的业务节点是否发生增减所决定。
例如,第一时刻的第一路由映射关系中,需要将由分类器发送的第一类业务流的报文发送至类型1的业务节点,而类型1的业务节点包括第一业务节点以及第二业务节点。而在第二时刻时,新增加一个类型1的业务节点,为第三业务节点,因此,第二路由映射关系中,分类器发送的第一类业务流的报文被映射至第一业务节点、第二业务节点以及第三业务节点。即,业务节点的新增以及删减也可能引起路由映射关系的变更。
本申请实施例中,业务节点的第一负载比例与业务节点的第二负载比例不同,包括如下两种情况:
其一,如上述因业务节点增减导致路由映射关系变更时,各业务节点的负载比例将发生变更。
其二,在路由映射关系没有发生变化时,因业务节点的当前负载不均衡,控制器调整各业务节点的负载比例,其中,业务节点的当前负载包括:业务节点的剩余容量(当前可承载的业务量)以及当前负载比例,当前负载不均衡指的是业务节点的剩余容量与业务节点的当前负载比例不适应。
例如,在第一路由映射关系以及第二路由映射关系中,分类器发送的第一类业务流的报文均映射至第一业务节点和第二业务节点,在第一时刻,第一业务节点以及第二业务节点的剩余容量相同,因此,控制器将第一业务节点以及第二业务节点的第一负载比例均设置为50%。而在第二时刻,第一业务节点的剩余容量为第二业务节点的剩余容量的2倍,而第一业务节点与第二业务节点的当前负载比例均为50%,承载业务能力较强的第一业务节点与承载能力较小的第二业务节点的负载比例相同,第一业务节点与第二负载的当前负载不均衡。为了实现负载均衡,控制器可以将第一业务节点的第二负载比例调整至67%,而将第二业务节点的第二负载比例调整至33%。
因此,本申请实施例中,在第二时刻,控制器检测到业务链决策变更,或者业务节点增减,或者业务节点的当前负载不均衡时,控制器根据各业务节点在第二时刻的当前负载生成第二流表项,第二流表项中包含各业务节点的第二负载比例。
另外,由于控制器在第一时刻已经生成第一流表项,为了避免冲突,第二流表项中包含第二有效时间段与第一流表项的第一有效时间段不同第二流表项的起始时间可以为第二时刻,也可以为在第二时刻基础上增加一裕量所确定出的时间。
另一方面,交换机分别接收控制器发送的第一流表项以及第二流表项,根据第一流表项或第二流表项均确定第一类业务流的的路由。
首先,交换机接收业务流的第一报文,该第一报文可以来自系统的分类器,如PCEF、网关(Gateway)、流量监测功能实体(Traffic Detection Function;简称:TDF)等;第一报文还可以来自业务节点,例如,根据业务链决策,第一类业务流的报文依次需要流经作为防火墙的业务节点以及用户缓存和加速的第二业务节点,报文经过作为防火墙的业务节点之后,需要返回交换机,再通过交换机转发至用于缓存和加速的业务节点。
本申请实施例中,第一报文中包含业务链标识以及第一时间戳,其中,业务链标识以及第一时间戳可以为系统中的上述分类器所添加,第一时间戳可以为业务流的创建时间,即,分类器接收到第一业务流的首报文的时间。
交换机根据第一报文包含的业务链标识确定第一报文为第一类业务流的报文,需要通过第一流表项或者第二流表项确定第一报文的路由。交换机进一步判断第一报文包含的第一时间戳包含在第一有效时间段内,还是包含在第二有效时间段内。如果第一有效时间段包含第一时间戳对应的时间,则根据第一流表项确定第一报文的路由,如果第二有效时间段包含第一时间戳对应的时间,则根据第二流表项确定第一报文的路由。
实际情况中,交换机还可以接收针对第一业务链的业务流的路由策略的第三流表项,第三流表项的第三有效时间段誉第一有效时间段以及第二有效时间段均不同。亦即,交换机可以接收并保存针对同一业务链的业务流的路由策略的多个流表项,多个流表项各自的有效时间段均不同,交换机在接收到第一业务链的业务流的报文后,根据报文的时间戳选择适用的流表项。
本申请实施例上述技术方案中,控制器能够在检测到业务节点的负载情况不均衡时,能够立即根据当前的业务节点负载生成第二流表项,指示交换机根据第二路由映射关系以及第二负载比例确定包含的时间戳晚于第二流表项的起始时间的报文的路由,以实现业务节点的负载均衡。与现有技术中的上述方式一相比,本申请实施例提供的确定路由的方法中,针对每一类业务流生成流表项,而不用针对每一个流表项生成流表项,大大缩减系统开销。与现有技术中的上述方式二相比,本申请实施例提供的确定路由的方法,能够根据业务节点当前负载的变化即时调整确定路由的策略,而不用等待现有的报文处理后才进行路由策略的调整,更加高效、灵活。
需要说明的是,上述控制器可以为SDN网络架构中的SDN控制器,上述交换机可以为SDN网络中的SDN交换机。而如果不采用SDN网络架构,上述步骤101~步骤102、步骤104~步骤105可以由具有SDN架构中的SDN控制器相同或相似作用的网元所执行,上述步骤103、步骤106~步骤110可以由具有SDN架构中的SDN交换机相同或相似作用的网元所执行。另外,在其他网络架构中,控制器与交换机二者的功能也可以集成在一个网元上。
可选的,本申请实施例中,在步骤106:交换机接收第二流表项之后,还包括如下步骤:
判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;
若是,则将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。具体的,控制器下发给交换机的流表项中可以包含有有效时间段字段,用于表明流表项的有效时间。如果后接收(生成)的流表项的有效时间段与在先接收(生成)的流表项的有效时间段有重合,则通过在后的流表项定义的策略确定时间戳在重合时间段内的报文的路由,以响应最新的路由策略,快速实现负载均衡。
实际情况中,在生成流表项时,流表项中的有效时间段字段可以缺省,或者值为空,表明该该流表项的一直有效。
可选的,本申请实施例中,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
执行步骤109时,交换机具体根据第一流表项确定接收第一报文的业务节点,参照图3,包括如下步骤:
步骤1091:根据第一报文的输入节点以及第一路由映射关系,确定至少两个业务节点;
步骤1092:交换机根据第一时间戳生成负载均衡因子;
步骤1093:交换机根据至少两个业务节点各自的第一负载比例以及负载均衡因子,从至少两个业务节点中确定出用于接收第一报文的第一业务节点。
具体的,流表项中包含的路由映射关系指的是,第一类业务流的报文的输入节点与输出节点的映射关系,即交换机应将从第一输入节点处接收的报文转发至哪些业务节点。而流表项包含的业务节点负载比例指的是,根据路由映射关系确定出的至少两个业务节点各自承载业务的比例。
例如,流表项的一种可能的形式为:
“Match:InPort=0,SC-ID=1,T1=<TimeStamp<T2。
Output:OutPort=1,Ratio=50%;OutPort=2,Ratio=50%。”
其中,Match段落包含报文以及流表项的信息,InPort指的是输入节点的端口标识,SC-ID指的是业务链标识,又称为业务链ID,TimeStamp字段表明流表项的有效时间段为[T1,T2),如前所述,TimeStamp字段也可以缺省。Output段落包含的是输出节点的信息,OutPut指的是输出端口的标识,Ratio指的是对应输出端口的负载比例。上述流表项表明,将从端口0输入的报文发送至端口1或端口2,端口1与端口2的负载比例相同,即将报文平均分配至端口1和端口2。
上述步骤1091中,交换机获得第一报文的输入节点的标识,并根据输入节点的标识以及第一流表项中的路由映射关系确定出可能用于接收第一报文的至少两个业务节点。
然后,交换机根据第一报文的时间戳生成负载均衡因子,并结合负载均衡因子以及第一流表项中上述至少两个业务节点(步骤1091所确定出的业务节点)各自的负载比例,从至少两个业务节点中确定出用于接收第一报文的第一业务节点。
具体实施时,步骤1093包括如下方式:
方式1,交换机计算时间戳的哈希值,将计算出的哈希值作为负载均衡因子,并结合哈希值与业务节点的负载比例确定接收报文的业务节点。
例如,根据第一路由映射关系确定出两个可能的输出业务节点,分别为业务节点1以及业务节点2,其中,二者的负载比例均为50%,则根据时间戳计算哈希值之后,如果哈希值为奇数,则将报文发送至业务节点1,如果哈希值为偶数,则将报文发送至业务节点2。或者,确定一中间值,如果哈希值大于该中间值,则将报文发送至业务节点1,否则,将报文发送至业务节点2。
方式2,交换机也可以将时间戳本身作为负载均衡因子,根据时间戳以及业务节点的负载比例确定接收报文的业务节点。
例如,沿用上述业务节点1以及业务节点2的负载比例均为50%的例子来讲,如果时间戳的末位数为奇数,则将报文发送至业务节点1,如果时间戳的末位数为偶数,则将报文发送至业务节点2。或者,将时间戳在[T1,T1+T)范围内的报文发送至业务节点1,将时间戳在[T1+T,T1+2T)范围内的报文发送至业务节点2,然后,将时间戳在[T1+2T,T1+3T)范围内的报文又发送至业务节点1,依次类推。
方式3,交换机根据与时间戳无关的信息生成负载均衡因子,并根据负载均衡因子以及业务节点的负载比例确定接收报文的业务节点。
例如,交换机对接收到的第一类业务流进行累加计数,每个业务流对应的计数即为其报文的负载均衡因子,如,交换机为接收的第一个第一类业务流计数1,为接收的第二个第一类业务流计数2,以此类推,直至为第10个第一类业务流计数10,然后对业务流从1开始重新计数。沿用前述业务节点1以及业务节点2的负载比例均为50%的例子来讲,可以将计数为奇数的报文发送至业务节点1,将计数为偶数的报文发送至业务节点2。或者,将计数在[1,5]范围内的报文发送至业务节点1,将计数在[6,10]范围内的报文发送至业务节点2。
需要说明的是,上面仅列举了根据负载均衡因子以及业务节点的负载比例确定接收报文的业务节点的几种可能的实现方式,本领域技术人员还可以采用现有技术中的其他可能的实现方式来确定接收报文的业务节点,本申请实施例在此不一一举例。
可选的,本申请实施例中,第一报文本身包含有负载均衡因子,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
执行步骤109时,交换机具体根据第一流表项确定接收第一报文的业务节点,包括如下步骤:
步骤1091:交换机根据第一报文的输入节点以及第一路由映射关系,确定至少两个业务节点;
步骤1093:交换机根据至少两个业务节点各自的第一负载比例以及负载均衡因子,从至少两个业务节点中确定出用于接收第一报文的第一业务节点。
具体的,分类器在对业务流的报文进行标识时,可以计算出报文的负载均衡因子,将负载均衡因子添加到报文之中。交换机无需计算负载均衡因子,直接从报文中获取负载均衡因子,确定接收报文的业务节点。其中,分类器计算负载均衡因子的方式以及步骤1093的实现方式请参照上述方式1、方式2以及方式3,在此不再重复。
在上述技术方案中,通过在报文中添加负载均衡因子,使得交换机可以不用再计算负载均衡因子,减轻了交换机的负担。
需要说明的是,在步骤109的上述两种实现方式中,第一流表项包含的业务节点的第一负载比例,可以以前面例子的“Ratio”字段形式呈现,即业务节点各自承载的业务比例,业务节点的第一负载比例也可以直接是业务节点对应的负载均衡因子的范围,例如,业务节点1的第一负载比例的表现形式可以为“LB=<Max/2”,业务节点2的第一负载比例的表现形式可以为“Max/2<LB=<Max”,其中,LB即负载均衡因子。
再者,本申请实施例的技术方案中,可以有多个交换机,第一报文经过第一业务节点处理后,需要返回交换机,由交换机转发至下一业务节点,将第一报文发送至第一业务节点的交换机与接收第一业务节点发送的报文的交换机可以相同,也可以不同。如果本申请实施例中,负载均衡因子的算法统一,即使发生交换机切换,也可以保证报文路由的一致。
可选的,本申请实施例中,第一报文为第一业务流的首报文,在步骤1093:交换机从至少两个业务节点中确定出用于接收第一报文的第一业务节点之后,还包括如下步骤:
步骤111:交换机接收第一业务流的第二报文;
步骤112:交换机将第二报文发送至第一业务节点。
具体的,由于第一业务流的所有报文的转发路径相同,所以,交换机在确定出接收第一业务流的首报文的业务节点为第一业务节点之后,直接将第一业务流的首报文之后的报文发送至第一业务节点,而无需根据负载比例以及路由映射关系来逐一确定报文路由。
具体实施时,交换机在确定出接收第一业务流的首报文的业务节点为第一业务节点之后,可以生成新的流表项,在该新的流表项中定义将第一业务流的报文发送至第一业务节点,交换机在接收到第一业务流的在后报文时,根据该新的流表项即可直接将报文转发至第一业务节点,而无需通过执行步骤1093来确定接收报文的下一业务节点。
上述步骤111~步骤112既适用于上述第一报文中不包含负载均衡因子时确定报文路由的技术方案,也适用于上述第一报文中包含负载均衡因子时确定报文路由的技术方案,通过直接根据第一业务流的首报文的路由方式对第一业务流的首报文之后的报文进行转发,而不用通过计算逐一确定业务流的每一个报文的路由,大大减小了交换机的运算负担。
可选的,本申请实施例中,在上述步骤1093:交换机从至少两个业务节点中确定出用于接收第一报文的第一业务节点之后,参照图4,还包括如下步骤:
步骤113:交换机启动超时计时器;
在步骤112:交换机将第二报文发送至第一业务节点之前,还包括如下步骤:
步骤114:交换机确定超时计时器未超时。
具体的,在通过步骤111~步骤113的方式进行报文的直接转发时,设置一超时计时器,在超时计时器未超时时,通过上述步骤111~步骤112进行第一业务流的非首报文的转发。
而在上述超时计时器超时后,可以采用如下方式进行报文转发:
其一,在超时计时器超时的时刻,判断是否存在待处理(转发)的第一业务流的报文,如果存在,则重置计时器,直至超时计时器超时不存在第一业务流的报文,则撤销该超时计时器。
其二,对超时计时器超时后的首个报文,采用步骤1093的方式确定接收它的业务节点,然后,又新建超时计时器,执行步骤114、步骤112。其中,在先的超时计时器可以予以撤销。
采用上述技术方案的目的包括:如前所述,步骤111、步骤112的执行通常采用新建流表项来实现,采用上述超时计时器的方案可以让新建的流表项进行老化,并在第一业务流的报文处理完之后,删除新建的流表项,以减少流表项的数目,减小开销。
基于相同的发明构思,本申请实施例还提供一种确定路由的方法,继续参照图2,该方法包括如下步骤:
步骤201:分类器接收第一业务流的第一报文;
步骤202:分类器根据第一报文包含的特征字段确定第一业务流为第一业务链的业务流;
步骤203:分类器在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
步骤204:分类器将第一报文发送至交换机。
具体的,上述步骤201至步骤204可以由业务链架构中的分类器执行,分类器具体可以为PCEF、网关或者TDF,等等。实际情况中,上述步骤201至步骤204可以由与业务链架构中的分类器起相同或相似作用的其他网元执行。
本申请实施例中,分类器根据业务链决策策略对业务流进行分类标识,业务链决策策略中包含对业务流进行标识的规则,由业务链架构中的PCRF生成,分类器从PCRF处获取,具体可以为PUSH模式或者PULL模式,其中,PUSH模式指的是PCRF主动将用户相关业务流的业务链分类规则推送到分类器;PULL模式则是分类器在收到用户发起的某个业务流时,到PCRF上拉取对应的业务链决策策略。
上述技术方案中,分类器在对业务流的报文进行分类标识时,还在业务流的报文中添加了时间戳,给报文增加时间属性,使得交换机能够对不同时间段的报文采用不同的路由策略,以实现灵活、高效地进行业务节点的负载均衡。
再者,本申请实施例上述技术方案中,将业务流的业务链决策、业务流的识别、业务流的标识与业务流的路由解耦,负载均衡策略的实施由控制器和交换机实现,不需要和PCRF以及分类器进行信令交互,提高了网络效率;
可选的,本申请实施例中,在步骤204之前,还包括如下步骤:
步骤205:分类器确定第一报文的负载均衡因子,并将负载均衡因子添加在第一报文中。
具体的,分类器可以根据时间戳计算报文的负载均衡因子,也可以根据与时间戳无关的其他信息生成报文的负载均衡因子,其实现方式与前述步骤1093的实现方式1、方式2或方式3相类似,在此不再重复。
通过由分类器添加负载在报文中添加均衡因子,能够减小交换机的运算负担。
基于相同的技术构思,本申请实施例还提供了一种确定路由的装置300,参照图5,装置300包括:
第一接收模块301,用于接收第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段;以及接收第二流表项,所述第二流表项包括所述第一业务链的业务流的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,所述第二有效时间段与所述第一有效时间段不同;
第二接收模块302,用于接收第一业务流的第一报文,所述第一报文包含第一业务链标识以及所述第一业务流的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
第一确定模块303,用于从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;
第二确定模块304,用于根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;
发送模块305,用于将所述第一报文发送至确定出的业务节点。
可选的,本申请实施例中,所述装置还包括:
修改模块306,用于在接收第二流表项之后,判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;并在所述第二有效时间段的起始时间早于所述第一有效时间段的结束时间时,将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
可选的,本申请实施例中,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述第二确定模块304具体用于:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述第一时间戳生成负载均衡因子;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
可选的,本申请实施例中,所述第一报文还包括负载均衡因子,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述第二确定模块304具体用于:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
可选的,本申请实施例中,第一报文为第一业务流的首报文;
第二接收模块302还用于:接收第一业务流的第二报文;
发送模块305还用于:将第二报文发送至第一业务节点。
可选的,本申请实施例中,装置还包括:
第三确定模块307,用于在从至少两个业务节点中确定出用于接收第一报文的第一业务节点之后,启动超时计时器;并在将第二报文发送至第一业务节点之前,确定超时计时器未超时。
本实施例中的装置300与图2至图4对应的方法是基于同一发明构思下的两个方面,在前面已经对方法的实施过程作了详细的描述,所以本领域技术人员可根据前述描述清楚地了解本实施例中的装置300的结构及实施过程,为了说明书的简洁,在此就不再赘述了。
基于相同的发明构思,本申请实施例还提供一种确定路由的装置400,参照图6,装置400包括:
接收模块401,用于接收第一业务流的第一报文;
确定模块402,用于根据所述报文包含的特征字段确定所述第一业务流为第一业务链的业务流;
标识模块403,用于在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
发送模块404,用于将所述第一报文发送至交换机。
可选的,本申请实施例中,标识模块403还用于:确定所述第一报文的负载均衡因子,并将所述负载均衡因子添加在所述第一报文中。
本实施例中的装置400与图2至图4对应的方法是基于同一发明构思下的两个方面,在前面已经对方法的实施过程作了详细的描述,所以本领域技术人员可根据前述描述清楚地了解本实施例中的装置400的结构及实施过程,为了说明书的简洁,在此就不再赘述了。
基于相同的发明构思,本申请实施例还提供一种确定路由的装置500,参照图7,装置500包括:
第一获取模块501,用于获取第一时刻时各业务节点的第一当前负载;
第一生成模块502,用于生成第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段,所述第一负载比例为根据各业务节点的所述第一当前负载生成;
发送模块503,用于将第一流表项发送至交换机;
第二获取模块504,用于获取第二时刻时各业务节点的第二当前负载;
第二生成模块505,用于生成第二流表项,所述第二流表项包括所述第一类业务流的报文的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,其中,所述第二负载比例为根据各业务节点的所述第二当前负载生成,所述第二有效时间段与所述第一有效时间段不同;
发送模块503,还用于将第二流表项发送至交换机。
本实施例中的装置500与图2至图4对应的方法是基于同一发明构思下的两个方面,在前面已经对方法的实施过程作了详细的描述,所以本领域技术人员可根据前述描述清楚地了解本实施例中的装置500的结构及实施过程,为了说明书的简洁,在此就不再赘述了。
基于相同的发明构思,本申请实施例还提供一种确定路由的设备600,参照图8,设备600包括:
接收机601,用于接收第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段;以及接收第二流表项,所述第二流表项包括所述第一业务链的业务流的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,所述第二有效时间段与所述第一有效时间段不同;以及接收第一业务流的第一报文,所述第一报文包含第一业务链标识以及所述第一业务流的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
处理器602,用于从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;
发射机603,用于将所述第一报文发送至确定出的业务节点。
可选的,本申请实施例中,处理器602还用于:在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,启动超时计时器;以及在指示所述发射机将所述第二报文发送至所述第一业务节点之前,确定所述超时计时器未超时。
可选的,本申请实施例中,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
处理器602用于:根据第一流表项确定接收第一报文的业务节点,包括:
根据第一报文的输入节点以及第一路由映射关系,确定至少两个业务节点;
根据时间戳生成负载均衡因子;
根据至少两个业务节点各自的第一负载比例以及负载均衡因子,从至少两个业务节点中确定出用于接收第一报文的第一业务节点。
可选的,本申请实施例中,第一报文还包括负载均衡因子,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
处理器602用于:根据第一流表项确定接收第一报文的业务节点,包括:
根据第一报文的输入节点以及第一路由映射关系,确定至少两个业务节点;
根据至少两个业务节点各自的第一负载比例以及负载均衡因子,从至少两个业务节点中确定出用于接收第一报文的第一业务节点。
可选的,本申请实施例中,第一报文为第一业务流的首报文;
接收机601还用于:接收第一业务流的第二报文;
发射机还用于:将第二报文发送至第一业务节点。
可选的,本申请实施例中,处理器602还用于:在从至少两个业务节点中确定出用于接收第一报文的第一业务节点之后,启动超时计时器;以及在指示发射机将第二报文发送至第一业务节点之前,确定超时计时器未超时。
可选的本申请实施例中,设备600还包括存储器604,用于存储接收的报文以及流表项。
本实施例中的设备600与图2至图4对应的方法是基于同一发明构思下的两个方面,在前面已经对方法的实施过程作了详细的描述,所以本领域技术人员可根据前述描述清楚地了解本实施例中的设备600的结构及实施过程,为了说明书的简洁,在此就不再赘述了。
基于相同的发明构思,本申请实施例还提供一种确定路由的设备,包括:
接收机,用于接收第一业务流的第一报文;
处理器,用于根据所述第一报文包含的特征字段确定所述第一业务流为第一业务链的业务流;以及在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;
发射机,用于将所述第一报文发送至交换机。
可选的,本申请实施例中,所述处理器还用于:确定所述第一报文的负载均衡因子,并将所述负载均衡因子添加在所述第一报文中。
可选的本申请实施例中,设备还包括存储器,用于存储接收的报文。
本实施例中的设备与图2至图4对应的方法是基于同一发明构思下的两个方面,在前面已经对方法的实施过程作了详细的描述,所以本领域技术人员可根据前述描述清楚地了解本实施例中的设备的结构及实施过程,为了说明书的简洁,在此就不再赘述了。
基于相同的发明构思,本申请实施例还提供一种确定路由的设备,包括:
接收机,用于接收获取第一时刻时各业务节点的第一当前负载;
处理器,用于生成第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段,所述第一负载比例为根据各业务节点的所述第一当前负载生成;
发射机,用于将第一流表项发送至交换机;
接收机还用于:获取第二时刻时各业务节点的第二当前负载;
处理器还用于:生成第二流表项,所述第二流表项包括所述第一类业务流的报文的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,其中,所述第二负载比例为根据各业务节点的所述第二当前负载生成,所述第二有效时间段与所述第一有效时间段不同;
发射机还用于:将第二流表项发送至交换机。
可选的本申请实施例中,设备还包括存储器,用于存储接收的业务节点的负载信息以及生成的流表项。
本实施例中的设备与图2至图4对应的方法是基于同一发明构思下的两个方面,在前面已经对方法的实施过程作了详细的描述,所以本领域技术人员可根据前述描述清楚地了解本实施例中的设备的结构及实施过程,为了说明书的简洁,在此就不再赘述了。
需要说明的是,以上处理器可以是一个处理芯片,也可以是多个处理元件的统称。例如,上述处理器可以是中央处理器(英文:Central Processing Unit;简称:CPU),也可以是特定集成电路(英文:Application Specific Intergrated Circuit;简称:ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路,例如:一个或多个微处理器(英文:digital singnal processor;简称:DSP),或,一个或者多个现场可编程门阵列(英文:Field Programmable Gate Array;简称:FPGA)。
再者,上述接收机与发射机能够集成在一起。
基于相同的发明构思,本申请实施例还提供一种确定路由的系统,参照图9,系统包括:
控制器701,用于获取第一时刻时各业务节点的第一当前负载;生成第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段,所述第一负载比例为根据各业务节点的所述第一当前负载生成;将所述第一流表项发送至交换机;获取第二时刻时各业务节点的第二当前负载;生成第二流表项,所述第二流表项包括所述第一类业务流的报文的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,其中,所述第二负载比例为根据各业务节点的所述第二当前负载生成;将所述第二流表项发送至所述交换机,所述第二有效时间段与所述第一有效时间段不同;
分类器702,用于接收第一业务流的第一报文;根据所述第一报文包含的特征字段确定所述第一业务流为第一业务链的业务流;在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的创建时间;将所述第一报文发送至交换机;
交换机703,用于接收第一流表项;接收第二流表项;接收第一业务流的第一报文;从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;将所述第一报文发送至确定出的业务节点。
可选的,本申请实施例中,所述交换机703还用于:在接收第二流表项之后,
判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;
若是,则将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
可选的,本申请实施例中,第一报文为第一业务流的首报文;
交换机703还用于:接收第一业务流的第二报文;将第二报文发送至第一业务节点。
本实施例中的系统与图2至图4对应的方法是基于同一发明构思下的两个方面,在前面已经对方法的实施过程作了详细的描述,所以本领域技术人员可根据前述描述清楚地了解本实施例中的系统的结构及实施过程,为了说明书的简洁,在此就不再赘述了。
本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本申请实施例中,交换机接收第一流表项以及第二流表项,并根据第一报文包含的时间戳确定采用第一流表项确定第一报文的路由,还是采用第二流表项确定第一报文的路由。因此,交换机能够在因业务节点的负载情况变化生成新的流表项时,立即采用新流表项对新创建业务流的报文进行转发,并继续基于在先的流表项对之前已创建的业务流的报文进行转发,与现有技术等待现有现有报文处理完之后才根据新的流表项进行报文转发不同,本申请实施例提供的方案中,交换机能够及时调整路由策略,能够更灵活、更快速实现负载均衡。而且,本申请实施例提供的方案中,不用针对每一业务流生成流表项,而是针对同一类业务流生成流表项,流表项数量很少,系统开销较小,效率较高。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (33)
1.一种确定路由的方法,其特征在于,包括:
接收第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段;
接收第二流表项,所述第二流表项包括所述第一业务链的业务流的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,所述第二有效时间段与所述第一有效时间段不同;
接收第一业务流的第一报文,所述第一报文包含第一业务链标识以及所述第一业务流的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的首报文的创建时间,所述第一业务流包括多个报文;
从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;
根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;
将所述第一报文发送至确定出的业务节点。
2.如权利要求1所述的方法,其特征在于,在所述接收第二流表项之后,还包括:
判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;
若是,则将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
3.如权利要求1或2所述的方法,其特征在于,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述第一时间戳生成负载均衡因子;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
4.如权利要求1或2所述的方法,其特征在于,所述第一报文还包括负载均衡因子,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
5.如权利要求3所述的方法,其特征在于,所述第一报文为所述第一业务流的首报文,在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,还包括:
接收所述第一业务流的第二报文;
将所述第二报文发送至所述第一业务节点。
6.如权利要求4所述的方法,其特征在于,所述第一报文为所述第一业务流的首报文,在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,还包括:
接收所述第一业务流的第二报文;
将所述第二报文发送至所述第一业务节点。
7.如权利要求5所述的方法,其特征在于,在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,还包括:
启动超时计时器;
在所述将所述第二报文发送至所述第一业务节点之前,还包括:
确定所述超时计时器未超时。
8.如权利要求6所述的方法,其特征在于,在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,还包括:
启动超时计时器;
在所述将所述第二报文发送至所述第一业务节点之前,还包括:
确定所述超时计时器未超时。
9.一种确定路由的方法,其特征在于,包括:
接收第一业务流的第一报文;
根据所述第一报文包含的特征字段确定所述第一业务流为第一业务链的业务流;
在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的首报文的创建时间,所述第一业务流包括多个报文;
将所述第一报文发送至交换机。
10.如权利要求9所述的方法,其特征在于,在将所述第一报文发送至交换机之前,还包括:
确定所述第一报文的负载均衡因子,并将所述负载均衡因子添加在所述第一报文中。
11.一种确定路由的装置,其特征在于,包括:
第一接收模块,用于接收第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段;以及接收第二流表项,所述第二流表项包括所述第一业务链的业务流的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,所述第二有效时间段与所述第一有效时间段不同;
第二接收模块,用于接收第一业务流的第一报文,所述第一报文包含第一业务链标识以及所述第一业务流的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的首报文的创建时间,所述第一业务流包括多个报文;
第一确定模块,用于从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;
第二确定模块,用于根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;
发送模块,用于将所述第一报文发送至确定出的业务节点。
12.如权利要求11所述的装置,其特征在于,所述装置还包括:
修改模块,用于在接收第二流表项之后,判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;并在所述第二有效时间段的起始时间早于所述第一有效时间段的结束时间时,将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
13.如权利要求11或12所述的装置,其特征在于,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述第二确定模块具体用于:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述第一时间戳生成负载均衡因子;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
14.如权利要求11或12所述的装置,其特征在于,所述第一报文还包括负载均衡因子,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述第二确定模块具体用于:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
15.如权利要求13所述的装置,其特征在于,所述第一报文为所述第一业务流的首报文;
所述第二接收模块还用于:接收所述第一业务流的第二报文;
所述发送模块,还用于将所述第二报文发送至所述第一业务节点。
16.如权利要求14所述的装置,其特征在于,所述第一报文为所述第一业务流的首报文;
所述第二接收模块还用于:接收所述第一业务流的第二报文;
所述发送模块,还用于将所述第二报文发送至所述第一业务节点。
17.如权利要求15所述的装置,其特征在于,所述装置还包括:
第三确定模块,用于在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,启动超时计时器;并在所述将所述第二报文发送至所述第一业务节点之前,确定所述超时计时器未超时。
18.如权利要求16所述的装置,其特征在于,所述装置还包括:
第三确定模块,用于在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,启动超时计时器;并在所述将所述第二报文发送至所述第一业务节点之前,确定所述超时计时器未超时。
19.一种确定路由的装置,其特征在于,包括:
接收模块,用于接收第一业务流的第一报文;
确定模块,用于根据所述报文包含的特征字段确定所述第一业务流为第一业务链的业务流;
标识模块,用于在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的首报文的创建时间,所述第一业务流包括多个报文;
发送模块,用于将所述第一报文发送至交换机。
20.如权利要求19所述的装置,其特征在于,所述标识模块还用于:确定所述第一报文的负载均衡因子,并将所述负载均衡因子添加在所述第一报文中。
21.一种确定路由的设备,其特征在于,包括:
接收机,用于接收第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段;以及接收第二流表项,所述第二流表项包括所述第一业务链的业务流的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,所述第二有效时间段与所述第一有效时间段不同;以及接收第一业务流的第一报文,所述第一报文包含第一业务链标识以及所述第一业务流的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的首报文的创建时间,所述第一业务流包括多个报文;
处理器,用于从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;
发射机,用于将所述第一报文发送至确定出的业务节点。
22.如权利要求21所述的设备,其特征在于,所述处理器还用于:在接收第二流表项之后,判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;若是,则将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
23.如权利要求21或22所述的设备,其特征在于,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述处理器用于:根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述第一时间戳生成负载均衡因子;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
24.如权利要求21或22所述的设备,其特征在于,所述第一报文还包括负载均衡因子,从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段为所述第一时间段;
所述处理器用于:根据所述第一流表项确定接收所述第一报文的业务节点,包括:
根据所述第一报文的输入节点以及所述第一路由映射关系,确定至少两个业务节点;
根据所述至少两个业务节点各自的所述第一负载比例以及所述负载均衡因子,从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点。
25.如权利要求23所述的设备,其特征在于,所述第一报文为所述第一业务流的首报文;
所述接收机还用于:接收所述第一业务流的第二报文;
所述发射机还用于:将所述第二报文发送至所述第一业务节点。
26.如权利要求24所述的设备,其特征在于,所述第一报文为所述第一业务流的首报文;
所述接收机还用于:接收所述第一业务流的第二报文;
所述发射机还用于:将所述第二报文发送至所述第一业务节点。
27.如权利要求25所述的设备,其特征在于,所述处理器还用于:在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,启动超时计时器;以及在指示所述发射机将所述第二报文发送至所述第一业务节点之前,确定所述超时计时器未超时。
28.如权利要求26所述的设备,其特征在于,所述处理器还用于:在所述从所述至少两个业务节点中确定出用于接收所述第一报文的第一业务节点之后,启动超时计时器;以及在指示所述发射机将所述第二报文发送至所述第一业务节点之前,确定所述超时计时器未超时。
29.一种确定路由的设备,其特征在于,包括:
接收机,用于接收第一业务流的第一报文;
处理器,用于根据所述第一报文包含的特征字段确定所述第一业务流为第一业务链的业务流;以及在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的首报文的创建时间,所述第一业务流包括多个报文;
发射机,用于将所述第一报文发送至交换机。
30.如权利要求29所述的设备,其特征在于,所述处理器还用于:确定所述第一报文的负载均衡因子,并将所述负载均衡因子添加在所述第一报文中。
31.一种确定路由的系统,其特征在于,包括:
控制器,用于获取第一时刻时各业务节点的第一当前负载;生成第一流表项,所述第一流表项包括第一业务链的业务流的第一路由映射关系、各业务节点的第一负载比例以及所述第一流表项的第一有效时间段,所述第一负载比例为根据各业务节点的所述第一当前负载生成;将所述第一流表项发送至交换机;获取第二时刻时各业务节点的第二当前负载;生成第二流表项,所述第二流表项包括所述第一业务链的业务流的报文的第二路由映射关系、各业务节点的第二负载比例以及所述第二流表项的第二有效时间段,其中,所述第二负载比例为根据各业务节点的所述第二当前负载生成;将所述第二流表项发送至所述交换机,所述第二有效时间段与所述第一有效时间段不同;
分类器,用于接收第一业务流的第一报文;根据所述第一报文包含的特征字段确定所述第一业务流为第一业务链的业务流;在所述第一报文中添加第一业务链标识以及所述第一报文的第一时间戳,所述第一业务链标识表明所述第一业务流为所述第一业务链的业务流,所述第一时间戳为所述第一业务流的首报文的创建时间,所述第一业务流包括多个报文;将所述第一报文发送至交换机;
所述交换机,用于接收第一流表项;接收第二流表项;接收第一业务流的第一报文;从所述第一有效时间段以及所述第二有效时间段中确定出包括所述第一时间戳的时间段;根据确定出的时间段对应的流表项确定接收所述第一报文的业务节点;将所述第一报文发送至确定出的业务节点。
32.如权利要求31所述的系统,其特征在于,所述交换机还用于:在接收第二流表项之后,
判断所述第二有效时间段的起始时间是否早于所述第一有效时间段的结束时间;
若是,则将所述第一有效时间段的结束时间修改为所述第二有效时间段的起始时间。
33.如权利要求31或32所述的系统,其特征在于,所述第一报文为所述第一业务流的首报文;
所述交换机还用于:接收所述第一业务流的第二报文;将所述第二报文发送至所述第一业务节点。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2015/093525 WO2017070970A1 (zh) | 2015-10-31 | 2015-10-31 | 一种确定路由的方法、对应装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107005485A CN107005485A (zh) | 2017-08-01 |
CN107005485B true CN107005485B (zh) | 2020-07-24 |
Family
ID=58631125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580065479.XA Active CN107005485B (zh) | 2015-10-31 | 2015-10-31 | 一种确定路由的方法、对应装置及系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10547541B2 (zh) |
EP (1) | EP3361684B1 (zh) |
CN (1) | CN107005485B (zh) |
RU (1) | RU2692042C1 (zh) |
SG (1) | SG11201803460TA (zh) |
WO (1) | WO2017070970A1 (zh) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9225638B2 (en) | 2013-05-09 | 2015-12-29 | Vmware, Inc. | Method and system for service switching using service tags |
US10454714B2 (en) | 2013-07-10 | 2019-10-22 | Nicira, Inc. | Method and system of overlay flow control |
US10135737B2 (en) | 2014-09-30 | 2018-11-20 | Nicira, Inc. | Distributed load balancing systems |
US9825810B2 (en) | 2014-09-30 | 2017-11-21 | Nicira, Inc. | Method and apparatus for distributing load among a plurality of service nodes |
US10135789B2 (en) | 2015-04-13 | 2018-11-20 | Nicira, Inc. | Method and system of establishing a virtual private network in a cloud service for branch networking |
US11706127B2 (en) | 2017-01-31 | 2023-07-18 | Vmware, Inc. | High performance software-defined core network |
US20180219765A1 (en) | 2017-01-31 | 2018-08-02 | Waltz Networks | Method and Apparatus for Network Traffic Control Optimization |
US10992568B2 (en) | 2017-01-31 | 2021-04-27 | Vmware, Inc. | High performance software-defined core network |
US20200036624A1 (en) | 2017-01-31 | 2020-01-30 | The Mode Group | High performance software-defined core network |
US10778528B2 (en) | 2017-02-11 | 2020-09-15 | Nicira, Inc. | Method and system of connecting to a multipath hub in a cluster |
US10523539B2 (en) | 2017-06-22 | 2019-12-31 | Nicira, Inc. | Method and system of resiliency in cloud-delivered SD-WAN |
CN109525497B (zh) * | 2017-09-18 | 2021-08-03 | 华为技术有限公司 | 一种流量分组方法、数据中心网络系统以及控制器 |
US11005684B2 (en) | 2017-10-02 | 2021-05-11 | Vmware, Inc. | Creating virtual networks spanning multiple public clouds |
US10999100B2 (en) | 2017-10-02 | 2021-05-04 | Vmware, Inc. | Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider |
US11115480B2 (en) | 2017-10-02 | 2021-09-07 | Vmware, Inc. | Layer four optimization for a virtual network defined over public cloud |
US10797966B2 (en) | 2017-10-29 | 2020-10-06 | Nicira, Inc. | Service operation chaining |
US11223514B2 (en) | 2017-11-09 | 2022-01-11 | Nicira, Inc. | Method and system of a dynamic high-availability mode based on current wide area network connectivity |
US10805192B2 (en) | 2018-03-27 | 2020-10-13 | Nicira, Inc. | Detecting failure of layer 2 service using broadcast messages |
US11595250B2 (en) | 2018-09-02 | 2023-02-28 | Vmware, Inc. | Service insertion at logical network gateway |
US11288088B2 (en) | 2019-02-22 | 2022-03-29 | Vmware, Inc. | Service control plane messaging in service data plane |
US11171885B2 (en) | 2019-08-27 | 2021-11-09 | Vmware, Inc. | Providing recommendations for implementing virtual networks |
US11044190B2 (en) | 2019-10-28 | 2021-06-22 | Vmware, Inc. | Managing forwarding elements at edge nodes connected to a virtual network |
US11140218B2 (en) | 2019-10-30 | 2021-10-05 | Vmware, Inc. | Distributed service chain across multiple clouds |
US11394640B2 (en) | 2019-12-12 | 2022-07-19 | Vmware, Inc. | Collecting and analyzing data regarding flows associated with DPI parameters |
US11489783B2 (en) | 2019-12-12 | 2022-11-01 | Vmware, Inc. | Performing deep packet inspection in a software defined wide area network |
US11659061B2 (en) * | 2020-01-20 | 2023-05-23 | Vmware, Inc. | Method of adjusting service function chains to improve network performance |
US12041479B2 (en) | 2020-01-24 | 2024-07-16 | VMware LLC | Accurate traffic steering between links through sub-path path quality metrics |
US11792112B2 (en) | 2020-04-06 | 2023-10-17 | Vmware, Inc. | Using service planes to perform services at the edge of a network |
US11245641B2 (en) | 2020-07-02 | 2022-02-08 | Vmware, Inc. | Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN |
US11709710B2 (en) | 2020-07-30 | 2023-07-25 | Vmware, Inc. | Memory allocator for I/O operations |
US11575591B2 (en) | 2020-11-17 | 2023-02-07 | Vmware, Inc. | Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN |
US11575600B2 (en) * | 2020-11-24 | 2023-02-07 | Vmware, Inc. | Tunnel-less SD-WAN |
US11893428B1 (en) * | 2020-11-25 | 2024-02-06 | Amazon Technologies, Inc. | Tracing service interactions without global transaction identifiers |
US11611625B2 (en) | 2020-12-15 | 2023-03-21 | Vmware, Inc. | Providing stateful services in a scalable manner for machines executing on host computers |
US11734043B2 (en) | 2020-12-15 | 2023-08-22 | Vmware, Inc. | Providing stateful services in a scalable manner for machines executing on host computers |
US11601356B2 (en) | 2020-12-29 | 2023-03-07 | Vmware, Inc. | Emulating packet flows to assess network links for SD-WAN |
US11792127B2 (en) | 2021-01-18 | 2023-10-17 | Vmware, Inc. | Network-aware load balancing |
US11979325B2 (en) | 2021-01-28 | 2024-05-07 | VMware LLC | Dynamic SD-WAN hub cluster scaling with machine learning |
US11637768B2 (en) | 2021-05-03 | 2023-04-25 | Vmware, Inc. | On demand routing mesh for routing packets through SD-WAN edge forwarding nodes in an SD-WAN |
US12009987B2 (en) | 2021-05-03 | 2024-06-11 | VMware LLC | Methods to support dynamic transit paths through hub clustering across branches in SD-WAN |
US11729065B2 (en) | 2021-05-06 | 2023-08-15 | Vmware, Inc. | Methods for application defined virtual network service among multiple transport in SD-WAN |
US12015536B2 (en) | 2021-06-18 | 2024-06-18 | VMware LLC | Method and apparatus for deploying tenant deployable elements across public clouds based on harvested performance metrics of types of resource elements in the public clouds |
US12047282B2 (en) | 2021-07-22 | 2024-07-23 | VMware LLC | Methods for smart bandwidth aggregation based dynamic overlay selection among preferred exits in SD-WAN |
US11943146B2 (en) | 2021-10-01 | 2024-03-26 | VMware LLC | Traffic prioritization in SD-WAN |
US11909815B2 (en) | 2022-06-06 | 2024-02-20 | VMware LLC | Routing based on geolocation costs |
EP4412171A1 (en) * | 2023-02-01 | 2024-08-07 | British Telecommunications public limited company | Software defined networking |
US12057993B1 (en) | 2023-03-27 | 2024-08-06 | VMware LLC | Identifying and remediating anomalies in a self-healing network |
US12034587B1 (en) | 2023-03-27 | 2024-07-09 | VMware LLC | Identifying and remediating anomalies in a self-healing network |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101394317A (zh) * | 2007-09-21 | 2009-03-25 | 中国科学院沈阳自动化研究所 | 用于多通道无线多跳网络的通道切换模式生成及分配方法 |
CN101895472A (zh) * | 2010-07-16 | 2010-11-24 | 华为技术有限公司 | 流业务负载分担方法和处理方法以及相应的设备和系统 |
WO2014189448A1 (en) * | 2013-05-20 | 2014-11-27 | Telefonaktiebolaget L M Ericsson (Publ) | Avoiding mass migration of wireless communication devices from one access point to another |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0507901D0 (en) * | 2005-04-19 | 2005-05-25 | Vodafone Plc | Controlling loads in telecommunications networks |
US8576715B2 (en) * | 2009-10-26 | 2013-11-05 | Mellanox Technologies Ltd. | High-performance adaptive routing |
CN105357035B (zh) * | 2010-05-28 | 2019-02-12 | 日本电气株式会社 | 通信系统、节点、控制设备、通信方法以及程序 |
US8996718B2 (en) * | 2012-02-02 | 2015-03-31 | Apple Inc. | TCP-aware receive side coalescing |
US8995277B2 (en) * | 2012-10-30 | 2015-03-31 | Telefonaktiebolaget L M Ericsson (Publ) | Method for dynamic load balancing of network flows on LAG interfaces |
CN104284385B (zh) * | 2013-07-05 | 2018-02-23 | 华为技术有限公司 | 用于数据转发的设备和方法 |
US9203711B2 (en) * | 2013-09-24 | 2015-12-01 | International Business Machines Corporation | Port mirroring for sampling measurement of network flows |
CN103929492B (zh) * | 2014-04-28 | 2017-08-29 | 华为技术有限公司 | 业务链负载均衡方法及其装置、系统 |
CN104158755B (zh) * | 2014-07-30 | 2017-12-05 | 华为技术有限公司 | 传输报文的方法、装置和系统 |
CN104153755B (zh) | 2014-08-05 | 2016-08-24 | 成都西部石油装备股份有限公司 | 一种新型混砂橇 |
CN104168209B (zh) * | 2014-08-28 | 2017-11-14 | 新华三技术有限公司 | 多接入sdn网络报文转发方法和控制器 |
CN104219150B (zh) * | 2014-09-03 | 2018-03-16 | 新华三技术有限公司 | 流表下发方法及装置 |
-
2015
- 2015-10-31 CN CN201580065479.XA patent/CN107005485B/zh active Active
- 2015-10-31 EP EP15907031.7A patent/EP3361684B1/en active Active
- 2015-10-31 RU RU2018119517A patent/RU2692042C1/ru active
- 2015-10-31 SG SG11201803460TA patent/SG11201803460TA/en unknown
- 2015-10-31 WO PCT/CN2015/093525 patent/WO2017070970A1/zh active Application Filing
-
2018
- 2018-04-28 US US15/965,849 patent/US10547541B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101394317A (zh) * | 2007-09-21 | 2009-03-25 | 中国科学院沈阳自动化研究所 | 用于多通道无线多跳网络的通道切换模式生成及分配方法 |
CN101895472A (zh) * | 2010-07-16 | 2010-11-24 | 华为技术有限公司 | 流业务负载分担方法和处理方法以及相应的设备和系统 |
WO2014189448A1 (en) * | 2013-05-20 | 2014-11-27 | Telefonaktiebolaget L M Ericsson (Publ) | Avoiding mass migration of wireless communication devices from one access point to another |
Non-Patent Citations (2)
Title |
---|
"Multiple metrics based load balancing routing protocol for mobile ad hoc networks";S. P. Terdal, V. D. Mytri and A. Damodaram;《2009 First Asian Himalayas International Conference on Internet,Kathmandu,2009》;20091231;第1-5页 * |
"网络动态负载均衡算法分析";陈登伟,鲁智勇;《现代电子技术》;20031231;第81-84页 * |
Also Published As
Publication number | Publication date |
---|---|
SG11201803460TA (en) | 2018-05-30 |
EP3361684A4 (en) | 2018-10-24 |
US10547541B2 (en) | 2020-01-28 |
RU2692042C1 (ru) | 2019-06-19 |
WO2017070970A1 (zh) | 2017-05-04 |
CN107005485A (zh) | 2017-08-01 |
EP3361684A1 (en) | 2018-08-15 |
EP3361684B1 (en) | 2020-07-29 |
US20180248790A1 (en) | 2018-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107005485B (zh) | 一种确定路由的方法、对应装置及系统 | |
US11228534B2 (en) | Congestion control method, network device, and network interface controller | |
US20210336885A1 (en) | Phantom queue link level load balancing system, method and device | |
JP2023549681A (ja) | ネットワーク機能選択のためのランク処理のための方法、システム、およびコンピュータ読取可能媒体 | |
EP3528439A1 (en) | Service routing method and system | |
WO2014068426A1 (en) | A method for dynamic load balancing of network flows on lag interfaces | |
US8848529B2 (en) | WRR scheduler configuration for optimized latency, buffer utilization | |
US20190150034A1 (en) | Service Traffic Control Method and System and Decision Network Element | |
CN110943933A (zh) | 一种实现数据传输的方法、装置和系统 | |
CN104618253B (zh) | 一种动态变更的传输报文处理方法和装置 | |
US9838334B2 (en) | Method for allocating resources in a mesh communications network, computer program, information storage means and node device | |
CN108234320B (zh) | 报文传输方法及交换机 | |
US20230283492A1 (en) | Traffic charging method, network device and storage medium | |
WO2016062067A1 (zh) | 一种用户报文的转发控制方法以及处理节点 | |
CN113518037A (zh) | 一种拥塞信息同步的方法以及相关装置 | |
US11516145B2 (en) | Packet control method, flow table update method, and node device | |
CN116668374A (zh) | 通信方法及装置 | |
CN108337181B (zh) | 一种交换网拥塞管理方法和装置 | |
CN105745877A (zh) | 交换机处理方法、控制器、交换机及交换机处理系统 | |
EP3289797B1 (en) | Load based signaling in a communication network | |
EP2547053A1 (en) | Distribution of data units among interfaces of a node of a packet-switched communication network | |
CN115884252A (zh) | 策略调整方法、数据传输方法、系统、服务器及存储介质 | |
US11240164B2 (en) | Method for obtaining path information of data packet and device | |
CN107222299A (zh) | 一种数据传输方法、系统和电子设备 | |
US20200036625A1 (en) | Communication apparatus, communication control method, and communication system |
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 |