一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于量子密钥分发网络的保护方法、装置和电子设备

2022-04-16 18:43:11 来源:中国专利 TAG:


1.本技术的实施例涉及网络通信技术领域,尤其涉及一种基于量子密钥分发网络的保护方法、装置和电子设备。


背景技术:

2.在现有的量子密钥分发网络的保护方案中,往往仅考虑基于可信中继的量子密钥分发网络的保护与恢复,对于可信中继与非可信中继混合的量子密钥分发网络缺乏有效的保护方案。
3.基于此,需要一种能够实现为可信中继与非可信中继混合的量子密钥分发网络提供保护的方案。


技术实现要素:

4.有鉴于此,本技术的目的在于提出一种基于量子密钥分发网络的保护方法、装置和电子设备。
5.基于上述目的,本技术提供了基于量子密钥分发网络的保护方法,所述量子密钥分发网络包括:可信节点和非可信节点;
6.所述方法应用于所述量子密钥分发网络中的可信节点,包括:
7.所述可信节点记录其他可信节点和非可信节点的物理位置关系,得到所述量子密钥分发网络的物理地图;
8.响应于确定任意两个所述可信节点间仅通过一个所述非可信节点形成物理连接,在所述物理地图中虚拟化去除该非可信节点,并以虚拟链路直连连接该两个可信节点;
9.响应于确定任意两个所述非可信节点间形成物理直连链路,在所述物理地图中虚拟化断开该两个所述非可信节点之间的物理直连链路,得到虚拟拓扑地图;
10.并且还包括:
11.对收到的业务请求进行解析,确定所述业务请求在所述虚拟拓扑地图中的全部业务路径,并计算所述业务请求对每跳链路的密钥需求和所述业务路径中每跳链路的密钥资源;在所述业务路径中选择跳数最少且每跳所述链路的所述密钥资源均大于等于密钥需求的,作为目标工作路径,并在所述虚拟拓扑地图中,将不满足所述密钥需求的所述链路虚拟化断开;
12.在所述虚拟拓扑地图中,选择不含有虚拟化断开链路的所述业务路径作为候选保护路径,计算整条所述候选保护路径的密钥总需求,构建低于所述密钥总需求的保护阈值;在所述保护阈值范围内,选择跳数最少且每跳所述链路的所述密钥资源均大于等于所述密钥需求的所述候选保护路径,作为目标保护路径;
13.响应于确定筛选出所述目标工作路径和目标保护路径,将当下所述业务路径的占用情况和所述密钥资源的占用情况在所述虚拟拓扑地图中进行更新。
14.基于同一发明构思,本技术还提供了一种基于量子密钥分发网络的保护装置,所
述量子密钥分发网络包括:可信节点和非可信节点;
15.所述装置应用于所述量子密钥分发网络中的可信节点,包括:拓扑模块、目标工作路径模块和目标保护路径模块和更新模块;
16.其中,所述拓扑模块,被配置为记录其他可信节点和非可信节点的物理位置关系,得到所述量子密钥分发网络的物理地图;响应于确定任意两个所述可信节点间仅通过一个所述非可信节点形成物理连接,在所述物理地图中虚拟化去除该非可信节点,并以虚拟链路直连连接该两个可信节点;响应于确定任意两个所述非可信节点间形成物理直连链路,在所述物理地图中虚拟化断开该两个所述非可信节点之间的物理直连链路,得到虚拟拓扑地图;
17.所述目标工作路径模块模块,被配置为对收到的业务请求进行解析,确定所述业务请求在所述虚拟拓扑地图中的全部业务路径,并计算所述业务请求对每跳链路的密钥需求和所述业务路径中每跳链路的密钥资源;在所述业务路径中选择跳数最少且每跳所述链路的所述密钥资源均大于等于密钥需求的,作为目标工作路径,并在所述虚拟拓扑地图中,将不满足所述密钥需求的所述链路虚拟化断开;
18.所述目标保护路径模块,被配置为在所述虚拟拓扑地图中,选择不含有虚拟化断开链路的所述业务路径作为候选保护路径,计算整条所述候选保护路径的密钥总需求,构建低于所述密钥总需求的保护阈值;在所述保护阈值范围内,选择跳数最少且每跳所述链路的所述密钥资源均大于等于所述密钥需求的所述候选保护路径,作为目标保护路径;
19.所述更新模块,被配置为响应于确定筛选出所述目标工作路径和目标保护路径,将当下所述业务路径的占用情况和所述密钥资源的占用情况在所述拓扑网络中进行更新。
20.基于同一发明构思,本技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一项所述的基于量子密钥分发网络的保护方法。
21.从上面所述可以看出,本技术提供的基于量子密钥分发网络的保护方法、装置和电子设备,基于网络拓扑抽象,对非可信节点抽象为虚拟链路,综合考虑了可信中继节点和非可信中继节点,来进行网络中目标工作路径和目标保护路径的选取,使得目标工作路径和目标保护路径均在可信中继节点与非可信中继节点混合的网络中,既满足业务请求的密钥需求,又符合所能提供的最大满载值,从而实现对量子密钥分发网络提供稳定可靠的保护。
附图说明
22.为了更清楚地说明本技术或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1a为本技术实施例的基于量子密钥分发网络的虚拟拓扑地图构建流程图;
24.图1b为本技术实施例的基于量子密钥分发网络的路径分配流程图;
25.图2为本技术实施例的基于量子密钥分发网络的保护装置的模块示意图;
26.图3为本技术实施例的基于量子密钥分发网络的架构示意图;
27.图4为本技术实施例的虚拟拓扑地图示意图;
28.图5为本技术实施例的目标工作路径分配的流程示意图;
29.图6为本技术实施例的目标保护路径分配的流程示意图;
30.图7为本技术实施例的电子设备结构示意图。
具体实施方式
31.为使本技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本技术进一步详细说明。
32.需要说明的是,除非另外定义,本技术的实施例使用的技术术语或者科学术语应当为本技术所属领域内具有一般技能的人士所理解的通常意义。本技术的实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。
33.如背景技术部分所述,相关的基于量子密钥分发网络的保护方法还难以满足实际通信的需要。
34.申请人在实现本技术的过程中发现,相关的基于量子密钥分发网络的保护方法存在的主要问题在于:相关的技术方案,主要集中考虑解决基于可信中继的量子密钥分发网络保护与恢复方案等问题,对于可信中继与非可信中继的混合中继场景下的量子密钥分发保护策略的问题并未考虑。
35.可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。
36.以下,通过具体的实施例,来详细说明本技术的技术方法。
37.参考图1a和图1b,本技术一个实施例的基于量子密钥分发网络的保护方法,包括以下步骤:
38.步骤s101、所述可信节点记录其他可信节点和非可信节点的物理位置关系,得到所述量子密钥分发网络的物理地图。
39.在本技术中,以图3所示的量子密钥分发网络的架构作为一个示例,如图3所示,qkd(量子密钥分发)网络中包括有可信中继节点也即本技术中的可信节点,以及,非可信中继节点也即本技术中的非可信节点。
40.其中,在密钥传输中,每个可信节点均具备作为源节点和宿节点的功能,也即路径中的起始节点和结束节点。
41.在本实施例中,首先对可信节点与非可信节点混合的网络进行网络拓扑抽象,需要令每个可信节点均对整个网络进行网络拓扑抽象,并各自保存网络拓扑抽象的结果,也即虚拟拓扑地图。
42.具体地,每个可信节点均遍历整个qkd网络,并对除该可信节点之外的其他可信节点和非可信节点进行区分,记录下其他所有可信节点和非可信节点的位置,以及互相之间的连接,并将此记录更新至该可信节点的路由表中,得到qkd网络的物理地图。
43.步骤s102、响应于确定任意两个所述可信节点间仅通过一个所述非可信节点形成物理连接,在所述物理地图中虚拟化去除该非可信节点,并以虚拟链路直连连接该两个可
信节点。
44.在本实施例中,基于得到的上述物理地图,可以进一步对其中的非可信节点做虚拟化处理,“虚拟化”在本实施例中也可称作“抽象化”。
45.具体地,对于任意两个可信节点,若中间仅通过一个非可信节点进行物理链路的连接,而不存在任何的可信节点,则在qkd网络的物理地图中,将该非可信节点虚拟化去除,并将两个可信节点以虚拟链路进行直连连接。
46.步骤s103、响应于确定任意两个所述非可信节点间形成物理直连链路,在所述物理地图中虚拟化断开该两个所述非可信节点之间的物理直连链路,得到虚拟拓扑地图。
47.在本实施例中,对于至少两个以物理链路直连连接的非可信节点,则在qkd网络的物理地图中,将其之间的物理直连链路虚拟化断开,并将完成上述网络拓扑抽象操作的物理地图作为虚拟拓扑地图。
48.以图3示出的qkd网络结构为例,执行步骤s101和步骤s102时,可以将图3中非可信节点7和非可信节点8之间的连接虚拟化断开,并抽象化去掉非可信节点7和非可信节点8;进一步地,将可信节点2与可信节点4进行虚拟化直连连接,将可信节点3与可信节点6进行虚拟化直连连接,得到如图4所示的虚拟拓扑地图,其中,虚拟化直连连接以虚线表示,实线则表示物理直连链路。
49.进一步地,基于步骤s101、步骤s102和步骤s103所得到的虚拟拓扑地图,需要确认该虚拟拓扑地图中的密钥资源信息。
50.具体的,密钥资源信息包括:节点之间链路的波长通道时隙数量,以及,每个时隙的密钥生成速率。
51.在图4的示例中,两个节点之间的直连链路具备的波长通道时隙数量为5个时隙,记为:m=5;密钥生成速率为每时隙1个密钥,记为:v
p
=1unit/s。
52.步骤s104、对收到的业务请求进行解析,确定所述业务请求在所述虚拟拓扑地图中的全部业务路径,并计算所述业务请求对每跳链路的密钥需求和所述业务路径中每跳链路的密钥资源;在所述业务路径中选择跳数最少且每跳所述链路的所述密钥资源均大于等于密钥需求的,作为目标工作路径,并在所述虚拟拓扑地图中,将不满足所述密钥需求的所述链路虚拟化断开。
53.在本技术的实施例中,以图5示出的目标工作路径分配的流程示意图来详细说明本步骤的过程。
54.具体地,步骤s104可以包括以下步骤:
55.步骤s501、网络拓扑抽象,此为上述步骤s101、步骤s102和步骤s103对物理网络所进行的网络拓扑抽象过程,并得到了相应的虚拟拓扑地图。
56.步骤s502、接收业务请求。
57.即接收到业务请求后,开始执行步骤s104,即下述s503-s507的过程。
58.步骤s503、解析所述业务请求,确定所述业务请求在所述虚拟拓扑地图中的全部业务路径,计算业务请求对于每跳链路的密钥需求和业务路径中每跳链路的密钥资源。
59.所述解析过程具体包括:接收到业务请求的可信节点对该业务请求进行解析,以得到关于该业务请求的业务属性。
60.其中,业务属性可以包括:该业务请求的源节点、宿节点、业务开始时间ts、业务持
续时间th、业务结束时间t
end
和所需要的单位时间密钥量vr。
61.进一步,可信节点利用源节点和宿节点在虚拟拓扑地图中确定可以执行该业务请求的全部业务路径,并对每条业务路径计算其具体跳数。
62.在本实施例中,每条业务路径的跳数定义为:在该业务路径中,所包含的可信节点的个数。
63.所述计算密钥需求的过程包括:利用如下算式计算每跳链路的密钥需求。
64.链路的密钥需求=vr×
th65.其中,同一业务请求在不同业务路径下执行时,该业务请求在该业务路径下的密钥总需求不同,上述计算出的密钥需求仅作为该业务请求在业务路径中的单个链路下执行时的密钥需求,并且在本实施例中每跳链路的密钥需求相同,进一步地,可以将一条路径中所有链路的密钥需求之和作为该条路径的密钥总需求。
66.所述计算密钥资源的过程包括:利用如下算式计算每跳链路的密钥资源,并作为链路中密钥资源的最大满载值。
67.链路的密钥资源=v
p
×m×
th68.其中,由于不同的业务路径之间跳数不同,所具备的链路个数不同,因此不同的业务路径所具备的总资源不同,上述计算出的密钥资源仅作为业务路径中的单个链路所具备的密钥资源,并且在本实施例中每跳链路的密钥资源相同。
69.进一步地,当该跳链路已被正在执行的业务请求占用时,在考虑其未被占用的密钥资源时,应从上述计算出的密钥资源的最大满载值中,减去该跳链路被占用的密钥资源量。
70.步骤s504、确定候选工作路径。
71.具体包括:根据业务路径的跳数,将全部业务路径按照跳数从少到多的顺序进行排列,并首先挑选跳数最少的业务路径作为候选工作路径。
72.其中,当出现多条跳数相等且最少的业务路径时,可以在跳数最少的业务路径中随机选取1个作为候选工作路径。
73.步骤s505、判断候选工作路径在业务持续时间内是否可以满足密钥需求。
74.具体包括:沿候选工作路径中的每跳链路对密钥需求和未被占用的密钥资源进行比对,以对候选工作路径做进一步判断。
75.在本实施例中,密钥资源和密钥需求的计算在顺序上仅是示例性的,可以按照上述方式先计算出每跳链路的密钥资源和密钥需求,并为候选工作路径调用上述的计算结果,也可以在此处计算密钥资源和密钥需求。
76.进一步地,当每跳链路未被占用的密钥资源均小于密钥需求,表明该条链路的可用密钥资源不可以满足执行该业务请求的密钥需求,该条候选工作路径不适宜作为目标工作路径,步骤s505的判断结果为否,选择执行步骤s506,并进一步地,再次执行步骤s504和步骤s505。
77.进一步地,当任一链路未被占用的密钥资源均大于等于密钥需求,表明该条候选工作路径的可用密钥资源可以满足执行该业务请求的密钥需求,则步骤s505的判断结果为是,选择执行步骤s507。
78.其中,步骤s506、抽象化断开链路,具体可以包括:将密钥资源不满足执行该业务
的该条链路在虚拟拓扑地图中抽象化断开,进而该条路径也被抽象化断开。
79.并进一步地,在剩余的其他业务路径中,按照预先排列的顺序选择下一业务路径,也即跳数最少的业务路径,作为新的候选工作路径。
80.步骤s507、将每跳链路的密钥资源均满足执行该业务请求的候选工作路径作为目标工作路径。
81.进一步地,将为该业务路径分配目标工作路径的资源。
82.在本实施例中,根据上述的目标工作路径分配方法,以图4示出的具体虚拟拓扑地图示例来说明步骤s104的执行过程。
83.当业务请求r1到达qkd时,通过解析r1,得到r1的业务属性:源节点:可信节点1;宿节点:可信节点6;业务开始时间ts:第20s;业务持续时间th:30s;业务结束时间t
end
:第50s;以及,所需要的单位时间密钥量vr:2unit/s。
84.基于源节点为可信节点1,以及,宿节点为可信节点6,得到6条业务路径:p
1-4-2-3-6
;p
1-2-4-5-6
;p
1-4-5-6
;p
1-4-2-6
;p
1-2-3-6
;和p
1-2-6

85.进一步地,对6条业务路径的排序为:p
1-2-6
》p
1-2-3-6
=p
1-4-2-6
=p
1-4-5-6
》p
1-2-4-5-6
=p
1-4-2-3-6
86.进一步地,计算业务路径p
1-2-6
执行r1时每跳链路对链路的密钥需求:
[0087]vr
×
th=2
×
30=0units
[0088]
计算业务路径p
1-2-6
中链路的密钥资源:
[0089]vp
×m×
th×
=1
×5×
30=150units
[0090]
并且,在本实施例中,业务路经p
1-2-6
未被占用任何密钥资源,其密钥资源大于密钥需求,因此将业务路径p
1-2-6
作为目标工作路径。
[0091]
步骤s105、在所述虚拟拓扑地图中,选择不含有虚拟化断开链路的所述业务路径作为候选保护路径,计算整条所述候选保护路径的密钥总需求,构建低于所述密钥总需求的保护阈值;在所述保护阈值范围内,选择跳数最少且每跳所述链路的所述密钥资源均大于等于所述密钥需求的所述候选保护路径,作为目标保护路径。
[0092]
在本技术的实施例中,以图6示出的目标保护路径分配的流程示意图来详细说明本步骤的过程。
[0093]
具体地,步骤s105可以包括以下步骤:
[0094]
步骤s601、完成目标工作路径分配,此为按照上述图5中所示的步骤得到目标工作路径的过程。
[0095]
步骤s602、除去目标工作路径和抽象化断开的候选工作路径。
[0096]
具体地,根据上述的步骤s601,在上述业务请求的业务路径中,去掉被选定的目标工作路径,并去掉被抽象化断开的候选工作路径,得到剩余的业务路径。
[0097]
步骤s603、确定候选保护路径并排序。
[0098]
具体地,将剩余的业务路径作为候选保护路径。
[0099]
进一步地,利用候选保护路径的跳数,将全部候选保护路径按照跳数从少到多的顺序进行排列。
[0100]
进一步地,当多条候选保护路径的跳数相等时,则在跳数相等的候选保护路径之间随机排列彼此的顺序。
[0101]
在本实施例中,按照图4的示例,除去被选定的目标工作路径p
1-2-6
,剩下的业务路径p
1-4-2-3-6
;p
1-2-4-5-6
;p
1-4-5-6
;p
1-4-2-6
和p
1-2-3-6
均作为候选保护路径。
[0102]
进一步地,该候选保护路径的顺序,依据跳数仍维持为:p
1-2-3-6
=p
1-4-2-6
=p
1-4-5-6
》p
1-2-4-5-6
=p
1-4-2-3-6

[0103]
步骤s604、判断密钥需求是否大于保护阈值。
[0104]
在本实施例中,由于不建议将保护路径以满载状态承载业务请求的密钥总需求,因此可以为每条候选保护路径构建执行该业务请求时的保护阈值,并利用保护阈值对执行候选保护路径是否适合执行业务请求进行判断。
[0105]
具体地,基于候选保护路径的跳数,根据如下的保护阈值公式,建立候选保护路径的保护阈值:
[0106]
保护阈值=v
p
×m×
th×
(业务路径跳数-1)
×y[0107]
其中,y为预先设定的阈值参数,并可以依据该阈值参数对保护阈值的范围进行调节。
[0108]
在本实施例中,保护阈值的计算在顺序上仅是示例性的,可以按照上述方式仅对所涉及的候选保护路径进行计算,也可以先计算出每条业务路径的保护阈值,并在此处为候选保护路径调用预先计算结果。
[0109]
在图4所示的示例中,阈值参数设置为0.8,因此,根据候选保护路径的排列顺序,在p
1-2-3-6
和p
1-4-2-6
中随机挑选一条候选保护路径,并计算其保护阈值。
[0110]
具体的,以p
1-2-3-6
为例,其保护阈值为:
[0111]vp
×m×
th×
(业务路径跳数-1)
×
y=1
×5×
30
×
(4-1)
×
0.8=360units
[0112]
进一步地,计算出该候选保护路径的密钥总需求:
[0113]vr
×
th×
(业务路径跳数-1)=2
×
30
×
3=180units
[0114]
进一步地,根据得到的保护阈值和密钥总需求,按照上述排序选择候选保护路径,并将其密钥总需求与保护阈值作比对,判断密钥总需求是否大于保护阈值。
[0115]
进一步地,当密钥总需求大于预设的保护阈值时,步骤s604的判断结果为是,说明该条候选保护路径执行该业务请求时,将以接近最大满载值的状态运行,因此判定该候选保护路径不可作为目标保护路径,则可以选择执行步骤s605。
[0116]
进一步地,当密钥总需求小于等于预设的保护阈值时,步骤s604的判断结果为否,说明该条候选保护路径执行该业务请求时,不会以接近最大满载值的状态运行,因此判定该候选保护路径可以作为目标保护路径,则可以选择执行步骤s606。
[0117]
其中,步骤s605、抽象化断开候选保护路径,具体包括:将该候选保护路径在虚拟拓扑地图中抽象化断开,以示在下面步骤中对该条路径不做考虑。
[0118]
进一步地,除去已被抽象化断开的候选保护路径,在剩余的候选保护路径中,按照预先排列的顺序选择下一个候选保护路径,也即跳数最少的再次进行步骤s604中保护阈值的判断。
[0119]
步骤s606、判断链路密钥资源是否满足密钥需求。
[0120]
具体地,为该候选保护路径中的链路调用上述计算出的密钥需求和未被占用的密钥资源,并对两者进行比对,以对密钥资源是否满足密钥需求进行判断。
[0121]
在本实施例中,密钥资源和密钥需求的计算在顺序上仅是示例性的,可以按照上
述方式先计算出每跳链路的密钥资源和密钥需求,再为候选保护路径调用上述的计算结果,也可以在此处计算密钥资源和密钥需求。
[0122]
进一步地,当每跳链路中未被占用的密钥资源均小于密钥需求,表示该条候选保护路径中链路的可用密钥资源不可以满足执行该业务请求的密钥需求,则步骤s606的判断结果为否,选择再次执行步骤s605,并再进一步执行步骤s604,具体地,再次除去已被抽象化断开的候选保护路径,并在剩余的候选保护路径中,选择顺序中下一个候选保护路径,也即跳数最少的候选保护路径,并再次进行密钥资源是否充足的判定。
[0123]
进一步地,当该条候选保护路径中每跳链路未被占用的密钥资源均大于等于密钥需求,表示每跳链路的密钥资源均可以满足执行该业务请求的密钥需求,则步骤s606的判断结果为是,选择执行步骤s607。
[0124]
步骤s607、将链路满足密钥需求,且密钥总需求不大于保护阈值的候选保护路径确定为目标保护路径,并将该保护路径作为保护资源分配给该业务请求。
[0125]
结合图4示出的虚拟拓扑地图的示例,在上述过程中所选择的p
1-2-3-6
符合上述判断,将其作为目标保护路径,并将p
1-2-3-6
分配给业务请求r1。
[0126]
在本技术中,上述对候选保护路径的保护阈值的判断,以及,对密钥资源是否充足的判断,在如图6所示的执行顺序上,仅仅是示例性的,也可以先对候选保护路径的密钥资源是否充足进行判断,后进行其保护阈值的判断;还可以将密钥资源的判断与保护阈值的判断同时进行。
[0127]
步骤s106、响应于确定筛选出所述目标工作路径和目标保护路径,将当下所述业务路径的占用情况和所述密钥资源的占用情况在所述虚拟拓扑地图中进行更新。
[0128]
在本技术的实施例中,基于上述目标工作路径的确定和目标保护路径的确定,将在该目标工作路径中所占用的密钥资源,和所占用的路径进行记录;同样地,将在该目标保护路径中所占用的密钥资源,和所占用的路径进行记录,并在所存储的虚拟拓扑地图中,对相应路径所具备的可用资源进行更新。
[0129]
在本技术的另一个实施例中,将上一实施例中的虚拟拓扑地图、密钥资源信息作为基础条件,业务请求r1仍在执行,且其他各项条件均不改变的情况下,由同一个qkd网络接收到第2个业务请求r2。
[0130]
令可信节点对r2进行解析,得到r2的业务属性,具体包括:
[0131]
源节点:可信节点2;宿节点:可信节点5;业务开始时间t
s2
:第30s;业务持续时间t
h2
:20s;业务结束时间t
end2
:第50s;以及,所需要的单位时间密钥量v
r2
:4unit/s。
[0132]
其中,基于源节点和宿节点,可以得到跳数从少到多的4条业务路径:p
2-6-5
;p
2-4-5
;p
2-1-4-5
;和p
2-3-6-5

[0133]
在跳数最少的p
2-6-5
和p
2-4-5
中,随机选择p
2-6-5
作为候选工作路径,依据上述对执行r1时相关路径信息的更新可知,p
2-6-5
中可信节点2与可信节点6之间的链路已经在执行r1,因此p
2-6-5
未被占用的密钥资源不可满足执行r2的密钥需求,并虚拟化断开该业务路径。
[0134]
进一步地,此时,p
2-4-5
在虚拟拓扑地图中的跳数最少,因此选择作为新的候选工作路径,并且p
2-4-5
的密钥资源满足执行r2所需的密钥资源,因此将p
2-4-5
作为目标工作路径。
[0135]
进一步地,在业务路径中,除去已虚拟化断开的p
2-6-5
,和已被作为目标工作路径的p
2-4-5
,将剩余的p
2-1-4-5
;和p
2-3-6-5
作为候选保护路径。
[0136]
进一步地,由于两者具有相同的跳数,因此具备相同的顺序,可以随机选择p
2-1-4-5
进行保护阈值和密钥资源的判定。
[0137]
具体地,计算p
2-1-4-5
执行r2的密钥需求为:240units,并基于与上述相同的阈值参数,计算p
2-1-4-5
的保护阈值为:240units。
[0138]
由于p
2-1-4-5
执行r2的密钥需求不大于保护阈值,则说p
2-1-4-5
将不会以接近最大满载值运行,因此可以对p
2-1-4-5
的密钥资源是否充足进行判定。
[0139]
进一步地,依据上述对执行r1时相关路径信息的更新可知,p
2-1-4-5
中的链路p
2-1
因执行业务请求r1,而被占据波长通道2个时隙,因此在此跳链路中未被占用的密钥资源不满足执行r2所需要的密钥需求。
[0140]
进一步地,将p
2-1-4-5
抽象化断开。
[0141]
进一步地,除去已虚拟化断开的p
2-6-5
和p
2-1-4-5
,以及已被作为目标工作路径的p
2-4-5
,剩余的候选保护路径为:p
2-3-6-5

[0142]
进一步地,计算p
2-3-6-5
执行r2的密钥需求为:240units,并基于与上述相同的阈值参数,计算p
2-3-6-5
的保护阈值为:240units。
[0143]
由于p
2-3-6-5
执行r2的密钥需求不大于保护阈值,则说p
2-3-6-5
将不会以接近最大满载值运行,因此可以对p
2-3-6-5
的密钥资源是否充足进行判定。
[0144]
进一步地,p
2-3-6-5
的密钥资源为:300units,大于执行r2的密钥需求,将p
2-3-6-5
作为目标保护路径,并将该保护资源在网络中进行分配。
[0145]
进一步地,将执行r2业务请求的目标工作路径,和目标保护路径在网络中记录,并更新相关的资源占用情况。
[0146]
可见,本技术的实施例的基于量子密钥分发网络的保护方法,基于网络拓扑抽象,对非可信节点抽象为虚拟链路,综合考虑了可信中继节点和非可信中继节点,来进行网络中目标工作路径和目标保护路径的选取,使得目标工作路径和目标保护路径均在可信中继节点与非可信中继节点混合的网络中,既满足业务请求的密钥需求,又符合所能提供的最大满载值,从而实现对量子密钥分发网络提供稳定可靠的保护。
[0147]
需要说明的是,本技术的实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本技术的实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
[0148]
需要说明的是,上述对本技术的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0149]
基于同一发明构思,与上述任意实施例方法相对应的,本技术的实施例还提供了一种基于量子密钥分发网络的保护装置。
[0150]
参考图2,所述基于量子密钥分发网络的保护装置,其中,所述量子密钥分发网络包括:可信节点和非可信节点。
[0151]
所述装置应用于所述量子密钥分发网络中的可信节点,具体包括:拓扑模块、目标
工作路径模块和目标保护路径模块和更新模块。
[0152]
其中,所述拓扑模块201,被配置为:记录其他可信节点和非可信节点的物理位置关系,得到所述量子密钥分发网络的物理地图;响应于确定任意两个所述可信节点间仅通过一个所述非可信节点形成物理连接,在所述物理地图中虚拟化去除该非可信节点,并以虚拟链路直连连接该两个可信节点;响应于确定任意两个所述非可信节点间形成物理直连链路,在所述物理地图中虚拟化断开该两个所述非可信节点之间的物理直连链路,得到虚拟拓扑地图;
[0153]
所述目标工作路径模块模块202,被配置为:对收到的业务请求进行解析,确定所述业务请求在所述虚拟拓扑地图中的全部业务路径,并计算所述业务请求的密钥需求和所述业务路径的密钥资源;在所述业务路径中选择密钥资源大于等于密钥需求且跳数最少的,作为目标工作路径,并将密钥资源小于密钥需求且跳数小于等于所述目标工作路径的,在所述虚拟拓扑地图中虚拟化断开;
[0154]
所述目标保护路径模块203,被配置为:将所述虚拟拓扑地图中未虚拟化断开的所述业务路径作为候选保护路径,基于所述候选保护路径的所述密钥资源,构建低于所述密钥资源的保护阈值;在所述保护阈值范围内,选择密钥资源大于等于密钥需求且跳数最少的所述候选保护路径,作为目标保护路径;
[0155]
所述更新模块204,被配置为:响应于确定筛选出所述目标工作路径和目标保护路径,将当下所述业务路径的占用情况和所述密钥资源的占用情况在所述拓扑网络中进行更新。
[0156]
作为一个可选的实施例,所述拓扑模块201,具体被配置为生成虚拟拓扑地图的相关模块,并设置于每个可信节点中,并由每个可信节点运行。
[0157]
在本技术中,以图3所示的量子密钥分发网络的架构作为一个示例,如图3所示,qkd(量子密钥分发)网络中包括有可信中继节点也即本技术中的可信节点,以及,非可信中继节点也即本技术中的非可信节点。
[0158]
其中,在密钥传输中,每个可信节点均具备作为源节点和宿节点的功能,也即路径中的起始节点和结束节点。
[0159]
在本实施例中,首先对可信节点与非可信节点混合的网络进行网络拓扑抽象,需要令每个可信节点均对整个网络进行网络拓扑抽象,并各自保存网络拓扑抽象的结果,也即虚拟拓扑地图。
[0160]
具体地,每个可信节点均遍历整个qkd网络,并对除该可信节点之外的其他可信节点和非可信节点进行区分,记录下其他所有可信节点和非可信节点的位置,以及互相之间的连接,并将此记录更新至该可信节点的路由表中,得到qkd网络的物理地图。
[0161]
在本实施例中,基于得到的上述物理地图,可以进一步对其中的非可信节点做虚拟化处理,“虚拟化”在本实施例中也可称作“抽象化”。
[0162]
具体地,对于任意两个可信节点,若中间仅通过一个非可信节点进行物理链路的连接,而不存在任何的可信节点,则在qkd网络的物理地图中,将该非可信节点虚拟化去除,并将两个可信节点以虚拟链路进行直连连接。
[0163]
在本实施例中,对于至少两个以物理链路直连连接的非可信节点,则在qkd网络的物理地图中,将其之间的物理直连链路虚拟化断开,并将完成上述网络拓扑抽象操作的物
理地图作为虚拟拓扑地图。
[0164]
以图3示出的qkd网络结构为例,可以将图3中非可信节点7和非可信节点8之间的连接虚拟化断开,并抽象化去掉非可信节点7和非可信节点8;进一步地,将可信节点2与可信节点4进行虚拟化直连连接,将可信节点3与可信节点6进行虚拟化直连连接,得到如图4所示的虚拟拓扑地图,其中,虚拟化直连连接以虚线表示,实线则表示物理直连链路。
[0165]
进一步地,基于所得到的虚拟拓扑地图,需要确认该虚拟拓扑地图中的密钥资源信息。
[0166]
具体的,密钥资源信息包括:节点之间链路的波长通道时隙数量,以及,每个时隙的密钥生成速率。
[0167]
在图4的示例中,两个节点之间的直连链路具备的波长通道时隙数量为5个时隙,记为:m=5;密钥生成速率为每时隙1个密钥,记为:v
p
=1unit/s。
[0168]
作为一个可选的实施例,所述目标工作路径模块202,具体被配置为执行业务请求的目标工作路径的相关模块,并设置于每个可信节点中,由该可信节点运行。
[0169]
在本技术的实施例中,以图5示出的目标工作路径分配的流程示意图来详细说明。
[0170]
具体地,接收到业务请求后,开始解析所述业务请求,确定所述业务请求在所述虚拟拓扑地图中的全部业务路径,计算业务请求对于每跳链路的密钥需求和业务路径中每跳链路的密钥资源。
[0171]
所述解析过程具体包括:接收到业务请求的可信节点对该业务请求进行解析,以得到关于该业务请求的业务属性。
[0172]
其中,业务属性可以包括:该业务请求的源节点、宿节点、业务开始时间ts、业务持续时间th、业务结束时间t
end
和所需要的单位时间密钥量vr。
[0173]
进一步,可信节点利用源节点和宿节点在虚拟拓扑地图中确定可以执行该业务请求的全部业务路径,并对每条业务路径计算其具体跳数。
[0174]
在本实施例中,每条业务路径的跳数定义为:在该业务路径中,所包含的可信节点的个数。
[0175]
所述计算密钥需求的过程包括:利用如下算式计算每跳链路的密钥需求。
[0176]
链路的密钥需求=vr×
th[0177]
其中,同一业务请求在不同业务路径下执行时,该业务请求在该业务路径下的密钥总需求不同,上述计算出的密钥需求仅作为该业务请求在业务路径中的单个链路下执行时的密钥需求,并且在本实施例中每跳链路的密钥需求相同,进一步地,可以将一条路径中所有链路的密钥需求之和作为该条路径的密钥总需求。
[0178]
所述计算密钥资源的过程包括:利用如下算式计算每跳链路的密钥资源,并作为链路中密钥资源的最大满载值。
[0179]
链路的密钥资源=v
p
×m×
th[0180]
其中,由于不同的业务路径之间跳数不同,所具备的链路个数不同,因此不同的业务路径所具备的总资源不同,上述计算出的密钥资源仅作为业务路径中的单个链路所具备的密钥资源,并且在本实施例中每跳链路的密钥资源相同。
[0181]
进一步地,当该跳链路已被正在执行的业务请求占用时,在考虑其未被占用的密钥资源时,应从上述计算出的密钥资源的最大满载值中,减去该跳链路被占用的密钥资源
量。
[0182]
进一步地,根据业务路径的跳数,将全部业务路径按照跳数从少到多的顺序进行排列,并首先挑选跳数最少的业务路径作为候选工作路径。
[0183]
其中,当出现多条跳数相等且最少的业务路径时,可以在跳数最少的业务路径中随机选取1个作为候选工作路径。
[0184]
进一步地,判断候选工作路径在业务持续时间内是否可以满足密钥需求。
[0185]
具体包括:沿候选工作路径中的每跳链路对密钥需求和未被占用的密钥资源进行比对,以对候选工作路径做进一步判断。
[0186]
进一步地,当每跳链路未被占用的密钥资源均小于密钥需求,表明该条链路的可用密钥资源不可以满足执行该业务请求的密钥需求,该条候选工作路径不适宜作为目标工作路径。
[0187]
进一步地,当任一链路未被占用的密钥资源均大于等于密钥需求,表明该条候选工作路径的可用密钥资源可以满足执行该业务请求的密钥需求。
[0188]
进一步地,将密钥资源不满足执行该业务的该条链路在虚拟拓扑地图中抽象化断开,进而该条路径也被抽象化断开。
[0189]
并进一步地,在剩余的其他业务路径中,按照预先排列的顺序选择下一业务路径,也即跳数最少的业务路径,作为新的候选工作路径。
[0190]
进一步地,将每跳链路的密钥资源均满足执行该业务请求的候选工作路径作为目标工作路径。
[0191]
进一步地,将为该业务路径分配目标工作路径的资源。
[0192]
在本实施例中,根据上述的目标工作路径分配方法,以图4示出的具体虚拟拓扑地图示例来说明。
[0193]
当业务请求r1到达qkd时,通过解析r1,得到r1的业务属性:源节点:可信节点1;宿节点:可信节点6;业务开始时间ts:第20s;业务持续时间th:30s;业务结束时间t
end
:第50s;以及,所需要的单位时间密钥量vr:2unit/s。
[0194]
基于源节点为可信节点1,以及,宿节点为可信节点6,得到6条业务路径:p
1-4-2-3-6
;p
1-2-4-5-6
;p
1-4-5-6
;p
1-4-2-6
;p
1-2-3-6
;和p
1-2-6

[0195]
进一步地,对6条业务路径的排序为:p
1-2-6
》p
1-2-3-6
=p
1-4-2-6
=p
1-4-5-6
》p
1-2-4-5-6
=p
1-4-2-3-6
[0196]
进一步地,计算业务路径p
1-2-6
执行r1时每跳链路对链路的密钥需求:
[0197]vr
×
th=2
×
30=0units
[0198]
计算业务路径p
1-2-6
中链路的密钥资源:
[0199]vp
×m×
th×
=1
×5×
30=150units
[0200]
并且,在本实施例中,业务路经p
1-2-6
未被占用任何密钥资源,其密钥资源大于密钥需求,因此将业务路径p
1-2-6
作为目标工作路径。
[0201]
作为一个可选的实施例,所述目标保护路径模块203,具体被配置为分配目标保护路径的相关模块,并设置于每个可信节点中,由该可信节点运行,该目标保护路径用于为业务请求提供另一条备选路径,以在该业务请求的目标工作路径出现故障或其他不可用的情况下使用。
[0202]
在本技术的实施例中,首先除去目标工作路径和抽象化断开的候选工作路径。
[0203]
具体地,在上述业务请求的业务路径中,去掉被选定的目标工作路径,并去掉被抽象化断开的候选工作路径,得到剩余的业务路径。
[0204]
进一步地,将剩余的业务路径作为候选保护路径。
[0205]
进一步地,利用候选保护路径的跳数,将全部候选保护路径按照跳数从少到多的顺序进行排列。
[0206]
进一步地,当多条候选保护路径的跳数相等时,则在跳数相等的候选保护路径之间随机排列彼此的顺序。
[0207]
进一步地,判断密钥需求是否大于保护阈值。
[0208]
在本实施例中,由于不建议将保护路径以满载状态承载业务请求的密钥总需求,因此可以为每条候选保护路径构建执行该业务请求时的保护阈值,并利用保护阈值对执行候选保护路径是否适合执行业务请求进行判断。
[0209]
具体地,基于候选保护路径的跳数,根据如下的保护阈值公式,建立候选保护路径的保护阈值:
[0210]
保护阈值=v
p
×m×
th×
(业务路径跳数-1)
×y[0211]
其中,y为预先设定的阈值参数,并可以依据该阈值参数对保护阈值的范围进行调节。
[0212]
在本实施例中,保护阈值的计算在顺序上仅是示例性的,可以按照上述方式仅对所涉及的候选保护路径进行计算,也可以先计算出每条业务路径的保护阈值,并在此处为候选保护路径调用预先计算结果。
[0213]
在图4所示的示例中,阈值参数设置为0.8,因此,根据候选保护路径的排列顺序,在p
1-2-3-6
和p
1-4-2-6
中随机挑选一条候选保护路径,并计算其保护阈值。
[0214]
具体的,以p
1-2-3-6
为例,其保护阈值为:
[0215]vp
×m×
th×
(业务路径跳数-1)
×
y=1
×5×
30
×
(4-1)
×
0.8=360units
[0216]
进一步地,计算出该候选保护路径的密钥总需求:
[0217]vr
×
th×
(业务路径跳数-1)=2
×
30
×
3=180units
[0218]
进一步地,根据得到的保护阈值和密钥总需求,按照上述排序选择候选保护路径,并将其密钥总需求与保护阈值作比对,判断密钥总需求是否大于保护阈值。
[0219]
进一步地,当密钥总需求大于预设的保护阈值时,说明该条候选保护路径执行该业务请求时,将以接近最大满载值的状态运行,因此判定该候选保护路径不可作为目标保护路径。
[0220]
进一步地,当密钥总需求小于等于预设的保护阈值时,说明该条候选保护路径执行该业务请求时,不会以接近最大满载值的状态运行,因此判定该候选保护路径可以作为目标保护路径06。
[0221]
进一步地,将该候选保护路径在虚拟拓扑地图中抽象化断开,以示在下面步骤中对该条路径不做考虑。
[0222]
进一步地,除去已被抽象化断开的候选保护路径,在剩余的候选保护路径中,按照预先排列的顺序选择下一个候选保护路径,也即跳数最少的再次进行保护阈值的判断。
[0223]
进一步地,为该候选保护路径中的链路调用上述计算出的密钥需求和未被占用的
密钥资源,并对两者进行比对,以对密钥资源是否满足密钥需求进行判断。
[0224]
进一步地,当每跳链路中未被占用的密钥资源均小于密钥需求,表示该条候选保护路径中链路的可用密钥资源不可以满足执行该业务请求的密钥需求,再次除去已被抽象化断开的候选保护路径,并在剩余的候选保护路径中,选择顺序中下一个候选保护路径,也即跳数最少的候选保护路径,并再次进行密钥资源是否充足的判定。
[0225]
进一步地,当该条候选保护路径中每跳链路未被占用的密钥资源均大于等于密钥需求,表示每跳链路的密钥资源均可以满足执行该业务请求的密钥需求。
[0226]
将链路满足密钥需求,且密钥总需求不大于保护阈值的候选保护路径确定为目标保护路径,并将该保护路径作为保护资源分配给该业务请求。
[0227]
结合图4示出的虚拟拓扑地图的示例,在上述过程中所选择的p
1-2-3-6
符合上述判断,将其作为目标保护路径,并将p
1-2-3-6
分配给业务请求r1。
[0228]
作为一个可选的实施例,所述更新模块204,具体被配置为更新虚拟拓扑地图中资源状态的相关模块。并设置于每个可信节点中,由该可信节点运行。
[0229]
在本实施例中,基于上述目标工作路径的确定和目标保护路径的确定,将在该目标工作路径中所占用的密钥资源,和所占用的路径进行记录;同样地,,将在该目标保护路径中所占用的密钥资源,和所占用的路径进行记录,并在所存储的虚拟拓扑地图中,对相应路径所具备的可用资源进行更新。
[0230]
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本技术的实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
[0231]
上述实施例的装置用于实现前述任一实施例中相应的基于量子密钥分发网络的保护方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0232]
基于同一发明构思,与上述任意实施例方法相对应的,本技术的实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一实施例所述的基于量子密钥分发网络的保护方法。
[0233]
图7示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
[0234]
处理器1010可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本技术实施例所提供的技术方案。
[0235]
存储器1020可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本技术实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
[0236]
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、
扬声器、振动器、指示灯等。
[0237]
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
[0238]
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
[0239]
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本技术实施例方案所必需的组件,而不必包含图中所示的全部组件。
[0240]
上述实施例的装置用于实现前述任一实施例中相应的基于量子密钥分发网络的保护方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0241]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本技术的范围(包括权利要求)被限于这些例子;在本技术的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本技术的实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
[0242]
另外,为简化说明和讨论,并且为了不会使本技术的实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本技术的实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本技术的实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本技术的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本技术的实施例。因此,这些描述应被认为是说明性的而不是限制性的。
[0243]
尽管已经结合了本技术的具体实施例对本技术进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
[0244]
本技术的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本技术的实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献