【技术实现步骤摘要】
基于SRv6可编程网络的报文传输超时处理方法
[0001]本专利技术属于计算机网络
,尤其涉及基于SRv6(Segment Routing for IPv6即IPv6网络中的段路由)可编程网络的报文传输超时处理方法。
技术介绍
[0002]随着各种互联网应用和5G网络技术的发展,报文传输的时效性越来越重要。在很多应用中,一旦报文传输的时间超出时效时间,则该报文内容就已经失效,没有必要再在网络中传输,如果继续传输失效的报文,则会造成网络资源的浪费;甚至当接收端接收到失效报文后,反倒对网络应用的正常运行带来负面影响,比如在工业控制领域,已经失效的控制指令报文到达后将打乱接收端设备的正常运行甚至造成重大损失。因此在网络传输中及时丢弃已经超出时效时间的网络报文很有意义。
[0003]IETF规范RFC6298设计了一种TCP报文重传的超时计算方法,但是该方法是用于发送端超时没有收到接收端反馈的报文进行重传,是针对发送端的,用以解决传输可靠性问题,并不能解决超时无效报文在网络中继续传输从而占用网络资源的问题。阿维夫 />·
巴内本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于SRv6可编程网络的报文传输超时处理方法,其特征在于包括以下步骤:第一步,设计报文传输超时处理协议格式,方法是:在SRH中用TTP TLV代替Optional TLV字段,TTP TLV包含4个字段,4个字段的长度及含义分别是:Type:表示TTPTLV的类型,Type值=type_value,type_value为0~255范围内除4和5以外的任意不会引起歧义的值;Length:取值为b,b为0~255中任意值,表示TTP TLV从Type字段开始到StartTime字段结束的总长度,长度以字节为单位;Timeout:取值为0~65535中任意值,表示报文传输的时效时间,即当报文在网络中传输时间大于该字段值时,该报文无效,单位为毫秒;StartTime:取值为0~4294967296中任意值,报文从源节点发出的时间,单位为秒;第二步,构建网络报文传输超时处理系统,方法是:网络报文传输超时处理系统由一个报文发送节点、M个报文转发节点组成;报文发送节点是网络中网络应用的客户端或服务端,其上部署有报文构建发送模块;报文转发节点是网络中实施报文转发功能的专用设备或通用服务器,其上部署有报文超时处理模块;报文构建发送模块位于报文发送节点的网络应用和外部网络之间,从网络应用接收网络报文,处理后发送至外部网络;网络应用是指利用网络传输数据的应用程序;报文构建发送模块监听网络应用,从网络应用接收网络流传输时效时间数据和要传输的网络报文;报文构建发送模块将网络流传输时效时间数据存储于网络流传输时效时间链表flow_time_list;flow_time_list中每个元素存储一个网络流的报文传输时效时间数据flow_time,flow_time包含7个域:网络流的源IP即flow_sip、网络流的目的IP即flow_dip、网络流的源端口即flow_sport、网络流的目的端口即flow_dport、网络流协议号即flow_proto、网络流最近传输报文的时间即flow_dtime、网络流传输时效时间即flow_etime;报文构建发送模块从网络应用接收要传输的网络报文,根据网络报文的源IP、目的IP、源端口、目的端口以及网络协议号数据从flow_time_list中查找对应网络流传输时效时间数据,更新网络流传输时效时间数据中的网络流最近传输报文时间flow_dtime,获取系统当前时间,并根据系统当前时间和网络流传输时效时间数据中的flow_etime字段值构建TTP TLV,并更新网络报文的SRH,将更新后的网络报文发送至外部网络;报文构建发送模块如果没有从flow_time_list中查找到对应网络流传输时效时间数据,则将报文直接发送至外部网络;报文超时处理模块位于部署于同一转发节点的转发处理部分与外部网络之间;报文超时处理模块从外部网络接收报文,完成报文传输超时处理后,发送给所在节点上的转发处理部分;报文超时处理模块获取系统当前时间,根据报文中TTP TLV中Timeout字段和Start Time字段的值,判断报文当前传输是否超时,如果超时则丢弃报文,如果没有超时,则将报文发送至转发处理部分;第三步,报文传输超时处理系统的报文构建发送模块和M个超时处理模块并行配合工作,对网络报文传输超时进行处理,方法是:报文构建发送模块管理网络流传输时效时间并将网络应用传输的网络报文封装为超时控制网络报文,方法是:监听所属报文发送节点上的网络应用,从网络应用接收网络流传输时效时间数据flow_time,将flow_time存入网络流传输时效时间链表flow_time_list,
从网络应用接收要传输的网络报文pkt,根据pkt的源IP、目的IP、源端口、目的端口和协议号从flow_time_list中找出对应的flow_time_pkt,根据flow_time_pkt和第一步设计的报文传输超时处理协议格式构建TTP TLV,将TTP TLV插入pkt中,构建超时控制网络报文pkt_new,将pkt_new发送至外部网络;同时第1个报文转发节点1,
…
,第m个报文转发节点,
…
,第M个报文转发节点上的报文超时处理模块并行从外部网络接收超时控制网络报文pkt_new,从pkt_new中获取TTP TLV,根据第一步设计的报文传输超时处理协议格式从TTP TLV中获取报文传输时效时间Timeout和报文从源节点发出的时间StartTime,并获取当前系统时间CurrentTime,根据Timeout、StartTime和CurrentTime判断pkt_new传输是否超时,如果超时则丢弃pkt_new,否则将pkt_new发送给报文超时处理模块所属报文转发节点上的转发处理部分;第1个报文转发节点1,
…
,第m个报文转发节点,
…
,第M个报文转发节点上的报文超时处理模块的处理方法相同。2.如权利要求1所述的一种基于SRv6可编程网络的报文传输超时处理方法,其特征在于所述TTP TLV中的Type字段长度为8bit,type_value选为101;Length字段长度为8bit,b=8;Timeout字段长度为16bit,Timeout设置为0~65.5秒;StartTime字段长度为32bit,StartTime采用Unix时间,即从197...
【专利技术属性】
技术研发人员:原玉磊,赵锋,赵宝康,彭伟,时向泉,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。