CN108696428A - 基于隧道技术的路由探测方法、路由节点和中心服务器 - Google Patents
基于隧道技术的路由探测方法、路由节点和中心服务器 Download PDFInfo
- Publication number
- CN108696428A CN108696428A CN201810471027.7A CN201810471027A CN108696428A CN 108696428 A CN108696428 A CN 108696428A CN 201810471027 A CN201810471027 A CN 201810471027A CN 108696428 A CN108696428 A CN 108696428A
- Authority
- CN
- China
- Prior art keywords
- link
- node
- routing
- message
- packet loss
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/70—Routing based on monitoring results
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- 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/12—Network monitoring probes
-
- 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
- H04L45/745—Address table lookup; Address filtering
-
- 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/29—Flow control; Congestion control using a combination of thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/825—Involving tunnels, e.g. MPLS
-
- 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/16—Threshold monitoring
-
- 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/42—Centralised routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于隧道技术的路由探测方法、路由节点和中心服务器,所述路由探测方法包括:第一节点向同一分组内相邻的第二节点发送探测请求报文,并接收第二节点返回的包括链路延时和丢包率的探测响应报文;第一节点根据所述链路延时和丢包率向中心服务器发送两节点间的链路质量报文;第一节点根据所述两节点间的链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,若超过阈值则向中心服务器发送链路路由查询报文,接收并根据中心服务器发送的链路路由响应报文中的最佳链路修改本节点路由表;其中,所述报文均经隧道封装后发送。本发明提供的路由探测方法能够在广域网中实现高质量的通信传输,能够减少专线带宽的租用以降低成本。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种基于隧道技术的路由探测方法、路由节点和中心服务器。
背景技术
近年来,互联网中一组服务器节点之间的公网链路或专线链路短暂的丢包,抖动,延迟增大等导致的消息业务数据的链路往返时延(RTT,Round-Trip Time)增加,或者超时,以及音视频业务的卡顿等网络问题。为了规避暂时的网络抖动,目前业界已有的方案如SD-WAN,以及智能网络等,通过实时探测网络节点间的网络状况,然后上报到计算中心,进行计算,进而找出网络任何两个节点间的最优链路,从而避免业务受到短暂中间节点的故障的影响。
然而SD_WAN组网技术对于混合云部署不够友好,各大云厂商都有自己解决方案,有些云甚至不支持自己在TCP/IP的2层或3层的组网。同时业务集群自身区分边缘和中心节点,所述边缘和中心节点的结构是不对等的,而SD_WAN适用于对等的POP点和路由。进而使得部署在不同云厂商之间的服务器想要规避公网抖动而比较困难。
发明内容
为了解决上述问题至少之一,本发明第一方面提供一种基于隧道技术的路由探测方法,包括:
第一节点向同一分组内相邻的第二节点发送探测请求报文,并接收所述第二节点返回的探测响应报文,所述探测响应报文包括链路延时和丢包率;
第一节点根据所述链路延时和丢包率向中心服务器发送所述第一节点到第二节点间的链路质量报文;
第一节点将所述链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,若所述链路延时超过链路延时阈值和/或所述丢包率超过丢包率阈值则向所述中心服务器发送链路路由查询报文,并接收来自所述中心服务器发送的链路路由响应报文,并根据所述链路路由响应报文中的最佳链路修改本节点路由表;
其中,所述报文均经隧道封装后发送。
进一步地,第一节点按照第一时间周期向所述同一分组内相邻的第二节点定时发送探测请求报文。
进一步地,所述探测请求报文包括TCP报文和/或ICMP报文,其中所述TCP报文用于检测链路延时,所述ICMP报文用于检测链路延时和丢包率。
进一步地,所述最佳链路是由所述中心服务器根据所述同一分组内各节点间的所述链路延时和丢包率的统一赋值对所述第一节点到目的节点的所有链路线路进行计算得出的分数最高的链路。
进一步地,所述链路延时和丢包率设置为不同的权重和赋值以计算最佳链路。
进一步地,所述中心服务器还包括强制路由的设置,所述第一节点按照第二时间周期从所述中心服务器定时查询是否设置了所述强制路由,若设置了所述强制路由则按照所述强制路由修改本地路由表。
进一步地,所述第一节点对所述报文进行隧道封装为GRE隧道封装,包括在所述报文上添加所述隧道的源地址和目的地址。
本发明第二方面提供一种基于隧道技术的路由探测方法,包括:
中心服务器接收来自同一分组内的第一节点到相邻第二节点的包括链路延时和丢包率的链路质量报文,并存储所述第一节点和第二节点间的链路延时和丢包率;
中心服务器响应于来自第一节点的链路路由查询报文,计算所述第一节点到目的节点的最佳链路并发送链路路由响应报文,以使得所述第一节点根据最佳链路修改本地路由表;
其中,所述报文均经隧道封装后发送。
进一步地,所述中心服务器根据所述同一分组内各节点间的所述链路延时和丢包率的统一赋值计算出所述第一节点到目的节点的所有链路线路的分值,所述分值最高的链路为最佳链路。
进一步地,所述链路延时和丢包率设置为不同的权重和赋值以计算最佳链路。
进一步地,所述中心服务器还包括强制路由的设置,响应于所述第一节点按照第二时间周期的查询,以使得所述第一节点按照所述强制路由修改本地路由表。
进一步地,所述中心服务器存储所述同一分组内各节点间最近三次的所述链路延时和丢包率。
本发明第三方面提供一种路由节点,包括链路检测模块、路由获取模块和封装模块,其中
链路检测模块,用于向同一分组内相邻的第二节点发送探测请求报文,并接收所述第二节点返回的探测响应报文,所述探测响应报文包括链路延时和丢包率;根据所述链路延时和丢包率向中心服务器上报所述路由节点和第二节点间的链路质量报文;将所述链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,若所述链路延时超过链路延时阈值和/或所述丢包率超过丢包率阈值则通知所述路由获取模块;
路由获取模块,用于根据所述链路检测模块的通知向所述中心服务器发送链路路由查询报文,接收并根据链路路由响应报文的最佳链路修改所述路由表;
封装模块,用于对发送的报文进行隧道封装。
进一步地,所述路由获取模块按照第二时间周期从所述中心服务器定时查询是否设置了所述强制路由,若设置了所述强制路由则按照所述强制路由修改本地路由表。
进一步地,所述封装模块对所述报文进行GRE隧道封装,包括在所述报文上添加所述隧道的源地址和目的地址。
本发明第四方面提供一种中心服务器,包括中心链路模块、路由状态存储器、设置模块和封装模块,其中
中心链路模块,用于接收来自同一分组内的第一节点到相邻第二节点的链路质量报文,响应于来自第一节点的链路路由查询报文并计算所述第一节点到目的节点的最佳链路并发送链路路由响应报文;
路由状态存储器,用于存储同一分组内各个节点间的最近三次链路质量情况;
设置模块,用于设置各节点的链路路由参数;
封装模块,用于对发送的报文进行GRE隧道封装,包括在所述报文上添加所述隧道的源地址和目的地址。
本发明第五方面提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的方法。
本发明第六方面提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第二方面所述的方法。
本发明的有益效果如下:
本发明针对目前现有的智能网络模式所导致的网络抖动和混合云部署问题,制定基于隧道技术的路由探测方法,通过带分组的通用路由封装(GRE,Generic RoutingEncapsulation)的路由集群,在同一分组内进行动态路由探测和调整,从而在广域网中实现高质量通信传输,能够快速打通不同云厂商的虚拟私有云(VPN,Virtual PrivateCloud)的部署,有效减少由于运营商网络波动而导致的边缘与中心之间的通信质量下降带来的问题,同时能够减少专线带宽使用以降低运营成本。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明。
图1示出本发明的一个实施例所述路由探测的场景架构示意图;
图2示出本发明的一个实施例所述路由探测方法的流程图;
图3示出本发明的一个实施例所述路由探测方法的流程示意图;
图4示出本发明的一个实施例所述GRE封装的结构示意图;
图5示出本发明的另一个实施例所述路由节点的结构示意图;
图6示出本发明的另一个实施例所述路由探测方法的流程图;
图7示出本发明的另一个实施例所述中心服务器的结构示意图;
图8示出本发明的另一个实施例所述的一种计算机设备的结构示意图。
具体实施方式
为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。
如图1所示为本发明涉及的路由探测的场景架构,包括中心服务器、各个分组和分组内的多个路由节点,其中中心服务器是路由探测系统的核心,用于实时接收、存储各路由节点间的链路质量状况,并根据链路质量状况计算出从该节点到目的节点的最佳链路,以使得该节点修改路由表,以实现在广域网内当出现网络抖动、链路故障时能够通过修改路由表绕过故障链路,避免业务传输受到故障影响,并确保通信业务的正常传输。分组1、分组2~分组X为人为部署的逻辑分组,在同一各逻辑分组内进行路由探测和路由调整能够简化链路动态路由探测流程、减少中心服务器的计算量、在保证传输质量的情况下节省运营成本。每个分组内的各个路由节点的设置可以根据业务需求进行设计,以满足实际应用为基础,在此不做限定。
如图2所示,本发明的一个实施例提供了一种基于隧道技术的路由探测方法,包括:第一节点向同一分组内相邻的第二节点发送探测请求报文,并接收所述第二节点返回的探测响应报文,所述探测响应报文包括链路延时和丢包率;第一节点根据所述链路延时和丢包率向中心服务器发送所述第一节点到第二节点间的链路质量报文;第一节点将所述链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,若所述链路延时超过链路延时阈值和/或所述丢包率超过丢包率阈值则向所述中心服务器发送链路路由查询报文,并接收来自所述中心服务器发送的链路路由响应报文,并根据所述链路路由响应报文中的最佳链路修改本节点路由表;其中,所述报文均经隧道封装后发送。
如图3所示,在一个具体的示例中,通过中心服务器100、第一节点200和第二节点300实现路由探测,具体步骤如下:
S1.第一节点200向同一分组内相邻的第二节点300发送链路质量探测请求报文。在本实施例中,同一分组内包括多个路由节点,每个路由节点按照一定的时间周期向相邻的路由节点发送链路质量探测请求报文,例如每5s向邻居节点发送探测请求报文,并且本实施例支持各路由节点的双向探测,即第一节点200向第二节点300进行探测的同时第二节点300也向第一节点200进行探测,同时探测两节点间双方向的探测以使得对网络性能的评估更加准确;其中所述第一节点200和第二节点300仅用于描述路由探测方法,不做其他限制。所述链路质量探测请求报文包括检测链路延时的TCP(Transmission ControlProtocol,传输控制协议)报文和/或检测链路延时和丢包率的ICMP(Internet ControlMessage Protocol,Internet控制消息协议)报文。第一节点200向第二节点300发送TCP报文和ICMP的Ping指令报文。
S2.第一节点200接收所述第二节点300返回的探测响应报文,所述探测响应报文包括链路延时和丢包率。第一节点200向第二节点300发送TCP报文,记录链路的往返时延(RTT,Round-Trip Time),发送ICMP的Ping指令报文用于获得相邻节点间的链路延时和丢包率。
S3.第一节点200根据与所述链路延时和丢包率向中心服务器100发送所述第一节点200到第二节点300间的链路质量报文;第一节点200将与第二节点300间的链路质量上报到中心服务器100,中心服务器100接收并将第一节点与第二节点间的链路延时和丢包率进行存储以实时更新当前网络状态,便于后续计算最佳路由。
S4.第一节点200将所述链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,判断所述链路延时是否超过链路延时阈值和/或所述丢包率是否超过丢包率阈值。在上报中心服务器100的同时,第一节点200将所述链路延时和丢包率与链路延时阈值和丢包率阈值进行比对,所述链路延时阈值和丢包率阈值为运营维护人员根据中心服务器100在正常工作时的链路延时和丢包率进行估算得出的正常通信的链路延时范围和丢包率范围,并通过中心服务器100的设置单元进行设置,存储在第一节点200中。若所述链路延时和丢包率均小于预设置的链路延时阈值和丢包率阈值则表明链路正常,能够继续保持工作。若比对结果超过所述链路阈值则认为第一节点200到第二节点300间出现了网络故障,需要进行路由调整。
S5.第一节点200向所述中心服务器100发送链路路由查询报文。即第一节点200向所述中心服务器100提出请求,请求中心服务器100计算同一分组内由第一节点200到目的节点的最佳链路。
S6.中心服务器100向第一节点200发送链路路由响应报文,即中心服务器100接收到路由查询请求后,根据已获得的同一分组内各节点间的链路延时和丢包率,对链路延时和丢包率进行统一赋值,并根据所述赋值计算出所述第一节点200到目的节点的所有链路线路的质量分数,根据分数进行排序,分组最高的链路线路即认为是第一节点200到目的节点的最佳链路。进一步地,还可以根据实际需求,对链路延时和丢包率分别按照不同权重进行赋值,根据不同的权重和赋值计算出更加准确的最佳链路。
S7.第一节点200接收来自所述中心服务器100的最佳链路,并修改本节点的路由表。即第一节点200根据路由探测和路由计算的结果调整现有路由表,按照计算出的最佳链路进行业务传输。进一步地,运营维护人员还可以通过中心服务器100的设置单元设置强制路由,第一节点200按照第二时间周期从所述中心服务器100定时查询是否设置了所述强制路由,例如每3秒钟进行一次查询。所述强制路由的优先级最高,无论现有网络是否发生异常,或者中心服务器100是否已经计算出最佳链路,当第一节点200查询到设置了强制路由,即按照强制路由修改本节点的路由表,进行业务传输。
如图4所示,在路由探测和路由调整的过程中,为满足应用于IDC(Internet DataCenter,互联网数据中心)、混合云、跨云平台等不同网络场景,在异种网络中进行传输,在中心服务器和各个路由节点上进行GRE隧道封装,在同一分组内建立GRE隧道,所有发送的报文首先发送到隧道源端,填写隧道建立时确定的隧道源地址和目的地址,所述报文经封装后在通过公共网络进行传输,从而实现在公共广域网内进行高质量的通信传输。
如图5所示,相对应的,本发明的一个实施例还提供了一种路由节点400,包括链路检测模块、路由获取模块和封装模块,其中链路检测模块,用于向同一分组内相邻的第二节点发送探测请求报文,并接收所述第二节点返回的探测响应报文,所述探测响应报文包括链路延时和丢包率;根据所述链路延时和丢包率向中心服务器上报所述路由节点和第二节点间的链路质量报文;将所述链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,若所述链路延时超过链路延时阈值和/或所述丢包率超过丢包率阈值则通知所述路由获取模块;路由获取模块,用于根据所述链路检测模块的通知向所述中心服务器发送链路路由查询报文,接收并根据链路路由响应报文的最佳链路修改所述路由表;封装模块,用于对发送的报文进行隧道封装。
在一个具体的示例中,链路检测模块按照第一时间周期向同一分组内的邻居节点发送探测请求报文,例如每5s向邻居节点发送检测链路延时的TCP报文和/或检测链路延时和丢包率的ICMP报文,接收邻居节点返回的TCP报文并记录链路的往返时延,接收ICMP报文并记录链路延时和丢包率。然后,将相邻节点间的链路延时和丢包率发送到中心服务器以使得中心服务器实时获取网络状态。同时链路检测模块还将所述链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,判断相邻节点间的通信传输是否正常、是否符合业务传输的需要;若发现所述链路延时超过链路延时阈值和/或所述丢包率超过丢包率阈值则表明网络状况较差,不适合正常的业务传输,则链路检测模块通过UDP(UserDatagram Protocol,用户数据报协议)报文通知所述路由获取模块,以使得路由获取模块向中心服务器请求最佳链路进行更新。
所述路由获取模块接收到所述链路检测模块的通知后,向中心服务器发送链路路由查询报文,请求中心服务器计算同一分组内由本路由节点到目的节点的最佳链路,并且根据所述最佳链路修改本路由节点的路由表,以使得业务传输能够正常运行。进一步地,所述中心服务器还包括强制路由的设置,所述路由获取模块按照第二时间周期从所述中心服务器定时查询是否设置了所述强制路由,例如每3秒钟进行一次查询,若设置了强制路由,无论现有网络是否发生异常,或者中心服务器是否已经计算出最佳链路,均按照所述强制路由修改本地路由表。
在本实施例中,所述封装模块对所述报文进行GRE隧道封装,包括在所述报文上添加所述隧道的源地址和目的地址,所述过程同前所述,在此不再赘述。
如图6所示,本发明的一个实施例还提供了一种基于隧道技术的路由探测方法,包括:中心服务器100接收来自同一分组内的第一节点200到相邻第二节点300的包括链路延时和丢包率的链路质量报文,并存储所述第一节点和第二节点间的链路延时和丢包率;中心服务器100响应于来自第一节点200的链路路由查询报文,计算所述第一节点200到目的节点的最佳链路并发送链路路由响应报文,以使得所述第一节点200根据最佳链路修改本地路由表;其中,所述报文均经隧道封装后发送。
在一个具体的示例中,中心服务器100是路由探测系统的核心,接收并存储各个分组内的各路由节点上报的与邻居节点间的链路质量状况,例如分组一中第一节点200和第二节点300之间的链路延时和丢包率。当两节点间的链路出现质量问题时,例如链路延时延时预定链路延时阈值时或者丢包率超过预定丢包率阈值时,即超过正常通信可接受的范围时,中心服务器响应于路由节点发送的路由查询,通过存储的同一分组内的各路由节点间的链路质量状况计算出从该节点到目的节点的最佳链路,以使得所述第一节点200能够快速调整路由,不因为原有链路质量问题影响业务传输。进一步地,所述中心服务器100能够存储同一分组内各节点间最近三次的所述链路延时和丢包率,以实时获得网络状态;同时在计算最佳链路时,使用最近三次的链路延时和丢包率能够有效提高计算精度,在计算过程中,可以通过对各节点间的所述链路延时和丢包率的统一赋值计算出所述第一节点到目的节点的所有链路线路的分值,也可以通过对所述链路延时和丢包率设置为不同的权重和赋值以计算所有链路线路的分值,所述分值最高的链路为最佳链路,以实现在链路质量下降时能够及时进行链路切换。
同样的,中心服务器100还包括强制路由的设置,响应于各路由节点按一定时间周期进行的查询,若该路由节点设置了强制路由则根据强制路由修改本地路由表,以实现链路路由的切换。
如图7所示,相对应的,本发明的一个实施例还提供了一种中心服务器,包括中心链路模块、路由状态存储器、设置模块和封装模块,其中中心链路模块,用于接收来自同一分组内的第一节点到相邻第二节点的链路质量报文,响应于来自第一节点的链路路由查询报文并计算所述第一节点到目的节点的最佳链路并发送链路路由响应报文;路由状态存储器,用于存储同一分组内各个节点间的最近三次链路质量情况;设置模块,用于设置各节点的链路路由参数;封装模块,用于对发送的报文进行GRE隧道封装,包括在所述报文上添加所述隧道的源地址和目的地址。
所述中心链路模块是中心服务器的核心,根据实时接收的网络节点状况遍历同一分组内的源节点到目的节点的所有链路线路,并根据不同的表示链路质量参数项的权重对所有链路线路进行计算出各个链路线路的分值,从而得到所述源节点到目的节点最佳路由,使得源节点在现有链路出现问题时,可以通过最佳路由进行业务传输,规避公共网络抖动现象,有效提高业务传输的时效性能。
值得说明的是,所述中心服务器的设置模块可以独立于中心服务器运行,例如配置为连接在中心服务器上的远程管理器或运行于连接在中心服务器上的远程电脑上的远程管理软件,以便于运营维护人员进行设置或管理。运营维护人员能够通过远程管理器或远程管理软件设置各个逻辑分组,以及同一分组内各个节点的设置,例如路由探测的时间间隔、强制路由、默认路由、影响路由评估的各项参数和权重、路由分组管理和分组节点管理等等。本领域技术人员应当根据实际需要设计设置模块的架构和形貌,以满足实际应用为设计准则。
本发明的另一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现:第一节点向同一分组内相邻的第二节点发送探测请求报文,并接收所述第二节点返回的探测响应报文,所述探测响应报文包括链路延时和丢包率;第一节点根据所述链路延时和丢包率向中心服务器发送所述第一节点到第二节点间的链路质量报文;第一节点将所述链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,若所述链路延时超过链路延时阈值和/或所述丢包率超过丢包率阈值则向所述中心服务器发送链路路由查询报文,并接收来自所述中心服务器发送的链路路由响应报文,并根据所述链路路由响应报文中的最佳链路修改本节点路由表;其中,所述报文均经隧道封装后发送。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实时例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
如图8所示,本发明的另一个实施例提供的一种计算机设备的结构示意图。图8显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图8未显示,通常称为“硬盘驱动器”)。尽管图8中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图8所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图8中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的一种基于隧道技术的路由探测方法。
本发明提供的实施例通过先进的路由探测和动态计算得到的最佳链路,有效提高全网收敛时间。通过设置逻辑分组能够灵活部署网络节点,通过设置GRE隧道封装可以快速穿越混合云、跨云平台等不同的网络场景;同时通过在同一逻辑分组内进行路由调整可以确保系统安全稳定,不会因单一业务组件的失效而影响全网的性能,可适用于不同规模的互联网公司。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
Claims (18)
1.一种基于隧道技术的路由探测方法,其特征在于,包括:
第一节点向同一分组内相邻的第二节点发送探测请求报文,并接收所述第二节点返回的探测响应报文,所述探测响应报文包括链路延时和丢包率;
第一节点根据所述链路延时和丢包率向中心服务器发送所述第一节点到第二节点间的链路质量报文;
第一节点将所述链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,若所述链路延时超过链路延时阈值和/或所述丢包率超过丢包率阈值则向所述中心服务器发送链路路由查询报文,并接收来自所述中心服务器发送的链路路由响应报文,并根据所述链路路由响应报文中的最佳链路修改本节点路由表;
其中,所述报文均经隧道封装后发送。
2.根据权利要求1所述的路由探测方法,其特征在于,第一节点按照第一时间周期向所述同一分组内相邻的第二节点定时发送探测请求报文。
3.根据权利要求2所述的路由探测方法,其特征在于,所述探测请求报文包括TCP报文和/或ICMP报文,其中所述TCP报文用于检测链路延时,所述ICMP报文用于检测链路延时和丢包率。
4.根据权利要求1所述的路由探测方法,其特征在于,所述最佳链路是由所述中心服务器根据所述同一分组内各节点间的所述链路延时和丢包率的统一赋值对所述第一节点到目的节点的所有链路线路进行计算得出的分数最高的链路。
5.根据权利要求4所述的路由探测方法,其特征在于,所述链路延时和丢包率设置为不同的权重和赋值以计算最佳链路。
6.根据权利要求1所述的路由探测方法,其特征在于,所述中心服务器还包括强制路由的设置,所述第一节点按照第二时间周期从所述中心服务器定时查询是否设置了所述强制路由,若设置了所述强制路由则按照所述强制路由修改本地路由表。
7.根据权利要求1所述的路由探测方法,其特征在于,所述第一节点对所述报文进行隧道封装为GRE隧道封装,包括在所述报文上添加所述隧道的源地址和目的地址。
8.一种基于隧道技术的路由探测方法,其特征在于,包括:
中心服务器接收来自同一分组内的第一节点到相邻第二节点的包括链路延时和丢包率的链路质量报文,并存储所述第一节点和第二节点间的链路延时和丢包率;
中心服务器响应于来自第一节点的链路路由查询报文,计算所述第一节点到目的节点的最佳链路并发送链路路由响应报文,以使得所述第一节点根据最佳链路修改本地路由表;
其中,所述报文均经隧道封装后发送。
9.根据权利要求8所述的路由探测方法,其特征在于,所述中心服务器根据所述同一分组内各节点间的所述链路延时和丢包率的统一赋值计算出所述第一节点到目的节点的所有链路线路的分值,所述分值最高的链路为最佳链路。
10.根据权利要求9所述的路由探测方法,其特征在于,所述链路延时和丢包率设置为不同的权重和赋值以计算最佳链路。
11.根据权利要求8所述的路由探测方法,其特征在于,所述中心服务器还包括强制路由的设置,响应于所述第一节点按照第二时间周期的查询,以使得所述第一节点按照所述强制路由修改本地路由表。
12.根据权利要求8所述的路由探测方法,其特征在于,所述中心服务器存储所述同一分组内各节点间最近三次的所述链路延时和丢包率。
13.一种路由节点,其特征在于,包括链路检测模块、路由获取模块和封装模块,其中
链路检测模块,用于向同一分组内相邻的第二节点发送探测请求报文,并接收所述第二节点返回的探测响应报文,所述探测响应报文包括链路延时和丢包率;根据所述链路延时和丢包率向中心服务器上报所述路由节点和第二节点间的链路质量报文;将所述链路延时和丢包率与预设置的链路延时阈值和丢包率阈值进行比对,若所述链路延时超过链路延时阈值和/或所述丢包率超过丢包率阈值则通知所述路由获取模块;
路由获取模块,用于根据所述链路检测模块的通知向所述中心服务器发送链路路由查询报文,接收并根据链路路由响应报文的最佳链路修改所述路由表;
封装模块,用于对发送的报文进行隧道封装。
14.根据权利要求13所述的路由节点,其特征在于,所述路由获取模块按照第二时间周期从所述中心服务器定时查询是否设置了所述强制路由,若设置了所述强制路由则按照所述强制路由修改本地路由表。
15.根据权利要求13所述的路由节点,其特征在于,所述封装模块对所述报文进行GRE隧道封装,包括在所述报文上添加所述隧道的源地址和目的地址。
16.一种中心服务器,其特征在于,包括中心链路模块、路由状态存储器、设置模块和封装模块,其中
中心链路模块,用于接收来自同一分组内的第一节点到相邻第二节点的链路质量报文,响应于来自第一节点的链路路由查询报文并计算所述第一节点到目的节点的最佳链路并发送链路路由响应报文;
路由状态存储器,用于存储同一分组内各个节点间的最近三次链路质量情况;
设置模块,用于设置各节点的链路路由参数;
封装模块,用于对发送的报文进行GRE隧道封装,包括在所述报文上添加所述隧道的源地址和目的地址。
17.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的方法。
18.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求8-12中任一所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810471027.7A CN108696428B (zh) | 2018-05-17 | 2018-05-17 | 基于隧道技术的路由探测方法、路由节点和中心服务器 |
PCT/CN2019/080794 WO2019218786A1 (zh) | 2018-05-17 | 2019-04-01 | 基于隧道技术的路由探测方法、路由节点和中心服务器 |
US17/055,717 US20210211387A1 (en) | 2018-05-17 | 2019-04-01 | Route detection method based on tunneling technology, and routing node and central server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810471027.7A CN108696428B (zh) | 2018-05-17 | 2018-05-17 | 基于隧道技术的路由探测方法、路由节点和中心服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108696428A true CN108696428A (zh) | 2018-10-23 |
CN108696428B CN108696428B (zh) | 2020-10-27 |
Family
ID=63846557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810471027.7A Active CN108696428B (zh) | 2018-05-17 | 2018-05-17 | 基于隧道技术的路由探测方法、路由节点和中心服务器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210211387A1 (zh) |
CN (1) | CN108696428B (zh) |
WO (1) | WO2019218786A1 (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110324202A (zh) * | 2019-05-31 | 2019-10-11 | 厦门网宿有限公司 | 一种探测线路质量的方法和装置 |
WO2019218786A1 (zh) * | 2018-05-17 | 2019-11-21 | 北京大米科技有限公司 | 基于隧道技术的路由探测方法、路由节点和中心服务器 |
CN111130979A (zh) * | 2019-12-09 | 2020-05-08 | 苏州浪潮智能科技有限公司 | 一种sdwan场景下分支节点连接中心节点的方法和设备 |
CN111181851A (zh) * | 2019-10-24 | 2020-05-19 | 腾讯云计算(北京)有限责任公司 | 加速链路确定方法、装置及系统、存储介质 |
CN111385298A (zh) * | 2020-03-05 | 2020-07-07 | 网易有道信息技术(北京)有限公司江苏分公司 | 数据传输的方法、介质、装置和计算设备 |
CN111935525A (zh) * | 2020-08-06 | 2020-11-13 | 深圳传音控股股份有限公司 | 一种播放多媒体的方法及电子终端设备 |
CN112152898A (zh) * | 2019-06-28 | 2020-12-29 | 华为技术有限公司 | 一种组播隧道探测方法、装置及系统 |
CN113691418A (zh) * | 2021-08-23 | 2021-11-23 | 北京天融信网络安全技术有限公司 | 一种隧道探测方法、装置、存储介质及电子设备 |
CN114615178A (zh) * | 2022-03-16 | 2022-06-10 | 北京轻网科技有限公司 | 链路质量检测方法及装置 |
CN114640626A (zh) * | 2020-12-01 | 2022-06-17 | 中国联合网络通信集团有限公司 | 一种基于软件定义广域网sd-wan的通信系统和方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995593A (zh) * | 2019-12-18 | 2020-04-10 | 深信服科技股份有限公司 | 智能信息转发方法、装置、设备及存储介质 |
CN116708290B (zh) * | 2023-08-04 | 2023-10-10 | 腾讯科技(深圳)有限公司 | 基于混合云网络的路由检测方法及装置、电子设备、介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267433A (zh) * | 2008-04-30 | 2008-09-17 | 华中科技大学 | 一种适应异构网络环境的中心控制源路由协议 |
CN102035744A (zh) * | 2010-12-22 | 2011-04-27 | 北京星网锐捷网络技术有限公司 | 虚拟路由冗余协议路由器间通信的方法和路由器 |
CN102164125A (zh) * | 2011-03-17 | 2011-08-24 | 武汉大学 | 基于asgka协议的安全通信系统及方法 |
US20120269111A1 (en) * | 2009-12-21 | 2012-10-25 | Electronics And Telecommunications Research Institute | Mobile multicast system for supporting network-based mobility and method thereof |
CN104683210A (zh) * | 2015-03-10 | 2015-06-03 | 杭州华三通信技术有限公司 | 一种自动建立隧道的方法和装置 |
CN106230634A (zh) * | 2016-08-01 | 2016-12-14 | 青岛海信宽带多媒体技术有限公司 | 一种链路故障的诊断方法、装置和机顶盒 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102868683B (zh) * | 2012-08-23 | 2015-06-03 | 东南大学 | 一种基于端到端的语音安全多路径通信系统及方法 |
CN103475654B (zh) * | 2013-09-06 | 2016-10-05 | 北京奇虎科技有限公司 | 网络路径优化方法、设备及网络系统 |
CN106998302B (zh) * | 2016-01-26 | 2020-04-14 | 华为技术有限公司 | 一种业务流量的分配方法及装置 |
US20180109431A1 (en) * | 2016-10-17 | 2018-04-19 | Pismo Labs Technology Limited | Method and system for estimating network performance of a virtual private network (vpn) tunnel |
CN108696428B (zh) * | 2018-05-17 | 2020-10-27 | 北京大米科技有限公司 | 基于隧道技术的路由探测方法、路由节点和中心服务器 |
-
2018
- 2018-05-17 CN CN201810471027.7A patent/CN108696428B/zh active Active
-
2019
- 2019-04-01 WO PCT/CN2019/080794 patent/WO2019218786A1/zh active Application Filing
- 2019-04-01 US US17/055,717 patent/US20210211387A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267433A (zh) * | 2008-04-30 | 2008-09-17 | 华中科技大学 | 一种适应异构网络环境的中心控制源路由协议 |
US20120269111A1 (en) * | 2009-12-21 | 2012-10-25 | Electronics And Telecommunications Research Institute | Mobile multicast system for supporting network-based mobility and method thereof |
CN102035744A (zh) * | 2010-12-22 | 2011-04-27 | 北京星网锐捷网络技术有限公司 | 虚拟路由冗余协议路由器间通信的方法和路由器 |
CN102164125A (zh) * | 2011-03-17 | 2011-08-24 | 武汉大学 | 基于asgka协议的安全通信系统及方法 |
CN104683210A (zh) * | 2015-03-10 | 2015-06-03 | 杭州华三通信技术有限公司 | 一种自动建立隧道的方法和装置 |
CN106230634A (zh) * | 2016-08-01 | 2016-12-14 | 青岛海信宽带多媒体技术有限公司 | 一种链路故障的诊断方法、装置和机顶盒 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019218786A1 (zh) * | 2018-05-17 | 2019-11-21 | 北京大米科技有限公司 | 基于隧道技术的路由探测方法、路由节点和中心服务器 |
CN110324202A (zh) * | 2019-05-31 | 2019-10-11 | 厦门网宿有限公司 | 一种探测线路质量的方法和装置 |
CN112152898A (zh) * | 2019-06-28 | 2020-12-29 | 华为技术有限公司 | 一种组播隧道探测方法、装置及系统 |
CN112152898B (zh) * | 2019-06-28 | 2021-07-20 | 华为技术有限公司 | 一种组播隧道探测方法、装置及系统 |
CN111181851A (zh) * | 2019-10-24 | 2020-05-19 | 腾讯云计算(北京)有限责任公司 | 加速链路确定方法、装置及系统、存储介质 |
CN111130979A (zh) * | 2019-12-09 | 2020-05-08 | 苏州浪潮智能科技有限公司 | 一种sdwan场景下分支节点连接中心节点的方法和设备 |
CN111130979B (zh) * | 2019-12-09 | 2022-02-22 | 苏州浪潮智能科技有限公司 | 一种sdwan场景下分支节点连接中心节点的方法和设备 |
CN111385298A (zh) * | 2020-03-05 | 2020-07-07 | 网易有道信息技术(北京)有限公司江苏分公司 | 数据传输的方法、介质、装置和计算设备 |
CN111935525A (zh) * | 2020-08-06 | 2020-11-13 | 深圳传音控股股份有限公司 | 一种播放多媒体的方法及电子终端设备 |
CN114640626A (zh) * | 2020-12-01 | 2022-06-17 | 中国联合网络通信集团有限公司 | 一种基于软件定义广域网sd-wan的通信系统和方法 |
CN114640626B (zh) * | 2020-12-01 | 2023-07-18 | 中国联合网络通信集团有限公司 | 一种基于软件定义广域网sd-wan的通信系统和方法 |
CN113691418A (zh) * | 2021-08-23 | 2021-11-23 | 北京天融信网络安全技术有限公司 | 一种隧道探测方法、装置、存储介质及电子设备 |
CN114615178A (zh) * | 2022-03-16 | 2022-06-10 | 北京轻网科技有限公司 | 链路质量检测方法及装置 |
CN114615178B (zh) * | 2022-03-16 | 2024-02-13 | 北京轻网科技股份有限公司 | 链路质量检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2019218786A1 (zh) | 2019-11-21 |
US20210211387A1 (en) | 2021-07-08 |
CN108696428B (zh) | 2020-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108696428A (zh) | 基于隧道技术的路由探测方法、路由节点和中心服务器 | |
US10469312B1 (en) | Methods and apparatus for scalable resilient networks | |
US9729949B2 (en) | Dynamic local decision control in software defined networking-based environment | |
JP6724095B2 (ja) | 分散システムにおける集中ネットワーク構成 | |
US9893874B2 (en) | Fabric multipathing based on dynamic latency-based calculations | |
US10439920B2 (en) | Network performance monitoring | |
WO2016029749A1 (zh) | 一种通信故障的检测方法、装置及系统 | |
US20140304543A1 (en) | Fabric multipathing based on dynamic latency-based calculations | |
WO2020125539A1 (zh) | 一种节点设备的选择方法及其相关设备 | |
US10771363B2 (en) | Devices for analyzing and mitigating dropped packets | |
US20200220782A1 (en) | Network topology snapshots | |
CN103139075B (zh) | 一种报文传输方法和设备 | |
US20220174011A1 (en) | Micro segment identifier instructions for path tracing optimization | |
CN112866116B (zh) | 网络访问探测方法、装置、设备及存储介质 | |
CN103825834A (zh) | 一种evi中调整流量负载分担的方法及网络交换装置 | |
CN102571416B (zh) | 一种虚拟机位置定位方法和装置 | |
Kaur et al. | Load balancing in software defined networking: A review | |
US11743114B1 (en) | Bidirectional forwarding detection control packet to indicate maintenance mode operation | |
US8681645B2 (en) | System and method for coordinated discovery of the status of network routes by hosts in a network | |
US10404564B2 (en) | System and method for continuous in-line monitoring of data-center traffic | |
JP2022541130A (ja) | 性能ルーティング測定を伴う双方向フォワーディング検出を提供するためのシステムおよび方法 | |
CN115277504B (zh) | 一种网络流量监控方法、装置和系统 | |
Ramana et al. | Multipath transmission control protocol for live virtual machine migration in the cloud environment | |
US20190007851A1 (en) | Sdn-based multiple wireless network integration system and method therefor | |
CN113765727A (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 |