CN113794789A - 一种区块链网络服务平台及地址分配方法、存储介质 - Google Patents
一种区块链网络服务平台及地址分配方法、存储介质 Download PDFInfo
- Publication number
- CN113794789A CN113794789A CN202111163493.7A CN202111163493A CN113794789A CN 113794789 A CN113794789 A CN 113794789A CN 202111163493 A CN202111163493 A CN 202111163493A CN 113794789 A CN113794789 A CN 113794789A
- Authority
- CN
- China
- Prior art keywords
- address
- request
- pool
- addresses
- client
- 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
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 238000011084 recovery Methods 0.000 claims abstract description 31
- 238000012545 processing Methods 0.000 claims description 9
- 238000004064 recycling Methods 0.000 claims description 5
- 238000013500 data storage Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 18
- 238000007726 management method Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000009826 distribution Methods 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 6
- 238000004220 aggregation Methods 0.000 description 4
- 230000002776 aggregation Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 239000004744 fabric Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5061—Pools of addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Abstract
本申请实施例公开了一种区块链网络服务平台及地址分配方法、存储介质,包括:在接收到客户端传输的地址请求的情况下,从地址请求中获取请求数量客户端对应的客户端标识;根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址,以向客户端分配请求地址;地址池包括至少一个地址;回收池包括历史客户端对应的至少一个历史请求地址。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种区块链网络服务平台及地址分配方法、存储介质。
背景技术
网际互连协议(Internet Protocol,IP)地址作为计算机网络中最重要的标识资源,IP地址的合理规划和分配亦是数据中心网络管理的核心部分。
现有技术中,客户端提交地址分配请求后,网络管理员登录网络信息管理系统,并查询对应数据中心IP地址的分配情况,网络管理员为客户端确定出合适的可分配的IP地址,并将该IP地址发送给客户端,以供客户端对应的用户使用。
随着当前公有云和私有云基础设施的快速发展,对于IP地址等网络资源的需求逐步增多,利用网络管理员数据中心IP地址的分配情况来分配IP地址方式,降低了地址分配时的效率。
发明内容
为解决上述技术问题,本申请实施例期望提供一种区块链网络服务平台及地址分配方法、存储介质,能够提高地址分配时的效率。
本申请的技术方案是这样实现的:
本申请实施例提供一种区块链网络服务平台的地址分配方法,所述方法包括:
在接收到客户端传输的地址请求的情况下,从所述地址请求中获取请求数量所述客户端对应的客户端标识;
根据历史客户端标识列表和所述客户端标识,在区块链的地址池和/或所述区块链的回收池中获取满足所述请求数量的请求地址,以向所述客户端分配所述请求地址;所述地址池包括至少一个地址;所述回收池包括历史客户端对应的至少一个历史请求地址。
本申请实施例提供了一种区块链网络服务平台,所述区块链网络服务平台包括:
获取单元,用于在接收到客户端传输的地址请求的情况下,从所述地址请求中获取请求数量所述客户端对应的客户端标识;根据历史客户端标识列表和所述客户端标识,在区块链的地址池和/或所述区块链的回收池中获取满足所述请求数量的请求地址;所述地址池包括至少一个地址;所述回收池包括历史客户端对应的至少一个历史请求地址;
分配单元,用于向所述客户端分配所述请求地址。
本申请实施例提供了一种区块链网络服务平台,所述区块链网络服务平台包括:
存储器、处理器和通信总线,所述存储器通过所述通信总线与所述处理器进行通信,所述存储器存储所述处理器可执行的区块链网络服务平台的地址分配的程序,当所述区块链网络服务平台的地址分配的程序被执行时,通过所述处理器执行上述所述的区块链网络服务平台的地址分配方法。
本申请实施例提供了一种存储介质,其上存储有计算机程序,应用于区块链网络服务平台,其特征在于,该计算机程序被处理器执行时实现上述所述的区块链网络服务平台的地址分配方法。
本申请实施例提供了一种区块链网络服务平台及地址分配方法、存储介质,区块链网络服务平台的地址分配方法包括:在接收到客户端传输的地址请求的情况下,从地址请求中获取请求数量客户端对应的客户端标识;根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址,以向客户端分配请求地址;地址池包括至少一个地址;回收池包括历史客户端对应的至少一个历史请求地址。采用上述方法实现方案,区块链网络服务平台在接收到客户端传输的地址请求的情况下,并从地址请求中获取到请求数量和客户端标识之后,区块链网络服务平台就可以根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址,不需要人工再执行地址分配的过程,在地址请求对应的请求地址的数量大时,也可以利用区块链网络服务平台快速为客户端分配地址,提高了地址分配时的效率。
附图说明
图1为本申请实施例提供的一种现有技术中的IP地址分配框图;
图2为本申请实施例提供的一种地址分配方法流程图;
图3为本申请实施例提供的一种示例性的用户状态转换框图;
图4为本申请实施例提供的一种示例性的区块链网络服务平台的模块示意框图;
图5为本申请实施例提供的一种示例性的地址池初始化框图;
图6为本申请实施例提供的一种示例性的地址分配逻辑示意图;
图7为本申请实施例提供的一种示例性的按块分配顺序示意图;
图8为本申请实施例提供的一种示例性的回收池的地址分配流程图;
图9为本申请实施例提供的一种示例性的富文本查询方式流程图;
图10为本申请实施例提供的一种示例性的地址分配原理示意图;
图11为本申请实施例提供的一种示例性的地址分配方法流程图;
图12为本申请实施例提供的一种区块链网络服务平台的结构示意图一;
图13为本申请实施例提供的一种区块链网络服务平台的结构示意图二。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
IP地址作为计算机网络中最重要的标识资源,其合理规划和分配亦是数据中心网络管理的重要步骤。现有技术中的IP地址分配大致流程如图1所示:首先,用户根据业务需要提交IP地址获取需求,该IP地址获取请求中包括应用部署数据中心、获取数量、租期(IP地址获取时间长度)等具体需求;然后,管理员登录网络信息管理系统,在网络信息管理系统的关系型数据库中查询对应数据中心IP地址的分配情况,根据用户具体需求确定出最合适的可分配IP地址,管理员在网络信息管理系统中录入相关用户信息以及为该用户分配的IP地址信息(管理员人工分配);最后,用户确认需求并在支付该IP地址的使用费用后,用户就可以使用该IP地址。
随着当前公有云和大型企业机构中私有云基础设施的快速发展,对于IP地址等网络资源的需求逐步增多,传统的人工分配IP地址方式逐渐显现出低效、繁琐等弊端。进一步的,传统的网络管理系统一般采用中心化的关系型数据库,存在中心化数据篡改风险,而随着企业业务范围的扩大,清晰地对基础设施资源的使用情况进行透明计费有助于企业对业务成本准确掌握。
针对上述现有技术中存在的问题,可以采用实施例一中的方法进行解决。
实施例一
本申请实施例提供了一种区块链网络服务平台的地址分配方法图2为本申请实施例提供的一种区块链网络服务平台的地址分配方法流程图,如图2所示,区块链网络服务平台的地址分配方法可以包括:
S101、在接收到客户端传输的地址请求的情况下,从地址请求中获取请求数量客户端对应的客户端标识。
本申请实施例提供的一种区块链网络服务平台的地址分配方法适用于利用区块链网络服务平台在接收到客户端传输的地址请求的情况下,为该客户端分配请求地址的场景下。
在本申请实施例中,客户端可以为地址请求方(即用户)所对应的客户端;其中,客户端的数量可以为一个,客户端的数量也可以为两个,客户端的数量还可以为多个,具体的客户端的数量可以根据实际情况进行解决,本申请实施例对此不作限定。
在本申请实施例中,客户端与用户一一对应,一个客户端对应一个用户。
在本申请实施例中,客户端与地址请求一一对应,一个客户端对应一个地址请求。
在本申请实施例中,地址请求可以为IP地址请求;地址请求也可以为媒体存取控制位址(Media Access Control Address,MAC)地址请求;地址请求还可以为其他的地址的请求;具体的地址请求可以根据实际情况进行确定,本申请实施例对此不作限定。
需要说明的是,请求数量可以为一个;请求数量也可以为两个;请求数量还可以多个;具体的请求数量可以根据实际情况进行确定,本申请实施例对此不作限定。
在本申请实施例中,地址请求中包含请求数量和客户端标识。
在本申请实施例中,客户端标识可以为客户端的身份标识号(Identitydocument,ID),客户端标识也可以为客户端处的用户名;客户端标识也可以为其他的表示用户或者客户端身份的信息;具体的可以根据实际情况进行确定,本申请实施例对此不作限定。
在本申请实施例中,区块链网络服务平台包括显示屏;区块链网络服务平台可以通过显示屏来接收客户端传输的地址请求;区块链网络服务平台包括信息传输端口;区块链网络服务平台也可以通过信息传输端口接收客户端传输过来的地址请求;区块链网络服务平台也可以通过其他方式来接收客户端传输的地址请求;具体的,区块链网络服务平台接收客户端传输的地址请求的方式可以根据实际情况进行确定,本申请实施例对此不作限定。
在本申请实施例中,区块链网络服务平台在接收到客户端传输的地址请求的情况下,从地址请求中确定请求数量之前,区块链网络服务平台在接收到客户端传输的注册信息的情况下,区块链网络服务平台就可以从注册信息中获取到客户端信息,客户端信息包括用户名、用户ID、用户余额、用户定制化信息等,在区块链网络服务平台接收到客户端信息的情况下,区块链网络服务平台的管理员就先根据用户信息对客户端进行身份核验;此时区块链网络服务平台就将该客户端的状态设置为待审核状态;在区块链网络服务平台接收到对该客户端身份核验成功信息情况下,区块链网络服务平台就将该客户端的状态由待审核状态修改为有效状态。区块链网络服务平台得到客户端信息的情况下,区块链网络服务平台就可以按照客户端信息结构表来整理客户端信息,具体的客户端信息结构表包括字段、值类型和说明三类信息,如表1所示:
表1客户端信息结构表
字段 | 值类型 | 说明 |
userId | String | 用户ID |
userName | String | 用户名 |
userState | {“WAIT_CHECK”,“VALID”,“INVALID”} | 用户状态 |
userBalance | uint | 用户余额 |
userInfo | json | 用户定制化信息 |
OwnIPs | list | 持有IP列表 |
需要说明的是,用户定制化的信息包括用户联系方式,用户居住地址等。
需要说明的是,持有IP列表可以为在客户端请求到请求地址的情况下,该与该客户端对应的请求地址,以及该客户端的状态信息等。
在本申请实施例中,表1中的用户ID的字段为userId,用户ID的值类型为String;用户名的字段为userName,用户名的值类型为String;用户状态的字段为userState,用户状态的值类型包括“WAIT_CHECK”,“VALID”,“INVALID”;用户余额的字段为userBalance,用户余额的值类型为uint;用户定制化信息的字段为userInfo,用户定制化信息的值类型为json;持有IP列表的字段为OwnIPs,持有IP列表的值类型为list。
需要说明的是,管理员就先根据用户信息对客户端进行身份核验,可以为管理员核验该客户端是否有不良行为或者是客户端的权限是否过期。在管理员确定出客户端是有不良行为或者是客户端的权限过期、且区块链网络服务平台接收到客户端有不良行为或者是客户端的权限过期信息的情况下,区块链网络服务平台就将客户端的状态设置为无效状态,此时用户将失去请求地址的使用权限。
示例性的,客户端状态转换图如图3所示:新用户注册后,在区块链网络服务平台接收到客户端信息的情况下,区块链网络服务平台就将该客户端的状态设置为待审核状态(WAIT_CHECK);在区块链网络服务平台接收到对该客户端身份核验成功信息(身份核验通过)情况下,区块链网络服务平台就将该客户端的状态由待审核状态修改为有效状态(VALID)。在区块链网络服务平台确定客户端有不良行为或者是客户端的权限过期信息,也或者是接收到对该客户端身份核验失败信息(身份核验未通过)的情况下,区块链网络服务平台就将客户端的状态由有效状态修改为无效状态(INVALID),在区块链网络服务平台确定出客户端的又有新的权限的情况下,区块链网络服务平台就将客户端的状态由无效状态切换为有效状态。
S102、根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址,以向客户端分配请求地址;地址池包括至少一个地址;回收池包括历史客户端对应的至少一个历史请求地址。
在本申请实施例中,区块链网络服务平台在接收到客户端传输的地址请求的情况下,从地址请求中获取请求数量客户端对应的客户端标识之后,区块链网络服务平台就可以根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址,以向客户端分配请求地址。
需要说明的是,地址池包括至少一个地址;回收池包括历史客户端对应的至少一个历史请求地址。
在本申请实施例中,区块链网络服务平台还包括地址管理模块,具体的,区块链网络服务平台根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址的过程,包括:区块链网络服务平台利用地址管理模块根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址。
示例性的,如图4所示:区块链网络服务平台包括客户端管理模块和地址管理模块,其中,客户端管理模块用于管理客户端信息注册与授权;地址管理模块用于执行地址池初始化,地址分配和地址回收至回收池的过程。
在本申请实施例中,本申请是将原本中心化的IPv4地址人工分配方式,调整为在联盟链链码中自动实现IPv4地址的分配过程。Fabric链码作为一种智能合约,具有全局强制执行的特点,Fabric网络中的所有节点在部署同一个链码时,会执行相同的初始化代码,并通过从其他节点同步区块来获取一段时间内的交易,更新本地数据库状态,保持网络内节点区块信息的一致性。
在本申请实施例中,历史客户端标识列表为区块链网络服务平台中预设的存储有历史客户端标识的列表。
在本申请实施例中,地址池可以为在区块链初始化时,定义的一个地址块。回收池用于回收历史客户端对应的至少一个历史请求地址。
在本申请实施例中,区块链网络服务平台中每一个区块链链码在初始化时,是通过调用Init()方法来初始化区块链数据,随后通过Invoke()方法调用链码中配置的方法。因此IP地址池初始化步骤应在Init()方法实现,逻辑流程图如图5所示:首先创建地址池空对象;然后设置地址池信息(将在空对象处添加地址池信息,得到地址池对象);之后再将地址池对象的结构转化为联盟链CouchDB对应的数据存储结构(Json序列化地址池对象);将转化结构后的地址池对象写入联盟链CouchDB,并在写入完成的情况下,返回写入成功的提示信息。
在本申请实施例中,区块链初始化时,首先会按照设置的地址池信息结构来初始化地址池,地址池信息结构包括字段、值类型和说明三类信息,如表2所示:
表2地址池信息结构表
需要说明的是,地址池前缀和地址池前缀长度可以确定出一个地址块,地址池ID可以为该地址块的ID信息;已分配地址数量为当前地址池中已经分配的地址的数量,用于后续IP地址分配时使用;已分配用户数量为已分配的地址对应的用户的数量。
在本申请实施例中,表2中的地址池ID的字段为poolId,地址池ID的值类型为String;地址池前缀的字段为Poolfix,地址池前缀的值类型为String;地址池前缀长度的字段为poolfixLen,地址池前缀长度的值类型为uint;已分配地址数量的字段为IPCount,已分配地址数量的值类型为uint;已分配用户数量的字段为userCount,已分配用户数量的值类型为uint。
需要说明的是,地址池信息结构均在区块链初始化时进行配置,即可由管理员来控制地址池的资源空间,比如地址池的前缀、地址池前缀长度等。
在本申请实施例中,地址池中的地址对应的地址信息结构包括字段、值类型和说明三类信息,如表3所示:
表3地址信息结构表
字段 | 值类型 | 说明 |
ipPrefix | string | 地址 |
PrefixLen | int | 地址前缀长度 |
owner | string | 持有用户名 |
expDate | string | 过期时间 |
isAvaliable | bool | 是否可用 |
Info | json | 定制化信息 |
需要说明的是,持有用户名为该地址对应的使用方(客户端)的名称;过期时间为该客户端截止使用该地址的时间;是否可用可以为该地址的可用性;定制化信息可以为对该地址的备注信息,如该地址用于哪个项目,该地址的用途等。
需要说明的是,用户持有地址(请求地址)过期后,该地址将不再使用,会被放入回收池,当该用户再次申请IP地址时,将先查找回收池中是否有曾经使用过的地址,若有则直接将该IP地址重新激活使用,否则再从地址池中为该用户分配新地址。
在本申请实施例中,表3中的地址的字段为ipPrefix,地址的值类型为String;地址前缀长度的字段为PrefixLen,地址前缀长度的值类型为int;持有用户名的字段为owner,持有用户名的值类型为string;过期时间的字段为expDate,过期时间的值类型为string;是否可用的字段为isAvaliable,是否可用的值类型为bool;定制化信息的字段为Info,定制化信息的值类型为json。
在本申请实施例中,回收池对应的回收池信息结构包括字段、值类型和说明三类信息,如表4所示:
表4回收池信息结构表
字段 | 值类型 | 说明 |
recyclePoolId | string | 回收池ID |
userCount | uint | 回收池中用户数量 |
ipCount | uint | 回收池中地址数 |
recycleIpItems | map[username]array<ip> | 用户名与回收地址列表映射 |
需要说明的是,recycleIpItems用于保存已过期地址与原用户名之间的对应关系,能够通过用户名查找到已过期的地址列表。
在本申请实施例中,表4中的回收池ID的字段为recyclePoolId,回收池ID类型为String;回收池中用户数量的字段为userCount,回收池中用户数量的值类型为uint;回收池中地址数的字段为ipCount,回收池中地址数类型为uint;用户名与回收地址列表映射的字段为recycleIpItems,用户名与回收地址列表映射的值类型为map[username]array<ip>。
在本申请实施例中,区块链网络服务平台根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址的过程,包括:在历史客户端标识列表中不存在客户端标识的情况下,在地址池中获取满足请求数量的请求地址;在历史客户端标识列表中存在客户端标识的情况下,在地址池和/或回收池中获取满足请求数量的请求地址。
在本申请实施例中,历史客户端标识列表可以为用户名与回收地址列表映射。在历史客户端标识列表中不存在客户端标识的情况下,即该客户端为新客户端。在历史客户端标识列表中存在客户端标识的情况下,即该客户端为历史客户端,即老客户端。
示例性的,如图6所示:客户端已请求成功的请求地址过期后不能再使用,会被放入回收池,在该客户端再次请求地址的情况下,区块链网络服务平台先确定该客户端是否为新客户端,区块链网络服务平台在确定出该客户端为新客户端的情况下,区块链网络服务平台就从地址池中为该客户端分配对应的请求地址;区块链网络服务平台在确定出该客户端为老客户端的情况下,区块链网络服务平台就从回收池中查找该客户端使用过的历史地址,将该历史地址作为请求地址分配给该客户端,若回收池中的历史地址的数量不满足请求数量的情况下,区块链网络服务平台再从地址池中获取其他的地址,以使其他地址和历史地址的数量之和满足请求数量;区块链网络服务平台为该客户端分配请求地址之后,在该请求地址的使用期限达到过期时间的情况下,该请求地址即为过期地址,区块链网络服务平台就利用回收池回收该过期地址。区块链网络服务平台通过地址池和/或回收池为该客户端分配请求地址之后,区块链网络服务平台还就记录地址池和/或回收池对应的地址分配信息,即更新至少一个历史请求地址。
可以理解的是,区块链网络服务平台通过设置回收池,在历史客户端标识列表中存在客户端标识的情况下,区块链网络服务平台通过在地址池和/或回收池中获取满足请求数量的请求地址,以对客户端使用过的存放于回收池中的地址重复利用,提高了回收池中的地址的利用率。
在本申请实施例中,区块链网络服务平台在地址池中获取满足请求数量的请求地址的过程,包括:在请求数量为一个数量的情况下,区块链网络服务平台利用按块分配方式在地址池中获取满足请求数量的请求地址;在请求数量为至少两个数量的情况下,区块链网络服务平台利用按块分配方式在地址池中获取一个第一请求地址;区块链网络服务平台利用连续分配方式在地址池中获取第二请求地址;区块链网络服务平台将第一请求地址和第二请求地址作为请求地址。
需要说明的是,第二请求地址的数量为至少两个数量中除第一请求地址的数量外的剩余数量。
在本申请实施例中,按块分配算法通过计算空闲地址池中距离最远的两个地址之间的中点,根据已分配地址数目奇偶性为新用户分配地址。该按块分配算法在空闲地址池中起始地址到结束地址的范围中循环执行,然后确定出一个可用的地址,最终使得剩余的空闲地址块被分为两部分,该中点之后的地址用于新的分配,该中点之前的地址用于后续分配。
可以理解的是,区块链网络服务平台通过设置不同的地址分配方式,即对于至少两个请求地址的情况下,利用按块分配方式在地址池中获取一个第一请求地址,利用连续分配方式在地址池中获取第二请求地址(剩余数量的请求地址),使得区块链网络服务平台通过最大化请求地址之间的距离来最大化每个地址块的增长潜力,为客户端提供的相邻地址会有助于运维人员的部署维护以及路由聚合,提升扩展性。
在本申请实施例中,区块链网络服务平台利用按块分配方式在地址池中获取一个第一请求地址的过程,包括:区块链网络服务平台确定上一次在地址池中获取的上一个请求地址的第一地址位置;区块链网络服务平台确定距离第一地址位置最远的已分配地址对应的第二地址位置;区块链网络服务平台确定第一地址位置与第二地址位置之间中间位置处的未被分配地址,并将未被分配地址作为第一请求地址。
在本申请实施例中,区块链网络服务平台利用按块分配方式在地址池中获取一个第一请求地址的过程,也可以为:区块链网络服务平台在确定出第一次从地址池中获取一个第一请求地址的情况下,区块链网络服务平台从地址池的第一个地址位置处获取第一请求地址;区块链网络服务平台在确定出第二次从地址池中获取一个第一请求地址的情况下,区块链网络服务平台获取处于地址池的中间位置处的中间地址,并将该中间地址作为第一请求地址;区块链网络服务平台在确定出非第一次或者第二次从地址池中获取一个第一请求地址的情况下,区块链网络服务平台确定相邻两个已分配地址对应的地址段;区块链网络服务平台从地址段中筛选出地址数量最多的第一地址段;区块链网络服务平台获取处于第一地址段的中间位置处的中间位置地址,并将中间位置地址作为第一请求地址。
示例性的,如图7所示地址池中有8个地址,标号分别为1、2、3、4、5、6、7、8,区块链网络服务平台利用按块分配方式在地址池中请求地址的过程,可以为区块链网络服务平台第一次执行按块分配方式在地址池中请求地址时,获取1标号位置处的地址;区块链网络服务平台第二次执行按块分配方式在地址池中请求地址时,获取2标号位置处的地址;区块链网络服务平台第3次执行按块分配方式在地址池中请求地址时,获取3标号位置处的地址;区块链网络服务平台第四次执行按块分配方式在地址池中请求地址时,获取4标号位置处的地址;区块链网络服务平台第五次执行按块分配方式在地址池中请求地址时,获取5标号位置处的地址;区块链网络服务平台第六次执行按块分配方式在地址池中请求地址时,获取6标号位置处的地址;区块链网络服务平台第七次执行按块分配方式在地址池中请求地址时,获取7标号位置处的地址;区块链网络服务平台第八次执行按块分配方式在地址池中请求地址时,获取8标号位置处的地址。
可以理解的是,区块链网络服务平台利用按块分配的方式,将第一地址位置与第二地址位置之间中间位置处的未被分配地址确定为第一请求地址,使得在区块链网络服务平台可以在地址池中间隔部分地址进行地址分配,以在地址请求中的请求数量为多个的情况下,区块链网络服务平台可以分配出地址标号连续的请求地址,供客户端可以根据相邻的地址标号的地址进行地址部署、地址维护以及路由聚合,从而提高了为客户端分配请求地址时的准确性。
在本申请实施例中,区块链网络服务平台利用连续分配方式在地址池中获取第二请求地址的过程,包括:区块链网络服务平台确定第一请求地址的地址标号;区块链网络服务平台以地址标号为起始标号,按照预设地址标号间隔,依次在地址池中获取预设数量的地址;区块链网络服务平台将预设数量的地址作为第二请求地址。
需要说明的是,预设数量为第二请求地址的数量。
在本申请实施例中,预设地址标号间隔可以为区块链网络服务平台中配置的标号间隔;预设地址标号间隔也可以为在区块链网络服务平台以地址标号为起始标号按照预设地址标号间隔依次在地址池中获取预设数量的地址之前,区块链网络服务平台接收到的标号间隔;预设地址标号间隔也可以为区块链网络服务平台以他的方式获取到的标号间隔;具体的区块链网络服务平台获取预设地址标号间隔的方式可以根据实际情况进行确定,本申请实施例对此不作限定。
在本申请实施例中,预设地址标号间隔可以为以1为间隔;预设地址标号间隔也可以为以2为间隔;预设地址标号间隔可以为以其他的数字为间隔;具体的预设地址标号间隔可以根据实际情况进行确定,本申请实施例对此不作限定。
在本申请实施例中,第一请求地址的地址标号可以为该地址的地址信息,示例性的,第一请求地址为10.0.0.1,则第一请求地址的地址标号也为10.0.0.1。
示例性的,若第一请求地址的地址标号为10.0.0.1,预设地址标号间隔可以为以1,预设数量为3,则以地址标号为起始标号,按照预设地址标号间隔,依次在地址池中获取到的预设数量的地址包括:10.0.0.2,10.0.0.3,10.0.0.4。
可以理解的是,区块链网络服务平台确定第一请求地址的地址标号之后,通过以地址标号为起始标号,按照预设地址标号间隔,依次在地址池中获取预设数量的地址,来获得与第一请求地址的地址标号相邻的地址,以供客户端可以根据相邻的地址标号的地址进行地址部署、地址维护以及路由聚合,从而提高了为客户端分配请求地址时的准确性。
在本申请实施例中,区块链网络服务平台在地址池和/或回收池中获取满足请求数量的请求地址的过程,包括:区块链网络服务平台在回收池中客户端对应的历史地址的数量大于或者等于请求数量的情况下,从历史地址中获取请求数量的请求地址;区块链网络服务平台在历史地址的数量小于请求数量的情况下,在地址池中获取第一数量的地址池请求地址;区块链网络服务平台将历史地址和地址池请求地址作为请求地址。
需要说明的是,第一数量为请求数量中除历史地址的数量外的数量。历史地址为至少一个历史请求地址中的部分地址。客户端为历史客户端中的部分客户端。
示例性的,区块链网络服务平台首先判断新老客户端来确定是否在回收池中获取请求地址,若是老用户则先在回收池中是否存在该客户端对应的历史地址,若是新客户端则执行地址池中地址的分配方式来获取请求地址。回收池的地址分配方法的流程示意图如图8所示:
S81、在历史客户端标识列表中存在客户端标识的情况下,区块链网络服务平台确定回收池中客户端对应的历史地址的数量。
S82、历史地址的数量大于或者等于请求数量的情况下,区块链网络服务平台从历史地址中获取请求数量的请求地址。
S83、在历史地址的数量小于请求数量的情况下,区块链网络服务平台获取历史地址,并在地址池中获取第一数量的地址池请求地址。
在本申请实施例中,区块链网络服务平台为客户端分配请求地址之后,区块链网络服务平台就将根据请求地址和客户端得到的地址请求关系添加至请求关系表,并存储。
可以理解的是,区块链网络服务平台通过从回收池中获取请求地址,以将客户端使用过的存放于回收池中的请求地址进行重复利用,提高了请求地址的利用率。
在本申请实施例中,区块链网络服务平台在地址池中获取第一数量的地址池请求地址的过程,包括:区块链网络服务平台在第一数量为一个数量的情况下,利用按块分配方式在地址池中获取满足第一数量的地址池请求地址;区块链网络服务平台在第一数量为至少两个数量的情况下,利用按块分配方式在地址池中获取一个第一地址池请求地址;区块链网络服务平台利用连续分配方式在地址池中获取第二地址池请求地址;区块链网络服务平台将第一地址池请求地址和第二地址池请求地址作为地址池请求地址。
需要说明的是,第二地址池请求地址的数量为至少两个数量中除第一地址池请求地址的数量外的剩余数量。
在本申请实施例中,区块链网络服务平台利用按块分配方式在地址池中获取一个第一地址池请求地址的方式,与区块链网络服务平台利用按块分配方式在地址池中获取一个第一请求地址的方式相同。
在本申请实施例中,区块链网络服务平台利用连续分配方式在地址池中获取第二地址池请求地址的方式,与区块链网络服务平台利用连续分配方式在地址池中获取第二请求地址的方式相同。
可以理解的是,区块链网络服务平台利用按块分配方式或者按照按块分配方式和连续分配方式在地址池中获取请求地址,使得区块链网络服务平台通过最大化请求地址之间的距离来最大化每个地址块的增长潜力,为客户端提供的相邻地址会有助于运维人员的部署维护以及路由聚合,提升扩展性。
在本申请实施例中,区块链网络服务平台向客户端分配请求地址之后,区块链网络服务平台还会确定请求地址对应的请求状态;在请求状态为失效状态的情况下,区块链网络服务平台回收请求地址,并将请求地址添加至回收池。
可以理解的是,区块链网络服务平台通过确定请求地址对应的请求状态,以在请求状态为失效状态的情况下,区块链网络服务平台可以将请求地址添加至回收池,对请求地址进行回收处理,提高了请求地址的利用率。
在本申请实施例中,区块链网络服务平台将请求地址添加至回收池之后,区块链网络服务平台还会利用请求地址更新回收池中的至少一个历史请求地址。
在本申请实施例中,区块链网络服务平台利用请求地址更新回收池中的至少一个历史请求地址的方式,可以为:区块链网络服务平台确定客户端标识与请求地址之间的地址请求关系;区块链网络服务平台将地址请求关系添加至请求关系表,以在接收到客户端传输的下一次地址请求的情况下,根据请求关系表,在回收池中获取下一次请求地址。
在本申请实施例中,老客户端将执行连续分配算法,即将为该老客户端分配该老客户端历史分配得到的历史地址的下一个地址。对于老客户端一次性申请多个请求地址的场景需求,将根据连续分配方式得到邻居地址列表。随着区块链网络服务平台分配请求地址的数量达到一定数量,分配的请求地址可能存在重叠的现象,已被分配,故可以对每个请求地址进行可用性校验,即在每次循环中验证该请求地址是否存在isAvailable字段且是否为True,为True则确定该地址为可用地址,加入地址列表。
可以理解的是,区块链网络服务平台利用请求地址更新回收池中的至少一个历史请求地址,以对请求地址进行回收处理,在该客户端下一次次获取请求地址的情况下,直接在至少一个历史请求地址中来获取下一次的请求地址,提高了请求地址的利用率。
在本申请实施例中,区块链网络服务平台确定请求地址对应的请求状态的过程,包括:区块链网络服务平台每隔预设时间段,利用预设富文本查询方式确定请求地址对应的请求状态。
需要说明的是,预设时间段可以为一天,预设时间段也可以为一周,预设是时间段也可以为12个小时;预设时间段还可以为其他的时间长度,具体的预设时间段可以根据实际情况进行确定,本申请实施例对此不作限定。
在本申请实施例中,地址通过过期时间(expireDate)和是否可用(isAvalible)字段来判断该地址的可用性,当一个地址过期,其isAvalible字段就自动配置为False,并放入回收池中。实现每个地址状态的变更需通过遍历地址集合来实现,Fabric的读取功能在区块链网络服务平台中有着重要作用,支持三种查询方式:单个Key查询、基于Key的范围查询和基于富文本查询。
示例性的,对于不同查询需求(如查询效率、查询范围等方面)可配置不同的查询方式。本申请通过富文本查询方式来编辑参数queryString正则匹配出请求地址记录,调用交互API(stub.GetQueryResult(queryString))能够返回结果迭代器,能够在节约内存的条件下实现对请求地址集合的状态更新,一种示例性的富文本查询方式流程图如图9所示:
S91、区块链网络服务平台获取请求地址对应的请求时间。
需要说明的是,区块链网络服务平台可以每隔预设时间段,利用编辑参数正则匹配出请求地址的请求时间。
S92、在请求时间到达的情况下,区块链网络服务平台确定请求地址的请求状态为失效状态。
需要说明的是,区块链网络服务平台在请求地址的请求状态为失效状态的情况下,区块链网络服务平台将请求地址的字段设置为False。
S93、区块链网络服务平台将该请求地址添加至回收池中。
需要说明的是,区块链网络服务平台将该请求地址添加至回收池之后,区块链网络服务平台就利用请求地址更新回收池中的至少一个历史请求地址。
可以理解的是,区块链网络服务平台每隔预设时间段,就利用预设富文本查询方式确定一次请求地址对应的请求状态,使得区块链网络服务平台可以利用预设富文本查询方式快速确定出请求地址对应的请求状态。
在本申请实施例中,区块链网络服务平台每隔预设时间段,利用预设富文本查询方式确定请求地址对应的请求状态的过程,包括:区块链网络服务平台每隔预设时间段,利用编辑参数正则匹配出请求地址的请求时间;在请求时间达到的情况下,区块链网络服务平台确定请求地址的请求状态为失效状态。
需要说明的是,编辑参数可以为queryString参数。
可以理解的是,区块链网络服务平台每隔预设时间段,利用编辑参数正则匹配出请求地址的请求时间;使得在请求时间达到的情况下,区块链网络服务平台就确定请求地址的请求状态为失效状态,使得区块链网络服务平台在节约内存的条件下可以实现对所有请求地址的请求状态进行更新,降低了区块链网络服务平台对所有请求地址的请求状态进行更新时的内存使用率。
在本申请实施例中,本申请将基于Fabric将地址分配逻辑和功能写入区块链链码,该区块链链码将被部署在Docker容器中可插拔运行,同时还需要使用Nodejs和API/SDK开发的后端程序App以调用链码和底层CouchDB交互接口实现功能。示例性的,如图10所示:客户端向包含CA节点和多个peer节点的区块链中的某一个Peer节点提出地址请求的情况下,该节点中的区块链链码将按照区块链网络服务平台的地址分配方法,根据客户端的需求为该客户端分配请求地址,并将请求地址的分配信息和用户信息存储至底层CouchDB。
在本申请实施例中,当地址池和回收池初始化完成,已获得管理员审核通过的客户端可通过接口传输地址请求,客户端可以一次性请求多个请求地址。地址分配过程主要包括地址池分配和回收池分配这两各部分。具体的,如图11所示:
S111、在接收到客户端传输的地址请求的情况下,区块链网络服务平台从地址请求中获取请求数量客户端对应的客户端标识。
S112、在历史客户端标识列表中不存在客户端标识、且请求数量为一个数量的情况下,区块链网络服务平台利用按块分配方式在地址池中获取满足请求数量的请求地址。
S113、在历史客户端标识列表中不存在客户端标识、且请求数量为至少两个数量的情况下,区块链网络服务平台利用按块分配方式在地址池中获取一个第一请求地址。
S114、区块链网络服务平台利用连续分配方式在地址池中获取第二请求地址;区块链网络服务平台将第一请求地址和第二请求地址作为请求地址。
需要说明的是,第二请求地址的数量为至少两个数量中除第一请求地址的数量外的剩余数量。
S115、在历史客户端标识列表中存在客户端标识、且回收池中客户端对应的历史地址的数量大于或者等于请求数量的情况下,区块链网络服务平台从历史地址中获取请求数量的请求地址。
S116、在历史客户端标识列表中存在客户端标识、历史地址的数量小于请求数量、且第一数量为一个数量的情况下,区块链网络服务平台利用按块分配方式在地址池中获取满足第一数量的地址池请求地址。
S117、在历史客户端标识列表中存在客户端标识、历史地址的数量小于请求数量、且第一数量为至少两个数量的情况下,区块链网络服务平台利用按块分配方式在地址池中获取一个第一地址池请求地址。
S118、区块链网络服务平台利用连续分配方式在地址池中获取第二地址池请求地址。
需要说明的是,第二地址池请求地址的数量为至少两个数量中除第一地址池请求地址的数量外的剩余数量。
S119、区块链网络服务平台将第一地址池请求地址和第二地址池请求地址作为地址池请求地址;并将历史地址和地址池请求地址作为请求地址。
在本申请实施例中,区块链网络服务平台得到请求地址之后,就向客户端分配请求地址。需要说明的是,区块链网络服务平台为客户端分配请求地址之后,区块链网络服务平台就将根据请求地址和客户端得到的地址请求关系添加至请求关系表,并存储。
可以理解的是,区块链网络服务平台在接收到客户端传输的地址请求的情况下,并从地址请求中获取到请求数量和客户端标识之后,区块链网络服务平台就可以根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址,不需要人工再执行地址分配的过程,在地址请求对应的请求地址的数量大时,也可以利用区块链网络服务平台快速为客户端分配地址,提高了地址分配时的效率。
实施例二
基于实施例一同一发明构思,本申请实施例提供了一种区块链网络服务平台1,对应于一种区块链网络服务平台的地址分配方法;图12为本申请实施例提供的一种区块链网络服务平台的组成结构示意图一,该区块链网络服务平台1可以包括:
获取单元11,用于在接收到客户端传输的地址请求的情况下,从所述地址请求中获取请求数量所述客户端对应的客户端标识;根据历史客户端标识列表和客户端标识,在区块链的地址池和/或所述区块链的回收池中获取满足所述请求数量的请求地址;所述地址池包括至少一个地址;所述回收池包括历史客户端对应的至少一个历史请求地址;
分配单元12,用于向所述客户端分配所述请求地址。
在本申请的一些实施例中,所述获取单元11,用于在历史客户端标识列表中不存在所述客户端标识的情况下,在所述地址池中获取满足所述请求数量的请求地址;在所述历史客户端标识列表中存在所述客户端标识的情况下,在所述地址池和/或所述回收池中获取满足所述请求数量的请求地址。
在本申请的一些实施例中,所述获取单元11,用于在所述请求数量为一个数量的情况下,利用按块分配方式在所述地址池中获取满足所述请求数量的请求地址;在所述请求数量为至少两个数量的情况下,利用按块分配方式在所述地址池中获取一个第一请求地址;利用连续分配方式在所述地址池中获取第二请求地址;所述第二请求地址的数量为至少两个数量中除第一请求地址的数量外的剩余数量;将所述第一请求地址和所述第二请求地址作为所述请求地址。
在本申请的一些实施例中,所述区块链网络服务平台还包括确定单元;
所述确定单元,用于确定上一次在所述地址池中获取的上一个请求地址的第一地址位置;确定距离所述第一地址位置最远的已分配地址对应的第二地址位置;确定所述第一地址位置与所述第二地址位置之间中间位置处的未被分配地址,并将所述未被分配地址作为所述第一请求地址。
在本申请的一些实施例中,所述确定单元,用于确定所述第一请求地址的地址标号;
所述获取单元11,用于以所述地址标号为起始标号,按照预设地址标号间隔,依次在所述地址池中获取预设数量的地址;所述预设数量为所述第二请求地址的数量;将所述预设数量的地址作为所述第二请求地址。
在本申请的一些实施例中,所述获取单元11,用于在所述回收池中所述客户端对应的历史地址的数量大于或者等于所述请求数量的情况下,从所述历史地址中获取所述请求数量的所述请求地址;在所述历史地址的数量小于所述请求数量的情况下,在所述地址池中获取第一数量的地址池请求地址;所述第一数量为所述请求数量中除所述历史地址的数量外的数量;将所述历史地址和所述地址池请求地址作为所述请求地址。
在本申请的一些实施例中,所述获取单元11,用于在所述第一数量为一个数量的情况下,利用按块分配方式在所述地址池中获取满足所述第一数量的地址池请求地址;在所述第一数量为至少两个数量的情况下,利用按块分配方式在所述地址池中获取一个第一地址池请求地址;利用连续分配方式在所述地址池中获取第二地址池请求地址;所述第二地址池请求地址的数量为至少两个数量中除第一地址池请求地址的数量外的剩余数量;将所述第一地址池请求地址和所述第二地址池请求地址作为所述地址池请求地址。
在本申请的一些实施例中,所述区块链网络服务平台还包括添加单元;
所述确定单元,用于确定所述请求地址对应的请求状态;
所述添加单元,用于在所述请求状态为失效状态的情况下,将所述请求地址添加至所述回收池。
在本申请的一些实施例中,所述区块链网络服务平台还包括更新单元;
所述更新单元,用于利用所述请求地址更新所述回收池中的至少一个历史请求地址。
在本申请的一些实施例中,所述装置还包括匹配单元;
所述匹配单元,用于每隔预设时间段,利用编辑参数正则匹配出所述请求地址的请求时间;
所述确定单元,用于在所述请求时间达到的情况下,确定所述请求地址的请求状态为失效状态。
基于实施例一的同一发明构思下,本申请实施例提供一种区块链网络服务平台,如图13所示,图13为本申请实施例提出的一种区块链网络服务平台的组成结构示意图二,本申请实施例的区块链网络服务平台1包括:至少一个处理器13、至少一个存储器14及至少一个通信总线15。在具体的实施例的过程中,上述至少一个处理器13可以为特定用途集成电路(ASIC,Application Sp ecific Integrated Circuit)、数字信号处理器(DSP,Digital Signal Processor)、数字信号处理终端(DSPD,Digital Signal ProcessingDevice)、可编程逻辑终端(PLD,Programmable Logic Device)、现场可编程门阵列(FPGA,Field P rogrammable Gate Array)、CPU、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。
在本申请的实施例中,上述至少一个通信总线15用于实现至少一个处理器13和至少一个存储器14之间的连接通信;至少一个存储器14,用于存储可执行指令;
至少一个处理器13,用于执行所述至少一个存储器14中存储的可执行指令,实现如实施例一所述的地址分配方法。
本申请实施例提供一种存储介质,上述存储介质存储有一个或者多个程序,上述一个或者多个程序可被一个或者多个处理器执行,应用于区块链网络服务平台中,该程序被至少一个处理器执行时实现如实施例一所述的地址分配方法。
可以理解的是,区块链网络服务平台在接收到客户端传输的地址请求的情况下,并从地址请求中获取到请求数量和客户端标识之后,区块链网络服务平台就可以根据历史客户端标识列表和客户端标识,在区块链的地址池和/或区块链的回收池中获取满足请求数量的请求地址,不需要人工再执行地址分配的过程,在地址请求对应的请求地址的数量大时,也可以利用区块链网络服务平台快速为客户端分配地址,提高了地址分配时的效率。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。
Claims (13)
1.一种区块链网络服务平台的地址分配方法,其特征在于,所述方法包括:
在接收到客户端传输的地址请求的情况下,从所述地址请求中获取请求数量所述客户端对应的客户端标识;
根据历史客户端标识列表和所述客户端标识,在区块链的地址池和/或所述区块链的回收池中获取满足所述请求数量的请求地址,以向所述客户端分配所述请求地址;所述地址池包括至少一个地址;所述回收池包括历史客户端对应的至少一个历史请求地址。
2.根据权利要求1所述的方法,其特征在于,所述根据历史客户端标识列表和所述客户端标识,在区块链的地址池和/或所述区块链的回收池中获取满足所述请求数量的请求地址,包括:
在历史客户端标识列表中不存在所述客户端标识的情况下,在所述地址池中获取满足所述请求数量的请求地址;
在所述历史客户端标识列表中存在所述客户端标识的情况下,在所述地址池和/或所述回收池中获取满足所述请求数量的请求地址。
3.根据权利要求2所述的方法,其特征在于,所述在所述地址池中获取满足所述请求数量的请求地址,包括:
在所述请求数量为一个数量的情况下,利用按块分配方式在所述地址池中获取满足所述请求数量的请求地址;
在所述请求数量为至少两个数量的情况下,利用按块分配方式在所述地址池中获取一个第一请求地址;
利用连续分配方式在所述地址池中获取第二请求地址;所述第二请求地址的数量为至少两个数量中除第一请求地址的数量外的剩余数量;
将所述第一请求地址和所述第二请求地址作为所述请求地址。
4.根据权利要求3所述的方法,其特征在于,所述利用按块分配方式在所述地址池中获取一个第一请求地址,包括:
确定上一次在所述地址池中获取的上一个请求地址的第一地址位置;
确定距离所述第一地址位置最远的已分配地址对应的第二地址位置;
确定所述第一地址位置与所述第二地址位置之间中间位置处的未被分配地址,并将所述未被分配地址作为所述第一请求地址。
5.根据权利要求3所述的方法,其特征在于,所述利用连续分配方式在所述地址池中获取第二请求地址,包括:
确定所述第一请求地址的地址标号;
以所述地址标号为起始标号,按照预设地址标号间隔,依次在所述地址池中获取预设数量的地址;所述预设数量为所述第二请求地址的数量;
将所述预设数量的地址作为所述第二请求地址。
6.根据权利要求2所述的方法,其特征在于,所述在所述地址池和/或所述回收池中获取满足所述请求数量的请求地址,包括:
在所述回收池中所述客户端对应的历史地址的数量大于或者等于所述请求数量的情况下,从所述历史地址中获取所述请求数量的所述请求地址;
在所述历史地址的数量小于所述请求数量的情况下,在所述地址池中获取第一数量的地址池请求地址;所述第一数量为所述请求数量中除所述历史地址的数量外的数量;
将所述历史地址和所述地址池请求地址作为所述请求地址。
7.根据权利要求6所述的方法,其特征在于,所述在所述地址池中获取第一数量的地址池请求地址,包括:
在所述第一数量为一个数量的情况下,利用按块分配方式在所述地址池中获取满足所述第一数量的地址池请求地址;
在所述第一数量为至少两个数量的情况下,利用按块分配方式在所述地址池中获取一个第一地址池请求地址;
利用连续分配方式在所述地址池中获取第二地址池请求地址;所述第二地址池请求地址的数量为至少两个数量中除第一地址池请求地址的数量外的剩余数量;
将所述第一地址池请求地址和所述第二地址池请求地址作为所述地址池请求地址。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述向所述客户端分配所述请求地址之后,所述方法还包括:
确定所述请求地址对应的请求状态;
在所述请求状态为失效状态的情况下,将所述请求地址添加至所述回收池。
9.根据权利要求8所述的方法,其特征在于,所述将所述请求地址添加至所述回收池之后,所述方法还包括:
利用所述请求地址更新所述回收池中的至少一个历史请求地址。
10.根据权利要求8所述的方法,其特征在于,所述确定所述请求地址对应的请求状态,包括:
每隔预设时间段,利用编辑参数正则匹配出所述请求地址的请求时间;
在所述请求时间达到的情况下,确定所述请求地址的请求状态为失效状态。
11.一种区块链网络服务平台,其特征在于,所述区块链网络服务平台包括:
获取单元,用于在接收到客户端传输的地址请求的情况下,从所述地址请求中获取请求数量所述客户端对应的客户端标识;根据历史客户端标识列表和客户端标识,在区块链的地址池和/或所述区块链的回收池中获取满足所述请求数量的请求地址;所述地址池包括至少一个地址;所述回收池包括历史客户端对应的至少一个历史请求地址;
分配单元,用于向所述客户端分配所述请求地址。
12.一种区块链网络服务平台,其特征在于,所述区块链网络服务平台包括:
至少一个存储器,用于存储可执行指令;
至少一个处理器,用于执行所述至少一个存储器中存储的可执行指令,实现如权利要求1-10所述的区块链网络服务平台的数据存储方法。
13.一种存储介质,其特征在于,存储有可执行指令,当所述可执行指令被执行时,用于引起处理器执行权利要求1-10所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111163493.7A CN113794789A (zh) | 2021-09-30 | 2021-09-30 | 一种区块链网络服务平台及地址分配方法、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111163493.7A CN113794789A (zh) | 2021-09-30 | 2021-09-30 | 一种区块链网络服务平台及地址分配方法、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113794789A true CN113794789A (zh) | 2021-12-14 |
Family
ID=78877687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111163493.7A Pending CN113794789A (zh) | 2021-09-30 | 2021-09-30 | 一种区块链网络服务平台及地址分配方法、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113794789A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116723175A (zh) * | 2023-08-04 | 2023-09-08 | 天津华来科技股份有限公司 | 一种测试设备mac自动化申请方法、装置及存储介质 |
-
2021
- 2021-09-30 CN CN202111163493.7A patent/CN113794789A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116723175A (zh) * | 2023-08-04 | 2023-09-08 | 天津华来科技股份有限公司 | 一种测试设备mac自动化申请方法、装置及存储介质 |
CN116723175B (zh) * | 2023-08-04 | 2023-11-21 | 天津华来科技股份有限公司 | 一种测试设备mac自动化申请方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107911421B (zh) | 用于配置区块链中跨网络通信的方法、设备和计算机存储介质 | |
CN108549580A (zh) | 自动部署Kubernetes从节点的方法及终端设备 | |
EP3668009A1 (en) | Life cycle management method and device for network service | |
CN105577420A (zh) | 自动产生伺服器网络拓扑的方法与系统 | |
CN105049268A (zh) | 分布式计算资源分配系统和任务处理方法 | |
CN113515364B (zh) | 一种数据迁移的方法及装置、计算机设备和存储介质 | |
CN106936623A (zh) | 分布式缓存系统及缓存集群的管理方法 | |
US20180033075A1 (en) | Automatic recharge system and method, and server | |
CN111385370B (zh) | Id分配方法、装置、存储介质及id分配系统 | |
CN108924249A (zh) | 一种部署OpenStack平台的方法及装置 | |
EP3442201A1 (en) | Cloud platform construction method and cloud platform | |
CN114666333A (zh) | 一种基于多租户理论面向云计算资源调度问题的控制方法 | |
CN107277188B (zh) | 一种确定ip地址归属信息的方法、客户端、服务器及业务系统 | |
CN110213391A (zh) | 一种网络协议地址的配置方法及装置 | |
US20190004844A1 (en) | Cloud platform construction method and cloud platform | |
CN111464589A (zh) | 智能合约处理方法、计算机设备及存储介质 | |
CN111163186B (zh) | 一种id生成方法、装置、设备和存储介质 | |
CN113794789A (zh) | 一种区块链网络服务平台及地址分配方法、存储介质 | |
CN112532761A (zh) | 一种公网地址自动上报备案的管理方法和装置 | |
CN112565475B (zh) | 容器集群业务层添加新节点的ip地址分配方法 | |
CN108156194B (zh) | 一种表单数据处理方法 | |
CN115834600B (zh) | 一种多云纳管数据同步方法、装置、电子设备和存储介质 | |
CN116095007A (zh) | 负载调度方法、装置、计算机设备及存储介质 | |
CN110798358A (zh) | 分布式服务标识方法、装置、计算机可读介质及电子设备 | |
CN111683164B (zh) | 一种ip地址的配置方法及vpn服务系统 |
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 |