专利转让平台_买专利_卖专利_中国高校专利技术交易-买卖发明专利上知查网

全部分类
全部分类
一种网络通信实现方法

一种网络通信实现方法

IPC分类号 : H04L9/06,H04L12/741,H04L29/12

申请号
CN201810916535.1
可选规格
  • 专利类型: 发明专利
  • 法律状态: 有权
  • 申请日: 2018-08-13
  • 公开号: CN109005026B
  • 公开日: 2018-12-14
  • 主分类号: H04L9/06
  • 专利权人: 常熟理工学院

专利摘要

本发明提供了一种网络通信实现方法,所述网络包括普通节点和转发设备,转发设备包括路由器,交换机和接入节点;网络划分为两个以上的域,每个域包含一个路由、两个以上的交换机、两个以上的接入节点以及两个以上的普通节点;所述节点通过本发明所提供的实现方法可安全获取网络提供的数据服务,同时能够确保安全性,缩短数据获取延迟和代价,提高服务质量,本发明可应用于重要信息的传输,例如道路路况监测、车辆管理等领域,具有广泛的应用前景。

权利要求

1.一种网络通信实现方法,其特征在于,所述网络包括普通节点和转发设备,转发设备包括路由器,交换机和接入节点;网络划分为两个以上的域,每个域包含一个路由、两个以上的交换机、两个以上的接入节点以及两个以上的普通节点;

一个路由器具有两个以上的上游有线接口和两个以上的下游有线接口,每个上游接口与一个路由器相连,每个下游接口与交换机相连;一个交换机有一个上游有线接口与两个以上的下游有线接口,一个上游接口与路由器或者交换机相连,一个下游接口与交换机或者接入节点相连;一个接入节点具有一个上游有线接口和一个下游无线接口,上游接口与交换机相连,下游接口与普通节点相连;一个普通节点有一个无线接口,与接入节点的下游接口链路相连;每个接口由接口ID唯一标识,接口ID为i的接口简写为接口i;一个接入节点与该接入节点的下游接口链路相连的所有普通节点构成一个子网;

一个路由器由域名唯一标识,一个接入节点由子网名称唯一标识,一个普通节点由一个普通节点名称唯一标识,普通节点名称在一个域内具有唯一性;

所述网络配置一个域间哈希函数,每个域配置一个域内哈希函数;域间哈希函数以及域内哈希函数由第三方认证数据中心计算机保存并签发,一个普通节点、接入节点或者路由器向第三方认证数据中心计算机进行注册以获取域间哈希函数以及自己所在域的域内哈希函数;

一个普通节点、接入节点或者路由器均配置一个域间地址和域内地址;域间地址由域名,子网名称和普通节点名称构成;域内地址由域名,子网名称和普通节点名称构成;

路由器的域间地址的子网名称和普通节点名称为空,路由器的域内地址的子网名称和普通节点名称为空;接入节点的域间地址的普通节点名称为空,接入节点的域内地址的普通节点名称为空;一个普通节点的域间地址的普通节点名称不为空,一个普通节点的域内地址的普通节点名称不为空;

每个路由器和交换机维护一个转发表,一个转发表项包含域间子网名称,域内子网名称,接口ID以及生命周期域;

接入节点AP1的子网名称为SN1,位于域D1,域D1的路由器为R1,路由器R1的域名为DN1,接入节点AP1获取了域间哈希函数H1和域内哈希函数H2,接入节点AP1利用域间哈希函数H1计算子网名称SN1的域间哈希值HSN1,接入节点AP1利用域内哈希函数H2计算子网名称SN1的域内哈希值HSN2,接入节点AP1利用域内哈希函数H2计算域名DN1的域内哈希值HDN2,如公式(1)~公式(3)所示;接入节点AP1执行下述过程建立转发表:

HSN1=H1(SN1) 公式 (1)

HSN2=H2(SN1)公式(2)

HDN2=H2(DN1) 公式 (3)

步骤101:开始;

步骤102:接入节点AP1创建一个域内地址,该域内地址的域名为域名DN1的域内哈希值HDN2,子网名称为子网名称SN1的域内哈希值HSN2,普通节点名称为空;接入节点AP1从上游有线接口发送一个发布消息,该发布消息的源地址为构建的地址,目的地址为空,负载为子网名称SN1的域间哈希值HSN1;

步骤103:判断是路由器R1从下游接口f1还是交换机从下游接口f2接收到发布消息,如果是路由器R1则执行步骤106,否则执行步骤104;

步骤104:交换机查看转发表,如果存在一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,该交换机则将该转发表项的域间子网名称更新为发布消息负载中的域间哈希值HSN1,将接口ID更新为f2,将生命周期设置为最大值,否则,该交换机创建一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,该转发表项的域间子网名称等于该发布消息负载中的域间哈希值HSN1,接口ID等于f2,生命周期为最大值;

步骤105:从下游接口f2接收到发布消息的交换机从上游接口转发该发布消息,执行步骤103;

步骤106:路由器R1查看转发表,如果存在一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,路由器R1则将该转发表项的域间子网名称更新为发布消息负载中的域间哈希值HSN1,将接口ID更新为f1,将生命周期设置为最大值,否则,路由器R1创建一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,该转发表项的域间子网名称等于该发布消息负载中的域间哈希值HSN1,接口ID等于f1,生命周期为最大值;

步骤107:结束。

2.根据权利要求1所述的一种网络通信实现方法,其特征在于,路由器维护一个域表,一个域表项包含域名、距离、接口ID和生命周期域;路由器R1位于域D1中,域名为DN1,路由器R1获取域间哈希函数H1后,用哈希函数H1计算域名DN1的域间哈希值HDN1,如公式(4)所示,然后执行下述过程建立域表:

HDN1=H1(DN1)公式(4)

步骤201:开始;

步骤202:路由器R1创建一个域间地址,该域间地址的域名为哈希值HDN1,子网名称和普通节点名称均为空;路由器R1发送一个域发布消息,该域发布消息的源地址为构建的域间地址,目的地址为空,负载为参数t1,参数t1的初始值为0;

步骤203:路由器从上游接口u1接收到域发布消息后,将域发布消息负载中的参数t1的值递增1,该路由器检测自己的域表,判断是否存在一个域表项,该域表项的域名等于该域发布消息源地址的域名且距离域值小于该域发布消息负载中参数t1,如果是则执行步骤204,否则执行步骤205;

步骤204:从上游接口u1接收到域发布消息的路由器丢弃该域发布消息,执行步骤209;

步骤205:从上游接口u1接收到域发布消息的路由器检测自己的域表,判断是否存在一个域表项,该域表项的域名等于该域发布消息源地址的域名且距离域值等于或者大于该域发布消息负载中参数t1,如果是则执行步骤206,否则执行步骤207;

步骤206:从上游接口u1接收到域发布消息的路由器选择一个域表项,该域表项的域名等于该域发布消息源地址的域名且距离域值等于或者大于该域发布消息负载中参数t1,该路由器将该域表项的距离域值更新为该域发布消息负载中的参数t1,接口ID更新为u1,生命周期设置为最大值,执行步骤208;

步骤207:从上游接口u1接收到域发布消息的路由器创建一个域表项,该域表项的域名等于该域发布消息源地址的域名,距离域值等于该域发布消息负载中参数t1,接口ID等于u1,生命周期设置为最大值;

步骤208:从上游接口u1接收到域发布消息的路由器从除了接口u1以外的每个上游接口转发该域发布消息,执行步骤203;

步骤209:结束。

3.根据权利要求1所述的一种网络通信实现方法,其特征在于,在路由器R1的域名为DN1,所在域的域内哈希函数为H2的条件下,路由器R1定期执行下述操作发布自己的域名:

步骤301:开始;

步骤302:路由器R1创建一个域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称和普通节点名称为空;路由器R1从每个下游接口发送域名发布消息,该域名发布消息的源地址为构建的域内地址,目的地址为空,负载为域名DN1;

步骤303:判断是接入节点还是交换机从上游接口接收到该域名发布消息,如果是接入节点则执行步骤305,否则执行步骤304;

步骤304:交换机从上游接口接收到该域名发布消息后,保存该域名发布消息负载中的域名DN1,然后从每个下游接口转发该域名发布消息,执行步骤303;

步骤305:接入节点从上游接口接收到该域名发布消息后,保存该域名发布消息负载中的域名DN1,然后将自己的子网名称加入到该域名发布消息负载中,从下游接口转发该域名发布消息;

步骤306:普通节点接收到域名发布消息后,保存该域名发布消息负载中的域名DN1以及所在子网的子网名称;

步骤307:结束。

4.根据权利要求1所述的一种网络通信实现方法,其特征在于,一个接入节点、交换机以及路由器各自保存一个聚合表,一个聚合表项包含源地址、目的地址和接口ID;在普通节点N1的普通节点名称为NN1,位于域D1中,域D1中的路由器为R1,路由器R1的域名为DN1,普通节点N1与接入节点AP1链路相连,接入节点AP1的子网名称为SN1,普通节点N2的普通节点名称为NN2,位于域D1中,与接入节点AP1链路相连,域间哈希函数为H1,域D1的域内哈希函数为H2的条件下,普通节点N1通过下述过程实现与普通节点N2的通信:

步骤401:开始;

步骤402:普通节点N1创建自己的域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN1的哈希值;普通节点N1为普通节点N2创建域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN2的哈希值;普通节点N1为普通节点N2创建域间地址,该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的普通节点名称NN2的哈希值;普通节点N1发送一个请求消息,该请求消息的源地址为自己的域内地址,目的地址为普通节点N2的域内地址,负载为普通节点N2的域间地址;

步骤403:接入节点AP1从下游接口接收到请求消息后查看聚合表;判断是否存在一个聚合表项,该聚合表项的源地址等于该请求消息的源地址,目的地址等于该请求消息的目的地址,如果是则执行步骤410,否则执行步骤404;

步骤404:从下游接口接收到请求消息的接入节点AP1创建一个聚合表项,该聚合表项的源地址和目的地址分别等于该请求消息的源地址和目的地址,接口ID等于接收到该请求消息的接口的接口ID;接入节点AP1查看聚合表,如果至少存在两个聚合表项,这两个聚合表项的目的地址等于接收到的请求消息的目的地址或者至少存在一个聚合表项,该聚合表项的目的地址等于该请求消息负载中的域间地址,则执行步骤410,否则执行步骤405;

步骤405:如果从下游接口接收到请求消息的接入节点AP1检测到该请求消息的目的地址的子网名称等于利用域内哈希函数H2计算得到的自己子网名称的域内哈希值,则执行步骤406,否则执行步骤413;

步骤406:从下游接口接收到请求消息的接入节点AP1从下游接口转发该请求消息;

步骤407:普通节点接收到该请求消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该请求消息的目的地址,则执行步骤409,否则执行步骤408;

步骤408;接收到该请求消息的普通节点丢弃该请求消息,执行步骤410;

步骤409:接收到该请求消息的普通节点发送一个响应消息,该响应消息的源地址为该请求消息的目的地址,该响应消息的目的地址等于该请求消息的源地址,负载为请求消息负载中域间地址以及响应数据,接入节点AP1接收到响应消息;

步骤410:接入节点AP1查看聚合表;接入节点AP1选取所有目的地址等于该响应消息源地址或者负载中域间地址的聚合表项,针对每个选中的聚合表项,接入节点AP1执行下述操作:接入节点AP1将该响应消息的目的地址更新为该聚合表项的源地址域值,从该聚合表项的接口ID域值所标识的接口发送该响应消息,删除该聚合表项;

步骤411:普通节点接收到该响应消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该响应消息的目的地址,则执行步骤412,否则执行步骤413;

步骤412:接收到该响应消息的普通节点保存该响应消息负载中的响应数据;

步骤413:结束。

5.根据权利要求1所述的一种网络通信实现方法,其特征在于,在普通节点N1的普通节点名称为NN1,位于域D1中,域D1中的路由器为R1,路由器R1的域名为DN1,普通节点N1与接入节点AP1链路相连,接入节点AP1的子网名称为SN1;普通节点N3的普通节点名称为NN3,位于域D1中,与接入节点AP3链路相连,接入节点AP3的子网名称为SN3,域间哈希函数为H1,域D1的域内哈希函数为H2的条件下,普通节点N1通过下述过程实现与普通节点N3的通信:

步骤501:开始;

步骤502:普通节点N1创建自己的域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN1的哈希值;普通节点N1为普通节点N3创建域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN3的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN3的哈希值;普通节点N1为普通节点N3创建域间地址,该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN3的哈希值,普通节点名称为利用哈希函数H1计算得到的普通节点名称NN3的哈希值;普通节点N1发送一个请求消息,该请求消息的源地址为自己的域内地址,目的地址为普通节点N3的域内地址,负载为普通节点N3的域间地址;

步骤503:转发设备从接口x1接收到请求消息后查看聚合表;如果存在一个聚合表项,该聚合表项的源地址等于该请求消息的源地址,目的地址等于该请求消息的目的地址,则执行步骤514,否则执行步骤504;

步骤504:从接口x1接收到请求消息的转发设备创建一个聚合表项,该聚合表项的源地址和目的地址分别等于该请求消息的源地址和目的地址,接口ID等于x1;转发设备查看聚合表,如果至少存在两个聚合表项,这两个聚合表项的目的地址等于接收到的请求消息的目的地址,或者至少存在一个聚合表项,该聚合表项的目的地址等于该请求消息负载中的域间地址,则执行步骤514,否则执行步骤505;

步骤505:如果接收到该请求消息的转发设备为AP1,则执行步骤506,否则执行步骤508;

步骤506:如果接收到请求消息的接入节点AP1检测到该请求消息的目的地址的子网名称不等于利用域内哈希函数H2计算得到的自己子网名称的域内哈希值,则执行步骤507,否则执行步骤518;

步骤507:接收到请求消息的接入节点AP1从上游接口转发该请求消息,并执行步骤503;

步骤508:如果接收到该请求消息的转发设备为AP3,则执行步骤510,否则执行步骤509;

步骤509:接收到该请求消息的转发设备查看转发表,选择一个转发表项,该转发表项的域内子网名称或者域间子网名称等于该请求消息目的地址的子网名称,然后从该转发表项的接口ID所标识的接口转发该请求消息,执行步骤503;

步骤510:如果接收到请求消息的接入节点AP3检测到该请求消息的目的地址的子网名称等于利用域内哈希函数H2计算得到的自己子网名称的域内哈希值,则执行步骤511,否则执行步骤518;

步骤511:接收到请求消息的接入节点AP3从下游接口转发该请求消息;

步骤512:普通节点接收到该请求消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN3的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN3的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该请求消息的目的地址,则执行步骤513,否则执行步骤514;

步骤513:接收到该请求消息的普通节点发送一个响应消息,该响应消息的源地址等于该请求消息的目的地址,该响应消息的目的地址等于该请求消息的源地址,负载为请求消息负载中域间地址以及响应数据,普通节点或者转发设备接收到响应消息;

步骤514:如果普通节点接收到该响应消息,则执行步骤516,否则执行步骤515;

步骤515:转发设备查看聚合表;该转发设备选取所有目的地址等于该响应消息源地址或者负载中域间地址的聚合表项,针对每个选中的聚合表项,转发设备执行下述操作:该转发设备将该响应消息的目的地址更新为该聚合表项的源地址域值,从该聚合表项的接口ID域值所标识的接口发送该响应消息,删除该聚合表项,执行步骤514;

步骤516:普通节点接收到该响应消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该响应消息的目的地址,则执行步骤517,否则执行步骤518;

步骤517:接收到该响应消息的普通节点保存该响应消息负载中的响应数据;

步骤518:结束。

6.根据权利要求1所述的一种网络通信实现方法,其特征在于,在普通节点N1的普通节点名称为NN1,位于域D1中,域D1中的路由器为R1,路由器R1的域名为DN1,普通节点N1与接入节点AP1链路相连,接入节点AP1的子网名称为SN1,普通节点N4的普通节点名称为NN4,位于域D2中,域D2中的路由器为R2,路由器R2的域名为DN2,普通节点N4与接入节点AP4链路相连,接入节点AP4的子网名称为SN4,域间哈希函数为H1,域D1的域内哈希函数为H2,域D2的域内哈希函数为H3的条件下,普通节点N1通过下述过程实现与普通节点N4的通信:

步骤601:开始;

步骤602:普通节点N1创建自己的域间地址,该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的普通节点名称NN1的哈希值;普通节点N1为普通节点N4创建域间地址,该域间地址的域名为利用哈希函数H1计算得到的域名DN2的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN4的哈希值,普通节点名称为利用哈希函数H1计算得到的普通节点名称NN4的哈希值;普通节点N1发送一个请求消息,该请求消息的源地址为自己的域间地址,目的地址为普通节点N4的域间地址,负载为普通节点N4的普通节点名称NN4;

步骤603:转发设备从接口x2接收到请求消息后查看聚合表;如果存在一个聚合表项,该聚合表项的源地址等于该请求消息的源地址,目的地址等于该请求消息的目的地址,则执行步骤629,否则执行步骤604;

步骤604:从接口x2接收到请求消息的转发设备创建一个聚合表项,该聚合表项的源地址和目的地址分别等于该请求消息的源地址和目的地址,接口ID等于x2;转发设备查看聚合表,如果至少存在两个聚合表项,这两个聚合表项的目的地址等于接收到的请求消息的目的地址,则执行步骤621,否则执行步骤605;

步骤605:如果接收到该请求消息的转发设备为AP1,则执行步骤606,否则执行步骤608;

步骤606:如果接收到请求消息的接入节点AP1检测到该请求消息的目的地址的子网名称不等于利用域内哈希函数H2或者域间哈希函数H1计算得到的自己子网名称的哈希值,则执行步骤607,否则执行步骤629;

步骤607:接收到请求消息的接入节点AP1从上游接口转发该请求消息,并执行步骤603;

步骤608:如果路由器R1接收到该请求消息,则执行步骤610,否则执行步骤609;

步骤609:接收到请求消息的转发设备从上游接口转发该请求消息,执行步骤603;

步骤610:如果路由器R1接收到该请求消息,则执行步骤612,否则执行步骤611;

步骤611:接收到请求消息的路由器查看域表,选择一个域表项,该域表项的域名等于该请求消息目的地址的域名,从该域表项的接口ID所标识的接口转发该请求消息,执行步骤610;

步骤612:路由器R1从上游接口接收该请求消息后,选择一个转发表,该转发表的域间子网名称等于该请求消息目的地址的子网名称,构建一个域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为该转发表项的域内子网名称,普通节点名称为利用哈希函数H2计算得到的该请求消息负载中的普通节点名称NN4的哈希值;路由器R1从该请求消息负载中删除普通节点名称NN4,将构建的地址加入到该请求消息的负载中,从该转发表项的接口ID所标识的接口转发该请求消息;

步骤613:从接口x3接收到请求消息的转发设备查看聚合表;如果存在一个聚合表项,该聚合表项的源地址等于该请求消息的源地址,目的地址等于该请求消息的目的地址,则执行步骤621,否则执行步骤614;

步骤614:从接口x3接收到请求消息的转发设备创建一个聚合表项,该聚合表项的源地址和目的地址分别等于该请求消息的源地址和目的地址,接口ID等于x3;转发设备查看聚合表,如果至少存在两个聚合表项,这两个聚合表项的目的地址等于接收到的请求消息的目的地址,或者至少存在一个聚合表项,该聚合表项的目的地址等于该请求消息负载中的地址,则执行步骤621,否则执行步骤615;

步骤615:如果接收到该请求消息的转发设备为AP4,则执行步骤617,否则执行步骤616;

步骤616:接收到该请求消息的转发设备查看转发表,选择一个转发表项,该转发表项的域内子网名称或者域间子网名称等于该请求消息目的地址的子网名称,然后从该转发表项的接口ID所标识的接口转发该请求消息,执行步骤615;

步骤617:如果接收到请求消息的接入节点AP4检测到该请求消息的目的地址的子网名称等于利用域间哈希函数H1或者域内哈希函数H3计算得到的自己子网名称的域内哈希值,则执行步骤618,否则执行步骤629;

步骤618:接收到请求消息的接入节点AP4从下游接口转发该请求消息;

步骤619:普通节点接收到该请求消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H3计算得到的域名DN3的哈希值,子网名称为利用哈希函数H3计算得到的子网名称SN4的哈希值,普通节点名称为利用哈希函数H3计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN2的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN4的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该请求消息的目的地址,则执行步骤620,否则执行步骤621;

步骤620:接收到该请求消息的普通节点发送一个响应消息,该响应消息的源地址等于该请求消息的目的地址,该响应消息的目的地址等于该请求消息的源地址,负载为请求消息负载中的地址以及响应数据,转发设备接收到响应消息;

步骤621:转发设备查看聚合表;该转发设备选取所有目的地址等于该响应消息源地址或者负载中域内地址的聚合表项,针对每个选中的聚合表项,转发设备执行下述操作:该转发设备将该响应消息的目的地址更新为该聚合表项的源地址域值,从该聚合表项的接口ID域值所标识的接口发送该响应消息,删除该聚合表项;

步骤622:如果接收到响应消息的转发设备为R2,则执行步骤623,否则执行步骤621;

步骤623:如果路由器R2接收到该响应消息,则执行步骤625,否则执行步骤624;

步骤624:接收到响应消息的路由器查看域表,选择一个域表项,该域表项的域名等于该响应消息目的地址的域名,从该域表项的接口ID所标识的接口转发该响应消息,执行步骤623;

步骤625:判断是普通节点还是转发设备接收到该响应消息,如果是普通节点则执行步骤627,否则执行步骤626;

步骤626:转发设备接收到响应消息后查看聚合表;该转发设备选取所有目的地址等于该响应消息源地址或者负载中地址的聚合表项,针对每个选中的聚合表项,转发设备执行下述操作:该转发设备将该响应消息的目的地址更新为该聚合表项的源地址域值,从该聚合表项的接口ID域值所标识的接口发送该响应消息,删除该聚合表项,执行步骤625;

步骤627:普通节点接收到该响应消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该响应消息的目的地址,则执行步骤628,否则执行步骤629;

步骤628:接收到该响应消息的普通节点保存该响应消息负载中的响应数据;

步骤629:结束。

说明书

技术领域

本发明涉及一种网络通信实现方法,尤其涉及的是一种支持隐私保护的网络通信实现方法。

背景技术

未来网络能够实现节点与节点之间的多跳无线通信。随着网络技术的不断发展以及各种新应用的不断涌现,迫切需要实现快速的网络通信以满足用户急剧增长的应用需求。

未来网络作为一种特殊类型,它以数据为中心,而传统网络以地址为中心,因此并不利于数据的获取。例如,在IP网络中,由目的IP地址确定的目的节点来提供数据,如果该目的节点失效,那么就无法提供数据。而未来网络以数据为中心,任何节点都可以提供数据,从而缩短了数据获取的延迟和代价。

但是,如何实现以数据为中心的网络还需要进一步研究和探讨。

发明内容

发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种支持隐私保护的网络通信实现方法。

技术方案:本发明公开了一种支持隐私保护的网络通信实现方法,所述网络包括普通节点和转发设备,转发设备包括路由器,交换机和接入节点;网络划分为两个以上的域,每个域包含一个路由、两个以上的交换机、两个以上的接入节点以及两个以上的普通节点;接入节点是转发设备,具有转发功能,普通节点不具有转发功能;

一个路由器具有两个以上的上游有线接口和两个以上的下游有线接口,每个上游接口与一个路由器相连,每个下游接口与交换机相连;一个交换机有一个上游有线接口与两个以上的下游有线接口,一个上游接口与路由器或者交换机相连,一个下游接口与交换机或者接入节点相连;一个接入节点具有一个上游有线接口和一个下游无线接口,上游接口与交换机相连,下游接口与普通节点相连;一个普通节点有一个无线接口,与接入节点的下游接口链路相连;每个接口由接口ID唯一标识,接口ID为i的接口简写为接口i;一个接入节点与该接入节点的下游接口链路相连的所有普通节点构成一个子网;

一个路由器由域名唯一标识,例如cslg/N6;一个接入节点由子网名称唯一标识,例如CS/402,即计算机学院402实验室;一个普通节点由一个普通节点名称唯一标识,普通节点名称在一个域内具有唯一性;交换机不需要任何名称标识;所述网络配置一个域间哈希函数,每个域配置一个域内哈希函数;域间哈希函数以及域内哈希函数由第三方认证数据中心计算机保存并签发,一个普通节点、接入节点或者路由器向第三方认证数据中心计算机进行注册以获取域间哈希函数以及自己所在域的域内哈希函数;

一个普通节点、接入节点或者路由器均配置一个域间地址和域内地址;域间地址由域名,子网名称和普通节点名称构成;域内地址由域名,子网名称和普通节点名称构成;

路由器的域间地址的子网名称和普通节点名称为空,路由器的域内地址的子网名称和普通节点名称为空;接入节点的域间地址的普通节点名称为空,接入节点的域内地址的普通节点名称为空;一个普通节点的域间地址的普通节点名称不为空,一个普通节点的域内地址的普通节点名称不为空;

每个路由器和交换机维护一个转发表,一个转发表项包含域间子网名称,域内子网名称,接口ID以及生命周期域;

接入节点AP1的子网名称为SN1,位于域D1,域D1的路由器为R1,路由器R1的域名为DN1,接入节点AP1获取了域间哈希函数H1和域内哈希函数H2,例如MD5(Message DigestAlgorithm,中文名为消息摘要算法第五版),接入节点AP1利用域间哈希函数H1 计算子网名称SN1的域间哈希值HSN1,接入节点AP1利用域内哈希函数H2计算子网名称SN1的域内哈希值HSN2,接入节点AP1利用域内哈希函数H2计算域名DN1的域内哈希值HDN2,如公式(1)~公式(3)所示;接入节点AP1执行下述过程建立转发表:

HSN1=H1(SN1) 公式(1)

HSN2=H2(SN1) 公式(2)

HDN2=H2(DN1) 公式(3)

步骤101:开始;

步骤102:接入节点AP1创建一个域内地址,该域内地址的域名为域名DN1的域内哈希值HDN2,子网名称为子网名称SN1的域内哈希值HSN2,普通节点名称为空;接入节点AP1从上游有线接口发送一个发布消息,该发布消息的源地址为构建的地址,目的地址为空,负载为子网名称SN1的域间哈希值HSN1;

步骤103:判断是路由器R1从下游接口f1还是交换机从下游接口f2接收到发布消息,如果是路由器R1则执行步骤106,否则执行步骤104;

步骤104:交换机查看转发表,如果存在一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,该交换机则将该转发表项的域间子网名称更新为发布消息负载中的域间哈希值HSN1,将接口ID更新为f2,将生命周期设置为最大值,例如1s,否则,该交换机创建一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,该转发表项的域间子网名称等于该发布消息负载中的域间哈希值HSN1,接口ID等于f2,生命周期为最大值;

步骤105:从下游接口f2接收到发布消息的交换机从上游接口转发该发布消息,执行步骤103;

步骤106:路由器R1查看转发表,如果存在一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,路由器R1则将该转发表项的域间子网名称更新为发布消息负载中的域间哈希值HSN1,将接口ID更新为f1,将生命周期设置为最大值,否则,路由器R1创建一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,该转发表项的域间子网名称等于该发布消息负载中的域间哈希值HSN1,接口ID等于f1,生命周期为最大值;

步骤107:结束。

接入节点通过上述过程建立转发表从而通过转发表能够建立最优路由路径,转发表通过接口ID实现消息的正确转发,从而确保通信的正确性,同时,上述过程通过生命周期来确保转发表的实时性和有效性,从而确保通信的有效性和正确性。

本发明所述方法中,路由器维护一个域表,一个域表项包含域名、距离、接口ID 和生命周期域;路由器R1位于域D1中,域名为DN1,路由器R1获取域间哈希函数H1 后,用哈希函数H1计算域名DN1的域间哈希值HDN1,如公式(4)所示,然后执行下述过程建立域表:

HDN1=H1(DN1) 公式(4)

步骤201:开始;

步骤202:路由器R1创建一个域间地址,该域间地址的域名为哈希值HDN1,子网名称和普通节点名称均为空;路由器R1发送一个域发布消息,该域发布消息的源地址为构建的域间地址,目的地址为空,负载为参数t1,参数t1的初始值为0;

步骤203:路由器从上游接口u1接收到域发布消息后,将域发布消息负载中的参数t1的值递增1,该路由器检测自己的域表,判断是否存在一个域表项,该域表项的域名等于该域发布消息源地址的域名且距离域值小于该域发布消息负载中参数t1,如果是则执行步骤204,否则执行步骤205;

步骤204:从上游接口u1接收到域发布消息的路由器丢弃该域发布消息,执行步骤209;

步骤205:从上游接口u1接收到域发布消息的路由器检测自己的域表,判断是否存在一个域表项,该域表项的域名等于该域发布消息源地址的域名且距离域值等于或者大于该域发布消息负载中参数t1,如果是则执行步骤206,否则执行步骤207;

步骤206:从上游接口u1接收到域发布消息的路由器选择一个域表项,该域表项的域名等于该域发布消息源地址的域名且距离域值等于或者大于该域发布消息负载中参数t1,该路由器将该域表项的距离域值更新为该域发布消息负载中的参数t1,接口ID更新为u1,生命周期设置为最大值,例如500ms,执行步骤208;

步骤207:从上游接口u1接收到域发布消息的路由器创建一个域表项,该域表项的域名等于该域发布消息源地址的域名,距离域值等于该域发布消息负载中参数t1,接口 ID等于u1,生命周期设置为最大值;

步骤208:从上游接口u1接收到域发布消息的路由器从除了接口u1以外的每个上游接口转发该域发布消息,执行步骤203;

步骤209:结束。

路由器通过上述过程建立域表从而通过域表建立不同域之间的最优路由路径,域表通过距离域值实现最短路由路径,通过接口ID实现消息的正确转发,从而确保通信的正确性,同时,上述过程通过生命周期来确保转发表的实时性和有效性,从而确保通信的有效性和正确性。

本发明所述方法中,在路由器R1的域名为DN1,所在域的域内哈希函数为H2的条件下,路由器R1定期执行下述操作发布自己的域名:

步骤301:开始;

步骤302:路由器R1创建一个域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称和普通节点名称为空;路由器R1从每个下游接口发送域名发布消息,该域名发布消息的源地址为构建的域内地址,目的地址为空,负载为域名DN1;

步骤303:判断是接入节点还是交换机从上游接口接收到该域名发布消息,如果是接入节点则执行步骤305,否则执行步骤304;

步骤304:交换机从上游接口接收到该域名发布消息后,保存该域名发布消息负载中的域名DN1,然后从每个下游接口转发该域名发布消息,执行步骤303;

步骤305:接入节点从上游接口接收到该域名发布消息后,保存该域名发布消息负载中的域名DN1,然后将自己的子网名称加入到该域名发布消息负载中,从下游接口转发该域名发布消息;

步骤306:普通节点接收到域名发布消息后,保存该域名发布消息负载中的域名DN1以及所在子网的子网名称;

步骤307:结束。

路由器通过上述过程发布自己的域名,这样,节点可以保存路由器发布的域名以及所在子网的子网从而从该子网获取所需数据。由于上述过程通过哈希函数进行加密,因为实现了域名发布的安全性。

本发明所述方法中,一个接入节点、交换机以及路由器各自保存一个聚合表,一个聚合表项包含源地址、目的地址和接口ID;在普通节点N1的普通节点名称为NN1,位于域D1中,域D1中的路由器为R1,路由器R1的域名为DN1,普通节点N1与接入节点AP1链路相连,接入节点AP1的子网名称为SN1,普通节点N2的普通节点名称为NN2,位于域D1中,与接入节点AP1链路相连,域间哈希函数为H1,域D1的域内哈希函数为 H2的条件下,普通节点N1通过下述过程实现与普通节点N2的通信:

步骤401:开始;

步骤402:普通节点N1创建自己的域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称 SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN1的哈希值;普通节点N1为普通节点N2创建域内地址,该域内地址的域名为利用哈希函数H2 计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1 的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN2的哈希值;普通节点N1为普通节点N2创建域间地址,该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的普通节点名称NN2的哈希值;普通节点N1发送一个请求消息,该请求消息的源地址为自己的域内地址,目的地址为普通节点N2的域内地址,负载为普通节点N2的域间地址;

步骤403:接入节点AP1从下游接口接收到请求消息后查看聚合表;判断是否存在一个聚合表项,该聚合表项的源地址等于该请求消息的源地址,目的地址等于该请求消息的目的地址,如果是则执行步骤410,否则执行步骤404;

步骤404:从下游接口接收到请求消息的接入节点AP1创建一个聚合表项,该聚合表项的源地址和目的地址分别等于该请求消息的源地址和目的地址,接口ID等于接收到该请求消息的接口的接口ID;接入节点AP1查看聚合表,如果至少存在两个聚合表项,这两个聚合表项的目的地址等于接收到的请求消息的目的地址或者至少存在一个聚合表项,该聚合表项的目的地址等于该请求消息负载中的域间地址,则执行步骤410,否则执行步骤405;

步骤405:如果从下游接口接收到请求消息的接入节点AP1检测到该请求消息的目的地址的子网名称等于利用域内哈希函数H2计算得到的自己子网名称的域内哈希值,则执行步骤406,否则执行步骤413;

步骤406:从下游接口接收到请求消息的接入节点AP1从下游接口转发该请求消息;

步骤407:普通节点接收到该请求消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该请求消息的目的地址,则执行步骤409,否则执行步骤408;

步骤408;接收到该请求消息的普通节点丢弃该请求消息,执行步骤410;

步骤409:接收到该请求消息的普通节点发送一个响应消息,该响应消息的源地址为该请求消息的目的地址,该响应消息的目的地址等于该请求消息的源地址,负载为请求消息负载中域间地址以及响应数据;

步骤410:接入节点AP1接收到响应消息后查看聚合表;接入节点AP1选取所有目的地址等于该响应消息源地址或者负载中域间地址的聚合表项,针对每个选中的聚合表项,接入节点AP1执行下述操作:接入节点AP1将该响应消息的目的地址更新为该聚合表项的源地址域值,从该聚合表项的接口ID域值所标识的接口发送该响应消息,删除该聚合表项;

步骤411:普通节点接收到该响应消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该响应消息的目的地址,则执行步骤412,否则执行步骤413;

步骤412:接收到该响应消息的普通节点保存该响应消息负载中的响应数据;

步骤413:结束。

节点通过上述过程实现了与本地节点的通信,上述过程通过聚合表实现了请求聚合,这样,多个节点可以通过一次数据通信获取响应数据,从而降低数据通信延迟和代价。

本发明所述方法中,在普通节点N1的普通节点名称为NN1,位于域D1中,域D1 中的路由器为R1,路由器R1的域名为DN1,普通节点N1与接入节点AP1链路相连,接入节点AP1的子网名称为SN1;普通节点N3的普通节点名称为NN3,位于域D1中,与接入节点AP3链路相连,接入节点AP3的子网名称为SN3,域间哈希函数为H1,域D1 的域内哈希函数为H2的条件下,普通节点N1通过下述过程实现与普通节点N3的通信:

步骤501:开始;

步骤502:普通节点N1创建自己的域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称 SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN1的哈希值;普通节点N1为普通节点N3创建域内地址,该域内地址的域名为利用哈希函数H2 计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1 的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN3的哈希值;普通节点N1为普通节点N3创建域间地址,该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的普通节点名称NN3的哈希值;普通节点N1发送一个请求消息,该请求消息的源地址为自己的域内地址,目的地址为普通节点N3的域内地址,负载为普通节点N3的域间地址;

步骤503:转发设备从接口x1接收到请求消息后查看聚合表;如果存在一个聚合表项,该聚合表项的源地址等于该请求消息的源地址,目的地址等于该请求消息的目的地址,则执行步骤514,否则执行步骤504;

步骤504:从接口x1接收到请求消息的转发设备创建一个聚合表项,该聚合表项的源地址和目的地址分别等于该请求消息的源地址和目的地址,接口ID等于x1;转发设备查看聚合表,如果至少存在两个聚合表项,这两个聚合表项的目的地址等于接收到的请求消息的目的地址,或者至少存在一个聚合表项,该聚合表项的目的地址等于该请求消息负载中的域间地址,则执行步骤514,否则执行步骤505;

步骤505:如果接收到该请求消息的转发设备为AP1,则执行步骤506,否则执行步骤508;

步骤506:如果接收到请求消息的接入节点AP1检测到该请求消息的目的地址的子网名称不等于利用域内哈希函数H2计算得到的自己子网名称的域内哈希值,则执行步骤507,否则执行步骤518;

步骤507:接收到请求消息的接入节点AP1从上游接口转发该请求消息,并执行步骤503;

步骤508:如果接收到该请求消息的转发设备为AP3,则执行步骤510,否则执行步骤509;

步骤509:接收到该请求消息的转发设备查看转发表,选择一个转发表项,该转发表项的域内子网名称或者域间子网名称等于该请求消息目的地址的子网名称,然后从该转发表项的接口ID所标识的接口转发该请求消息,执行步骤503;

步骤510:如果接收到请求消息的接入节点AP3检测到该请求消息的目的地址的子网名称等于利用域内哈希函数H2计算得到的自己子网名称的域内哈希值,则执行步骤511,否则执行步骤518;

步骤511:接收到请求消息的接入节点AP3从下游接口转发该请求消息;

步骤512:普通节点接收到该请求消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该请求消息的目的地址,则执行步骤513,否则执行步骤514;

步骤513:接收到该请求消息的普通节点发送一个响应消息,该响应消息的源地址等于该请求消息的目的地址,该响应消息的目的地址等于该请求消息的源地址,负载为请求消息负载中域间地址以及响应数据;

步骤514:如果普通节点接收到该响应消息,则执行步骤516,否则执行步骤515;

步骤515:转发设备接收到响应消息后查看聚合表;该转发设备选取所有目的地址等于该响应消息源地址或者负载中域间地址的聚合表项,针对每个选中的聚合表项,转发设备执行下述操作:该转发设备将该响应消息的目的地址更新为该聚合表项的源地址域值,从该聚合表项的接口ID域值所标识的接口发送该响应消息,删除该聚合表项,执行步骤514;

步骤516:普通节点接收到该响应消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该响应消息的目的地址,则执行步骤517,否则执行步骤518;

步骤517:接收到该响应消息的普通节点保存该响应消息负载中的响应数据;

步骤518:结束。

节点通过上述过程实现了与节点的通信,上述过程通过转发表进行消息的正确转发,从而确保了数据通信的正确性,通过聚合表实现了请求聚合,这样,多个节点可以通过一次数据通信获取响应数据,从而降低数据通信延迟和代价。

本发明所述方法中,在普通节点N1的普通节点名称为NN1,位于域D1中,域D1 中的路由器为R1,路由器R1的域名为DN1,普通节点N1与接入节点AP1链路相连,接入节点AP1的子网名称为SN1,普通节点N4的普通节点名称为NN4,位于域D2中,域 D2中的路由器为R2,路由器R2的域名为DN2,普通节点N4与接入节点AP4链路相连,接入节点AP4的子网名称为SN4,域间哈希函数为H1,域D1的域内哈希函数为H2,域 D2的域内哈希函数为H3的条件下,普通节点N1通过下述过程实现与普通节点N4的通信:

步骤601:开始;

步骤602:普通节点N1创建自己的域间地址,该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称 SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的普通节点名称NN1的哈希值;普通节点N1为普通节点N4创建域间地址,该域间地址的域名为利用哈希函数H1 计算得到的域名DN2的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN4 的哈希值,普通节点名称为利用哈希函数H1计算得到的普通节点名称NN4的哈希值;普通节点N1发送一个请求消息,该请求消息的源地址为自己的域间地址,目的地址为普通节点N4的域间地址,负载为普通节点N4的普通节点名称NN4;

步骤603:转发设备从接口x2接收到请求消息后查看聚合表;如果存在一个聚合表项,该聚合表项的源地址等于该请求消息的源地址,目的地址等于该请求消息的目的地址,则执行步骤629,否则执行步骤604;

步骤604:从接口x2接收到请求消息的转发设备创建一个聚合表项,该聚合表项的源地址和目的地址分别等于该请求消息的源地址和目的地址,接口ID等于x2;转发设备查看聚合表,如果至少存在两个聚合表项,这两个聚合表项的目的地址等于接收到的请求消息的目的地址,则执行步骤621,否则执行步骤605;

步骤605:如果接收到该请求消息的转发设备为AP1,则执行步骤606,否则执行步骤608;

步骤606:如果接收到请求消息的接入节点AP1检测到该请求消息的目的地址的子网名称不等于利用域内哈希函数H2或者域间哈希函数H1计算得到的自己子网名称的哈希值,则执行步骤607,否则执行步骤629;

步骤607:接收到请求消息的接入节点AP1从上游接口转发该请求消息,并执行步骤603;

步骤608:如果路由器R1接收到该请求消息,则执行步骤610,否则执行步骤609;

步骤609:接收到请求消息的转发设备从上游接口转发该请求消息,执行步骤603;

步骤610:如果路由器R2接收到该请求消息,则执行步骤612,否则执行步骤611;

步骤611:接收到请求消息的路由器查看域表,选择一个域表项,该域表项的域名等于该请求消息目的地址的域名,从该域表项的接口ID所标识的接口转发该请求消息,执行步骤610;

步骤612:路由器R2从上游接口接收该请求消息后,选择一个转发表,该转发表的域间子网名称等于该请求消息目的地址的子网名称,构建一个域内地址,该域内地址的域名为利用哈希函数H3计算得到的域名DN1的哈希值,子网名称为该转发表项的域内子网名称,普通节点名称为利用哈希函数H3计算得到的该请求消息负载中的普通节点名称NN4的哈希值;路由器R2从该请求消息负载中删除普通节点名称NN4,将构建的地址加入到该请求消息的负载中,从该转发表项的接口ID所标识的接口转发该请求消息;

步骤613:从接口x3接收到请求消息的转发设备查看聚合表;如果存在一个聚合表项,该聚合表项的源地址等于该请求消息的源地址,目的地址等于该请求消息的目的地址,则执行步骤621,否则执行步骤614;

步骤614:从接口x3接收到请求消息的转发设备创建一个聚合表项,该聚合表项的源地址和目的地址分别等于该请求消息的源地址和目的地址,接口ID等于x3;转发设备查看聚合表,如果至少存在两个聚合表项,这两个聚合表项的目的地址等于接收到的请求消息的目的地址,或者至少存在一个聚合表项,该聚合表项的目的地址等于该请求消息负载中的地址,则执行步骤621,否则执行步骤615;

步骤615:如果接收到该请求消息的转发设备为AP4,则执行步骤617,否则执行步骤616;

步骤616:接收到该请求消息的转发设备查看转发表,选择一个转发表项,该转发表项的域内子网名称或者域间子网名称等于该请求消息目的地址的子网名称,然后从该转发表项的接口ID所标识的接口转发该请求消息,执行步骤615;

步骤617:如果接收到请求消息的接入节点AP4检测到该请求消息的目的地址的子网名称等于利用域间哈希函数H1或者域内哈希函数H3计算得到的自己子网名称的域内哈希值,则执行步骤618,否则执行步骤629;

步骤618:接收到请求消息的接入节点AP4从下游接口转发该请求消息;

步骤619:普通节点接收到该请求消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H3计算得到的域名DN3的哈希值,子网名称为利用哈希函数H3计算得到的子网名称SN4的哈希值,普通节点名称为利用哈希函数H3计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN2的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN4的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该请求消息的目的地址,则执行步骤620,否则执行步骤621;

步骤620:接收到该请求消息的普通节点发送一个响应消息,该响应消息的源地址等于该请求消息的目的地址,该响应消息的目的地址等于该请求消息的源地址,负载为请求消息负载中的地址以及响应数据;

步骤621:转发设备接收到响应消息后查看聚合表;该转发设备选取所有目的地址等于该响应消息源地址或者负载中域内地址的聚合表项,针对每个选中的聚合表项,转发设备执行下述操作:该转发设备将该响应消息的目的地址更新为该聚合表项的源地址域值,从该聚合表项的接口ID域值所标识的接口发送该响应消息,删除该聚合表项;

步骤622:如果接收到响应消息的转发设备为R2,则执行步骤623,否则执行步骤621;

步骤623:如果路由器R1接收到该响应消息,则执行步骤625,否则执行步骤624;

步骤624:接收到响应消息的路由器查看域表,选择一个域表项,该域表项的域名等于该响应消息目的地址的域名,从该域表项的接口ID所标识的接口转发该响应消息,执行步骤623;

步骤625:判断是普通节点还是转发设备接收到该响应消息,如果是普通节点则执行步骤627,否则执行步骤626;

步骤626:转发设备接收到响应消息后查看聚合表;该转发设备选取所有目的地址等于该响应消息源地址或者负载中地址的聚合表项,针对每个选中的聚合表项,转发设备执行下述操作:该转发设备将该响应消息的目的地址更新为该聚合表项的源地址域值,从该聚合表项的接口ID域值所标识的接口发送该响应消息,删除该聚合表项,执行步骤625;

步骤627:普通节点接收到该响应消息后,创建自己的域内地址和域间地址;该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的自己的普通节点名称的哈希值;该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的自己的普通节点名称的哈希值;如果该普通节点的域内地址或者域间地址等于该响应消息的目的地址,则执行步骤628,否则执行步骤629;

步骤628:接收到该响应消息的普通节点保存该响应消息负载中的响应数据;

步骤629:结束。

节点通过上述过程实现了与远程节点的通信,上述过程通过哈希函数进行加密从而实现了数据通信的安全性,此外,上述过程通过域表和转发表进行消息的正确转发,从而确保了数据通信的正确性,通过聚合表实现了请求聚合,这样,多个节点可以通过一次数据通信获取响应数据,从而降低数据通信延迟和代价。

有益效果:本发明提供了一种支持隐私保护的网络通信实现方法,所述节点通过本发明所提供的实现方法可安全获取网络提供的数据服务,同时能够确保安全性,缩短数据获取延迟和代价,提高服务质量,本发明可应用于重要信息的传输,例如道路路况监测、车辆管理等领域,具有广泛的应用前景。

附图说明

下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/ 或其他方面的优点将会变得更加清楚。

图1为本发明所述的建立转发表流程示意图。

图2为本发明所述的域表流程示意图。

图3为本发明所述的发布流程示意图。

图4为本发明所述的本地通信流程示意图。

图5为本发明所述的数据获取流程示意图。

图6为本发明所述的远程数据获取流程示意图。

具体实施方式:

本发明提供了一种支持隐私保护的网络通信实现方法,所述节点通过本发明所提供的实现方法可安全获取网络提供的数据服务,同时能够确保安全性,缩短数据获取延迟和代价,提高服务质量,本发明可应用于重要信息的传输,例如道路路况监测、车辆管理等领域,具有广泛的应用前景。

图1为本发明所述的建立转发表流程示意图。所述网络包括普通节点和转发设备,转发设备包括路由器,交换机和接入节点;网络划分为两个以上的域,每个域包含一个路由、两个以上的交换机、两个以上的接入节点以及两个以上的普通节点;

一个路由器具有两个以上的上游有线接口和两个以上的下游有线接口,每个上游接口与一个路由器相连,每个下游接口与交换机相连;一个交换机有一个上游有线接口与两个以上的下游有线接口,一个上游接口与路由器或者交换机相连,一个下游接口与交换机或者接入节点相连;一个接入节点具有一个上游有线接口和一个下游无线接口,上游接口与交换机相连,下游接口与普通节点相连;一个普通节点有一个无线接口,与接入节点的下游接口链路相连;每个接口由接口ID唯一标识,接口ID为i的接口简写为接口i;一个接入节点与该接入节点的下游接口链路相连的所有普通节点构成一个子网;

一个路由器由域名唯一标识,一个接入节点由子网名称唯一标识,一个普通节点由一个普通节点名称唯一标识,普通节点名称在一个域内具有唯一性;

所述网络配置一个域间哈希函数,每个域配置一个域内哈希函数;域间哈希函数以及域内哈希函数由第三方认证数据中心计算机保存并签发,一个普通节点、接入节点或者路由器向第三方认证数据中心计算机进行注册以获取域间哈希函数以及自己所在域的域内哈希函数;

一个普通节点、接入节点或者路由器均配置一个域间地址和域内地址;域间地址由域名,子网名称和普通节点名称构成;域内地址由域名,子网名称和普通节点名称构成;

路由器的域间地址的子网名称和普通节点名称为空,路由器的域内地址的子网名称和普通节点名称为空;接入节点的域间地址的普通节点名称为空,接入节点的域内地址的普通节点名称为空;一个普通节点的域间地址的普通节点名称不为空,一个普通节点的域内地址的普通节点名称不为空;

每个路由器和交换机维护一个转发表,一个转发表项包含域间子网名称,域内子网名称,接口ID以及生命周期域;

接入节点AP1的子网名称为SN1,位于域D1,域D1的路由器为R1,路由器R1的域名为DN1,接入节点AP1获取了域间哈希函数H1和域内哈希函数H2,接入节点AP1利用域间哈希函数H1计算子网名称SN1的域间哈希值HSN1,接入节点AP1利用域内哈希函数H2计算子网名称SN1的域内哈希值HSN2,接入节点AP1利用域内哈希函数H2计算域名DN1的域内哈希值HDN2,如公式(1)~公式(3)所示;接入节点AP1执行下述过程建立转发表:

HSN1=H1(SN1) 公式(1)

HSN2=H2(SN1) 公式(2)

HDN2=H2(DN1) 公式(3)

步骤101:开始;

步骤102:接入节点AP1创建一个域内地址,该域内地址的域名为域名DN1的域内哈希值HDN2,子网名称为子网名称SN1的域内哈希值HSN2,普通节点名称为空;接入节点AP1从上游有线接口发送一个发布消息,该发布消息的源地址为构建的地址,目的地址为空,负载为子网名称SN1的域间哈希值HSN1;

步骤103:判断是路由器R1从下游接口f1还是交换机从下游接口f2接收到发布消息,如果是路由器R1则执行步骤106,否则执行步骤104;

步骤104:交换机查看转发表,如果存在一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,该交换机则将该转发表项的域间子网名称更新为发布消息负载中的域间哈希值HSN1,将接口ID更新为f2,将生命周期设置为最大值,否则,该交换机创建一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,该转发表项的域间子网名称等于该发布消息负载中的域间哈希值 HSN1,接口ID等于f2,生命周期为最大值;

步骤105:从下游接口f2接收到发布消息的交换机从上游接口转发该发布消息,执行步骤103;

步骤106:路由器R1查看转发表,如果存在一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,路由器R1则将该转发表项的域间子网名称更新为发布消息负载中的域间哈希值HSN1,将接口ID更新为f1,将生命周期设置为最大值,否则,路由器R1创建一个转发表项,该转发表项的域内子网名称等于该发布消息源地址的子网名称,该转发表项的域间子网名称等于该发布消息负载中的域间哈希值HSN1,接口ID等于f1,生命周期为最大值;

步骤107:结束。

图2为本发明所述的域表流程示意图。路由器维护一个域表,一个域表项包含域名、距离、接口ID和生命周期域;路由器R1位于域D1中,域名为DN1,路由器R1获取域间哈希函数H1后,用哈希函数H1计算域名DN1的域间哈希值HDN1,如公式(4)所示,然后执行下述过程建立域表:

HDN1=H1(DN1) 公式(4)

步骤201:开始;

步骤202:路由器R1创建一个域间地址,该域间地址的域名为哈希值HDN1,子网名称和普通节点名称均为空;路由器R1发送一个域发布消息,该域发布消息的源地址为构建的域间地址,目的地址为空,负载为参数t1,参数t1的初始值为0;

步骤203:路由器从上游接口u1接收到域发布消息后,将域发布消息负载中的参数t1的值递增1,该路由器检测自己的域表,判断是否存在一个域表项,该域表项的域名等于该域发布消息源地址的域名且距离域值小于该域发布消息负载中参数t1,如果是则执行步骤204,否则执行步骤205;

步骤204:从上游接口u1接收到域发布消息的路由器丢弃该域发布消息,执行步骤209;

步骤205:从上游接口u1接收到域发布消息的路由器检测自己的域表,判断是否存在一个域表项,该域表项的域名等于该域发布消息源地址的域名且距离域值等于或者大于该域发布消息负载中参数t1,如果是则执行步骤206,否则执行步骤207;

步骤206:从上游接口u1接收到域发布消息的路由器选择一个域表项,该域表项的域名等于该域发布消息源地址的域名且距离域值等于或者大于该域发布消息负载中参数t1,该路由器将该域表项的距离域值更新为该域发布消息负载中的参数t1,接口ID更新为u1,生命周期设置为最大值,执行步骤208;

步骤207:从上游接口u1接收到域发布消息的路由器创建一个域表项,该域表项的域名等于该域发布消息源地址的域名,距离域值等于该域发布消息负载中参数t1,接口 ID等于u1,生命周期设置为最大值;

步骤208:从上游接口u1接收到域发布消息的路由器从除了接口u1以外的每个上游接口转发该域发布消息,执行步骤203;

步骤209:结束。

图3为本发明所述的发布流程示意图。在路由器R1的域名为DN1,所在域的域内哈希函数为H2的条件下,路由器R1定期执行下述操作发布自己的域名:

步骤301:开始;

步骤302:路由器R1创建一个域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称和普通节点名称为空;路由器R1从每个下游接口发送域名发布消息,该域名发布消息的源地址为构建的域内地址,目的地址为空,负载为域名DN1;

步骤303:判断是接入节点还是交换机从上游接口接收到该域名发布消息,如果是接入节点则执行步骤305,否则执行步骤304;

步骤304:交换机从上游接口接收到该域名发布消息后,保存该域名发布消息负载中的域名DN1,然后从每个下游接口转发该域名发布消息,执行步骤303;

步骤305:接入节点从上游接口接收到该域名发布消息后,保存该域名发布消息负载中的域名DN1,然后将自己的子网名称加入到该域名发布消息负载中,从下游接口转发该域名发布消息;

步骤306:普通节点接收到域名发布消息后,保存该域名发布消息负载中的域名DN1以及所在子网的子网名称;

步骤307:结束。

图4为本发明所述的本地通信流程示意图。一个接入节点、交换机以及路由器各自保存一个聚合表,一个聚合表项包含源地址、目的地址和接口ID;在普通节点N1的普通节点名称为NN1,位于域D1中,域D1中的路由器为R1,路由器R1的域名为DN1,普通节点N1与接入节点AP1链路相连,接入节点AP1的子网名称为SN1,普通节点N2的普通节点名称为NN2,位于域D1中,与接入节点AP1链路相连,域间哈希函数为H1,域 D1的域内哈希函数为H2的条件下,普通节点N1通过下述过程实现与普通节点N2的通信:

步骤401:开始;

步骤402:普通节点N1创建自己的域内地址,该域内地址的域名为利用哈希函数H2计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称 SN1的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN1的哈希值;普通节点N1为普通节点N2创建域内地址,该域内地址的域名为利用哈希函数H2 计算得到的域名DN1的哈希值,子网名称为利用哈希函数H2计算得到的子网名称SN1 的哈希值,普通节点名称为利用哈希函数H2计算得到的普通节点名称NN2的哈希值;普通节点N1为普通节点N2创建域间地址,该域间地址的域名为利用哈希函数H1计算得到的域名DN1的哈希值,子网名称为利用哈希函数H1计算得到的子网名称SN1的哈希值,普通节点名称为利用哈希函数H1计算得到的普通节点名称NN2的哈希值;普通节点N1发送一个请求消息,该请求消息的源地址为自己的域内地址,目的地址为普通节点N2的域内地址,负载为普通节点N2的域间地址;

步骤403:接入节点AP1从下游接口接收到请求消息后查看聚合表;判断是否存在一个聚合表项,该聚合表项的源地址等于该请求消息的源地址,目的地址等于该请求消息的目的地址,如果是则执行步骤410,否则执行步骤404;

步骤404:从下游接口接收到请求消息的接入节点AP1创建

一种网络通信实现方法专利购买费用说明

专利买卖交易资料

Q:办理专利转让的流程及所需资料

A:专利权人变更需要办理著录项目变更手续,有代理机构的,变更手续应当由代理机构办理。

1:专利变更应当使用专利局统一制作的“著录项目变更申报书”提出。

2:按规定缴纳著录项目变更手续费。

3:同时提交相关证明文件原件。

4:专利权转移的,变更后的专利权人委托新专利代理机构的,应当提交变更后的全体专利申请人签字或者盖章的委托书。

Q:专利著录项目变更费用如何缴交

A:(1)直接到国家知识产权局受理大厅收费窗口缴纳,(2)通过代办处缴纳,(3)通过邮局或者银行汇款,更多缴纳方式

Q:专利转让变更,多久能出结果

A:著录项目变更请求书递交后,一般1-2个月左右就会收到通知,国家知识产权局会下达《转让手续合格通知书》。

动态评分

0.0

没有评分数据
没有评价数据
×

打开微信,点击底部的“发现”

使用“扫一扫”即可将网页分享至朋友圈

×
复制
用户中心
我的足迹
我的收藏

您的购物车还是空的,您可以

  • 微信公众号

    微信公众号
在线留言
返回顶部