CN105656803A - 一种基于QoS的空间延迟容忍网络拥塞控制方法 - Google Patents
一种基于QoS的空间延迟容忍网络拥塞控制方法 Download PDFInfo
- Publication number
- CN105656803A CN105656803A CN201610048427.8A CN201610048427A CN105656803A CN 105656803 A CN105656803 A CN 105656803A CN 201610048427 A CN201610048427 A CN 201610048427A CN 105656803 A CN105656803 A CN 105656803A
- Authority
- CN
- China
- Prior art keywords
- contact
- congestion
- node
- perform
- bundle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2425—Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
- H04L47/2433—Allocation of priorities to traffic types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种基于QoS的空间延迟容忍网络拥塞控制方法,包括:S1、在接触信息格式中加入以节点剩余存储空间和以接触剩余可用容量为判断依据的接触拥塞等级信息;S2、根据接触剩余可用容量和节点的剩余存储空间对接触的拥塞等级进行判断,向其他节点发送拥塞信息通告;S3、收到拥塞通告信息的节点更新在接触计划中的接触的拥塞等级,需要转发束的节点计算最优路径拥塞等级,无拥塞时转发所有优先级的束;轻度拥塞时转发高优先级和中优先级的束;重度拥塞时转发高优先级的束;完全拥塞时,若判断依据是接触剩余可用容量则转发高优先级的束,是节点剩余存储空间则利用次优路径转发束。本发明在网络发生网络拥塞时,提高数据的传递率,降低传递时延。
Description
技术领域
本发明涉及计算机网络技术领域。更具体地,涉及一种基于QoS的空间延迟容忍网络拥塞控制方法。
背景技术
随着航空航天、卫星通信等技术的迅速发展和国家信息化建设进程的不断推进,空间信息网络在通信、国防、导航、测控、救援等多个领域发挥着不可替代的作用。NASA提出的延迟容忍网络(DelayTolerantNetwork,DTN)能够应对空间环境中存在的长端到端时延、高误码率、频繁链路中断等特点,满足复杂空间环境中建立互联互通网络的要求。DTN架构在传统的OSI模型应用层之下添加了束层协议(BundleProtocol,BP)和汇聚层协议(ConvergenceLayerAdapter,CLA),这两层协议运行在传输层协议之上。BP协议将应用层数据分割成expedited、normal、bulk三种不同优先级的束(bundle),用来承载不同服务等级的应用数据,其中优先级为expedited的束为高优先级束,需在其他束之前发送,可以承载时延敏感数据如语音服务;优先级为normal的束为中优先级束;优先级为bulk的束为低优先级的束,可以承载对实时性要求不高的数据如文件传输等服务,在其他束之后发送。DTN协议使用存储转发的策略应对链路中断,当无端到端路径时需将束存储下来等待传输机会。由于使用暂时存储数据的方式来应对链路中断,当节点存储空间不足时将造成数据丢失,将导致网络拥塞发生。
在空间环境中,节点的运动轨迹是可以调度和预知的,能够预先得到两个节点间的通信机会,包括通信的起始时间、终止时间、传输速率、节点间距离等,接触图路由(ContactGraphRouting,CGR)将两个节点间的通信机会称为一个“接触”,把链路信息按照接触的方式配置在“接触计划”(contactplan)里,预先配置的接触信息为接触的起始节点(fromnode)、终止节点(tonode)、起始时间(fromtime)、终止时间(totime)、传输速率(rate)、节点间距离(range)。
接触计划中接触信息格式如表1所示:
表1接触信息格式
起始节点 | 终止节点 | 起始时间 | 终止时间 | 节点间距离 | 传输速率 |
CGR根据预先配置的接触信息,将可用的接触连在一起,逐跳地把束从源节点发送到目的节点。通过接触的剩余时间乘以速率可以得到接触的容量,在计算路由时会考虑在内,根据束的最早到达时间计算出合适的路由。
CGR在计算路由时,只会考虑路径中第一段接触剩余可用容量是否满足束的发送条件,当第一段接触剩余可用容量小于束大小时,会选择其他路径发送,但是并没有考虑到路径中其他接触的剩余容量问题,当中间接触存在剩余容量不足的情况时,在初始节点计算得到的路径可能会在中间接触中发生拥塞,而错过最佳路径,此时为接触剩余容量不足导致网络拥塞的情况。
同样CGR在计算路由时,只考虑到第一段接触的剩余容量,并没有考虑节点的剩余存储空间,当节点的剩余存储空间小于接触的剩余容量时,按照接触剩余时间乘以速率得到的接触容量已经不能真实的反应接触容量状况,此时接触的真实容量将变为节点的剩余存储空间大小,如果节点的剩余存储空间已经耗尽,而仍有束到来,节点会丢弃新接收到的束,此时为节点剩余存储空间不足导致网络拥塞的情况。
QoS(QualityofService,服务质量)指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制,是用来解决网络延迟和阻塞等问题的一种技术。
因此,需要提供一种基于QoS的空间延迟容忍网络拥塞控制方法。
发明内容
本发明的目的在于提供一种基于QoS的空间延迟容忍网络拥塞控制方法,在空间延迟容忍网络发生网络拥塞时,提高数据的传递率,降低传递时延。
为达到上述目的,本发明采用下述技术方案:
一种基于QoS的空间延迟容忍网络拥塞控制方法,该方法包括如下步骤:
S1、在接触计划中的接触信息格式中加入以节点剩余存储空间为判断依据的接触拥塞等级信息和以接触剩余可用容量为判断依据的拥塞等级信息;
S2、根据接触剩余可用容量和节点的剩余存储空间对接触的拥塞等级进行判断,将接触分为无拥塞、轻度拥塞、重度拥塞和完全拥塞这四种拥塞等级的接触,并向其他节点发送拥塞信息通告;
S3、收到拥塞通告信息的节点更新在接触计划中的接触的拥塞等级,需要转发束的节点根据接触路由图计算束的最优路径,将最优路径中所有接触的最高拥塞等级作为最优路径的拥塞等级,根据最优路径的拥塞等级确定不同优先级的束的转发形式:
当最优路径的拥塞等级为无拥塞时,转发所有优先级的束;
当最优路径的拥塞等级为轻度拥塞时,转发高优先级和中优先级的束;
当最优路径的拥塞等级为重度拥塞时,转发高优先级的束;
当最优路径的拥塞等级为完全拥塞时,如果拥塞等级的判断依据是接触剩余可用容量则转发高优先级的束,如果拥塞等级的判断依据是节点剩余存储空间不足则利用根据接触路由图计算的束的当前最优路径的次优路径转发束。
优选地,该方法还包括步骤:
S4、重复执行步骤S2至S3直至需要转发束的节点转发完所有优先级的束。
优选地,步骤S2中所述拥塞信息通告包括接触的起始节点、终止节点、起始时间、终止时间、拥塞判断依据和拥塞等级。
优选地,步骤S2进一步包括如下子步骤:
S2.1、查询得到接触计划中第一条接触记录;
S2.2、检查接触起始节点是否为本地节点,是则执行S2.3,否则执行S2.9;
S2.3、计算接触剩余可用容量占接触剩余容量的比例;
S2.4、判断接触剩余可用容量占接触剩余容量的比例是否小于20%,是则执行S2.5,否则执行S2.16;
S2.5、判断接触剩余可用容量占接触剩余容量的比例是否小于10%,是则执行S2.6;否则判断该接触发生轻度拥塞,检查与接触计划中该接触的拥塞等级是否一致,是则执行S2.16;否则将该接触标记为以接触剩余可用容量为依据的轻度拥塞,执行S2.8;
S2.6、判断接触剩余可用容量占接触剩余容量的比例是否小于0.5%,是则执行S2.7;否则判断该接触发生重度拥塞,检查与接触计划中将该接触的拥塞等级是否一致,是则执行S2.16;否则将该接触标记为以接触剩余可用容量为依据的重度拥塞,执行S2.8;
S2.7、判断该接触发生完全拥塞,检查与接触计划中将该接触的拥塞等级是否一致,是则执行S2.16;否则将该接触标记为以接触剩余可用容量为依据的完全拥塞,执行S2.8;
S2.8、向其他节点发送拥塞通告信息,将拥塞通告信息中的判断依据标记为接触剩余可用容量,拥塞等级为接触所判断的拥塞等级,执行S2.16;
S2.9、检查该接触的终止节点是否为本地节点,是则执行S2.10,否则执行S2.16;
S2.10、检查剩余存储空间是否小于接触的剩余存储容量,是则执行S2.11,否则执行S2.16;
S2.11、计算本地节点剩余存储空间占该接触剩余容量的比例,并判断本地节点剩余存储空间占该接触剩余容量的比例是否小于20%,是则执行S2.12,否则执行S2.16;
S2.12、判断本地节点剩余存储空间占该接触剩余容量的比例是否小于10%,是则执行S2.13,否则说明该接触发生轻度拥塞,查看与接触计划中关于该接触的拥塞记录是否一致,是则执行S2.16;否则将该接触标记为以节点剩余存储空间不足为依据的轻度拥塞,执行S2.15;
S2.13、判断本地节点剩余存储空间占该接触剩余容量的比例是否小于0.5%,是则执行S2.14,否则说明该接触发生重度拥塞,查看与接触计划中关于该接触的拥塞记录是否一致,是则执行S2.16;否则将该接触标记为以节点剩余存储空间不足为依据的重度拥塞,执行S2.15;
S2.14、判断该接触发生完全拥塞,查看与接触计划中关于该接触的拥塞记录是否一致,是则执行S2.16;否则将该接触标记为以节点剩余存储空间不足为依据的完全拥塞,执行S2.15;
S2.15、向其他节点发送拥塞通告信息,将拥塞判断依据标记为节点剩余存储空间不足,拥塞等级为接触所判断的拥塞等级;
S2.16、检查接触计划中是否还存在下一条接触记录,是则对接触执行S2.2;否则休眠1秒,执行S2.1。
优选地,步骤S2.8中的向其他节点发送拥塞通告信息为向该接触的拥塞通告域中的其他节点发送拥塞通告信息,步骤S2.15中的向其他节点发送拥塞通告信息为向该接触的拥塞通告域中的其他节点发送拥塞通告信息,所述拥塞通告域的定义为接触计划中满足开始时间小于失效接触终止时间的所有接触的开始节点和终止节点。
优选地,步骤S2.3计算接触剩余可用容量占接触剩余容量的比例的计算公式为:
公式中,CACR为接触剩余可用容量占接触剩余容量的比例。
优选地,步骤S2.8中计算本地节点剩余存储空间占该接触剩余容量的比例的计算公式为:
公式中,RNCR为本地节点剩余存储空间占该接触剩余容量的比例。
优选地,步骤S3进一步包括如下子步骤:
S3.1、当节点收到束时,判断是否为发给该节点的拥塞通告信息,是则执行S3.2,否则执行S3.3;
S3.2、在接触计划中查询得到相应的接触,更新接触的拥塞信息;
S3.3、根据接触路由图为束计算最优路径;
S3.4、根据最优路径中包含的所有接触的拥塞等级得出该路径的拥塞等级,判断束的目的节点是否为路径中的下一跳节点,是则直接转发,否则执行S3.5;
S3.5、判断最优路径的拥塞等级是否为无拥塞,是则转发该束,否则执行S3.6;
S3.6、判断最优路径的拥塞等级是否为轻度拥塞,是则执行S3.7,否则执行S3.8;
S3.7、判断束的优先级是否为高优先级或中优先级,是则转发该束,否则执行S3.12;
S3.8、判断最优路径的拥塞等级是否为重度拥塞,是则执行S3.9,否则执行S3.10;
S3.9、判断束的优先级是否为高优先级,是则转发该束,否则执行S3.12;
S3.10、检查路径拥塞判断依据是否为接触剩余可用容量,是则执行S3.11,否则执行S3.12;
S3.11、判断束的优先级是否为高优先级,是则转发该束,否则执行S3.12;
S3.12、根据接触路由图为束计算最优路径,排除当前最优路径并以当前最优路径的次优路径作为束的最优路径,执行S3.4。
优选地,步骤S3还包括如下子步骤:
S3.15、重复执行步骤S3.3至S3.14直至收到束的节点转发完所有优先级的束。
本发明的有益效果如下:
本发明所述技术方案在接触计划中为接触信息新加入两种拥塞等级,分别为判断依据是接触剩余可用容量下的拥塞等级和判断依据为节点剩余存储空间下的拥塞等级,每种判断依据均将接触分成了四种拥塞等级:无拥塞、轻拥塞、重拥塞、完全拥塞。设计接触拥塞判断机制,通过观察接触剩余可用容量和节点的剩余存储空间来对每段接触进行拥塞等级判断并使用基于QoS的束转发策略,根据路径的拥塞等级决定发送不同优先级的束。进而在空间延迟容忍网络发生网络拥塞时,提高数据的传递率,降低传递时延。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明;
图1示出基于QoS的空间延迟容忍网络拥塞控制方法的流程图。
图2示出接触拥塞等级判断的流程图。
图3示出基于QoS的束转发的流程图。
图4示出基于QoS的空间延迟容忍网络拥塞控制方法的应用场景示意图。
具体实施方式
为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。
本实施例提供的基于QoS的空间延迟容忍网络拥塞控制方法建立并使用拥塞等级判断和基于QoS的路由转发两种机制,通过接触剩余可用容量和节点的剩余存储空间将接触划分为无拥塞、轻度拥塞、重度拥塞、完全拥塞四种不同的拥塞等级,计算束路由时将路径中每一段接触的拥塞等级考虑在内,路径中所有接触的最高拥塞等级即为路径的拥塞等级,根据整段路径的拥塞等级转发不同优先级的束,当轻度拥塞时转发前两个优先级(expedited和normal)的束,重度时转发高优先级(expedited)的束,完全拥塞时则认为整条路径失效,选择次优路径转发。
如图1所示,本实施例提供的基于QoS的空间延迟容忍网络拥塞控制方法包括如下步骤:
S1、在接触计划中的接触信息格式中加入以节点剩余存储空间为判断依据的接触拥塞等级信息和以接触剩余可用容量为判断依据的拥塞等级信息;
S2、根据接触剩余可用容量和节点的剩余存储空间对接触的拥塞等级进行判断,将接触分为无拥塞、轻度拥塞、重度拥塞和完全拥塞这四种拥塞等级的接触,并向其他节点发送拥塞信息通告;
S3、收到拥塞通告信息的节点更新在接触计划中的接触的拥塞等级,需要转发束的节点根据接触路由图计算束的最优路径,将最优路径中所有接触的最高拥塞等级作为最优路径的拥塞等级,根据最优路径的拥塞等级确定不同优先级的束的转发形式:
当最优路径的拥塞等级为无拥塞时,转发所有优先级的束;
当最优路径的拥塞等级为轻度拥塞时,转发高优先级和中优先级的束;
当最优路径的拥塞等级为重度拥塞时,转发高优先级的束;
当最优路径的拥塞等级为完全拥塞时,如果拥塞等级的判断依据(即最优路径中所有接触的最高拥塞等级的判断依据)是接触剩余可用容量则转发高优先级的束,如果拥塞等级的判断依据(即最优路径中所有接触的最高拥塞等级的判断依据)是节点剩余存储空间不足则利用根据接触路由图计算的束的当前最优路径的次优路径转发束。
其中
该方法还包括步骤:
S4、重复执行步骤S2至S3直至需要转发束的节点转发完所有优先级的束。
步骤S1的具体过程为:
本实施例修改了接触计划中原有的接触信息格式,为接触加入了两种判断依据下的拥塞等级,分别用来记录以节点剩余存储空间为依据的接触拥塞和以接触剩余可用容量为依据的拥塞,新定义的接触信息格式如表2所示:
表2新定义的接触信息格式
对两种判断依据下的拥塞等级:0代表无拥塞,1代表轻度拥塞、2代表重度拥塞、3代表完全拥塞,初始化拥塞等级设置为0。
步骤S2包括三个部分,第一部分是根据接触剩余可用容量做出的接触拥塞判断,第二部分是根据节点剩余存储空间做出的接触拥塞判断,通过这两部分将接触分为无拥塞、轻度拥塞、重度拥塞和完全拥塞四种等级。另一部分是向其他节点发送拥塞信息通告,将发现的接触拥塞及时告知其他节点。
以链路剩余可用容量为依据的接触拥塞判断的具体过程如下:
束协议定义了三种优先级的束:expedited、normal、bulk,转发时按照该顺序转发。束按照下一跳节点存储,发往同一个节点的束存储在一起,对应于每个邻居节点又分成三种存储队列,对应三种优先级的束。首先找出以本地节点为起点的所有接触,对每段接触分别进行判断。
本实施例使用接触剩余可用容量占接触剩余容量的比例CACR(ContactAvailableCapacityRatio)作为接触拥塞等级的判断依据:
接触的剩余容量是指还没有分配传输任务的接触容量,如果接触还没有开始,则使用接触终止时间减去接触开始时间得到接触的剩余时间,若接触已经开始则使用终止减去当前时刻得到剩余时间,接触剩余时间乘以链路速率得到接触的剩余容量,再减去转发节点维持的三种等级的束的队列长度则可以得到该接触剩余可用容量。当剩余可用容量占剩余接触容量的比例小于百分之二十时认为接触发生轻度拥塞,当小于百分之十时为重度拥塞,当小于百分之零点五时为完全拥塞,我们留出百分之零点五的容量作为束重传、时间不同步等意外情况的开销,各等级拥塞判断依据的CACR值可调。
接触剩余可用容量会随着转发节点存储的发送队列长度的增加而越来越少,因此接触会出现拥塞等级加重的趋势。
以节点剩余存储空间为依据的接触拥塞判断的具体过程如下:
首先从接触计划中找出所有以本地节点为终点的接触,检查节点剩余存储空间是否小于这些接触的剩余容量,如果小于则检测剩余存储空间占该接触剩余容量的比例RNCR(ResidualNodeCapacityRatio)。
当剩余存储空间小于接触的剩余容量时,接触真实的可用容量应该以接触终止节点的剩余存储空间来计算,因为当无传输机会时,需要将数据存储在接触终止节点上,而存储的上限则为节点的剩余存储空间,因此此时反应接触真实可用容量的依据为接触终止节点的剩余存储空间。
当剩余存储空间占比RNCR小于百分之二十时判断接触为轻度拥塞,当RNCR小于百分之十时判定为重度拥塞,当RNCR小于百分之零点五时判定为完全拥塞
节点的剩余存储容量则有两种可能,一种是随着存储的束的增加而使拥塞越来越严重,一种是随着束的转发而使拥塞减轻。因此可能会生成两种趋势的拥塞判断信息,而以接触剩余可用容量为依据的接触拥塞只会呈现加重趋势。
拥塞通告信息包括接触的起始节点、终止节点、起始时间、终止时间、拥塞判断依据和拥塞等级,格式如下:
当判断到接触拥塞状态变化时,向其他节点发送拥塞通告信息,如果未发现拥塞或拥塞等级未发生变化则不发送任何信息。但因为有些节点可能用不到该发生拥塞的接触,如当接触终止时还没有开始使用的接触,这些接触的起始和终止节点将不会使用该接触,因此使用通告域限制通告信息的有用性,避免发往不需要的节点耗费卫星能量等资源。拥塞通告域定义如下:
拥塞通告域:{接触计划中满足开始时间小于失效接触终止时间的所有接触的开始节点和终止节点}
如图2所示,步骤S2进一步包括如下子步骤:
S2.1、查询得到接触计划中第一条接触记录;
S2.2、检查接触起始节点是否为本地节点,是则执行S2.3,否则执行S2.9;
S2.3、计算接触剩余可用容量占接触剩余容量的比例CACR;
S2.4、判断CACR是否小于20%,是则执行S2.5,否则执行S2.16;
S2.5、判断CACR是否小于10%,是则执行S2.6;否则判断该接触发生轻度拥塞,检查与接触计划中将该接触的拥塞等级是否一致,是则执行S2.16;否则将该接触标记为以接触剩余可用容量为依据的轻度拥塞,执行S2.8;
S2.6、判断CACR是否小于0.5%,是则执行S2.7;否则判断该接触发生重度拥塞,检查与接触计划中将该接触的拥塞等级是否一致,是则执行S2.16;否则将该接触标记为以接触剩余可用容量为依据的重度拥塞,执行S2.8;
S2.7、此时认为该接触完全拥塞,检查与接触计划中将该接触的拥塞等级是否一致,是则执行S2.16;否则将该接触标记为以接触剩余可用容量为依据的完全拥塞,执行S2.8;
S2.8、向其他节点发送拥塞通告信息,将通告信息中的判断依据标记为接触剩余可用容量,拥塞等级为接触所判断的拥塞等级,执行S2.16;
S2.9、检查该接触的终止节点是否为本地节点,是则执行S2.10,否则执行S2.16;
S2.10、检查剩余存储空间是否小于接触的剩余存储容量,是则执行S2.11,否则执行S2.16;
S2.11、计算本地节点剩余存储空间占该接触剩余容量的比例RNCR,并判断RNCR是否小于20%,是则执行S2.12,否则执行S2.16;
S2.12、判断RNCR是否小于10%,是则执行S2.13,否则说明发生轻度拥塞,查看与接触计划中关于该接触的拥塞记录是否一致,是则执行S2.16;否则将该接触标记为以节点剩余存储空间不足为依据的轻度拥塞,执行S2.15;
S2.13、判断RNCR是否小于0.5%,是则执行S2.14,否则说明发生重度拥塞,查看与接触计划中关于该接触的拥塞记录是否一致,是则执行S2.16;否则将该接触标记为以节点剩余存储空间不足为依据的重度拥塞,执行S2.15;
S2.14、此时将接触判断为完全拥塞,查看与接触计划中关于该接触的拥塞记录是否一致,是则执行S2.16;否则将该接触标记为以节点剩余存储空间不足为依据的完全拥塞,执行S2.15;
S2.15、向该接触的拥塞通告域中的其他节点发送拥塞通告信息,将拥塞判断依据标记为节点剩余存储空间不足,拥塞等级为接触所判断的拥塞等级;
S2.16、检查接触计划中是否还存在下一条接触记录,是则找到该接触,对该接触执行S2.2;否则休眠1秒,执行S2.1。
步骤S3的具体过程为:
当节点接收到拥塞通告信息时,根据拥塞通告信息中的接触起始节点、接触终止节点、接触起始时间、接触终止时间在接触计划中找到相应接触,更新该接触的拥塞等级并根据接触路由图CGR在为束计算路由时得到最优路径。
根据路径中所有接触的拥塞等级来决定该路径的拥塞等级,路径的拥塞程度由路径中接触的最高拥塞等级决定。
本实施例根据整条路径的拥塞程度来决定转发束的优先级:首先检查束的目的节点是否为下一跳节点,如果是则所有优先级的束都需要转发;当无拥塞时,转发所有优先级的束;当路径轻度拥塞时允许前两个优先级的束转发,当重度拥塞时只允许最高优先级的束转发,当完全拥塞时检查接触拥塞判断依据,如果是接触剩余容量不足引起的拥塞则允许最高优先级的束转发,若判断依据为存储容量,则为所有束均选择次优路径转发,这是因为当发生接触容量不足引起的接触完全拥塞时,最高优先级的束会顶替原有低优先级的束,可以保证高优先级的束使用最优路径,而如果是节点剩余存储空间不足引起的接触拥塞则会将接收到数据全部丢弃。
如图3所示,步骤S3进一步包括如下子步骤:
S3.1、当节点收到束时,判断是否为发给该节点的拥塞通告信息,是则执行S3.2,否则执行S3.3;
S3.2、在接触计划中查询得到相应的接触,更新接触的拥塞信息;
S3.3、使用CGR为束计算最优路径;
S3.4、根据最优路径中包含的所有接触的拥塞等级得出该路径的拥塞等级,判断束的目的节点是否为路径中的下一跳节点,是则直接转发,否则执行S3.5;
S3.5、判断最优路径的拥塞等级是否等于0,是则表明最优路径无拥塞,是则转发该束,否则执行S3.6;
S3.6、判断最优路径的拥塞等级是否为1,是则表明最优路径为轻度拥塞,执行S3.7,否则执行S3.8;
S3.7、判断束的优先级是否为expedited或normal,是则转发该束,否则执行S3.12;
S3.8、判断最优路径的拥塞等级是否为2,是则表明最优路径为重度拥塞,执行S3.9,否则执行S3.10;
S3.9、判断束的优先级是否为expedited,是则转发该束,否则执行S3.12;
S3.10、检查路径拥塞判断依据是否为接触剩余可用容量,是则执行S3.11,否则执行S3.12;
S3.11、判断束的优先级是否为expedited,是则转发该束,否则执行S3.12;
S3.12、使用CGR为束计算最优路径,排除当前最优路径并以当前最优路径的次优路径作为束的最优路径,执行S3.4。
步骤S3还包括如下子步骤:
S3.15、重复执行步骤S3.3至S3.14直至收到束的节点转发完所有优先级的束。
下面将本实施例提供的基于QoS的空间延迟容忍网络拥塞控制方法应用于如图4所示的场景中,对本发明做进一步的说明:
图4所示的场景为模拟多颗LEO卫星通过中继卫星向地面用户发送数据场景。节点1和节点2为卫星源节点,假设链路速率为2Mbps,节点1和2以链路最大速率向地面移动接入网内的用户MN发送数据,首先节点需要将数据发送到位于地面的协议转换网关6,源节点需要经过多颗卫星中继到达地面网关进行协议转换最终到达MN,其中空间域运行DTN协议,网关运行DTN和TCP/IP协议。假设节点1和2到节点3的通信时间以及节点3到网关6的通信时间均为1到600s,节点1到节点4以及节点4到网关6的通信时间均为610到1200s,节点2到5以及节点5到网关6的通信时间均为610到1200s,并假设节点3也存在发往节点1和2的数据,速率为1Mbps,将节点3发往节点1和2的数据流称为反向流量。
以节点3为例说明接触的拥塞判断机制,首先节点1和2发往MN的数据将到达网关6进行协议转换,根据CGR均计算出使用节点3作为中继为最优路径,即图4虚线箭头所指路径,所以节点1和2将同时把数据发往节点3,而节点3到网关6的链路只允许一个源节点的数据通过,此时节点3会把一部分数据存储在发往节点6的传输队列中,具体步骤如下:
步骤1、节点3接收到节点1和2发送来的束,为束计算路由,发现束的目的节点均为节点6,而此时节点3到节点6的速率只允许一个节点发送的束通过,因此会将一半的束暂时存储在发往节点6的队列中,将造成存储空间的消耗和节点3到6接触剩余可用容量的消耗;此时节点3也同时存在发往节点1和2的束,视为反向流量;
步骤2、节点3打开接触计划,找到第一条接触信息,发现为节点1到节点2的接触,此时检查到接触的起始节点不是本地节点(节点3),接着检查到接触的终点也不是节点3,因此继续检查下一条接触;
步骤3、当在接触计划中找到节点3到6的接触后,发现该接触的起始节点为3,此时检查该接触剩余可用容量占接触剩余容量的比例CACR。在发送数据起始阶段,节点3到6的队列中积攒下来的数据比较少,此时发现CACR大于20%,认为该接触未发生拥塞,不需要向其他节点发送拥塞通告,此时执行步骤4;
步骤4、继续检查接触计划中的下一条接触,当发现节点1到节点3的接触时,首先检查到起始节点不是本地节点,而终止节点是本地节点,则检查节点3的剩余存储空间是否小于节点1到节点3的接触容量,由于在起始阶段节点3存储下来的数据还比较少,剩余存储空间将大于节点1到3的接触容量,无接触拥塞发生,执行步骤5;
步骤5、继续检查接触计划中下一跳接触,假设此时已经遍历完一遍接触计划,则下一条接触不存在,休眠1秒后重新检查接触计划中所有接触,重复以上步骤直到有接触发生拥塞;
步骤6、随着时间的推移,节点3上存储下来的到节点6的队列中的数据逐渐增多,将使得3到6的接触剩余可用容量变少,同时也将导致节点3的存储空间的消耗。当再次检查到节点3到6的接触时,计算得到CACR小于20%且大于10%,此时认为节点3到6的接触发生轻度拥塞,则需要向其他节点发送拥塞通告信息。因为节点3到的6的接触终止时间是600s,而1到4、4到6、2到5、5到6的接触开始时间均晚于600s,因此计算出该接触的通告域为节点1、2、6,向这些节点发送拥塞通告信息:节点3到6的接触发生接触剩余可用容量不足情况下的轻度拥塞;继续检查接触计划中下一条接触。
步骤7、当检测到节点1到3的接触时,发现接触的终止节点为节点3,此时由于存储资源的消耗,导致节点3的剩余存储空间小于节点1到3的接触的剩余容量,计算RNCR,此时RNCR小于20%且大于10%,判断发生轻度拥塞,同理得到通告域为节点1、2、6,此时生成拥塞通告信息向通告域的节点发送拥塞通告信息:节点1到3的接触发生节点存储空间不足情况下的轻度拥塞;继续检查接触计划中的下一条接触是否存在,如果不存在则休眠1秒,继续检查;
步骤8、随着时间推移,节点3积攒下来的到节点6的数据越来越多,当检查到节点3到6的接触CACR小于10%大于0.5%时,认为该接触发生重度拥塞,同理,计算通告域并向通告域内的节点发送拥塞通告信息:节点3到6的接触发生接触剩余可用容量不足情况下的重度拥塞;在检查接触计划中下一条接触;
步骤9、当检查到节点1到3的接触,发现此时节点3的剩余存储空间占该接触剩余容量的比例RNCR小于10%而大于0.5%,认为该接触发生了重度拥塞,此时就是那该接触的通告域为1、2、6,发送拥塞通告信息:节点1到节点3的接触发生节点剩余存储空间不足情况下的重度拥塞;继续检查下一条接触,如果不存在则休眠1秒后继续检查;
步骤10、随着时间推移,节点3积攒的到节点6的束越来越多,将造成存储空间的消耗和接触可用容量的减少,当检测到节点3到6的接触的CACR小于0.5%时,认为发生了完全拥塞,计算通告域,向通告域内的节点1、2、6发送拥塞通告信息:节点3到6的接触发生接触剩余可用容量不足情况下的完全拥塞;随后继续检查接触计划中的下一条接触;
步骤11、当检测到节点1到节点3的接触的RNCR小于0.05时,说明接触完全拥塞,此时将向通告域内的节点发送拥塞通告信息:节点1到3的接触发生节点剩余存储空间不足情况下的完全拥塞;随后检查下一条接触。
以节点1为例说明基于QoS的束转发流程,其步骤如下:
步骤(1)、节点接收到束后,检测是否为拥塞通告信息,当发现不是拥塞通告束时,直接执行步骤(3),计算路由并转发;如果是接触拥塞通告束,则执行步骤(2);
步骤(2):在本地接触计划中找到相应的接触,并更新接触的拥塞信息;
步骤(3):为束计算路由,并计算出整个路径的拥塞等级,判断束的目的节点是否为下一跳节点,由于节点1接收到的束为发往节点6的束,而最优路径的下一跳节点是节点3,因此束的目的节点不是下一跳节点,执行步骤(4);
步骤(4):检查最优路径的拥塞等级,在初始发送阶段,由于各个接触还没有发生拥塞状况,因此路径的拥塞等级为0,直接将束转发;
步骤(5):随着时间推移,节点1将接收到节点3发送过来的拥塞信息通告,此时根据拥塞通告信息在接触计划中找到相关接触,更新接触的拥塞等级,节点1将分别接收到节点3发送过来的节点3到节点6的接触在接触剩余可用容量不足情况下的拥塞信息,节点1到节点3以及节点2到节点3的接触在节点剩余存储空间不足情况下的拥塞信息;
步骤(6):当接收到关于3到6的接触或1到3的接触发生轻度拥塞的通告后,为束计算得到的最优路径上将发生轻度拥塞,此时只允许expedited和normal优先级的束转发,对于bulk优先的束使用次优路径发送;
步骤(7):随着时间的推移,当接收到关于3到6的接触或1到3的接触发生重度拥塞的通告后,为束计算得到的最优路径将发生重度拥塞。此时只允许expedited束发送,对于normal和bulk束使用次优路径发送;
步骤(8):随着时间的推移,当接收到关于3到6的接触或1到3的接触完全拥塞的通告后,为束计算得到的最优路径将完全拥塞,此时检查路径的拥塞判断依据是否为接触剩余可用容量不足导致的,如果不是则对所有优先级的束均使用次优路径转发,如果是则只在此路径中转发最高优先的束,因为最高级的束将取代原有低优先级束的转发机会,因此该束依然有机会转发。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
Claims (9)
1.一种基于QoS的空间延迟容忍网络拥塞控制方法,其特征在于,该方法包括如下步骤:
S1、在接触计划中的接触信息格式中加入以节点剩余存储空间为判断依据的接触拥塞等级信息和以接触剩余可用容量为判断依据的拥塞等级信息;
S2、根据接触剩余可用容量和节点的剩余存储空间对接触的拥塞等级进行判断,将接触分为无拥塞、轻度拥塞、重度拥塞和完全拥塞这四种拥塞等级的接触,并向其他节点发送拥塞信息通告;
S3、收到拥塞通告信息的节点更新在接触计划中的接触的拥塞等级,需要转发束的节点根据接触路由图计算束的最优路径,将最优路径中所有接触的最高拥塞等级作为最优路径的拥塞等级,根据最优路径的拥塞等级确定不同优先级的束的转发形式:
当最优路径的拥塞等级为无拥塞时,转发所有优先级的束;
当最优路径的拥塞等级为轻度拥塞时,转发高优先级和中优先级的束;
当最优路径的拥塞等级为重度拥塞时,转发高优先级的束;
当最优路径的拥塞等级为完全拥塞时,如果拥塞等级的判断依据是接触剩余可用容量则转发高优先级的束,如果拥塞等级的判断依据是节点剩余存储空间则利用根据接触路由图计算的束的当前最优路径的次优路径转发束。
2.根据权利要求1所述的基于QoS的空间延迟容忍网络拥塞控制方法,其特征在于,该方法还包括步骤:
S4、重复执行步骤S2至S3直至需要转发束的节点转发完所有优先级的束。
3.根据权利要求1或2所述的基于QoS的空间延迟容忍网络拥塞控制方法,其特征在于,步骤S2中所述拥塞信息通告包括接触的起始节点、终止节点、起始时间、终止时间、拥塞判断依据和拥塞等级。
4.根据权利要求3所述的基于QoS的空间延迟容忍网络拥塞控制方法,其特征在于,步骤S2进一步包括如下子步骤:
S2.1、查询得到接触计划中第一条接触记录;
S2.2、检查接触起始节点是否为本地节点,是则执行S2.3,否则执行S2.9;
S2.3、计算接触剩余可用容量占接触剩余容量的比例;
S2.4、判断接触剩余可用容量占接触剩余容量的比例是否小于20%,是则执行S2.5,否则执行S2.16;
S2.5、判断接触剩余可用容量占接触剩余容量的比例是否小于10%,是则执行S2.6;否则判断该接触发生轻度拥塞,检查与接触计划中将该接触的拥塞等级是否一致,是则执行S2.16;否则将该接触标记为以接触剩余可用容量为依据的轻度拥塞,执行S2.8;
S2.6、判断接触剩余可用容量占接触剩余容量的比例是否小于0.5%,是则执行S2.7;否则判断该接触发生重度拥塞,检查与接触计划中将该接触的拥塞等级是否一致,是则执行S2.16;否则将该接触标记为以接触剩余可用容量为依据的重度拥塞,执行S2.8;
S2.7、判断该接触发生完全拥塞,检查与接触计划中该接触的拥塞等级是否一致,是则执行S2.16;否则将该接触标记为以接触剩余可用容量为依据的完全拥塞,执行S2.8;
S2.8、向其他节点发送拥塞通告信息,将拥塞通告信息中的判断依据标记为接触剩余可用容量,拥塞等级为接触所判断的拥塞等级,执行S2.16;
S2.9、检查该接触的终止节点是否为本地节点,是则执行S2.10,否则执行S2.16;
S2.10、检查剩余存储空间是否小于接触的剩余存储容量,是则执行S2.11,否则执行S2.16;
S2.11、计算本地节点剩余存储空间占该接触剩余容量的比例,并判断本地节点剩余存储空间占该接触剩余容量的比例是否小于20%,是则执行S2.12,否则执行S2.16;
S2.12、判断本地节点剩余存储空间占该接触剩余容量的比例是否小于10%,是则执行S2.13,否则说明该接触发生轻度拥塞,查看与接触计划中关于该接触的拥塞记录是否一致,是则执行S2.16;否则将该接触标记为以节点剩余存储空间不足为依据的轻度拥塞,执行S2.15;
S2.13、判断本地节点剩余存储空间占该接触剩余容量的比例是否小于0.5%,是则执行S2.14,否则说明该接触发生重度拥塞,查看与接触计划中关于该接触的拥塞记录是否一致,是则执行S2.16;否则将该接触标记为以节点剩余存储空间不足为依据的重度拥塞,执行S2.15;
S2.14、判断该接触发生完全拥塞,查看与接触计划中关于该接触的拥塞记录是否一致,是则执行S2.16;否则将该接触标记为以节点剩余存储空间不足为依据的完全拥塞,执行S2.15;
S2.15、向其他节点发送拥塞通告信息,将拥塞判断依据标记为节点剩余存储空间不足,拥塞等级为接触所判断的拥塞等级;
S2.16、检查接触计划中是否还存在下一条接触记录,是则对接触执行S2.2;否则休眠1秒,执行S2.1。
5.根据权利要求4所述的基于QoS的空间延迟容忍网络拥塞控制方法,其特征在于,步骤S2.8中的向其他节点发送拥塞通告信息为向该接触的拥塞通告域中的其他节点发送拥塞通告信息,步骤S2.15中的向其他节点发送拥塞通告信息为向该接触的拥塞通告域中的其他节点发送拥塞通告信息,所述拥塞通告域的定义为接触计划中满足开始时间小于失效接触终止时间的所有接触的开始节点和终止节点。
6.根据权利要求4所述的基于QoS的空间延迟容忍网络拥塞控制方法,其特征在于,步骤S2.3计算接触剩余可用容量占接触剩余容量的比例的计算公式为:
公式中,CACR为接触剩余可用容量占接触剩余容量的比例。
7.根据权利要求4所述的基于QoS的空间延迟容忍网络拥塞控制方法,其特征在于,步骤S2.8中计算本地节点剩余存储空间占该接触剩余容量的比例的计算公式为:
公式中,RNCR为本地节点剩余存储空间占该接触剩余容量的比例。
8.根据权利要求1所述的基于QoS的空间延迟容忍网络拥塞控制方法,其特征在于,步骤S3进一步包括如下子步骤:
S3.1、当节点收到束时,判断是否为发给该节点的拥塞通告信息,是则执行S3.2,否则执行S3.3;
S3.2、在接触计划中查询得到相应的接触,更新接触的拥塞信息;
S3.3、根据接触路由图为束计算最优路径;
S3.4、根据最优路径中包含的所有接触的拥塞等级得出该路径的拥塞等级,判断束的目的节点是否为路径中的下一跳节点,是则直接转发,否则执行S3.5;
S3.5、判断最优路径的拥塞等级是否为无拥塞,是则转发该束,否则执行S3.6;
S3.6、判断最优路径的拥塞等级是否为轻度拥塞,是则执行S3.7,否则执行S3.8;
S3.7、判断束的优先级是否为高优先级或中优先级,是则转发该束,否则执行S3.12;
S3.8、判断最优路径的拥塞等级是否为重度拥塞,是则执行S3.9,否则执行S3.10;
S3.9、判断束的优先级是否为高优先级,是则转发该束,否则执行S3.12;
S3.10、检查路径拥塞判断依据是否为接触剩余可用容量,是则执行S3.11,否则执行S3.12;
S3.11、判断束的优先级是否为高优先级,是则转发该束,否则执行S3.12;
S3.12、根据接触路由图为束计算最优路径,排除当前最优路径并以当前最优路径的次优路径作为束的最优路径,执行S3.4。
9.根据权利要求8所述的基于QoS的空间延迟容忍网络拥塞控制方法,其特征在于,步骤S3还包括如下子步骤:
S3.15、重复执行步骤S3.3至S3.14直至收到束的节点转发完所有优先级的束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610048427.8A CN105656803B (zh) | 2016-01-25 | 2016-01-25 | 一种基于QoS的空间延迟容忍网络拥塞控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610048427.8A CN105656803B (zh) | 2016-01-25 | 2016-01-25 | 一种基于QoS的空间延迟容忍网络拥塞控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105656803A true CN105656803A (zh) | 2016-06-08 |
CN105656803B CN105656803B (zh) | 2018-07-17 |
Family
ID=56486409
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610048427.8A Expired - Fee Related CN105656803B (zh) | 2016-01-25 | 2016-01-25 | 一种基于QoS的空间延迟容忍网络拥塞控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105656803B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110099410A (zh) * | 2019-05-28 | 2019-08-06 | 北京航空航天大学 | 用于临空车地网的dtn分布式缓存方法及设备 |
CN113364704A (zh) * | 2021-06-07 | 2021-09-07 | 河南工业职业技术学院 | 云计算数据中心网络的差分流传输控制方法、系统及终端 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120307725A1 (en) * | 2011-05-31 | 2012-12-06 | Fujitsu Limited | System and method for delivering data in an intermittent communication environment |
CN103024813A (zh) * | 2012-12-05 | 2013-04-03 | 北京科技大学 | 基于容迟容断传感器网络的捆绑层改进算法 |
CN103354479A (zh) * | 2013-03-22 | 2013-10-16 | 哈尔滨工业大学深圳研究生院 | 一种基于lt码的空间dtn传输方法 |
CN103648144A (zh) * | 2013-12-13 | 2014-03-19 | 重庆邮电大学 | 一种无线多跳网络中带多QoS约束的多路径生成方法 |
CN104159256A (zh) * | 2014-08-29 | 2014-11-19 | 大连大学 | 一种基于延时容忍卫星网络的拥塞控制方法 |
-
2016
- 2016-01-25 CN CN201610048427.8A patent/CN105656803B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120307725A1 (en) * | 2011-05-31 | 2012-12-06 | Fujitsu Limited | System and method for delivering data in an intermittent communication environment |
CN103024813A (zh) * | 2012-12-05 | 2013-04-03 | 北京科技大学 | 基于容迟容断传感器网络的捆绑层改进算法 |
CN103354479A (zh) * | 2013-03-22 | 2013-10-16 | 哈尔滨工业大学深圳研究生院 | 一种基于lt码的空间dtn传输方法 |
CN103648144A (zh) * | 2013-12-13 | 2014-03-19 | 重庆邮电大学 | 一种无线多跳网络中带多QoS约束的多路径生成方法 |
CN104159256A (zh) * | 2014-08-29 | 2014-11-19 | 大连大学 | 一种基于延时容忍卫星网络的拥塞控制方法 |
Non-Patent Citations (1)
Title |
---|
N. BEZIRGIANNIDIS等: "contact graph routing enhancement for delay tolerantapace communication", 《ADVANCED SATELLITE MULTIMEDIA SYSTEMS CONFERENCE AND THE 13TH SIGNAL PROCESSING FOR SPACE COMMUNICATIONS WORKSHOP (ASMS/SPSC), 2014TH》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110099410A (zh) * | 2019-05-28 | 2019-08-06 | 北京航空航天大学 | 用于临空车地网的dtn分布式缓存方法及设备 |
CN113364704A (zh) * | 2021-06-07 | 2021-09-07 | 河南工业职业技术学院 | 云计算数据中心网络的差分流传输控制方法、系统及终端 |
CN113364704B (zh) * | 2021-06-07 | 2023-09-01 | 河南工业职业技术学院 | 云计算数据中心网络的差分流传输控制方法、系统及终端 |
Also Published As
Publication number | Publication date |
---|---|
CN105656803B (zh) | 2018-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106656302B (zh) | 面向leo卫星网络的分布式节点自适应路由算法 | |
Silva et al. | A survey on congestion control for delay and disruption tolerant networks | |
Toh et al. | Load balanced routing protocols for ad hoc mobile wireless networks | |
US8130656B2 (en) | Method and device for routing mesh network traffic | |
JP4762735B2 (ja) | 無線通信装置、通信経路制御装置、通信経路制御方法及び通信システム | |
CN108989223A (zh) | 一种强链路约束条件下的卫星路由算法 | |
Cao et al. | A reliable and efficient encounter-based routing framework for delay/disruption tolerant networks | |
US20080151841A1 (en) | Configuration aware packet routing in an ad-hoc network | |
Raverta et al. | Routing in delay-tolerant networks under uncertain contact plans | |
CN101123576A (zh) | 一种基于带宽约束和最小负载的移动自组网路径选择方法 | |
Han et al. | Congestion and position aware dynamic routing for the internet of vehicles | |
Wen et al. | Delay‐Constrained Routing Based on Stochastic Model for Flying Ad Hoc Networks | |
CN106888492B (zh) | 负载感知缓存受限断续连通的卫星网络路由方法 | |
CN105656803A (zh) | 一种基于QoS的空间延迟容忍网络拥塞控制方法 | |
Naresh et al. | Link prediction algorithm for efficient routing in VANETs | |
US7653391B2 (en) | Mobile terminal and mobile communication method | |
Chuah et al. | Integrated buffer and route management in a DTN with message ferry | |
Ayub et al. | Energy efficient inactive node detection based routing protocol for delay tolerant network | |
Kim et al. | Modeling and routing scheme for (m, k)‐firm streams in wireless multimedia sensor networks | |
Dhara et al. | CGR-BF: An efficient contact utilization scheme for predictable deep space delay tolerant network | |
Wang et al. | A social-based DTN routing in cooperative vehicular sensor networks | |
CN113422637A (zh) | 一种数据包转发方法、装置、电子设备及存储介质 | |
Shen et al. | A dynamic modified routing strategy based on load balancing in LEO satellite network | |
Khan et al. | Data rate adaptation strategy to avoid packet loss in MANETs | |
Yuan et al. | A load-balanced on-demand routing for LEO satellite networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180717 Termination date: 20220125 |