CN110839034B - 一种通信连接的控制方法及相关设备 - Google Patents

一种通信连接的控制方法及相关设备 Download PDF

Info

Publication number
CN110839034B
CN110839034B CN201911125853.7A CN201911125853A CN110839034B CN 110839034 B CN110839034 B CN 110839034B CN 201911125853 A CN201911125853 A CN 201911125853A CN 110839034 B CN110839034 B CN 110839034B
Authority
CN
China
Prior art keywords
link point
point device
block
block link
block chain
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
CN201911125853.7A
Other languages
English (en)
Other versions
CN110839034A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201911125853.7A priority Critical patent/CN110839034B/zh
Publication of CN110839034A publication Critical patent/CN110839034A/zh
Application granted granted Critical
Publication of CN110839034B publication Critical patent/CN110839034B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • 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
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1046Joining mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本申请实施例公开了一种通信连接的控制方法及相关设备。其中,所述方法包括:第一区块链节点设备接收第二区块链节点设备发送的第一连接请求;并检测第一预设设备标识库中是否存在第二区块链节点设备的设备标识;若存在,则生成第一通知消息,并将第一通知消息发送给第二区块链节点设备,所述第一通知消息用于指示所述第一区块链节点设备拒绝响应所述第一连接请求。采用本申请实施例,第一区块链节点设备可存储第二区块链节点设备的设备标识,当后续接收到该第二区块链节点设备的连接请求时,依据存储的设备标识去拒绝响应连接请求,可避免区块链节点设备之间建立多条通信通道,节省区块链节点设备的资源。

Description

一种通信连接的控制方法及相关设备
技术领域
本申请涉及通信技术领域,尤其涉及一种通信连接的控制方法及相关设备。
背景技术
区块链技术是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
区块链技术凭借其不依赖于第三方管理机构或硬件设施等优势,被应用到公共服务领域、物联网和物流领域、保险领域、金融领域等与民众生活息息相关的领域。目前,区块链网络中的两个节点设备之间可建立多条通信通道,使得部分通信通道长期处于空闲状态,进而造成资源的浪费。因此如何避免区块链网络中节点设备之间的重复连接,成为当前研究的热点话题。
发明内容
本申请实施例提供了一种通信连接的控制方法及相关设备,使得区块链网络中的区块链节点设备之间只建立一条通信通道,进而节省区块链节点设备的资源。
第一方面,本申请实施例提供了一种通信连接的控制方法,该方法具体包括:
第一区块链节点设备接收第二区块链节点设备发送的第一连接请求,所述第一连接请求包括第二区块链节点设备的设备标识;
第一区块链节点设备检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识,所述第一预设设备标识库中包括与第一区块链节点设备之间建立通信通道的至少一个区块链节点设备的设备标识;
若存在,则第一区块链节点设备生成第一通知消息,并将第一通知消息发送给第二区块链节点设备,所述第一通知消息用于指示第一区块链节点设备拒绝响应第一连接请求。
第二方面,本申请实施例提供了一种区块链节点设备,该区块链节点设备具有实现第一方面所述的控制区块链节点设备之间的通信连接的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或者软件包括一个或者多个与上述功能相对应的模块。
在一种实现方式中,该区块链节点设备包括:接收模块、检测模块、生成模块、发送模块。其中,接收模块,用于接收第二区块链节点设备发送的第一连接请求;检测模块,用于检测在第一预设设备标识库中是否存在所述第二区块链节点设备的设备标识;生成模块,用于生成第一通知消息;发送模块,用于将所述第一通知消息发送给所述第二区块链节点设备。
第三方面,本申请实施例提供了一种区块链节点设备,该区块链节点设备具有实现第一方面所述的控制区块链节点设备之间的通信连接的功能。该区块链节点设备包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接。其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,用于执行第一方面所涉及到的操作。
第四方面,本申请实施例提供了一种计算机可读存储介质,用于存储为区块链节点设备所用的计算机程序,其包含用于执行上述第一方面所述的程序。
通过本申请实施例,第一区块链节点设备与第二区块链节点设备之间成功建立通信通道后,第一区块链节点设备可存储第二区块链节点设备的设备标识,当后续接收到该第二区块链节点设备的连接请求时,依据存储的设备标识去拒绝响应连接请求,可避免区块链节点设备之间建立多条通信通道,节省区块链节点设备的资源。
附图说明
为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例中所需要使用的附图进行说明。
图1是本申请实施例公开的一种区块链网络的架构示意图;
图2是本申请实施例公开的一种两个区块链节点设备之间建立两条通信通道的示意图;
图3是本申请实施例公开的一种通信通道的控制方法的流程示意图;
图4是本申请实施例公开的一种通信通道的控制方法的流程示意图;
图5是本申请实施例公开的另一种通信通道的控制方法的流程示意图;
图6是本申请实施例公开的一种区块链节点设备维护IP地址库的示意图;
图7是本申请实施例公开的一种区块链节点设备接收节点设备的连接请求的示意图;
图8是本申请实施例公开的一种区块链节点设备的结构示意图;
图9是本申请实施例公开的又一种区块链节点设备的结构示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。
本申请实施例涉及区块链技术,其中,区块链(Block Chain,BC)是分布式数据存储、共识机制、加密算法等计算机技术的新型应用模式。区块链技术具有去中心化、开放性、独立性、安全性和匿名性等特征。一般地,传统的交易模型是基于中心化思维构建的交易模型,即交易双方在不信任对方的前提下,会促进第三方中心化的形成,第三方作为仲裁者,在交易过程中,见证交易双方的活动。而区块链技术的去中心化特征是指在区块链网络中,每一个节点设备都存储数据,通过分布式存储实现数据的冗余,让所有节点有能力彼此维护数据库的安全,使得整个交易自主化、简单化。
区块链网络中的区块链节点设备的类型可以包括但不限于:全节点、SPV节点(simplified payment verification,简单支付验证)、区块链网络中其他节点类型。其中,全节点是指存储有完整区块链的节点,全节点能够独立校验区块链上的所有交易并实时更新数据,主要负责区块链的交易的广播和验证。全节点通常是高性能的计算设备。SPV节点也可称为轻型节点,SPV节点是指只保存了区块链的一部分的节点。例如,SPV节点只存储了区块链中所有的区块头信息以及与自身信息相关的区块信息,并不存储完整的区块链。SPV节点是依靠全节点存在的节点,不用为区块链网络提供算力。因此,SPV节点多为移动终端,例如为智能手机、平板电脑或移动计算机等。
以图1所示的区块链网络的架构示意图为例,区块链网络包括彼此连接的多台计算机,这些计算机又称为区块链节点设备。例如,图1所示的区块链节点设备1、区块链节点设备2、区块链节点设备3、区块链节点设备4均为区块链网络中对等的区块链节点设备。各个区块链节点设备之间可建立通信通道,区块链节点设备利用该通信通道传输各类交易数据,以实现区块链网络中的各个区块链节点设备对数据的共同维护的功能。
即使区块链网络呈现上述优势,但目前,区块链技术也存在一定的缺陷。例如,区块链网络中的区块链节点设备设备之间可能建立多条通信通道的情况,使得多条通信通道中总存在空闲的通信通道,造成区块链节点设备资源的浪费。
以图2所示来说明:区块链网络中的区块链节点设备之间存在多条通信通道的情况。在图2中,区块链网络中的区块链节点设备包括:区块链节点设备201、区块链节点设备202。其中,区块链节点设备201与区块链节点设备202之间建立了第一通信通道和第二通信通道。当区块链节点设备201通过第一通信通道向区块链节点设备202传输数据时,第二通信通道处于空闲状态。同理,当区块链节点设备201通过第二通信通道向区块链节点设备202传输数据时,第一通信通道处于空闲状态。事实上,区块链节点设备201和区块链节点设备202之间可以只依靠第一通信通道(第二通信通道)进行数据的传输,进而避免多余的通信通道处于空闲状态,实现节省区块链节点设备的资源。
为了解决上述提及到的关于区块链网络中的区块链节点设备之间重复建立通信通道,造成资源浪费的问题。本申请实施例提出了一种通信通道的控制方法及相关设备,可在两个区块链节点设备之间只建立一条通信通道,进而实现减少区块链节点设备的资源浪费。
本申请提出一种通信通道的控制方案,该方案具体实施过程包括:第一区块链节点设备接收第二区块链节点设备的发送的第一连接请求,所述第一连接请求中包括第二区块链节点设备的设备标识;第一区块链节点设备从第一连接请求中获取上述的第二区块链节点设备的设备标识,并在第一区块链节点设备的第一预设设备标识库中检测,是否存在上述的第二区块链节点设备的设备标识;若存在,则第一区块链节点设备生成第一通知消息,并将所述第一通知消息发送给第二区块链节点设备,所述第一通知消息用于指示第一区块链节点设备拒绝响应第一连接请求。
需要说明的是,上述提及到的第二区块链节点设备也可以被称为第三区块链节点设备、第四区块链节点设备等等,本申请实施例对此不作限定。
通过实施本申请实施例,第一区块链节点设备获取第二区块链节点设备的设备标识,并检测第二区块链的设备标识是否存在于第一区块链节点设备的第一预设设备标识库。若存在,则第一区块链节点设备拒绝响应第一连接请求。也就是说,第一区块链节点设备检测到第一区块链节点设备与第二区块链节点设备已经建立了通信通道,所以第一区块链节点设备拒绝与第二区块链节点设备再次建立通信通道。因此,可实现两个区块链节点设备之间只建立一条通信通道,进而减少浪费区块链节点设备的资源。
请参见图3,图3是本申请实施例提供的一种通信通道的控制方法的流程示意图,该方法包括但不限于如下步骤:
步骤S301:第一区块链节点设备接收第二区块链节点设备发送的第一连接请求。
其中,所述第一区块链节点设备可以是区块链网络中的任意区块链节点设备。所述第一连接请求是第二区块链节点设备向第一区块链节点设备发起连接的请求,所述第一连接请求中可包括第二区块链节点设备的设备标识。
具体地,第二区块链节点设备可以将包含第二区块链节点设备的设备标识的第一连接请求发送给第一区块链节点设备。
步骤S302:第一区块链节点设备检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识。
其中,第一区块链节点设备中存在第一预设设备标识库,并且,所述第一预设设备标识库中包括:与第一区块链节点设备成功建立通信通道的区块链节点设备的设备标识。所述区块链节点设备的设备标识用于唯一标识该区块链节点设备的身边身份。
在一种实现方式中,第一预设设备标识库中存在第二区块链节点设备的设备标识。那么第一区块链节点设备确定第一区块链节点设备在接收到第二区块链节点设备发送的第一连接请求之前,第一区块链节点设备与第二区块链节点设备之间存在通信通道。
在一种实现方式中,第一预设设备标识库中不存在第二区块链节点设备的设备标识。那么第一区块链节点设备建立与第二区块链节点设备之间的通信通道,并获取第二区块链节点设备的设备标识,且将第二区块链节点设备的设备标识存储至第一预设设备标识库中。也就是说,第一区块链节点设备确定第一区块链节点设备与第二区块链节点设备之间还未建立通信通道,那么第一区块链节点设备建立与第二区块链节点设备之间的通信通道。
步骤S303:若存在,第一区块链节点设备生成第一通知消息。
其中,所述第一通知消息用于指示第一区块链节点设备拒绝响应所述第一连接请求,所述第一通知消息是第一区块链节点设备在检测到第一预设设备标识库中存在第二区块链节点设备的设备标识时生成的。也就是说,第一区块链节点设备与第二区块链节点设备之间已经存在通信通道,因此第一区块链节点设备和第二区块链节点设备不需要再次建立通信通道。
步骤S304:第一区块链节点设备将第一通知消息发送给第二区块链节点设备。
第一区块链节点设备将第一通知消息发送给第二区块链节点设备,以至于第二区块链节点设备可知晓:第一区块链节点设备与第二区块链节点设备之间已经存在通信通道,因此第一区块链节点设备不响应第一连接请求。
可见,第一区块链节点设备通过检测第一预设设备标识库中是否存在第二区块链节点设备的设备标识,可以确定出与第二区块链节点设备之间是否建立通信通道。可避免第一区块链节点设备与第二区块链节点设备之间建立多次通信通道,进而减少区块链节点设备的资源浪费。
图4是本申请实施例提供的另一种通信通道的控制方法的流程示意图,该方法包括但不限于步骤S401~步骤S410,其中:
步骤S401:第一区块链节点设备接收第二区块链节点设备发送的第一连接请求。
所述第一连接请求中包括:第二区块链节点设备的设备标识。
步骤S402:第一区块链节点设备检测第二区块链节点设备的IP地址是否存在于第一区块链节点设备的IP地址库中。
其中,第一区块链节点设备的IP地址库中包括:区块链网络中可以与第一区块链节点设备之间建立通信通道的区块链节点设备的IP地址。也就是指,第一区块链节点设备可维护一个IP地址库,所述IP地址库中包括至少一个区块链节点设备的IP地址。并且,存在于该IP地址库中的IP地址对应的区块链节点设备均可与第一区块链节点设备之间建立通信通道。
以图6为例,区块链网络中包括:第一区块链节点设备601、第二区块链节点设备602、第二区块链节点设备603、第二区块链节点设备604等等。其中,第一区块链节点设备601维护一个IP地址库,在该IP地址库中存在第二区块链节点设备602、第二区块链节点设备603、第二区块链节点设备604的IP地址。也就是说,第一区块链节点设备可以和第二区块链节点设备602、第二区块链节点设备603、第二区块链节点设备604之间建立通信通道。以第一区块链节点设备维护的IP地址库为例。
区块链节点设备名称 区块链节点设备的IP地址
第二区块链节点设备602 117.114.151.174
第二区块链节点设备603 117.116.189.145
第二区块链节点设备604 119.123.789.258
如图6所示,若第一区块链节点设备601接收到第二区块链节点设备603的连接请求,并且第一区块链节点设备获取第二区块链节点设备的IP地址,该IP地址为117.116.189.145。那么第一区块链节点设备通过检测可知:在第一区块链节点设备601的IP地址库中存在所述第二区块链节点设备603的IP地址,所以第一区块链节点设备可以和第二区块链节点设备603之间建立通信通道。
在一种实现方式中,第一区块链节点设备可以接收第二区块链节点设备发送的第二区块链节点设备的IP地址。第一区块链节点设备检测接收的第二区块链节点设备的IP地址是否存在于第一区块链节点设备的IP地址库中。若第一区块链节点设备的IP地址库中存在第二区块链节点设备的IP地址,则触发第一区块链节点设备检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识的步骤。
在一种实现方式中,第一区块链节点设备可以从第一连接请求中获取第二区块链节点设备的IP地址。第一区块链节点设备检测接收的第二区块链节点设备的IP地址是否存在于第一区块链节点设备的IP地址库中。若第一区块链节点设备的IP地址库中存在第二区块链节点设备的IP地址,则触发第一区块链节点设备检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识的步骤。
步骤S403:若第二区块链节点设备的IP地址存在于第一区块链节点设备的IP地址库中,则第一区块链节点设备检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识。
第一预设设备标识库中包括:与所述第一区块链节点设备之间建立通信通道的至少一个区块链节点设备的设备标识。
在一种实现方式中,若第一预设设备标识库中存在第二区块链节点的设备标识。那么第一区块链节点设备确定:第一区块链节点设备在接收第二区块链节点设备发送的第一连接请求之前,第一区块链节点设备与第二区块链节点设备之间建立了通信通道。可选的,第一区块链节点设备可以生成第一通知消息,并将第一通知消息发送给第二区块链节点设备,所述第一通知消息用于指示第一区块链节点设备拒绝响应第一连接请求。
在一种实现方式中,若第一预设设备标识库中不存在第二区块链节点的设备标识。那么第一区块链节点设备确定:第一区块链节点设备与第二区块链节点设备之间不存在通信通道,则第一区块链节点设备建立与第二区块链节点设备之间的通信通道。
步骤S404:若第一预设设备标识库中不存在第二区块链节点设备的设备标识,则第一区块链节点设备建立与第二区块链节点设备之间的通信通道,并获取第二区块链节点设备的设备标识。
在一种实现方式中,第一区块链节点设备可基于第二区块链节点设备的IP地址,得到第二区块链节点设备的设备标识。详细地,第一区块链节点设备可以对第二区块链节点设备的IP地址进行哈希算法,得到二进制数值,并将所述二进制数值作为第二区块链节点设备的设备标识。
需要说明的是,上述提及到的哈希算法是一种可以将任意长度的输入经过变化以后得到固定长度的输出。常见的,哈希算法也称为散列函数,并且哈希算法可以包括:MD4、MD5、SHA-1等等。以MD5算法为例,MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过处理之后,MD5码的输出由四个32位分组组成,将这32位分组级联后将生成一个128位散列值。
在一种实现方式中,第一区块链节点设备可接收第二区块链节点设备发送的识别码,并将该识别码确定为第二区块链节点设备的设备标识。
需要说明的是,上述提及到的识别码是可以代表第二区块链节点设备身份的识别码。常见的,识别码可以为SN码(Serial Number,产品序列号)、IMEI(InternationalMobile Equipment Identity,国际移动设备识别码)、IMSI(Internayional MobileSubscriber Identification Number,国际移动用户识别码)等等。以IMSI为例,IMSI储存于SIM卡中,可用于区别移动用户的有效信息,并且IMSI码的总长度不超过15位。
在一种实现方式中,第一区块链节点设备还可将获取的第二区块链节点设备的设备标识存储至第一预设设备标识库中。具体地,第一区块链节点设备将第二区块链节点设备的设备标识存储至第一预设设备标识库中,有助于:当第一区块链节点设备后续接收到第二区块链节点设备的连接请求时,第一区块链节点设备可以根据第二区块链节点设备的设备标识去拒绝连接请求。
步骤S405:第一区块链节点设备生成第二通知消息。
所述第二通知消息用于指示第一区块链节点设备成功建立与第二区块链节点设备之间的通信通道。所述第二通知消息是第一区块链节点设备在第一区块链节点设备与第二区块链节点设备之间建立通信通道时生成的。
步骤S406:第一区块链节点设备将第二通知消息发送给第二区块链节点设备。
第二区块链节点设备接收第二通知消息,第二区块链节点设备可得知:第一区块链节点设备与第二区块链节点设备之间已经成功建立通信通道。
步骤S407:第二区块链节点设备将第一区块链节点设备的设备标识存储至第二预设设备标识库中。
所述第二预设设备标识库中包括:与第二区块链节点设备之间建立通信通道的区块链网络中的至少一个区块链节点设备的设备标识。
在一种实现方式中,第二区块节点设备可接收第一区块链节点设备发送的第一区块链节点设备的设备标识。相应的,第二区块链节点设备将第一区块链节点设备的设备标识存储至第二预设设备标识库中。
在一种实现方式中,第二区块链节点设备可从第一区块链节点设备发送的第二通知消息中获取第一区块链节点的IP地址,并基于该IP地址生成第一区块链节点设备的设备标识。详细地,第二区块链节点设备可对第一区块链节点设备的IP地址进行哈希算法,得到二进制数值,并将该二进制数值确定为第一区块链节点设备的设备标识。相应的,第二区块链节点设备将该第一区块链节点设备的设备标识存储至第二预设设备标识库中。
步骤S408:第一区块链节点设备将第二连接请求发送给第二区块链节点设备。所述第二连接请求中包括:第一区块链节点设备的设备标识。
步骤S409:第二区块链节点设备检测到第二预设设备标识库中存在第一区块链节点设备的设备标识。
具体地,通过上述描述可知,第一区块链节点设备与第二区块链节点设备之间建立通信通道之后,第二区块链节点设备也可将第二区块链节点设备将第一区块链节点设备的设备标识存储至第二预设设备标识库中。因此,当第二区块链节点设备后续接收到第一区块链节点设备的第二连接请求时,第二区块链节点设备可以基于第一区块链节点设备的设备标识去拒绝响应该第二连接请求。
可知,第一区块链节点设备建立与第二区块链节点设备之间的通信通道后,可通知第二区块链节点设备存储第一区块链节点设备的设备标识。可使第一区块链节点设备和第二区块链节点设备分别存储对方的设备标识,进而避免任何一方发起连接请求时,建立多条通信通道。
步骤S410:第二区块链节点设备生成第三通知消息。
所述第三通知消息用于指示第二区块链节点设备拒绝响应第二连接请求,所述第三通知消息是第二区块链节点设备在检测到第二预设设备标识库中存在第一区块链节点设备的设备标识时生成的。
步骤S411:第二区块链节点设备将第三通知消息发送给第一区块链节点设备。
可知,第一区块链节点设备通过检测第二区块链节点设备的IP地址,是否存在于第一区块链节点设备的IP地址库,可确保第一区块链节点设备只与IP地址库中的IP地址对应的区块链节点设备建立通信通道。
参见图5,图5是本申请实施例提供的又一种通信连接的控制方法的流程示意图,该方法具体实施过程包括但不限于步骤S501~步骤S511,其中:
步骤S501:第一区块链节点设备接收第二区块链节点设备发送的第一连接请求。
所述第一连接请求中包括第二区块链节点设备的设备标识。
步骤S502:第一区块链节点设备检测第二区块链节点设备是否属于第一区块链节点设备所属的区块链网络。
具体地,第一区块链节点设备可以检测第二区块链节点设备是否属于第一区块链节点设备所属区块链网络中的区块链节点设备。
若第二区块链节点设备属于第一区块链节点设备所属的区块链网络,则触发第一区块链节点设备检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识的步骤。
比如以图7所示,区块链网络中的区块链节点设备包括:第一区块链节点设备701、第二区块链节点设备702、第二区块链节点设备703、第二区块链节点设备704等等。现有区块链网络以外的节点设备705向第一区块链节点设备701发送连接请求,则第一区块链节点设备在确定该节点设备701不属于区块链网络的节点设备时,可拒绝响应该连接请求。同理,若第二区块链节点设备703向第一区块链节点设备701发送连接请求,则第一区块链节点设备701确定该第二区块链节点设备703是属于第一区块链节点设备所属的区块链网络,并且第一区块链节点设备未与第二区块链节点设备之间建立通信通道。因此,第一区块链节点设备可成功响应第二区块链节点设备703发送的连接请求。
步骤S503:若第二区块链节点设备属于第一区块链节点设备所属的区块链网络,则第一区块链节点设备检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识。
步骤S504:若第一预设设备标识库中不存在第二区块链节点设备的设备标识,则第一区块链节点设备建立与第二区块链节点设备之间的通信通道,并获取第二区块链节点设备的设备标识。
在一种实现方式中,第一区块链节点设备还可将第二区块链节点设备的设备标识存储至第一预设设备标识库中。以便于后续,第一区块链节点设备接收到第二区块链节点设备的连接请求时,第一区块链节点设备可依据该第二区块链节点设备的设备标识去拒绝第二区块链节点设备的连接请求。进而避免第一区块链节点设备与第二区块链节点设备之间建立两条通信通道。
步骤S505:第一区块链节点设备生成第二通知消息。
所述第二通知消息用于指示第一区块链节点设备成功建立与第二区块链节点设备之间的通信通道。所述第二通知消息是第一区块链节点设备在第一区块链节点设备与第二区块链节点设备之间建立通信通道时生成的。
步骤S506:第一区块链节点设备将第二通知消息发送给第二区块链节点设备。
步骤S507:第二区块链节点设备将第一区块链节点设备的设备标识存储至第二预设设备标识库中。
第二预设设备标识库中包括:与第二区块链节点设备之间成功建立通信通道的至少一个区块链节点设备。
步骤S508:第一区块链节点设备将第二连接请求发送给第二区块链节点设备。所述第二连接请求中包括:第一区块链节点设备的设备标识。
步骤S509:第二区块链节点设备检测到第二预设设备标识库中存在第一区块链节点设备的设备标识。
步骤S510:第二区块链节点设备生成第三通知消息。
所述第三通知消息用于指示第二区块链节点设备拒绝响应第二连接请求,所述第三通知消息是第二区块链节点设备在检测到第二预设设备标识库中存在第一区块链节点设备的设备标识时生成的。
步骤S511:第二区块链节点设备将第三通知消息发送给第一区块链节点设备。
需要说明的是,步骤S503~步骤S511的具体实施过程与图4中步骤S403~步骤S411的实施过程相同或相似,在此不作赘述。
可知,第一区块链节点设备检测第一连接请求中的第二区块链节点设备,是否属于第一区块链节点设备所属区块链网络中的区块链节点设备。可确保第一区块链节点设备与第一区块链节点设备所属区块链网络中的区块链节点设备之间进行连接。
请参见图8,图8是本申请实施例提供的一种区块链节点设备的结构示意图,该区块链节点设备8用于执行图3~图5对应的方法实施例中第一区块链节点设备所执行的步骤,该区块链节点设备8可包括:
接收模块801,用于接收第二区块链节点设备发送的第一连接请求,所述第一连接请求包括第二区块链节点设备的设备标识;
检测模块802,用于检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识,所述第一预设设备标识库中包括:与第一区块链节点设备之间建立通信通道的至少一个区块链节点设备的设备标识;
生成模块803,用于生成第一通知消息;
发送模块804,用于将第一通知消息发送给第二区块链节点设备,所述第一通知消息用于指示第一区块链节点设备拒绝响应第一连接请求。
在一种实现方式中,检测模块802还包括建立单元8021,生成模块803还包括生成单元8031、存储单元8032,其中:
检测模块802检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识之后,还包括:
若所述第一预设设备标识库中不存在所述第二区块链节点设备的设备标识,则建立单元8021,用于建立与所述第二区块链节点设备之间的通信通道;
接收模块801,用于获取第二区块链节点设备的设备标识;
存储单元8032,用于将第二区块链节点设备的设备标识存储至第一预设设备标识库中。
在一种实现方式中,检测模块802检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识之前,还包括:
接收模块801,用于获取第二区块链节点设备的IP地址;
检测模块802,用于检测在第一区块链节点设备的IP地址库中,是否存在第二区块链节点设备的IP地址;
若第一区块链节点设备的IP地址库中存在第二区块链节点设备的IP地址,则触发检测模块802检测在第一预设设备标识库中是否存在所述第二区块链节点设备的设备标识的步骤。
在一种实现方式中,检测模块802检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识之前,还包括:
检测模块802,用于检测第二区块链节点设备是否属于第一区块链节点设备所属区块链网络中的区块链节点设备;
若第二区块链节点设备属于第一区块链节点设备所属的区块链网络,则触发检测模块802检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识的步骤。
在一种实现方式中,检测模块802还包括建立单元8021,生成模块803还包括生成单元8031、存储单元8032,其中:
接收模块801获取第二区块链节点设备的设备标识,包括:
生成单元8031,用于对第二区块链节点设备的IP地址进行哈希算法,得到二进制数值;并将二进制数值确定为第二区块链节点设备的设备标识。
在一种实现方式中,检测模块802还包括建立单元8021,生成模块803还包括生成单元8031、存储单元8032,其中:
接收模块801获取第二区块链节点设备的设备标识,包括:
接收模块801,用于接收所述第二区块链节点设备发送的识别码;并将第二区块链节点设备的识别码确定为第二区块链节点设备的设备标识。
在一种实现方式中,检测模块802还包括建立单元8021,生成模块803还包括生成单元8031、存储单元8032,其中:
建立单元8021建立与第二区块链节点设备之间的通信通道之后,还包括:
生成模块803,用于生成第二通知消息,所述第二通知消息用于指示第一区块链节点设备成功建立与第二区块链节点设备之间的通信通道;
发送模块804,用于将第二通知消息发送给第二区块链节点设备,以使第二区块链节点设备获取第一区块链节点设备的设备标识,所述第二区块链节点设备将所述第一区块链节点设备的设备标识存储到所述第二区块链节点设备的第二预设设备标识库中;
发送模块804,用于将第二连接请求发送给第二区块链节点设备,以使第二区块链节点设备检测在第二预设设备标识库中是否存在第一区块链节点设备的设备标识;
接收模块801,用于接收第二区块链节点设备发送的第三通知消息,所述第三通知消息用于指示第二区块链节点设备拒绝响应第二连接请求,所述第三通知消息是第二区块链节点设备在检测到第二预设设备标识库中存在第一区块链节点设备的设备标识时生成的。
需要说明的是,图8对应的实施例中未提及的内容以及各个模块执行步骤的具体实现方式可参见图3~图5所示实施例以及前述内容,这里不作赘述。
在一种实现方式中,图8中的各个模块所实现的相关功能可以结合处理器与通信接口来实现。
参见图9,图9是本申请实施例提供的一种区块链节点设备的结构示意图,该区块链节点设备9包括处理器901、存储器902、通信接口903,所述处理器901、所述存储器902、所述通信接口903通过一条或多条通信总线连接。
处理器901被配置为支持区块链节点设备执行图3~图5所述方法中第一区块链节点设备相应的功能。该处理器901可以是中央处理器(Central Processing Unit,CPU),网络处理器(Network Processor,NP),硬件芯片或者其任意组合。
存储器902用于存储程序代码等。存储器902可以包括易失性存储器(volatilememory),例如随机存取存储器(Random Access Memory,RAM);存储器902也可以包括非易失性存储器(non-volatile memory),例如只读存储器(Read Only Memory,ROM),快闪存储器(flash memory),硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid State Drive,SSD);存储器902还可以包括上述种类的存储器的组合。
通信接口903用于接收和发送数据,例如,通信接口903用于接收第二区块链节点设备发送的第一连接请求;或者,通信接口903用于获取第二区块链节点设备的设备标识;或者,通信接口903用于将第一通知消息发送给第二区块链节点设备等。
在本申请实施例中,该节点设备9包括多个通信接口,其中,用于发送数据的通信接口和用于接收数据的通信接口可以不为同一个通信接口。
处理器901可以调用存储器902中存储的程序代码以执行以下操作:
通过通信接口903可以接收第二区块链节点设备发送的第一连接请求;
检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识,所述第一预设设备标识库中包括:与第一区块链节点设备之间建立通信通道的至少一个区块链节点设备的设备标识;
生成第一通知消息;并将第一通知消息发送给第二区块链节点设备,所述第一通知消息用于指示第一区块链节点设备拒绝响应第一连接请求。
在一种实现方式中,处理器901检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识之后,还包括:
若所述第一预设设备标识库中不存在所述第二区块链节点设备的设备标识,则处理器901,用于建立与所述第二区块链节点设备之间的通信通道;
通信接口903,用于获取第二区块链节点设备的设备标识;
处理器901,用于将第二区块链节点设备的设备标识存储至第一预设设备标识库中。
在一种实现方式中,处理器901检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识之前,还包括:
通信接口903,用于获取第二区块链节点设备的IP地址;
处理器901,用于检测在第一区块链节点设备的IP地址库中,是否存在第二区块链节点设备的IP地址;
若第一区块链节点设备的IP地址库中存在第二区块链节点设备的IP地址,则触发处理器901检测在第一预设设备标识库中是否存在所述第二区块链节点设备的设备标识的步骤。
在一种实现方式中,处理器901检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识之前,还包括:
处理器901,用于检测第二区块链节点设备是否属于第一区块链节点设备所属区块链网络中的区块链节点设备;
若第二区块链节点设备属于第一区块链节点设备所属的区块链网络,则触发处理器901检测在第一预设设备标识库中是否存在第二区块链节点设备的设备标识的步骤。
在一种实现方式中,通信接口903获取第二区块链节点设备的设备标识,包括:
处理器901,用于对第二区块链节点设备的IP地址进行哈希算法,得到二进制数值;
处理器901,用于将二进制数值确定为第二区块链节点设备的设备标识。
在一种实现方式中,通信接口903获取第二区块链节点设备的设备标识,包括:
通信接口903,用于接收所述第二区块链节点设备发送的识别码;
处理器901,用于将第二区块链节点设备的识别码确定为第二区块链节点设备的设备标识。
在一种实现方式中,处理器901建立与第二区块链节点设备之间的通信通道之后,还包括:
处理器901,用于生成第二通知消息,所述第二通知消息用于指示第一区块链节点设备成功建立与第二区块链节点设备之间的通信通道;
通信接口903,用于将第二通知消息发送给第二区块链节点设备,以使第二区块链节点设备获取第一区块链节点设备的设备标识,所述第二区块链节点设备将所述第一区块链节点设备的设备标识存储到所述第二区块链节点设备的第二预设设备标识库中;
通信接口903,用于将第二连接请求发送给第二区块链节点设备,以使第二区块链节点设备检测在第二预设设备标识库中是否存在第一区块链节点设备的设备标识;
通信接口903,用于接收第二区块链节点设备发送的第三通知消息,所述第三通知消息用于指示第二区块链节点设备拒绝响应第二连接请求,所述第三通知消息是第二区块链节点设备在检测到第二预设设备标识库中存在第一区块链节点设备的设备标识时生成的。
进一步地,处理器901还可以与通信接口903相配合,执行图3~图5所示方法实施例中第一区块链节点设备对应的操作,具体可参见方法实施例中的描述,在此不作赘述。
本申请实施例还提供一种计算机可读存储介质,可以用于存储图8~图9所示实施例中区块链节点设备所用的计算机软件指令,其包含用于执行上述实施例中为第一区块链节点设备所设计的程序。
上述计算机可读存储介质包括但不限于快闪存储器、硬盘、固态硬盘。
本申请实施例还提供一种计算机程序产品,该计算机程序产品被计算机设备运行时,可以执行上述图3~图5实施例中为第一区块链节点设备所设计的通信通道的控制方法。
在本申请实施例中还提供一种芯片,包括处理器和存储器,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,该计算机程序用于实现上述方法实施例中的方法。
本领域普通技术人员可以意识到,结合本申请中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用,使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程设备。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如,同轴电缆、光纤、数字用户线(DSL))或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (8)

1.一种通信连接的控制方法,其特征在于,所述方法应用于去中心化的区块链网络,所述区块链网络中包括第一区块链节点设备和第二区块链节点设备,所述第一区块链节点设备是所述区块链网络中的任一区块链节点设备,所述第二区块链节点设备是所述区块链网络中除所述第一区块链节点设备之外的任一区块链节点设备,所述方法包括:
所述第一区块链节点设备接收所述第二区块链节点设备发送的第一连接请求,所述第一连接请求包括所述第二区块链节点设备的设备标识;
所述第一区块链节点设备获取所述第二区块链节点设备的IP地址,并检测在所述第一区块链节点设备的IP地址库中是否存在所述第二区块链节点设备的IP地址;所述第一区块链节点设备的IP地址库中包括:区块链网络中具备与第一区块链节点设备之间建立通信通道的权限的区块链节点设备的IP地址;
若在所述第一区块链节点设备的IP地址库中存在所述第二区块链节点设备的IP地址,则所述第一区块链节点设备检测在第一预设设备标识库中是否存在所述第二区块链节点设备的设备标识,所述第一预设设备标识库中包括成功与所述第一区块链节点设备之间建立通信通道的至少一个区块链节点设备的设备标识;
若所述第一预设设备标识库中存在所述第二区块链节点设备的设备标识,则所述第一区块链节点设备生成第一通知消息,并将所述第一通知消息发送给所述第二区块链节点设备,所述第一通知消息用于指示所述第一区块链节点设备拒绝响应所述第一连接请求;
若所述第一预设设备标识库中不存在所述第二区块链节点设备的设备标识,则所述第一区块链节点设备建立与所述第二区块链节点设备之间的通信通道;
所述第一区块链节点设备获取所述第二区块链节点设备的设备标识;
所述第一区块链节点设备将所述第二区块链节点设备的设备标识存储至所述第一预设设备标识库中。
2.根据权利要求1所述的方法,其特征在于,所述第一区块链节点设备检测在第一预设设备标识库中是否存在所述第二区块链节点设备的设备标识之前,还包括:
所述第一区块链节点设备检测所述第二区块链节点设备是否属于所述第一区块链节点设备所属区块链网络中的区块链节点设备;
若所述第二区块链节点设备属于所述第一区块链节点设备所属的区块链网络,则触发所述第一区块链节点设备检测在第一预设设备标识库中是否存在所述第二区块链节点设备的设备标识的步骤。
3.根据权利要求1-2任一项所述的方法,其特征在于,所述第一区块链节点设备获取所述第二区块链节点设备的设备标识,包括:
所述第一区块链节点设备对所述第二区块链节点设备的IP地址进行哈希算法,得到二进制数值;
将所述二进制数值确定为所述第二区块链节点设备的设备标识。
4.根据权利要求1-2任一项所述的方法,其特征在于,所述第一区块链节点设备获取所述第二区块链节点设备的设备标识,包括:
所述第一区块链节点设备接收所述第二区块链节点设备发送的识别码;
所述第一区块链节点设备将所述第二区块链节点设备的识别码确定为所述第二区块链节点设备的设备标识。
5.根据权利要求1所述的方法,其特征在于,所述第一区块链节点设备建立与所述第二区块链节点设备之间的通信通道之后,还包括:
所述第一区块链节点设备生成第二通知消息,所述第二通知消息用于指示所述第一区块链节点设备成功建立与所述第二区块链节点设备之间的通信通道;
所述第一区块链节点设备将所述第二通知消息发送给所述第二区块链节点设备,以使所述第二区块链节点设备获取所述第一区块链节点设备的设备标识,所述第二区块链节点设备将所述第一区块链节点设备的设备标识存储到所述第二区块链节点设备的第二预设设备标识库中;
所述第一区块链节点设备将第二连接请求发送给所述第二区块链节点设备,以使所述第二区块链节点设备检测在所述第二预设设备标识库中是否存在所述第一区块链节点设备的设备标识;
所述第一区块链节点设备接收所述第二区块链节点设备发送的第三通知消息,所述第三通知消息用于指示所述第二区块链节点设备拒绝响应所述第二连接请求,所述第三通知消息是所述第二区块链节点设备在检测到所述第二预设设备标识库中存在所述第一区块链节点设备的设备标识时生成的。
6.一种区块链节点设备,其特征在于,包括用于执行如权利要求1~5任一项所述的方法的模块。
7.一种区块链节点设备,其特征在于,包括:
存储器,用于存储指令;
处理器,用于执行所述存储器中的指令,使得所述区块链节点设备执行如权利要求1~5中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1~5任一项所述的方法。
CN201911125853.7A 2019-11-15 2019-11-15 一种通信连接的控制方法及相关设备 Active CN110839034B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911125853.7A CN110839034B (zh) 2019-11-15 2019-11-15 一种通信连接的控制方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911125853.7A CN110839034B (zh) 2019-11-15 2019-11-15 一种通信连接的控制方法及相关设备

Publications (2)

Publication Number Publication Date
CN110839034A CN110839034A (zh) 2020-02-25
CN110839034B true CN110839034B (zh) 2022-05-13

Family

ID=69576680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911125853.7A Active CN110839034B (zh) 2019-11-15 2019-11-15 一种通信连接的控制方法及相关设备

Country Status (1)

Country Link
CN (1) CN110839034B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107534678A (zh) * 2015-05-12 2018-01-02 华为技术有限公司 建立vnfm与vim之间的连接的方法、装置及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102196506B (zh) * 2010-03-15 2013-12-04 华为技术有限公司 网络资源访问控制方法、系统及装置
CN104750545A (zh) * 2013-12-27 2015-07-01 乐视网信息技术(北京)股份有限公司 一种调度进程的方法及装置
US10075447B2 (en) * 2015-03-04 2018-09-11 Neone, Inc. Secure distributed device-to-device network
CN107911421B (zh) * 2017-10-30 2020-05-15 上海点融信息科技有限责任公司 用于配置区块链中跨网络通信的方法、设备和计算机存储介质
CN108183950B (zh) * 2017-12-28 2020-11-06 新华三技术有限公司 一种网络设备建立连接的方法及装置
CN110417789B (zh) * 2019-08-01 2021-12-03 深圳市网心科技有限公司 服务器连接方法、电子设备、系统及介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107534678A (zh) * 2015-05-12 2018-01-02 华为技术有限公司 建立vnfm与vim之间的连接的方法、装置及系统

Also Published As

Publication number Publication date
CN110839034A (zh) 2020-02-25

Similar Documents

Publication Publication Date Title
CN111010372A (zh) 区块链网络身份认证系统、数据处理方法及网关设备
CN108111999B (zh) 设备分享请求和控制方法及电子设备、存储介质
US20150237027A1 (en) Apparatus, method and system for context-aware security control in cloud environment
CN102739684A (zh) 一种基于虚拟IP地址的Portal认证方法及服务器
KR20170104180A (ko) 전자 장치 및 전자 장치 간의 인증 수행 방법
EP3185598B1 (en) Application registration method and apparatus
CN106713522A (zh) 一种无线保真Wi‑Fi连接方法及移动终端
JP2013175916A5 (zh)
CN110602108A (zh) 基于区块链网络的数据通信方法、装置、设备及存储介质
CN113162971B (zh) 区块链节点管理方法、装置、计算机以及可读存储介质
CN104349311A (zh) 一种用于机器类通信小数据传输的密钥建立方法和系统
CN110839034B (zh) 一种通信连接的控制方法及相关设备
CN109479214B (zh) 一种负载均衡的方法及相关装置
CN110888892B (zh) 一种区块同步方法、装置及存储介质
CN105451367A (zh) 一种无线网络连接方法、设备及系统
CN116055403A (zh) 报文数据的传输方法、装置和服务器
Alshareef et al. Robust cloud management of MANET checkpoint sessions
CN115333782A (zh) 数据发送方法、数据接收方法、存储介质及计算机设备
EP3346670A1 (en) Method for protecting machine type communication device, network entity, and mtc device
CN112019603B (zh) 一种交易数据的处理方法及装置
CN108848156B (zh) 接入网关处理方法、装置及存储介质
JP2014155095A (ja) 通信制御装置、プログラム及び通信制御方法
Shukla et al. Security challenges and issues of internet of things: possible Solutions
EP3796598A1 (en) Node switching method, network node, network system, and storage medium
US20160242074A1 (en) Terminal device, terminal-device control method, and terminal-device control program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40021483

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant