一种数据包主动寻路的命名数据网络转发方法
一种数据包主动寻路的命名数据网络转发
针对无线场景下命名数据网络转发时数据包回路易失效的问题,引入待转发数据表,在数据包获取回路失效时通过途径路由查询和待转发数据的聚合,包括数据包选择字段添加路由、链路失效时路由查询、依据NLSR路由协议发现邻近结点路由以及建立待转发数据表PDT,实现了数据包的主动寻路转发,相比现有数据包机械地沿兴趣包路径返回机制减少了兴趣包超时重传,提高了转发效率。
其特征在于:引入待转发数据表,包括途经路由查询和待转发数据的聚合,具体包括数据包选择字段添加路由、链路失效时路由查询、依据NLSR路由协议发现邻近结点路由以及建立待转发数据表PDT;未转发出去的数据包在链路失效处上游结点建立待转发数据表PDT;
实现方法:
- 消费者端对兴趣包添加字段,记录下兴趣包经过的路由节点的名字,(采用NLSR中分层命名的机制)。
- 生产者段取出路由字段添加到数据包中,如果链路正常,就直接按原路返回。如果链路不正常,就跳过故障节点转发。具体为:
- 当匹配到单跳范围内与某个途径结点能发生通信,将数据包转发给该途径结点,从而跳过故障链路完成转发;
- 在链路失效处未能在单跳范围内与途经路由发生通信,则需要利用NLSR路由协议进行路由发现,建立多跳转发;利用Dijkstra算法创建多个下一跳到达路径及路由代价,从Data选择字段提取出邻近结点,决定该数据包的下一跳转发。