发明内容
发明目的:为了克服现有技术中存在的不足,本发明提供一种用于量子Mesh网络的路由方法,该方法可以提供更加安全、可靠地量子信息的传递,并且在建立路由的过程中进行Bell基测量,降低信息传输的延时,提高传输效率。
为实现上述目的,本发明采用的技术方案为:
一种用于量子Mesh网络的路由方法,包括以下步骤:
步骤1.源节点向量子Mesh网络骨干网中与源节点相连接的骨干网边缘节点发送路由请求消息;
步骤2.步骤1中的骨干网边缘节点收到路由请求信息后,修改路由请求消息,然后在骨干网内广播修改后的路由请求消息;
步骤3.量子mesh骨干网中节点处理步骤2中骨干网边缘节点广播修改后的路由请求消息;
步骤4.与目的节点相连的量子mesh骨干网边缘节点收到步骤3中量子mesh骨干网中节点处理后的路由请求消息后,选择路径;对本节点所拥有的两个第一粒子进行Bell基测量;然后根据所选路径的反向路径向源节点发送路由应答消息,该应答信息包含Bell基测量结果;
步骤5.所选路径中间节点,包括与源节点相连的边缘节点,收到步骤4中发送的路由应答消息后,根据路由应答消息中的路径信息更新路由表中到目的节点的路由信息;对该节点中两个第二粒子进行Bell基测量;然后将测量结果添加至收到的路由应答消息中,并将该添加了测量结果的路由应答信息发送给所选路径上到源节点的下一跳节点;路由应答消息最后通过与源节点相连的边缘节点传送至源节点;
步骤6.步骤5中的源节点收到路由应答消息后,对本节点所拥有的两个第三粒子进行Bell基测量;源节点沿所选路径将测量结果数据包发送至与目的节点相连的量子Mesh骨干网边缘节点,该测量结果数据包内包含本次测量结果和收到的路由应答信息中所携带的路径中各节点测量结果的测量结果;
步骤7.步骤6中的量子mesh骨干网边缘节点收到测量结果数据包后,将该数据包发送至目的节点;
步骤8.步骤7中的目的节点根据收到的测量结果数据包,判断本节点为目的节点后,对测量信息进行处理,选择对应的幺正变换,得到所需要传送的量子态,完成通信。
所述步骤4中的两个第一粒子指与目的节点相连的量子mesh骨干网边缘节点所拥有的与所选路径上上一跳节点间的纠缠粒子,以及与目的节点相连的量子mesh骨干网边缘节点所拥有的与目的节点纠缠的粒子。
所述步骤5中的两个第二粒子指所选路径中间节点所拥有的与所选路径前后相邻节点分别纠缠的粒子。
所述所述步骤6中的两个第三粒子指欲传送的携带信息的粒子以及源节点与相连骨干网边缘节点间的纠缠粒子。
所述源节点和目的节点是位于接入网的终端接入节点;量子Mesh网络中的骨干网节点具有路由功能;节点间存在通过纠缠粒子对建立的量子连接,以及传统的无线或者有线连接;骨干网边缘节点是指骨干网中与终端接入节点间存在纠缠粒子对,并且存在传统的无线或者有线连接的节点。
所述步骤1中源节点发送的路由请求消息包括,源节点、目的节点、源节点序列号、地址、度量值;源节点将度量值置为0,源节点每发送一次路由请求消息,源节点的序列号加1,路由请求消息中的的“地址”值设为该节点的地址。
所述步骤2中骨干网边缘节点修改路由请求消息的方法:把路由请求消息中度量值加1,并将路由请求消息中的“地址”更新为该节点的地址。
所述步骤3中量子mesh骨干网中节点处理步骤2中骨干网边缘节点广播修改后的路由请求消息的方法:骨干网中非边缘节点收到该路由请求消息后,与其所保存的一定时间内收到的路由请求信息相对比,若收到过相同源节点且序列号相同的路由请求消息,并且度量值大于所保存的度量值,则丢弃该路由请求消息;否则,将路由请求信息中路由度量值加1,将本节点地址添加到路由请求消息“地址”项中,广播修改后的路由请求消息;而骨干网中边缘节点收到该路由请求消息后,将与本节点所存储的终端接入节点信息表中的终端地址比较,如果发现目的节点地址不在该表中,则丢弃该路由请求信息,否则进行步骤4中的操作处理。
所述步骤4中与目的节点相连接的骨干网边缘节点选择路径的方法:将收到的路由请求消息与该节点所保存的一定时间内收到的路由请求信息进行对比,若不存在相同源节点和序列号的路由请求信息,则表明收到的是一个新的路由请求信息,则启动一个等待时间;若存在相同源节点和序列号的路由请求信息,则保留路由度量值最小的路由请求信息;等待时间结束后,选择当前所保留的路由请求信息中所含路径作为传输路径。
本发明提供的一种用于量子Mesh网络的路由方法,相比现有技术,具有以下有益效果:本发明不仅可以提供更加安全、可靠地量子信息的传递,而且在建立路由的过程中进行Bell基测量,降低信息传输的延时,提高传输效率。
具体实施方式
下面结合附图对本发明作更进一步的说明。
一种用于量子Mesh网络的路由方法,包括以下步骤:
步骤1.源节点向量子Mesh网络骨干网中与源节点相连接的骨干网边缘节点发送路由请求消息。
源节点发送终端路由请求消息给相连的骨干网边缘节点。源节点发送的路由请求消息包括,源节点、目的节点、源节点序列号、地址、度量值。源节点将度量值置为0,源节点每发送一次路由请求消息,源节点的序列号加1,路由请求消息中的的“地址”值设为该节点的地址。
步骤2.步骤1中的骨干网边缘节点收到路由请求信息后,修改路由请求消息,然后在骨干网内广播修改后的路由请求消息。
与源节点相连的骨干网边缘节点收到路由请求消息后,把路由请求消息中度量值加1,并将路由请求消息中的“地址”更新为该节点的地址,向骨干网内广播更新过的路由请求消息。
步骤3.量子mesh骨干网中节点处理步骤2中骨干网边缘节点广播修改后的路由请求消息。
骨干网中非边缘节点收到该路由请求消息后,与其所保存的一定时间内收到的路由请求信息相对比,若收到过相同源节点且序列号相同的路由请求消息,并且度量值大于所保存的度量值,则丢弃该路由请求消息。否则,将路由请求信息中路由度量值加1,将本节点地址添加到路由请求消息“地址”项中,广播修改后的路由请求消息。骨干网中边缘节点收到该路由请求消息后,将与本节点所存储的终端接入节点信息表中的终端地址比较,如果发现目的节点地址不在该表中,则丢弃该路由请求信息,否则进行步骤4中的操作处理。
步骤4.与目的节点相连的量子mesh骨干网边缘节点收到步骤3中量子mesh骨干网中节点处理后的路由请求消息后,选择路径;对本节点所拥有的两个第一粒子进行Bell基测量;这两个第一粒子分别是本节点所拥有的与所选路径上上一跳节点间的纠缠粒子,以及本节点所拥有的与目的节点纠缠的粒子。然后根据所选路径的反向路径向源节点发送路由应答消息,该应答信息包含Bell基测量结果。
与目的节点相连接的骨干网边缘节点收到路由请求消息后,选择路径过程如下:将收到的路由请求消息与该节点所保存的一定时间内收到的路由请求信息进行对比,若不存在相同源节点和序列号的路由请求信息,则表明收到的是一个新的路由请求信息,则启动一个等待时间;若存在相同源节点和序列号的路由请求信息,则保留路由度量值最小的路由请求信息;等待时间结束后,选择当前所保留的路由请求信息中所含路径作为传输路径。
随后对本节点所拥有的两个粒子进行Bell基测量,这两个粒子分别是本节点所拥有的与所选路径上一跳节点间的纠缠粒子,以及本节点所拥有的与目的节点间的纠缠粒子。最后根据所选路径的反向路径将路由应答消息以单播的形式发送至到源节点的下一跳节点,该路由应答消息包含所选路径节点地址以及本节点的Bell基测量结果。
步骤5.所选路径中间节点,包括与源节点相连的边缘节点,收到步骤4中发送的路由应答消息后,根据路由应答消息中的路径信息更新路由表中到目的节点的路由信息;对该节点中两个第二粒子进行Bell基测量,这两个第二粒子是本节点所拥有的与所选路径前后相邻节点分别纠缠的粒子;然后将测量结果添加至收到的路由应答消息中,并将该添加了测量结果的路由应答信息发送给所选路径上到源节点的下一跳节点;路由应答消息最后通过与源节点相连的边缘节点传送至源节点;
步骤6.步骤5中的源节点收到路由应答消息后,对本节点所拥有的两个第三粒子进行Bell基测量,这两个第三粒子分别是欲传送的携带信息的粒子以及本节点与相连骨干网边缘节点间的纠缠粒子;源节点沿所选路径将测量结果数据包发送至与目的节点相连的量子Mesh骨干网边缘节点,该测量结果数据包内包含本次测量结果和收到的路由应答信息中所携带的路径中各节点测量结果的测量结果;
步骤7.步骤6中的量子mesh骨干网边缘节点收到测量结果数据包后,将该数据包发送至目的节点;
步骤8.步骤7中的目的节点根据收到的测量结果数据包,判断本节点为目的节点后,对测量信息进行处理,选择对应的幺正变换,得到所需要传送的量子态,完成通信。
上述步骤中量子Mesh网络中的骨干网节点具有路由功能,源节点和目的节点是位于接入网的终端接入节点。节点间存在通过纠缠粒子对建立的量子连接,以及传统的无线或者有线连接。骨干网边缘节点是指骨干网中与终端接入节点间存在纠缠粒子对,并且存在传统的无线或者有线连接的节点。每个边缘节点存储有所相连的终端接入节点信息表,信息表中包括这些终端接入节点的地址。
实例
为了更好的说明本发明,现给出本发明的一个具体通信步骤,为方便叙述,定义:
表0-1消息格式
其中,<1>路由消息类型:00终端路由请求,01路由应答请求。10为测量结果数据包。其中路由请求消息无测量结果项。
源节点第一次发送路由请求信息时,源节点序列号设为1,以后逐次递增,至最大值后又从1开始循环该过程。
注:该定义不影响本发明的实施。
具体过程如下:
如图1所示:节点BCD组成Mash量子骨干网,AB为终端节点。其中,实线表示经典连接(无线或有线),虚线表示节点之间存在纠缠粒子对。
1.源节点A向与其相连的骨干网节点B发送路由请求消息:源节点发送路由请求消息如表1-1所示,该消息<1>消息类型为00,<4>源节点序列号设为1。
<1>消息类型 |
00 |
<2>源节点 |
A |
<3>目的节点 |
E |
<4>源节点序列号 |
1 |
<5>地址 |
A |
表1-1
2.骨干网中与节点A相连接的边缘节点B收到A的路由请求消息,做如下处理:
2.1判断消息类型:<1>消息类型为00,即路由请求消息;
2.2修改更新路由请求消息:
<1>消息类型 |
00 |
<2>源节点 |
A |
<3>目的节点 |
E |
<4>源节点序列号 |
1 |
<5>地址 |
B |
<6>度量值 |
1 |
表2-1
2.3在骨干网中广播该路由消息。
3.骨干网中非边缘节点C接收到节点B广播的路由请求消息将做如下处理:
3.1通过消息类型,判断收到的消息为路由请求消息;
3.2与节点所保存的一定时间内收到的路由请求消息相对比,判断是否丢弃该路由消息,由于没有收到过源、目的节点且序列号相同的路由请求消息,则将路由请求消息中度量值加1,添加本节点地址到“地址”项中,更新路由请求消息,更新后的路由请求消息如表3-1所示;
<1>消息类型 |
00 |
<2>源节点 |
A |
<3>目的节点 |
E |
<4>源节点序列号 |
1 |
<5>地址 |
B |
表3-1
3.3在骨干网中广播该路由消息;
4.骨干网中边缘节点D接收到节点B广播的路由消息将做如下处理:
4.1通过消息类型,判断收到的消息为路由请求消息;
4.2与本节点所存储的终端接入节点信息表中的终端地址比较,发现目的节点E在其终端接入节点信息表中。
4.3将收到的路由请求消息与该节点所保存的一定时间内收到的路由请求信息进行对比,由于不存在相同源节点和序列号的路由请求信息,表明收到的是一个新的路由请求信息,则启动一个等待时间。
5.骨干网中节点D接收到节点C广播的路由消息将做如下处理:
5.1通过消息类型,判断收到的消息为路由请求消息;
5.2与本节点所存储的终端接入节点信息表中的终端地址比较,发现目的节点E在其终端接入节点信息表中。
5.3将收到的路由请求消息与该节点所保存的一定时间内收到的路由请求信息进行对比,由于存在相同源节点和序列号的路由请求信息,且度量值更大,则丢弃该路由请求消息。
6.骨干网中节点B接收到节点C广播的路由消息将做如下处理:
6.1通过消息类型,判断收到的消息为路由请求消息;
6.2与本节点所存储的终端接入节点信息表中的终端地址比较,发现目的节点E不在其终端接入节点信息表中,则丢弃该路由请求消息。
7.等待时间结束后,节点D做如下处理:
7.1选择当前所保留的路由请求信息中所含路径A-B-D作为传输路径。
7.2随后对本节点所拥有的两个粒子进行Bell基测量,这两个粒子分别是与节点B存在纠缠的粒子,以及与目的节点E存在纠缠的粒子。最后根据所选路径的反向路径(D-B-A)将路由应答消息以单播的形式发送给节点B,该路由应答消息中包含到目的节点的路径:A-B-D-E,其中中间节点B和D地址按顺序存放在地址项中,以及本节点的Bell基测量结果,如表7-1所示。
<1>消息类型 |
01 |
<2>源节点 |
A |
<3>目的节点 |
E |
<4>源节点序列号 |
1 |
<5>地址 |
B |
地址 |
D |
<6>度量值 |
2 |
<7>测量结果 |
节点D的测量结果 |
表7-1
8.骨干网中节点B接收到节点D单播的路由应答消息将做如下处理:
8.1通过消息类型,判断收到的消息为路由请求消息;
8.2收到路由应答信息后在节点路由表更新到目的节点的路由信息,将路由表中到目的节点E的“下一跳地址”更新为节点D的地址。对该节点中两个粒子进行Bell基测量,这两个粒子分别是与节点D中粒子纠缠的粒子和与节点A中粒子相纠缠的粒子,将测量结果添加至路由应答消息,发送给源节点A。该路由应答消息如表8-1所示。
表8-1
9.源节点A接收到骨干网边缘节点B发送来的路由应答消息将做如下处理:
9.1通过消息类型,判断收到的消息为路由请求消息,并且通过消息中源节点判断本节点为源节点;
9.2对携带信息的粒子以及本节点所拥有的节点B中粒子纠缠的粒子进行Bell基测量,所有测量结果包括节点A,节点B和节点D的测量结果,通过测量结果数据包由所选路径发送至节点B。该测量结果数据包包含源和目的节点地址以及所有节点的测量结果。该测量结果数据包如表9-1所示。
表9-1
10.骨干网边缘节点B接到节点A的测量结果数据包将做如下处理:
10.1通过消息类型,判断收到的为测量结果数据包。
10.2根据路由表,将该消息转发到节点D。
11.骨干网节点D节点B发来的测量结果数据包将做如下处理:
11.1通过消息类型,判断收到的为测量结果数据包,并且目的节点E在其终端接入节点信息表中;
11.2将测量结果数据包转发至目的节点E。
12.目的节点E收到节点D的发来的测量结果数据包将做如下处理:
12.1通过消息类型,判断收到的为测量结果数据包。根据数据包中目的节点地址判断本节点为目的节点。
12.2节点E对测量信息进行处理,选择对应的幺正变换,得到所需要传送的量子态,完成通信。
此次通信结束。
由上述可知,在量子Mesh网络中,可以使用该本发明建立路由,实现信息传输。该路由方法通过源节点发起路由请求至相连接的骨干网边缘节点,通过骨干网边缘节点向骨干网发起路由请求,由与目的节点相连的骨干网边缘节点进行选路以及路由应答,收到应答消息的路径上各个节点进行Bell基测量并将测量结果携带在路由应答消息中传输至源节点,源节点进行Bell基测量后,将所有测量结果沿所选路径传送至与目的节点相连的骨干网边缘节点,该边缘节点将所有测量结果发送到目的节点,目的节点对所有测量结果处理后,通过幺正变换得到携带信息的量子态。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。