CN114244840B - 多集群部署场景下网络自动优化方法 - Google Patents

多集群部署场景下网络自动优化方法 Download PDF

Info

Publication number
CN114244840B
CN114244840B CN202111567009.7A CN202111567009A CN114244840B CN 114244840 B CN114244840 B CN 114244840B CN 202111567009 A CN202111567009 A CN 202111567009A CN 114244840 B CN114244840 B CN 114244840B
Authority
CN
China
Prior art keywords
block chain
nodes
cluster
node
information
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
Application number
CN202111567009.7A
Other languages
English (en)
Other versions
CN114244840A (zh
Inventor
王晓亮
王鹏飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Rivtower Technology Co Ltd
Original Assignee
Hangzhou Rivtower Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Rivtower Technology Co Ltd filed Critical Hangzhou Rivtower Technology Co Ltd
Priority to CN202111567009.7A priority Critical patent/CN114244840B/zh
Publication of CN114244840A publication Critical patent/CN114244840A/zh
Application granted granted Critical
Publication of CN114244840B publication Critical patent/CN114244840B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种多集群部署场景下网络自动优化方法,包括以下步骤:当区块链节点启动后,通过公网地址完成互联;当公网连接建立后,区块链节点开始收集当前集群信息,并向其所连接的所有对端区块链节点发送集群信息;区块链节点之间交互节点信息;区块链节点通过链节点环境报文,与自身收集到的环境信息进行比对,找到处于同集群的区块链节点;当区块链节点之间发现彼此的邻居关系之后,区块链节点通过链节点环境报文的访问链节点的Service信息,连接同个集群内的其他区块链节点;内网连接建立完成之后,区块链节点之间进行内网通信。

Description

多集群部署场景下网络自动优化方法
技术领域
本发明属于区块链技术领域,具体涉及一种多集群部署场景下网络自动优化方法。
背景技术
在区块链节点配置中,为了保证节点互联及自动发现功能正常运行,当前节点需要配置处自身外所有其他节点的地址。这需要通过配置文件来指定,利用配置文件中指定的节点配置信息,节点之间互相连接,并进行数据通信。
在实际的部署场景中,存在很多企业需要部署多个节点,并且这些节点在企业的同一个Kubernetes集群中,即这些节点之间能够通过内网互联充分利用内网带宽,提供数据的传输速度。为了利用内网来进行数据的传输,企业需要配置节点的内网地址,以实现节点的内网互联。但是部分节点又处于公网中,因此还需要配置公网地址互联。在配置文件中,既有外网地址,又有内网地址,此时配置文件的内容变得十分复杂。同时,管理员还要清晰当前网络拓扑结构,以明确何时应该使用内网互联,何时应该使用公网互联。当节点网络拓扑发生变化时,管理员还要根据变化来调整所有节点的网络配置文件。
综上,现有技术中,为了充分利用内网带宽以提高性能,管理员需要进行繁重的维护工作。
发明内容
本发明要解决的技术问题是提供一种多集群部署场景下网络自动优化方法,无需调整配置,区块链节点通过公网地址互联后,自动感知所在集群,与其同集群的节点内网互联。
为解决上述技术问题,本发明采用如下的技术方案:
第一方面,本发明实施例提供一种多集群部署场景下网络自动优化方法,包括以下步骤:
当区块链节点启动后,通过公网地址完成互联;
当公网连接建立后,区块链节点开始收集当前集群信息,并向其所连接的所有对端区块链节点发送集群信息;区块链节点之间交互节点信息;
区块链节点通过链节点环境报文,与自身收集到的环境信息进行比对,找到处于同集群的区块链节点;
当区块链节点之间发现彼此的邻居关系之后,区块链节点通过链节点环境报文的访问链节点的Service信息,连接同个集群内的其他区块链节点;
内网连接建立完成之后,区块链节点之间进行内网通信。
第一方面的一种可能设计中,当区块链节点启动后,通过公网地址完成互联包括:
区块链节点启动,读取并解析网络配置文件,读取其中的所有网络地址及服务端口配置;
根据读取到的配置信息,向对端发起TCP连接,来请求连接对端;
直至当前区块链节点与在配置文件中定义的所有区块链节点形成双向连接。
第一方面的一种可能设计中,当公网连接建立后,区块链节点开始收集当前集群信息,并向其所连接的所有对端区块链节点发送集群信息;区块链节点之间交互节点信息包括:
当区块链节点公网网络互联完成后,区块链节点开始收集其相关的环境信息,包括所处Kubernetes集群信息、访问链节点的Service信息、链节点所在命名空间,用来组装链节点环境报文;
当前链节点创建链节点环境报文,并将该报文发送给所有的对端链节点,以向对端提供当前链节点的运行环境信息。
第一方面的一种可能设计中,区块链节点通过链节点环境报文,与自身收集到的环境信息进行比对,找到处于同集群的区块链节点包括:
区块链节点将自己收集的集群信息与对端链节点环境报文中的集群信息进行比对,以找到与其处于同Kubernetes集群的节点;
将与自身集群信息相同的节点标记为相同,并保存在数据库中;如果节点标记已经存在,则更新数据库中记录的节点状态;对于集群信息不同的节点,标记为不同,并更新到数据库中。
第一方面的一种可能设计中,内网连接建立完成之后,节点之间进行内网通信包括:
根据数据库的状态,当区块链节点发现新的邻居节点时,将通过链节点环境报文的节点服务信息向邻居节点发起连接;
当连接成功之后,两个节点之间的数据通信将通过内部网路进行。
第一方面的一种可能设计中,进一步包括检测节点是否迁移到其他环境中。
第一方面的一种可能设计中,检测节点是否迁移到其他环境中包括:
通过心跳检测机制进行检测,当前链节点周期向对端发送链节点环境报文,以提供当前集群信息;
当节点检测到集群信息发生变更时,通过对比发现两个节点的集群信息不同,则立刻断开邻居关系,转而通过公网发送数据。
第二方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行实现如上任一所述的多集群部署场景下网络自动优化方法。
采用本发明具有如下的有益效果:
(1)通过内网进行数据传输,有效的利用了内网闲置带宽资源。
(2)通过内网互联,提高数据同步速度及资源利用,实现性能提升。
(3)通过内网自动发现,减免系统管理员的维护配置工作,使节点间自动协商内网互联的配置。
附图说明
图1为本发明实施例的一种多集群部署场景下网络自动优化方法的步骤流程图;
图2为区块链节点公网网络互联示意图;
图3为区块链节点集群信息交换示意图;
图4为区块链节点邻居关系发现示意图;
图5为区块链节点邻居网络互联示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,本发明一实施例提供一种多集群部署场景下网络自动优化方法,包括以下步骤:
S10,当区块链节点启动后,通过公网地址完成互联;
S20,当公网连接建立后,区块链节点开始收集当前集群信息,并向其所连接的所有对端区块链节点发送集群信息;区块链节点之间交互节点信息;
S30,区块链节点通过链节点环境报文,与自身收集到的环境信息进行比对,找到处于同集群的区块链节点;
S40,当区块链节点之间发现彼此的邻居关系之后,区块链节点通过链节点环境报文(ChainNodeEnvPacket)的访问链节点的Service信息,连接同个集群内的其他区块链节点;
S50,内网连接建立完成之后,区块链节点之间进行内网通信。
通过以上设置的多集群部署场景下网络自动优化方法,无需调整区块链节点网络配置,区块链节点通过公网地址互联后,进而通过区块链节点自动发现实现内网互连,转而进行内网通信,有效的利用了内网闲置带宽资源。同时通过内网互联,提高数据同步速度及资源利用,实现性能提升。
本发明一实施例的一种多集群部署场景下网络自动优化方法,参见图2,当区块链节点启动后,通过公网地址完成互联,具体包括:
区块链节点启动,读取并解析网络配置文件,读取其中的所有网络地址及服务端口配置,链节点并利用这些信息实现公网网络互联;
根据读取到的配置信息,向对端发起TCP连接,来请求连接对端;区块链节点之间的TCP连接,利用控制消息隧道(CM Tunnel),互相发送控制消息、节点信息交互。其中控制消息隧道仅用于控制类消息的发送,与数据隧道分离,避免两者直接互相影响。
直至当前区块链节点与在配置文件中定义的所有区块链节点形成双向连接。如果某个区块链节点无法连接,则进行周期重试。为减小网络压力,具体应用实例中,默认10s超时重试。
本发明一实施例的一种多集群部署场景下网络自动优化方法,参见图3,当公网连接建立后,区块链节点开始收集当前集群信息,并向其所连接的所有对端区块链节点发送集群信息;区块链节点之间交互节点信息包括:
当区块链节点公网网络互联完成后,区块链节点开始收集其相关的环境信息,包括所处Kubernetes集群信息、访问链节点的Service信息、链节点所在命名空间,用来组装链节点环境报文;
当前链节点创建链节点环境报文,并将该报文发送给所有的对端链节点,以向对端提供当前链节点的运行环境信息。链节点环境报文由区块链节点产生,其中包含当前节点相关的环境信息,如其所处Kubernees集群信息(NodeClusterInfo);访问链节点的Service信息(NodeServiceInfo)、链节点所在命名空间(NodeNamespace)等。
本发明一实施例的一种多集群部署场景下网络自动优化方法,参见图4,区块链节点通过链节点环境报文,与自身收集到的环境信息进行比对,找到处于同集群的区块链节点包括:
区块链节点将自己收集的集群信息与对端链节点环境报文中的集群信息进行比对,以找到与其处于同Kubernetes集群的节点;
将与自身集群信息相同的节点标记为相同,并保存在数据库中;如果节点标记已经存在,则更新数据库中记录的节点状态;对于集群信息不同的节点,标记为不同,并更新到数据库中。
此过程自动配置实现,区块链节点能够自行发现处于相同集群的区块链链节点,无需管理员手动配置此种关系。
本发明一实施例的一种多集群部署场景下网络自动优化方法,参见图5,内网连接建立完成之后,节点之间进行内网通信包括:
根据数据库的状态,当区块链节点发现新的邻居节点时,将通过链节点环境报文的节点服务信息向邻居节点发起连接;
当连接成功之后,两个节点之间的数据通信将通过内部网路进行。利用数据报隧道(DataPacket Tunnel,DP Tunnel)互相发送数据包。
此过程通过内网数据通信,充分利用内网闲置资源。同时,内网数据通信带宽高,提高数据转发速度,减少同步数据的时间耗费,性能提升。
本发明一实施例的一种多集群部署场景下网络自动优化,随着业务的增长,节点可能迁移到其他集群。故进一步包括检测到节点是否迁移到其他环境中。如果对端节点迁移到其他环境,当前节点需要及时甄别。检测节点是否迁移到其他环境中包括:
通过心跳检测机制进行检测,当前链节点周期向对端发送链节点环境报文,以提供当前集群信息;为减小网络压力,默认3s为一个周期发送。
当节点检测到集群信息发生变更时,通过对比发现两个节点的集群信息不同,则立刻断开邻居关系,转而通过公网发送数据。
此过程周期进行心跳检测,进行动态检查能够及时发现环境变化,并自动切换状态,无需人工干预。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种多集群部署场景下网络自动优化中的步骤。例如,该计算机程序可以执行如下步骤:
当区块链节点启动后,通过公网地址完成互联;
当公网连接建立后,区块链节点开始收集当前集群信息,并向其所连接的所有对端区块链节点发送集群信息;区块链节点之间交互节点信息;
区块链节点通过链节点环境报文,与自身收集到的环境信息进行比对,找到处于同集群的区块链节点;
当区块链节点之间发现彼此的邻居关系之后,区块链节点通过链节点环境报文的访问链节点的Service信息,连接同个集群内的其他区块链节点;
内网连接建立完成之后,区块链节点之间进行内网通信。
以上各个步骤的具体实施可参见上述的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种多集群部署场景下网络自动优化中的步骤,因此,可以实现本申请实施例所提供的任一种多集群部署场景下网络自动优化所能实现的有益效果,详见上述的实施例,在此不再赘述。
应当理解,本文所述的示例性实施例是说明性的而非限制性的。尽管结合附图描述了本发明的一个或多个实施例,本领域普通技术人员应当理解,在不脱离通过所附权利要求所限定的本发明的精神和范围的情况下,可以做出各种形式和细节的改变。

Claims (8)

1.一种多集群部署场景下网络自动优化方法,其特征在于,包括以下步骤:
当区块链节点启动后,通过公网地址完成互联;
当公网连接建立后,区块链节点开始收集当前集群信息,并向其所连接的所有对端区块链节点发送集群信息;区块链节点之间交互节点信息;
区块链节点通过链节点环境报文,与自身收集到的环境信息进行比对,找到处于同集群的区块链节点;
当区块链节点之间发现彼此的邻居关系之后,区块链节点通过链节点环境报文的访问链节点的Service信息,连接同个集群内的其他区块链节点;
内网连接建立完成之后,区块链节点之间进行内网通信。
2.如权利要求1所述的多集群部署场景下网络自动优化方法,其特征在于,当区块链节点启动后,通过公网地址完成互联包括:
区块链节点启动,读取并解析网络配置文件,读取其中的所有网络地址及服务端口配置;
根据读取到的配置信息,向对端发起TCP连接,来请求连接对端;
直至当前区块链节点与在配置文件中定义的所有区块链节点形成双向连接。
3.如权利要求1所述的多集群部署场景下网络自动优化方法,其特征在于,当公网连接建立后,区块链节点开始收集当前集群信息,并向其所连接的所有对端区块链节点发送集群信息;区块链节点之间交互节点信息包括:
当区块链节点公网网络互联完成后,区块链节点开始收集其相关的环境信息,包括所处Kubernees集群信息、访问链节点的Service信息、链节点所在命名空间,用来组装链节点环境报文;
当前链节点创建链节点环境报文,并将该报文发送给所有的对端链节点,以向对端提供当前链节点的运行环境信息。
4.如权利要求1所述的多集群部署场景下网络自动优化方法,其特征在于,区块链节点通过链节点环境报文,与自身收集到的环境信息进行比对,找到处于同集群的区块链节点包括:
区块链节点将自己收集的集群信息与对端链节点环境报文中的集群信息进行比对,以找到与其处于同Kubernetes集群的节点;
将与自身集群信息相同的节点标记为相同,并保存在数据库中;如果节点标记已经存在,则更新数据库中记录的节点状态;对于集群信息不同的节点,标记为不同,并更新到数据库中。
5.如权利要求4所述的多集群部署场景下网络自动优化方法,其特征在于,内网连接建立完成之后,节点之间进行内网通信包括:
根据数据库的状态,当区块链节点发现新的邻居节点时,将通过链节点环境报文的节点服务信息向邻居节点发起连接;
当连接成功之后,两个节点之间的数据通信将通过内部网路进行。
6.如权利要求1至5任一所述的多集群部署场景下网络自动优化方法,其特征在于,进一步包括检测节点是否迁移到其他环境中。
7.如权利要求6所述的多集群部署场景下网络自动优化方法,其特征在于,检测节点是否迁移到其他环境中包括:
通过心跳检测机制进行检测,当前链节点周期向对端发送链节点环境报文,以提供当前集群信息;
当节点检测到集群信息发生变更时,通过对比发现两个节点的集群信息不同,则立刻断开邻居关系,转而通过公网发送数据。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行实现权利要求1至7任一所述的多集群部署场景下网络自动优化方法。
CN202111567009.7A 2021-12-20 2021-12-20 多集群部署场景下网络自动优化方法 Active CN114244840B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111567009.7A CN114244840B (zh) 2021-12-20 2021-12-20 多集群部署场景下网络自动优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111567009.7A CN114244840B (zh) 2021-12-20 2021-12-20 多集群部署场景下网络自动优化方法

Publications (2)

Publication Number Publication Date
CN114244840A CN114244840A (zh) 2022-03-25
CN114244840B true CN114244840B (zh) 2023-06-06

Family

ID=80759788

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111567009.7A Active CN114244840B (zh) 2021-12-20 2021-12-20 多集群部署场景下网络自动优化方法

Country Status (1)

Country Link
CN (1) CN114244840B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110572460A (zh) * 2019-09-11 2019-12-13 腾讯科技(深圳)有限公司 基于区块链系统的数据传输方法、装置及计算机设备
CN110891082A (zh) * 2019-10-24 2020-03-17 南京可信区块链与算法经济研究院有限公司 一种联盟链中p2p端口地址的连接方法、系统及存储介质
WO2020106845A1 (en) * 2018-11-23 2020-05-28 Amazon Technologies, Inc. Enabling access across private networks for a managed blockchain service
CN111262960A (zh) * 2020-01-15 2020-06-09 山东汇贸电子口岸有限公司 一种公有云弹性公网ip集群实现方法及系统
CN111970337A (zh) * 2020-07-30 2020-11-20 天翼电子商务有限公司 跨云环境下的p2p网络通信构建方法、系统、介质及终端
CN112187888A (zh) * 2020-09-15 2021-01-05 苏州浪潮智能科技有限公司 多Kubernetes集群纳管方法、纳管装置及计算机可读存储介质
CN112437141A (zh) * 2020-06-12 2021-03-02 支付宝(杭州)信息技术有限公司 辅助区块链网络中的节点建立p2p直连的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10764142B2 (en) * 2017-11-16 2020-09-01 International Business Machines Corporation Clustered application management with a blockchain
EP3808031A1 (en) * 2018-06-13 2021-04-21 Telefonaktiebolaget LM Ericsson (publ) Robust node failure detection mechanism for sdn controller cluster

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020106845A1 (en) * 2018-11-23 2020-05-28 Amazon Technologies, Inc. Enabling access across private networks for a managed blockchain service
CN110572460A (zh) * 2019-09-11 2019-12-13 腾讯科技(深圳)有限公司 基于区块链系统的数据传输方法、装置及计算机设备
CN110891082A (zh) * 2019-10-24 2020-03-17 南京可信区块链与算法经济研究院有限公司 一种联盟链中p2p端口地址的连接方法、系统及存储介质
CN111262960A (zh) * 2020-01-15 2020-06-09 山东汇贸电子口岸有限公司 一种公有云弹性公网ip集群实现方法及系统
CN112437141A (zh) * 2020-06-12 2021-03-02 支付宝(杭州)信息技术有限公司 辅助区块链网络中的节点建立p2p直连的方法
CN111970337A (zh) * 2020-07-30 2020-11-20 天翼电子商务有限公司 跨云环境下的p2p网络通信构建方法、系统、介质及终端
CN112187888A (zh) * 2020-09-15 2021-01-05 苏州浪潮智能科技有限公司 多Kubernetes集群纳管方法、纳管装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN114244840A (zh) 2022-03-25

Similar Documents

Publication Publication Date Title
US10674486B2 (en) System, security and network management using self-organizing communication orbits in distributed networks
US20070233855A1 (en) Adaptible keepalive for enterprise extenders
CN111432025B (zh) 一种面向云边协同的分布式服务目录管理方法及系统
US12008382B2 (en) Automatic formation of a virtual chassis using zero touch provisioning
CN107547374B (zh) 一种聚合路由处理方法和装置
CN101599907B (zh) 流量转发方法和系统
CA3137068A1 (en) Efficient message transmission and loop avoidance in an rpl network
CN114244840B (zh) 多集群部署场景下网络自动优化方法
CN102025782A (zh) 一种点对点通信方法、装置及系统
WO2012136091A2 (zh) 一种对等网络中数据迁移的方法及系统
CN109245953A (zh) 一种网络配置方法和装置
WO2021226784A1 (zh) 节点配置方法、装置、分布式系统及计算机可读介质
CN115514719B (zh) 报文发送方法、装置、交换机及可读存储介质
CN112491810B (zh) 一种数据连接的方法及移动终端
CN110086657B (zh) 一种配置同步方法及装置
CN114095508A (zh) 一种同交换机下p2p传输的方法
CN113132988A (zh) 一种基于令牌验证的路灯控制器无线组网链路入网方法
TWI535249B (zh) Automate the way to extend the network cache system
CN112948184B (zh) 一种基于多通信模式的信息收发控制系统
CN113067771B (zh) 管理虚拟链路聚合信道
CN116962446B (zh) 一种NVMe-oF链路动态管理方法及系统
CN114466007B (zh) 一种sdn控制器协议能力统一调度方法及装置
CN114979061B (zh) 一种智能网卡应答arp的方法、装置、设备及介质
CN111817894B (zh) 集群节点配置方法、系统及可读存储介质
CN117857660A (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