CN113676408B - 虚拟专用网络的选路方法、系统、设备及存储介质 - Google Patents
虚拟专用网络的选路方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN113676408B CN113676408B CN202110949179.5A CN202110949179A CN113676408B CN 113676408 B CN113676408 B CN 113676408B CN 202110949179 A CN202110949179 A CN 202110949179A CN 113676408 B CN113676408 B CN 113676408B
- Authority
- CN
- China
- Prior art keywords
- link
- virtual network
- current
- service provider
- network link
- 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 63
- 238000004891 communication Methods 0.000 claims abstract description 64
- 238000004590 computer program Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 abstract description 10
- 238000004364 calculation method Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 6
- 230000011664 signaling Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 101100136063 Mycobacterium tuberculosis (strain ATCC 25618 / H37Rv) PE11 gene Proteins 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered 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/14—Routing performance; Theoretical aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了虚拟专用网络的选路方法、系统、设备及存储介质。该方法由虚拟专用网络系统中的服务提供者设备执行,方法包括:接收到用户侧设备发送的原始报文后,确定各虚拟网络链路当前具备的链路优先级;根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路。利用该方法,能够在用户侧终端设备需要进行通信时,主动考虑各虚拟网络链路的链路优先级,以便为用户侧设备选定有效的虚拟网络链路。通过本方法实现虚拟网络链路的主动筛选,保证了通过所选定虚拟网络链路能够实现上层业务数据的正常,提升了VPN系统的可用性,实现了虚拟专用网络通信的精细化控制。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及虚拟专用网络的选路方法、系统、设备及存储介质。
背景技术
互联网企业随着业务在全球各地区快速发展,位于不同地理位置机房内的内网通信需求量越来越大。目前可以使用公网资源建立的虚拟专用网的技术来建立不同地理位置之间的内网通信。业内把在公用网络上建立专用网络,进行通信的技术称为虚拟专用网络(Virtual Private Network,VPN)技术。
图1给出了现有专用网络通信所采用的其中一种VPN架构。如图1所示,VPN中包括了处于不同区域的服务提供者设备(Provider Equipment,PE)11,两不同区域中的PE11之间可以通过互联网形成虚拟网络链路,此外,每个区域中的PE11可以与同区域中的用户侧设备(Customer Equipment,CE)12建立连接。在图1所给的VPN架构中,当处于不同区域的CE12进行通信时,实际相当于分别连接的PE11通过虚拟网络链路来实现通信。
具体的,图1中区域A中的用户侧设备CEa与同一区域内的服务提供者设备PEa建立连接,区域B中的用户侧设备CEb与服务提供者设备PEb建立连接。在具体实现中,CEa待发送给CEb的原始报文Pi先到达PEa处,PEa把Pi处理封装在另外一个包Po里的某层负载中,然后PEa与PEb之间的虚拟网络链路发给PEb,PEb接收后反处理解封装取出Pi并反馈给CEb。通过上述描述可知,所采用的虚拟网络链路为其中一个关键,而用户侧设备可以通过给定的链路探测方法对虚拟网络链路的可用与否进行探测,如果探测到虚拟网络链路可用,两用户侧设备便认为网络通信正常。
然而,该种对虚拟网络链路探测机制在互联网环境下存在局限:即,该种探测未考虑到网络丢包的影响。其在网络丢包率高于一定阈值时,两用户侧设备仍旧能正常收发探测包,因此也会认为虚拟网络链路可用。但对处于应用层面的上层业务来说,网络丢包率高于一定阈值后虚拟网络链路基本不具备对上层业务数据的传输作用,该种情况下两用户侧设备实际已不能正常进行通信。上述问题影响了VPN系统的可用性。
发明内容
有鉴于此,本发明实施例提供了一种虚拟专用网络的选路方法、装置、设备及存储介质,以实现CE通过虚拟专用网络通信时所需虚拟网络链路的有效确定。
第一方面,本发明实施例提供了一种虚拟专用网络的选路方法,应用于所创建虚拟专用网络系统中的PE,其中,所述虚拟专用网络系统采用至少一个互联网服务提供商(Internet Service Provider,ISP)给定的IP地址来接入互联网并构造虚拟网络链路,该方法包括:
接收到用户侧设备发送的原始报文后,确定各所述虚拟网络链路当前具备的链路优先级;
根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路。
第二方面,本发明实施例提供一种虚拟专用网络系统,采用至少一个ISP所给定IP地址接入互联网,包括:通过各IP地址构建的虚拟网络链路,以及设置在不同地域位置中的PE;
任一PE通过一条虚拟网络链路与其他的对端PE建立通信连接;
针对每个PE,包括:
链路级别确定模块,用于接收到用户侧设备发送的原始报文后,确定各所述虚拟网络链路当前具备的链路优先级;
目标选择模块,用于根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路。
第三方面,本发明实施例提供了一种计算机设备,作为所创建虚拟专用网络系统中的PE,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明第一方面实施例提供的虚拟专用网络的选路方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明第一方面实施例提供的虚拟专用网络的选路方法。
本发明实施例提供的虚拟专用网络的选路方法、系统、设备及存储介质,该方法主要由虚拟专用网络中的PE来执行,且PE进行选择的虚拟网络线路,主要基于虚拟专用网络依赖至少一个ISP接入互联网时采用的IP地址构造。该方法首先可以在接收到用户侧设备发送的原始报文后,确定所构造各虚拟网络链路具备的当前链路优先级,之后可以根据当前链路优先级来确定用于该用户侧设备通信的目标虚拟网络链路。上述技术方案,与现有虚拟专用网络直接分配虚拟网络链路实现用户侧设备通信的方式相比,能够在用户侧终端设备需要进行通信时,主动考虑各虚拟网络链路的链路优先级,以便为用户侧设备选定有效的虚拟网络链路。通过本方法实现虚拟网络链路的主动筛选,保证了通过所选定虚拟网络链路能够实现上层业务数据的正常传输,有效提升了VPN系统的可用性,实现了虚拟专用网络通信的精细化控制。
附图说明
图1给出了现有专用网络通信所采用的其中一种VPN架构;
图2给出了本发明实施例一提供的一种虚拟专用网络的选路方法的流程示意图;
图3给出了本发明实施例二提供的一种虚拟专用网络的选路方法的流程示意图;
图3a给出了本实施例所提供虚拟专用网络选路方法中目标虚拟网络链路确定的其中一种实现流程图;
图4给出了本发明实施例三提供的一种虚拟专用网络系统的结构框图;
图5给出了本发明实施例四提供的一种计算机设备的硬件结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例方式作进一步地详细描述。应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。此外,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
在本申请的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
实施例一
图2给出了本发明实施例一提供的一种虚拟专用网络的选路方法的流程示意图,该方法适用于对虚拟专用网络中用户侧设备有通信需求时进行通信所需虚拟网络链路选择的情况,该方法可以由虚拟专用网络系统中的服务提供者设备执行,具体可以通过该服务提供者设备中的软件和/或硬件实现。
需要说明的是,本实施例所提供方法的其中一个应用场景可以描述为:一个互联网企业,在不同地理位置所搭建的机房内,不同地域间的内网设备存在通信需求,具备通信需求的内网设备可以作为用户侧设备。所创建的虚拟专用网络可以作为各用户侧设备的通信介质,为用户侧设备提供虚拟网络链路。现有的虚拟专用网络中,仅是简单向用户侧设备提供虚拟网络链路,并不关心虚拟网络链路的可用性,而通过用户侧设备采用双向转发探测机制对虚拟网络链路在通信中的可用状态进行探测,也无法有效保证上层业务数据的正常传输。
本实施例例提供的方法,具体由虚拟专用网络中的服务提供者设备作为执行主体来执行,相当于实现了虚拟专用网络对用户侧设备通信所需虚拟网络链路的自动化筛选,有效提升了虚拟专用网络的可用性。
具体的,如图1所示,本实施例一提供的一种虚拟专用网络的选路方法,包括如下操作:
S101、接收到用户侧设备发送的原始报文后,确定各所述虚拟网络链路当前具备的链路优先级。
在本实施例中,所述用户侧设备具体可指需要基于虚拟专用网络与对端进行通信的设备。而各用户侧设备之间可以使用边界网关协议来实现路由互联,最终可以通过以太网层通信服务与虚拟专用网络中的服务提供者设备建立连接。
本执行设备可以接收到建立了连接的用户侧设备提供的报文,该报文可以作为原始报文。本步骤可以在接收到用户侧设备的原始报文后,确定该用户侧设备具备通信需求,由此可以启动相对该用户侧设备的虚拟网络链路的选择操作。在链路选择操作的执行中,首先需要获得虚拟专用网路系统中构造的各虚拟网络链路的当前链路优先级。在本实施例中,各虚拟网络链路通过ISP所给定IP地址中的端口构建。
对于一个PE而言,其可以在接入互联网后,可以实时的或者周期性的为每条虚拟网络链路进行当前链路优先级的确定。因此,本步骤所确定的各虚拟网络链路的当前链路优先级,可以是本执行主体直接获得的由链路优先级确定机制对应当前时刻反馈的链路优先级信息;还可以是本执行主体经过原始报文的接收触发,而执行的链路优先级信息确定。
在本实施例中,其中,当前链路优先级可以用来体现虚拟网路链路是否可用,以及可用程度的高低。无论本步骤以上述何种形式获得各虚拟网络链路的当前链路优先级,其当前链路优先级的确定过程均与虚拟网络链路上的丢包率有关,示例性的,可以通过丢包率与丢包率阈值的比对结果,来确定虚拟网路链路的当前链路优先级,优选的,可认为丢包率越高,所具备的链路优先级就越低。
S102、根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路。
在本实施例中,对于每条虚拟网络链路而言,其所具备的当前链路优先级可以是表征当前处于不可用状态的低链路优先级;可以是表征当前处于高可用状态的高链路优先级,还可以是表征当前处于中度可用状态的中链路优先级。本步骤进行目标虚拟网络链路选择时,考虑从处于中度可用以及高可用,具备中链路优先级以及高链路优先级的虚拟网络链路进行选择,并认为处于不可用状态具备低链路优先级的虚拟网络链路不适用于用户侧设备进行通信使用。
在本实施例中,可以将目标虚拟网络链路的选择基于各当前链路优先级进行至少三种判定。如,可以判定高链路优先级和中链路优先级是否均存在,根据判定结果来决定不同的选择方式;之后还可以判定高链路优先级或中链路优先级是否存在,然后在根据判定结果来决定选择方式;最终还可以在判定高链路优先级和中链路优先级均不存在时,通过判定原始报文的报文类型来决定是否丢弃报文,或者,在低链路优先级中选定目标虚拟网络链路。其中,丢弃报文的执行中,相当于本执行设备不再为用户侧设备提供虚拟网络链路。
可以知道的是,本执行设备为用户侧设备选定目标虚拟网络链路后,可以把用户侧设备发送的原始报文封装在用户数据报协议(User Datagram Protocol,UDP)层的负载里发送给对端PE,对端PE反处理解封后取出原始报文,并转发给用户侧设备。同时,在丢弃了用户侧设备的原始报文后,本执行设备无需向用户侧设备进行信息反馈,用户侧设备可以通过双向转发探测机制检测到用于通信的虚拟网络链路出现了问题,进而用户侧设备可以启动其他备选虚拟专用网络的使用。
本发明实施例一提供的一种虚拟专用网络的选路方法,与现有虚拟专用网络直接分配虚拟网络链路实现用户侧设备通信的方式相比,能够在用户侧终端设备需要进行通信时,主动考虑各虚拟网络链路的链路优先级,以便为用户侧设备选定有效的虚拟网络链路。通过本方法实现虚拟网络链路的主动筛选,保证了通过所选定虚拟网络链路能够实现上层业务数据的正常传输,有效提升了VPN系统的可用性,实现了虚拟专用网络通信的精细化控制。
作为本发明实施例一的一个可选实施例,本可选实施例进一步优化包括了虚拟网络链路的构造步骤,具体的,该构造步骤包括:
针对所述虚拟专用网络中采用的每个ISP,按照所述ISP所提供的IP地址接入互联网后,提取通过所述IP地址生成的至少一个端口对,其中,各端口对中包括源端口和目标端口,且源端口和目标端口的端口号相同;
通过各所述端口对中的源端口和目标端口,分别构建一条与对端PE通信所需的虚拟网路链路。
在本可选实施例中,可以认为本实施例进行专有通信所采用的虚拟专用网络系统与现有创建的虚拟专用网络系统存在区别。本实施例所创建的虚拟专用网络系统中,PE之间考虑使用多个ISP的IP地址来接入互联网。由于各个ISP的互相备份,可以极大提高该虚拟专用网络系统在互联网上的可用性。示例性的,假设虚拟专用网络在一个国家境内使用了3个ISP,若每个ISP的故障概率为10%,则三个ISP同时故障的概率则为0.1%,其故障发生率可以降低100倍,很大程度了提升了系统可用性。
需要说明的是,PE之间采用多个ISP接入互联网后,考虑到IP地址中每个IP均具备通信所需的端口,由此,在一个IP地址中,通过每个IP的端口,可以进行端口对的生成,其中,可以规定每个端口对中包括了源端口和目标端口,且源端口和目标端口具备相同的端口号。进一步地,对于每一个端口对,都可看作一个端到端可达的虚拟网络链路,因此,本实施例中的每条虚拟网络链路相当于均可以看作有一个端口对构成。
可以知道的是,一个IP地址具备65534个端口,一个IP地址可以形成65534个端口对,因此,一个IP地址相当于可以构造出65534个虚拟网络链路。本实施例所采用的虚拟专用网络系统中使用了3个ISP的IP地址时,可构成的虚拟网络链路可以达到196602条。所提供如此大量的虚拟网络链路,基本保证了用户侧设备通过虚拟专用网络实现加密通信的有效性。
需要说明的是,本可选实施例中构造虚拟网络链路的执行主体同样可以是PE。同时,本实施例理论上需要对所构造的每条虚拟网络链路进行链路优先级的确定,即,目标虚拟网络链路的挑选过程面向所有虚拟网络链路进行。但是考虑到计算的时效性,本实施例可优选对具备业务流量的一部分虚拟网络链路进行链路优先级的确定,以及从该部分虚拟网络链路中进行目标虚拟网络链路的选定。本实施例不对进行链路优先级确定的虚拟网络链路数量进行具体限定,可以结合实际应用情况给出更匹配的调整。
实施例二
图3给出了本发明实施例二提供的一种虚拟专用网络的选路方法的流程示意图,本实施例二以上述实施例为基础进行优化。具体的,本实施例将确定各所述虚拟网络链路当前具备的链路优先级进一步优化为:针对每个ISP关联的每条虚拟网络链路,接收当前收发包信息,所述当前收发包信息由与本端PE建立通信连接的对端PE反馈;根据所述当前收发包信息确定所述虚拟网络链路的当前丢包率;通过所述当前丢包率与所设定丢包阈值的比对结果,确定所述虚拟网络链路当前具备的链路优先级。
同时,本实施例将根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路具体化为:遍历各所述当前链路优先级;如果高链路优先级和中链路优先级均存在,则根据各高链路优先级所对应虚拟网络链路的当前平均流量,确定用于所述用户侧设备通信的目标虚拟网络链路;如果仅存在高链路优先级或中链路优先级中的一种,则从高链路优先级或中链路优先级对应的虚拟网络链路中选择一条作为目标虚拟网络链路;如果高链路优先级和中链路优先级均不存在,则根据所述原始报文的报文类型,确定用于所述用户侧设备通信的目标虚拟网络链路。
如图3所示,本实施例提供的一种虚拟专用网络的选路方法,具体包括如下操作:
可以知道的是,本实施例下述S201至S203给出了虚拟网路链路所具备当前当前链路优先级的确定过程。在本实施例中,优选认为当前链路优先级的确定为实时进行。
S201、接收到用户侧设备发送的原始报文后,针对每个互联网服务提供商关联的每条虚拟网络链路,接收当前收发包信息。
其中,所述当前收发包信息由与本端PE建立通信连接的对端PE反馈。
在本实施例中,作为执行主体的本端PE可以确定出所属虚拟专用网络采用了多个ISP的IP地址接入互联网,本实施例进行当前链路优先级的确定时,可以按照ISP的不同,对所形成的各虚拟网络链路进行归属划分。
在实施例中,本端PE可以在接收到用户侧设备发送的原始报文后,可以针对每个ISP关联的每条虚拟网络链路进行当前链路优先级的确定。具体的,对于每条虚拟网络链路而言,相对于本端PE,均存在一个建立有通信连接的对端PE,及本端PE和对端PE通过该虚拟网络链路进行网络通信。
相对于每条虚拟网络链路,本端PE所执行的步骤为:接收与本端PE通过该虚拟网络链路建立通信连接的对端PE反馈的当前收发包信息。同时可以理解的是,假设一条虚拟网络链路不存在通信业务,则可认为相对于本端PE,对端不存在进行网络通信的对端PE,此时,可认为本端PE通过该虚拟网络链路,接收到对端PE反馈的当前收发包信息为空,由此,可认为该虚拟网络链路将不再参与当前链路优先级的确定,同时也不在参与目标虚拟网络链路的选择。
其中,本步骤所接收的当前收发包信息,可以是本端PE与对端PE在当前所对应统计周期内通信时所关联的发包信息以及收包信息,且发包信息相对于本端PE,收报信息相对于对端PE。
具体的,本实施例可以将所述当前收发包信息包括由本端PE在当前统计周期内统计并发送给所述对端PE的当前发包数,以及,所述对端PE在当前统计周期内统计出的当前收包数。其中,当前统计周期可优选为1秒。
在当前统计周期内,对于当前收发包信息的形成过程,可描述为:首先由本端PE向对端PE发送数据包,之后统计当前统计周期所发送数据包的发包数(记为当前发包数)并主动发送给对端PE。对端PE可以在对接收到的数据包进行收包统计,确定出当前收包数,并可以在接收到PE发送的当前发包数后,将该当前发包数以及统计出的当前收包数作为当前收发包信息反馈给本端PE。
S202、根据所述当前收发包信息确定所述虚拟网络链路的当前丢包率。
可以知道的是,本步骤可以通过提取当前收发包信息中收包信息以及发包信息结合丢包率计算公式,来获得该虚拟网络链路在当前所对应统计周期内的当前丢包率。
需要说明的是,本实施例所采用收发包信息确定方式中,可以对在虚拟网络链路处于低负载时,本端PE主动生成发送包并发送给对端PE,以此来主动补正发包量来增大发包量。本实施例通过上述方式进行当前收发包信息主要用于丢包率的确定,而本实例例采用上述方式进行收发包统计优点在于:可以避免虚拟网络链路上的业务负载较低时因发包数过小而导致的丢包率被放大的情况。原因分析描述为:假设低负载情况下本端PE发包数为5,而对端PE的收包数为4,则丢包率相当于1/5,可以看出该丢包率高达20%,已经属于高程度丢包。从而达到既不影响业务高峰时PE的性能又可准确获取丢包率的效果。
在上述优化的基础上,可以将根据所述当前收发包信息确定所述虚拟网络链路的当前丢包率具体化为:根据所述当前发包数及当前收包数确定所述虚拟网络链路的当前丢包率。
在本实施例中,丢包率的计算公式为:发包数与收包数的差值,与发包数的比值。因此,在已知当前发包数和当前收包数后,结合上述公式,可以以计算出具备的当前丢包率。
需要说明的是,本端PE与对端PE通过虚拟网络链路进行通信时主要采UDP。采用该UDP协议进行数据包发送时,可能会出现UDP乱序到达对端PE,导致某一统计周期的收包数大于发包数的情况,出现该种情况时,所采用的解决方式可以描述为:计算收包数与发包数的差值,将该差值保存,以便与下一统计周期中的收包数相加,作为下一周期新的收包数。该种解决方式避免了实际应用中因探测包路径和实际业务路径不一致导致丢包率不准确的问题
基于此可以知道,在进行该当前统计周期所对应丢包率的计算时,如果预先存储有收包数与发包数的差值,则可以将在差值与上述获取到的收包数相加,作为该当前统计周期的新的收包数,采用丢包率公式进行丢包率计算。同样的,如果该当前统计周期下所获得当前收发包数据信息中的收包数大于发包数,同样可以计算出收包数与发包数的差值并存储,以用于下一统计周期内丢包率的计算。
本步骤中使用的实施例丢包率计算起到了对虚拟网络链路进行精细化控制的效果。
S203、通过所述当前丢包率与所设定丢包阈值的比对结果,确定所述虚拟网络链路当前具备的链路优先级。
在本实施例中,所设定丢包阈值可以是一个丢包阈值,也可以至少两个丢包阈值,无论丢包阈值个数为多少,均可将当前丢包率与各丢包阈值进行比对,同时可以获得到比对结果。
本实施例优选设定三个等级的链路优先级,因此,可优选设定两个丢包阈值,并通过两个丢包阈值,构成三个阈值区间,每个阈值区域对应了一个链路优先级。在确定了当前丢包率与各丢包阈值的比对结果后,相当于确定了丢包率所归属的阈值区间,也即可以将所归属阈值区间对应的链路优先级作为该虚拟网络链路的当前链路优先级。
具体的,本实施例可以将通过所述当前丢包率与所设定丢包阈值的比对结果,确定所述虚拟网络链路当前具备的链路优先级具体化为下述步骤:
a1、将所述当前丢包率分别与设定的第一丢包阈值以及第二丢包阈值进行比对。
示例性的,优选采用第一丢包阈值和第二丢包阈值分别与当前丢包率进行比对。其中,第一丢包阈值大于第二丢包阈值。下述b1~d1给出了虚拟网络链路在三个不同比对结果下分别可能对应的当前链路优先级。
b1、如果所述当前丢包率大于或等于第一丢包阈值,则确定所述虚拟网络链路为不可用状态,当前处于低链路优先级。
第一丢包阈值可认为是丢包率的临界上限值,即,在丢包率高于稿第一丢包阈值时,可认为上层业务的网络通信性能将受到较大影响,其对应的虚拟网络链路不适宜进行网络传输,可认为该虚拟网络链路处于了不可用状态,并可认为其处于低链路优先级,即该虚拟网络链路的当前链路优先级为低链路优先级。
c1、如果所述当前丢包率大于或等于第二丢包阈值,且小于所述第一丢包阈值,则确定所述虚拟网络链路为可用状态,当前处于中链路优先级。
第二丢包阈值也为一个临界值,主要用于划定虚拟网络链路为高可用还是中等可用。满足本步骤的条件时,相当于虚拟网络链路为可用状态,但并未达到高可用状态,由此可认为该虚拟网络链路的当前链路优先级为中链路优先级。
d1、如果所述当前丢包率小于所述第二丢包阈值,则确定所述虚拟网络链路为高可用状态,当前处于高链路优先级。
小于第二丢包阈值时,可认为该虚拟网络链路的可用状态满足高可用状态,此时的当前链路优先级相当于高链路优先级。
示例性的,本实施例中的第一丢包阈值可以为3.5%;第二丢包阈值可以为0.5%。
下述S204至S209给出了目标虚拟链路的选定实现。
S204、遍历各所述当前链路优先级。
可以对获取到的当前链路优先级进行遍历操作,确定出哪些为高链路优先级的虚拟网络链路,哪些为中链路优先级的虚拟网络链路,哪些为低链路优先级的虚拟网络链路。
S205、判定高链路优先级和中链路优先级是否均存在,若是,则执行S206;若否,则执行S207。
本实施例主要考虑从具备高链路优先级和中链路优先级的虚拟网路链路中选择目标虚拟网络链路。因此,可首先通过本步骤进行是否同时存在高链路优先级和中链路优先级所对应虚拟网络链路的判定,并可在判定同时存在是,通过S206的操作来确定目标虚拟网络链路;以及在判定未同时存在时,继续通过S207来进一步进行后续判定。
S206、根据各高链路优先级所对应虚拟网络链路的当前平均流量,确定用于所述用户侧设备通信的目标虚拟网络链路。
可以知道的是,每条正在进行网络通信的虚拟网络链路上,可以按流量的形式来计算该虚拟网络链路的负载大小。在上述高链路优先级和中链路优先级所对应虚拟网络链路均存在时,优先考虑从高链路优先级的虚拟网络链路中选择目标虚拟网络链路。
本步骤可以通过各高链路优先级所对应虚拟网络链路上当前平均流量的确定,来判定高链路优先级所对应虚拟网络链路当前的整体负载情况,如果负载情况合适,则优先从高链路优先级的虚拟网络链路中选择;否则,更倾向于从中链路优先级的虚拟网路链路中选择。
其中,本实施例可认为所计算的当前平均流量大于设定的流量阈值时,认为高级链路优先级各虚拟网络链路的整体负载情况相对较大,此时可设定从高链路优先级以及中链路优先级的虚拟网络链路中选择目标虚拟网络链路的选择比例相同;如果平均流量小于或等于设定的流量阈值时,可认为高级链路优先级各虚拟网络链路的整体负载情况相对较小,此时可设定从高链路优先级以及中链路优先级的虚拟网络链路中选择目标虚拟网络链路的选择比例为:高链路优先级明显大于中链路优先级。
具体的,图3a给出了本实施例所提供虚拟专用网络选路方法中目标虚拟网络链路确定的其中一种实现流程图。如图3a所示,本实施例可以将根据各高链路优先级所对应虚拟网络链路的当前平均流量,确定用于所述用户侧设备通信的目标虚拟网络链路,具体化为:
S2061、确定具备高链路优先级的各候选虚拟网络链路,并统计候选链路数量。
示例性的,本实施例优选高链路优先级的虚拟网络链路为候选虚拟网络链路。该类候选虚拟网络链路的数量也可直接统计到。
S2062、监测各所述候选虚拟网络链路的当前流量值,通过各所述当前流量值及所述候选链路数量,确定对应的当前平均流量。
可以通过给定的流量监测器对各候选虚拟网络链路的当前流量情况进行监测,由此可以确定出所有候选虚拟网络链路的当前流量值。本步骤可以将所有当前流量值之和与候选链路数量的比值作为高级链路优先级下虚拟网路链路的当前平均流量。
S2063、判定所述当前平均流量是否大于设定流量阈值,若是,则执行S2064;若否,则执行S2065。
示例性的,该设定流量阈值相当于用来评判虚拟网络链路负载大小的评判值。当前平均流量大于该设定流量阈值时,认为高级链路优先级各虚拟网络链路的整体负载情况相对较大,此时可执行S2064;相对的,可认为高级链路优先级各虚拟网络链路的整体负载情况相对较小,此时可执行S2065。
S2064、按照给定的第一选定比例值从高链路优先级及中链路优先级对应的虚拟网络链路中选择一条作为目标虚拟网络链路。
其中,选定比例值可认为是高链路优先级与中链路优先级所对应虚拟网络链路的选定比值。第一选定比例值可优选为3:1,即,在进行目标虚拟网络链路筛选时,所参与筛选的虚拟网络链路中具备高链路优先级的链路数量与具备中链路优先级的链路数量之比为3:1,之后可以按照哈希策略从满足上述比例条件的虚拟链路集合中选择一条具体的虚拟网络链路作为目标虚拟网络链路。
S2065、按照给定的第二选定比例值从高链路优先级及中链路优先级对应的虚拟网络链路中选择一条作为目标虚拟网络链路。
其中,第二比例值可优选为1:1,即,相当于在进行目标虚拟网络链路筛选时,所参与筛选的虚拟网络链路中具备高链路优先级的链路数量与具备中链路优先级的链路数量之比为1:1,之后可以按照哈希策略从满足上述比例条件的虚拟链路集合中选择一条具体的虚拟网络链路作为目标虚拟网络链路。
其可以看出,选定比例值中的第一选定比例值小于所述第二选定比例值。
S207、判定高链路优先级和中链路优先级是否均不存在,若是,则执行S208;若否,执行S209。
接上述S205的判定描述,可以在高链路优先级和中链路优先级未同时存在时,进一步通过本步骤判定高链路优先级和中链路优先级是否均不存在,如果均不存在,需要执行S208;如果判定为否,则相当于可能存在高链路优先级的虚拟网络链路,或者存在中链路优先级的虚拟网络链路,此时可执行S209。
S208、根据所述原始报文的报文类型,确定用于所述用户侧设备通信的目标虚拟网络链路。
在高链路优先级和中链路优先级的虚拟网络链路均不存在时,可认为当前仅存在低链路优先级的虚拟网络链路。此时可以对原始报文的报文类型进行分析,并基于分析结果,确定是从低链路优先级的虚拟网络链路中选择一条作为目标虚拟网络链路;还是直接丢弃掉该原始报文,相当于并不进行该原始报文到对端用户侧设备的发送。
具体的,本实施例可以将根据所述原始报文的报文类型,确定用于所述用户侧设备通信的目标虚拟网络链路进一步优化为:提取所述原始报文的报文类型;如果所述报文类型为信令报文,则不进行所述目标虚拟网络链路的选择,并丢弃所述原始报文;否则,选择一条满足设定条件的虚拟网络链路作为目标虚拟网络链路;其中,所述设定条件为虚拟网络链路的丢包率最小。
在本实施例中,信令报文可以是边界网关协议报文或者双向转发探测报文。如果是该类信令报文,就可直接丢弃掉该报文,不再进行后续通信,以此来告知用户侧终端虚拟专用网络系统中当前不存在可用的虚拟网络链路。
如果不是上述信令报文,则可以对低链路优先级中各虚拟网络链路进行丢包率的比对,从而选中丢包率最小的一条虚拟网络链路作为目标虚拟网络链路。
S209、从高链路优先级或中链路优先级对应的虚拟网络链路中选择一条作为目标虚拟网络链路。
可以知道的是,在仅存在高链路优先级的虚拟网络链路或者仅存在中链路优先级的虚拟网络链路时,可以从仅存在链路优先级对应的虚拟网络链路中随机的选择一条作为目标虚拟网络链路。
本实施例二提供的一种虚拟专用网络的选路方法,具体化了当前链路优先级的确定操作;还具体化了目标虚拟网络链路的确定操作,能够实现目标虚拟网络链路的智能化选择,并实现各虚拟网络链路丢包率都达到配置不可用条件时主动丢弃信令报文,达到主动引导用户侧设备进行虚拟专用网络切换的效果。通过本方法实现虚拟网络链路的主动筛选,保证了通过所选定虚拟网络链路能够正常传输使用TCP协议的上层业务数据,很大层度提升了VPN系统的可用性,实现了虚拟专用网络通信的精细化控制。
作为本实施例二的一种可选实施例,在上述实施例基础上,本可选实施例进一步在通过所述当前丢包率与所设定丢包阈值的比对结果,确定所述虚拟网络链路当前具备的链路优先级之后优化增加了:确定所述虚拟网络链路所归属目标ISP的线路质量,并根据所述线路质量调整所述虚拟网络链路的链路优先级。
需要说明的是,虚拟专用网络系统中采用多个ISP接入互联网的设定,除了考虑所接入ISP数量增加对虚拟专用网络高故障率的有效限定。还考虑了ISP的线路质量对所对应各虚拟网络链路的链路优先级影响。当ISP的线路质量未达到一定要求时,可以直接认为基于ISP所构造的各虚拟网络链路的可用性均受到影响,甚至处于不可用状态,由此,本可选实施例增设了ISP的线路质量对虚拟网络链路的链路优先级的调整影响。
示例性的,本可选实施例可以将ISP的线路质量划分为线路质量好和线路质量差两个等级,由此,在ISP线路质量为线路质量差时,可以直接将归属于该ISP线路的所有虚拟网络链路的链路优先级调整为低链路优先级。由此,面向归属于该ISP线路的每一条未处于低链路优先级的虚拟网络链路而言,均相当于执行了将链路优先级调整为低链路优先级的操作。
本可选实施例上述增加的步骤实际包括了两方面内容:一是确定ISP线路的线路质量;另一是确定如何基于ISP线路质量进行链路优先级的调整。
首先,在本可选实施例中,可以将确定所述虚拟网络链路所归属目标ISP的线路质量具体优化为:
需要说明的是,本可选实施例以上述实施例为引用基础,因此,在进行ISP线路质量的确定时,依旧站在任一ISP下的任一虚拟网络链路这个角度展开描述。
a2、获取所述目标ISP在当前打分周期下的当前有效分值,其中,所述当前打分周期为从当前时刻向前第一设定时间段。
本可选实施例可以将上述实施例所提及虚拟网络链路归属的ISP记为目标ISP。其中,所述第一设定时间段可优选为当前时刻向前10秒构成的时间段。
其中,当前有效分值的确定步骤可以描述为:
a21、从归属于所述目标ISP的各虚拟网络链路中,统计在当前打分周期内处于高链路优先级的第一链路数量、处于中链路优先级的第二链路数量。
可以知道的是,采用本实施例上述链路优先级确定的方式,可以为该目标ISP下的每条虚拟网络链路确定出一个链路优先级,基于各虚拟网络链路的链路优先级,可以统计出该当前打分周期下处于高链路优先级的虚拟网络链路的第一链路数量,以及处于中链路优先级的虚拟网络链路的第二链路数量。
其中,可认为本实施例对虚拟网络链路的链路优先级确定为实时进行的,由此,在形成当前打分周期的时间段内,相当于每条虚拟网络链路在该时间段内的每个时刻均存在相应的链路优先级。本实施例可优选认为第一链路数量为在该当前打分周期的时间段内一直处于高链路优先级的虚拟网络链路的数量;同样的,第二链路数量为在该当前打分周期的时间段内一直处于中链路优先级的虚拟网络链路的数量。
a22、根据所述第一链路数量以及第二链路数量,结合给定原始分值计算公式,确定所述目标ISP在当前打分周期的当前原始分值。
在本可选实施例中,原始分值计算公式可以描述为:
其中,Si表征第i打分周期下的原始分值;dL0表征第一链路数量,dL1表征第二链路数量;lL0表征第一链路权重;lL1表征第二链路权重;D表征目标ISP下所有虚拟网络链路的总数量。优选的,lL0可以为700,lL1可以为300。
通过上述公式,可以确定出目标ISP在当前打分周期的当前原始分值。
a23、获取所述目标ISP在当前打分周期的前一打分周期的前一原始分值。
其中,该前一原始分值可以预先进行缓存,本步骤可以直接获取。
a24、根据所述当前原始分值和前一原始分值,结合给定有效分值计算公式,确定所述目标ISP在当前打分周期的当前有效分值。
在本可选实施例中,有效分值计算公式可以描述为:
其中,Si`表征第i打分周期下的有效分值,Si表征第i打分周期下的原始分值;Si-1表征第i-1打分周期下的原始分值;wi表征第i打分周期下的分值权重;wi-1表征第i-1打分周期下的分值权重。优选的,wi可以为5,wi-1也可以5。
通过上述公式,可以确定出目标ISP在当前打分周期的当前有效分值。
b2、如果所述当前有效分值大于或等于预设置的第一打分阈值,则确定所述目标ISP的线路质量为差等质量。
c2、如果所述当前有效分值小于或等于预设置的第二打分阈值,则确定所述目标ISP的线路质量为优等质量。
其中,所述第一打分阈值大于所述第二打分阈值,且第一打分阈值优先为850;第二打分阈值优选为200。
还可以理解的是,本实施例上述提及的前一原始分值等相关的历史信息也均预先进行了缓存,可以在计算需要时直接获取,本实施例中配置的各种阈值均可认为通过历史经验设定。
此外,本可选实施例还可以将确定所述虚拟网络链路所归属目标ISP的线路质量具体化为:
可以知道的是,此处进行ISP线路质量的确定时,依旧站在任一ISP下的任一虚拟网络链路这个角度展开描述,且本描述为目标ISP的线路质量确定的另一种实现方式。
a3、获取所述目标ISP在当前计数周期下的当前警示计数值,其中,所述当前计数周期为从当前时刻向前第二设定时间段。
本描述中同样将上述实施例所提及虚拟网络链路归属的ISP记为目标ISP,其中,所述第二设定时间段可优选为当前时刻向前15分钟构成的时间段。其中,当前警示计数值的确定步骤可以描述为:
a31、将所述当前计数周期按给定的时间窗口进行划分。
示例性的,时间窗口的时长可优选为10秒,上述15分钟作为计数周期时,可以获得的时间窗口量为90个。
a32、从归属于所述目标ISP的各虚拟网络链路中,统计在各所述时间窗口下处于低链路优先级的第三链路数量。
针对划分出的每个时间窗口,均可以获取到其所包含低链路优先级的虚拟网络链路的链路数量,本实施例记为第三链路数量。
同样的,基于上述描述,本实施例同样可优选认为每个第三链路数量为在相应时间窗口对应的时间段内一直处于低链路优先级的虚拟网络链路的数量。
本可选实施例所采用的有效分值以及警示计数值的方式来进行ISP线路质量的判定,充分考虑了ISP线路在一定时间段内的变化趋势,所确定出信息也更加有效。
a33、将各所述第三链路数量与给定的数量阈值进行比对。
每个时间窗口下的第三链路数量均与数量阈值进行比对,其中,该数量阈值可以优选为该目标ISP下所归属虚拟网络链路总量的30%。
a34、统计比对结果为大于所述数量阈值的出现总数,将所述出现总数作为所述目标ISP的当前警示计数值。
可以知道的是,各所述第三链路数量分别与数量阈值的比对结果要么为大于该数量阈值,要么为小于或等于该数量阈值。本步骤可以统计出所有比对结果为大于所述数量阈值的出现总数,该出现总数就可以作为目标ISP在当前计数周期下的当前警示计数值。
b3、如果所述当前警示计数值大于或等于预设置的第一计数阈值,则确定所述目标ISP的线路质量为差等质量。
c3、如果所述当前警示计数值小于或等于预设置的第二计数阈值,则确定所述目标ISP的线路质量为优等质量。
其中,所述第一计数阈值大于所述第二计数阈值,且在15分钟第二设定时间段,以10秒为时间窗口的设定下,第一计数阈值优选为30;第二技术阈值优选为20。
同时,本可选实施例还可以将根据所述线路质量调整所述虚拟网络链路的链路优先级具体化为:如果所述目标ISP的线路质量为差等质量,则调整所述虚拟网络链路为不可用状态,并将链路优先级调整为低链路优先级。
可以知道的是,确定出虚拟网络链路所归属目标ISP的线路质量为差等质量后,可以将该目标ISP下所有虚拟网络链路的链路优先级调整为低链路优先级,即上述实施例所关联虚拟网络链路的链路优先级也相应进行了调整,处于低链路优先级。此时可认为该目标ISP下归属的各虚拟网络链路均适合进行虚拟专用网络数据包的发送。
本可选实施例中使用ISP线路的有效分值以及警示计数值进行线路质量确定的方式,也进一步达到了在多个ISP线路中优先使用高质量ISP线路进行虚拟专用网络数据包发送的目的,进一步提升了虚拟专用网络的可用性。
实施例三
图4给出了本发明实施例三提供的一种虚拟专用网络系统的结构框图,该虚拟专用网络系统为互联网企业用户提供公网资源建立的虚拟专用网,使得企业用户能够通过虚拟专用网进行加密通信。如图4所示,该系统采用至少一个互联网服务提供商ISP31所给定IP地址接入互联网,包括:通过各IP地址构建的虚拟网络链路(未示出),以及设置在不同地域位置中的服务提供者设备PE32(图中示出两个PE);
任一PE通过一条虚拟网络链路与其他的对端PE建立通信连接。
同时,对于每个PE而言,包括:
链路级别确定模块,用于接收到用户侧设备发送的原始报文后,确定各所述虚拟网络链路当前具备的链路优先级;
目标选择模块,用于根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路。
图4作为本实施例所提供虚拟专用网络系统的其中一种优选示例架构,在其配置中优选使用3个ISP31接入互联网,且用户侧设备可以采用以太网通信服务与服务提供者设备32建立通信,此外用户侧设备之间可以采用边界网关协议通过维护IP路由表实现各个自治系统之间的可达性。
同时,可认为本实施例所提供虚拟专用网络系统中的每个PE均集成有上述模块,同样具备了虚拟专用网络的选路方法的执行权限。
本实施例三提供的一种虚拟专用网络系统,与现有虚拟专用网络系统直接分配虚拟网络链路实现用户侧设备通信的方式相比,能够在用户侧终端设备需要进行通信时,主动考虑各虚拟网络链路的链路优先级,以边为用户侧设备选定有效的虚拟网络链路。通过本方法实现虚拟网络链路的主动筛选,保证了通过所选定虚拟网络链路能够实现上层业务数据的正常传输,有效提升了VPN系统的可用性,实现了虚拟专用网络通信的精细化控制。
实施例四
图5给出了本发明实施例四提供的一种计算机设备的硬件结构示意图,具体地,该计算机设备可以作为上述实施例所提供虚拟专用网络系统中的服务提供者设备,具体可以包括:处理器和存储装置。存储装置中存储有至少一条指令,且指令由所述处理器执行,使得所述计算机设备执行如上述方法实施例所述的虚拟专用网络的选路方法。
参照图5,该计算机设备具体可以包括:处理器40、存储装置41、显示屏42、输入装置43、输出装置44以及通信装置45。该计算机设备中处理器40的数量可以是一个或者多个,图5中以一个处理器40为例。该计算机设备中存储装置41的数量可以是一个或者多个,图5中以一个存储装置41为例。该计算机设备的处理器40、存储装置41、显示屏42、输入装置43、输出装置44以及通信装置45可以通过总线或者其他方式连接,图5中以通过总线连接为例。
具体的,实施例中,处理器40执行存储装置41中存储的一个或多个程序时,可以实现如下操作:接收到用户侧设备发送的原始报文后,确定各所述虚拟网络链路当前具备的链路优先级;根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路。
本发明实施例还提供一种计算机可读存储介质,所述存储介质中的程序由计算机设备的处理器执行时,使得计算机设备能够执行如上述实施例所述的虚拟专用网络的选路方法。示例性的,上述实施例所述的虚拟专用网络的选路方法包括:接收到用户侧设备发送的原始报文后,确定各所述虚拟网络链路当前具备的链路优先级;根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路。
需要说明的是,对于系统、计算机设备、存储介质实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是机器人,个人计算机,服务器,或者网络设备等)执行本发明任意实施例所述的虚拟专用网络的选路方法。
值得注意的是,上述将一种虚拟专用网络系统中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种虚拟专用网络的选路方法,其特征在于,应用于所创建虚拟专用网络系统中的服务提供者设备,其中,所述虚拟专用网络系统采用至少一个互联网服务提供商给定的IP地址来接入互联网并构造虚拟网络链路,所述方法包括:
接收到用户侧设备发送的原始报文后,确定各所述虚拟网络链路当前具备的链路优先级,所述确定各所述虚拟网络链路当前具备的链路优先级,包括:
针对每个互联网服务提供商关联的每条虚拟网络链路,接收当前收发包信息,所述当前收发包信息由与本端服务提供者设备建立通信连接的对端服务提供者设备反馈;
根据所述当前收发包信息确定所述虚拟网络链路的当前丢包率;其中,所述当前收发包信息包括当前发包数和当前收包数,当数据包乱序到达对端服务提供者设备时,计算收包数与发包数的差值,将该差值保存,以用于下一统计周期中的收包数相加,作为下一周期新的收包数;
通过所述当前丢包率与所设定丢包阈值的比对结果,确定所述虚拟网络链路当前具备的链路优先级;
根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路。
2.根据权利要求1所述的方法,其特征在于,虚拟网络链路的构造步骤包括:
针对所述虚拟专用网络中采用的每个互联网服务提供商,按照所述互联网服务提供商所提供的IP地址接入互联网后,提取通过所述IP地址生成的至少一个端口对,其中,各端口对中包括源端口和目标端口,且源端口和目标端口的端口号相同;
通过各所述端口对中的源端口和目标端口,分别构建一条与对端服务提供者设备通信所需的虚拟网路链路。
3.根据权利要求1所述的方法,其特征在于,所述当前收发包信息包括由本端服务提供者设备在当前统计周期内统计并发送给所述对端服务提供者设备的当前发包数,以及,所述对端服务提供者设备在当前统计周期内统计出的当前收包数;
相应的,根据所述当前收发包信息确定所述虚拟网络链路的当前丢包率,包括:
根据所述当前发包数及当前收包数确定所述虚拟网络链路的当前丢包率。
4.根据权利要求1所述的方法,其特征在于,在通过所述当前丢包率与所设定丢包阈值的比对结果,确定所述虚拟网络链路当前具备的链路优先级之后,还包括:
确定所述虚拟网络链路所归属目标互联网服务提供商的线路质量,并根据所述线路质量调整所述虚拟网络链路的链路优先级。
5.根据权利要求4所述的方法,其特征在于,所述确定所述虚拟网络链路所归属目标互联网服务提供商的线路质量,包括:
获取所述目标互联网服务提供商在当前打分周期下的当前有效分值,其中,所述当前打分周期为从当前时刻向前第一设定时间段;
如果所述当前有效分值大于或等于预设置的第一打分阈值,则确定所述目标互联网服务提供商的线路质量为差等质量;
如果所述当前有效分值小于或等于预设置的第二打分阈值,则确定所述目标互联网服务提供商的线路质量为优等质量;
其中,所述第一打分阈值大于所述第二打分阈值。
6.根据权利要求4所述的方法,其特征在于,所述确定所述虚拟网络链路所归属目标互联网服务提供商的线路质量,包括:
获取所述目标互联网服务提供商在当前计数周期下的当前警示计数值,其中,所述当前计数周期为从当前时刻向前第二设定时间段;
如果所述当前警示计数值大于或等于预设置的第一计数阈值,则确定所述目标互联网服务提供商的线路质量为差等质量;
如果所述当前警示计数值小于或等于预设置的第二计数阈值,则确定所述目标互联网服务提供商的线路质量为优等质量;
其中,所述第一计数阈值大于所述第二计数阈值。
7.根据权利要求6所述的方法,其特征在于,所述当前警示计数值的确定步骤包括:
将所述当前计数周期按给定的时间窗口进行划分;
从归属于所述目标互联网服务提供商的各虚拟网络链路中,统计在各所述时间窗口下处于低链路优先级的第三链路数量;
将各所述第三链路数量与给定的数量阈值进行比对;
统计比对结果为大于所述数量阈值的出现总数,将所述出现总数作为所述目标互联网服务提供商的当前警示计数值。
8.一种虚拟专用网络系统,其特征在于,采用至少一个互联网服务提供商所给定IP地址接入互联网,包括:通过各IP地址构建的虚拟网络链路,以及设置在不同地域位置中的服务提供者设备;
任一服务提供者设备通过一条虚拟网络链路与其他的对端服务提供者设备建立通信连接;
针对每个服务提供者设备,包括:
链路级别确定模块,用于接收到用户侧设备发送的原始报文后,确定各所述虚拟网络链路当前具备的链路优先级,所述确定各所述虚拟网络链路当前具备的链路优先级,包括:
针对每个互联网服务提供商关联的每条虚拟网络链路,接收当前收发包信息,所述当前收发包信息由与本端服务提供者设备建立通信连接的对端服务提供者设备反馈;
根据所述当前收发包信息确定所述虚拟网络链路的当前丢包率;其中,所述当前收发包信息包括当前发包数和当前收包数,当数据包乱序到达对端服务提供者设备时,计算收包数与发包数的差值,将该差值保存,以用于下一统计周期中的收包数相加,作为下一周期新的收包数;
通过所述当前丢包率与所设定丢包阈值的比对结果,确定所述虚拟网络链路当前具备的链路优先级;
目标选择模块,用于根据各所述链路优先级,确定用于所述用户侧设备通信的目标虚拟网络链路。
9.一种计算机设备,其特征在于,作为所创建虚拟专用网络系统中的服务提供者设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7任一项所述的虚拟专用网络的选路方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任一项所述的虚拟专用网络的选路方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110949179.5A CN113676408B (zh) | 2021-08-18 | 2021-08-18 | 虚拟专用网络的选路方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110949179.5A CN113676408B (zh) | 2021-08-18 | 2021-08-18 | 虚拟专用网络的选路方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113676408A CN113676408A (zh) | 2021-11-19 |
CN113676408B true CN113676408B (zh) | 2023-03-24 |
Family
ID=78543555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110949179.5A Active CN113676408B (zh) | 2021-08-18 | 2021-08-18 | 虚拟专用网络的选路方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113676408B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114205285B (zh) * | 2021-11-24 | 2024-01-05 | 中盈优创资讯科技有限公司 | 一种基于链路质量的ospf路由选路方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2947824A1 (en) * | 2014-05-23 | 2015-11-25 | Deutsche Telekom AG | Method for providing virtual private network (VPN) functionality to a customer edge (CE) device using a service provider (SP) network, service provider network for providing virtual private network (VPN) functionality to a customer edge (CE) device, program and computer program product |
CN111711556A (zh) * | 2020-06-17 | 2020-09-25 | 北京字节跳动网络技术有限公司 | 虚拟专用网络的选路方法、装置、系统、设备及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103312613B (zh) * | 2012-03-16 | 2018-08-10 | 南京中兴新软件有限责任公司 | 业务报文转发方法和装置 |
US9923781B2 (en) * | 2015-11-18 | 2018-03-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Designated forwarder (DF) election and re-election on provider edge (PE) failure in all-active redundancy topology |
CN109474506A (zh) * | 2018-11-15 | 2019-03-15 | 中国联合网络通信集团有限公司 | 建立虚拟专用网络vpn业务的方法及装置 |
CN110011839B (zh) * | 2019-03-26 | 2022-04-08 | 新华三技术有限公司 | 报文转发方法、装置、spe及存储介质 |
CN112671650B (zh) * | 2020-12-28 | 2022-07-22 | 网络通信与安全紫金山实验室 | Sd-wan场景下的端到端sr控制方法、系统和可读存储介质 |
-
2021
- 2021-08-18 CN CN202110949179.5A patent/CN113676408B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2947824A1 (en) * | 2014-05-23 | 2015-11-25 | Deutsche Telekom AG | Method for providing virtual private network (VPN) functionality to a customer edge (CE) device using a service provider (SP) network, service provider network for providing virtual private network (VPN) functionality to a customer edge (CE) device, program and computer program product |
CN111711556A (zh) * | 2020-06-17 | 2020-09-25 | 北京字节跳动网络技术有限公司 | 虚拟专用网络的选路方法、装置、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113676408A (zh) | 2021-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11575559B1 (en) | Monitoring and detecting causes of failures of network paths | |
CN107810619B (zh) | 用于推断广域网中的网络拓扑和路径度量的系统和方法 | |
US10554538B2 (en) | Dynamic link state routing protocol | |
US8661295B1 (en) | Monitoring and detecting causes of failures of network paths | |
US8942106B2 (en) | Method and apparatus for route optimization enforcement and verification | |
CA2637743C (en) | Method and apparatus for the assessment and optimization of network traffic | |
US7773536B2 (en) | Method and apparatus for the assessment and optimization of network traffic | |
EP2432164B1 (en) | Node device and communication method | |
AU2018202047B2 (en) | Network status evaluation | |
US10411972B2 (en) | Determining impact of network failures | |
US20030039212A1 (en) | Method and apparatus for the assessment and optimization of network traffic | |
EP4002769A1 (en) | System and method for evaluating transmission performance related to network node and related device | |
US9094297B2 (en) | Wide area network monitoring | |
JP2001024699A (ja) | ネットワーク負荷分散システム | |
JP2004528775A (ja) | インテリジェント配信に関するネットワークサービスレベルを保証するシステム及び方法 | |
JP2015027092A (ja) | サービス品質(qos)ベースのシステム、ネットワーク、及びアドバイザー背景 | |
JP7313480B2 (ja) | スライスベースネットワークにおける輻輳回避 | |
US9001667B1 (en) | Monitoring and detecting causes of failures of network paths | |
KR20140088206A (ko) | 네트워크 측정 트리거들을 사용하는 서비스 보장 | |
CN113676408B (zh) | 虚拟专用网络的选路方法、系统、设备及存储介质 | |
US9030951B2 (en) | System and method for improving network convergence via adaptive routing techniques | |
US20220217179A1 (en) | Methods and devices for measuring reputation in a communication network | |
US20190394143A1 (en) | Forwarding data based on data patterns | |
EP1826947A2 (en) | Method and apparatus for the assessment and optimization of network traffic | |
CN114884866A (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 |