一种稳定高效的网络数据通信方法技术

技术编号:15794801 阅读:224 留言:0更新日期:2017-07-10 09:57
本发明专利技术提供了一种稳定高效的网络数据通信方法,所述网络包括两个以上的移动设备和两个以上的数据路由器,数据路由器具有路由转发功能,数据路由器之间通过有线接口相连,数据路由器与移动设备之间通过无线接口通信,移动设备与数据路由器之间一跳可达;数据消费者通过本发明专利技术所提供的数据通信方法能够从距离最近的数据提供者以单播方式获取服务数据,缩短了获取服务数据的延迟和代价,提高了服务质量,本发明专利技术可应用于大数据获取等领域,具有广泛的应用前景。

【技术实现步骤摘要】
一种稳定高效的网络数据通信方法
本专利技术涉及一种数据通信方法,尤其涉及的是一种稳定高效的网络数据通信方法。
技术介绍
网络已经成为人类生活中不可缺少的一部分,它提供多种数据服务,因此降低数据通信延迟尤为重要。近年来,很多研究工作致力于网络的数据通信工作,以便使人们能够快速获取网络服务。随着移动网络技术的发展,网络的数据通信技术会进一步提高服务质量。目前,网络的数据通信延迟和代价都比较大,降低了网络服务性能。因此,如何降低网络的数据通信的延迟和代价成为近年来研究的热点问题。
技术实现思路
专利技术目的:本专利技术所要解决的技术问题是针对现有技术的不足,提供一种稳定高效的网络数据通信方法。技术方案:本专利技术公开了一种稳定高效的网络数据通信方法,所述网络包括两个以上的移动设备和两个以上的数据路由器,数据路由器具有路由转发功能,数据路由器之间通过有线接口相连,数据路由器与移动设备之间通过无线接口通信,移动设备与数据路由器之间一跳可达;一种类型的数据由一个数据ID唯一定义;数据消费者为有权限获取一种类型数据的移动设备,数据提供者为有权提供一种类型数据的移动设备;移动设备不具有路由转发功能;移动设备和数据路由器之间、移动设备与移动设备之间、以及数据路由器之间通过交换消息实现通信,消息类型如下表所示:消息类型域值为5和6的消息由数据ID集合域、消息类型域以及负载构成;消息类型域值为0,1,2,3,4,7的消息由数据ID域、消息类型域以及负载构成;数据路由器维护一个路由表,一个路由表项由接口域、数据ID域、队列域、路径域以及生命周期域构成,其中,接口域指向到达数据提供者的下一跳,数据ID域值为数据消费者请求的数据的数据ID,队列域值为当前待处理的获取数据消息的个数,路径域值是保存路由表的数据路由器与数据提供者之间的距离;在数据C1由数据ID定义,数据C1的数据ID域值为CID1,数据提供者P1通过自己的接口k与本地数据路由器相连的条件下,数据提供者P1产生数据C1后,执行下述过程建立路由表:步骤101:开始;步骤102:数据提供者P1随机产生一个序列号,同时构建路由创建消息,该路由创建消息的数据ID域值为CID1,消息类型域值为1,负载为序列号和路径参数;数据提供者P1通过自己的接口k发送该路由创建消息;步骤103:数据路由器从自己的接口j接收到路由创建消息后,查看路由表判断是否存在数据ID域值为CID1且接口域值为j的表项,如果存在,执行步骤106,否则执行步骤104;步骤104:数据路由器将路由创建消息中的路径域值递增1,然后创建一个路由表项,该路由表项的数据ID域值为CID1,接口域值为j,队列域值为0,路径域值为路由创建消息中的路径域值,生命周期为最大生命周期值;如果数据路由器除了接口j以外所有接口都不与其他数据路由器相连,那么执行步骤110,否则执行步骤105;步骤105:数据路由器从每个符合条件1和条件2的接口转发接收到的路由创建消息,执行步骤103;条件1:该接口与数据路由器相连;条件2:数据路由器没有从该接口接收到具有相同序列号的路由创建消息;步骤106:数据路由器查看路由表判断是否存在数据ID域值为CID1,接口域值为j且路径值大于路由创建消息中的路径值的表项,如果存在,执行步骤107,否则执行步骤109;步骤107:数据路由器将路由创建消息中的路径域值递增1,然后更新数据ID域值为CID1,接口域值为j且路径值大于路由创建消息中的路径值的路由表项,即用路由创建消息中的路径值更新该表项中的路径值,同时将该路由表项的生命周期设置为最大值,数据路由器判断是否从每个与其他数据路由器相连的接口都接收到了具有相同序列号的路由创建消息,如果是,则执行步骤110,否则执行步骤108;步骤108:数据路由器从每个符合条件1和条件2的接口转发接收到的路由创建消息,执行步骤103;步骤109:数据路由器丢弃接收到的路由创建消息;步骤110:结束;上述过程能够快速建立路由表以至于数据消费者能够快速正确地从数据提供者获取数据。本专利技术所述方法中,其特征在于,在数据路由器维护一个请求待处理表,一个请求待处理表项由接口域和数据ID域构成,接口域指向到达数据消费者的下一跳,数据ID域值为该数据消费者请求的数据ID;数据C1由数据IDCID1定义,数据消费者U1通过接口w与本地数据路由器R1相连的情况下,数据消费者U1通过下述过程获取数据C1:步骤201:开始;步骤202:数据消费者U1构建一个获取数据消息,数据ID域值为CID1,消息类型为2,负载为空;数据消费者U1从自己的接口w发送该获取数据消息;步骤203:数据路由器R1从自己的接口w1接收到获取数据消息后,判断请求待处理表中是否存在数据ID域值为CID1且接口域值为w1的请求待处理表项,如果是,执行步骤221,否则执行步骤204;步骤204:数据路由器R1判断请求待处理表中是否存在数据ID域值为CID1的请求待处理表项,如果是,执行步骤205,否则执行步骤206;步骤205:数据路由器R1创建一个请求待处理表项,该请求待处理表项的数据ID域值为CID1,接口域值为w1,执行步骤221;步骤206:数据路由器R1创建一个请求待处理表项,该请求待处理表项的数据ID域值为CID1,接口域值为w1,然后数据路由器R1查看是否存在数据ID域值为CID1且队列域值小于最大预定队列域值的路由表项,最大预定队列域值可以设置为20,如果存在,则执行步骤207,否则执行步骤228;步骤207:对于每一个数据ID域值为CID1且队列域值小于最大预定队列域值的路由表项,数据路由器R1根据公式(1)计算该表项的优先级R,然后选择优先级最大的路由表项,从该路由表项的接口域值转发该获取数据消息,同时将该路由表项的队列域值递增1;R=1/(q1×U+h1×O);q1>0,h1>0(1)其中,q1和h1为调节参数,U为该表项的队列域值,q1为队列系数,O为该表项的路径域值,h1为路径系数,q1和h1一般为小于1的正数,如果用户要求较低的数据通信延迟,那么h1>q1,如果用户要求低丢包率,则q1>h1,如果用户要求低通信延迟和低丢包率,则q1=h1;步骤208:数据路由器或者数据提供者从接口w2接收到获取数据消息,如果是数据提供者接收到获取数据消息,则执行步骤209,否则执行步骤212;步骤209:判断数据提供者是否能提供数据C1,如果能,则执行步骤210,否则执行步骤211;步骤210:数据提供者创建一个返回数据消息,该返回数据消息的数据ID域值为CID1,消息类型为3,负载为数据C1,然后数据提供者从自己接口w2发送该返回数据消息,执行步骤221;步骤211:数据提供者丢弃接收到的获取数据消息,执行步骤221;步骤212:数据路由器判断请求待处理表中是否存在数据ID域值为CID1且接口域值为w2的请求待处理表项,如果是,执行步骤221,否则执行步骤213;步骤213:数据路由器判断请求待处理表中是否存在数据ID域值为CID1的请求待处理表项,如果是,执行步骤214,否则执行步骤215;步骤214:数据路由器创建一个请求待处理表项,该请求待处理表项的数据ID域值为CID1,接口域值为w本文档来自技高网...
一种稳定高效的网络数据通信方法

【技术保护点】
一种稳定高效的网络数据通信方法,其特征在于,所述网络包括两个以上的移动设备和两个以上的数据路由器,数据路由器具有路由转发功能,数据路由器之间通过有线接口相连,数据路由器与移动设备之间通过无线接口通信,移动设备与数据路由器之间一跳可达;一种类型的数据由一个数据ID唯一定义;数据消费者为有权限获取一种类型数据的移动设备,数据提供者为有权提供一种类型数据的移动设备;移动设备不具有路由转发功能;移动设备和数据路由器之间、移动设备与移动设备之间、以及数据路由器之间通过交换消息实现通信,消息类型如下表所示:

【技术特征摘要】
1.一种稳定高效的网络数据通信方法,其特征在于,所述网络包括两个以上的移动设备和两个以上的数据路由器,数据路由器具有路由转发功能,数据路由器之间通过有线接口相连,数据路由器与移动设备之间通过无线接口通信,移动设备与数据路由器之间一跳可达;一种类型的数据由一个数据ID唯一定义;数据消费者为有权限获取一种类型数据的移动设备,数据提供者为有权提供一种类型数据的移动设备;移动设备不具有路由转发功能;移动设备和数据路由器之间、移动设备与移动设备之间、以及数据路由器之间通过交换消息实现通信,消息类型如下表所示:消息类型消息类型域值信标消息0路由创建消息1获取数据消息2返回数据消息3反转消息4不可达消息5可达消息6更新消息7消息类型域值为5和6的消息由数据ID集合域、消息类型域以及负载构成;消息类型域值为0,1,2,3,4,7的消息由数据ID域、消息类型域以及负载构成;数据路由器维护一个路由表,一个路由表项由接口域、数据ID域、队列域、路径域以及生命周期域构成,其中,接口域指向到达数据提供者的下一跳,数据ID域值为数据消费者请求的数据的数据ID,队列域值为当前待处理的获取数据消息的个数,路径域值是保存路由表的数据路由器与数据提供者之间的距离;在数据C1由数据ID定义,数据C1的数据ID域值为CID1,数据提供者P1通过自己的接口k与本地数据路由器相连的条件下,数据提供者P1产生数据C1后,执行下述过程建立路由表:步骤101:开始;步骤102:数据提供者P1随机产生一个序列号,同时构建路由创建消息,该路由创建消息的数据ID域值为CID1,消息类型域值为1,负载为序列号和路径参数;数据提供者P1通过自己的接口k发送该路由创建消息;步骤103:数据路由器从自己的接口j接收到路由创建消息后,查看路由表判断是否存在数据ID域值为CID1且接口域值为j的表项,如果存在,执行步骤106,否则执行步骤104;步骤104:接收到路由创建消息的数据路由器将路由创建消息中的路径域值递增1,然后创建一个路由表项,该路由表项的数据ID域值为CID1,接口域值为j,队列域值为0,路径域值为路由创建消息中的路径域值,生命周期为最大生命周期值;如果数据路由器除了接口j以外所有接口都不与其他数据路由器相连,那么执行步骤110,否则执行步骤105;步骤105:接收到路由创建消息的数据路由器从每个符合条件1和条件2的接口转发接收到的路由创建消息,执行步骤103;条件1:该接口与数据路由器相连;条件2:数据路由器没有从该接口接收到具有相同序列号的路由创建消息;步骤106:接收到路由创建消息的数据路由器查看路由表判断是否存在数据ID域值为CID1,接口域值为j且路径值大于路由创建消息中的路径值的表项,如果存在,执行步骤107,否则执行步骤109;步骤107:接收到路由创建消息的数据路由器将路由创建消息中的路径域值递增1,然后更新数据ID域值为CID1,接口域值为j且路径值大于路由创建消息中的路径值的路由表项,即用路由创建消息中的路径值更新该表项中的路径值,同时将该路由表项的生命周期设置为最大值,数据路由器判断是否从每个与其他数据路由器相连的接口都接收到了具有相同序列号的路由创建消息,如果是,则执行步骤110,否则执行步骤108;步骤108:接收到路由创建消息的数据路由器从每个符合条件1和条件2的接口转发接收到的路由创建消息,执行步骤103;步骤109:接收到路由创建消息的数据路由器丢弃接收到的路由创建消息;步骤110:结束。2.根据权利要求1所述的一种稳定高效的网络数据通信方法,其特征在于,在数据路由器维护一个请求待处理表,一个请求待处理表项由接口域和数据ID域构成,接口域指向到达数据消费者的下一跳,数据ID域值为该数据消费者请求的数据ID;数据C1由数据IDCID1定义,数据消费者U1通过接口w与本地数据路由器R1相连的情况下,数据消费者U1通过下述过程获取数据C1:步骤201:开始;步骤202:数据消费者U1构建一个获取数据消息,数据ID域值为CID1,消息类型为2,负载为空;数据消费者U1从自己的接口w发送该获取数据消息;步骤203:数据路由器R1从自己的接口w1接收到获取数据消息后,判断请求待处理表中是否存在数据ID域值为CID1且接口域值为w1的请求待处理表项,如果是,执行步骤221,否则执行步骤204;步骤204:数据路由器R1判断请求待处理表中是否存在数据ID域值为CID1的请求待处理表项,如果是,执行步骤205,否则执行步骤206;步骤205:数据路由器R1创建一个请求待处理表项,该请求待处理表项的数据ID域值为CID1,接口域值为w1,执行步骤221;步骤206:数据路由器R1创建一个请求待处理表项,该请求待处理表项的数据ID域值为CID1,接口域值为w1,然后数据路由器R1查看是否存在数据ID域值为CID1且队列域值小于最大预定队列域值的路由表项,如果存在,则执行步骤207,否则执行步骤228;步骤207:对于每一个数据ID域值为CID1且队列域值小于最大预定队列域值的路由表项,数据路由器R1根据公式(1)计算该表项的优先级R,然后选择优先级最大的路由表项,从该路由表项的接口域值转发该获取数据消息,同时将该路由表项的队列域值递增1;R=1/(q1×U+h1×O);q1>0,h1>0(1)其中,q1和h1为调节参数,U为该表项的队列域值,q1为队列系数,O为该表项的路径域值,h1为路径系数;步骤208:数据路由器或者数据提供者从接口w2接收到获取数据消息,如果是数据提供者接收到获取数据消息,则执行步骤209,否则执行步骤212;步骤209:判断接收到获取数据消息的数据提供者是否能提供数据C1,如果能,则执行步骤210,否则执行步骤211;步骤210:接收到获取数据消息的数据提供者创建一个返回数据消息,该返回数据消息的数据ID域值为CID1,消息类型为3,负载为数据C1,然后数据提供者从自己接口w2发送该返回数据消息,执行步骤221;步骤211:接收到获取数据消息的数据提供者丢弃接收到的获取数据消息,执行步骤221;步骤212:接收到获取数据消息的数据路由器判断请求待处理表中是否存在数据ID域值为CID1且接口域值为w2的请求待处理表项,如果是,执行步骤221,否则执行步骤213;步骤213:接收到获取数据消息的数据路由器判断请求待处理表中是否存在数据ID域值为CID1的请求待处理表项,如果是,执行步骤214,否则执行步骤215;步骤214:接收到获取数据消息的数据路由器创建一个请求待处理表项,该请求待处理表项的数据ID域值为CID1,接口域值为w2,执行步骤221;步骤215:接收到获取数据消息的数据路由器创建一个请求待处理表项,该请求待处理表项的数据ID域值为CID1,接口域值为w2,数据路由器查看是否存在数据ID域值为CID1且队列域值小于最大预定队列域值的路由表项,如果存在,则执行步骤216,否则执行步骤217;步骤216:对于每一个数据ID域值为CID1且队列域值小于最大预定队列域值的路由表项,接收到获取数据消息的数据路由器根据公式(1)计算该表项的优先级R,然后选择优先级最大地路由表项,从该路由表项的接口域值转发该获取数据消息,同时将该路由表项的队列域值递增1,执行步骤208;步骤217:接收到获取数据消息的数据路由器创建一个反转消息,该反转消息的数据ID域值为CID1,消息类型为4,负载为空,然后数据路由器查看请求待处理表,选择数据ID域值为CID1的请求待处理表项,针对每个选择的请求待处理表项,数据路由器从该请求待处理表项的接口域值转发反转消息,最后删除数据ID域值为CID1的请求待处理表项;步骤218:数据路由器从接口w3接收到反转消息后,查看路由表判断是否存在满足条件3的路由表项,如果存在,则执行步骤219,否则执行步骤220;条件3:数据ID域值为CID1,队列域值小于最大队列域值,接口域值既不等于接口w3,也不等于任何一个数据ID域值为CID1的请求待处理表项中的接口域值;步骤219:对于每一个满足条件3的路由表项,接收到反转消息的数据路由器根据公式(1)计算该表项的优先级R,然后选择优先级最大的路由表项,从该路由表项的接口域值转发该获取数据消息,同时将该表项的队列域值递增1,执行步骤208;步骤220:判断接收到反转消息的数据路由器是否为数据路由器R1,如果是,执行步骤228,否则执行步骤217;步骤221:判断数据路由器是否在预...

【专利技术属性】
技术研发人员:王晓喃
申请(专利权)人:常熟理工学院
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1