一种基于国密SM4的SD-WAN实现方法及系统转让专利

申请号 : CN202211306364.3

文献号 : CN115378578B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郭光明王日宁赵训威王志刚刘迪王进帅李金安

申请人 : 国网信息通信产业集团有限公司

摘要 :

本发明提供一种基于国密SM4的SD‑WAN实现方法及系统,涉及电网数据安全技术领域,配置预设网络、网络参数文件、SM4加密算法以及C25519算法;向客户端导入网络参数文件;启动客户端,客户端解析网络参数文件,获取网络参数文件的信息,并链接到服务端;服务端对链接的客户端进行认证,认证通过后,告知其他已认证客户端;服务端判断客户端是否存在虚拟网卡,如果不存在,创建客户端的虚拟网卡,并创建VPN通道线程,使客户端通过VPN通道线程建立通信链接。本发明实现客户端的点对点业务数据交互,相较于光缆专线网,无需敷设光纤;相较于传统VPN技术,本发明无需部署特定网关。降低了施工难度,大大节约设备成本。

权利要求 :

1.一种基于国密SM4的SD‑WAN实现方法,其特征在于,方法包括:步骤一、配置虚拟局域网、虚拟IP地址池、网络参数文件、SM4加密算法以及C25519算法;

步骤二、向客户端导入网络参数文件;

步骤三、启动客户端,客户端解析网络参数文件,获取网络参数文件的信息,并链接到服务端;

步骤四、服务端对链接的客户端进行认证,认证通过后,告知其他已认证客户端;

步骤五、服务端判断客户端是否存在虚拟网卡,如果不存在,创建客户端的虚拟网卡,并创建VPN通道线程,使客户端通过VPN通道线程建立通信链接;

当有新客户端接入时,新客户端通过VPN通道线程向服务端发送请求信息;

服务端根据请求信息对新客户端进行认证,认证通过后,告知其他已认证客户端;

步骤五中,利用UDP打洞技术,使各个客户端建立链接;

服务端对所述客户端认证通过后,将所述客户端的身份认证信息和虚拟网卡告知其他客户端;

其他客户端将各自的身份认证信息和虚拟网卡告知所述客户端;

网络参数文件包括虚拟远程地址、路由表以及DNS信息。

2.根据权利要求1所述的基于国密SM4的SD‑WAN实现方法,其特征在于,服务端与客户端通信时使用SM4加密算法进行加密。

3.根据权利要求1所述的基于国密SM4的SD‑WAN实现方法,其特征在于,客户端之间通信时使用SM4加密算法进行加密。

4.根据权利要求1所述的基于国密SM4的SD‑WAN实现方法,其特征在于,步骤五之后还包括:服务端每隔一预设时长接收客户端通过VPN通道线程发送的心跳状态,判断客户端的在位状态。

5.根据权利要求1所述的基于国密SM4的SD‑WAN实现方法,其特征在于,步骤四中客户端链接到服务端后,客户端向服务端发送身份认证信息,服务端使用C25519算法进行对客户端进行身份认证;

认证通过后,计算加密密钥;

将加密密钥分配给所述客户端。

6.一种基于国密SM4的SD‑WAN实现系统,其特征在于,系统采用如权利要求1至5任意一项所述的基于国密SM4的SD‑WAN实现方法;

系统包括:配置端、服务端和多个客户端;

配置端用于接收用户的参数配置,配置虚拟局域网、虚拟IP地址池、网络参数文件、SM4加密算法以及C25519算法;

配置端与服务端建立通信连接,向服务端配置虚拟IP地址池、网络参数文件、SM4加密算法以及C25519算法;

配置端向客户端导入网络参数文件;客户端解析网络参数文件,获取网络参数文件的信息,并链接到服务端;

服务端用于对链接的客户端进行认证,认证通过后,告知其他已认证客户端;

服务端判断客户端是否存在虚拟网卡,如果不存在,创建客户端的虚拟网卡,并创建VPN通道线程,使客户端通过VPN通道线程建立通信链接。

说明书 :

一种基于国密SM4的SD‑WAN实现方法及系统

技术领域

[0001] 本发明涉及电网数据安全技术领域,尤其涉及一种基于国密SM4的SD‑WAN实现方法及系统。

背景技术

[0002] 在新型电力系统的运行过程中,大量的一二次设备实时监测数据和电网调度数据通过网络进行传输,数据地域跨度大,承载的业务种类丰富。很多时候,这些数据需要在不同的局域网之间进行传输交互。
[0003] 传统的解决方案一为在局域网与局域网之间敷设光缆通道,进行点对点专网通信。方案二为借助IPSEC、SSL等VPN技术建立终端的点对点通信专用通道,使不同地方的同类业务数据处于一个虚拟局域网中,实现数据的远程访问和分区隔离。但这种方法需要在各通信设备上进行复杂的配置,后期维护困难。而且现有方案要求服务端在公网中申请一个或多个固定的IP地址,子网越多时,申请的IP地址越多,造成了IP地址的极大浪费,增加了IP地址管理难度。
[0004] 两个不同局域网内的设备想要通信,第一种方案为在两个局域网之间敷设光缆专线。对于跨地区的局域网而言,光缆敷设成本高,维护困难,且一旦接好不可随意改动,灵活性较差。
[0005] 另一种方案为普通的VPN(Virtual Private Network,虚拟专用网络)技术,在两个局域网间建立点对点的VPN通道,形成一个虚拟局域网。虚拟局域网建立后,这两个不同的局域网在逻辑上属于同一个局域网内。一般的VPN技术包括IPSEC(Internet Protocol Security,互联网安全协议)VPN和SSL(Secure Sockets Layer,安全套接层)VPN,其通信结构如图1所示。图中,CPE(Customer Premise Equipment)为5G客户终端设备,负责各自地区局域网内的数据通信和转发。当局域网1和局域网2的同类业务需要建立虚拟局域网进行互传时,在CPE1、CPE2处皆需要配置非常多的信息,包括网关的公网IP地址、认证方式、IKE版本、IKE算法、IKE生命周期、本地子网、远程子网、数据包封装方式、SA类型、ESP算法、DPD使能、认证授权证书、私人密钥等十几种信息。同样,在中央网关处也需要配置这样复杂繁琐的信息。全部配置完成后,CPE1将业务数据交付至网关处,由网关将数据转交给CPE2,网关不可省略。局域网3和局域网4之间建立虚拟局域网同以上步骤。新增其他虚拟局域网时,重复上述配置。在局域网较少时尚可应对,一旦局域网增多,复杂繁琐的配置信息将会给后期维护人员的维护带来困难。另外,分散的终端包含多种不同电力业务,给这些业务划分虚拟局域网,多个子网需要分配不同的IP地址,造成IP地址的极大浪费,增加了IP地址的管理工作。

发明内容

[0006] 本发明提供一种基于国密SM4的SD‑WAN实现方法,将国密SM4算法和SD‑WAN技术相结合,在增强电网数据安全的同时,实现更简单跨局域网访问设备。
[0007] 基于国密SM4的SD‑WAN实现方法包括:
[0008] 步骤一、配置虚拟局域网、虚拟IP地址池、网络参数文件、SM4加密算法以及C25519算法;
[0009] 步骤二、向客户端导入网络参数文件;
[0010] 步骤三、启动客户端,客户端解析网络参数文件,获取网络参数文件的信息,并链接到服务端;
[0011] 步骤四、服务端对链接的客户端进行认证,认证通过后,告知其他已认证客户端;
[0012] 步骤五、服务端判断客户端是否存在虚拟网卡,如果不存在,创建客户端的虚拟网卡,并创建VPN通道线程,使客户端通过VPN通道线程建立通信链接。
[0013] 进一步需要说明的是,服务端与客户端通信时使用SM4加密算法进行加密。
[0014] 进一步需要说明的是,客户端之间通信时使用SM4加密算法进行加密。
[0015] 进一步需要说明的是,步骤五之后还包括:
[0016] 服务端每隔一预设时长接收客户端通过VPN通道线程发送的心跳状态,判断客户端的在位状态。
[0017] 进一步需要说明的是,当有新客户端接入时,新客户端通过VPN通道线程向服务端发送请求信息;
[0018] 服务端根据请求信息对新客户端进行认证,认证通过后,告知其他已认证客户端。
[0019] 进一步需要说明的是,步骤五中,利用UDP打洞技术,使各个客户端建立链接。
[0020] 进一步需要说明的是,步骤四中客户端链接到服务端后,客户端向服务端发送身份认证信息,服务端使用C25519算法进行对客户端进行身份认证;
[0021] 认证通过后,计算加密密钥;
[0022] 将加密密钥分配给所述客户端。
[0023] 进一步需要说明的是,服务端对所述客户端认证通过后,将所述客户端的身份认证信息和虚拟网卡告知其他客户端;
[0024] 其他客户端将各自的身份认证信息和虚拟网卡告知所述客户端。
[0025] 进一步需要说明的是,网络参数文件包括虚拟远程地址、路由表以及DNS信息。
[0026] 本发明还提供一种基于国密SM4的SD‑WAN实现系统,系统包括:配置端、服务端和多个客户端;
[0027] 配置端用于接收用户的参数配置,配置虚拟局域网、虚拟IP地址池、网络参数文件、SM4加密算法以及C25519算法;
[0028] 配置端与服务端建立通信连接,向服务端配置虚拟IP地址池、网络参数文件、SM4加密算法以及C25519算法;
[0029] 配置端向客户端导入网络参数文件;客户端解析网络参数文件,获取网络参数文件的信息,并链接到服务端;
[0030] 服务端用于对链接的客户端进行认证,认证通过后,告知其他已认证客户端;
[0031] 服务端判断客户端是否存在虚拟网卡,如果不存在,创建客户端的虚拟网卡,并创建VPN通道线程,使客户端通过VPN通道线程建立通信链接。
[0032] 从以上技术方案可以看出,本发明具有以下优点:
[0033] 本发明的SD‑WAN实现方法和现有的VPN技术相比较,解决了VPN技术实现跨局域网通信存在设备配置复杂、IP资源浪费严重以及数据安全的问题。本发明在不同局域网组建虚拟局域网的过程中,只需配置服务端设置的虚拟远程地址、路由表以及DNS信息等信息,操作简单,易维护。
[0034] 本发明的基于国密SM4的SD‑WAN实现系统配置虚拟局域网时,可实现快速部署,即插即用。虚拟局域网建立好后,数据无需通过网关进行转发,而是通过UDP打洞技术,源子网设备直接与目的子网设备直接进行通信,节省了硬件成本。在IP资源方面,本发明仅需申请一个固定的公网IP地址,其他想加入该局域网的终端设备连接同一个固定的公网IP地址,即可实现组网,大大节省了IP资源,避免了IP地址管理困难的问题。
[0035] 在本发明在虚拟局域网内部的客户端之间有了身份认证信息之后,利用UDP打洞技术,使各个客户端建立链接,实现数据通信。通信时使用SM4加密算法进行加密。替换AES等国外加密算法作为数据传输交互的加密算法,满足通信安全要求,增强了数据安全性。

附图说明

[0036] 为了更清楚地说明本发明的技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0037] 图1为现有技术示意图;
[0038] 图2为基于国密SM4的SD‑WAN实现方法流程图;
[0039] 图3为基于国密SM4的SD‑WAN实现系统示意图。

具体实施方式

[0040] 本发明提供的基于国密SM4的SD‑WAN实现系统架构可以包括多个客户端、网络、配置端和服务端。网络是用以在客户端、配置端和服务端之间提供通信链路的介质。网络可以包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
[0041] 应该理解,图1中的客户端、配置端和服务端的数目仅仅是示意性的。根据实现需要,可以具有任意数目的客户端、配置端和服务端。比如服务端可以是多个服务器组成的服务器集群等。
[0042] 用户可以使用客户端通过网络与服务端交互,以接收或发送消息等。用户还可以使用客户端通过网络与其他客户端交互,以接收或发送消息等。
[0043] 客户端可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式计算机、数字电影放映机等等。
[0044] 服务端可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量主机或网络服务器构成的云。例如用户利用客户端向服务端发送身份认证和数据通信等等。
[0045] 本发明在通信过程中,可以将将国密SM4算法和SD‑WAN(Software Defined Wide Area Network,软件定义广域网)技术相结合,在增强电网数据安全的同时,实现更简单跨局域网访问设备。
[0046] 本发明的客户端与其他客户端之间以及客户端与服务端之间可以基于SD‑WAN技术建立虚拟局域网,实现点对点业务数据交互,相较于光缆专线网,本发明无需敷设光纤;相较于传统VPN技术,本发明无需部署特定网关。降低了施工难度,大大节约设备成本。
[0047] 本发明中下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048] 请参阅图1所示是一具体实施例中基于国密SM4的SD‑WAN实现方法的流程图,方法包括:
[0049] S101、配置虚拟局域网、虚拟IP地址池、网络参数文件、SM4加密算法以及C25519算法;
[0050] 其中,网络参数文件包括虚拟远程地址、路由表以及DNS信息。当然根据实际需要还可以包括其他参数,具体参数信息不做限定。
[0051] S102、向客户端导入网络参数文件;这样可以使客户端链接到系统的虚拟局域网。向客户端导入网络参数文件可以由用户使用其他客户端向所述客户端导入,也可以由服务端进行导入,还可以由用户在本地进行导入。
[0052] S103、启动客户端,客户端解析网络参数文件,获取网络参数文件的信息,并链接到服务端;
[0053] S104、服务端对链接的客户端进行认证,认证通过后,告知其他已认证客户端;
[0054] S105、服务端判断客户端是否存在虚拟网卡,如果不存在,创建客户端的虚拟网卡,并创建VPN通道线程,使客户端通过VPN通道线程建立通信链接。
[0055] 本认证通过的客户端,可以告知其他已认证客户端,实现客户端与客户端之间通过虚拟局域网连接。示例性的讲,利用UDP打洞技术,使各个客户端建立链接,实现数据通信。
[0056] 为了保证通信的安全性,服务端与客户端通信时使用SM4加密算法进行加密。客户端之间通信时使用SM4加密算法进行加密。
[0057] 本发明涉及的SD‑WAN实现方法,可以应用到电网,丰富电网中不同局域网上的业务种类,针对不同的业务种类,划分不同的虚拟局域网,解决跨局域网业务通信问题。解决客户端与客户端之间通过光纤专网敷设导致费用高昂,以及遇到崎岖山路等环境无法敷设的问题。
[0058] 本发明的SD‑WAN实现方法可以在5G无线通信设备上实现,通过无线进行跨局域网的数据传输,解决了光纤专网敷设成本高,施工难度大的问题。
[0059] 本发明的SD‑WAN实现方法和现有的VPN技术相比较,解决了VPN技术实现跨局域网通信存在设备配置复杂、IP资源浪费严重以及数据安全的问题。本发明在不同局域网组建虚拟局域网的过程中,只需配置服务端设置的虚拟远程地址、路由表以及DNS信息等信息,操作简单,易维护。
[0060] 在本发明的一种实施例中,基于国密SM4的SD‑WAN实现方法,以下将给出一种可能的实施例对其具体的实施方案进行非限制性阐述。
[0061] 方法中,客户端链接到服务端后,客户端向服务端发送身份认证信息,服务端使用C25519算法进行对客户端进行身份认证;
[0062] 认证通过后,计算加密密钥;
[0063] 将加密密钥分配给所述客户端。
[0064] 服务端对所述客户端认证通过后,将所述客户端的身份认证信息和虚拟网卡告知其他客户端;
[0065] 其他客户端将各自的身份认证信息和虚拟网卡告知所述客户端。
[0066] 在虚拟局域网内部的客户端之间有了身份认证信息之后,可以不需要在每次通信过程进行身份认证,而只要经过了身份认证之后,既可以实现相互数据交互。
[0067] 当然,有些客户端未配置虚拟网卡,导致无法正常在虚拟局域网数据交互,本发明中,服务端判断客户端是否存在虚拟网卡,如果不存在,创建客户端的虚拟网卡,并创建VPN通道线程,使客户端通过VPN通道线程建立通信链接,实现客户端与服务端的数据通信,以及实现客户端之间的数据通信。
[0068] 本发明中如果出现通信异常,或者虚拟局域网异常时,可以进行报错。可以向各个客户端报错,也可以向服务端报错,使得用户及时处理。
[0069] 基于本实施例的SD‑WAN实现方法,在组建虚拟局域网时,本发明只需配置服务端的虚拟远程地址、路由表以及DNS等信息实现了客户端与服务端的数据通信,以及实现客户端之间的数据通信,本发明配置和维护简单,部署快速,对使用人员非常友好。
[0070] 本发明组建的虚拟局域网,可以在任何地方,访问任何局域网内的业务数据,仅申请一个固定的IP地址,即可解决多个子网接入同一局域网的问题,大大节约了IP资源,避免了IP管理困难。
[0071] 在本发明的实施例中,在虚拟局域网内部的客户端之间有了身份认证信息之后,利用UDP打洞技术,使各个客户端建立链接,实现数据通信。通信时使用SM4加密算法进行加密。替换AES等国外加密算法作为数据传输交互的加密算法,满足通信安全要求,增强了数据安全性。
[0072] 在本发明的实施例中,为了能够让服务端获悉各个客户端的链接状态,S105 之后还包括:服务端每隔一预设时长接收客户端通过VPN通道线程发送的心跳状态,判断客户端的在位状态。
[0073] 如果经过一预设时长服务端未接收客户端,则服务端可以向所述客户端发送状态获取指令,获取客户端的心跳状态。如果经过多次服务端仍未接收客户端的心跳状态,则判断所述客户端已经断开虚拟局域网,可以发出断网提示。
[0074] 本发明的实施例中,当有新客户端接入时,新客户端通过VPN通道线程向服务端发送请求信息;服务端根据请求信息对新客户端进行认证,认证通过后,告知其他已认证客户端。
[0075] 服务端对新客户端的认证方式可以是接收新客户端的身份认证信息,使用C25519算法进行对客户端进行身份认证;认证通过后,计算加密密钥;将加密密钥分配给所述客户端。服务端对新客户端认证通过后,将新客户端的身份认证信息和虚拟网卡告知其他客户端;其他客户端将各自的身份认证信息和虚拟网卡告知新客户端。
[0076] 这样实现了客户端的增加,也可以根据运行需要将一些客户端剔除,满足实际使用需要。对于身份认证未通过的客户端,进行屏蔽,使无身份认证的客户端无法链接到虚拟局域网,保证虚拟局域网的安全性。
[0077] 以下是本公开实施例提供的基于国密SM4的SD‑WAN实现系统的实施例,该基于国密SM4的SD‑WAN实现系统与上述各实施例的基于国密SM4的SD‑WAN实现方法属于同一个发明构思,在基于国密SM4的SD‑WAN实现系统的实施例中未详尽描述的细节内容,可以参考上述基于国密SM4的SD‑WAN实现方法的实施例。
[0078] 如图2所示,基于国密SM4的SD‑WAN实现系统包括:配置端、服务端和多个客户端;配置端可以是系统的其中一个客户端。可以由用户来设置一个客户端为配置端进行虚拟局域网建立。具体来讲,配置端用于接收用户的参数配置,配置虚拟局域网、虚拟IP地址池、网络参数文件、SM4加密算法以及C25519算法;
[0079] 配置端与服务端建立通信连接,向服务端配置虚拟IP地址池、网络参数文件、SM4加密算法以及C25519算法;
[0080] 配置端向客户端导入网络参数文件;客户端解析网络参数文件,获取网络参数文件的信息,并链接到服务端;
[0081] 服务端用于对链接的客户端进行认证,认证通过后,告知其他已认证客户端;
[0082] 服务端判断客户端是否存在虚拟网卡,如果不存在,创建客户端的虚拟网卡,并创建VPN通道线程,使客户端通过VPN通道线程建立通信链接。
[0083] 本发明的基于国密SM4的SD‑WAN实现系统配置虚拟局域网时,可实现快速部署,即插即用。虚拟局域网建立好后,数据无需通过网关进行转发,而是通过UDP打洞技术,源子网设备直接与目的子网设备直接进行通信,节省了硬件成本。在IP资源方面,本发明仅需申请一个固定的公网IP地址,其他想加入该局域网的终端设备连接同一个固定的公网IP地址,即可实现组网,大大节省了IP资源,避免了IP地址管理困难的问题。在数据安全方面,本发明采用国密SM4算法替换AES等国外加密算法,对在通信链路上传输的数据进行加密认证,满足通信安全要求,增强了数据安全性。
[0084] 本发明的基于国密SM4的SD‑WAN实现系统中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0085] 本发明的流程图和框图,图示了按照本公开各种实施例的设备、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。示例性的讲,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0086] 本发明的基于国密SM4的SD‑WAN实现系统中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,或其它的形式连接。
[0087] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。