一种传输数据的方法、装置、存储介质和电子设备

文档序号:1711794 发布日期:2019-12-13 浏览:28次 >En<

阅读说明:本技术 一种传输数据的方法、装置、存储介质和电子设备 (Data transmission method and device, storage medium and electronic equipment ) 是由 赵帅鹏 李金国 施德军 党帆 于 2019-09-30 设计创作,主要内容包括:本申请实施例提供一种传输数据的方法、装置、存储介质和电子设备,该方法包括:获取至少两条虚拟专用网络VPN隧道的安全策略中的VPN隧道的优先级;从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道;利用优先级最高的VPN隧道传输数据。本申请实施例通过获取至少两条VPN隧道的安全策略中的VPN隧道的优先级,并从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道,以及利用优先级最高的VPN隧道传输数据。从而,在两个子网之间建立有两条VPN隧道的情况下,可以通过选取优先级最高的VPN隧道来传输数据,从而由于优先级最高的VPN隧道具有较好的数据传输性能,进而能够保证数据传输的稳定性。(the embodiment of the application provides a method, a device, a storage medium and an electronic device for transmitting data, wherein the method comprises the following steps: acquiring the priority of the VPN tunnels in the security policies of at least two virtual private network VPN tunnels; selecting a VPN tunnel with the highest priority from the security policies of at least two VPN tunnels; and transmitting the data by using the VPN tunnel with the highest priority. According to the embodiment of the application, the priority of the VPN tunnel in the security policies of the at least two VPN tunnels is obtained, the VPN tunnel with the highest priority is selected from the security policies of the at least two VPN tunnels, and the VPN tunnel with the highest priority is used for transmitting data. Therefore, under the condition that two VPN tunnels are established between two subnetworks, data can be transmitted by selecting the VPN tunnel with the highest priority, and the VPN tunnel with the highest priority has better data transmission performance, so that the stability of data transmission can be ensured.)

一种传输数据的方法、装置、存储介质和电子设备

技术领域

本申请涉及网络安全技术领域,具体而言,涉及一种传输数据的方法、装置、存储介质和电子设备。

背景技术

VPN(Virtual Private Network,虚拟专用网络)是指在公用网络上建立专用网络的技术,VPN支持通信双方之间建立VPN隧道,以便对传输过程进行加密,提高数据安全性。

目前,为了保证数据传输的稳定性,通常在两个子网之间建立有多条VPN隧道,从而实现VPN隧道的备份。

例如,在两个子网之间建立有多条IPSEC(Internet Protocol Security,互联网安全协议)隧道的情况下,当其中一条IPSEC隧道异常断开后,可利用另外一条IPSEC隧道来进行数据传输。其中,IPSEC是采用IPSEC协议实现远程接入的一种VPN技术。

在实现本发明的过程中,发明人发现现有技术中存在如下问题:目前在选取传输数据的VPN隧道的过程中,VPN隧道的选过具有随机性,从而可能会引起数据传输的稳定性较差的问题。例如,在VPN主隧道异常断开的情况下,后续会采用随机匹配到的第一条VPN备份隧道进行数据传输。但是,由于匹配到的第一条VPN备份隧道的数据传输性能可能会远弱于VPN主隧道的数据传输性能,从而可能会引起数据传输的稳定性较差的问题。

发明内容

本申请实施例的目的在于提供一种传输数据的方法、装置、存储介质和电子设备,以保证数据传输的稳定性。

第一方面,本申请实施例提供了一种传输数据的方法,该方法包括:获取至少两条虚拟专用网络VPN隧道的安全策略中的VPN隧道的优先级;从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道;利用优先级最高的VPN隧道传输数据。

因此,本申请实施例通过获取至少两条VPN隧道的安全策略中的VPN隧道的优先级,并从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道,以及利用优先级最高的VPN隧道传输数据。从而,在两个子网之间建立有两条VPN隧道的情况下,可以通过选取优先级最高的VPN隧道来传输数据,从而由于优先级最高的VPN隧道具有较好的数据传输性能,进而能够保证数据传输的稳定性。

此外,本申请实施例中用户还可以根据实际情况来对VPN隧道的安全策略中VPN隧道的优先级进行配置,从而能够根据用户配置的安全策略来选取VPN隧道,进而使得数据的传输具有可控性,进一步增加了数据传输的稳定性。

在一个可能的实施例中,至少两条VPN隧道均为备份隧道,在获取至少两条虚拟专用网络VPN隧道的安全策略中的VPN隧道的优先级之前,方法还包括:确定主隧道断开。

因此,本申请实施例可以适用于在主隧道断开,从多个备份隧道中选取一个优先级最高的备份隧道的场景。

在一个可能的实施例中,至少两条VPN隧道中的一条VPN隧道为主隧道,其余VPN隧道为备份隧道。

因此,本申请实施例可以适用于从两个子网之间的多个VPN隧道中选取一个优先级最高的VPN隧道的场景。

在一个可能的实施例中,从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道,包括:确定所有VPN隧道中的任意一个VPN隧道的优先级为临时最高优先级;依次遍历其余VPN隧道的安全策略,对临时最高优先级进行更新,以确定出最终的临时最高优先级;将最终的临时最高优先级对应的VPN隧道确定为优先级最高的VPN隧道。

因此,本申请实施例通过确定所有VPN隧道中的任意一个VPN隧道的优先级为临时最高优先级,并依次遍历其余VPN隧道的安全策略,对临时最高优先级进行更新,以确定出最终的临时最高优先级,从而能够精准且快速地确定出优先级最高的VPN隧道。

在一个可能的实施例中,对临时最高优先级进行更新,以确定出最终的临时最高优先级,包括:在当前VPN隧道的优先级高于临时最高优先级的情况下,将临时最高优先级更新为当前VPN隧道的优先级;或者,在当前VPN隧道的优先级等于或者低于临时最高优先级的情况下,保持临时最高优先级不变。

因此,相比于对优先级进行排序的方式,本申请实施例通过对临时最高优先级进行更新能够提高处理效率,从而缩短了用户的等待时间,提升了用户的体验。

第二方面,本申请实施例提供了一种传输数据的装置,该装置包括:获取模块,用于获取至少两条虚拟专用网络VPN隧道的安全策略中的VPN隧道的优先级;选取模块,用于从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道;传输模块,用于利用优先级最高的VPN隧道传输数据。

在一个可能的实施例中,至少两条VPN隧道均为备份隧道,装置还包括:第一确定模块,用于在获取至少两条虚拟专用网络VPN隧道的安全策略中的VPN隧道的优先级之前,确定主隧道断开。

在一个可能的实施例中,至少两条VPN隧道中的一条VPN隧道为主隧道,其余VPN隧道为备份隧道。

在一个可能的实施例中,选取模块包括:第二确定模块,用于确定所有VPN隧道中的任意一个VPN隧道的优先级为临时最高优先级;第三确定模块,用于依次遍历其余VPN隧道的安全策略,对临时最高优先级进行更新,以确定出最终的临时最高优先级;第四确定模块,用于将最终的临时最高优先级对应的VPN隧道确定为优先级最高的VPN隧道。

在一个可能的实施例中,第三确定模块用于:在当前VPN隧道的优先级高于临时最高优先级的情况下,将临时最高优先级更新为当前VPN隧道的优先级;或者,在当前VPN隧道的优先级等于或者低于临时最高优先级的情况下,保持临时最高优先级不变。

第三方面,本申请实施例提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行第一方面或第一方面的任一可选的实现方式所述的方法。

第四方面,本申请实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行第一方面或第一方面的任一可选的实现方式所述的方法。

第五方面,本申请提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行第一方面或第一方面的任意可能的实现方式中的方法。

为使本申请实施例所要实现的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本申请实施例可应用的一种应用场景的示意图;

图2示出了本申请实施例提供的一种传输数据的方法的流程图;

图3示出了本申请实施例提供的一种传输数据的方法的具体流程图;

图4示出了本申请实施例提供的一种传输数据的装置的结构框图;

图5为本申请实施例中的电子设备的结构框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

目前,在利用不同的IP地址建立两个子网之间的多条VPN隧道(包括主隧道和至少一条备份隧道)的情况下,当主隧道异常断开的情况下,后续可利用备份隧道来保证子网内的设备的通信。

其中,由于数据流的匹配的安全策略具有随机性,数据流会将匹配到的第一条安全策略对应的备份隧道作为后续数据传输的隧道。但是,匹配到的第一条安全策略对应的备份隧道可能会引起数据传输的稳定性较差的问题。

因此,现有技术中的备份隧道的选择具有随机性,即用户无法控制备份隧道的选择,从而可能会导致数据传输的稳定性较差的问题。

基于此,本申请实施例巧妙地提出了一种传输数据的方案,通过获取至少两条VPN隧道的安全策略中的VPN隧道的优先级,并从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道,以及利用优先级最高的VPN隧道传输数据。从而,在两个子网之间建立有两条VPN隧道的情况下,可以通过选取优先级最高的VPN隧道来传输数据,从而由于优先级最高的VPN隧道具有较好的数据传输性能,进而能够保证数据传输的稳定性。

为了便于理解本申请实施例,首先在此对本申请实施例中的一些术语进行解释如下:

“子网”可以是包含客户端和路由器等设备的系统。例如,用户可以将某公司内所有的客户端配置成一个子网。

应理解,子网还可称为保护子网,本申请实施例并不局限于此。

“网关”是复杂的网络互连设备,可用于两个高层协议不同的网络的互连。

“安全策略”可以控制子网之间(或者,不同IP地址之间)的数据传输。以及,安全策略可通过策略规则决定从一个子网到另一个子网(或者,从一个IP地址到另一个IP地址)的哪些数据可以被传输,哪些数据无法传输。其中,策略规则可包括过滤条件等。

此外,一个安全策略可以与一个VPN隧道对应设置。

“隧道协商”是两个网络设备之间设置传输规则的过程。例如,隧道协商包括加密规则等。

请参见图1,图1示出了本申请实施例可应用的一种应用场景100的示意图。具体地,该应用场景100包括:第一子网110、第一网关120、第二网关130和第二子网140。其中,第一子网110可以包括多个客户端111,第二子网可以包括服务器141。

应理解,虽然图1中示出了第一子网110仅包含多个客户端111,但本领域的技术人员应当理解,第一子网110还可包括其他的设备,本申请实施例并不局限于此。

对应地,构成第二子网140的设备与构成第一子网110的设备类似,具体可参见前文中构成第一子网110的设备的相关描述。

还应理解,虽然图1中第一子网110和第一网关120是分开设置的,但本领域的技术人员应当理解,第一网关120还可设置在第一子网110中,本申请实施例并不局限于此。

对应地,第二网关130的设置方式与第一网关120的设置方式类似,具体可参见前文中第一网关120的设置方式的相关描述。

在一些可能的实施例中,客户端111可以是手机,也可以是平板电脑,也可以是虚拟机,也可以是台式计算机。也就是说,客户端111的具体设备类型可以根据实际需求来进行设置,本申请实施例并不局限于此。

此外,客户端111还具备通信功能,它可以运行VPN应用程序,也可以运行其他能够加载VPN进程的网页等,本申请实施例并不局限于此。

在一些可能的实施例中,第一网关120可以是传输网关,也可以是应用网关。也就是说,第一网关120的具体网关类型也可以根据实际需求来进行设置,本申请实施例并不局限于此。

第二网关130的设备类型与第一网关120的设备类型类似,在此不再详细描述,具体可参见第一网关120的设备类型的相关描述。

在一个实施例中,服务器141可以是单个服务器,也可以是服务器组。服务器组可以是集中式的,也可以是分布式的(例如,服务器141可以是分布式系统)。也就是说,服务器141的服务器类型也可以根据实际需求来进行设置,本申请实施例并不局限于此。

在本申请实施例中,当持有客户端111的用户想要访问服务器141的情况下,客户端111可以向第一网关120发送包含访问请求的数据包。以及,在第一网关120接收到客户端111发送的数据包的情况下,第一网关120可以通过在安全策略库中遍历查询与该数据包匹配的安全策略。其中,一个安全策略可以与一个VPN隧道对应设置,且VPN隧道的配置文件和安全策略中均可设置有VPN隧道的优先级。

以及,第一网关120可以在遍历完成后,获取到优先级最高的VPN隧道,且第一网关120可以通过优先级最高的VPN隧道向第二网关130发送数据包。最后,第二网关130向服务器141发送数据包,从而实现远程服务器的访问。

需要说明的是,本申请实施例提供的传输数据的方案还可以进一步拓展到其他合适的实施场景中,而不限于图1所示的实施场景。虽然图1中示出了具体数量的客户端、网关和服务器,但本领域的技术人员应当理解,在实际应用的过程中,该应用场景100可包括与更多或者更少的设备。应理解,本领域的技术人员也可根据实际需求来更换应用场景100中的设备,本申请实施例并不局限于此。

例如,用户可以将应用场景100中的第一网关120更换为路由器、交换机等其他的网络设备。对应的,用户也可将第二网关130更换为路由器、交换机等其他的网络设备。

请参见图2,图2示出了本申请实施例提供的一种传输数据的方法的流程图,如图2所示的方法包括:

步骤S210,用户通过网络设备设置VPN隧道和与VPN隧道对应的安全策略。

应理解,网络设备的具体类型可以根据实际需求来进行设置,本申请实施例并不局限于此。

例如,网络设备可以是如下文图4所示的传输数据的装置,也可以是如下文图5所示的电子设备,也可以是网关,也可以是路由器,也可以是交换机等。

还应理解,VPN隧道的具体隧道类型也可以根据实际需求来进行设置,本申请实施例并不局限于此。例如,VPN隧道可以是IPSEC隧道等。

还应理解,VPN隧道的具体数量也可以根据实际需求来进行设置,本申请实施例并不局限于此。

还应理解,VPN隧道所对应的隧道场景也可根据实际需求来进行设置,本申请实施例并不局限于此。例如,两个子网之间可设置有移动、联通、电信等不同服务商所对应的VPN隧道,即一个服务商对应一个VPN隧道。再例如,两个子网之间也可设置有同一服务商的不同IP地址所对应的VPN隧道,即一个IP地址对应一个VPN隧道。

具体地,用户可以通过与网络设备通信连接的设备(例如,计算机等)来对两个子网之间的VPN隧道进行设置。其中,VPN隧道的设置包括在包含有隧道标识、IP地址等配置信息的隧道配置中添加优先级选项,以及对每条VPN隧道的优先级进行赋值。

应理解,VPN隧道的优先级可以通过预设标识来进行表示,本申请实施例并不局限于此。例如,预设标识可以是***数字,也可以是字母,也可以是罗马数字等。

还应理解,每条VPN隧道的优先级的值也可根据实际需求来进行设置,本申请实施例并不局限于此。

例如,用户可以根据应用场景来对VPN隧道的优先级进行赋值,且优先级的值越大,表明优先级越高。再例如,由于应用场景(例如,网络环境等)是随时可能会发生变化的,故用户可后续再次对一条或多条VPN隧道的优先级重新进行设置,从而通过控制传输数据的VPN隧道来实现数据传输的可控性。

还应理解,VPN隧道的配置所包含的配置信息也可根据实际需求来进行设置,本申请实施例并不局限于此。

此外,在用户对VPN隧道进行设置之后,用户可继续通过与网络设备通信连接的设备来对安全策略进行设置。两个网络设备之间可按照标准VPN隧道协商方法进行隧道协商,并创建与VPN隧道对应的安全策略,后续在安全策略完成之后,还可将创建的安全策略保存到安全策略库中。其中,与VPN隧道对应的安全策略可包含有对应的VPN隧道的优先级。

应理解,安全策略的VPN隧道的优先级与对应的VPN隧道中的优先级可以是一致的,从而后续在通过安全策略确定出匹配的VPN隧道的情况下,由于安全策略的VPN隧道的优先级与对应的VPN隧道中的优先级可以是一致的,所以,可以通过安全策略中的优先级来快速查询到对应的VPN隧道。

还应理解,安全策略除了可包含有VPN隧道的优先级之外,还可包含有其他的信息,本申请实施例并不局限于此。例如,安全策略还可包含有对应的VPN隧道的标识等。

需要说明的是,虽然本申请实施例中的步骤S210示出了用户设置VPN隧道和安全策略的过程,但本领域的技术人员应当理解,本申请实施例中的VPN隧道和与VPN隧道对应的安全策略也可以是预先设置好的,从而本申请实施例可直接执行步骤S220,即无需执行步骤S210,本申请实施例并不局限于此。

步骤S220,网络设备获取至少两条VPN隧道的安全策略中的VPN隧道的优先级。

应理解,至少两条VPN隧道中的每条隧道的隧道类型均可根据实际需求来进行设置,本申请实施例并不局限于此。

例如,在两个子网之间没有进行数据传输的情况下,至少两条VPN隧道中的一条VPN隧道为主隧道,其余隧道为备份隧道,其中,主隧道可为后续挑选出的优先级最高的VPN隧道,即本申请实施例的场景是从两个子网之间的多个隧道中选取出主隧道。再例如,在步骤S220之前,网络设备确定两个子网之间的主隧道断开的情况下的,至少两条VPN隧道可均为备份隧道,即本申请实施例的场景是从至少两条备份隧道中挑选出一个能够传输数据的备份隧道。

具体地,在两个子网之间需要通过VPN隧道通信的情况下,网络设备可以通过查询安全策略库的方式来确定安全策略中的VPN隧道的优先级。

应理解,网络设备可查询安全策略库中的所有的安全策略,也可只查询安全策略库中的部分安全策略,只要保证查询的安全策略的条数不少于两条即可,本申请实施例并不局限于此。

例如,网络设备可以遍历安全策略库中所有的安全策略,从而根据每个安全策略中的VPN隧道的优先级来确定出优先级最高的VPN隧道。

再例如,在安全策略库中的安全策略的个数超过预设个数的情况下,网络设备可以通过从安全策略库中随机挑选出N个安全策略,并根据N个安全策略中每个安全策略中的VPN隧道的优先级,来确定出N个安全策略所对应的N个VPN隧道中的优先级最高的VPN隧道,其中,N为大于等于2的正整数,以及预设个数也可根据实际需求来进行设置。从而,本申请实施例通过上述技术方案能够避免由于安全策略的个数较多造成的遍历所需的时间较长的问题,并且由于减少了需要查询的安全策略的个数,进而也减少了用户的等待时间,提升了用户体验。

步骤S230,网络设备从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道。

应理解,网络设备选取优先级最高的VPN隧道的具体选取方式可以根据实际需求来进行设置,本申请实施例并不局限于此。

可选地,网络设备确定所有VPN隧道中的任意一个VPN隧道的优先级为临时最高优先级;依次遍历其余VPN隧道的安全策略,对临时最高优先级进行更新,以确定出最终的临时最高优先级;将最终的临时最高优先级对应的VPN隧道确定为优先级最高的VPN隧道。

其中,网络设备对临时最高优先级进行更新,以确定出最终的临时最高优先级,包括:在当前VPN隧道的优先级高于临时最高优先级的情况下,将临时最高优先级更新为当前VPN隧道的优先级;或者,在当前VPN隧道的优先级等于或者低于临时最高优先级的情况下,保持临时最高优先级不变。

例如,在网络设备需要查询2条VPN隧道的安全策略的情况下,网络设备可以将匹配到的第1条VPN隧道的安全策略中的VPN隧道的优先级确定为临时最高优先级,其中,此时的临时最高优先级可以为第1条VPN隧道的安全策略对应的优先级。随后,在网络设备匹配到第2条VPN隧道的安全策略的情况下,网络设备可以将第2条VPN隧道的安全策略对应的优先级和临时最高优先级进行比较。若第2条VPN隧道的安全策略对应的优先级大于临时最高优先级,则将临时最高优先级更新为第2条VPN隧道的安全策略对应的优先级,且该第2条VPN隧道的安全策略对应的优先级也是最终的临时最高优先级。若第2条VPN隧道的安全策略中的VPN隧道的优先级小于或者等于临时最高优先级,则临时最高优先级保持不变,即最终的临时最高优先级为第1条VPN隧道的安全策略对应的优先级。

需要说明的是,虽然前文中描述了临时最高优先级可以与第一个匹配到的安全策略对应的优先级相同的情况,但本领域的技术人员应当理解,当匹配到第一个安全策略的情况下,还可将临时最高优先级设置为预设的优先级,即临时最高优先级还可以与第一个匹配到的安全策略对应的优先级不相同。其中,该预设的优先级可以为所有的安全策略对应的所有优先级中的除去最大优先级之外的任意一个数,本申请实施例并不局限于此。

可选地,网络设备还可将所有VPN隧道的安全策略对应的所有的优先级进行排序,从而根据排序结果,选取出优先级最高的VPN隧道。

例如,在网络设备需要查询4条VPN隧道的安全策略的情况下,网络设备将4条VPN隧道的安全策略对应的所有优先级按照从大到小的顺序进行排序。随后,网络设备可以将排序后的队列中的头部的第一个VPN隧道的安全策略中的VPN隧道的优先级确定为优先级最高,并将对应的隧道设置为优先级最高的VPN隧道。

步骤S240,网络设备利用优先级最高的VPN隧道传输数据。

此外,在网络设备利用当前隧道(例如,当前优先级最高的VPN隧道)传输数据的情况下,若应用场景发生变化,则此时可不管当前隧道是否断开,用户可以调整其他VPN隧道的优先级以及其他VPN隧道对应的安全策略。随后,网络设备可以通过再次执行前文中的步骤S220至步骤S240,以选取出适合当前应用场景的VPN隧道,并利用选取后的VPN隧道来传输数据(或者说,网络设备可以选取出当前变化之后的场景下传输性能最高的VPN隧道,并利用选取的VPN隧道来传输数据),从而能够保证传输性能。

例如,在网络设备使用移动相关的VPN隧道传输数据的情况下,若移动的网络出现问题,则此时用户可以调整联通相关的VPN隧道的优先级以及联通的VPN隧道对应的安全策略。随后,网络设备可以再次执行前文中的步骤S220至步骤S240,以选取出联通相关的VPN隧道,并利用来传输数据联通相关的VPN隧道来传输数据。

另外,如果网络设备需要拆除VPN隧道,则网络设备也需要删除步骤S210中的安全策略,即网络设备在拆除VPN隧道的情况下,也需要将该需拆除的VPN隧道的相关的历史设置数据也进行删除。

因此,本申请实施例通过获取至少两条VPN隧道的安全策略中的VPN隧道的优先级,并从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道,以及利用优先级最高的VPN隧道传输数据。从而,在两个子网之间建立有两条VPN隧道的情况下,可以通过选取优先级最高的VPN隧道来传输数据,从而由于优先级最高的VPN隧道具有较好的数据传输性能,进而能够保证数据传输的稳定性。

为了便于理解本申请实施例,下面通过具体的实施例来进行描述。

请参见图3,图3示出了本申请实施例提供的一种传输数据的方法的具体流程图,如图3所示的方法包括:

步骤S310,对VPN隧道进行优先级的设置。

具体地,在VPN隧道中添加优先级权限值Vp,并对该优先级权限值Vp进行赋值。其中,优先级权限值Vp可由用户根据应用场景来进行设置。

步骤S320,按照标准的隧道协商方法进行隧道协商,并创建安全策略,以及将优先级权限值Vp添加至安全策略中。

步骤S330,两个子网之间的设备需要通过VPN隧道通信的情况下,当查询匹配到第一条安全策略时,使用临时最高优先级Vh记录第一条安全策略的优先级权限值Vp1。也就是说,利用临时最高优先级Vh来标记第一条安全策略的优先级。

步骤S340,当从安全策略库中遍历查询到第二条安全策略时,将临时最高优先级Vh和第二条安全策略中的优先级权限值Vp2进行比较。如果临时最高优先级Vh小于优先级权限值Vp2,则将临时最高优先级Vh的值更新为优先级权限值Vp2。如果临时最高优先级Vh大于或者等于优先级权限值Vp2,则临时最高优先级Vh保持不变。

步骤S350,使用步骤S340的方式,依次遍历安全策略库中所有与数据流匹配的安全策略,在遍历完成之后,使用最终的临时最高优先级Vh对应的VPN隧道来进行两个子网之间的通信。

因此,本申请实施例中用户可以根据实际情况,对VPN隧道的安全策略中VPN隧道的优先级进行配置,从而在两个子网内的设备需要通过VPN隧道进行通信时,其能够根据用户配置的安全策略的优先级进行策略的匹配,使得数据的传输具有可控性,增加了数据传输的稳定性。

应理解,上述传输数据的方法仅是示例性的,本领域技术人员根据上述的方法可以进行各种变形,修改或变形之后的内容也在本申请保护范围内。

例如,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。例如,对于图3所示的传输的方法,在VPN隧道和安全策略为预先设置好的情况下,可以直接执行步骤S330。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。例如,对于图3所示的传输的方法,可以将步骤S310和步骤S320合并成一个步骤执行。

请参见图4,图4示出了本申请实施例提供的一种传输数据的装置400的结构框图,应理解,该装置400与上述图2至图3方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置400具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该装置400包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在装置400的操作系统(operating system,OS)中的软件功能模块。具体地,该装置400包括:

获取模块410,用于获取至少两条虚拟专用网络VPN隧道的安全策略中的VPN隧道的优先级;选取模块420,用于从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道;传输模块430,用于利用优先级最高的VPN隧道传输数据。

在一个可能的实施例中,至少两条VPN隧道均为备份隧道,装置400还包括:第一确定模块(未示出),用于在获取至少两条虚拟专用网络VPN隧道的安全策略中的VPN隧道的优先级之前,确定主隧道断开。

在一个可能的实施例中,至少两条VPN隧道中的一条VPN隧道为主隧道,其余VPN隧道为备份隧道。

在一个可能的实施例中,选取模块420包括:第二确定模块(未示出),用于确定所有VPN隧道中的任意一个VPN隧道的优先级为临时最高优先级;第三确定模块(未示出),用于依次遍历其余VPN隧道的安全策略,对临时最高优先级进行更新,以确定出最终的临时最高优先级;第四确定模块(未示出),用于将最终的临时最高优先级对应的VPN隧道确定为优先级最高的VPN隧道。

在一个可能的实施例中,第三确定模块用于:在当前VPN隧道的优先级高于临时最高优先级的情况下,将临时最高优先级更新为当前VPN隧道的优先级;或者,在当前VPN隧道的优先级等于或者低于临时最高优先级的情况下,保持临时最高优先级不变。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。

本申请还提供一种电子设备,图5为本申请实施例中的电子设备500的结构框图,如图5所示。电子设备500可以包括处理器510、通信接口520、存储器530和至少一个通信总线540。其中,通信总线540用于实现这些组件直接的连接通信。其中,本申请实施例中的通信接口520用于与其他设备进行信令或数据的通信。处理器510可以是一种集成电路芯片,具有信号的处理能力。上述的处理器510可以是通用处理器,包括中央处理器(CentralProcessing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器510也可以是任何常规的处理器等。

存储器530可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。存储器530中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器510执行时,电子设备500可以执行上述图2至图3方法实施例涉及的各个步骤。

电子设备500还可以包括存储控制器、输入输出单元、音频单元、显示单元。

所述存储器530、存储控制器、处理器510、外设接口、输入输出单元、音频单元、显示单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线540实现电性连接。所述处理器510用于执行存储器530中存储的可执行模块。并且,装置300用于执行下述方法:获取至少两条虚拟专用网络VPN隧道的安全策略中的VPN隧道的优先级;从至少两条VPN隧道的安全策略中选取出优先级最高的VPN隧道;利用优先级最高的VPN隧道传输数据。

输入输出单元用于提供给用户输入数据实现用户与所述服务器(或本地终端)的交互。所述输入输出单元可以是,但不限于,鼠标和键盘等。

音频单元向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。

显示单元在所述电子设备与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据给用户参考。在本实施例中,所述显示单元可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器进行计算和处理。

可以理解,图5所示的结构仅为示意,所述电子设备500还可包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。图5中所示的各组件可以采用硬件、软件或其组合实现。

本申请还提供一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行方法实施例所述的方法。

本申请还提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

17页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种通过修改查找关键字提高组播转发效率的方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!