与DTN网络兼容的IP分组转发方法、网络节点及存储介质与流程

文档序号:15049670发布日期:2018-07-27 23:57阅读:172来源:国知局

本发明涉及通信技术领域,尤其涉及一种与dtn网络兼容的ip分组转发方法、网络节点及计算机可读存储介质。



背景技术:

中断容忍网络(dtn,delaytolerantnetwork)是指具有大尺度链路时延、网络拓扑高动态变化、链路断续连通等特性的一类网络。典型的dtn网络有近地卫星网络、深空探测网络等。在dtn网络的环境中,往往会由于网络中节点的主动或被动移动,或者随机的加入或退出网络,造成网络节点间的链路连接频繁中断,使得链路处于一种断续连通的状态,进而导致网络的拓扑也不断的发生变化。

目前,在生活中最常见的应用最广泛的网络是互联网,其主要是借助于tcp/ip协议族来实现网络节点间的通信。tcp/ip协议族定义了电子设备如何接入到互联网,以及数据如何在这些电子设备之间传输的标准。其中,tcp协议主要负责数据安全可靠正确地传输到目的地。ip协议主要负责为每一台接入互联网的设备分配一个ip地址以及提供ip分组转发的操作。ip协议的分组转发机制分为直接转发和间接转发两种方式。转发方式是路由节点根据ip分组头部的目的ip地址与源地址是否属于同一个子网来判断的。如果目的主机与源主机在同一网络时,则为直接转发方式,反之,则为间接转发方式。

现有的分组转发机制是在网络节点接收到ip分组时,提取ip分组头部的目的地址,得出目的网络地址。如果该网络节点直接连到目的网络,则直接交付ip分组,否则网络节点查找路由表,将ip分组转发至路由表中指明的下一跳网络节点。以此类推,直到ip分组转发到目的网络节点。在此过程中,如果未找到正确的路由表项,分组将会被发往默认路由地址或者直接丢弃,导致ip分组不可达。

针对于网络链路断续连通、拓扑动态变化的dtn网络环境,将现有的ip分组转发机制直接应用于dtn网络中,将导致分组转发效率低和链路利用率低的问题。在dtn网络中可能长时间不存在一条端到端的路径,采用现有分组转发机制,由于找不到正确的路由表项将造成分组转发出错,频繁丢弃分组,导致分组转发效率低下,同时,也会在长时间内使得网络节点间链路无法利用。



技术实现要素:

鉴于上述的分析,本发明旨在提供一种与dtn网络兼容的ip分组转发方法、网络节点及计算机可读存储介质,用以解决现有技术中dtn网络环境中分组转发效率低的问题。

为解决上述问题,本发明主要是通过以下技术方案实现的:

本发明提供了一种与dtn网络兼容的ip分组转发方法,该方法包括:当接收到ip分组时,确定ip分组的目的地址,并确定所述ip分组的转发流向;根据路由表信息,查找ip分组的下一跳网络节点地址,并对比当前时间和路由表项中起始时间字段,如果在起止时间范围内,则直接转发ip分组,否则将ip分组存储至链路分组缓存队列中,并设置ip分组存储定时器,等待定时器超期进行分组转发。

进一步地,确定ip分组的目的地址,具体包括:检查ip分组头部信息,判断该网络节点是否为目的网络或目的地址,如果是,则将ip分组交由上层协议处理。

进一步地,确定所述ip分组的转发流向,具体包括:通过查询路由表确定所述ip分组的转发流向。

进一步地,将ip分组存储至链路分组缓存队列中,具体包括:判断网络节点当前链路分组缓存队列的占用空间是否达到队列容量门限值,如果否,则将ip分组加入到网络节点的链路分组缓存队列中,开启分组存储定时器,设置计时周期,如果是,则进一步判断ip分组的优先级,并将高优先级ip分组加入到网络节点的链路分组缓存队列中,开启分组存储定时器,设置计时周期,否则丢弃该ip分组。

另一方面,本发明还提供一种网络节点,所述网络节点包括处理器、存储器及通信总线;所述通信总线用于实现处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的计算机指令,以实现上述任一种所述的与dtn网络兼容的ip分组转发方法。

再一方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述任一种所述的与dtn网络兼容的ip分组转发方法。

本发明有益效果如下:

本发明在网络节点接收到ip分组,通过查询ip分组的头部信息确定分组的目的地址,对比该ip分组的目的地址与该网络节点的主机地址,确定分组的转发流向;根据路由表信息,查找ip分组的下一跳网络节点地址,当未找到该分组下一跳地址时直接丢弃分组;在查找到该分组下一跳地址的路由表项时,对比当前时间和路由表项中起始时间字段,如果在起止时间范围内,则直接转发分组,否则将分组存储至链路分组缓存队列中,并设置分组存储定时器,等待定时器超期进行分组转发。也就是说,本发明采用链路分组缓存队列来存储当前时刻未找到转发路径的分组,不需要重新接收上一跳网络节点发来的分组以及重新查找路由表,提升分组的转发效率。

本发明的其他特征和优点将在随后的说明书中阐述,并且部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

图1是本发明实施例的一种与dtn网络兼容的ip分组转发方法的流程示意图;

图2是本发明实施例的另一种与dtn网络兼容的ip分组转发方法的流程示意图;

图3是本发明实施例的网络节点的结构示意图。

具体实施方式

下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。为了清楚和简化目的,当其可能使本发明的主题模糊不清时,将省略本文所描述的器件中已知功能和结构的详细具体说明。

本发明提供了一种与dtn网络兼容的ip分组转发方法,本发明在网络节点接收到ip分组,通过查询ip分组的头部信息确定分组的目的地址,对比该ip分组的目的地址与该网络节点的主机地址,确定分组的转发流向;根据路由表信息,查找ip分组的下一跳网络节点地址,当未找到该分组下一跳地址时直接丢弃分组;在查找到该分组下一跳地址的路由表项时,对比当前时间和路由表项中起始时间字段,如果在起止时间范围内,则直接转发分组,否则将分组存储至链路分组缓存队列中,并设置分组存储定时器,等待定时器超期进行分组转发。也就是说,本发明采用链路分组缓存队列来存储当前时刻未找到转发路径的分组,不需要重新接收上一跳网络节点发来的分组以及重新查找路由表,提升分组的转发效率。以下结合附图以及几个实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。

本发明实施例提供了一种时空同现的挖掘方法,参见图1,该方法包括:

s101、当接收到ip分组时,确定ip分组的目的地址,并确定所述ip分组的转发流向;

s102、根据路由表信息,查找ip分组的下一跳网络节点地址,并对比当前时间和路由表项中起始时间字段,如果在起止时间范围内,则直接转发ip分组,否则将ip分组存储至链路分组缓存队列中,并设置ip分组存储定时器,等待定时器超期进行分组转发。

也就是说,本发明采用链路分组缓存队列来存储当前时刻未找到转发路径的分组,不需要重新接收上一跳网络节点发来的分组以及重新查找路由表,提升分组的转发效率。

具体实施时,本发明实施例所述的确定ip分组的目的地址,具体包括:

检查ip分组头部信息,判断该网络节点是否为目的网络或目的地址,如果是,则将ip分组交由上层协议处理。

本发明所述确定所述ip分组的转发流向,具体包括:通过查询路由表确定所述ip分组的转发流向。

具体实施时,本发明实施例中,将ip分组存储至链路分组缓存队列中,具体包括:判断网络节点当前链路分组缓存队列的占用空间是否达到队列容量门限值,如果否,则将ip分组加入到网络节点的链路分组缓存队列中,开启分组存储定时器,设置计时周期,如果是,则进一步判断ip分组的优先级,并将高优先级ip分组加入到网络节点的链路分组缓存队列中,开启分组存储定时器,设置计时周期,否则丢弃该ip分组。

本发明所述的方法具体包括:

(1)网络节点接收到ip分组,检查ip分组头部信息,判断该网络节点是否为目的网络或目的地址,如果是,则将ip分组交由上层协议处理,否则,转入步骤(2);

(2)查询路由表,如果找到与分组目的地址或目的网络对应的路由表项,则转入步骤(3),否则,丢弃ip分组;

(3)查看路由表项中的时间变量,判断当前时刻是否在时间变量的范围内,如果是,则向下一跳网络节点转发ip分组,否则转入步骤(4);

(4)判断网络节点当前链路分组缓存队列的占用空间是否到达队列容量门限值,如果是,则转入步骤(5),否则转入步骤(6);

(5)判断ip分组的优先级,如果为高优先级ip分组,则转入步骤(6),否则丢弃ip分组;

(6)将ip分组加入到网络节点的链路分组缓存队列中,开启分组存储定时器,设置计时周期;

(7)如果分组存储定时器计时到期,则向下一跳网络节点转发ip分组,并关闭分组存储定时器,否则,等待分组存储定时器计时到期。

即,本发明实施例在网络节点接收到ip分组,通过查询ip分组的头部信息确定分组的目的地址,对比该ip分组的目的地址与该网络节点的主机地址,确定分组的转发流向;根据路由表信息,查找ip分组的下一跳网络节点地址,当未找到该分组下一跳地址时直接丢弃分组;在查找到该分组下一跳地址的路由表项时,对比当前时间和路由表项中起始时间字段,如果在起止时间范围内,则直接转发分组,否则将分组存储至链路分组缓存队列中,并设置分组存储定时器,等待定时器超期进行分组转发。

图2是本发明实施例的另一种与dtn网络兼容的ip分组转发方法的流程示意图,下面将结合图2对本发明所述的方法进行详细的解释和说明:

步骤1,网络节点接收到ip分组,检查ip分组头部信息,判断该网络节点是否为目的网络或目的地址,如果是,则将ip分组交由上层协议处理,否则,转入步骤(2);

当前网络节点接收上一跳网络节点发来的ip分组,并检查ip分组头部信息,获取ip分组头部中的目的地址,确定ip分组的最终流向,判断该ip分组的目的地址是否为当前网络节点的地址,如果是,则将ip分组交由本网络节点上层协议处理。

步骤2,查询路由表,如果找到与ip分组目的地址或目的网络对应的路由表项,则转入步骤(3),否则,丢弃ip分组;

步骤3,查看路由表项中的时间变量,判断当前时刻是否在时间变量的范围内,如果是,则向下一跳网络节点转发ip分组,否则转入步骤(4);

在路由表中的路由表项中增添了起始时间tstart字段和结束时间tend字段,当前时间为tcur,如果当tstart≤tcur≤tend,网络节点将根据路由表项内容直接将ip分组转发到下一跳网络节点,如果tcur<tstart,则执行步骤(4)操作。

步骤4,判断网络节点当前链路分组缓存队列的占用空间是否到达队列容量门限值,如果是,则转入步骤(5),否则转入步骤(6);

网络节点将为自己的每一个下一跳出口链路设置链路分组缓存队列,根据分组的长度l和链路的带宽b动态设置链路分组缓存队列的空间大小c,并且为链路分组缓存队列设置队列容量门限ct,如果当前链路分组缓存队列存储的分组容量ccur达到门限ct时,即ccur≥ct,将只在链路分组缓存队列中存储高优先级的分组,而低优先级的分组不进入链路分组缓存队列,直接丢弃。

步骤5,判断ip分组的优先级,如果为高优先级ip分组,则转入步骤(6),否则丢弃ip分组;

步骤6,将ip分组加入到网络节点的链路分组缓存队列中,开启分组存储定时器,设置计时周期;

将ip分组加入到链路分组缓存队列,开启分组存储定时器,并将分组存储定时器周期设置为tstart-tcur,其中tstart>tcur。

步骤7,如果分组存储定时器计时到期,则向下一跳网络节点转发ip分组,并关闭分组存储定时器,否则,等待分组存储定时器计时到期。

当分组存储定时器计时到期时,将直接从链路分组缓存队列中取出ip分组并转发至下一跳网络节点,而不需要再次查找路由表。至此,该dtn网络分组转发机制将完成对任意一个ip分组转发的操作。

与现有技术相比,本发明至少能够达到以下的有益效果:

第一,本发明采用链路分组缓存队列来存储当前时刻未找到转发路径的分组,不需要重新接收上一跳网络节点发来的分组以及重新查找路由表,提升分组的转发效率;

第二,本发明引入与dtn网络兼容的ip分组转发机制,能够适应dtn网络特性,实现分组的快速转发,提升网络链路资源利用率;

第三,本发明引入分组优先级机制,优先转发高优先级分组,保证差异化业务的qos需求;

第四,本发明提出的与dtn网络兼容的ip分组转发机制除了适用于dtn网络,也适用于传统的静态网络,具有良好的兼容性。

相应的,本发明的实施例还提供一种网络节点,如图3所示,本发明实施例所述网络节点包括处理器、存储器及通信总线;所述通信总线用于实现处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的计算机指令,以实现上述任一种所述的与dtn网络兼容的ip分组转发方法,并达到相应的技术效果。

相应的,本发明的实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述实施例提供的任一种所述的与dtn网络兼容的ip分组转发方法,因此也能实现相应的技术效果,相关部分可参照方法实施例进行理解,在此不再详细赘述。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1