本发明涉及算力调度,特别涉及一种面向终端算力网络的中继转发节点选择方法与系统。
背景技术:
1、算力网络作为一类新兴技术研究课题出现,目的在于解决泛在算力和网络的协同调度问题。目前大部分研究方向及技术方向聚焦于承载网与边缘计算、云计算的协同与优化方面,面向宽带接入网的终端算力网络作为计算闲置率高、网络资源调配不均匀的典型应用场景,业界研究投入较少,缺乏相关的技术解决方案。尤其是在构建终端算力网络的网络连接层时,往往基于现有的p2p连接技术,但这类技术仅解决了网络连接的有无问题,在传输质量和性能上仍存在不足。
2、在终端算力网络的复杂场景中,算力网络规模大、分布广、结构复杂、终端设备差异大,并且由于在宽带接入网中,ipv4网络存在复杂的网络地址转换(nat)配置,ipv6网络存在状态防火墙的限制,因此通过nat穿透及防火墙穿透等技术实现这些节点的直接互通成为合理的解决方案。然而,实际上节点的网络环境十分复杂,上述技术并不能保障对等体间可以直接互访,因此仍需要中继服务器提供中继链路来实现对等体间的连接。
3、针对缺少静态公网ip地址、存在复杂防火墙及nat配置的终端设备,通过中继连接的方式对外提供算力服务或使用外部算力服务的场景,提出了一面向终端算力网络的中继转发节点选择方法与系统。
技术实现思路
1、本发明为了弥补现有技术的缺陷,提供了一种简单高效的面向终端算力网络的中继转发节点选择方法与系统。
2、本发明是通过如下技术方案实现的:
3、一种面向终端算力网络的中继转发节点选择方法,其特征在于:包括以下步骤:
4、步骤s1、获取已部署服务的网络资源需求信息;
5、首先获取服务提供节点上已部署服务的网络资源需求信息,包括但不限于最低带宽需求、最大时延需求与连接数需求,以供后续中继转发节点的筛选过程参考;
6、步骤s2、查找分布式哈希表dht检索中继转发节点列表,并进行初步筛选;
7、服务提供节点查找检索分布式哈希表dht,以获取可用的中继转发节点列表,并基于隧道协议类型及加密类型进行筛选,得到初步筛选后的中继转发节点列表;
8、所述步骤s2中,自定义周期定时器,以自定义周期向分布式哈希表dht更新中继转发节点可用的连接资源信息;
9、所述中继转发节点的可用连接资源信息包括但不限于可用带宽、可用连接数、支持的中继隧道协议和支持的加密方式;
10、根据服务提供节点支持的中继隧道协议与加密方式进行筛选,形成初步筛选后的中继转发节点列表。
11、步骤s3、基于可用带宽及连接数进行二次筛选;
12、服务提供节点基于初步筛选后的中继转发节点列表进行进一步筛选,过滤掉可用带宽及可用连接数不满足服务提供节点上已部署服务的需求的中继转发节点,形成二次筛选后的中继转发节点列表;
13、步骤s4、再次进行分布式哈希表dht检索,获取关联地址信息multiaddr;
14、服务提供节点基于二次筛选后的中继转发节点列表中的节点标识peer id,再次进行分布式哈希表dht检索,查找其对应的关联地址信息multiaddr;
15、步骤s5、执行连接测试,获取连接性能数据,过滤掉不能满足服务提供节点已部署服务需求的中继转发节点,形成三次筛选后的中继转发节点列表;
16、若连接测试形成的三次筛选后的中继转发节点列表不为空,则与其中至少一个中继转发节点建立中继连接,否则输出网络连接告警信息;
17、所述步骤s5中,在完成连接测试后,记录到各被测中继转发节点的时延、丢包及抖动信息,过滤掉不能满足服务提供节点已部署服务的最大时延需求的中继转发节点,形成三次筛选后的中继转发节点列表;
18、服务提供节点从三次筛选后的中继转发节点列表中,基于随机算法和/或ip归属地信息选取至少一个中继转发节点建立中继连接。
19、更优的,服务提供节点选取至少两个中继转发节点建立中继连接,以免发生单点故障导致服务提供节点无法被访问。
20、步骤s6、服务提供节点监测已建立中继连接的性能数据,判断中继连接是否满足服务提供节点已部署服务的网络资源需求:
21、若满足,则维持连接并持续进行监测;
22、若不满足,则跳转步骤s2,查找适用的中继转发节点;
23、所述步骤s6中,实时监控中继转发节点的所有中继连接,自定义周期定时器,以自定义周期监测已建立中继连接的性能数据;
24、已建立中继连接的性能数据包括但不限于到中继转发节点的时延、丢包及抖动信息及可用带宽信息;
25、当监测到部分中继连接质量劣化时,重新依据步骤s2~s5查找适用的中继转发节点,当监测到全部中继连接质量劣化时,则输出对应的网络连接告警信息。
26、步骤s7、中继转发节点在与服务提供节点建立中继连接后,为对应的服务提供节点预留最低带宽需求相等的可用带宽及连接数,并优先转发服务提供节点的上下行流量,以保障业务质量;
27、在中继转发节点完成可用带宽预留后,向分布式哈希表dht更新中继转发节点的可用连接资源信息,其中可用带宽及可用连接数均扣除已预留的资源量。
28、一种面向终端算力网络的中继转发节点选择系统,包括:
29、分布式哈希表dht维护模块,负责自定义周期定时器,以自定义周期向分布式哈希表dht更新中继转发节点可用的连接资源信息;所述中继转发节点的可用连接资源信息包括但不限于可用带宽、可用连接数、支持的中继隧道协议和支持的加密方式;
30、网络资源需求模块,负责获取服务提供节点上已部署服务的网络资源需求信息,包括但不限于最低带宽需求、最大时延需求与连接数需求,以供后续中继转发节点的筛选过程参考;
31、初步筛选模块,负责查找检索分布式哈希表dht,以获取可用的中继转发节点列表,并服务提供节点支持的中继隧道协议与加密方式进行筛选,得到初步筛选后的中继转发节点列表;
32、二次筛选模块,负责基于初步筛选后的中继转发节点列表进行进一步筛选,过滤掉可用带宽及可用连接数不满足服务提供节点上已部署服务的需求的中继转发节点,形成二次筛选后的中继转发节点列表;
33、再次检索模块,负责基于二次筛选后的中继转发节点列表中的节点标识peer id,再次进行分布式哈希表dht检索,查找其对应的关联地址信息multiaddr;
34、连接测试模块,负责执行连接测试,获取连接性能数据,过滤掉不能满足服务提供节点已部署服务需求的中继转发节点,形成三次筛选后的中继转发节点列表;
35、若连接测试形成的三次筛选后的中继转发节点列表不为空,则与其中至少一个中继转发节点建立中继连接,否则输出网络连接告警信息;
36、在完成连接测试后,所述连接测试模块记录到各被测中继转发节点的时延、丢包及抖动信息,过滤掉不能满足服务提供节点已部署服务的最大时延需求的中继转发节点,形成三次筛选后的中继转发节点列表;
37、服务提供节点从三次筛选后的中继转发节点列表中,基于随机算法和/或ip归属地信息选取至少一个中继转发节点建立中继连接。
38、更优的,服务提供节点选取至少两个中继转发节点建立中继连接,以免发生单点故障导致服务提供节点无法被访问。
39、中继连接监测模块,负责监测已建立中继连接的性能数据,判断中继连接是否满足服务提供节点已部署服务的网络资源需求:
40、若满足,则维持连接并持续进行监测;
41、若不满足,则触发初步筛选模块,重新查找适用的中继转发节点;
42、所述中继连接监测模块实时监控中继转发节点的所有中继连接,自定义周期定时器,以自定义周期监测已建立中继连接的性能数据;
43、已建立中继连接的性能数据包括但不限于到中继转发节点的时延、丢包及抖动信息及可用带宽信息;
44、当监测到部分中继连接质量劣化时,重新查找适用的中继转发节点,当监测到全部中继连接质量劣化时,则输出对应的网络连接告警信息。
45、连接资源管理模块,负责在中继转发节点在与服务提供节点建立中继连接后,为对应的服务提供节点预留最低带宽需求相等的可用带宽及连接数,并优先转发服务提供节点的上下行流量,以保障业务质量;
46、并在中继转发节点完成可用带宽预留后,向分布式哈希表dht更新中继转发节点的可用连接资源信息,其中可用带宽及可用连接数均扣除已预留的资源量。
47、一种可读存储介质,其特征在于:所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法。
48、本发明的有益效果是:该面向终端算力网络的中继转发节点选择方法与系统,能够及时更新提供中继服务的中继转发节点的连接资源信息,满足服务提供节点上已部署服务的网络资源需求,实现服务提供节点与服务消费节点的通信,并保障服务的连接质量。