CN114125910A - 隧道保活方法、网络设备、系统及存储介质 - Google Patents

隧道保活方法、网络设备、系统及存储介质 Download PDF

Info

Publication number
CN114125910A
CN114125910A CN202010899677.9A CN202010899677A CN114125910A CN 114125910 A CN114125910 A CN 114125910A CN 202010899677 A CN202010899677 A CN 202010899677A CN 114125910 A CN114125910 A CN 114125910A
Authority
CN
China
Prior art keywords
tunnel
alive
keep
information
network device
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.)
Pending
Application number
CN202010899677.9A
Other languages
English (en)
Inventor
牛承光
余舟毅
郭红涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202010899677.9A priority Critical patent/CN114125910A/zh
Priority to PCT/CN2021/114141 priority patent/WO2022042499A1/zh
Priority to EP21860334.8A priority patent/EP4192085A4/en
Publication of CN114125910A publication Critical patent/CN114125910A/zh
Priority to US18/175,274 priority patent/US20230208679A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/04Arrangements for maintaining operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/20Manipulation of established connections
    • H04W76/25Maintenance of established connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2801Broadband local area networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/19Connection re-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/16Gateway arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例公开了一种隧道保活方法、网络设备、系统及存储介质,属于通信技术领域。在本申请实施例中,在UP设备与CP设备之间通信故障之前,UP设备接收CP设备同步的隧道信息,在UP设备与CP之间的通信故障后,由UP设备根据隧道信息进行隧道保活,也即由UP设备维持与远端网络设备之间的隧道,这样就不会因为CP设备与UP设备之间的通信故障而触发拆除隧道,本方案能够保证终端与远端的网络连接不会因此中断,也即保证用户业务不受损。

Description

隧道保活方法、网络设备、系统及存储介质
技术领域
本申请实施例涉及通信技术领域,特别涉及一种隧道保活方法、网络设备、系统及存储介质。
背景技术
当前,终端能够通过网络中部署的宽带网络网关(broadband network gateway,BNG)设备来接入网络。传统的BNG设备中耦合了控制面(control plane,CP)功能和用户面(user plane,UP)功能,随着通信技术的发展,业界提出了控制面功能和用户面功能分离的BNG,这种BNG称为虚拟宽带网络网关(virtual broadband network gateway,vBNG),且包括CP设备和UP设备。当二层隧道协议接入集中器((layer 2tunnel protocol,L2TP)accessconcentrator,LAC)通过vBNG来实现时,CP设备能够在UP设备与远端的L2TP网络服务器(L2TP network server,LNS)之间建立隧道,保证该终端成功接入远端网络。但是,为了保证用户业务不中断,需要对该隧道进行保活处理。
相关技术提供了一种隧道保活方法,在该方法中,CP设备在UP设备与LNS之间建立隧道之后,CP设备与LNS之间通过UP设备周期性地发送隧道保活报文以进行隧道保活,保障用户业务不中断。也即是,UP设备负责转发CP设备与LNS之间的隧道保活报文,以使CP设备与LNS之间能够通信,进而进行隧道保活,来保障用户业务不中断。
然而,如果CP设备与UP设备之间发生通信故障,CP设备与LNS之间无法通过隧道保活报文来进行隧道保活,就会触发拆除隧道,进而使终端与远端网络连接中断,也即用户业务中断。
发明内容
本申请实施例提供了一种隧道保活方法、网络设备、系统及存储介质,能够在UP设备和CP设备之间发生通信故障的情况下,保证终端的网络连接不因此中断。所述技术方案如下:
第一方面,提供了一种隧道保活方法,控制面CP设备和用户面UP设备用于与远端网络设备进行交互来保证终端接入网络,该方法包括:
UP设备接收CP设备发送的第一隧道信息,第一隧道信息包括UP设备与远端网络设备之间建立的一条或多条隧道的信息;如果UP设备检测到自身与CP设备之间的通信发生故障,则UP设备根据第一隧道信息,对该一条或多条隧道进行隧道保活。
在本申请实施例中,在UP设备与CP设备之间通信故障之前,UP设备接收CP设备同步的隧道信息,在UP设备与CP之间的通信故障后,由UP设备根据隧道信息进行隧道保活,也即由UP设备维持与远端网络设备之间的隧道,这样就不会因为CP设备与UP设备之间的通信故障而触发拆除隧道,本方案能够保证终端与远端的网络连接不会因此中断,也即保证用户业务不受损。
在本申请实施例中,在UP设备与CP设备之间通信故障之前,CP设备向UP设备发送第一隧道信息的实现方式有多种,请按照下述第二方面中相关介绍,这里不再赘述。
可选地,第一隧道信息携带在包转发控制协议(packet forwarding controlprotocol,PFCP)更新请求报文中,该一条或多条隧道为L2TP隧道,该一条或多条隧道中每条隧道的信息包括隧道描述信息;如果L2TP隧道是根据第四版互联网协议(Internetprotocol version4,IPv4)创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址;如果L2TP隧道是根据第六版互联网协议(Internetprotocol version6,IPv6)创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。也即是,通过扩展PFCP报文实现CP设备向UP设备同步隧道信息。
在本申请实施例中,在UP设备与CP设备之间通信正常的情况下,CP设备还能够向UP设备同步第一会话信息,UP设备接收CP设备发送的第一会话信息,第一会话信息包括该一条或多条隧道上承载的会话的信息。需要说明的是,由于终端通过承载在隧道上的会话实现业务通信,因此,CP设备向UP设备同步会话信息,后续UP设备进行隧道保活的过程中,根据会话信息实现终端与远端网络设备之间的会话通信。
可选地,第一会话信息携带在PFCP更新请求报文中,该一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。也即是,通过扩展PFCP报文实现CP设备向UP设备同步会话报文。
可选地,在本申请实施例中,UP设备在接收到PFCP更新请求报文之后,向CP设备发送PFCP更新应答报文。
可选地,UP设备通过控制报文重定向接口和状态控制接口与CP设备进行通信;UP设备检测到自身与CP设备之间的通信发生故障,包括:UP设备监控控制报文重定向接口和状态控制接口的状态;如果UP设备监控到控制报文重定向接口和/或状态控制接口的状态异常,则UP设备确定检测到自身与CP设备之间的通信发生故障。也即是,UP设备通过实时检测自身与CP设备通信的通信接口的状态,感知UP设备与CP设备之间的通信状况。
需要说明的是,在本申请实施例中,各个隧道独立进行隧道保活,也即每条隧道对应有隧道保活序列号,UP设备或者CP设备通过与远端网络设备之间周期性地交互隧道保活报文,实现对各个隧道的隧道保活。在本申请实施例中,第一隧道信息包括一条或多条隧道的标识,隧道保活报文携带相应隧道的隧道保活序列号。
而在UP设备与CP设备之间的通信发生故障的情况下,不希望隧道因此被拆除,也即不希望终端的用户业务中断,因此,通过UP设备对隧道继续进行隧道保活。接下来对在UP设备检测到自身与CP设备之间的通信发生故障的情况下,UP设备进行隧道保活的实现方式进行介绍。
第一种实现方式、UP设备根据第一隧道信息,对该一条或多条隧道进行隧道保活,包括:UP设备监听远端网络设备发送的第一隧道保活报文,第一隧道保活报文携带目标隧道的标识和隧道保活序列号,UP设备根据该目标隧道的标识和隧道保活序列号以及该一条或多条隧道的标识,向远端网络设备发送第二隧道保活报文。
需要说明的是,UP设备从向远端网络设备发送第二隧道保活报文开始,即开始周期性地与远端网络设备交互隧道保活报文,实现隧道保活。
在这种实现方式中,对于远端网络设备来说,并不会感知到CP设备与UP设备之间发生通信故障,而是由UP设备继续接替CP设备并根据远端网络设备当前维持的隧道的信息进行隧道保活,也即无缝衔接式的快速进行隧道保活。
由前述可知,在UP设备与CP设备之间的通信正常的情况下,CP设备还向UP设备发送第一会话信息,这样,UP设备在隧道保活的同时,还能够根据第一会话信息,将终端与远端网络设备之间的数据报文维持在隧道承载的会话上,保证终端正常进行业务通信。
第二种实现方式、UP设备根据第一隧道信息,对该一条或多条隧道进行隧道保活,包括:UP设备重置第一隧道信息中目标隧道的隧道保活序列号,目标隧道为该一条或多条隧道中的一条,UP设备根据重置后的目标隧道的隧道保活序列号,指示远端网络设备对目标隧道的隧道保活序列号进行重置,在远端网络设备对目标隧道的隧道保活序列号重置成功后,UP设备按照重置后的目标隧道的隧道保活序列号以及目标隧道的标识,对目标隧道进行隧道保活。
在这种实现方式中,UP设备需要与远端网络设备之间进行一次隧道故障恢复,也即与远端网络设备进行一次数据对账和重置隧道保活序列号,以保证UP设备与远端网络设备之间的隧道一致性。
可选地,UP设备根据重置后的所述目标隧道的隧道保活序列号,指示所述远端网络设备对所述目标隧道的隧道保活序列号进行重置,包括:UP设备向远端网络设备发送第一控制请求报文,第一控制请求报文携带目标隧道的标识、重置后的目标隧道的隧道保活序列号,以及序列号重置指示信息;UP设备接收远端网络设备发送的第一控制应答报文,第一控制应答报文用于指示远端网络设备对目标隧道的隧道保活序列号重置成功。
可选地,UP设备重置目标隧道的隧道保活序列号之前,还包括:UP设备创建与远端网络设备之间的数据对账隧道;UP设备通过数据对账隧道,向远端网络设备发送第一隧道数据对账报文,第一隧道数据对账报文携带UP设备上存储的与远端网络设备之间建立的隧道的标识;UP设备接收远端网络设备发送的第一隧道对账应答报文,第一隧道对账应答报文携带远端网络设备上存储的与UP设备之间建立的隧道的标识;UP设备将第一隧道数据对账报文携带的隧道的标识与第一隧道对账应答报文携带的隧道的标识的交集,确定为一条或多条隧道的标识。
也即是,在UP设备与远端网络设备之间进行重置隧道保活序列号之前,UP设备先与远端网络设备之间进行数据对账,以通过数据对账保证UP设备与远端网络设备之间的隧道一致性,这样,UP设备能更加精确地进行隧道保活。
由前述可知,在UP设备与CP设备之间的通信正常的情况下,CP设备还向UP设备发送第一会话信息,也即是,UP设备根据第一隧道信息,对该一条或多条隧道进行隧道保活之前,还包括:UP设备接收CP设备发送的第一会话信息,第一会话信息包括该一条或多条隧道上承载的会话的信息,这样,UP设备创建与远端网络设备之间的数据对账隧道之后,还包括:UP设备向远端网络设备发送第一会话数据对账报文,第一会话数据对账报文携带一个或多个第一参考会话的标识,该一个或多个第一参考会话为UP设备上存储的目标隧道上承载的会话;UP设备接收远端网络设备发送的第一会话对账应答报文,第一会话对账应答报文携带一个或多个第二参考会话的标识,该一个或多个第二参考会话为远端网络设备上存储的目标隧道上承载的会话;UP设备将一个或多个第一参考会话的标识与一个或多个第二参考会话的标识的交集,确定为目标隧道上承载的会话的标识。
也即是,在本申请实施例中,UP设备还能够更新第一会话信息中目标隧道上承载的会话的信息,以对目标隧道上承载的会话进行故障恢复。
需要说明的是,UP设备与远端网络设备之间通过会话故障恢复,将UP设备与远端网络设备之间还未完成建立的会话进行删除,也即清理半连接状态的会话。
在上述第二种实现方式中,UP设备与远端网络设备之间通过隧道故障恢复和会话故障恢复,保证UP设备与远端网络设备之间的隧道和会话的一致性,能够更加精确地对UP设备与远端网络设备之间建立的隧道进行隧道保活。
以上仅以该一条或多条隧道中的目标隧道为例,对UP设备进行隧道保活的方法进行了介绍,对于该一条或多条隧道中除目标隧道之外的其他隧道,UP设备均能够按照与目标隧道相同的隧道保活方法,进行隧道保活,本申请实施例对此不再赘述。
在本申请实施例中,UP设备根据第一隧道信息,对该一条或多条隧道进行隧道保活之后,还包括:如果UP设备检测到自身与CP设备之间的通信恢复,则UP设备停止对该一条或多条隧道进行隧道保活,而CP设备需要重新对该一条或多条隧道进行隧道保活。
在本申请实施例中,UP设备停止对该一条或多条隧道进行隧道保活之后,还包括:UP设备接收CP设备发送的第二隧道信息,第二隧道信息包括第一时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道的信息,第一时刻是指UP设备与CP设备之间的通信恢复之后,CP设备通过UP设备与远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻;UP设备根据第二隧道信息,更新本地存储的隧道信息。也即是,CP设备与远端网络设备之间完成隧道故障恢复或会话故障恢复之后,再次向UP设备同步隧道信息,保证UP设备上存储的隧道信息与CP设备一致,以备后续UP设备与CP设备之间的通信再次发生故障。
可选地,第二隧道信息携带在PFCP更新请求报文中。也即是,在本申请实施例中,也通过对PFCP进行扩展,得到携带第二隧道信息的PFCP更新请求报文。
第二方面,提供了一种隧道保活方法,控制面CP设备和用户面UP设备用于与远端网络设备进行交互来保证终端接入网络,该方法包括:
CP设备向UP设备发送第一隧道信息,第一隧道信息包括UP设备与远端网络设备之间建立的一条或多条隧道的信息;如果CP设备检测到自身与UP设备之间的通信发生故障,则CP设备停止对该一条或多条隧道进行隧道保活;其中,第一隧道信息用于UP设备在检测到自身与CP设备之间的通信发生故障时,根据第一隧道信息对UP设备与远端网络设备之间建立的一条或多条隧道进行隧道保活。
在本申请实施例中,在UP设备与CP设备之间通信故障之前,CP设备向UP设备同步隧道信息,在UP设备与CP之间的通信故障后,由UP设备根据隧道信息进行隧道保活,也即由UP设备维持与远端网络设备之间的隧道,这样就不会因为CP设备与UP设备之间的通信故障而触发拆除隧道,本方案能够保证终端与远端的网络连接不会因此中断,也即保证用户业务不受损。
需要说明的是,UP设备根据隧道信息进行隧道保活的实现方式参照前述第一方面提供的隧道保活方法,这里不再赘述。
在本申请实施例中,在UP设备与CP设备之间通信故障之前,CP设备向UP设备发送第一隧道信息的实现方式有多种,接下来介绍其中的两种实现方式。
第一种实现方式、CP设备通过即时的方式将第一隧道信息同步给UP设备。
也即是,CP设备每创建一条隧道,向UP设备发送所创建的隧道的信息,每删除一条隧道,向UP设备发送所删除的隧道的信息。
可选地,第一隧道信息携带在PFCP更新请求报文中,该一条或多条隧道为L2TP隧道,该一条或多条隧道中每条隧道的信息包括隧道描述信息;如果L2TP隧道是根据IPv4创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址;如果L2TP隧道是根据IPv6创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。
在本申请实施例中,在UP设备与CP设备之间通信正常的情况下,CP设备还能够向UP设备同步第一会话信息,UP设备接收CP设备发送的第一会话信息,第一会话信息包括该一条或多条隧道上承载的会话的信息。
在第一种实现方式中,CP设备每创建一个会话,向UP设备同步所创建的会话的信息,每删除一个会话,向UP设备同步所删除的会话的信息。
可选地,第一会话信息携带在PFCP更新请求报文中,该一条或多条隧道中每个隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。
在CP设备向UP设备同步信息的第一种实现方式中,第一隧道信息和第一会话信息分别携带在不同的PFCP更新请求报文中,一个PRCP更新请求报文携带创建的一条隧道的信息,或者删除的一条隧道的信息,或者一个创建的会话的信息,或者一个删除的会话的信息。通过即时的方式同步信息,能够保证信息的及时性和隧道保活的可靠性。
第二种实现方式、CP设备周期性地将第一隧道信息同步给UP设备。
也即是,CP设备每隔一个同步周期,将自身存储的所有建立的隧道的信息同步给UP设备。或者,CP设备每隔一个同步周期,将更新的隧道的信息同步给CP设备,更新的隧道包括上一次同步隧道的信息之后建立的隧道和删除的隧道的信息。
在第二种实现方式中,CP设备还能够周期性地将第一会话信息同步给UP设备。也即是,在本申请实施例中,CP设备停止隧道保活之前,还包括:CP设备向UP设备发送第一会话信息,第一会话信息包括该一条或多条隧道上承载的会话的信息。
可选地,第一隧道信息和第一会话信息携带在PFCP更新请求报文中。对PFCP更新请求报文的相关描述参照前述相关介绍,这里不再赘述。需要说明的是,在第二种实现方式中,第一隧道信息和第一会话信息可以携带在同一个PFCP更新请求报文中,也可以携带在不同的PFCP更新请求报文中。
可选地,第一会话信息携带在PFCP更新请求报文中,该一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。
需要说明的是,第一隧道信息和第一会话信息的详细介绍参照前述第一方面的相关内容,这里不再赘述。
可选地,CP设备通过控制报文重定向接口和状态控制接口与UP设备进行通信;CP设备检测到自身与UP设备之间的通信发生故障,包括:CP设备监控控制报文重定向接口和状态控制接口的状态;如果CP设备监控到控制报文重定向接口和/或状态控制接口的状态异常,则CP设备确定检测到自身与UP设备之间的通信发生故障。
在本申请实施例中,如果CP设备检测到自身与UP设备之间的通信发生故障,则CP设备停止对该一条或多条隧道进行隧道保活之后,还包括:如果CP设备检测到自身与UP设备之间的通信恢复,则CP设备重新对该一条或多条隧道进行隧道保活。也即是,在CP设备与UP设备之间的通信正常的情况下,仍由CP设备进行隧道保活,以减轻UP设备的负载压力。
在本申请实施例中,CP设备重新对该一条或多条隧道进行隧道保活,包括:CP设备重置本地存储的目标隧道的隧道保活序列号,目标隧道为该一条或多条隧道中的一条;CP设备根据重置后的目标隧道的隧道保活序列号,指示远端网络设备对目标隧道的隧道保活序列号进行重置;在远端网络设备对目标隧道的隧道保活序列号重置成功后,CP设备按照重置后的目标隧道的隧道保活序列号以及目标隧道的标识,通过UP设备对目标隧道进行隧道保活。
可选地,CP设备根据重置后的目标隧道的隧道保活序列号,指示远端网络设备对目标隧道的隧道保活序列号进行重置,包括:CP设备通过UP设备向远端网络设备发送第二控制请求报文,第二控制请求报文携带目标隧道的标识、重置后的目标隧道的隧道保活序列号,以及序列号重置指示信息;CP设备通过UP设备接收远端网络设备发送的第二控制应答报文,第二控制应答报文用于指示远端网络设备对目标隧道的隧道保活序列号重置成功。
需要说明的是,在UP设备与远端网络设备之间进行隧道保活的过程中,远端网络设备可能会拆除某些隧道,CP设备与远端网络设备之间通过隧道故障恢复,将UP设备与远端网络设备之间的隧道进行关于隧道的数据对账,以清理CP上存储的已被拆除的隧道,保证CP设备与远端网络设备之间的隧道一致性,保证UP设备进行隧道保活的精确性。
也即是,CP设备重置本地存储的目标隧道的隧道保活序列号之前,还包括:CP设备创建与远端网络设备之间的数据对账隧道;CP设备通过数据对账隧道,通过UP设备向远端网络设备发送第二数据对账报文,第二数据对账报文携带CP设备上存储的UP设备与远端网络设备之间建立的隧道的标识;CP设备通过UP设备接收远端网络设备发送的第二对账应答报文,第二对账应答报文携带远端网络设备上存储的与UP设备之间建立的隧道的标识;CP设备将第二数据对账报文携带的隧道的标识与第二对账应答报文携带的隧道的标识的交集,确定为一条或多条隧道的标识。
需要说明的是,CP设备进行数据对账以及重置隧道保活序列号的过程参照前述UP设备的相关内容,这里不再赘述。
在本申请实施例中,CP设备通过UP设备对目标隧道进行故障恢复之后,还能够通过UP设备更新自身存储的目标隧道上承载的会话的信息,以对目标隧道上承载的会话进行故障恢复。
也即是,CP设备创建与远端网络设备之间的数据对账隧道之后,还包括:CP设备通过UP设备向远端网络设备发送第二会话数据对账报文,第二会话数据对账报文携带一个或多个第一参考会话的标识,该一个或多个第一参考会话为CP设备上存储的目标隧道上承载的会话;CP设备通过UP设备接收远端网络设备发送的第二会话对账应答报文,第二会话对账应答报文携带一个或多个第三参考会话的标识,该一个或多个第三参考会话为远端网络设备上存储的目标隧道上承载的会话;CP设备将该一个或多个第一参考会话的标识与该一个或多个第三参考会话的标识的交集,确定为目标隧道上承载的会话的标识。也即是,CP设备通过UP设备更新自身存储的目标隧道上承载的会话的信息,以对目标隧道上承载的会话进行故障恢复。
需要说明的是,在UP设备与远端网络设备之间进行隧道保活的过程中,远端网络设备也可能会拆除某些隧道上的会话,CP设备与远端网络设备之间通过会话故障恢复,将UP设备与远端网络设备之间的会话进行关于会话的数据对账,也即清理CP上存储的已被拆除的会话,保证CP设备与远端网络设备之间的会话一致性。
另外,对于该一条或多条隧道中除目标隧道之外的其他隧道,CP设备均能够按照与目标隧道相同的故障恢复方法,进行隧道故障恢复以及会话故障恢复,本申请实施例对此不再赘述。
在本申请实施例中,CP设备根据重置后的目标隧道的隧道保活序列号,通过UP设备对目标隧道进行故障恢复之后,还包括:CP设备向UP设备发送第二隧道信息,第二隧道信息包括第一时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道的信息,第一时刻是指UP设备与CP设备之间的通信恢复之后,CP设备通过UP设备与远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻。也即是,CP设备再次向UP设备同步隧道信息,以备后续UP设备与CP设备之间的通信再次发生故障,由UP设备进行隧道保活。
可选地,第二隧道信息携带在PFCP更新请求报文中。
在本申请实施例中,CP设备通过UP设备对目标隧道上的会话进行故障恢复之后,还包括:CP设备向UP设备发送第二会话信息,第二会话信息包括第二时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道上承载的会话的信息。也即是,CP设备再次向UP设备同步会话信息,以备后续UP设备与CP设备之间的通信再次发生故障,由UP设备进行隧道保活以及实现终端的会话通信。
可选地,第二会话信息携带在PFCP更新请求报文中。
可选地,第二隧道信息和第二会话信息携带在一个PFCP更新请求报文中,或者携带在不同的PFCP更新请求报文中。
可选地,在申请实施例中,CP设备在向UP设备发送携带第二隧道信息和/或第二会话信息的PFCP更新请求报文之后,接收UP设备发送的PFCP更新应答报文。
在本申请实施例中,CP设备与远端网络设备进行隧道故障恢复和会话故障会话后,向UP设备同步一次隧道信息和会话信息之后,仍继续通过即时的方式或者周期性的方式,向UP设备同步最新的隧道信息和会话信息,以备后续UP设备与CP设备之间再次发生通信故障。
第三方面,提供了一种网络设备,所述网络设备具有实现上述第一方面中隧道保活方法行为的功能。所述网络设备包括一个或多个模块,该一个或多个模块用于实现上述第一方面所提供的隧道保活方法。
也即是,提供了一种网络设备,该网络设备应用于网络系统,该网络系统包括CP设备和UP设备,CP设备和UP设备用于与远端网络设备进行交互来保证终端接入网络,该网络设备为UP设备,该网络设备包括:
第一接收模块,用于接收CP设备发送的第一隧道信息,第一隧道信息包括UP设备与远端网络设备之间建立的一条或多条隧道的信息;
隧道保活模块,用于如果检测到UP设备与CP设备之间的通信发生故障,则根据第一隧道信息,对该一条或多条隧道进行隧道保活。
可选地,第一隧道信息包括一条或多条隧道的标识;
隧道保活模块包括:
监听单元,用于监听远端网络设备发送的第一隧道保活报文,第一隧道保活报文携带目标隧道的标识和隧道保活序列号;
第一发送单元,用于根据目标隧道的隧道保活序列号以及该一条或多条隧道的标识,向远端网络设备发送第二隧道保活报文。
可选地,第一隧道信息包括一条或多条隧道的标识;
隧道保活模块包括:
重置单元,用于重置目标隧道的隧道保活序列号,目标隧道为该一条或多条隧道中的一条;
指示单元,用于根据重置后的目标隧道的隧道保活序列号,指示远端网络设备对目标隧道的隧道保活序列号进行重置;
隧道保活单元,用于在远端网络设备对目标隧道的隧道保活序列号重置成功后,按照重置后的目标隧道的隧道保活序列号以及目标隧道的标识,对目标隧道进行隧道保活。
可选地,指示单元具体用于:
向远端网络设备发送第一控制请求报文,第一控制请求报文携带目标隧道的标识、重置后的目标隧道的隧道保活序列号,以及序列号重置指示信息;
接收远端网络设备发送的第一控制应答报文,第一控制应答报文用于指示远端网络设备对目标隧道的隧道保活序列号重置成功。
可选地,隧道保活模块还包括:
创建单元,用于创建与远端网络设备之间的数据对账隧道;
第二发送单元,用于通过该数据对账隧道,向远端网络设备发送第一隧道数据对账报文,第一隧道数据对账报文携带UP设备上存储的与远端网络设备之间建立的隧道的标识;
第一接收单元,用于接收远端网络设备发送的第一隧道对账应答报文,第一隧道对账应答报文携带远端网络设备上存储的与UP设备之间建立的隧道的标识;
第一确定单元,用于将第一隧道数据对账报文携带的隧道的标识与第一隧道对账应答报文携带的隧道的标识的交集,确定为该一条或多条隧道的标识。
可选地,该网络设备还包括:
第二接收模块,用于接收CP设备发送的第一会话信息,第一会话信息包括该一条或多条隧道上承载的会话的信息;
隧道保活模块还包括:
第三发送单元,用于向远端网络设备发送第一会话数据对账报文,第一会话数据对账报文携带一个或多个第一参考会话的标识,该一个或多个第一参考会话为UP设备上存储的目标隧道上承载的会话;
第二接收单元,用于接收远端网络设备发送的第一会话对账应答报文,第一会话对账应答报文携带一个或多个第二参考会话的标识,该一个或多个第二参考会话为远端网络设备上存储的目标隧道上承载的会话;
第二确定单元,用于将该一个或多个第一参考会话的标识与该一个或多个第二参考会话的标识的交集,确定为目标隧道上承载的会话的标识。
可选地,该网络设备还包括:
处理模块,用于如果检测到UP设备与CP设备之间的通信恢复,则停止对该一条或多条隧道进行隧道保活。
可选地,该网络设备还包括:
第三接收模块,用于接收CP设备发送的第二隧道信息,第二隧道信息包括第一时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道的信息,第一时刻是指UP设备与CP设备之间的通信恢复之后,CP设备通过UP设备与远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻;
更新模块,用于根据第二隧道信息,更新本地存储的隧道信息。
可选地,UP设备通过控制报文重定向接口和状态控制接口与CP设备进行通信;
隧道保活模块包括:
监控单元,用于监控控制报文重定向接口和状态控制接口的状态;
第三确定单元,用于如果监控到控制报文重定向接口和/或状态控制接口的状态异常,则确定检测到UP设备与CP设备之间的通信发生故障。
可选地,第一隧道信息携带在PFCP更新请求报文中,该一条或多条隧道为L2TP隧道,该一条或多条隧道中每条隧道的信息包括隧道描述信息;
如果L2TP隧道是根据IPv4创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址;
如果L2TP隧道是根据IPv6创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。
可选地,第二隧道信息携带在PFCP更新请求报文中。
可选地,第一会话信息携带在PFCP更新请求报文中,该一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。
第四方面,提供了一种网络设备,所述网络设备具有实现上述第二方面中隧道保活方法行为的功能。所述网络设备包括一个或多个模块,该一个或多个模块用于实现上述第二方面所提供的隧道保活方法。
也即是,提供了一种网络设备,该网络设备应用于网络系统,该网络系统包括CP设备和UP设备,CP设备和UP设备用于与远端网络设备进行交互来保证终端接入网络,该网络设备为CP设备,该网络设备包括:
第一发送模块,用于向UP设备发送第一隧道信息,第一隧道信息包括UP设备与远端网络设备之间建立的一条或多条隧道的信息;
处理模块,用于如果检测到CP设备与UP设备之间的通信发生故障,则停止对该一条或多条隧道进行隧道保活;
其中,第一隧道信息用于指示UP设备在检测到自身与CP设备之间的通信发生故障时,对UP设备与远端网络设备之间建立的一条或多条隧道进行隧道保活。
可选地,该网络设备还包括:
隧道保活模块,用于如果检测到CP设备与UP设备之间的通信恢复,则重新对一条或多条隧道进行隧道保活。
可选地,隧道保活模块包括:
重置单元,用于重置本地存储的目标隧道的隧道保活序列号,目标隧道为该一条或多条隧道中的一条;
指示单元,用于根据重置后的目标隧道的隧道保活序列号,指示远端网络设备对目标隧道的隧道保活序列号进行重置;
隧道保活单元,用于在远端网络设备对目标隧道的隧道保活序列号重置成功后,按照重置后的目标隧道的隧道保活序列号以及目标隧道的标识,通过UP设备对目标隧道进行隧道保活。
可选地,指示单元具体用于:
通过UP设备向远端网络设备发送第二控制请求报文,第二控制请求报文携带目标隧道的标识、重置后的目标隧道的隧道保活序列号,以及序列号重置指示信息;
通过UP设备接收远端网络设备发送的第二控制应答报文,第二控制应答报文用于指示远端网络设备对目标隧道的隧道保活序列号重置成功。
可选地,隧道保活模块还包括:
创建单元,用于创建与远端网络设备之间的数据对账隧道;
第一发送单元,用于通过数据对账隧道,通过UP设备向远端网络设备发送第二数据对账报文,第二数据对账报文携带CP设备上存储的UP设备与远端网络设备之间建立的隧道的标识;
第一接收单元,用于通过UP设备接收远端网络设备发送的第二对账应答报文,第二对账应答报文携带远端网络设备上存储的与UP设备之间建立的隧道的标识;
第一确定单元,用于将第二数据对账报文携带的隧道的标识与第二对账应答报文携带的隧道的标识的交集,确定为一条或多条隧道的标识。
可选地,隧道保活模块还包括:
第二发送单元,用于通过UP设备向远端网络设备发送第二会话数据对账报文,第二会话数据对账报文携带一个或多个第一参考会话的标识,该一个或多个第一参考会话为CP设备上存储的目标隧道上承载的会话;
第二接收单元,用于通过UP设备接收远端网络设备发送的第二会话对账应答报文,第二会话对账应答报文携带一个或多个第三参考会话的标识,该一个或多个第三参考会话为远端网络设备上存储的目标隧道上承载的会话;
第二确定单元,用于将该一个或多个第一参考会话的标识和一个或多个第三参考会话的标识的交集,确定为目标隧道上承载的会话的标识。
可选地,隧道保活模块还包括:
第三发送单元,用于向UP设备发送第二隧道信息,第二隧道信息包括第一时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道的信息,第一时刻是指UP设备与CP设备之间的通信恢复之后,CP设备通过UP设备与远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻。
可选地,CP设备通过控制报文重定向接口和状态控制接口与UP设备进行通信;
处理模块包括:
监控单元,用于监控控制报文重定向接口和状态控制接口的状态;
第三确定单元,用于如果监控到控制报文重定向接口和/或状态控制接口的状态异常,则确定检测到CP设备与UP设备之间的通信发生故障。
可选地,第一隧道信息携带在PFCP更新请求报文中,该一条或多条隧道为二层隧道协议L2TP隧道,该一条或多条隧道中每条隧道的信息包括隧道描述信息;
如果L2TP隧道是根据IPv4创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址;
如果L2TP隧道是根据IPv6创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。
可选地,第二隧道信息携带在PFCP更新请求报文中。
可选地,该网络设备还包括:
第四发送模块,用于向UP设备发送第一会话信息,第一会话信息包括该一条或多条隧道上承载的会话的信息。
可选地,第一会话信息携带在PFCP更新请求报文中,该一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。
可选地,第一发送模块包括:
第五发送单元,用于每创建一条隧道,向UP设备发送创建的一条隧道的信息,一条或多条隧道包括创建的一条隧道;或者,
第六发送单元,用于周期性地向UP设备发送自身存储的隧道的信息。
第五方面,提供了一种网络设备,所述网络设备应用于网络系统,所述网络系统包括UP设备和CP设备,CP设备和UP设备用于与远端网络设备进行交互来保证终端接入网络,所述网络设备为UP设备,所述网络设备包括处理器和存储器,所述存储器用于存储执行上述第一方面所提供的隧道保活方法的程序,以及存储用于实现上述第一方面所提供的隧道保活方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
第六方面,提供了一种网络设备,所述网络设备应用于网络系统,所述网络系统包括UP设备和CP设备,CP设备和UP设备用于与远端网络设备进行交互来保证终端接入网络,所述网络设备为CP设备,所述网络设备包括处理器和存储器,所述存储器用于存储执行上述第二方面所提供的隧道保活方法的程序,以及存储用于实现上述第二方面所提供的隧道保活方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
第七方面,提供了一种网络系统,所述系统包括CP设备和UP设备,以及远端网络设备,所述CP设备和所述UP设备用于与所述远端网络设备进行交互来保证终端接入网络;
所述UP设备,用于实现上述第一方面所提供的隧道保活方法;
所述CP设备,用于实现上述第二方面所提供的隧道保活方法。
第八方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面所述的隧道保活方法。
第九方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面所述的隧道保活方法。
上述第三方面、第四方面、第五方面、第六方面、第七方面、第八方面和第九方面所获得的技术效果与第一方面或第二方面中对应的技术手段获得的技术效果近似,在这里不再赘述。
本申请实施例提供的技术方案至少能够带来以下有益效果:
在本申请实施例中,在UP设备与CP设备之间通信故障之前,UP设备接收CP设备同步的隧道信息,在UP设备与CP之间的通信故障后,由UP设备根据隧道信息进行隧道保活,也即由UP设备维持与远端网络设备之间的隧道,这样就不会因为CP设备与UP设备之间的通信故障而触发拆除隧道,本方案能够保证终端与远端的网络连接不会因此中断,也即保证用户业务不受损。
附图说明
图1是本申请实施例提供的一种隧道保活方法所涉及的系统架构图;
图2是本申请实施例提供的一种网络设备的结构示意图;
图3是本申请实施例提供的一种隧道保活方法的流程图;
图4是本申请实施例提供的另一种隧道保活方法的流程图;
图5是本申请实施例提供的一种CP设备与UP设备包括的模块间通信的示意图;
图6是本申请实施例提供的一种网络设备的结构示意图;
图7是本申请实施例提供的另一种网络设备的结构示意图;
图8是本申请实施例提供的又一种网络设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
图1是本申请实施例提供的一种隧道保活方法所涉及的系统架构图。参见图1,该系统架构包括终端101、CP设备102和UP设备103、远端网络设备104和远端接入点105。终端101与UP设备103之间建立有通信连接,UP设备103与远端网络设备104之间建立有通信连接,CP设备102与UP设备103之间建立有通信连接,远端网络设备104与远端接入点105之间建立通信连接。
在本申请实施例中,本端的CP设备102和UP设备103作为vBGN的两部分,共同实现LAC功能,远端网络设备104实现LNS功能,本端的CP设备102能够在UP设备103与远端网络设备104之间建立隧道和会话,保证终端101成功接入远端接入点105提供的网络并实现业务通信。为了保证用户业务不中断,需要对UP设备103与远端网络设备104之间的隧道进行隧道保活。
在UP设备103与CP设备102之间未发生通信故障的情况下,CP设备102用于在UP设备103与远端网络设备104之间建立隧道以及承载在该隧道上的会话,进而将终端101接入远端的网络,并由CP设备102通过UP设备103对UP设备103与远端网络设备104之间建立的隧道进行隧道保活,保障用户业务不中断。UP设备103还用于在该隧道承载的会话上传递终端101与远端网络设备104之间的数据报文,实现终端101与远端网络设备104之间的业务通信。也即是,CP设备102和UP设备103用于与远端网络设备104进行交互保证终端101接入网络。另外,CP设备102还用于根据本申请实施例提供的隧道保活方法,向UP设备103同步隧道信息和会话信息。
在UP设备103与CP设备102之间的通信发生故障的情况下,CP设备102不能继续通过UP设备103与远端网络设备104交互进行隧道保活,这种情况下,UP设备103根据存储的隧道信息,对UP设备103与远端网络设备104之间的隧道进行隧道保活,以保证隧道不会因为UP设备103和CP设备102之间的通信故障而拆除,以维持隧道,保证隧道上承载的会话不中断。
在UP设备103与CP设备102之间的通信恢复之后,UP设备103停止隧道保活,CP设备102继续通过UP设备103与远端网络设备104之间进行隧道保活,并且CP设备102将自身与远端网络设备104之间进行隧道保活的过程中,存储的隧道信息同步给UP设备103。
需要说明的是,该系统架构中包括多个终端,以及与每个终端对应的远端网络设备和远端接入点,以上仅以一个终端和对应的一个远端网络设备和远端接入点为例进行介绍。对于每个终端,CP设备与UP设备均能实现以上功能。
可选地,远端网络设备104为传统的BNG设备,即远端网络设备104为一个独立的网关设备。或者,远端网络设备104也通过vBNG实现,即包括一个CP设备和一个UP设备,在这种情况下,为了便于描述,将本端的CP设备102和UP设备103分别称为CP-LAC和UP-LAC,将远端的CP设备和UP设备分别称为CP-LNS和UP-LNS,CP-LAC与UP-LAC通信连接,UP-LAC与UP-LNS通信连接,UP-LNS与CP-LNS通信连接。
可选地,虚拟宽带远程接入服务器(virtual broadband remote access server,vBRAS)也能实现与vBNG相同的功能,也即vBRAS包括CP设备和UP设备,该CP设备和UP设备用于将本端的终端接入远端网络,并根据本申请实施例提供的隧道保活方法实现隧道保活。
在本申请实施例中,终端101为手机、电脑、家庭网关等设备,UP设备103为路由器、交换机等设备,CP设备102为一台服务器,或者由多台服务器构成的服务器集群,或者一个云计算服务中心,远端网络设备104为路由器、交换机等独立的设备,或者远端网络设备104包括一个UP设备和一个CP设备,远端接入点105为提供宽带网络的设备。
请参考图2,图2是根据本申请实施例示出的一种网络设备的结构示意图。可选地,该网络设备为图1中所示的CP设备或UP设备,该网络设备包括一个或多个处理器201、通信总线202、存储器203以及一个或多个通信接口204。
处理器201为一个通用中央处理器(central processing unit,CPU)、网络处理器(NP)、微处理器、或者为一个或多个用于实现本申请方案的集成电路,例如,专用集成电路(application-specific integrated cirCPit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。可选地,上述PLD为复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
通信总线202用于在上述组件之间传送信息。可选地,通信总线202分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选地,存储器203为只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、电可擦可编程只读存储器(electrically erasableprogrammable read-only memory,EEPROM)、光盘(包括只读光盘(compact disc read-only memory,CD-ROM)、压缩光盘、激光盘、数字通用光盘、蓝光光盘等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器203独立存在,并通过通信总线202与处理器201相连接,或者,存储器203与处理器201集成在一起。
通信接口204使用任何收发器一类的装置,用于与其它设备或通信网络通信。通信接口204包括有线通信接口,可选地,还包括无线通信接口。其中,有线通信接口例如以太网接口等。可选地,以太网接口为光接口、电接口或其组合。无线通信接口为无线局域网(wireless local area networks,WLAN)接口、蜂窝网络通信接口或其组合等。当该网络设备为CP设备时,通信接口204用于与UP设备通信,当该网络设备为UP设备时,通信接口204用于与CP设备通信。
可选地,在一些实施例中,该网络设备包括多个处理器,如图2中所示的处理器201和处理器205。这些处理器中的每一个为一个单核处理器,或者一个多核处理器。可选地,这里的处理器指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,该网络设备还包括输出设备206和输入设备207。输出设备206和处理器201通信,能够以多种方式来显示信息。例如,输出设备206为液晶显示器(liquid crystal display,LCD)、发光二级管(light emitting diode,LED)显示设备、阴极射线管(cathode ray tube,CRT)显示设备或投影仪(projector)等。输入设备207和处理器201通信,能够以多种方式接收用户的输入。例如,输入设备207是鼠标、键盘、触摸屏设备或传感设备等。
在一些实施例中,存储器203用于存储执行本申请方案的程序代码210,处理器201能够执行存储器203中存储的程序代码210。该程序代码中包括一个或多个软件模块,该网络设备能够通过处理器201以及存储器203中的程序代码210,来实现下文图3实施例提供的隧道保活方法。
当该网络设备为UP设备时,存储器203用于存储程序代码210,处理器201用于执行存储器203中存储的程序代码210,实现本申请实施例提供的隧道保活方法中UP设备的相应功能。也即是,接收CP设备发送的第一隧道信息,如果检测到UP设备与CP设备之间的通信发生故障,则根据第一隧道信息,进行隧道保活。具体实现方式参照下述图3实施例中的详细介绍,这里不再赘述。
示例性地,当图6所示实施例中的第一接收模块601和隧道保活模块602是通过软件实施的情况下,该程序代码210中可以包括第一接收模块和隧道保活模块,第一接收模块用于接收CP设备发送的第一隧道信息,隧道保活模块用于根据第一隧道信息进行隧道保活。
当该网络设备为CP设备时,存储器203用于存储程序代码210,处理器201用于执行存储器203中存储的程序代码210,实现本申请实施例提供的隧道保活方法中CP设备的相应功能。也即是,向UP设备发送第一隧道信息,如果检测到CP设备与UP设备之间的通信发生故障,则停止进行隧道保活。具体实现方式参照下述图3实施例中的详细介绍,这里不再赘述。
示例性地,当图8所示实施例中的第一发送模块701、处理模块702和隧道保活模块703是通过软件实施的情况下,该程序代码210中可以包括第一发送模块、处理模块和隧道保活模块,第一发送模块用于向UP设备发送第一隧道信息,处理模块用于在检测到CP设备与UP设备之间的通信发生故障后,停止隧道保活,隧道保活模块用于在检测到CP设备与UP设备之间的通信恢复后,重新进行隧道保活。
图3是本申请实施例提供的一种隧道保活方法的流程图。请参考图3,该方法包括如下步骤。
步骤301:UP设备接收CP设备发送的第一隧道信息,第一隧道信息包括UP设备与远端网络设备之间建立的一条或多条隧道的信息。
在本申请实施例中,CP设备和UP设备用于与远端网络设备进行交互来保证终端接入网络。例如,在终端通过宽带拨号连接接入远端的公司总部内网的场景中,终端能够通过本端的CP设备和UP设备与远端网络设备之间建立的通道建立通信连接,例如,CP设备在UP设备与远端网络设备之间建立隧道和承载在隧道上的会话,保证终端接入远端的网络,以及实现业务通信。
在本申请实施例中,终端能够在UP设备与CP设备之间未发生通信故障的情况下,向UP设备发送连接请求,以请求接入远端网络设备所管理的远端接入点提供的网络,UP设备将该连接请求转发给CP设备,CP设备对该连接请求进行用户认证,确定该终端所请求接入的网络对应的远端网络设备,CP设备在对用户认证通过之后,在UP设备与远端网络设备之间建立一条隧道和一个承载在该隧道上的会话,通过该隧道上会话将终端成功接入网络,并实现业务通信。
例如,一个彩票点的终端想要接入企业总部的彩票中心的网络,该终端通过宽带拨号将连接请求发送到本地运营商的vBNG包括的UP设备,CP设备根据该连接请求进行用户认证,确定该终端所请求接入的彩票中心的网络对应的远端网络设备,CP设备在对用户认证通过之后,在UP设备与远端网络设备之间建立一条隧道和一个承载在该隧道上的会话,通过该会话将终端成功接入彩票中心的网络。
在终端成功接入网络之后,终端通过UP设备与远端网络设备之间所维持的隧道上承载的会话,实现业务通信。同时,CP设备通过UP设备与远端网络设备之间交互隧道保活报文,对UP设备与远端网络设备之间的隧道进行隧道保活,也即维持UP设备与远端网络设备之间的隧道,并保证隧道以及承载在隧道上的会话不中断,也即保证终端业务不中断。UP设备通过转发终端与远端网络设备之间的数据报文,保证终端的业务通信维持在隧道承载的会话上。
在CP设备与UP设备之间的通信正常的情况下,CP设备还能够向UP设备同步自身存储的隧道的信息。也即是,在本申请实施例中,CP设备向UP设备发送第一隧道信息,第一隧道信息包括UP设备与远端网络设备之间建立的一条或多条隧道的信息。需要说明的是,CP设备向UP设备发送第一隧道信息的实现方式有多种,下面示例性地介绍其中的两种实现方式。
第一种实现方式、CP设备通过即时的方式将第一隧道信息同步给UP设备。
也即是,CP设备每创建一条隧道,向UP设备发送所创建的隧道的信息,每删除一条隧道,向UP设备发送所删除的隧道的信息。
在本申请实施例中,第一隧道信息携带在PFCP更新请求报文中,该一条或多条隧道为L2TP隧道,该一条或多条隧道中每个隧道的信息包括隧道描述信息。如果L2TP隧道是根据IPv4创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址。如果L2TP隧道是根据IPv6创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。其中,隧道本地标识和隧道远端标识为隧道的标识。
在本申请实施例中,第一隧道信息可以携带在任一种通信协议报文中。可选地,通过对PFCP协议进行扩展,得到PFCP更新请求报文。可选地,对PFCP规定的节点级消息(nodemessage)进行扩展,得到PFCP更新请求报文。
示例性地,表1为扩展PFCP规定的node message,PFCP更新请求报文还携带消息类型,该消息类型可以取16-49之间的任一数值,消息类型用于指示相应报文为PFCP更新请求报文,也称为PFCP L2TP隧道更新请求。
表1
Figure BDA0002659514160000161
在PFCP的node message中,PFCP更新请求报文包括一个组信息单元(groupedinformation element,Grouped IE),一个Grouped IE包括一个或多个嵌入信息单元Embedded IE,Embedded IE为PFCP更新请求报文的最小单元,每个Embedded IE携带一个隧道描述信息,通过扩展Grouped IE,得到PFCP更新请求报文。
在本申请实施例中,参见表2,首先对PFCP更新请求报文中携带的IE的标识符进行解释,其中,M表示必选项,C表示满足条件就需要携带,CO表示满足条件可以选择携带或不携带,O表示可以选择携带或不携带。
表2
Figure BDA0002659514160000162
Figure BDA0002659514160000171
表3为PFCP更新请求报文携带的隧道(tunnel)的信息的介绍,PFCP更新请求报文还携带CP设备的设备号,也即CP设备的节点标识(node identification,Node ID),在创建L2TP隧道的情况下,PFCP更新请求报文还携带所创建的各个隧道的隧道描述信息,在删除L2TP隧道的情况下,PFCP更新请求报文还携带所删除的各个隧道的隧道描述信息。
表3
Figure BDA0002659514160000172
可选地,如果L2TP穿越三层虚拟私有网络(layer 3virtual private network,L3VPN),PFCP更新请求报文还携带L3VPN的实例的名称,也即L3VPN的私网名称。
示例性地,表4为扩展Grouped IE得到的PFCP更新请求报文的结构描述。在创建或者删除L2TP隧道的情况下,PFCP更新请求报文的前2个字节(一个Octet为8比特,也即一个字节)携带隧道消息类型(message type),第3和4个字节携带长度(length),用于指示报文长度,第5和6个字节携带厂家号(enterprise ID),表示该报文是哪个厂家扩展的,从第7个字节开始,携带创建或删除的隧道的隧道描述信息,可选地,如果L2TP穿越L3VPN,还携带L3VPN的实例的名称。
表4
Figure BDA0002659514160000173
表5为扩展Embedded IE,得到的一个携带隧道描述信息的PFCP更新请求报文的结构示意图。
表5
Figure BDA0002659514160000181
在表5中,从第7字节开始为隧道描述信息,第7字节的比特1(bit 1):V4取值为1,表示L2TP隧道附着(over)在IPv4地址上,也即L2TP隧道是根据IPv4创建的,此时p=16,q=20;
第7字节的bit 2:V6取值为1,表示隧道over在IPv6地址上,也即L2TP隧道是根据IPv6创建的,此时r=16,s=32;
第7字节的bit 3~6:Ver(version)表示L2TP隧道的版本号。取值为2,表示L2TPV2版本,此时隧道标识(tunnel identification,tunnel ID)是16bit无符号整数。取值为3,表示L2TPV3版本,此时tunnel ID的是32bit无符号整数。
第7字节的bit 7~8:保留字段,设置为0。
第8~11字节:隧道本地标识(local tunnel ID),32bit无符号整数,L2TPV2版本低16bit有效。
第12~15字节:隧道远端标识(remote tunnel ID),32bit无符号整数,L2TPV2版本低16bit有效。
第p~p+3字节:隧道本地IPv4地址(local IPv4 address)。
第q~q+3字节:隧道远端IPv4地址(remote IPv4 address)。
第r~r+15字节:隧道本地IPv6地址(local IPv6 address)。
第s~s+15字节:隧道远端IPv6地址(remote IPv6 address)。
示例性地,假设为L2TPV2版本,且采用IPv4地址,PFCP更新请求报文的结构如表6所示。
表6
Figure BDA0002659514160000191
示例性地,假设为L2TPV3版本,且采用IPv6地址,PFCP更新请求报文的结构如表7所示。
表7
Figure BDA0002659514160000192
以上介绍了在UP设备与CP设备之间通信正常的情况下,CP设备向UP设备同步隧道信息的过程,在本申请实施例中,CP设备还能够向UP设备发送第一会话信息,UP设备接收CP设备发送的第一会话信息,第一会话信息包括该一条或多条隧道上承载的会话的信息,也即CP设备将会话信息同步给UP设备。
可选地,第一会话信息也携带在PFCP更新请求报文中,该一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。
在PFCP的node级message中,在携带第一会话信息的PFCP更新请求报文中,PFCP更新请求报文包括一个Grouped IE,一个Grouped IE包括一个或多个Embedded IE,每个Embedded IE携带一个会话的信息,通过扩展Grouped IE,得到携带第一会话信息的PFCP更新请求报文。
表8为PFCP更新请求报文携带的会话的信息介绍,PFCP更新请求报文携带CP设备的设备号,也即CP设备的节点标识,在创建L2TP会话(session)的情况下,PFCP更新请求报文还携带所创建的各个会话的信息,在删除L2TP会话的情况下,PFCP更新请求报文还携带所删除的各个会话的信息。
表8
Embedded IE P 条件/内容 IE类型
Node ID M CP的设备号 节点标识
创建L2TP会话 C 创建L2TP会话,可以携带多个IE create L2TP session
删除L2TP会话 C 删除L2TP会话,可以携带多个IE delete L2TP session
示例性地,表9为扩展Grouped IE得到的PFCP更新请求报文的结构描述。在创建或者删除L2TP会话的情况下,前2个字节(Octet)携带会话消息类型,第3和4个字节携带长度,用于指示报文长度,第5和6个字节携带厂家号,表示该报文是哪个厂家扩展的,从第7个字节开始,携带创建或删除的会话的信息。
表9
Figure BDA0002659514160000201
表10为扩展embedded IE,得到的携带一个会话的信息的PFCP更新请求报文的结构示意图。
表10
Figure BDA0002659514160000202
在表10中,第7字节的bit 1~4:Ver表示L2TP隧道的版本号。取值为2,表示L2TPV2版本,此时会话标识(session ID)的是16bit无符号整数。取值为3,表示L2TPV3版本,此时session ID的是32bit无符号整数。
第7字节的bit 5~8:保留字段,设置为0。
第8~11字节:隧道本地标识(local tunnel ID),32bit无符号整数,L2TPV2版本低16bit有效。表示会话所属的隧道。
第12~15字节:会话本地标识(local session ID),32bit无符号整数,L2TPV2版本低16bit有效。
第16~19字节:会话远端标识(local session ID),32bit无符号整数,L2TPV2版本低16bit有效。
需要说明的是,在第一种实现方式中,第一隧道信息和第一会话信息分别携带在不同的PFCP更新请求报文中,一个PRCP更新请求报文携带创建的一条隧道的信息,或者删除的一条隧道的信息,或者一个创建的会话的信息,或者一个删除的会话的信息。UP设备在接收到携带创建的隧道或会话的信息的PFCP更新请求报文之后,在本地存储所创建的隧道或会话的信息,UP设备在接收到携带删除的隧道或会话的信息的PFCP更新请求报文之后,删除本地存储的相应的隧道或会话的信息。
第二种实现方式、CP设备周期性地将第一隧道信息同步给UP设备。
也即是,CP设备每隔一个同步周期,将自身存储的所有建立的隧道的信息同步给UP设备。或者,CP设备每隔一个同步周期,将更新的隧道的信息同步给CP设备,更新的隧道包括上一次同步隧道的信息之后建立的隧道和删除的隧道的信息。
可选地,第一隧道信息携带在PFCP更新请求报文中,如果CP设备上存储有建立的多条隧道的信息,那么第一隧道信息包括建立的多条隧道的信息,每条隧道的信息包括隧道描述信息。
在第二种实现方式中,CP设备还能够周期性地将第一会话信息同步给UP设备,第一会话信息携带在PFCP更新请求报文中。对PFCP更新请求报文的相关描述参照前述相关介绍,这里不再赘述。
需要说明的是,在本申请实施例中,第一隧道信息和第一会话信息可以携带在同一个PFCP更新请求报文中,也可以携带在不同的PFCP更新请求报文中。
示例性地,假设CP设备每隔一个同步周期,将自身存储的所有建立的隧道和会话的信息通过一个PFCP更新请求报文同步给UP设备。或者,CP设备每隔一个同步周期,将自身存储的所有建立的隧道的信息通过一个PFCP更新请求报文同步给UP设备,将自身存储的所有会话的信息通过另一个PFCP更新请求报文同步给UP设备。
可选地,在本申请实施例中,UP设备在接收到PFCP更新请求报文之后,能够向CP设备发送PFCP更新应答报文。
示例性地,参见表1,PFCP更新应答报文携带消息类型,该消息类型可以取16-49之间的任一与PFCP更新请求报文携带的消息类型不同的数值,该消息类型用于指示相应报文为PFCP更新应答报文,也称为PFCP L2TP隧道更新应答。参见表11,PFCP更新应答报文还携带UP设备的设备号,也即UP设备的节点标识,PFCP更新应答报文还携带处理结果(也称为cause),处理结果用于指示UP设备是否成功解析PFCP更新请求报文。
表11
Embedded IE P 条件/内容 IE类型
Node ID M UP的设备号 节点标识
cause M 处理结果(成功/错误码) cause
步骤302:如果UP设备与CP设备之间的通信发生故障,则UP设备根据第一隧道信息,对该一条或多条隧道进行隧道保活,且CP设备停止对该一条或多条隧道进行隧道保活。
在本申请实施例中,UP设备和CP设备之间通过多个通信接口进行通信,例如宽带论坛(broadband-forum,BBF)WT-459中定义的vBNG中的CP设备与UP设备之间的通信接口,包括控制报文重定向接口(control packet redirection interface,CPRi)和状态控制接口(state control interface,SCi),UP设备通过控制报文重定向接口和状态控制接口与CP设备进行通信,UP设备监控控制报文重定向接口和状态控制接口的状态,如果UP设备监控到控制报文重定向接口和/或状态控制接口的状态异常,则UP设备确定检测到自身与CP设备之间的通信发生故障。
同样地,CP设备通过控制报文重定向接口和状态控制接口与UP设备进行通信,CP设备监控控制报文重定向接口和状态控制接口的状态,如果CP设备监控到控制报文重定向接口和/或状态控制接口的状态异常,则CP设备确定检测到自身与UP设备之间的通信发生故障。
在本申请实施例中,如果UP设备检测到自身与CP设备之间的通信发生故障,则UP设备根据第一隧道信息,对该一条或多条隧道进行隧道保活,如果CP设备检测到自身与UP设备之间的通信发生故障,CP设备停止对该一条或多条隧道进行隧道保活。
需要说明的是,在本申请实施例中,各个隧道独立进行隧道保活,也即每条隧道对应有隧道保活序列号,UP设备或者CP设备通过与远端网络设备之间交互隧道保活报文,实现对各个隧道的隧道保活。隧道保活序列号包括一个发送序列号和一个期望接收序列号,示例性地,对于一条隧道来说,假设UP设备向远端网络设备发送一个隧道保活报文,该隧道保活报文为携带发送序列号为0和期望接收序列号为0的报文,远端网络设备在接收到该隧道保活报文之后,向UP设备发送携带发送序列号为0和期望接收序列号为1的隧道保活报文,UP设备继续向远端网络设备发送携带发送序列号为1和期望接收序列号为1的隧道保活报文,远端网络设备向UP设备发送携带发送序列号为1和期望接收序列号为2的隧道保活报文,以此类推,UP设备与远端网络设备之间通过周期性发送携带隧道保活序列号的隧道保活报文对该隧道进行保活。如果远端网络设备超时未接收到期望的隧道保活报文,则远端网络设备将拆除该隧道。在UP设备与CP设备之间的通信正常的情况下,如果CP设备超时未接收到隧道保活报文,则CP设备拆除该隧道。
可选地,隧道保活报文为L2TP中规定的Hello(Hel)报文或者零长报文(zero-length body message,ZLB)。
而在UP设备与CP设备之间的通信发生故障的情况下,不希望隧道因此被拆除,也即不希望终端的用户业务中断,因此,需要UP设备对隧道继续进行隧道保活。接下来对在UP设备检测到自身与CP设备之间的通信发生故障的情况下,UP设备进行隧道保活的实现方式进行介绍。
第一种实现方式、UP设备监听远端网络设备发送的第一隧道保活报文,第一隧道保活报文携带目标隧道的标识和隧道保活序列号,UP设备根据该目标隧道的标识和隧道保活序列号以及该一条或多条隧道的标识,向远端网络设备发送第二隧道保活报文。
在本申请实施例中,UP设备存储有CP设备同步的第一隧道信息,第一隧道信息包括在UP设备与远端网络设备之间建立的一条或多条隧道的隧道描述信息,隧道描述信息包括隧道的标识。UP设备在监听到远端网络设备发送的第一隧道保活报文之后,根据第一隧道保活报文携带的目标隧道的标识和隧道保活序列号,从本地存储的第一隧道信息中查询目标隧道的标识,在查找到目标隧道的标识之后,在本地存储目标隧道的隧道保活序列号,并根据该隧道保活序列号,向远端网络设备发送第二隧道保活报文。
需要说明的是,UP设备从向远端网络设备发送第二隧道保活报文开始,即开始与远端网络设备之间周期性地互相发送隧道保活报文,实现UP设备进行隧道保活。
在这种实现方式中,对于远端网络设备来说,并不会感知到CP设备与UP设备之间发生通信故障,而是由UP设备继续接替CP设备并根据远端网络设备当前维持的隧道的信息进行隧道保活,也即无缝衔接式地快速进行隧道保活。
由前述可知,在UP设备与CP设备之间的通信正常的情况下,CP设备还向UP设备发送第一会话信息,这样,UP设备在隧道保活的同时,还能够根据第一会话信息,将终端与远端网络设备之间的数据报文维持在隧道承载的会话上,保证终端正常进行业务通信。
示例性地,终端将数据报文发送给UP设备,UP设备将数据报文通过为该终端创建的隧道承载的会话发送给远端网络设备,再由远端网络设备将数据报文发送给远端接入点,实现终端与远端接入点之间的业务通信。
以上仅以该一条或多条隧道中的目标隧道为例,对UP设备进行隧道保活的第一种实现方式进行了介绍,对于该一条或多条隧道中除目标隧道之外的其他隧道,UP设备均能够按照与目标隧道相同的隧道保活方法,通过监听远端网络设备发送的隧道保活报文,以获知相应隧道的隧道保活序列号,根据监听到的隧道保活序列号对相应隧道进行隧道保活,本申请实施例对此不再赘述。
第二种实现方式、UP设备重置第一隧道信息中目标隧道的隧道保活序列号,目标隧道为该一条或多条隧道中的一条,UP设备根据重置后的目标隧道的隧道保活序列号,指示远端网络设备对目标隧道的隧道保活序列号进行重置,在远端网络设备对目标隧道的隧道保活序列号重置成功后,UP设备按照重置后的目标隧道的隧道保活序列号以及目标隧道的标识,对目标隧道进行隧道保活。
在本申请实施例中,UP设备向远端网络设备发送第一控制请求报文,第一控制请求报文携带目标隧道的标识、重置后的目标隧道的隧道保活序列号,以及序列号重置指示信息,UP设备接收远端网络设备发送的第一控制应答报文,第一控制应答报文用于指示远端网络设备对目标隧道的隧道保活序列号重置成功。
可选地,在这种实现方式中,UP设备需要与远端网络设备之间进行一次隧道故障恢复,隧道故障恢复包括隧道数据对账和重置隧道保活序列号,也即与远端网络设备进行一次关于隧道的数据对账和重置隧道保活序列号,以保证UP设备与远端网络设备之间的隧道一致性,并根据重置后的隧道保活序列号进行隧道保活。
其中,UP设备与远端网络设备进行数据对账的过程为:UP设备创建与远端网络设备之间的数据对账隧道,并通过数据对账隧道,向远端网络设备发送第一隧道数据对账报文,第一隧道数据对账报文携带UP设备上存储的与远端网络设备之间建立的隧道的标识,UP设备接收远端网络设备发送的第一隧道对账应答报文,第一隧道对账应答报文携带远端网络设备上存储的与UP设备之间建立的隧道的标识,UP设备将第一隧道数据对账报文携带的隧道的标识与第一隧道对账应答报文携带的隧道的标识的交集,确定为一条或多条隧道的标识。
在本申请实施例中,UP设备先进行数据对账,再重置隧道保活序列号。可选地,UP设备也可以先重置本地存储的第一隧道信息包括的每条隧道的隧道保活序列号,之后,通过创建的数据对账隧道,向远端网络设备发送用于进行隧道的数据对账和重置隧道保活序列号的控制请求报文,以通过控制请求报文与远端网络设备进行关于隧道的数据对账以及重置隧道保活序列号。也即是,第一控制请求报文与第一隧道数据对账报文可以为同一个报文,第一控制应答报文与第一隧道对账应答报文可以为同一个报文。
可选地,UP设备重置本地存储的第一隧道信息包括的每条隧道的隧道保活序列号,与远端网络设备之间建立一条数据对账隧道(也可以称为恢复隧道),并通过该数据对账隧道向远端网络设备发送第一控制请求报文,远端网络设备在接收到第一控制请求报文之后,如果远端网络设备上存储有目标隧道的信息,表示远端网络设备与UP设备之间关于目标隧道的数据一致,远端网络设备向UP设备回复的第一控制应答报文中携带目标隧道的标识,以及确认重置目标隧道的隧道保活序列号的指示信息,UP设备在接收到第一控制应答报文之后,确定对目标隧道的故障恢复成功。如果远端网络设备上未存储目标隧道的信息,表示远端网络设备与UP设备之间关于目标隧道的数据存在不一致,远端网络设备向UP设备回复的第一控制应答报文中不携带目标隧道的相关信息,或者携带用于指示目标隧道未成功建立的提示信息,UP设备在接收到第一控制应答报文之后,将本地存储的目标隧道的信息删除。
可选地,UP向远端网络设备发送的第一控制请求报文中携带该一条或多条隧道的标识、该一条或多条隧道重置后的隧道保活序列号,以及序列号重置指示信息,也即是,UP设备一次性通过一个控制请求报文与远端网络设备进行关于隧道的数据对账以及重置隧道保活序列号。远端网络设备在接收到第一控制请求报文之后,将自身存储的所有隧道的标识以及确定重置相应隧道的隧道保活序列号的指示信息,通过第一控制应答报文发送给UP设备,UP设备在接收到第一控制应答报文之后,通过对比自身存储的一条或多条隧道的标识与第一控制应答报文携带的隧道的标识,确定UP设备与远端网络设备中共同存储的隧道,并清理仅在UP上存储,而未在远端网络设备上存储的隧道,以完成与远端网络设备之间关于隧道的数据对账和重置隧道保活序列号。
可选地,UP设备在与远端网络设备之间进行数据对账和重置隧道保活序列号之后,拆除用于数据对账和请求重置隧道保活序列号的数据对账隧道。
UP设备与远端网络设备之间进行关于隧道的数据对账之后,UP设备上存储有目标隧道的信息,则UP设备按照重置后的目标隧道的隧道保活序列号,对目标隧道进行隧道保活。
可选地,UP设备根据与远端网络设备之间的通信协议来重置隧道保活序列号,假设UP设备与远端网络设备之间的通信协议为L2TP协议,L2TP协议规定创建一条隧道时的隧道保活序列号为0或1,随着之前CP设备与远端网络设备之间互相发送隧道保活报文进行隧道保活,隧道保活报文携带的隧道报文序列号动态递增,在UP设备通过隧道故障恢复以进行隧道保活时,UP设备需要重置隧道保活序列号为0或者1等,也即重置为起始值。
UP设备向远端网络设备发送第一控制请求报文之后,远端网络设备根据序列号重置指示信息,确定当前需要对目标隧道进行隧道故障恢复,远端网络设备根据重置后的目标隧道的隧道保活序列号,向UP设备发送第一控制应答报文,UP设备接收到第一控制应答报文后确定对目标隧道故障恢复成功。
UP设备在对目标隧道故障恢复成功之后,按照重置后的目标隧道的隧道保活序列号,对目标隧道进行隧道保活。也即是,UP设备从重置后的目标隧道的隧道保活序列号开始,周期性地向远端网络设备发送隧道保活报文,以与远端网络设备周期性地交互隧道保活报文,实现对目标隧道的隧道保活。
可选地,第一控制请求报文和第一隧道数据对账报文均为L2TP协议中的开始控制连接请求(start control connection request,SCCRQ)报文,第一控制应答报文和第一隧道对账应答报文均为L2TP协议中的开始控制连接应答(start control connectionreply,SCCRP)报文。
以上仅以该一条或多条隧道中的目标隧道为例,对UP设备进行隧道保活的第二种实现方式进行了介绍,对于该一条或多条隧道中除目标隧道之外的其他隧道,UP设备均能够按照与目标隧道相同的隧道保活方法,通过隧道故障恢复对相应隧道进行隧道保活,本申请实施例对此不再赘述。
由前述可知,在UP设备与CP设备之间的通信正常的情况下,CP设备还向UP设备发送第一会话信息,这样,UP设备除了对目标隧道进行故障恢复之外,还能够更新第一会话信息中目标隧道上承载的会话的信息,以对目标隧道上承载的会话进行故障恢复。
在本申请实施例中,UP设备在创建与远端网络设备之间的数据对账隧道之后,向远端网络设备发送第一会话数据对账报文,第一会话数据对账报文携带一个或多个第一参考会话的标识,该一个或多个第一参考会话为UP设备上存储的目标隧道上承载的会话。UP设备接收远端网络设备发送的第一会话对账应答报文,第一会话对账应答报文携带一个或多个第二参考会话的标识,该一个或多个第二参考会话为远端网络设备上存储的目标隧道上承载的会话。UP设备将该一个或多个第一参考会话的标识与该一个或多个第二参考会话的标识的交集,确定为目标隧道上承载的会话的标识。这样,即可对目标隧道上承载的会话进行对齐。
可选地,第一会话数据对账报文与第一隧道数据对账报文为同一个报文,也即是,UP设备通过数据对账隧道将UP设备上存储的与所述远端网络设备之间建立的隧道的标识以及每条隧道上承载的会话的标识,一次性地发送给远端网络设备,以进行隧道的数据对账以及会话的数据对账。
可选地,UP设备在对目标隧道故障恢复成功之后,再与远端网络设备交互会话信息,以对目标隧道上承载的所有会话进行故障恢复,也即对目标隧道上承载的一个或多个第一参考会话进行故障恢复。这种情况下,第一会话数据对账报文与第一隧道数据对账报文为不同的报文。
示例性地,假设UP设备上存储的目标隧道上承载的会话包括会话1、会话2和会话3,远端网络设备上存储的目标隧道上承载的会话包括会话1和会话2,其中,会话1和会话2为已成功连接的会话,会话3为UP设备与CP设备之间通信故障之前,CP设备与远端网络设备之间未完成连接的会话,也即会话3为半连接状态的会话。CP设备上存储有会话3的信息,并将会话3的信息同步给了UP设备,而远端网络设备上未存储会话3的信息,这种情况下,UP设备向远端网络设备发送第一故障恢复会话查询报文中,携带会话1、会话2和会话3的标识,而远端网络设备向UP设备回复的第一故障恢复会话应答报文仅携带会话1和会话2的标识,那么UP设备在接收到第一故障恢复会话应答报文之后,将本地存储的会话3的信息删除,也即清理半连接状态的会话。
同理,假设UP设备向远端网络设备发送的第一故障恢复会话查询报文携带会话1和会话2,而远端网络设备向UP设备回复的第一故障恢复会话应答报文携带会话1、会话2和会话3,表示会话3为远端网络设备创建的半连接状态的会话,远端网络设备在接收到第一故障恢复会话查询报文之后,会将自身存储的会话3的信息删除,也即远端网络设备也会清理半连接状态的会话。
可选地,第一会话数据对账报文为L2TP协议中的故障会话查询(failoversession query,FSQ)报文,第一会话对账应答报文为L2TP协议中的故障会话应答(failover session response,FSR)报文。
由上述可知,UP设备与远端网络设备之间通过会话故障恢复,将UP设备与远端网络设备之间还未完成建立的会话进行删除,也即清理半连接状态的会话。
需要说明的是,对于该一条或多条隧道中除目标隧道之外的其他隧道上承载的会话,UP设备均能够按照与恢复目标隧道上承载的会话相同的方法,通过会话故障恢复对相应隧道上承载的会话进行会话故障恢复,本申请实施例对此不再赘述。
可选地,UP设备进行隧道保活的第二种实现方式中进行的隧道故障恢复和会话故障恢复,可以采用L2TP RFC 4951规范中提出的故障恢复(failure recovery)功能。CP设备通过UP设备与远端网络设备在建立隧道时,协商是否开启failure recovery功能,如果CP设备、UP设备和远端网络设备上均开启了failure recovery功能,则在UP设备开始进行隧道保活时,启动failure recovery功能来与远端网络设备进行隧道故障恢复以及会话故障恢复。
需要说明的是,在上述第二种实现方式中,UP设备通过与远端网络设备之间进行隧道故障恢复和会话故障恢复,也即通过对隧道和会话的数据对账,以及重置隧道保活序列号,能够保证UP设备更加精确地对UP设备与远端网络设备之间建立的隧道进行隧道保活。
以上仅以该一条或多条隧道中的目标隧道为例对UP设备进行隧道保活的方法进行了介绍,对于该一条或多条隧道中除目标隧道之外的其他隧道,UP设备均能够按照与目标隧道相同的隧道保活方法,进行隧道保活,本申请实施例对此不再赘述。
步骤303:如果CP设备与UP设备之间的通信恢复,则CP设备重新对该一条或多条隧道进行隧道保活,且UP设备停止对该一条或多条隧道进行隧道保活。
在本申请实施例中,在CP设备检测到自身与UP设备之间的通信恢复之后,CP设备需要重新对该一条或多条隧道进行隧道保活,而UP设备在检测到自身与CP设备之间的通信恢复之后停止隧道保活。
由前述可知,CP设备通过控制报文重定向接口和状态控制接口与UP设备进行通信,CP设备监控控制报文重定向接口和状态控制接口的状态,如果CP设备监控到控制报文重定向接口和/或状态控制接口的状态恢复正常,则CP设备确定检测到自身与UP设备之间的通信恢复。
同样地,UP设备通过控制报文重定向接口和状态控制接口与CP设备进行通信,UP设备监控控制报文重定向接口和状态控制接口的状态,如果UP设备监控到控制报文重定向接口和/或状态控制接口的状态恢复正常,则UP设备确定检测到自身与CP设备之间的通信恢复。
在本申请实施例中,CP设备重新进行隧道保活的实现方式为:CP设备重置本地存储的目标隧道的隧道保活序列号,目标隧道为该一条或多条隧道中的一条,CP设备根据重置后的目标隧道的隧道保活序列号,指示远端网络设备对目标隧道的隧道保活序列号进行重置,在远端网络设备对目标隧道的隧道保活序列号重置成功后,CP设备按照重置后的目标隧道的隧道保活序列号以及目标隧道的标识,通过UP设备对目标隧道进行隧道保活。
其中,CP设备重置本地存储的目标隧道的隧道保活序列号的实现方式,与前述UP设备重置目标隧道的隧道保活序列号的实现方式类似,例如,CP设备重置目标隧道的隧道保活序列号为0或1等,也即重置为通信协议规定的起始值。
在本申请实施例中,CP设备重置目标隧道的隧道保活序列号之后,通过UP设备向远端网络设备发送第二控制请求报文,第二控制请求报文携带目标隧道的标识、重置后的目标隧道的隧道保活序列号,以及序列号重置指示信息,然后,CP设备通过UP设备接收远端网络设备发送的第二控制应答报文,第二控制应答报文用于指示远端网络设备对目标隧道的隧道保活序列号重置成功。
CP设备通过UP设备向远端网络设备发送第二控制请求报文之后,远端网络设备根据序列号重置指示信息,确定当前需要对目标隧道进行隧道故障恢复,远端网络设备根据重置后的目标隧道的隧道保活序列号,向CP设备发送第一控制应答报文,CP设备通过UP设备接收到第二控制应答报文后确定对目标隧道故障恢复成功。
可选地,在本申请实施例中,CP设备进行隧道故障恢复的过程也包括隧道的数据对账和重置隧道保活序列号。
可选地,CP设备重置本地存储的目标隧道的隧道保活序列号之前,创建与远端网络设备之间的数据对账隧道,并通过该数据对账隧道,通过UP设备向远端网络设备发送第二数据对账报文,第二数据对账报文携带CP设备上存储的UP设备与远端网络设备之间建立的隧道的标识,CP设备通过UP设备接收远端网络设备发送的第二对账应答报文,第二对账应答报文携带远端网络设备上存储的与UP设备之间建立的隧道的标识,CP设备将第二数据对账报文携带的隧道的标识与第二对账应答报文携带的隧道的标识的交集,确定为一条或多条隧道的标识。
由于在UP设备与远端网络设备交互隧道保活报文进行隧道保活的过程中,远端网络设备可能会向UP设备发送拆除一条隧道的拆除请求,以主动拆除隧道,UP设备接收到该拆除请求后,可以拆除相应隧道,也可以不拆除相应隧道,也即是,在UP设备进行隧道保活的过程中,UP设备与远端网络设备之间建立的隧道会更新,基于此,在CP设备与UP设备之间的通信恢复之后,CP设备与远端网络设备之间通过隧道故障恢复,将UP设备与远端网络设备之间的隧道进行关于隧道的数据对账,以清理CP上存储的已被拆除的隧道,保证CP设备与远端网络设备之间的隧道一致性。
在本申请实施例中,CP设备先进行数据对账,再重置隧道保活序列号。可选地,CP设备也可以先重置本地存储的每条隧道的隧道保活序列号,之后,通过创建的数据对账隧道,向远端网络设备发送用于进行隧道的数据对账和重置隧道保活序列号的控制请求报文,以通过控制请求报文与远端网络设备进行关于隧道的数据对账以及重置隧道保活序列号。也即是,第二控制请求报文与第二隧道数据对账报文可以为同一个报文,第二控制应答报文与第二隧道对账应答报文可以为同一个报文。
可选地,CP设备重置本地存储的每条隧道的隧道保活序列号,通过UP设备与远端网络设备之间建立一条数据对账隧道(也可以称为恢复隧道),并通过UP设备将第二控制请求报文通过该数据对账隧道发送给远端网络设备,远端网络设备在接收到第二控制请求报文之后,如果远端网络设备上存储有目标隧道的信息,表示远端网络设备与CP设备之间关于目标隧道的数据一致,远端网络设备向CP设备回复的第二控制应答报文中携带目标隧道的标识,以及确认重置目标隧道的隧道保活序列号的指示信息,CP设备在通过UP设备接收到第二控制应答报文之后,确定对目标隧道的故障恢复成功。如果远端网络设备上未存储目标隧道的信息,表示远端网络设备与CP设备之间关于目标隧道的数据存在不一致,远端网络设备向CP设备回复的第二控制应答报文中不携带目标隧道的相关信息,或者携带用于指示目标隧道未成功建立的提示信息,CP设备在通过UP设备接收到第二控制应答报文之后,将本地存储的目标隧道的信息删除。
可选地,CP通过UP设备向远端网络设备发送的第二控制请求报文中携带该一条或多条隧道的标识、该一条或多条隧道重置后的隧道保活序列号,以及序列号重置指示信息,也即是,CP设备一次性通过一个控制请求报文与远端网络设备进行关于隧道的数据对账以及重置隧道保活序列号。远端网络设备在接收到第二控制请求报文之后,将自身存储的所有隧道的标识以及确定重置相应隧道的隧道保活序列号的指示信息,通过第二控制应答报文发送给CP设备,CP设备在通过UP设备接收到第二控制应答报文之后,通过对比自身存储的一条或多条隧道的标识与第二控制应答报文携带的隧道的标识,确定CP设备与远端网络设备中共同存储的隧道,并清理仅在CP上存储,而未在远端网络设备上存储的隧道,以完成与远端网络设备之间关于隧道的数据对账和重置隧道保活序列号。
示例性地,假设在CP设备与UP设备之间的通信故障之前,CP设备最后一次同步给UP设备的隧道信息包括隧道1、隧道2和隧道3的信息,在UP设备与CP设备之间的通信发生故障,UP设备进行隧道保活的过程中,隧道3被远端网络设备拆除,那么CP设备与UP设备之间的通信恢复之后,CP设备通过与远端网络设备进行隧道故障恢复,将隧道1和隧道2的隧道保活序列号与远端网络设备协商重置,之后对隧道1和隧道2进行隧道保活。对于隧道3,CP设备向远端网络设备发送重置隧道3的隧道保活序列号的控制请求报文之后,由于远端网络设备上已删除隧道3的信息,因此,远端网络设备会向CP设备回复未找到隧道3的控制应答报文,CP设备接收到该控制应答报文之后,将隧道3的信息删除。
可选地,第二控制请求报文和第二隧道数据对账报文均为L2TP协议中的SCCRQ报文,第二控制应答报文和第二隧道对账应答报文均为L2TP协议中的SCCRP报文。
可选地,CP设备在于远端网络设备之间进行数据对账和重置隧道保活序列号之后,拆除用于数据对账和请求重置隧道保活序列号的数据对账隧道。
CP设备与远端网络设备之间进行关于隧道的数据对账之后,CP设备上存储有目标隧道的信息,则CP设备按照重置后的目标隧道的隧道保活序列号,通过UP设备对目标隧道进行隧道保活。
以上仅以该一条或多条隧道中的目标隧道为例,对CP设备重新进行隧道保活的实现方式进行了介绍,对于该一条或多条隧道中除目标隧道之外的其他隧道,CP设备均能够按照与目标隧道相同的隧道保活方法,通过隧道故障恢复对相应隧道进行隧道保活,本申请实施例对此不再赘述。
在本申请实施例中,CP设备除了通过UP设备对目标隧道进行故障恢复之外,还能够通过UP设备更新自身存储的目标隧道上承载的会话的信息,以对目标隧道上承载的会话进行故障恢复。
在本申请实施例中,CP设备在创建与远端网络设备之间的数据对账隧道之后,通过UP设备向远端网络设备发送第二复会话数据对账报文,第二会话数据对账报文携带一个或多个第一参考会话的标识,该一个或多个第一参考会话为CP设备上存储的目标隧道上承载的会话。CP设备通过UP设备接收远端网络设备发送的第二会话对账应答报文,第二会话对账应答报文携带一个或多个第三参考会话的标识,该一个或多个第三参考会话为远端网络设备上存储的目标隧道上承载的会话。CP设备将该一个或多个第一参考会话的标识与该一个或多个第三参考会话的标识的交集,确定为目标隧道上承载的会话的标识。这样,即可对目标隧道上承载的会话进行对齐。
可选地,第二会话数据对账报文与第二隧道数据对账报文为同一个报文,也即是,CP设备通过数据对账隧道将CP设备上存储的UP设备与所述远端网络设备之间建立的隧道的标识以及每条隧道上承载的会话的标识,一次性地发送给远端网络设备,以进行隧道的数据对账以及会话的数据对账。
由前述可知,在UP设备进行隧道保活的过程中,UP设备与远端网络设备之间建立的隧道会拆除,除此之外,UP设备与远端网络设备之间建立的承载在隧道上的会话也会被拆除,基于此,在CP设备与UP设备之间的通信恢复之后,CP设备与远端网络设备之间通过会话故障恢复,将CP设备上存储的已拆除的会话删除,也即与远端网络设备进行一次关于会话的数据对账,以保证CP设备与远端网络设备之间的会话一致性。
可选地,第二会话数据对账报文为L2TP协议中的FSQ报文,第二会话对账应答报文为L2TP协议中的FSR报文。
需要说明的是,对于该一条或多条隧道中除目标隧道之外的其他隧道上承载的会话,CP设备均能够按照与恢复目标隧道上承载的会话相同的方法,通过会话故障恢复对相应隧道上承载的会话进行会话故障恢复,本申请实施例对此不再赘述。
在本申请实施例中,CP设备重新进行隧道保活的实现方式中,进行隧道故障恢复和会话故障恢复的实现方式,与UP设备相似,也即是,CP设备重新进行隧道保活中进行的隧道故障恢复和会话故障恢复,也可以采用L2TP RFC 4951规范中提出的failure Recovery功能。由前述可知,CP设备通过UP设备与远端网络设备在建立隧道时,协商是否开启failure recovery功能,如果CP设备、UP设备和远端网络设备上均开启了failurerecovery功能,则在CP设备开始重新进行隧道保活时,启动failure recovery功能来与远端网络设备进行隧道故障恢复以及会话故障恢复。
需要说明的是,对于该一条或多条隧道中除目标隧道之外的其他隧道,CP设备均能够按照与目标隧道相同的故障恢复方法,进行隧道故障恢复以及会话故障恢复,本申请实施例对此不再赘述。
在本申请实施例中,CP设备通过UP设备进行隧道故障恢复之后,向UP设备发送第二隧道信息,UP设备接收CP设备发送的第二隧道信息,UP设备根据第二隧道信息,更新本地存储的隧道信息。其中,第二隧道信息包括第一时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道的信息,第一时刻是指UP设备与CP设备之间的通信恢复之后,CP设备通过UP设备与远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻。也即是,CP设备再次向UP设备同步隧道信息。
可选地,第二隧道信息携带在PFCP更新请求报文中,第二隧道信息的详细介绍可以参照前述对第一隧道信息的相关介绍,这里不再赘述。
在本申请实施例中,CP设备通过UP设备对目标隧道上的会话进行故障恢复之后,向UP设备发送第二会话信息,UP设备接收CP设备发送的第二会话信息,UP设备根据第二会话信息,更新本地存储的会话信息。其中,第二会话信息包括第二时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道上承载的会话的信息。也即是,CP设备再次向UP设备同步会话信息。
可选地,第二时刻是指CP设备与UP设备之间的通信恢复之后,CP设备通过UP设备与远端网络设备之间完成会话故障恢复的时刻。
可选地,第二会话信息携带在PFCP更新请求报文中,第二会话信息的详细介绍可以参照前述对第一会话信息的相关介绍,这里不再赘述。
在第一时刻为CP设备通过UP设备与远端网络设备之间完成隧道故障恢复的时刻的情况下,CP设备可以在对该一条或多条隧道进行隧道故障恢复之后,向UP设备发送第二隧道信息,在对该一条或多条隧道上承载的会话进行会话故障恢复之后,向UP设备发送第二会话信息,或者,向UP设备发送第三隧道信息和第二会话信息,其中,第三隧道信息包括第二时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道上承载的会话的信息。可选地,第三隧道信息和第二会话信息携带在同一个PFCP报文中,或者携带在不同的PFCP报文中。
在第一时刻和第二时刻均为CP设备通过UP设备与远端网络设备之间完成会话故障恢复的时刻的情况下,CP设备可以在对该一条或多条隧道进行隧道故障恢复以及会话故障恢复之后,向UP设备发送第二隧道信息和第二会话信息,第二隧道信息和第二会话信息携带在一个PFCP更新请求报文中,或者携带在不同的PFCP更新请求报文中。
可选地,对于该一条或多条隧道中每条隧道上承载的会话,CP设备每恢复一条隧道上承载的会话之后,通过UP设备向远端网络设备发送该隧道上承载的会话的信息,以通过多次发送的方式将第二会话信息同步给UP设备。
可选地,在申请实施例中,UP设备在接收到携带第二隧道信息和/或第二会话信息的PFCP更新请求报文之后,向CP设备发送PFCP更新应答报文。PFCP更新应答报文的相关介绍可以参照前述表11的相关描述。
在本申请实施例中,CP设备与远端网络设备进行隧道故障恢复和会话故障会话后,向UP设备同步一次隧道信息和会话信息之后,仍继续通过即时的方式或者周期性的方式,向UP设备同步最新的隧道信息和会话信息,以备后续UP设备与CP设备之间再次发生通信故障。
接下来参照图4对本申请实施例提供的隧道保活报文结合示例性应用场景再次进行解释说明。参见图4,终端为一个家庭网关,家庭网关通过点到点协议(point-to-pointprotocol,PPP)请求接入网络,CP设备(CP-LAC)通过在UP设备(UP-LAC)与远端网络设备(LNS)之间建立隧道和会话,将终端接入远端的网络,CP设备通过UP设备与远端网络设备之间发送Hello报文/ZLB报文进行隧道保活,同时,CP设备将L2TP隧道信息和会话信息同步给UP设备。在UP设备与CP设备之间的通信发生故障的情况下,CP设备检测到故障,停止隧道保活,UP设备检测到故障,开始进行隧道保活。UP设备与远端网络设备之间同步隧道和会话信息,并互相发送隧道保活报文进行隧道保活。在UP设备与CP设备之间的通信恢复之后,UP设备停止隧道保活,CP设备重新进行隧道保活。CP设备通过UP设备与远端网络设备之间同步隧道和会话信息,并互相发送隧道保活报文进行隧道保活,另外,CP设备将此时的隧道和会话信息同步给UP设备。其中,CP设备与UP设备之间可以通过PFCP更新请求报文同步隧道和会话信息。
在本申请实施例中,通过在UP设备上设置一个L2TP代理模块,实现在UP设备上进行隧道保活的功能。示例性地,参见图5、表12和表13,UP设备包括PFCP协议模块、PFCP L2TP模块和L2TP代理模块,CP设备包括LAC功能模块、LNS功能模块、PFCP L2TP模块和PFCP协议模块。其中,CP设备通过SCi接口向UP设备发送PFCP更新请求报文,UP设备通过PFCP协议模块解码PFCP更新请求报文的消息头,UP设备的PFCP协议模块将解码后得到的PFCP更新请求报文的消息体发送给PFCP L2TP模块,UP设备的PFCP L2TP模块解析该消息体,得到隧道信息和/会话信息,并将隧道信息和/会话信息发送给L2TP代理模块,通过L2TP代理模块存储隧道信息和/会话信息,并根据本申请实施例提供的隧道保活方法,在UP设备与CP设备之间的通信发生故障的情况下,进行隧道保活。在本申请实施例中,UP设备上的各个模块的功能描述详见表12,CP设备上各个模块的功能描述详见表13。
表12
Figure BDA0002659514160000311
表13
Figure BDA0002659514160000312
综上所述,在本申请实施例中,在UP设备与CP设备之间通信故障之前,UP设备接收CP设备同步的隧道信息,在UP设备与CP之间的通信故障后,由UP设备根据隧道信息进行隧道保活,也即由UP设备维持与远端网络设备之间的隧道,这样就不会因为CP设备与UP设备之间的通信故障而触发拆除隧道,本方案能够保证终端与远端的网络的连接不会因此中断,也即保证用户业务不受损。
图6是本申请实施例提供的一种网络设备600的结构示意图,该网络设备600可以由软件、硬件或者两者的结合实现成为UP设备的部分或者全部,该UP设备可以为前述实施例所示的UP设备。在本申请实施例中,CP设备和UP设备用于与远端网络设备进行交互来保证终端接入网络。参见图6,该网络设备600包括:第一接收模块601和隧道保活模块602。
第一接收模块601,用于接收CP设备发送的第一隧道信息,第一隧道信息包括UP设备与远端网络设备之间建立的一条或多条隧道的信息;具体实现方式请参考图3实施例中步骤301的详细描述,这里不再赘述。
隧道保活模块602,用于如果检测到UP设备与CP设备之间的通信发生故障,则根据第一隧道信息,对该一条或多条隧道进行隧道保活。具体实现方式请参考图3实施例中步骤302的详细描述,这里不再赘述。
可选地,第一隧道信息包括一条或多条隧道的标识;
隧道保活模块602包括:
监听单元,用于监听远端网络设备发送的第一隧道保活报文,第一隧道保活报文携带目标隧道的标识和隧道保活序列号;
第一发送单元,用于根据目标隧道的隧道保活序列号以及该一条或多条隧道的标识,向远端网络设备发送第二隧道保活报文。具体实现方式请参考图3实施例中步骤302的详细描述,这里不再赘述。
可选地,第一隧道信息包括一条或多条隧道的标识;
隧道保活模块602包括:
重置单元,用于重置目标隧道的隧道保活序列号,目标隧道为该一条或多条隧道中的一条;
指示单元,用于根据重置后的目标隧道的隧道保活序列号,指示远端网络设备对目标隧道的隧道保活序列号进行重置;
隧道保活单元,用于在远端网络设备对目标隧道的隧道保活序列号重置成功后,按照重置后的目标隧道的隧道保活序列号以及目标隧道的标识,对目标隧道进行隧道保活。具体实现方式请参考图3实施例中步骤302的详细描述,这里不再赘述。
可选地,指示单元具体用于:
向远端网络设备发送第一控制请求报文,第一控制请求报文携带目标隧道的标识、重置后的目标隧道的隧道保活序列号,以及序列号重置指示信息;
接收远端网络设备发送的第一控制应答报文,第一控制应答报文用于指示远端网络设备对目标隧道的隧道保活序列号重置成功。具体实现方式请参考图3实施例中步骤302的详细描述,这里不再赘述。
可选地,隧道保活模块602还包括:
创建单元,用于创建与远端网络设备之间的数据对账隧道;
第二发送单元,用于通过该数据对账隧道,向远端网络设备发送第一隧道数据对账报文,第一隧道数据对账报文携带UP设备上存储的与远端网络设备之间建立的隧道的标识;
第一接收单元,用于接收远端网络设备发送的第一隧道对账应答报文,第一隧道对账应答报文携带远端网络设备上存储的与UP设备之间建立的隧道的标识;
第一确定单元,用于将第一隧道数据对账报文携带的隧道的标识与第一隧道对账应答报文携带的隧道的标识的交集,确定为该一条或多条隧道的标识。
可选地,该网络设备600还包括:
第二接收模块,用于接收CP设备发送的第一会话信息,第一会话信息包括该一条或多条隧道上承载的会话的信息;具体实现方式请参考图3实施例中步骤301的相关描述,这里不再赘述。
隧道保活模块602还包括:
第三发送单元,用于向远端网络设备发送第一会话数据对账报文,第一会话数据对账报文携带一个或多个第一参考会话的标识,该一个或多个第一参考会话为UP设备上存储的目标隧道上承载的会话;
第二接收单元,用于接收远端网络设备发送的第一会话对账应答报文,第一会话对账应答报文携带一个或多个第二参考会话的标识,该一个或多个第二参考会话为远端网络设备上存储的目标隧道上承载的会话;
第二确定单元,用于将该一个或多个第一参考会话的标识与该一个或多个第二参考会话的标识的交集,确定为目标隧道上承载的会话的标识。具体实现方式请参考图3实施例中步骤302的详细描述,这里不再赘述。
可选地,该网络设备600还包括:
处理模块,用于如果检测到UP设备与CP设备之间的通信恢复,则停止对该一条或多条隧道进行隧道保活。
可选地,该网络设备600还包括:
第三接收模块,用于接收CP设备发送的第二隧道信息,第二隧道信息包括第一时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道的信息,第一时刻是指UP设备与CP设备之间的通信恢复之后,CP设备通过UP设备与远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻;具体实现方式请参考图3实施例中步骤303的详细描述,这里不再赘述。
更新模块,用于根据第二隧道信息,更新本地存储的隧道信息。
可选地,UP设备通过控制报文重定向接口和状态控制接口与CP设备进行通信;
隧道保活模块602包括:
监控单元,用于监控控制报文重定向接口和状态控制接口的状态;
第三确定单元,用于如果监控到控制报文重定向接口和/或状态控制接口的状态异常,则确定检测到UP设备与CP设备之间的通信发生故障。具体实现方式请参考图3实施例中步骤302的详细描述,这里不再赘述。
可选地,第一隧道信息携带在PFCP更新请求报文中,该一条或多条隧道为L2TP隧道,该一条或多条隧道中每条隧道的信息包括隧道描述信息;
如果L2TP隧道是根据IPv4创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址;
如果L2TP隧道是根据IPv6创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。具体实现方式请参考图3实施例中步骤301的详细描述,这里不再赘述。
可选地,第二隧道信息携带在PFCP更新请求报文中。
可选地,第一会话信息携带在PFCP更新请求报文中,该一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。具体实现方式请参考图3实施例中步骤301的详细描述,这里不再赘述。
在本申请实施例中,在UP设备与CP设备之间通信故障之前,UP设备接收CP设备同步的隧道信息,在UP设备与CP之间的通信故障后,由UP设备根据隧道信息进行隧道保活,也即由UP设备维持与远端网络设备之间的隧道,这样就不会因为CP设备与UP设备之间的通信故障而触发拆除隧道,本方案能够保证终端与远端的网络连接不会因此中断,也即保证用户业务不受损。
需要说明的是:上述实施例提供的网络设备在进行隧道保活时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的网络设备与隧道保活方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图7是本申请实施例提供的一种网络设备700的结构示意图,该网络设备700可以由软件、硬件或者两者的结合实现成为CP设备的部分或者全部,该CP设备可以为前述实施例所示的CP设备。在本申请实施例中,CP设备和UP设备用于与远端网络设备进行交互来保证终端接入网络。参见图7,该网络设备700包括:第一发送模块701和处理模块702。
第一发送模块701,用于向UP设备发送第一隧道信息,第一隧道信息包括UP设备与远端网络设备之间建立的一条或多条隧道的信息;具体实现方式请参考图3实施例中步骤301的详细描述,这里不再赘述。
处理模块702,用于如果检测到CP设备与UP设备之间的通信发生故障,则停止对该一条或多条隧道进行隧道保活;具体实现方式请参考图3实施例中步骤302的详细描述,这里不再赘述。
其中,第一隧道信息用于UP设备在检测到自身与CP设备之间的通信发生故障时,根据第一隧道信息对UP设备与远端网络设备之间建立的一条或多条隧道进行隧道保活。具体实现方式请参考图3实施例中步骤302的详细描述,这里不再赘述。
可选地,参见图8,该网络设备700还包括:
隧道保活模块703,用于如果检测到CP设备与UP设备之间的通信恢复,则重新对该一条或多条隧道进行隧道保活。具体实现方式请参考图3实施例中步骤303的详细描述,这里不再赘述。
可选地,隧道保活模块703包括:
重置单元,用于重置本地存储的该一条或多条隧道中每条隧道的隧道保活序列号;
指示单元,用于根据重置后的目标隧道的隧道保活序列号,指示远端网络设备对目标隧道的隧道保活序列号进行重置;
隧道保活单元,用于在远端网络设备对目标隧道的隧道保活序列号重置成功后,按照重置后的目标隧道的隧道保活序列号以及目标隧道的标识,通过UP设备对目标隧道进行隧道保活。具体实现方式请参考图3实施例中步骤3032的详细描述,这里不再赘述。
可选地,指示单元具体用于:
通过UP设备向远端网络设备发送第二控制请求报文,第二控制请求报文携带目标隧道的标识、重置后的目标隧道的隧道保活序列号,以及序列号重置指示信息;
通过UP设备接收远端网络设备发送的第二控制应答报文,第二控制应答报文用于指示远端网络设备对目标隧道的隧道保活序列号重置成功。具体实现方式请参考图3实施例中步骤303的详细描述,这里不再赘述。
可选地,隧道保活模块703还包括:
创建单元,用于创建与远端网络设备之间的数据对账隧道;
第一发送单元,用于通过数据对账隧道,通过UP设备向远端网络设备发送第二数据对账报文,第二数据对账报文携带CP设备上存储的UP设备与远端网络设备之间建立的隧道的标识;
第一接收单元,用于通过UP设备接收远端网络设备发送的第二对账应答报文,第二对账应答报文携带远端网络设备上存储的与UP设备之间建立的隧道的标识;
第一确定单元,用于将第二数据对账报文携带的隧道的标识与第二对账应答报文携带的隧道的标识的交集,确定为一条或多条隧道的标识。
可选地,隧道保活模块703还包括:
第二发送单元,用于通过UP设备向远端网络设备发送第二会话数据对账报文,第二会话数据对账报文携带一个或多个第一参考会话的标识,该一个或多个第一参考会话为CP设备上存储的目标隧道上承载的会话;
第二接收单元,用于通过UP设备接收远端网络设备发送的第二会话对账应答报文,第二会话对账应答报文携带一个或多个第三参考会话的标识,该一个或多个第三参考会话为远端网络设备上存储的目标隧道上承载的会话;
第二确定单元,用于将该一个或多个第一参考会话的标识和一个或多个第三参考会话的标识的交集,确定为目标隧道上承载的会话的标识。具体实现方式请参考图3实施例中步骤303的详细描述,这里不再赘述。
可选地,隧道保活模块703还包括:
第三发送单元,用于向UP设备发送第二隧道信息,第二隧道信息包括第一时刻CP设备上存储的UP设备与远端网络设备之间建立的一条或多条隧道的信息,第一时刻是指UP设备与CP设备之间的通信恢复之后,CP设备通过UP设备与远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻。具体实现方式请参考图3实施例中步骤303的详细描述,这里不再赘述。
可选地,CP设备通过控制报文重定向接口和状态控制接口与UP设备进行通信;
处理模块702包括:
监控单元,用于监控控制报文重定向接口和状态控制接口的状态;
第三确定单元,用于如果监控到控制报文重定向接口和/或状态控制接口的状态异常,则确定检测到CP设备与UP设备之间的通信发生故障。具体实现方式请参考图3实施例中步骤302的详细描述,这里不再赘述。
可选地,第一隧道信息携带在PFCP更新请求报文中,该一条或多条隧道为二层隧道协议L2TP隧道,该一条或多条隧道中每条隧道的信息包括隧道描述信息;
如果L2TP隧道是根据IPv4创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址;
如果L2TP隧道是根据IPv6创建的,则隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。具体实现方式请参考图3实施例中步骤301的详细描述,这里不再赘述。
可选地,第二隧道信息携带在PFCP更新请求报文中。
可选地,该网络设备700还包括:
第四发送模块,用于向UP设备发送第一会话信息,第一会话信息包括该一条或多条隧道上承载的会话的信息。
可选地,第一会话信息携带在PFCP更新请求报文中,该一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。具体实现方式请参考图3实施例中步骤301的详细描述,这里不再赘述。
可选地,第一发送模块包括:
第五发送单元,用于每创建一条隧道,向UP设备发送创建的一条隧道的信息,一条或多条隧道包括创建的一条隧道;或者,
第六发送单元,用于周期性地向UP设备发送自身存储的隧道的信息。
在本申请实施例中,在UP设备与CP设备之间通信故障之前,UP设备接收CP设备同步的隧道信息,在UP设备与CP之间的通信故障后,由UP设备根据隧道信息进行隧道保活,也即由UP设备维持与远端网络设备之间的隧道,这样就不会因为CP设备与UP设备之间的通信故障而触发拆除隧道,本方案能够保证终端与远端的网络连接不会因此中断,也即保证用户业务不受损。
需要说明的是:上述实施例提供的网络设备在进行隧道保活时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的网络设备与隧道保活方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例提供了一种网络系统,也可称为隧道保活系统,该网络系统包括CP设备和UP设备,以及远端网络设备,CP设备和UP设备用于与远端网络设备进行交互来保证终端接入网络。其中,UP设备和CP设备具有实现前述实施例提供的隧道保活方法的相应功能,以通过该系统进行隧道保活。具体实现方式请参考图3实施例的详细描述,这里不再赘述。
在本申请实施例中,在UP设备与CP设备之间通信故障之前,UP设备接收CP设备同步的隧道信息,在UP设备与CP之间的通信故障后,由UP设备根据隧道信息进行隧道保活,也即由UP设备维持与远端网络设备之间的隧道,这样就不会因为CP设备与UP设备之间的通信故障而触发拆除隧道,本方案能够保证终端与远端的网络连接不会因此中断,也即保证用户业务不受损。
需要说明的是:上述实施例提供的网络系统与隧道保活方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(digital subscriber line,DSL))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质,或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘(digital versatile disc,DVD))或半导体介质(例如:固态硬盘(solid state disk,SSD))等。值得注意的是,本申请实施例提到的计算机可读存储介质可以为非易失性存储介质,换句话说,可以是非瞬时性存储介质。
应当理解的是,本文提及的“至少一个”是指一个或多个,“多个”是指两个或两个以上。在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
以上所述为本申请提供的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (51)

1.一种隧道保活方法,其特征在于,控制面CP设备和用户面UP设备用于与远端网络设备进行交互来保证终端接入网络,所述方法包括:
所述UP设备接收所述CP设备发送的第一隧道信息,所述第一隧道信息包括所述UP设备与所述远端网络设备之间建立的一条或多条隧道的信息;
如果所述UP设备检测到自身与所述CP设备之间的通信发生故障,则所述UP设备根据所述第一隧道信息,对所述一条或多条隧道进行隧道保活。
2.如权利要求1所述的方法,其特征在于,所述第一隧道信息包括所述一条或多条隧道的标识;
所述UP设备根据所述第一隧道信息,对所述一条或多条隧道进行隧道保活,包括:
所述UP设备监听所述远端网络设备发送的第一隧道保活报文,所述第一隧道保活报文携带目标隧道的标识和隧道保活序列号;
所述UP设备根据所述目标隧道的标识和隧道保活序列号,以及所述一条或多条隧道的标识,向所述远端网络设备发送第二隧道保活报文。
3.如权利要求1所述的方法,其特征在于,所述第一隧道信息包括所述一条或多条隧道的标识;
所述UP设备根据所述第一隧道信息,对所述一条或多条隧道进行隧道保活,包括:
所述UP设备重置目标隧道的隧道保活序列号,所述目标隧道为所述一条或多条隧道中的一条;
所述UP设备根据重置后的所述目标隧道的隧道保活序列号,指示所述远端网络设备对所述目标隧道的隧道保活序列号进行重置;
在所述远端网络设备对所述目标隧道的隧道保活序列号重置成功后,所述UP设备按照重置后的所述目标隧道的隧道保活序列号以及所述目标隧道的标识,对所述目标隧道进行隧道保活。
4.如权利要求3所述的方法,其特征在于,所述UP设备根据重置后的所述目标隧道的隧道保活序列号,指示所述远端网络设备对所述目标隧道的隧道保活序列号进行重置,包括:
所述UP设备向所述远端网络设备发送第一控制请求报文,所述第一控制请求报文携带所述目标隧道的标识、所述重置后的所述目标隧道的隧道保活序列号,以及序列号重置指示信息;
所述UP设备接收所述远端网络设备发送的第一控制应答报文,所述第一控制应答报文用于指示所述远端网络设备对所述目标隧道的隧道保活序列号重置成功。
5.如权利要求3或4所述的方法,其特征在于,所述UP设备重置目标隧道的隧道保活序列号之前,还包括:
所述UP设备创建与所述远端网络设备之间的数据对账隧道;
所述UP设备通过所述数据对账隧道,向所述远端网络设备发送第一隧道数据对账报文,所述第一隧道数据对账报文携带所述UP设备上存储的与所述远端网络设备之间建立的隧道的标识;
所述UP设备接收所述远端网络设备发送的第一隧道对账应答报文,所述第一隧道对账应答报文携带所述远端网络设备上存储的与所述UP设备之间建立的隧道的标识;
所述UP设备将所述第一隧道数据对账报文携带的隧道的标识与所述第一隧道对账应答报文携带的隧道的标识的交集,确定为所述一条或多条隧道的标识。
6.如权利要求5所述的方法,其特征在于,所述UP设备根据所述第一隧道信息,对所述一条或多条隧道进行隧道保活之前,还包括:
所述UP设备接收所述CP设备发送的第一会话信息,所述第一会话信息包括所述一条或多条隧道上承载的会话的信息;
所述UP设备创建与所述远端网络设备之间的数据对账隧道之后,还包括:
所述UP设备向所述远端网络设备发送第一会话数据对账报文,所述第一会话数据对账报文携带一个或多个第一参考会话的标识,所述一个或多个第一参考会话为所述UP设备上存储的所述目标隧道上承载的会话;
所述UP设备接收所述远端网络设备发送的第一会话对账应答报文,所述第一会话对账应答报文携带一个或多个第二参考会话的标识,所述一个或多个第二参考会话为所述远端网络设备上存储的所述目标隧道上承载的会话;
所述UP设备将所述一个或多个第一参考会话的标识与所述一个或多个第二参考会话的标识的交集,确定为所述目标隧道上承载的会话的标识。
7.如权利要求1-6任一所述的方法,其特征在于,所述UP设备根据所述第一隧道信息,对所述一条或多条隧道进行隧道保活之后,还包括:
如果所述UP设备检测到自身与所述CP设备之间的通信恢复,则所述UP设备停止对所述一条或多条隧道进行隧道保活。
8.如权利要求7所述的方法,其特征在于,所述UP设备停止对所述一条或多条隧道进行隧道保活之后,还包括:
所述UP设备接收所述CP设备发送的第二隧道信息,所述第二隧道信息包括第一时刻所述CP设备上存储的所述UP设备与所述远端网络设备之间建立的一条或多条隧道的信息,所述第一时刻是指所述UP设备与所述CP设备之间的通信恢复之后,所述CP设备通过所述UP设备与所述远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻;
所述UP设备根据所述第二隧道信息,更新本地存储的隧道信息。
9.如权利要求1-8任一所述的方法,其特征在于,所述UP设备通过控制报文重定向接口和状态控制接口与所述CP设备进行通信;
所述UP设备检测到自身与所述CP设备之间的通信发生故障,包括:
所述UP设备监控所述控制报文重定向接口和所述状态控制接口的状态;
如果所述UP设备监控到所述控制报文重定向接口和/或所述状态控制接口的状态异常,则所述UP设备确定检测到自身与所述CP设备之间的通信发生故障。
10.如权利要求1-9任一所述的方法,其特征在于,所述第一隧道信息携带在包转发控制协议PFCP更新请求报文中,所述一条或多条隧道为二层隧道协议L2TP隧道,所述一条或多条隧道中每条隧道的信息包括隧道描述信息;
如果所述L2TP隧道是根据第四版互联网协议IPv4创建的,则所述隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址;
如果所述L2TP隧道是根据第六版互联网协议IPv6创建的,则所述隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。
11.如权利要求8所述的方法,其特征在于,所述第二隧道信息携带在PFCP更新请求报文中。
12.如权利要求6所述的方法,其特征在于,所述第一会话信息携带在PFCP更新请求报文中,所述一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。
13.一种隧道保活方法,其特征在于,控制面CP设备和用户面UP设备用于与远端网络设备进行交互来保证终端接入网络,所述方法包括:
所述CP设备向所述UP设备发送第一隧道信息,所述第一隧道信息包括所述UP设备与所述远端网络设备之间建立的一条或多条隧道的信息;
如果所述CP设备检测到自身与所述UP设备之间的通信发生故障,则所述CP设备停止对所述一条或多条隧道进行隧道保活;
其中,所述第一隧道信息用于所述UP设备在检测到自身与所述CP设备之间的通信发生故障时,根据所述第一隧道信息对所述UP设备与所述远端网络设备之间建立的一条或多条隧道进行隧道保活。
14.如权利要求13所述的方法,其特征在于,所述如果所述CP设备检测到自身与所述UP设备之间的通信发生故障,则所述CP设备停止对所述一条或多条隧道进行隧道保活之后,还包括:
如果所述CP设备检测到自身与所述UP设备之间的通信恢复,则所述CP设备重新对所述一条或多条隧道进行隧道保活。
15.如权利要求14所述的方法,其特征在于,所述CP设备重新对所述一条或多条隧道进行隧道保活,包括:
所述CP设备重置本地存储的目标隧道的隧道保活序列号,所述目标隧道为所述一条或多条隧道中的一条;
所述CP设备根据重置后的所述目标隧道的隧道保活序列号,指示所述远端网络设备对所述目标隧道的隧道保活序列号进行重置;
在所述远端网络设备对所述目标隧道的隧道保活序列号重置成功后,所述CP设备按照重置后的所述目标隧道的隧道保活序列号以及所述目标隧道的标识,通过所述UP设备对所述目标隧道进行隧道保活。
16.如权利要求15所述的方法,其特征在于,所述CP设备根据重置后的所述目标隧道的隧道保活序列号,指示所述远端网络设备对所述目标隧道的隧道保活序列号进行重置,包括:
所述CP设备通过所述UP设备向所述远端网络设备发送第二控制请求报文,所述第二控制请求报文携带所述目标隧道的标识、所述重置后的所述目标隧道的隧道保活序列号,以及序列号重置指示信息;
所述CP设备通过所述UP设备接收所述远端网络设备发送的第二控制应答报文,所述第二控制应答报文用于指示所述远端网络设备对所述目标隧道的隧道保活序列号重置成功。
17.如权利要求15或16所述的方法,其特征在于,所述CP设备重置本地存储的目标隧道的隧道保活序列号之前,还包括:
所述CP设备创建与所述远端网络设备之间的数据对账隧道;
所述CP设备通过所述数据对账隧道,通过UP设备向所述远端网络设备发送第二数据对账报文,所述第二数据对账报文携带所述CP设备上存储的所述UP设备与所述远端网络设备之间建立的隧道的标识;
所述CP设备通过所述UP设备接收所述远端网络设备发送的第二对账应答报文,所述第二对账应答报文携带所述远端网络设备上存储的与所述UP设备之间建立的隧道的标识;
所述CP设备将所述第二数据对账报文携带的隧道的标识与所述第二对账应答报文携带的隧道的标识的交集,确定为所述一条或多条隧道的标识。
18.如权利要求17所述的方法,其特征在于,所述CP设备创建与所述远端网络设备之间的数据对账隧道之后,还包括:
所述CP设备通过所述UP设备向所述远端网络设备发送第二会话数据对账报文,所述第二会话数据对账报文携带一个或多个第一参考会话的标识,所述一个或多个第一参考会话为所述CP设备上存储的所述目标隧道上承载的会话;
所述CP设备通过所述UP设备接收所述远端网络设备发送的第二会话对账应答报文,所述第二会话对账应答报文携带一个或多个第三参考会话的标识,所述一个或多个第三参考会话为所述远端网络设备上存储的所述目标隧道上承载的会话;
所述CP设备将所述一个或多个第一参考会话的标识与所述一个或多个第三参考会话的标识的交集,确定为所述目标隧道上承载的会话的标识。
19.如权利要求15-18任一所述的方法,其特征在于,所述远端网络设备对所述目标隧道的隧道保活序列号重置成功之后,还包括:
所述CP设备向所述UP设备发送第二隧道信息,所述第二隧道信息包括第一时刻所述CP设备上存储的所述UP设备与所述远端网络设备之间建立的一条或多条隧道的信息,所述第一时刻是指所述UP设备与所述CP设备之间的通信恢复之后,所述CP设备通过UP设备与所述远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻。
20.如权利要求13-19任一所述的方法,其特征在于,所述CP设备通过控制报文重定向接口和状态控制接口与所述UP设备进行通信;
所述CP设备检测到自身与所述UP设备之间的通信发生故障,包括:
所述CP设备监控所述控制报文重定向接口和所述状态控制接口的状态;
如果所述CP设备监控到所述控制报文重定向接口和/或所述状态控制接口的状态异常,则所述CP设备确定检测到自身与所述UP设备之间的通信发生故障。
21.如权利要求13-20任一所述的方法,其特征在于,所述第一隧道信息携带在包转发控制协议PFCP更新请求报文中,所述一条或多条隧道为二层隧道协议L2TP隧道,所述一条或多条隧道中每条隧道的信息包括隧道描述信息;
如果所述L2TP隧道是根据第四版互联网协议IPv4创建的,则所述隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址;
如果所述L2TP隧道是根据第六版互联网协议IPv6创建的,则所述隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。
22.如权利要求19所述的方法,其特征在于,所述第二隧道信息携带在PFCP更新请求报文中。
23.如权利要求13-22任一所述的方法,其特征在于,所述CP设备停止隧道保活之前,还包括:
所述CP设备向所述UP设备发送第一会话信息,所述第一会话信息包括所述一条或多条隧道上承载的会话的信息。
24.如权利要求23所述的方法,其特征在于,所述第一会话信息携带在PFCP更新请求报文中,所述一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。
25.如权利要求13-24任一所述的方法,其特征在于,所述CP设备向所述UP设备发送第一隧道信息,包括:
所述CP设备每创建一条隧道,向所述UP设备发送创建的一条隧道的信息,所述一条或多条隧道包括所述创建的一条隧道;或者,
所述CP设备周期性地向所述UP设备发送自身存储的隧道的信息。
26.一种网络设备,其特征在于,所述网络设备应用于网络系统,所述网络系统包括控制面CP设备和用户面UP设备,所述CP设备和所述UP设备用于与远端网络设备进行交互来保证终端接入网络,所述网络设备为所述UP设备,所述网络设备包括:
第一接收模块,用于接收所述CP设备发送的第一隧道信息,所述第一隧道信息包括所述UP设备与所述远端网络设备之间建立的一条或多条隧道的信息;
隧道保活模块,用于如果检测到所述UP设备与所述CP设备之间的通信发生故障,则根据所述第一隧道信息,对所述一条或多条隧道进行隧道保活。
27.如权利要求26所述的网络设备,其特征在于,所述第一隧道信息包括所述一条或多条隧道的标识;
所述隧道保活模块包括:
监听单元,用于监听所述远端网络设备发送的第一隧道保活报文,所述第一隧道保活报文携带目标隧道的标识和隧道保活序列号;
第一发送单元,用于根据所述目标隧道的标识和隧道保活序列号,以及所述一条或多条隧道的标识,向所述远端网络设备发送第二隧道保活报文。
28.如权利要求26所述的网络设备,其特征在于,所述第一隧道信息包括所述一条或多条隧道的标识;
所述隧道保活模块包括:
重置单元,用于重置目标隧道的隧道保活序列号,所述目标隧道为所述一条或多条隧道中的一条;
指示单元,用于根据重置后的所述目标隧道的隧道保活序列号,指示所述远端网络设备对所述目标隧道的隧道保活序列号进行重置;
隧道保活单元,用于在所述远端网络设备对所述目标隧道的隧道保活序列号重置成功后,按照重置后的所述目标隧道的隧道保活序列号以及所述目标隧道的标识,对所述目标隧道进行隧道保活。
29.如权利要求28所述的网络设备,其特征在于,所述指示单元具体用于:
向所述远端网络设备发送第一控制请求报文,所述第一控制请求报文携带所述目标隧道的标识、所述重置后的所述目标隧道的隧道保活序列号,以及序列号重置指示信息;
接收所述远端网络设备发送的第一控制应答报文,所述第一控制应答报文用于指示所述远端网络设备对所述目标隧道的隧道保活序列号重置成功。
30.如权利要求28或29所述的网络设备,其特征在于,所述隧道保活模块还包括:
创建单元,用于创建与所述远端网络设备之间的数据对账隧道;
第二发送单元,用于通过所述数据对账隧道,向所述远端网络设备发送第一隧道数据对账报文,所述第一隧道数据对账报文携带所述UP设备上存储的与所述远端网络设备之间建立的隧道的标识;
第一接收单元,用于接收所述远端网络设备发送的第一隧道对账应答报文,所述第一隧道对账应答报文携带所述远端网络设备上存储的与所述UP设备之间建立的隧道的标识;
第一确定单元,用于将所述第一隧道数据对账报文携带的隧道的标识与所述第一隧道对账应答报文携带的隧道的标识的交集,确定为所述一条或多条隧道的标识。
31.如权利要求30所述的网络设备,其特征在于,所述网络设备还包括:
第二接收模块,用于接收所述CP设备发送的第一会话信息,所述第一会话信息包括所述一条或多条隧道上承载的会话的信息;
所述隧道保活模块还包括:
第三发送单元,用于向所述远端网络设备发送第一会话数据对账报文,所述第一会话数据对账报文携带一个或多个第一参考会话的标识,所述一个或多个第一参考会话为所述UP设备上存储的所述目标隧道上承载的会话;
第二接收单元,用于接收所述远端网络设备发送的第一会话对账应答报文,所述第一会话对账应答报文携带一个或多个第二参考会话的标识,所述一个或多个第二参考会话为所述远端网络设备上存储的所述目标隧道上承载的会话;
第二确定单元,用于将所述一个或多个第一参考会话的标识与所述一个或多个第二参考会话的标识的交集,确定为所述目标隧道上承载的会话的标识。
32.如权利要求26-31任一所述的网络设备,其特征在于,所述网络设备还包括:
处理模块,用于如果检测到所述UP设备与所述CP设备之间的通信恢复,则停止对所述一条或多条隧道进行隧道保活。
33.如权利要求32所述的网络设备,其特征在于,所述网络设备还包括:
第三接收模块,用于接收所述CP设备发送的第二隧道信息,所述第二隧道信息包括第一时刻所述CP设备上存储的所述UP设备与所述远端网络设备之间建立的一条或多条隧道的信息,所述第一时刻是指所述UP设备与所述CP设备之间的通信恢复之后,所述CP设备通过所述UP设备与所述远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻;
更新模块,用于根据所述第二隧道信息,更新本地存储的隧道信息。
34.如权利要求26-33任一所述的网络设备,其特征在于,所述UP设备通过控制报文重定向接口和状态控制接口与所述CP设备进行通信;
所述隧道保活模块包括:
监控单元,用于监控所述控制报文重定向接口和所述状态控制接口的状态;
第三确定单元,用于如果监控到所述控制报文重定向接口和/或所述状态控制接口的状态异常,则确定检测到所述UP设备与所述CP设备之间的通信发生故障。
35.如权利要求26-34任一所述的网络设备,其特征在于,所述第一隧道信息携带在包转发控制协议PFCP更新请求报文中,所述一条或多条隧道为二层隧道协议L2TP隧道,所述一条或多条隧道中每条隧道的信息包括隧道描述信息;
如果所述L2TP隧道是根据第四版互联网协议IPv4创建的,则所述隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv4地址和隧道远端IPv4地址;
如果所述L2TP隧道是根据第六版互联网协议IPv6创建的,则所述隧道描述信息包括隧道本地标识、隧道远端标识、隧道本地IPv6地址和隧道远端IPv6地址。
36.如权利要求33所述的网络设备,其特征在于,所述第二隧道信息携带在PFCP更新请求报文中。
37.如权利要求31所述的网络设备,其特征在于,所述第一会话信息携带在PFCP更新请求报文中,所述一条或多条隧道中每条隧道上承载的会话的信息包括隧道本地标识、会话本地标识和会话远端标识。
38.一种网络设备,其特征在于,所述网络设备应用于网络系统,所述网络系统包括控制面CP设备和用户面UP设备,所述CP设备和所述UP设备用于与远端网络设备进行交互来保证终端接入网络,所述网络设备为所述CP设备,所述网络设备包括:
第一发送模块,用于向所述UP设备发送第一隧道信息,所述第一隧道信息包括所述UP设备与所述远端网络设备之间建立的一条或多条隧道的信息;
处理模块,用于如果检测到所述CP设备与所述UP设备之间的通信发生故障,则停止对所述一条或多条隧道进行隧道保活;
其中,所述第一隧道信息用于所述UP设备在检测到自身与所述CP设备之间的通信发生故障时,根据所述第一隧道信息对所述UP设备与所述远端网络设备之间建立的一条或多条隧道进行隧道保活。
39.如权利要求38所述的网络设备,其特征在于,所述网络设备还包括:
隧道保活模块,用于如果检测到所述CP设备与所述UP设备之间的通信恢复,则重新对所述一条或多条隧道进行隧道保活。
40.如权利要求39所述的网络设备,其特征在于,所述隧道保活模块包括:
重置单元,用于重置本地存储的目标隧道的隧道保活序列号,所述目标隧道为所述一条或多条隧道中的一条;
指示单元,用于根据重置后的所述目标隧道的隧道保活序列号,指示所述远端网络设备对所述目标隧道的隧道保活序列号进行重置;
隧道保活单元,用于在所述远端网络设备对所述目标隧道的隧道保活序列号重置成功后,按照重置后的所述目标隧道的隧道保活序列号以及所述目标隧道的标识,通过所述UP设备对所述目标隧道进行隧道保活。
41.如权利要求40所述的网络设备,其特征在于,所述指示具体用于:
通过所述UP设备向所述远端网络设备发送第二控制请求报文,所述第二控制请求报文携带所述目标隧道的标识、所述重置后的所述目标隧道的隧道保活序列号,以及序列号重置指示信息;
通过所述UP设备接收所述远端网络设备发送的第二控制应答报文,所述第二控制应答报文用于指示所述远端网络设备对所述目标隧道的隧道保活序列号重置成功。
42.如权利要求40或41所述的网络设备,其特征在于,所述隧道保活模块还包括:
创建单元,用于创建与所述远端网络设备之间的数据对账隧道;
第一发送单元,用于通过所述数据对账隧道,通过UP设备向所述远端网络设备发送第二数据对账报文,所述第二数据对账报文携带所述CP设备上存储的所述UP设备与所述远端网络设备之间建立的隧道的标识;
第一接收单元,用于通过所述UP设备接收所述远端网络设备发送的第二对账应答报文,所述第二对账应答报文携带所述远端网络设备上存储的与所述UP设备之间建立的隧道的标识;
第一确定单元,用于将所述第二数据对账报文携带的隧道的标识与所述第二对账应答报文携带的隧道的标识的交集,确定为所述一条或多条隧道的标识。
43.如权利要求42所述的网络设备,其特征在于,所述隧道保活模块还包括:
第二发送单元,用于通过所述UP设备向所述远端网络设备发送第二会话数据对账报文,所述第二会话数据对账报文携带一个或多个第一参考会话的标识,所述一个或多个第一参考会话为所述CP设备上存储的所述目标隧道上承载的会话;
第二接收单元,用于通过所述UP设备接收所述远端网络设备发送的第二会话对账应答报文,所述第二会话对账应答报文携带一个或多个第三参考会话的标识,所述一个或多个第三参考会话为所述远端网络设备上存储的所述目标隧道上承载的会话;
第二确定单元,用于将所述一个或多个第一参考会话的标识与所述一个或多个第三参考会话的标识的交集,确定为所述目标隧道上承载的会话的标识。
44.如权利要求40-43任一所述的网络设备,其特征在于,所述隧道保活模块还包括:
第三发送单元,用于向所述UP设备发送第二隧道信息,所述第二隧道信息包括第一时刻所述CP设备上存储的所述UP设备与所述远端网络设备之间建立的一条或多条隧道的信息,所述第一时刻是指所述UP设备与所述CP设备之间的通信恢复之后,所述CP设备通过UP设备与所述远端网络设备之间完成隧道故障恢复或会话故障恢复的时刻。
45.如权利要求38-44任一所述的网络设备,其特征在于,所述CP设备通过控制报文重定向接口和状态控制接口与所述UP设备进行通信;
所述处理模块包括:
监控单元,用于监控所述控制报文重定向接口和所述状态控制接口的状态;
第三确定单元,用于如果监控到所述控制报文重定向接口和/或所述状态控制接口的状态异常,则确定检测到所述CP设备与所述UP设备之间的通信发生故障。
46.如权利要求38-45任一所述的网络设备,其特征在于,所述网络设备还包括:
第四发送模块,用于向所述UP设备发送第一会话信息,所述第一会话信息包括所述一条或多条隧道上承载的会话的信息。
47.如权利要求38-46任一所述的网络设备,其特征在于,所述第一发送模块包括:
第五发送单元,用于每创建一条隧道,向所述UP设备发送创建的一条隧道的信息,所述一条或多条隧道包括所述创建的一条隧道;或者,
第六发送单元,用于周期性地向所述UP设备发送自身存储的隧道的信息。
48.一种网络设备,其特征在于,所述网络设备应用于网络系统,所述网络系统包括控制面CP设备和用户面UP设备,所述CP设备和所述UP设备用于与远端网络设备进行交互来保证终端接入网络,所述网络设备为所述UP设备,所述网络设备包括存储器和处理器;
所述存储器,用于存储权利要求1-12任一所述的方法所涉及的程序代码;
所述处理器,用于执行所述程序代码实现权利要求1-12任一所述的方法。
49.一种网络设备,其特征在于,所述网络设备应用于网络系统,所述网络系统包括控制面CP设备和用户面UP设备,所述CP设备和所述UP设备用于与远端网络设备进行交互来保证终端接入网络,所述网络设备为所述CP设备,所述网络设备包括存储器和处理器;
所述存储器,用于存储权利要求13-25任一所述的方法所涉及的程序代码;
所述处理器,用于执行所述程序代码实现权利要求13-25任一所述的方法。
50.一种网络系统,其特征在于,所述系统包括控制面CP设备和用户面UP设备,以及远端网络设备,所述CP设备和所述UP设备用于与所述远端网络设备进行交互来保证终端接入网络;
所述UP设备,用于实现权利要求1-12任一所述的方法;
所述CP设备,用于实现权利要求13-25任一所述的方法。
51.一种计算机可读存储介质,其特征在于,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-12任一所述的方法的步骤,或者实现权利要求13-25任一所述的方法的步骤。
CN202010899677.9A 2020-08-31 2020-08-31 隧道保活方法、网络设备、系统及存储介质 Pending CN114125910A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202010899677.9A CN114125910A (zh) 2020-08-31 2020-08-31 隧道保活方法、网络设备、系统及存储介质
PCT/CN2021/114141 WO2022042499A1 (zh) 2020-08-31 2021-08-23 隧道保活方法、网络设备、系统及存储介质
EP21860334.8A EP4192085A4 (en) 2020-08-31 2021-08-23 TUNNEL KEEPALIVE METHOD, NETWORK DEVICE, SYSTEM AND STORAGE MEDIUM
US18/175,274 US20230208679A1 (en) 2020-08-31 2023-02-27 Tunnel Keepalive Method, Network Device, System, and Storage Medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010899677.9A CN114125910A (zh) 2020-08-31 2020-08-31 隧道保活方法、网络设备、系统及存储介质

Publications (1)

Publication Number Publication Date
CN114125910A true CN114125910A (zh) 2022-03-01

Family

ID=80352654

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010899677.9A Pending CN114125910A (zh) 2020-08-31 2020-08-31 隧道保活方法、网络设备、系统及存储介质

Country Status (4)

Country Link
US (1) US20230208679A1 (zh)
EP (1) EP4192085A4 (zh)
CN (1) CN114125910A (zh)
WO (1) WO2022042499A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024051294A1 (zh) * 2022-09-07 2024-03-14 华为技术有限公司 客户端设备的接入方法、装置及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060168241A1 (en) * 2004-11-24 2006-07-27 Puthiyandyil Sanil K Redundant L2TP end points
WO2014000304A1 (zh) * 2012-06-30 2014-01-03 华为技术有限公司 一种控制和转发解耦架构下的转发面隧道资源的管理方法
CN108075991B (zh) * 2016-11-18 2020-09-08 新华三技术有限公司 报文转发方法及装置
CN108512703B (zh) * 2018-03-28 2021-08-24 新华三技术有限公司 Bras转控分离的备份方法、装置、设备及机器可读存储介质
CN110636535B (zh) * 2018-06-25 2021-02-23 华为技术有限公司 一种数据传输方法及装置
CN111431787B (zh) * 2019-01-10 2022-02-11 中国移动通信有限公司研究院 一种隧道建立方法、装置及计算机可读存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024051294A1 (zh) * 2022-09-07 2024-03-14 华为技术有限公司 客户端设备的接入方法、装置及系统

Also Published As

Publication number Publication date
WO2022042499A1 (zh) 2022-03-03
US20230208679A1 (en) 2023-06-29
EP4192085A4 (en) 2024-02-21
EP4192085A1 (en) 2023-06-07

Similar Documents

Publication Publication Date Title
US11729615B2 (en) Internet of things communication method, apparatus, and system
US7934001B2 (en) Network-initiated session recovery
CN102291320B (zh) Mac地址学习方法和边缘设备
US20050286510A1 (en) Packet transfer apparatus
US7567505B2 (en) VRRP technology keeping VR confidentiality
US20110173344A1 (en) System and method of reducing intranet traffic on bottleneck links in a telecommunications network
CN110661701B (zh) 一种避免环路的通信方法、设备和系统
US20230308445A1 (en) Continuing a media access control security (macsec) key agreement (mka) session upon a network device becoming temporarily unavailable
US10581669B2 (en) Restoring control-plane connectivity with a network management entity
US11917523B2 (en) Polymorphic network control system and method supporting mobile access of terminal
KR20050010506A (ko) 로컬 연결 변환을 갖는 가상 연결성
US8514808B2 (en) Method and function for maintaining mapping between media independent handover functions and transport addresses
CN113839862A (zh) Mclag邻居之间同步arp信息的方法、系统、终端及存储介质
US11552926B2 (en) Method related to sending management IP address and system
US20230208679A1 (en) Tunnel Keepalive Method, Network Device, System, and Storage Medium
EP3700258A1 (en) Method and apparatus for processing link establishment failure, and computer storage medium
CN112995027B (zh) 路由发布方法及vtep节点
CN102447703B (zh) 一种热备份方法和系统、cgn设备
CN112887312B (zh) 一种慢协议报文处理方法及相关装置
CN112910704A (zh) 一种支持动态自适应网络配置的局域网系统、方法和装置
CN108270593A (zh) 一种双机热备份方法和系统
US11363103B2 (en) Dynamic user plane function (UPF) selection based on supported protocol type
CN114765589A (zh) 网络测试方法、装置及存储介质
CN111903236B (zh) 基于Diameter协议的分布式高可靠性认证实体的实现方法
KR20030050551A (ko) 패킷데이터서비스네트워크에서 홈 에이전트 장애 처리장치 및 그 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination