专利摘要
本发明公开了一种城市车载网的路由方法,所述城市车载网包括接入路由器、接入节点和位于道路上的车辆节点,车辆节点分为骨干节点和普通节点两类:骨干节点执行路由转发功能,它保存到达所在车域距离最近的接入节点的路由信息,并通过距离最近的接入节点实现与互联网的通信;普通节点不执行路由转发功能,它通过一跳范围内的骨干节点实现与互联网的通信。本发明所提供的路由方法,可保持移动过程中通信的连续性,缩短路由延迟,降低数据包丢失率,从而提高了车载网的服务质量,本发明可应用于道路路况监测、车辆管理等领域,具有广泛的应用前景,因此,本技术具有很高的推广价值。
权利要求
1.一种城市车载网的路由方法,其特征在于,所述城市车载网包括接入路由器、接入节点和位于道路上的车辆节点;接入路由器与互联网的骨干网相连,接入节点与一个以上的接入路由器连接;将与一个接入路由器相连的所有接入节点围成一个封闭区域作为车域;
将车辆节点分为骨干节点和普通节点两类:骨干节点执行路由转发功能,它保存到达所在车域距离最近的接入节点的路由信息,并通过距离最近的接入节点实现与互联网的通信;普通节点不执行路由转发功能,它通过一跳范围内的骨干节点实现与互联网的通信;
车辆节点的IPv6地址包括三个部分:第一部分是车域ID,它是全局路由前缀,唯一标识一个车域,一个车域中所有接入节点的车域ID都相同,从一个车域内获取的IPv6地址的车域ID都相同,其值等于相同车域中接入路由器的车域ID;第二部分为接入节点ID,它唯一标识车域内的一个接入节点,从一个接入节点获取的地址的接入节点ID都相同,其值等于该接入节点的接入节点ID;第三部分为车辆ID,它唯一标识一个车域中的车辆;接入路由器和接入节点的IPv6地址预先设置,接入路由器的接入节点ID和车辆ID为0,接入节点的车辆ID为0。
2.根据权利要求1所述的城市车载网路由方法,其特征在于,当车辆节点加入城市车载网时,它行驶到接入节点一跳范围内后,从该接入节点获取家乡地址;获取家乡地址后,车辆节点在车域内行驶时,它的家乡地址和转交地址保持不变;当车辆节点进入一个新车域时,它从同时属于新车域和原来车域的接入节点获取转交地址;
接入节点分别属于一个以上路域,在为车辆节点配置地址之前,接入节点首先判断车辆节点进入的下一个车域,然后为车辆节点分配下一个车域内中具有全球唯一性的IPv6地址;对于每个所属车域,接入节点保存一个车辆ID表,用于记录下已经分配的车辆ID;
车辆节点从接入节点获取IPv6地址的过程如下:
步骤201:开始;
步骤202:车辆节点向接入节点发送地址请求消息;
步骤203:接入节点收到地址请求消息后,向车辆节点发送刷新消息;
步骤204:车辆节点收到刷新消息后,定期向接入节点发送刷新响应消息;
步骤205:接入节点通过测量刷新响应消息来定位车辆节点的相对位置,并判断车辆节点进入的下一个路域;
步骤206:接入节点采用随机函数随机产生一个车辆ID;
步骤207:接入节点查询下一个路域对应的车辆ID表来判断生成的车辆ID是否已经分配,如果是,返回步骤206,否则进行步骤208;
步骤208:接入节点将自己的车域ID、接入节点ID与生成的车辆ID结合产生新的转交地址,并将其封装到地址响应消息中发送给车辆节点;
步骤209:车辆节点是否已经配置家乡地址,如果是,进行步骤211,否则进行步骤210;
步骤210:车辆节点收到地址响应消息后,将消息中的地址作为自己的家乡地址,进行步骤212;
步骤211:车辆节点收到地址响应消息后,将消息中的地址作为自己的转交地址;
步骤212:结束;
如果接入节点属于K个车域且第k车域所定义的角度闭区间为[αk,αk+1],K≥k≥1,在时刻T1,车辆节点进入接入节点的通信范围内,接入节点通过测量车辆节点发送的刷新响应消息的强度判断出与车辆节点的距离;当距离小于道路宽度时,车辆节点即将进入下一个路域,接入节点用定位算法测量车辆节点发送的刷新响应消息判断与车辆节点的相对角度,接入节点通过相对角度以及每个车域所在的角度闭区间,判断车辆节点进入的下一个路域。
3.根据权利要求2所述的城市车载网路由方法,其特征在于,每个车辆节点都配有全球定位系统,用于获取自己的地址坐标,城市车载网内所有的时钟同步;令车辆节点Vi的地理坐标为(xi,yi),车辆节点Vj的地理坐标为(xj,yj),车辆节点Vi的速度vi,车辆节点Vj的速度为vj,车辆节点Vi的移动角度为θi,车辆节点Vj的移动角度为θj,车辆节点的传输半径为r,那么,车辆节点Vi和Vj的链路连接时间Tij为:
其中,
a=vi cosθi-vj cosθj,
b=xi-xj,
c=vi sinθi-vj sinθj,
d=yi-yj,
接入节点属于K个车域,在为第k车域的第j条道路建立路由时,1≤k≤K,接入节点选择的下一跳邻居车辆节点的移动角度θ符合下述条件:
αk≤βj≤θ≤βj+1≤αk+1,
其中,第k车域的角度范围为[αk,αk+1],
第k车域的第j条道路的角度范围为[βj,βj+1]。
4.根据权利要求3所述的城市车载网的路由方法,其特征在于,车辆节点定期发送广播消息,消息负载包括地址位置坐标,移动速度和移动角度;车辆节点通过接收邻居车辆节点广播的消息获取与邻居车辆节点的链路连接时间;
在车域中,车辆节点建立到达最近接入节点AP1的路由过程如下:
步骤301:开始;
步骤302:接入节点AP1选择具有最大链路连接时间的邻居普通节点,并向其发送路由建立消息,消息负载为接入节点AP1的地址,值为0的跳数参数,以及设置为最大值的链路连接时间;
步骤303:邻居普通节点收到路由建立消息后,判断其一跳范围内是否有骨干节点,如果是,进行步骤305,否则进行步骤304;
步骤304:邻居普通节点将接入节点AP1作为距离最近的接入节点,保存到达接入节点AP1的跳数参数以及转发路由建立消息的骨干节点的地址,将自己标记为骨干节点,然后选择最大链路连接时间的下一跳邻居普通节点,向其转发路由建立消息,其中消息负载中的跳数递增1;链路连接时间为路由建立消息中的链路连接时间,与自己和下一跳邻居普通节点的链路连接时间之间的最小值,进行步骤303;
步骤305:邻居普通节点丢弃路由建立消息并向转发路由建立消息的骨干节点返回路由响应消息,消息负载为到达接入节点AP1路径的链路连接时间;
步骤306:骨干节点收到路由响应消息后,记录下到达接入节点AP1路径的链路连接时间,然后将路由响应消息发送给到达接入节点AP1的下一跳骨干节点,路由响应消息最终达到接入节点AP1;
步骤307:接入节点AP1收到路由响应消息后,记录下对应车域的路由链路连接时间;
步骤308:结束;
路由建立完成后,接入节点AP1在链路连接时间之后重新建立路由以维护路由的有效性;骨干节点的广播消息负载中增加如下数据:接入节点AP1的地址、到达接入节点AP1的路径长度以及到达接入节点AP1的路径的链路连接时间。
5.根据权利要求4所述的城市车载网的路由方法,其特征在于,骨干节点与互联网节点通信的时候,按照建立的路由路径将数据包发送到距离最近的接入节点,然后由接入节点发送到本车域的接入路由器,接入路由器记录骨干节点与距离最近的接入节点的关联关系,并将数据包发送到互联网节点;
互联网节点返回的数据包首先到达骨干节点所在车域的接入路由器,接入路由器根据记录的骨干节点与接入节点的关联关系将返回的数据包发送到与骨干节点关联的接入节点,接入节点根据数据包目的地址所在车域的路由路径将数据包发送到下一跳骨干节点,最终数据包到达目的骨干节点;
普通节点与互联网节点通信时,从邻居骨干节点中选择具有最大链路连接时间的骨干节点B,然后将数据包发送到骨干节点B,骨干节点B收到数据包后,记录普通节点与自己的关联关系,同时将数据包通过最近接入节点和所在车域的接入路由器发送给互联网节点;
互联网节点返回的数据包到达最近接入节点后,最近接入节点根据数据包目的地址所在车域的路由信息,将数据包发送到下一跳骨干节点,下一跳骨干节点检测自己是否与普通节点具有关联关系,如果没有,继续按照路由信息将数据包发送到下一跳骨干节点,最终到达与普通节点有关联关系的骨干节点B,然后骨干节点B将数据包发送到普通节点。
6.根据权利要求5所述的城市车载网的路由方法,其特征在于,普通节点与骨干节点设有关联关系,普通节点检测到即将离开骨干节点的通信范围,那么从邻居骨干节点中选择具有最大链路连接时间的骨干节点作为新的关联节点,并向新的关联节点发送关联消息,消息负载为原来关联节点距离最近的接入节点的地址,新的关联节点收到关联消息后,增加与普通节点的关联关系;
如果新的关联节点的最近接入节点与原来关联节点的最近接入节点不同但是属于一个车域,那么新的关联节点向所在车域的接入路由器发送更新消息,消息负载为普通节点的地址和新的关联节点的最近接入节点的地址;接入路由器收到更新消息后,将普通节点的最近接入节点的地址更新为更新消息中的新的关联节点的最近接入节点的地址;
路由信息更新之后,目的地址为普通节点的数据包到达所在车域的接入路由器后,接入路由器将其转发到新关联节点的最近接入节点,最近接入节点根据所在车域路径信息将数据包发送到最新骨干节点,然后由最新骨干节点将数据包发送到普通节点;
普通节点脱离原来关联节点的通信范围后,自动删除关联消息。
7.根据权利要求6所述的城市车载网的路由方法,其特征在于,接入节点的路径链路连接时间为0时,重新建立路由;
重新建立路由后,普通节点C1变为骨干节点C1,如果骨干节点C1原来最近的接入节点AP1与现在最近的接入节点AP2不同且接入节点AP1与接入节点AP2属于一个车域,那么骨干节点C1向所在车域的接入路由器AR1发送更新消息,消息负载为接入节点AP2的地址;接入路由器AR1收到更新消息后,将骨干节点C1的关联接入节点AP1的地址更新为接入节点AP2的地址;
目的地址为骨干节点C1的数据包到达接入路由器AR1后,接入路由器AR1将其转发到接入节点AP2,接入节点AP2根据所在车域路径将数据发送到骨干节点C1;
重新建立路由后,普通节点C2原来关联的骨干节点转变为普通节点,那么普通节点C2从邻居骨干节点中选择具有最大链路连接时间的骨干节点B2作为新的关联节点,并向骨干节点B2发送关联消息,消息负载为原来关联节点的距离最近的接入节点AP3的地址;骨干节点B2收到关联消息后,增加与普通节点C2的关联关系;如果骨干节点B2的最近接入节点AP4与接入节点AP3同属于一个车域,那么骨干节点B2向所在车域的接入路由器AR2发送更新消息,消息负载为普通节点C2和接入节点AP4的地址;接入路由器AR2收到更新消息后,将普通节点C2的关联接入节点的地址更新为接入节点AP4的地址;
目的地址为普通节点C2的数据到达接入路由器AR2后,接入路由器AR2将其转发到接入节点AP4,接入节点AP4根据所在车域路径将数据发送到骨干节点B2,骨干节点B2将数据转发给普通节点C2;
重新建立路由后,骨干节点B3转变为普通节点B3,普通节点B3从邻居骨干节点中选择具有最大链路连接时间的骨干节点B4作为关联节点,并向骨干节点B4发送关联节点消息,消息负载为原来距离最近的接入节点AP5的地址;骨干节点B4收到关联消息后,增加与普通节点B3的关联关系;如果骨干节点B4的最近接入节点是与接入节点AP5同属于一个车域接的入节点AP6,那么骨干节点B4向所在车域的接入路由器AR3发送更新消息,消息负载为普通节点B3和接入节点AP6的地址;接入路由器AR3收到更新消息后,将普通节点B3的关联接入节点的地址更新为接入节点AP6的地址;
目的地址为普通节点B3的数据到达接入路由器AR3后,接入路由器AR3将其转发到接入节点AP6,接入节点AP6根据所在车域路径将数据发送到骨干节点B4,最后骨干节点B4将数据转发给普通节点B3。
8.根据权利要求7所述的城市车载网的路由方法,其特征在于,车辆节点V通过接入节点AP从车域VD1进入车域VD2的过程中,首先从接入节点AP获取新的转交地址并进行新地址的绑定操作,同时将自己标记为普通节点;车辆节点V在车域VD2的邻居骨干节点中选择具有最大链路连接时间的骨干节点B5作为关联节点,并向骨干节点B5发送关联消息,消息负载为接入节点AP在车域VD1的地址;骨干节点B5收到关联消息后,增加与车辆V的关联关系,同时通过消息负载的地址值判断出车辆节点V为新进入车域VD2的普通节点,向车域VD2所在车域的接入路由器AR7发送更新消息,消息负载为车辆节点V新的转交地址和接入节点AP在车域VD2的地址;接入路由器AR7收到更新消息后,记录下车辆节点V与接入节点AP的关联关系;
新地址绑定后,目的地址为车辆节点V新关联地址的数据到达接入路由器AR7后,接入路由器AR7将其转发到接入节点AP,接入节点AP根据所在车域路径将数据发送到骨干节点B5,最后骨干节点B5将数据转发给车辆节点V;
车域VD1中的接入路由器AR8中的车辆节点V的关联关系在有效时间为0后自动删除。
说明书
技术领域
本发明涉及一种路由方法,尤其涉及的是一种城市车载网的路由方法。
背景技术
车载自组网由于其实用性已经受到广泛关注,成为研究的热点。车载自组网的主要特点之一是移动速度快,因此,如何在动态的车载网中构建稳定的路由成为目前研究的热点之一。
目前现有的路由协议很难应用到车载网络中,主要原因分析如下:
1)现有路由协议中,移动节点需要发送和接收大量的控制信息来建立路由,因此,路由代价较大,路由延迟较长。
2)现有路由协议的丢包率较大,由于丢包率而引起的路由中断带来了额外的路由开销,从而加剧了丢包率。
因此需要针对车载网提出一种代价低,延迟短的载网络路由方法。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种城市车载网的路由方法。
技术方案:本发明公开了一种城市车载网的路由方法,所述城市车载网包括接入路由器、接入节点和位于道路上的车辆节点;接入路由器与互联网的骨干网相连,接入节点与一个以上的接入路由器连接;将与一个接入路由器相连的所有接入节点围成一个封闭区域作为车域;
将车辆节点分为骨干节点和普通节点两类:骨干节点执行路由转发功能,它保存到达所在车域距离最近的接入节点的路由信息,并通过距离最近的接入节点实现与互联网的通信;普通节点不执行路由转发功能,它通过一跳范围内的骨干节点实现与互联网的通信;
车辆节点的IPv6地址包括三个部分:第一部分是车域ID,它是全局路由前缀,唯一标识一个车域,一个车域中所有接入节点的车域ID都相同,从一个车域内获取的IPv6地址的车域ID都相同,其值等于相同车域中接入路由器的车域ID;第二部分为接入节点ID,它唯一标识车域内的一个接入节点,从一个接入节点获取的地址的接入节点ID都相同,其值等于该接入节点的接入节点ID;第三部分为车辆ID,它唯一标识一个车域中的车辆;接入路由器和接入节点的IPv6地址预先设置,接入路由器的接入节点ID和车辆ID为0,接入节点的车辆ID为0。例如,接入路由器的IPv6地址为3E01:1:1:1::0,接入节点的IPv6地址为3E01:1:1:1:1::0。
上述车载网中,只有骨干节点具有路由功能,因此路由骨干网节点数量很少,从而降低了路由代价和路由延迟。
本发明所述方法中,当车辆节点加入城市车载网时,它行驶到接入节点一跳范围内后,从该接入节点获取家乡地址;获取家乡地址后,车辆节点在车域内行驶时,它的家乡地址和转交地址保持不变;当车辆节点进入一个新车域时,它从同时属于新车域和原来车域的接入节点获取转交地址;
接入节点分别属于一个以上路域,在为车辆节点配置地址之前,接入节点首先判断车辆节点进入的下一个车域,然后为车辆节点分配下一个车域内中具有全球唯一性的IPv6地址;对于每个所属车域,接入节点保存一个车辆ID表,用于记录下已经分配的车辆ID;
车辆节点从接入节点获取IPv6地址的过程如下:
步骤201:开始;
步骤202:车辆节点向接入节点发送地址请求消息;
步骤203:接入节点收到地址请求消息后,向车辆节点发送刷新消息;
步骤204:车辆节点收到刷新消息后,定期向接入节点发送刷新响应消息;
步骤205:接入节点通过测量刷新响应消息来定位车辆节点的相对位置,并判断车辆节点进入的下一个路域;
步骤206:接入节点采用随机函数随机产生一个车辆ID;
步骤207:接入节点查询下一个路域对应的车辆ID表来判断生成的车辆ID是否已经分配,如果是,返回步骤206,否则进行步骤208;
步骤208:接入节点将自己的车域ID、接入节点ID与生成的车辆ID结合产生新的转交地址,并将其封装到地址响应消息中发送给车辆节点;
步骤209:车辆节点是否已经配置家乡地址,如果是,进行步骤211,否则进行步骤210;
步骤210:车辆节点收到地址响应消息后,将消息中的地址作为自己的家乡地址,进行步骤212;
步骤211:车辆节点收到地址响应消息后,将消息中的地址作为自己的转交地址;
步骤212:结束;
如果接入节点属于K个车域且第k车域所定义的角度闭区间为[αk,αk+1],K≥k≥1。例如接入节点属于3个车域,每个车域分别由角度闭区间[1,120],[121,240]以及[241,360]来定义。在时刻T1,车辆节点进入接入节点的通信范围内,接入节点通过测量车辆节点发送的刷新响应消息的强度判断出与车辆节点的距离;当距离小于道路宽度时,车辆节点即将进入下一个路域,接入节点用定位算法(例如Received signal strength indicator和Angle ofarrival定位算法)测量车辆节点发送的刷新响应消息判断与车辆节点的相对角度,接入节点通过相对角度以及每个车域所在的角度闭区间,判断车辆节点进入的下一个路域。
通过上述算法,车辆节点进入一个新的车域时能够获取新的转交地址,从而保证通信的连续性和路由的正确性。
本发明所述方法中,每个车辆节点都配有全球定位系统,用于获取自己的地址坐标,城市车载网内所有的时钟同步;令车辆节点Vi的地理坐标为(xi,yi),车辆节点Vj的地理坐标为(xj,yj),车辆节点Vi的速度vi,车辆节点Vj的速度为vj,车辆节点Vi的移动角度为θi,车辆节点Vj的移动角度为θj,车辆节点的传输半径为r,那么,车辆节点Vi和Vj的链路连接时间Tij为:
其中,
a=vi cosθi-vj cosθj,
b=xi-xj,
c=vi sinθi-vj sinθj,
d=yi-yj,
接入节点属于K个车域,在为第k车域的第j条道路建立路由时,1≤k≤K,接入节点选择的下一跳邻居车辆节点的移动角度θ符合下述条件:
αk≤βj≤θ≤βj+1≤αk+1’
其中,第k车域的角度范围为[αk,αk+1],
第k车域的第j条道路的角度范围为[βj,βj+1]。
本发明所述方法中,车辆节点定期发送广播消息,消息负载包括地址位置坐标,移动速度和移动角度;车辆节点通过接收邻居车辆节点广播的消息获取与邻居车辆节点的链路连接时间;
在车域中,车辆节点建立到达最近接入节点AP1的路由过程如下:
步骤301:开始;
步骤302:接入节点AP1选择具有最大链路连接时间的邻居普通节点,并向其发送路由建立消息,消息负载为接入节点AP1的地址,值为0的跳数参数,以及设置为最大值的链路连接时间;
步骤303:邻居普通节点收到路由建立消息后,判断其一跳范围内是否有骨干节点,如果是,进行步骤305,否则进行步骤304;
步骤304:邻居普通节点将接入节点AP1作为距离最近的接入节点,保存到达接入节点AP1的跳数参数以及转发路由建立消息的骨干节点的地址,将自己标记为骨干节点,然后选择最大链路连接时间的下一跳邻居普通节点,向其转发路由建立消息,其中消息负载中的跳数递增1;链路连接时间为路由建立消息中的链路连接时间,与自己和下一跳邻居普通节点的链路连接时间之间的最小值,进行步骤303;
步骤305:邻居普通节点丢弃路由建立消息并向转发路由建立消息的骨干节点返回路由响应消息,消息负载为到达接入节点AP1路径的链路连接时间;
步骤306:骨干节点收到路由响应消息后,记录下到达接入节点AP1路径的链路连接时间,然后将路由响应消息发送给到达接入节点AP1的下一跳骨干节点,路由响应消息最终达到接入节点AP1;
步骤307:接入节点AP1收到路由响应消息后,记录下对应车域的路由链路连接时间;
步骤308:结束;
路由建立完成后,接入节点AP1在链路连接时间之后重新建立路由以维护路由的有效性;骨干节点的广播消息负载中增加如下数据:接入节点AP1的地址、到达接入节点AP1的路径长度以及到达接入节点AP1的路径的链路连接时间。
上述算法采用链路连接时间作为度量算法来建立路由,从而获得了链路连接时间相对较长的路由路径,增强了路由稳定性,也避免了由于路由中断而引起的路由重建,因此降低了丢包率,保证了通信质量。
本发明所述方法中,骨干节点与互联网节点通信的时候,按照建立的路由路径将数据包发送到距离最近的接入节点,然后由接入节点发送到本车域的接入路由器,接入路由器记录骨干节点与距离最近的接入节点的关联关系,并将数据包发送到互联网节点;
互联网节点返回的数据包首先到达骨干节点所在车域的接入路由器,接入路由器根据记录的骨干节点与接入节点的关联关系将返回的数据包发送到与骨干节点关联的接入节点,接入节点根据数据包目的地址所在车域的路由路径将数据包发送到下一跳骨干节点,最终数据包到达目的骨干节点;
普通节点与互联网节点通信时,从邻居骨干节点中选择具有最大链路连接时间的骨干节点B,然后将数据包发送到骨干节点B,骨干节点B收到数据包后,记录普通节点与自己的关联关系,同时将数据包通过最近接入节点和所在车域的接入路由器发送给互联网节点;
互联网节点返回的数据包到达最近接入节点后,最近接入节点根据数据包目的地址所在车域的路由信息,将数据包发送到下一跳骨干节点,下一跳骨干节点检测自己是否与普通节点具有关联关系,如果没有,继续按照路由信息将数据包发送到下一跳骨干节点,最终到达与普通节点有关联关系的骨干节点B,然后骨干节点B将数据包发送到普通节点。
通过上述过程,普通节点选择稳定性最强的路由实现与互联网的通信,从而保证了通信质量。
本发明所述方法中,普通节点与骨干节点设有关联关系,普通节点检测到即将离开骨干节点的通信范围,那么从邻居骨干节点中选择具有最大链路连接时间的骨干节点作为新的关联节点,并向新的关联节点发送关联消息,消息负载为原来关联节点距离最近的接入节点的地址,新的关联节点收到关联消息后,增加与普通节点的关联关系;
如果新的关联节点的最近接入节点与原来关联节点的最近接入节点不同但是属于一个车域,那么新的关联节点向所在车域的接入路由器发送更新消息,消息负载为普通节点的地址和新的关联节点的最近接入节点的地址;接入路由器收到更新消息后,将普通节点的最近接入节点的地址更新为更新消息中的新的关联节点的最近接入节点的地址;
路由信息更新之后,目的地址为普通节点的数据包到达所在车域的接入路由器后,接入路由器将其转发到新关联节点的最近接入节点,最近接入节点根据所在车域路径信息将数据包发送到最新骨干节点,然后由最新骨干节点将数据包发送到普通节点;
普通节点脱离原来关联节点的通信范围后,自动删除关联消息。
普通节点通过上述算法实现了移动过程中的路由正确性和通信连续性。
本发明所述方法中,接入节点的路径链路连接时间为0时,重新建立路由;
重新建立路由后,普通节点C1变为骨干节点C1,如果骨干节点C1原来最近的接入节点AP1与现在最近的接入节点AP2不同且接入节点AP1与接入节点AP2属于一个车域,那么骨干节点C1向所在车域的接入路由器AR1发送更新消息,消息负载为接入节点AP2的地址;接入路由器AR1收到更新消息后,将骨干节点C1的关联接入节点AP1的地址更新为接入节点AP2的地址;
目的地址为骨干节点C1的数据包到达接入路由器AR1后,接入路由器AR1将其转发到接入节点AP2,接入节点AP2根据所在车域路径将数据发送到骨干节点C1;
重新建立路由后,普通节点C2原来关联的骨干节点转变为普通节点,那么普通节点C2从邻居骨干节点中选择具有最大链路连接时间的骨干节点B2作为新的关联节点,并向骨干节点B2发送关联消息,消息负载为原来关联节点的距离最近的接入节点AP3的地址;骨干节点B2收到关联消息后,增加与普通节点C2的关联关系;如果骨干节点B2的最近接入节点AP4与接入节点AP3同属于一个车域,那么骨干节点B2向所在车域的接入路由器AR2发送更新消息,消息负载为普通节点C2和接入节点AP4的地址;接入路由器AR2收到更新消息后,将普通节点C2的关联接入节点的地址更新为接入节点AP4的地址;
目的地址为普通节点C2的数据到达接入路由器AR2后,接入路由器AR2将其转发到接入节点AP4,接入节点AP4根据所在车域路径将数据发送到骨干节点B2,骨干节点B2将数据转发给普通节点C2;
重新建立路由后,骨干节点B3转变为普通节点B3,普通节点B3从邻居骨干节点中选择具有最大链路连接时间的骨干节点B4作为关联节点,并向骨干节点B4发送关联节点消息,消息负载为原来距离最近的接入节点AP5的地址;骨干节点B4收到关联消息后,增加与普通节点B3的关联关系;如果骨干节点B4的最近接入节点是与接入节点AP5同属于一个车域接的入节点AP6,那么骨干节点B4向所在车域的接入路由器AR3发送更新消息,消息负载为普通节点B3和接入节点AP6的地址;接入路由器AR3收到更新消息后,将普通节点B3的关联接入节点的地址更新为接入节点AP6的地址;
目的地址为普通节点B3的数据到达接入路由器AR3后,接入路由器AR3将其转发到接入节点AP6,接入节点AP6根据所在车域路径将数据发送到骨干节点B4,最后骨干节点B4将数据转发给普通节点B3。
上述算法实现了路由重建,从而保证了路由的有效性和正确性。由于路由重建获得了链路连接时间相对较长的路由路径,因此也增强了路由稳定性,也避免了由于路由中断而引起的路由重建,因此降低了丢包率,保证了通信质量。
本发明所述方法中,车辆节点V通过接入节点AP从车域VD1进入车域VD2的过程中,首先从接入节点AP获取新的转交地址并进行新地址的绑定操作,同时将自己标记为普通节点;车辆节点V在车域VD2的邻居骨干节点中选择具有最大链路连接时间的骨干节点B5作为关联节点,并向骨干节点B5发送关联消息,消息负载为接入节点AP在车域VD1的地址;骨干节点B5收到关联消息后,增加与车辆V的关联关系,同时通过消息负载的地址值判断出车辆节点V为新进入车域VD2的普通节点,向车域VD2所在车域的接入路由器AR7发送更新消息,消息负载为车辆节点V新的转交地址和接入节点AP在车域VD2的地址;接入路由器AR7收到更新消息后,记录下车辆节点V与接入节点AP的关联关系;
新地址绑定后,目的地址为车辆节点V新关联地址的数据到达接入路由器AR7后,接入路由器AR7将其转发到接入节点AP,接入节点AP根据所在车域路径将数据发送到骨干节点B5,最后骨干节点B5将数据转发给车辆节点V;
车域VD1中的接入路由器AR8中的车辆节点V的关联关系在有效时间为0后自动删除。
车辆节点通过上述过程保证了在移动过程中的通信连续性和路由正确性。
有益效果:本发明提供了一种城市车载网的路由方法,所述车载网络通过本发明所提供的路由方法,可实现与互联网的通信,能够确保通信的连续性,缩短通信延迟,降低数据包丢失率,从而提高了车载网的服务质量,本发明可应用于道路路况监测、车辆管理等领域,具有广泛的应用前景。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本发明所述的接入路由器、接入节点及车辆节点结构示意图。
图2为本发明所述的节点IPv6地址结构示意图。
图3为本发明所述车辆节点获取IPv6地址流程示意图。
图4为本发明所述的路由建立流程示意图。
具体实施方式:
本发明提供了一种车载网的路由方法,所述车载网络通过本发明所提供的路由方法,可实现与互联网的通信,能够确保通信的连续性,缩短通信延迟,降低数据包丢失率,从而提高了车载网的服务质量,本发明可应用于道路路况监测、车辆管理等领域,具有广泛的应用前景。
图1为本发明所述的接入路由器、接入节点及车辆节点结构示意图。所述城市车载网包括接入路由器1、接入节点2和位于道路上的车辆节点;接入路由器1与互联网的骨干网相连,接入节点2与一个以上的接入路由器1连接;将与一个接入路由器1相连的所有接入节点2围成一个封闭区域作为车域3。
将车辆节点分为骨干节点4和普通节点5两类:骨干节点4执行路由转发功能,它保存到达所在车域3距离最近的接入节点2的路由信息,并通过距离最近的接入节点2实现与互联网的通信;普通节点5不执行路由转发功能,它通过一跳范围内的骨干节点4实现与互联网的通信。
图2为本发明所述的节点IPv6地址结构示意图。车辆节点的IPv6地址包括三个部分:第一部分是车域ID,它是全局路由前缀,唯一标识一个车域,一个车域中所有接入节点的车域ID都相同,从一个车域内获取的IPv6地址的车域ID都相同,其值等于相同车域中接入路由器的车域ID;第二部分为接入节点ID,它唯一标识车域内的一个接入节点,从一个接入节点获取的地址的接入节点ID都相同,其值等于该接入节点的接入节点ID;第三部分为车辆ID,它唯一标识一个车域中的车辆;接入路由器和接入节点的IPv6地址预先设置,接入路由器的接入节点ID和车辆ID为0,接入节点的车辆ID为0。
图3为本发明所述车辆节点获取IPv6地址流程示意图。当车辆节点加入城市车载网时,它行驶到接入节点一跳范围内后,从该接入节点获取家乡地址;获取家乡地址后,车辆节点在车域内行驶时,它的家乡地址和转交地址保持不变;当车辆节点进入一个新车域时,它从同时属于新车域和原来车域的接入节点获取转交地址。
接入节点分别属于一个以上路域,在为车辆节点配置地址之前,接入节点首先判断车辆节点进入的下一个车域,然后为车辆节点分配下一个车域内中具有全球唯一性的IPv6地址;对于每个所属车域,接入节点保存一个车辆ID表,用于记录下已经分配的车辆ID。
车辆节点从接入节点获取IPv6地址的过程如下。
步骤201:开始。
步骤202:车辆节点向接入节点发送地址请求消息。
步骤203:接入节点收到地址请求消息后,向车辆节点发送刷新消息。
步骤204:车辆节点收到刷新消息后,定期向接入节点发送刷新响应消息。
步骤205:接入节点通过测量刷新响应消息来定位车辆节点的相对位置,并判断车辆节点进入的下一个路域。
步骤206:接入节点采用随机函数随机产生一个车辆ID。
步骤207:接入节点查询下一个路域对应的车辆ID表来判断生成的车辆ID是否已经分配,如果是,返回步骤206,否则进行步骤208。
步骤208:接入节点将自己的车域ID、接入节点ID与生成的车辆ID结合产生新的转交地址,并将其封装到地址响应消息中发送给车辆节点。
步骤209:车辆节点是否已经配置家乡地址,如果是,进行步骤211,否则进行步骤210。
步骤210:车辆节点收到地址响应消息后,将消息中的地址作为自己的家乡地址,进行步骤212。
步骤211:车辆节点收到地址响应消息后,将消息中的地址作为自己的转交地址。
步骤212:结束。
如果接入节点属于K个车域且第k车域所定义的角度闭区间为[αk,αk+1],K≥k≥1,在时刻T1,车辆节点进入接入节点的通信范围内,接入节点通过测量车辆节点发送的刷新响应消息的强度判断出与车辆节点的距离。当距离小于道路宽度时,车辆节点即将进入下一个路域,接入节点用定位算法测量车辆节点发送的刷新响应消息判断与车辆节点的相对角度,接入节点通过相对角度以及每个车域所在的角度闭区间,判断车辆节点进入的下一个路域。
图4为本发明所述的路由建立流程示意图。车辆节点定期发送广播消息,消息负载包括地址位置坐标,移动速度和移动角度。车辆节点通过接收邻居车辆节点广播的消息获取与邻居车辆节点的链路连接时间。
在车域中,车辆节点建立到达最近接入节点AP1的路由过程如下。
步骤301:开始。
步骤302:接入节点AP1选择具有最大链路连接时间的邻居普通节点,并向其发送路由建立消息,消息负载为接入节点AP1的地址,值为0的跳数参数,以及设置为最大值的链路连接时间。
步骤303:邻居普通节点收到路由建立消息后,判断其一跳范围内是否有骨干节点,如果是,进行步骤305,否则进行步骤304。
步骤304:邻居普通节点将接入节点AP1作为距离最近的接入节点,保存到达接入节点AP1的跳数参数以及转发路由建立消息的骨干节点的地址,将自己标记为骨干节点,然后选择最大链路连接时间的下一跳邻居普通节点,向其转发路由建立消息,其中消息负载中的跳数递增1。链路连接时间为路由建立消息中的链路连接时间,与自己和下一跳邻居普通节点的链路连接时间之间的最小值,进行步骤303。
步骤305:邻居普通节点丢弃路由建立消息并向转发路由建立消息的骨干节点返回路由响应消息,消息负载为到达接入节点AP1路径的链路连接时间。
步骤306:骨干节点收到路由响应消息后,记录下到达接入节点AP1路径的链路连接时间,然后将路由响应消息发送给到达接入节点AP1的下一跳骨干节点,路由响应消息最终达到接入节点AP1。
步骤307:接入节点AP1收到路由响应消息后,记录下对应车域的路由链路连接时间。
步骤308:结束。
路由建立完成后,接入节点AP1在链路连接时间之后重新建立路由以维护路由的有效性;骨干节点的广播消息负载中增加如下数据:接入节点AP1的地址、到达接入节点AP1的路径长度以及到达接入节点AP1的路径的链路连接时间。
本发明中,骨干节点与互联网节点通信的时候,按照建立的路由路径将数据包发送到距离最近的接入节点,然后由接入节点发送到本车域的接入路由器,接入路由器记录骨干节点与距离最近的接入节点的关联关系,并将数据包发送到互联网节点。
互联网节点返回的数据包首先到达骨干节点所在车域的接入路由器,接入路由器根据记录的骨干节点与接入节点的关联关系将返回的数据包发送到与骨干节点关联的接入节点,接入节点根据数据包目的地址所在车域的路由路径将数据包发送到下一跳骨干节点,最终数据包到达目的骨干节点。
普通节点与互联网节点通信时,从邻居骨干节点中选择具有最大链路连接时间的骨干节点B,然后将数据包发送到骨干节点B,骨干节点B收到数据包后,记录普通节点与自己的关联关系,同时将数据包通过最近接入节点和所在车域的接入路由器发送给互联网节点。
互联网节点返回的数据包到达最近接入节点后,最近接入节点根据数据包目的地址所在车域的路由信息,将数据包发送到下一跳骨干节点,下一跳骨干节点检测自己是否与普通节点具有关联关系,如果没有,继续按照路由信息将数据包发送到下一跳骨干节点,最终到达与普通节点有关联关系的骨干节点B,然后骨干节点B将数据包发送到普通节点。
本发明中,普通节点与骨干节点设有关联关系,普通节点检测到即将离开骨干节点的通信范围,那么从邻居骨干节点中选择具有最大链路连接时间的骨干节点作为新的关联节点,并向新的关联节点发送关联消息,消息负载为原来关联节点距离最近的接入节点的地址,新的关联节点收到关联消息后,增加与普通节点的关联关系。
如果新的关联节点的最近接入节点与原来关联节点的最近接入节点不同但是属于一个车域,那么新的关联节点向所在车域的接入路由器发送更新消息,消息负载为普通节点的地址和新的关联节点的最近接入节点的地址;接入路由器收到更新消息后,将普通节点的最近接入节点的地址更新为更新消息中的新的关联节点的最近接入节点的地址。
路由信息更新之后,目的地址为普通节点的数据包到达所在车域的接入路由器后,接入路由器将其转发到新关联节点的最近接入节点,最近接入节点根据所在车域路径信息将数据包发送到最新骨干节点,然后由最新骨干节点将数据包发送到普通节点。
普通节点脱离原来关联节点的通信范围后,自动删除关联消息。
本发明中,接入节点的路径链路连接时间为0时,重新建立路由。
重新建立路由后,普通节点C1变为骨干节点C1,如果骨干节点C1原来最近的接入节点AP1与现在最近的接入节点AP2不同且接入节点AP1与接入节点AP2属于一个车域,那么骨干节点C1向所在车域的接入路由器AR1发送更新消息,消息负载为接入节点AP2的地址;接入路由器AR1收到更新消息后,将骨干节点C1的关联接入节点AP1的地址更新为接入节点AP2的地址。
目的地址为骨干节点C1的数据包到达接入路由器AR1后,接入路由器AR1将其转发到接入节点AP2,接入节点AP2根据所在车域路径将数据发送到骨干节点C1。
重新建立路由后,普通节点C2原来关联的骨干节点转变为普通节点,那么普通节点C2从邻居骨干节点中选择具有最大链路连接时间的骨干节点B2作为新的关联节点,并向骨干节点B2发送关联消息,消息负载为原来关联节点的距离最近的接入节点AP3的地址;骨干节点B2收到关联消息后,增加与普通节点C2的关联关系;如果骨干节点B2的最近接入节点AP4与接入节点AP3同属于一个车域,那么骨干节点B2向所在车域的接入路由器AR2发送更新消息,消息负载为普通节点C2和接入节点AP4的地址;接入路由器AR2收到更新消息后,将普通节点C2的关联接入节点的地址更新为接入节点AP4的地址。
目的地址为普通节点C2的数据到达接入路由器AR2后,接入路由器AR2将其转发到接入节点AP4,接入节点AP4根据所在车域路径将数据发送到骨干节点B2,骨干节点B2将数据转发给普通节点C2。
重新建立路由后,骨干节点B3转变为普通节点B3,普通节点B3从邻居骨干节点中选择具有最大链路连接时间的骨干节点B4作为关联节点,并向骨干节点B4发送关联节点消息,消息负载为原来距离最近的接入节点AP5的地址;骨干节点B4收到关联消息后,增加与普通节点B3的关联关系;如果骨干节点B4的最近接入节点是与接入节点AP5同属于一个车域接的入节点AP6,那么骨干节点B4向所在车域的接入路由器AR3发送更新消息,消息负载为普通节点B3和接入节点AP6的地址;接入路由器AR3收到更新消息后,将普通节点B3的关联接入节点的地址更新为接入节点AP6的地址。
目的地址为普通节点B3的数据到达接入路由器AR3后,接入路由器AR3将其转发到接入节点AP6,接入节点AP6根据所在车域路径将数据发送到骨干节点B4,最后骨干节点B4将数据转发给普通节点B3。
本发明中,车辆节点V通过接入节点AP从车域VD1进入车域VD2的过程中,首先从接入节点AP获取新的转交地址并进行新地址的绑定操作,同时将自己标记为普通节点;车辆节点V在车域VD2的邻居骨干节点中选择具有最大链路连接时间的骨干节点B5作为关联节点,并向骨干节点B5发送关联消息,消息负载为接入节点AP在车域VD1的地址;骨干节点B5收到关联消息后,增加与车辆V的关联关系,同时通过消息负载的地址值判断出车辆节点V为新进入车域VD2的普通节点,向车域VD2所在车域的接入路由器AR7发送更新消息,消息负载为车辆节点V新的转交地址和接入节点AP在车域VD2的地址;接入路由器AR7收到更新消息后,记录下车辆节点V与接入节点AP的关联关系。
新地址绑定后,目的地址为车辆节点V新关联地址的数据到达接入路由器AR7后,接入路由器AR7将其转发到接入节点AP,接入节点AP根据所在车域路径将数据发送到骨干节点B5,最后骨干节点B5将数据转发给车辆节点V。
车域VD1中的接入路由器AR8中的车辆节点V的关联关系在有效时间为0后自动删除。
综上所述,本发明所述车载网络通过本发明所提供的路由方法,可实现与互联网的通信,能够确保通信的连续性,缩短通信延迟,降低数据包丢失率,从而提高了车载网的服务质量,本发明可应用于道路路况监测、车辆管理等领域,具有广泛的应用前景,因此,本技术具有很高的推广价值。
本发明提供了一种城市车载网的路由方法的思路,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部份均可用现有技术加以实现。
一种城市车载网的路由方法专利购买费用说明
Q:办理专利转让的流程及所需资料
A:专利权人变更需要办理著录项目变更手续,有代理机构的,变更手续应当由代理机构办理。
1:专利变更应当使用专利局统一制作的“著录项目变更申报书”提出。
2:按规定缴纳著录项目变更手续费。
3:同时提交相关证明文件原件。
4:专利权转移的,变更后的专利权人委托新专利代理机构的,应当提交变更后的全体专利申请人签字或者盖章的委托书。
Q:专利著录项目变更费用如何缴交
A:(1)直接到国家知识产权局受理大厅收费窗口缴纳,(2)通过代办处缴纳,(3)通过邮局或者银行汇款,更多缴纳方式
Q:专利转让变更,多久能出结果
A:著录项目变更请求书递交后,一般1-2个月左右就会收到通知,国家知识产权局会下达《转让手续合格通知书》。
动态评分
0.0