CN116016164A - 一种基于软件定义网络的虚拟业务网络构建方法 - Google Patents
一种基于软件定义网络的虚拟业务网络构建方法 Download PDFInfo
- Publication number
- CN116016164A CN116016164A CN202211687582.6A CN202211687582A CN116016164A CN 116016164 A CN116016164 A CN 116016164A CN 202211687582 A CN202211687582 A CN 202211687582A CN 116016164 A CN116016164 A CN 116016164A
- Authority
- CN
- China
- Prior art keywords
- network
- virtual
- node
- information
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于软件定义网络的虚拟业务网络构建方法,该方法用于在实际通信链路中构建传输业务数据的虚拟链路,该方法包括以下类型的模块;网络节点模块:该模块通过在实际网络中构建虚拟链路与虚拟网络中其他节点通信;虚拟业务网络控制节点模块:用于控制网络节点中的控制行为。多个虚拟业务网络控制节点模块可组成控制集群提高性能与可靠性;实际通信链路:实际承载通信的通信链路。网络管理人员可借助本发明对网络进行划分实现对业务的隔离与划分,本发明的技术方案更加侧重于用户侧的业务网络构建,不再对网络管理权限有依赖,使用更加方便,具有更广阔的的应用场景。
Description
技术领域
本发明涉及一种业务网络构建方法,尤其涉及一种基于软件定义网络的虚拟业务网络构建方法,属于计算机通信领域。
背景技术
目前常使用的VLAN、VXLAN技术实现的业务隔离,性能较好,但存在部署不灵活、硬件要求高和网络管理权等问题。
发明内容
为了解决上述技术所存在的不足之处,本发明提供了一种基于软件定义网络的虚拟业务网络构建方法。
为了解决以上技术问题,本发明采用的技术方案是:一种基于软件定义网络的虚拟业务网络构建方法,该方法用于在实际通信链路中构建传输业务数据的虚拟链路,该方法包括以下类型的模块:
网络节点模块是实际进行网络通信的业务节点及其运行的虚拟业务网络客户端,该模块通过在实际网络中构建虚拟链路与虚拟网络中其他节点通信;
虚拟业务网络控制节点模块:虚拟业务网络控制节点模块是向网络节点模块发送控制数据的节点及其运行的虚拟网络控制端,用于控制虚拟网络中网络节点的通信行为;
实际通信链路:实际承载通信的通信链路。
优选的,该方法包括以下步骤:
步骤S1、管理员在控制节点集群中增加虚拟业务网络信息以建立虚拟业务网络;
步骤S2、运行于网络节点的客户端向控制节点或控制节点集群发送虚拟网络加入请求以加入步骤S1中所建立的虚拟网络;
步骤S3、控制节点或控制节点集群收到步骤S2中网络节点发来的加入请求后,根据预设规则批准或拒绝该网络节点加入所请求,若请求得到批准,则将该节点加入目标虚拟网络,并返回网络配置信息;
步骤S4、步骤S3中网络节点所运行的客户端在收到步骤S3返回的的网络配置信息后,在网络节点的操作系统中创建虚拟网卡以收发虚拟网络数据,在实际通信链路上,与该虚拟网络中的其他节点建立逻辑虚拟网络通信链路,并与之开始虚拟网络通信;
步骤S5、根据实际业务需求,重复上述步骤S1-S4操作,完成业务网络的构建。
优选的,步骤S1中,虚拟网络管理员通过配置控制节点或控制节点集群中的网络信息表以管理、维护虚拟业务网络,该表用于用于记录承载业务的虚拟网络;
网络信息表中包含以下信息:网络ID、网络名称、网络批准政策、网络配置信息,每一组上述信息用于描述一个虚拟业务网络的属性;
网络ID、网络名称用于区分该网络与其他业务虚拟网;
网络批准政策用于描述该网络如何批准节点加入;
网络配置信息用于配置网络中虚拟通信链路与虚拟网卡参数,其还包含业务配置信息,用于配置该网络节点上的业务。
优选的,步骤S2中,当某一设备需要加入步骤S1中所描述的虚拟网络时,需要网络节点管理员在该设备上安装虚拟网络客户端,成为网络节点;
网络节点管理员使用客户端向控制节点或控制节点集群发送网络加入请求,即可申请加入该虚拟网络;
网络加入请求包括以下内容:
本机ID、公钥:用于区分该网络节点与其他节点并实现用户鉴权;
目标虚拟网络ID或名称:用于描述加入步骤S1中所创建的网络;
本机实际通信链路信息:用于在实际链路上构建虚拟链路;
请求描述信息:用于满足批准条件;
其他控制信息:包括校验、签名信息。
优选的,步骤S3中,当加入请求不满足批准条件时,该控制节点向该网络节点发送拒绝响应;
当加入请求满足批准条件时,控制节点根据该虚拟网络的配置信息向该网络节点发送网络配置信息用于配置网络节点所运行的客户端参数,以便在本机实际通信链路上建立逻辑虚拟通信链路;
当批准条件为手动批准时,虚拟网络管理员需要手动将待批准节点信息加入网络节点列表;当批准条件为自动时,控制节点将请求描述信息的指定字段内容取出与网络批准政策进行比较,进而得出是否批准的结论。
优选的,步骤S3中,当控制节点或控制节点集群收到步骤S2的加入请求后,首先检查该加入请求的合法性;
当加入请求为非法请求时,则记录该请求信息以便后续分析;
如果加入请求为合法请求时,则根据目标虚拟网络ID或名称,在控制节点或控制节点集群中的网络信息表查询对应网络信息;
如果查询不到网络信息,则返回目标网络不存在错误响应,并记录该请求信息以便后续分析;
如果查询到网络信息,则比较步骤S1中网络信息中的网络批准政策与步骤S2中网络加入请求的请求描述信息;
若请求不满足加入条件,则返回网络加入失败错误响应,给出不满足条件的原因,并记录该请求信息以便后续分析;
若请求满足加入条件,则根据网络配置信息生成网络配置参数,网络配置参数生成后,控制节点根据请求中的本机ID、公钥、目标虚拟网络ID、本机实际通信链路信息、网络配置信息存入控制节点中的网络节点列表,完成通信节点的添加,在添加之后将参数加入请求响应中,并发回给客户端;
其中,请求响应包含该节点网络配置信息及初始的路由表信息、邻居信息交换配置。
优选的,步骤S3中,网络节点列表的每一条信息用于描述某一通信节点所加入的某一虚拟网络,当某一通信节点加入多个网络时,则有多条记录,其具体包括以下内容:
通信节点ID/公钥:用于区分该网络节点与其他节点,并实现鉴权;
目标网络ID:用于描述该通信节点所加入的一个目标虚拟网络;
节点网络配置信息:用于描述该通信节点在该虚拟网络中的网络配置信息;
实际通信链路信息:用于描述其他节点如何通过实际通信链路与该节点建立连接;
待批准节点列表与网络节点列表结构一致,待批准节点在被批准/拒绝后将从该表中移除。
优选的,步骤S4中,当发出网络加入请求的网络节点收到请求响应后,根据请求响应中的参数配置虚拟网卡,在实际链路上监听网络端口等待连接;
网络节点在配置好虚拟网卡后,在本机创建虚拟路由表;
上述虚拟路由表用于确定一个虚拟网络数据如何发送至目标网络节点,该表每一条信息用于描述一个该虚拟网络中的其他网络节点,具体包含如下内容:
通信节点ID/公钥:用于区分该网络节点与其他节点,并实现鉴权;
目标网络ID:用于描述该通信节点所加入的一个目标虚拟网络;
节点网络配置信息:用于描述该通信节点在该虚拟网络中的网络配置信息;
实际通信链路信息:用于描述其他节点如何通过实际通信链路与该节点建立连接;
当有一个虚拟网络数据需要被发送至其他节点时,程序需要根据网络数据目标地址/通信节点ID查找对应的实际链路信息,将该数据通过实际链路发送至对端,数据经对端路由后,进一步送至目的地。
优选的,步骤S4中,在虚拟路由表创建好后,网络节点向控制节点请求路由表内容,以便建立虚拟网络链路并维护路由;
路由表请求包含用于鉴权的本机ID/公钥、本机最新实际链路;
控制节点或控制节点集群在收到路由表请求后,根据该请求中的本机ID/公钥识别出网络节点身份,根据本机ID,查询该节点在对应虚拟网络中的可见性,更新该节点实际链路信息,再根据可见性返回路由表;
网络节点收到请求返回的路由表后,将本机路由表更新,并根据实际链路信息的变动建立连接构造虚拟链路或拆除已建立的虚拟链路。
优选的,步骤S4中,虚拟网卡与路由表构成虚拟交换机,虚拟交换机之间能相互传递路由表,实现去中心化路由表维护,其传递过程包括以下步骤:
S41、在虚拟路由表创建后根据配置定期向控制节点接收路由表;
S42、在实际链路上监听连接请求,根据路由表中某一节点的实际链路信息,在实际链路上通过TCP、UDP、虚电路、串行链路的方式与该节点的虚拟交换机建立虚拟链路,并根据设置交换路由表信息;
S43、在收到路由表后,及时与未建立虚拟链路的节点建立虚拟链路;
S44、当操作系统中的其他应用需要将数据发送至该虚拟网络中的对应节点时,首先将数据发送至虚拟网卡,虚拟网卡收到数据后根据数据的目标地址查询路由表中的对应虚拟链路;
当找到虚拟链路后,将数据交给虚拟链路,虚拟链路通过实际链路将数据发送至目标虚拟交换机,再由目标虚拟交换机交付给对端虚拟网卡或交付给下一跳虚拟交换机;
S45、虚拟网卡由网络节点客户端在操作系统中建立,一个虚拟网卡与一个虚拟网络对应,用于接收操作系统中的应用发往该虚拟网络的数据,并将虚拟网络中发往该节点的数据交付给操作系统;
该虚拟网卡在操作系统中仅接收发往该虚拟网络的数据,忽略发往其他网络的数据,虚拟网卡在收到发往虚拟网络其他节点的数据时,通过查询网络节点中的虚拟路由表,选择对应的虚拟通信链路发送。
本发明提出一种基于软件定义网络的虚拟业务网络构建方法,将软件定义物联网,虚拟局域网,零配置网络,网络命名空间,零信任网络,Overlay网络的思想在网络业务隔离中加以实现,可简化网络结构、提升传输性能、减少硬件依赖,实现业务的灵活隔离与组合,降低对网络环境的要求,降低网络运行维护人员的工作压力,提高灵活性,便于实现网络自动化管理。
本发明基于现有网络建立业务网,在实际通信链路中建立通信链路与控制链路,但与传统SDN(其他专利及论文)不同的是,为了能够摆脱对硬件、实际网络管理权的依赖,本发明采用软件定义的方式实现构建于实际网络上的虚拟软件定义网络。管理人员通过对网络的划分实现对业务的隔离与划分,本发明的技术方案更加侧重于用户侧的业务网络构建,仅对节点权限有要求,不再对网络管理权限有依赖。
附图说明
图1为本发明构建的虚拟业务网络的基本结构图。
图2为本发明客户端请求加入网络的具体流程图。
图3为本发明管理人员添加虚拟网络的流程图。
图4为本发明网络节点模块加入虚拟业务网络的流程图。
图5为本发明控制节点处理网络加入请求的流程图。
图6为本发明网络节点处理网络配置的流程图。
图7为本发明控制节点处理路由表请求的流程图。
图8为本发明网络节点处理路由表的流程图。
图9为本发明网络节点间建立虚拟链路的流程图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
一种基于软件定义网络的虚拟业务网络构建方法,该方法用于在实际通信链路中构建传输业务数据的虚拟链路,该方法包括以下类型的模块:
网络节点模块是实际进行网络通信的业务节点及其运行的虚拟业务网络客户端,该模块通过在实际网络中构建虚拟链路与虚拟网络中其他节点通信;
虚拟业务网络控制节点模块:虚拟业务网络控制节点模块是向网络节点模块发送控制数据的节点及其运行的虚拟网络控制端,用于控制虚拟网络中网络节点的通信行为;
实际通信链路:实际承载通信的通信链路。
一种基于软件定义网络的虚拟业务网络构建方法,该方法包括以下步骤:
步骤S1、管理员在控制节点集群中增加虚拟业务网络信息以建立虚拟业务网络;
虚拟网络管理员通过配置控制节点或控制节点集群中的网络信息表以管理、维护虚拟业务网络,该表用于用于记录承载业务的虚拟网络;如图3所示,为管理人员添加虚拟网络的流程图。
网络信息表中包含以下信息:网络ID、网络名称、网络批准政策、网络配置信息,每一组上述信息用于描述一个虚拟业务网络的属性;
网络ID、网络名称用于区分该网络与其他业务虚拟网;
网络批准政策用于描述该网络如何批准节点加入;
网络配置信息用于配置网络中虚拟通信链路与虚拟网卡参数,其还包含业务配置信息,用于配置该网络节点上的业务。
步骤S2、运行于网络节点的客户端向控制节点或控制节点集群发送虚拟网络加入请求以加入步骤S1中所建立的虚拟网络;如图2所示。
当某一设备需要加入步骤S1中所描述的虚拟网络时,需要网络节点管理员在该设备上安装虚拟网络客户端,成为网络节点;
网络节点管理员使用客户端向控制节点或控制节点集群发送网络加入请求,即可申请加入该虚拟网络;如图4所示,为网络节点模块加入虚拟业务网络的流程图。
网络加入请求包括以下内容:
本机ID、公钥:用于区分该网络节点与其他节点并实现用户鉴权;
目标虚拟网络ID或名称:用于描述加入步骤S1中所创建的网络;
本机实际通信链路信息:用于在实际链路上构建虚拟链路;
请求描述信息:用于满足批准条件;
其他控制信息:包括校验、签名信息。
步骤S3、控制节点或控制节点集群收到步骤S2中网络节点发来的加入请求后,根据预设规则批准或拒绝该网络节点加入所请求,若请求得到批准,则将该节点加入目标虚拟网络,并返回网络配置信息;
当加入请求不满足批准条件时,该控制节点向该网络节点发送拒绝响应;
当加入请求满足批准条件时,控制节点根据该虚拟网络的配置信息向该网络节点发送网络配置信息用于配置网络节点所运行的客户端参数,以便在本机实际通信链路上建立逻辑虚拟通信链路;
当批准条件为手动批准时,虚拟网络管理员需要手动将待批准节点信息加入网络节点列表;当批准条件为自动时,控制节点将请求描述信息的指定字段内容取出与网络批准政策进行比较,进而得出是否批准的结论。
当控制节点或控制节点集群收到步骤S2的加入请求后,首先检查该加入请求的合法性(如校验、签名、数据是否存在、有效);如图5所示,为控制节点处理网络加入请求的流程图。
当加入请求为非法请求时,则记录该请求信息以便后续分析;
如果加入请求为合法请求时,则根据目标虚拟网络ID或名称,在控制节点或控制节点集群中的网络信息表查询对应网络信息;
如果查询不到网络信息,则返回目标网络不存在错误响应,并记录该请求信息以便后续分析;
如果查询到网络信息,则比较步骤S1中网络信息中的网络批准政策与步骤S2中网络加入请求的请求描述信息;
若请求不满足加入条件,则返回网络加入失败错误响应,给出不满足条件的原因,并记录该请求信息以便后续分析;
若请求满足加入条件,则根据网络配置信息生成网络配置参数(如虚拟网卡MAC地址、IP地址、防火墙配置、路由表),网络配置参数生成后,控制节点根据请求中的本机ID、公钥、目标虚拟网络ID、本机实际通信链路信息、网络配置信息存入控制节点中的网络节点列表,完成通信节点的添加,在添加之后将参数加入请求响应中,并发回给客户端;
其中,请求响应包含该节点网络配置信息及初始的路由表信息、邻居信息交换配置。
网络节点列表的每一条信息用于描述某一通信节点所加入的某一虚拟网络,当某一通信节点加入多个网络时,则有多条记录,其具体包括以下内容:
通信节点ID/公钥:用于区分该网络节点与其他节点,并实现鉴权;
目标网络ID:用于描述该通信节点所加入的一个目标虚拟网络;
节点网络配置信息:用于描述该通信节点在该虚拟网络中的网络配置信息;
实际通信链路信息:用于描述其他节点如何通过实际通信链路与该节点建立连接;
待批准节点列表与网络节点列表结构一致,待批准节点在被批准/拒绝后将从该表中移除。
进一步地,管理员可在网络节点列表配置命名空间和命名空间可见性,实现网络可见性控制。
步骤S4、步骤S3中网络节点所运行的客户端在收到步骤S3返回的的网络配置信息后,在网络节点的操作系统中创建虚拟网卡以收发虚拟网络数据,在实际通信链路上,与该虚拟网络中的其他节点建立逻辑虚拟网络通信链路,并与之开始虚拟网络通信;
当发出网络加入请求的网络节点收到请求响应后,根据请求响应中的参数配置虚拟网卡,在实际链路上监听网络端口等待连接;如图6所示,为网络节点处理网络配置的流程图。
网络节点在配置好虚拟网卡后,在本机创建虚拟路由表;
上述虚拟路由表用于确定一个虚拟网络数据如何发送至目标网络节点,该表每一条信息用于描述一个该虚拟网络中的其他网络节点,具体包含如下内容:
通信节点ID/公钥:用于区分该网络节点与其他节点,并实现鉴权;
目标网络ID:用于描述该通信节点所加入的一个目标虚拟网络;
节点网络配置信息:用于描述该通信节点在该虚拟网络中的网络配置信息;
实际通信链路信息:用于描述其他节点如何通过实际通信链路与该节点建立连接。
当有一个虚拟网络数据需要被发送至其他节点时,程序需要根据网络数据目标地址/通信节点ID查找对应的实际链路信息,将该数据通过实际链路发送至对端,数据经对端路由后,进一步送至目的地。
在虚拟路由表创建好后,网络节点向控制节点请求路由表内容,以便建立虚拟网络链路并维护路由;如图7所示,为控制节点处理路由表请求的流程图。
路由表请求包含用于鉴权的本机ID/公钥、本机最新实际链路;
控制节点或控制节点集群在收到路由表请求后,根据该请求中的本机ID/公钥识别出网络节点身份,根据本机ID,查询该节点在对应虚拟网络中的可见性,更新该节点实际链路信息,再根据可见性返回路由表;
网络节点收到请求返回的路由表后,将本机路由表更新,并根据实际链路信息的变动建立连接构造虚拟链路(如TCP/UDP/串行链路/虚电路/虚拟链路等)或拆除已建立的虚拟链路。如图8所示,为网络节点处理路由表的流程
虚拟网卡与路由表构成虚拟交换机,虚拟交换机之间能相互传递路由表,实现去中心化路由表维护,其传递过程包括以下步骤:
S41、在虚拟路由表创建后根据配置定期向控制节点接收路由表;
S42、在实际链路上监听连接请求,根据路由表中某一节点的实际链路信息,在实际链路上通过TCP、UDP、虚电路、串行链路的方式与该节点的虚拟交换机建立虚拟链路,并根据设置交换路由表信息;如图9所示,为网络节点间建立虚拟链路的流程图。
S43、在收到路由表后,及时与未建立虚拟链路的节点建立虚拟链路;
S44、当操作系统中的其他应用需要将数据发送至该虚拟网络中的对应节点时,首先将数据发送至虚拟网卡,虚拟网卡收到数据后根据数据的目标地址查询路由表中的对应虚拟链路;
当找到虚拟链路后,将数据交给虚拟链路,虚拟链路通过实际链路将数据发送至目标虚拟交换机,再由目标虚拟交换机交付给对端虚拟网卡或交付给下一跳虚拟交换机;
S45、虚拟网卡由网络节点客户端在操作系统中建立,一个虚拟网卡与一个虚拟网络对应,用于接收操作系统中的应用发往该虚拟网络的数据,并将虚拟网络中发往该节点的数据交付给操作系统;
该虚拟网卡在操作系统中仅接收发往该虚拟网络的数据,忽略发往其他网络的数据,虚拟网卡在收到发往虚拟网络其他节点的数据时,通过查询网络节点中的虚拟路由表,选择对应的虚拟通信链路发送。
步骤S5、根据实际业务需求,重复上述步骤S1-S4操作,完成业务网络的构建。如图1所示,为构建的业务网络。
通过上述步骤建立的虚拟软件定义网络中,节点运行网络程序,节点间利用实际链路构造数据链路,搭建内部虚拟网络,节点间的通信(数据链路的构造)受网络控制节点控制,各节点与网络控制节点(群)建立控制链路,网络控制节点(群)之间保持配置的统一,采用网络连接图模式,向节点发送各节点的可达性信息。
本技术方案中构建的虚拟软件定义网络,参考传统虚拟局域网、交换机的设计,将网络交换机运用于虚拟软件定义网络中,各节点维护网络配置表,节点依靠配置表建立数据链路,并发送数据,该节点配置表通过网络控制节点发送的可达性信息和节点间交换的邻接信息构造。软件定义网络节点每向控制节点注册一个网路就创建对应的虚拟交换机与虚拟网卡,虚拟网卡用于连接虚拟交换机与网络应用程序,虚拟交换机用于节点间通讯。
上述实施方式并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的技术方案范围内所做出的变化、改型、添加或替换,也均属于本发明的保护范围。
Claims (10)
1.一种基于软件定义网络的虚拟业务网络构建方法,其特征在于:该方法用于在实际通信链路中构建传输业务数据的虚拟链路,该方法包括以下类型的模块:
网络节点模块是实际进行网络通信的业务节点及其运行的虚拟业务网络客户端,该模块通过在实际网络中构建虚拟链路与虚拟网络中其他节点通信;
虚拟业务网络控制节点模块:虚拟业务网络控制节点模块是向网络节点模块发送控制数据的节点及其运行的虚拟网络控制端,用于控制虚拟网络中网络节点的通信行为;
实际通信链路:实际承载通信的通信链路。
2.根据权利要求1所述的基于软件定义网络的虚拟业务网络构建方法,其特征在于:该方法包括以下步骤:
步骤S1、管理员在控制节点集群中增加虚拟业务网络信息以建立虚拟业务网络;
步骤S2、运行于网络节点的客户端向控制节点或控制节点集群发送虚拟网络加入请求以加入步骤S1中所建立的虚拟网络;
步骤S3、控制节点或控制节点集群收到步骤S2中网络节点发来的加入请求后,根据预设规则批准或拒绝该网络节点加入所请求,若请求得到批准,则将该节点加入目标虚拟网络,并返回网络配置信息;
步骤S4、步骤S3中网络节点所运行的客户端在收到步骤S3返回的的网络配置信息后,在网络节点的操作系统中创建虚拟网卡以收发虚拟网络数据,在实际通信链路上,与该虚拟网络中的其他节点建立逻辑虚拟网络通信链路,并与之开始虚拟网络通信;
步骤S5、根据实际业务需求,重复上述步骤S1-S4操作,完成业务网络的构建。
3.根据权利要求2所述的基于软件定义网络的虚拟业务网络构建方法,其特征在于:所述步骤S1中,虚拟网络管理员通过配置控制节点或控制节点集群中的网络信息表以管理、维护虚拟业务网络,该表用于用于记录承载业务的虚拟网络;
网络信息表中包含以下信息:网络ID、网络名称、网络批准政策、网络配置信息,每一组上述信息用于描述一个虚拟业务网络的属性;
网络ID、网络名称用于区分该网络与其他业务虚拟网;
网络批准政策用于描述该网络如何批准节点加入;
网络配置信息用于配置网络中虚拟通信链路与虚拟网卡参数,其还包含业务配置信息,用于配置该网络节点上的业务。
4.根据权利要求2所述的基于软件定义网络的虚拟业务网络构建方法,其特征在于:所述步骤S2中,当某一设备需要加入步骤S1中所描述的虚拟网络时,需要网络节点管理员在该设备上安装虚拟网络客户端,成为网络节点;
网络节点管理员使用客户端向控制节点或控制节点集群发送网络加入请求,即可申请加入该虚拟网络;
网络加入请求包括以下内容:
本机ID、公钥:用于区分该网络节点与其他节点并实现用户鉴权;
目标虚拟网络ID或名称:用于描述加入步骤S1中所创建的网络;
本机实际通信链路信息:用于在实际链路上构建虚拟链路;
请求描述信息:用于满足批准条件;
其他控制信息:包括校验、签名信息。
5.根据权利要求2所述的基于软件定义网络的虚拟业务网络构建方法,其特征在于:所述步骤S3中,当加入请求不满足批准条件时,该控制节点向该网络节点发送拒绝响应;
当加入请求满足批准条件时,控制节点根据该虚拟网络的配置信息向该网络节点发送网络配置信息用于配置网络节点所运行的客户端参数,以便在本机实际通信链路上建立逻辑虚拟通信链路;
当批准条件为手动批准时,虚拟网络管理员需要手动将待批准节点信息加入网络节点列表;当批准条件为自动时,控制节点将请求描述信息的指定字段内容取出与网络批准政策进行比较,进而得出是否批准的结论。
6.根据权利要求5所述的基于软件定义网络的虚拟业务网络构建方法,其特征在于:所述步骤S3中,当控制节点或控制节点集群收到步骤S2的加入请求后,首先检查该加入请求的合法性;
当加入请求为非法请求时,则记录该请求信息以便后续分析;
如果加入请求为合法请求时,则根据目标虚拟网络ID或名称,在控制节点或控制节点集群中的网络信息表查询对应网络信息;
如果查询不到网络信息,则返回目标网络不存在错误响应,并记录该请求信息以便后续分析;
如果查询到网络信息,则比较步骤S1中网络信息中的网络批准政策与步骤S2中网络加入请求的请求描述信息;
若请求不满足加入条件,则返回网络加入失败错误响应,给出不满足条件的原因,并记录该请求信息以便后续分析;
若请求满足加入条件,则根据网络配置信息生成网络配置参数,网络配置参数生成后,控制节点根据请求中的本机ID、公钥、目标虚拟网络ID、本机实际通信链路信息、网络配置信息存入控制节点中的网络节点列表,完成通信节点的添加,在添加之后将参数加入请求响应中,并发回给客户端;
其中,请求响应包含该节点网络配置信息及初始的路由表信息、邻居信息交换配置。
7.根据权利要求5所述的基于软件定义网络的虚拟业务网络构建方法,其特征在于:所述步骤S3中,网络节点列表的每一条信息用于描述某一通信节点所加入的某一虚拟网络,当某一通信节点加入多个网络时,则有多条记录,其具体包括以下内容:
通信节点ID/公钥:用于区分该网络节点与其他节点,并实现鉴权;
目标网络ID:用于描述该通信节点所加入的一个目标虚拟网络;
节点网络配置信息:用于描述该通信节点在该虚拟网络中的网络配置信息;
实际通信链路信息:用于描述其他节点如何通过实际通信链路与该节点建立连接;
待批准节点列表与网络节点列表结构一致,待批准节点在被批准/拒绝后将从该表中移除。
8.根据权利要求2所述的基于软件定义网络的虚拟业务网络构建方法,其特征在于:所述步骤S4中,当发出网络加入请求的网络节点收到请求响应后,根据请求响应中的参数配置虚拟网卡,在实际链路上监听网络端口等待连接;
网络节点在配置好虚拟网卡后,在本机创建虚拟路由表;
上述虚拟路由表用于确定一个虚拟网络数据如何发送至目标网络节点,该表每一条信息用于描述一个该虚拟网络中的其他网络节点,具体包含如下内容:
通信节点ID/公钥:用于区分该网络节点与其他节点,并实现鉴权;
目标网络ID:用于描述该通信节点所加入的一个目标虚拟网络;
节点网络配置信息:用于描述该通信节点在该虚拟网络中的网络配置信息;
实际通信链路信息:用于描述其他节点如何通过实际通信链路与该节点建立连接;
当有一个虚拟网络数据需要被发送至其他节点时,程序需要根据网络数据目标地址/通信节点ID查找对应的实际链路信息,将该数据通过实际链路发送至对端,数据经对端路由后,进一步送至目的地。
9.根据权利要求8所述的基于软件定义网络的虚拟业务网络构建方法,其特征在于:所述步骤S4中,在虚拟路由表创建好后,网络节点向控制节点请求路由表内容,以便建立虚拟网络链路并维护路由;
路由表请求包含用于鉴权的本机ID/公钥、本机最新实际链路;
控制节点或控制节点集群在收到路由表请求后,根据该请求中的本机ID/公钥识别出网络节点身份,根据本机ID,查询该节点在对应虚拟网络中的可见性,更新该节点实际链路信息,再根据可见性返回路由表;
网络节点收到请求返回的路由表后,将本机路由表更新,并根据实际链路信息的变动建立连接构造虚拟链路或拆除已建立的虚拟链路。
10.根据权利要求9所述的基于软件定义网络的虚拟业务网络构建方法,其特征在于:所述步骤S4中,虚拟网卡与路由表构成虚拟交换机,虚拟交换机之间能相互传递路由表,实现去中心化路由表维护,其传递过程包括以下步骤:
S41、在虚拟路由表创建后根据配置定期向控制节点接收路由表;
S42、在实际链路上监听连接请求,根据路由表中某一节点的实际链路信息,在实际链路上通过TCP、UDP、虚电路、串行链路的方式与该节点的虚拟交换机建立虚拟链路,并根据设置交换路由表信息;
S43、在收到路由表后,及时与未建立虚拟链路的节点建立虚拟链路;
S44、当操作系统中的其他应用需要将数据发送至该虚拟网络中的对应节点时,首先将数据发送至虚拟网卡,虚拟网卡收到数据后根据数据的目标地址查询路由表中的对应虚拟链路;
当找到虚拟链路后,将数据交给虚拟链路,虚拟链路通过实际链路将数据发送至目标虚拟交换机,再由目标虚拟交换机交付给对端虚拟网卡或交付给下一跳虚拟交换机;
S45、虚拟网卡由网络节点客户端在操作系统中建立,一个虚拟网卡与一个虚拟网络对应,用于接收操作系统中的应用发往该虚拟网络的数据,并将虚拟网络中发往该节点的数据交付给操作系统;
该虚拟网卡在操作系统中仅接收发往该虚拟网络的数据,忽略发往其他网络的数据,虚拟网卡在收到发往虚拟网络其他节点的数据时,通过查询网络节点中的虚拟路由表,选择对应的虚拟通信链路发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211687582.6A CN116016164A (zh) | 2022-12-27 | 2022-12-27 | 一种基于软件定义网络的虚拟业务网络构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211687582.6A CN116016164A (zh) | 2022-12-27 | 2022-12-27 | 一种基于软件定义网络的虚拟业务网络构建方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116016164A true CN116016164A (zh) | 2023-04-25 |
Family
ID=86026158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211687582.6A Pending CN116016164A (zh) | 2022-12-27 | 2022-12-27 | 一种基于软件定义网络的虚拟业务网络构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116016164A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116489650A (zh) * | 2023-06-25 | 2023-07-25 | 成都川美新技术股份有限公司 | 一种绕过某网络正常机制获取终端身份信息的方法及系统 |
CN117240900A (zh) * | 2023-11-10 | 2023-12-15 | 广东省电信规划设计院有限公司 | 基于软件定义网络的区块链节点发现与组网方法及装置 |
-
2022
- 2022-12-27 CN CN202211687582.6A patent/CN116016164A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116489650A (zh) * | 2023-06-25 | 2023-07-25 | 成都川美新技术股份有限公司 | 一种绕过某网络正常机制获取终端身份信息的方法及系统 |
CN116489650B (zh) * | 2023-06-25 | 2023-10-13 | 成都川美新技术股份有限公司 | 一种绕过某网络正常机制获取终端身份信息的方法及系统 |
CN117240900A (zh) * | 2023-11-10 | 2023-12-15 | 广东省电信规划设计院有限公司 | 基于软件定义网络的区块链节点发现与组网方法及装置 |
CN117240900B (zh) * | 2023-11-10 | 2024-04-12 | 广东省电信规划设计院有限公司 | 基于软件定义网络的区块链节点发现与组网方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108650182B (zh) | 网络通信方法、系统、装置、设备及存储介质 | |
CN116016164A (zh) | 一种基于软件定义网络的虚拟业务网络构建方法 | |
US6708209B1 (en) | Network system having plural networks for performing quality guarantee among the networks having different policies | |
US7693056B2 (en) | Method and system for a communication node with a plurality of network interfaces | |
US20130176861A1 (en) | Control apparatus, a communication system, a communication method and a recording medium having recorded thereon a communication program | |
US9172550B2 (en) | Management of a multicast system in a software-defined network | |
US9473242B2 (en) | Establishing connection across a connection-oriented first telecommunications network in response to a connection request from a second telecommunications network | |
JP2004537881A (ja) | ネットワーク管理のための方法とシステム | |
US10411911B2 (en) | Network as service service cross-domain orchestration method, orchestration device, and control device | |
CN105871719A (zh) | 路由状态和/或策略信息的处理方法及装置 | |
US20050220109A1 (en) | Routing table synchronization method, network apparatus, and routing table synchronization program | |
CN110336730A (zh) | 一种网络系统及数据传输方法 | |
CN112911001A (zh) | 一种云vpn与企业网自动化组网方案 | |
Ahmed et al. | Border Gateway Protocol to provide failover in multihoming environment | |
US20080117861A1 (en) | Service provision and management for mobile communities | |
WO2014183657A1 (zh) | 一种确定下一跳、发布路由信息的方法和装置 | |
JP3566198B2 (ja) | 仮想プライベートネットワーク間通信における接続管理方法及びその装置 | |
KR102092015B1 (ko) | 소프트웨어 정의 네트워크에서 네트워크 장비를 인식하는 방법, 장치 및 컴퓨터 프로그램 | |
US7580401B2 (en) | Method and apparatus for performing routing operations in a communications network | |
JP4630298B2 (ja) | 機能分散型通信装置、構成要素結合制御方法、およびプログラム | |
CN115883256B (zh) | 基于加密隧道的数据传输方法、装置及存储介质 | |
CN113556694B (zh) | 信息的发送方法、装置、系统、设备和介质 | |
KR100560753B1 (ko) | 분산 구조 라우터의 라우터 정보 관리 방법 및 그 장치 | |
CN114401179B (zh) | 一种网元管理方法、装置、设备及存储介质 | |
CN113395740B (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 |