CN115348207B - 一种基于udp的主备nat设备流表同步方法及系统 - Google Patents

一种基于udp的主备nat设备流表同步方法及系统 Download PDF

Info

Publication number
CN115348207B
CN115348207B CN202210859365.4A CN202210859365A CN115348207B CN 115348207 B CN115348207 B CN 115348207B CN 202210859365 A CN202210859365 A CN 202210859365A CN 115348207 B CN115348207 B CN 115348207B
Authority
CN
China
Prior art keywords
flow table
udp
nat
nat device
table information
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.)
Active
Application number
CN202210859365.4A
Other languages
English (en)
Other versions
CN115348207A (zh
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.)
Foshan Polytechnic
Original Assignee
Foshan Polytechnic
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 Foshan Polytechnic filed Critical Foshan Polytechnic
Priority to CN202210859365.4A priority Critical patent/CN115348207B/zh
Publication of CN115348207A publication Critical patent/CN115348207A/zh
Application granted granted Critical
Publication of CN115348207B publication Critical patent/CN115348207B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

本发明公开了一种基于UDP的主备NAT设备流表同步方法及系统,包括:流量通过第一NAT设备访问至源站,过程中第一NAT设备存储添加流表信息;根据添加流表条目阈值和同步周期,第一NAT设备构建UDP同步报文并通过广播、组播的方式发送至第二NAT设备,UDP同步报文携带添加流表信息;第二NAT设备接收添加流表信息,两台NAT设备同步完毕;当第一NAT设备出现宕机情况时切换为第二NAT设备,客户端通与源站的TCP连接不中断。本发明不需要上层其他协议的参与,通过UDP的广播、多播功能实现了多台NAT设备之间快速高效同步流表信息,降低了主、备NAT设备切换时TCP连接中断的可能性,避免了主NAT设备一直工作而备NAT设备一直空闲的情况,提高了整个NAT网络的通信效率和接入数量。

Description

一种基于UDP的主备NAT设备流表同步方法及系统
技术领域
本发明属于NAT网关技术领域,具体涉及一种基于UDP的主备NAT设备流表同步方法及系统。
背景技术
NAT(Network Address Translation,网络地址转换)是用于在本地网络中使用私有地址,在连接互联网时转而使用全局IP地址的技术,NAT实际上是为解决Ipv4地址短缺而开发的技术,NAT技术主要通过修改通信报文的源IP地址、目的ip地址实现内网与外网之间的通信。在NAT的通信过程中,一旦NAT遇到异常,所有的TCP连接都将被重置,客户端需要重新建立TCP连接后才能正常工作。为了应对NAT网关异常问题,本技术领域中通常备置两台NAT设备作容灾备份,当主NAT设备出现异常时,则切换至备NAT设备工作。而在NAT设备上一般设置有一个具有复用功能的端口和计算回源端口的算法,由于现有技术中主NAT设备与备NAT设备之间没有信息交互,使得主NAT设备和备NAT设备的回源侧的流表不同,因此在主、备NAT设备切换时,因为两者的流表不同而导致TCP连接终端,影响了客户的体验。
公告号为CN111131547B的中国发明专利公开了一种NAT网关主备切换时避免TCP连接中断的方法,其将连接主、备NAT设备的下行交换机的接口都配置为trunk模式,并确保这两个下行交换机的接口允许的VLANlist设置完全相同,从而在没有添加任何额外的设备的情况下实现主、备两台NAT设备数据包的流表同步。上述技术需要设置trunk模式,涉及网络层的操作,存在有上层其他协议参与的现象,而且其主备NAT设备不能同步运行,出现了主、备NAT设备的组网中主NAT设备一直工作而备用NAT设备一直空闲的现象,造成了资源的浪费。
发明内容
本发明的目的是提供一种基于UDP的主备NAT设备流表同步方法及系统,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
本发明解决其技术问题的解决方案是:提供一种基于UDP的主备NAT设备流表同步方法,包括以下步骤:
步骤100,第一NAT设备和第二NAT设备位于同一局域网中工作,有客户端接入三层交换机,三层交换机分配流量至第一NAT设备,流量通过第一NAT设备访问到源站,客户端与源站建立连接,第一NAT设备存储在此过程中产生的添加流表信息;
其中,所述在此过程中产生的添加流表信息包括:
第一流表信息,记载有第一NAT设备和客户端之间的流表信息;
第二流表信息,记载有第一NAT设备和源站之间的流表信息;
步骤200,第一NAT设备设置添加流表条目阈值和同步周期,根据添加流表条目阈值和同步周期,第一NAT设备构建UDP同步报文,并利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备,所述UDP同步报文携带有添加流表信息;
步骤300,第二NAT设备接收添加流表信息,将所述添加流表信息标志为远端NAT设备流表,存储在本地,第一NAT设备与第二NAT设备同步完毕;
步骤400,当第一NAT设备出现宕机情况时,与三层交换机连接的NAT设备从第一NAT设备切换为第二NAT设备,客户端通过三层交换机和第二NAT设备与源站保持连接。
作为上述技术方案的进一步改进,在构建UDP的数据报时,所述第一NAT设备选用与所述第二NAT设备约定的固定端口,并且所述UDP的数据包的校验和配置为零。
作为上述技术方案的进一步改进,所述步骤200具体包括:
步骤210,第一NAT设备设置添加流表条目阈值,根据所存储的添加流表信息,第一NAT设备计算其所存储的添加流表信息的实际条目,记作添加流表实际条目;
步骤220,第一NAT设备判断添加流表实际条目是否大于等于添加流表条目阈值;如果是,则执行步骤221;
步骤221,第一NAT设备构建UDP同步报文,根据UDP同步报文的载荷将添加流表信息封装至UDP同步报文中,第一NAT设备利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备。
作为上述技术方案的进一步改进,步骤220中,若第一NAT设备判断添加流表实际条目小于添加流表条目阈值,还包括以下步骤:
步骤230,第一网关涉笔设定同步周期,同步周期为相邻两次发送UDP同步报文的时间戳的差值,第一NAT设备计算距离上次发送UDP同步报文的同步累积时间;
步骤240,第一NAT设备判断同步累积时间是否超过同步周期;
如果是,则执行步骤241;如果否,则第一NAT设备不构建UDP同步报文;
步骤241,第一NAT设备构建UDP同步报文,根据UDP同步报文的载荷将添加流表信息封装至UDP同步报文中,第一NAT设备利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备。
作为上述技术方案的进一步改进,所述步骤100之前,还包括:
步骤001,在第一NAT设备工作的过程中第二NAT设备关闭,客户端接入三层交换机,三层交换机分配流量至第一NAT设备,流量通过第一NAT设备访问到源站,第一NAT设备存储在此过程中产生的流表信息;
步骤002,第二NAT设备启动,启动后第二NAT设备构建标志为设备启动的UDP广播报文,并通过其发送报文线程发送UDP广播报文至第一NAT设备;
步骤003,第一NAT设备接收所述UDP广播报文,第一NAT设备构建UDP同步单播报文,根据UDP同步单播报文的载荷将已存储的流表信息封装至UDP同步单播报文中,通过其发送报文线程将所述UDP同步单播报文发送至第二NAT设备;
步骤004,第二NAT设备接收到所述UDP同步单播报文,从中提取出所述流表信息,并将所述流表信息标志为远端NAT设备流表,存储在本地。
作为上述技术方案的进一步改进,所述步骤100具体包括:
步骤110,客户端接入三层交换机,第一NAT设备通过三层交换机接收客户端发送的原始五元组信息,根据原始五元组信息,第一NAT设备计算新的五元组信息,得到第二流表信息,并将第二流表信息暂存于其发送流表线程,其发送流表线程将第二流表信息标志为添加;
步骤120,第一NAT设备将第二流表信息发送至三层交换机;
步骤130,根据第二流表信息,三层交换机从客户端获取客户端的报文并转发至源站,同时将第二流表信息也转发至源站,源站在接收客户端的报文后产生源站报文;
步骤140,第一NAT设备根据原始五元组信息和步骤110中计算的新的五元组信息转换得到第一流表信息,并将第一流表信息暂存于其发送流表线程,其发送流表线程将第一流表信息标志为添加,第一NAT设备将第一流表信息发送至三层交换机;
步骤150,根据第一流表信息,三层交换机从源站获取源站报文并将源站报文转发至客户端,客户端接收源站报文,客户端与源站建立连接。
作为上述技术方案的进一步改进,在步骤300和步骤400之间,若第一NAT设备所存储的流表信息中存在有流表老化的现象,第一NAT设备和第二网管设备共同执行删除流表步骤;
在步骤400之后,若客户端断开与三层交换机的连接,第一NAT设备和第二网管设备亦执行删除流表步骤;
所述删除流表步骤包括:
A.第一NAT设备判断有需要删除流表信息的情况,从其存储的流表信息中提取出所需要删除的流表信息,记作删除流表信息;
B.第一NAT设备将删除流表信息发送给第一NAT设备的发送流表线程,第一NAT设备的发送流表线程接收到所述删除流表信息,暂存删除流表信息,将其标志为删除;
C.第一NAT设备设置删除流表条目阈值和删除周期,根据删除流表条目阈值和删除周期,第一NAT设备构建UDP删除报文并将UDP删除报文发送至位于同一局域网的第二NAT设备;
D.第二NAT设备接收到UDP删除报文,从其中提取删除流表信息,根据删除流表信息,第二NAT设备在所述远端NAT设备流表中找寻所述删除流表信息,找寻到后删除所述删除流表信息,第一NAT设备与第二NAT设备同步完毕。
作为上述技术方案的进一步改进,步骤C具体为:
步骤C-1,第一NAT设备设置删除流表条目阈值,根据所存储的删除流表信息,第一NAT设备计算删除流表信息的实际条目,记作删除流表实际条目;
步骤C-2,第一NAT设备判断删除流表实际条目是否大于等于删除流表条目阈值;如果是,则执行步骤C-3;
步骤C-3,第一NAT设备构建UDP删除报文,根据UDP删除报文的载荷将删除流表信息封装至UDP删除报文中,第一NAT设备将UDP删除报文发送至位于同一局域网中的第二NAT设备。
作为上述技术方案的进一步改进,在步骤C-2中,若第一NAT设备判断删除流表实际条目小于删除流表条目阈值,则执行以下步骤:
步骤C-4,第一NAT设备设定删除周期,删除周期为相邻两次发送UDP删除报文的时间戳的差值,第一NAT设备计算距离上次发送UDP删除报文的同步累积时间;
步骤C-5,第一NAT设备判断删除累积时间是否超过删除周期;
如果是,则执行步骤C-6;如果否,则第一NAT设备不构造UDP删除报文;
步骤C-6,第一NAT设备构建UDP删除报文,根据UDP删除报文的载荷将删除流表信息封装至UDP同步报文中,第一NAT设备利用UDP协议的广播、组播功能将UDP删除报文发送至位于同一局域网的第二NAT设备。
一种基于UDP的主备NAT设备流表同步系统,包括:
一个或多个处理器;
与所述一个或多个处理器关联的存储器,所述存储器用于存储计算机程序,所述计算机程序在被所述一个或多个处理器执行时,执行所述的一种基于UDP的主备NAT设备流表同步方法。
本发明的有益效果是:提供一种基于UDP的主备NAT设备流表同步方法及系统,包括:客户端接入三层交换机,流量通过第一NAT设备访问至源站,第一NAT设备存储添加流表信息;设置有添加流表条目阈值和同步周期,根据添加流表条目阈值和同步周期,第一NAT设备构建UDP同步报文并通过广播、组播的方式将UDP同步报文发送至第二NAT设备,UDP同步报文携带添加流表信息;第二NAT设备接收添加流表信息并存储在本地,两台NAT设备同步完毕;当第一NAT设备出现宕机情况时切换为第二NAT设备,客户端通与源站的TCP连接不中断。本发明不需要上层其他协议的参与,通过UDP的广播、多播功能实现了多台NAT设备之间快速高效同步流表信息,降低了主、备NAT设备切换时TCP连接中断的可能性,避免了主NAT设备一直工作而备NAT设备一直空闲的情况,提高了整个NAT网络的通信效率和接入数量,本申请对比与现有技术更快速。更稳定、更实用。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单说明。显然,所描述的附图只是本发明的一部分实施例,而不是全部实施例,本领域的技术人员在不付出创造性劳动的前提下,还可以根据这些附图获得其他设计方案和附图。
图1是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的框架图;
图2是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的工作流程图;
图3是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的设备开机时流表同步的工作流程图;
图4是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的客户端与源站建立连接的流程图;
图5是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的客户端与源站建立连接的框架图;
图6是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的第一NAT设备根据添加流表条目阈值和同步周期构建UDP同步报文的工作流程图;
图7是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的删除流表步骤的流程图;
图8是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的第一NAT设备根据删除流表条目阈值和删除周期构建UDP删除报文的流程图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在系统示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于系统中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本发明利用UDP(User Datagram Protocol,用户数据报协议)中的广播、多播功能,提出一种高效稳定使用的主备NAT设备流表同步方法,该方法不需要上层其他协议参与,通过携带有流表信息的UDP同步报文实现了两台NAT设备之间的流表同步,减少了运算的数据量的同时,避免了主NAT设备一直工作而备NAT设备一直空闲的情况,提高了整个网络的通讯效率和接入数量。
请参考图1至图2,图1是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的框架图,图2是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的工作流程图,本公开提供一种基于UDP的主备NAT设备流表同步方法,该方法包括以下步骤:
步骤100,第一NAT设备和第二NAT设备位于同一局域网中工作,有客户端接入三层交换机,三层交换机分配流量至第一NAT设备,流量通过第一NAT设备访问到源站,客户端与源站建立连接,第一NAT设备存储在此过程中产生的流表信息;
步骤200,第一NAT设备设置添加流表条目阈值和同步周期,根据添加流表条目阈值和同步周期,第一NAT设备构建UDP同步报文,并利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备,所述UDP同步报文携带有添加流表信息;
步骤300,第二NAT设备接收添加流表信息并将所述添加流表信息标志为远端NAT设备流表,存储在本地,第一NAT设备与第二NAT设备同步完毕;
步骤400,当第一NAT设备出现宕机情况时,与三层交换机连接的NAT设备从第一NAT设备切换为第二NAT设备,客户端通过三层交换机和第二NAT设备与源站保持连接。
本实施例中,所述产生的流标信息包括:
第一流表信息,记载有第一NAT设备和客户端之间的流表信息;
第二流表信息,记载有第一NAT设备和源站之间的流表信息。
本实施例中,第一NAT设备和第二NAT设备互为主备,即第一NAT设备可以视作第二NAT设备的备份,第二NAT设备可以视作第一NAT设备的备份,第二NAT设备的数量可以是一台或多台。客户端接入三层交换机后,三层交换机通过负载均衡或者是权重设置等方式分配流量到与三层交换机连接的NAT设备,在这个实施例中,用于产生并存储流表信息的NAT设备为第一NAT设备。在本申请其他实施例中,用作地址转换的NAT设备也可以是其他设定的NAT设备。
当客户端与源站建立连接时,第一流表信息和第二流表信息建立完成,并保存在第一NAT设备的本地流表中。第一NAT设备根据添加流表条目阈值和同步周期构造UDP同步报文,并将第一流表信息和第二流表信息封装至UDP同步报文中,UDP同步报文携带第一流表信息和第二流表信息传输至第二NAT设备,第二NAT设备存储第一流表信息和第二流表信息,第一NAT设备与第二NAT设备同步完成,两个NAT设备都保存有第一流表信息和第二流表信息。当第一NAT设备由于外力的原因断开后,三层交换机则把第一NAT设备的流量转到第二NAT设备,由于第二NAT设备也保存有第一NAT设备的流表信息,因此,客户端和源站之间不需要重新建立连接也可以正常的通信。
需要说明的是,UDP(User Datagram Protocol,用户数据报协议)是传输层的协议,它是一种无连接的协议,使用UDP进行信息的传输之前不需要建立连接,只需要得知对方的IP地址和端口号,再将信息封装到一个待发送的报文中并发送至该IP地址或端口号即可。而多播是指将网络中同一业务类型主机进行了逻辑上的分组,进行数据收发时其数据仅在同一分组中进行,其他主机没有加入此分组则不能收发对应的数据,广播则是指一个主机对位于同一局域网上所有主机的数据通信,在计算机网络领域中只有UDP套接字允许广播或多播,UDP的多播、广播功能可以一次性将数据发送至多个主机,又能保证不影响其他不需要的主机的其他通信。
本实施例中,第一NAT设备和第二NAT设备为同一集群,并位于同一局域网内,因此第一NAT设备与第二NAT设备拥有同样的IP地址。当第一NAT设备获取TCP连接中的流表信息时,只需将流标信息封装到一个待发送的UDP同步报文中并基于UDP的多播功能发送至第二NAT设备的IP地址,亦或者基于UDP的广播功能发送至位于同一局域网的第二NAT设备,即可实现流表信息的同步。
在本申请其他实施例中,NAT设备有若干台,这若干台NAT设备为同一群体并位于同一局域网中,其中一台NAT设备作为主NAT设备并用于地址转换,第二NAT设备则作为主NAT设备的备份。当主NAT设备获取TCP连接中的流表信息时,只需要将流表信息封装到一个待发送的UDP同步报文中,并基于UDP的广播功能将该UDP同步报文发送至所有NAT设备,位于同一局域网中的NAT设备即可获取流表信息,实现了流表信息的同步。
本申请提供的一种基于UDP的主备NAT设备流表同步方法不需要上层其他协议的参与,通过UDP的广播、多播功能实现了多台NAT设备之间快速高效同步流表信息,降低了主备NAT设备切换时TCP连接中断的可能性,避免了主NAT设备一直工作而备NAT设备一直空闲的情况,提高了整个NAT网络的通信效率和接入数量,本申请对比与现有技术更快速。更稳定、更实用。
特别地,由于本发明利用了UDP的广播、多播功能,本发明可以扩展到小集群中实现流表信息的同步。
进一步的,第一NAT设备与第二NAT设备同属一个局域网,第一NAT设备与第二NAT设备通过三层交换机连接,第一NAT设备和第二NAT设备均与若干个源站连接。
更进一步的,三层交换机用于转发来自第一NAT设备、第二NAT设备、源站和客户端的消息或信息,需要说明的是,本实施例中三层交换机仅执行转发消息或信息的功能。
第一NAT设备用于产生第一流表信息和产生第二流表信息,并存储第一流表信息和第二流表信息于其本地;
第一NAT设备还用于根据添加流表条目阈值和同步周期,将携带有添加流表信息的UDP同步报文传输给第二NAT设备;
第二NAT设备用于接收来自第一NAT设备的UDP同步报文并从中提取出第一流表信息和第二流表信息,将第一流表信息和第二流表信息存储在其本地;
当第一NAT设备宕机时,与三层交换机连接的NAT设备从第一NAT设备切换为第二NAT设备,则第二NAT设备执行第一NAT设备原本的功能。
在一实施例中,图3是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的设备开机时流表同步的工作流程图,在步骤100之前,还包括:
步骤001,在第一NAT设备工作的过程中第二NAT设备关闭,客户端接入三层交换机,三层交换机分配流量至第一NAT设备,流量通过第一NAT设备访问到源站,第一NAT设备存储在此过程中产生的流表信息;
步骤002,第二NAT设备启动,启动后第二NAT设备构造标志为设备启动的UDP广播报文,并通过其发送报文线程发送UDP广播报文至第一NAT设备;
步骤003,第一NAT设备接收所述UDP广播报文,第一NAT设备构造UDP同步单播报文,根据UDP同步单播报文的载荷将已存储的流表信息封装至UDP同步单播报文中,通过其发送报文线程将所述UDP同步单播报文发送至第二NAT设备;
步骤004,第二NAT设备接收到所述UDP同步单播报文,从中提取出所述流表信息,并将所述流表信息标志为远端NAT设备流表,存储在本地。
本实施例中,当两台NAT设备同时启动时,两台NAT设备未开始执行转发报文的功能,此时两台NAT设备不需要同步流表信息。而当其中一台NAT设备正常运行并且已经完成了报文的正常转发了,此时另一台NAT设备启动,则启动的NAT设备需要发送消息至已正常运行的NAT设备,以告知已正常运行的NAT设备本NAT设备已启动,此时已正常运行的NAT设备需要将已有的报文同步至刚启动的NAT设备。
本实施例中,第一NAT设备与第二NAT设备位于同一局域网中。
本实施例步骤002中,第二NAT设备启动,则第二NAT设备需要发送消息至第一NAT设备,第二NAT设备构造UDP广播报文,并将所述UDP广播报文标志为设备启动,以告知第一NAT设备自身已启动。第二NAT设备将所述UDP广播报文通过其发送报文线程发送至第一NAT设备。
本实施例步骤003中,第一NAT设备接收到所述UDP广播报文,得知第二NAT设备已启动,第一NAT设备构造UDP同步单播报文,并将已存储在其本地的流表信息封装至UDP同步单播报文的数据部,需要注意的是,封装时需要根据所述UDP同步单播报文的载荷进行封装,流表信息的数据长度不可超过UDP同步单播报文的载荷。第一NAT设备通过其发送流表线程将所述UDP同步单播报文发送至第二NAT设备。
本实施例步骤004中,第二NAT设备接收到所述UDP同步单播报文,并从其中提取出所述流表信息,存储流表信息并将其标志为远端NAT设备流表,此时第一NAT设备与第二NAT设备完成同步。
在一实施例中,图4是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的客户端与源站建立连接的流程图。所述步骤100具体为:
步骤110,客户端接入三层交换机,第一NAT设备通过三层交换机接收客户端发送的原始五元组信息,根据原始五元组信息,第一NAT设备计算新的五元组信息,得到第二流表信息,并将第二流表信息暂存于其发送流表线程,其发送流表线程将第二流表信息标志为添加;
步骤120,第一NAT设备将第二流表信息发送至三层交换机;
步骤130,根据第二流表信息,三层交换机从客户端获取客户端的报文并转发至源站,同时将第二流表信息也转发至源站,源站在接收客户端的报文后产生源站报文;
步骤140,第一NAT设备根据原始五元组信息和步骤110中计算的新的五元组信息转换得到第一流表信息,并将第一流表信息暂存于其发送流表线程,其发送流表线程将第一流表信息标志为添加,第一NAT设备将第一流表信息发送至三层交换机;
步骤150,根据第一流表信息,三层交换机从源站获取源站报文并将源站报文转发至客户端,客户端接收源站报文,客户端与源站建立连接。
为了更好地说明客户端与源站建立连接的过程和原理,以及第一流表信息和第二流表信息的产生原理,图5是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的客户端与源站建立连接的框架图,请参阅图5,需要说明的是,在图5中,X1表示原始五元组信息,Y1表示第二流表信息,X2表示客户端的报文,Y2表示第一流表信息,Z1表示源站报文。
在本实施例中,步骤110中,客户端产生原始五元组信息X1并通过三层交换机发送至第一NAT设备,第一NAT设备接收原始五元组信息X1后生成第二流表信息Y1,并存储在本地;
步骤120中,第一NAT设备将第二流表信息Y1发送至三层交换机;
步骤130中,三层交换机根据第二流表信息Y1将客户端的报文X2转发给源站,同时也将第二流表信息Y1转发给源站;
步骤140中,第一NAT设备根据原始五元组信息X1和第二流表信息Y1计算得到第一流表信息Y2,并将第一流表信息Y2发送至三层交换机;
步骤150中,根据第一流表信息Y2,三层交换机将源站报文Z1转发至客户端。
需要说明的是,第一流表信息和第二流表信息均为五元组信息,五元组通常是指源IP、源端口号、目的IP、目的端口号和协议号,三层交换机根据第一流表信息或第二流表信息发送至对应的端口(客户端或源站),而对应的端口接的是对应的服务器。
可以理解的是,第一NAT设备产生第一流表信息和第二流表信息后均将产生的流表信息暂存在第一NAT设备的发送流表线程,发送流表线程将两种流表信息标志为添加。
本实施例中,三层交换机还可以通过权重设置等方式分配流量至第一NAT设备中。
在一实施例中,图6是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的第一NAT设备根据添加流表条目阈值和同步周期构建UDP同步报文的工作流程图,步骤200具体为:
步骤210,第一NAT设备设置添加流表条目阈值,根据所存储的添加流表信息,第一NAT设备计算其所存储的添加流表信息的实际条目,记作添加流表实际条目;
步骤220,第一NAT设备判断添加流表实际条目是否大于等于添加流表条目阈值;如果是,则执行步骤221;
步骤221,第一NAT设备构建UDP同步报文,根据UDP同步报文的载荷将添加流表信息封装至UDP同步报文中,第一NAT设备利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备;
步骤220中,若第一NAT设备判断添加流表实际条目小于添加流表条目阈值,则执行步骤230;
步骤230,第一NAT设备设定同步周期,同步周期为相邻两次发送UDP同步报文的时间戳的差值,第一NAT设备计算距离上次发送UDP同步报文的同步累积时间;
步骤240,第一NAT设备判断同步累积时间是否超过同步周期;
如果是,则执行步骤241;如果否,则第一NAT设备不构建UDP同步报文;
步骤241,第一NAT设备构建UDP同步报文,根据UDP同步报文的载荷将添加流表信息封装至UDP同步报文中,第一NAT设备利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备。
本实施例中,当第一NAT设备与第二NAT设备均正常工作时,有新的连接接入时第一NAT设备则会新建第二流表信息,并存储接收到的第一流表信息和其本身产生的第二流表信息,第一NAT设备根据其设定的同步流表条件定时与第二NAT设备进行同步。
其中,所述同步流表条件包括:
所述添加流表实际条目大于等于添加流表条目阈值;
所述添加流表实际条目小于添加流表条目阈值并且所述同步累积时间超过所述同步周期。
在步骤210中,第一NAT设备设置添加流表条目阈值,所述添加流表条目阈值为其发送流表线程中所能存储的添加流表信息的最大条目数量,当超过该最大条目数量时,其发送流表线程则会执行下一步操作,设置添加流表条目阈值一方面是为了减轻第一NAT设备的发送流表线程中的负载,避免流表信息过多造成发送流表线程的空间过小,提高发送流表线程的空间的利用效率;另一方面是为了保证第一NAT设备与第二NAT设备及时同步流表信息。
在步骤220和步骤221中,第一NAT设备将添加流表实际条目与添加流表条目阈值进行比对,当添加流表实际条目大于等于添加流表条目阈值时,第一NAT设备则基于UDP构造UDP同步报文,并将添加流表信息封装至UDP同步报文的数据部,需要注意的是,封装时需要根据所述UDP同步报文的载荷进行封装,流表信息的数据长度不可超过UDP同步报文的载荷。第一NAT设备利用UDP的广播、组播功能将所述UDP同步报文发送至第二NAT设备。
需要说明的是,在步骤220中,若第一NAT设备判定添加流表实际条目小于添加流表条目阈值时,则第一NAT设备将对是否同步流表信息作第二次判断。具体地,第一NAT设备设置同步周期,同步周期为相邻两次发送UDP同步报文的时间戳的差值,第一NAT设备计算距离上次发送UDP同步报文的同步累积时间,即第一NAT设备需要计算距离上次发送UDP同步报文已经过去了多久的时间,第一NAT设备判断同步累积时间是否超过同步周期,此步骤即为第二次判断。当第一NAT设备判断同步累积时间超过同步周期,则第一NAT设备构建UDP同步报文,根据UDP同步报文的载荷将添加流表信息封装至UDP同步报文中,第一NAT设备利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备。
本实施例中,第一NAT设备先后经过两次判断才将流表信息同步至第二NAT设备,当添加流表实际条目小于添加流表条目阈值时,则说明存储在第一NAT设备的流表信息并未对发送流表线程的空间造成过度占用,但由于第一NAT设备需要与第二NAT设备进行定时的同步,才能够避免NAT设备突发宕机导致TCP连接中断的情况,因此,第一NAT设备还设有同步周期,以保证第一NAT设备与第二NAT设备及时同步流表信息。
特别地,本申请中,假如第二NAT设备有新增流表时,第二NAT设备亦执行与第一NAT设备相同的操作,将其接收到的流表信息同步至第一NAT设备,第一NAT设备与第二NAT设备同时运行互不影响。
在一实施例中,步骤300和步骤400之间,若第一NAT设备所存储的流标信息中存在有流表老化的现象,面对流表老化的现象,第一NAT设备需要利用时间戳的机制来删除无用的流表,以达到流表信息空间的利用效率,第一NAT设备与第二NAT设备共同执行删除流表步骤。
在另一实施例中,步骤400之后,若客户端断开与三层交换机的连接,第一NAT设备与第二NAT设备亦执行删除流表步骤。
图7是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的删除流表步骤的流程图,所述删除流表步骤包括:
A.第一NAT设备判断有需要删除流表信息的情况,从其存储的流表信息中提取出所需要删除的流表信息,记作删除流表信息;
B.第一NAT设备将删除流表信息发送给第一NAT设备的发送流表线程,第一NAT设备的发送流表线程接收到所述删除流表信息,暂存删除流表信息,将其标志为删除;
C.第一NAT设备设置删除流表条目阈值和删除周期,根据删除流表条目阈值和删除周期,第一NAT设备构建UDP删除报文并将UDP删除报文发送至位于同一局域网的第二NAT设备;
D.第二NAT设备接收到UDP删除报文,从其中提取删除流表信息,根据删除流表信息,第二NAT设备在所述远端NAT设备流表中找寻所述删除流表信息,找寻到后删除所述删除流表信息,第一NAT设备与第二NAT设备同步完毕。
本申请中,第一NAT设备将所述删除流表信息封装至UDP删除报文中,并利用UDP的广播、组播功能将UDP删除报文发送至同一局域网中的第二NAT设备,第二NAT设备根据UDP删除报文将存储在远端NAT设备流表的删除流表信息删除,以实现第一NAT设备与第二NAT设备的流表信息同步。
在一实施例中,图8是本发明实施例的一种基于UDP的主备NAT设备流表同步方法的第一NAT设备根据删除流表条目阈值和删除周期构建UDP删除报文的流程图,步骤C具体为:
步骤C-1,第一NAT设备设置删除流表条目阈值,根据所存储的删除流表信息,第一NAT设备计算删除流表信息的实际条目,记作删除流表实际条目;
步骤C-2,第一NAT设备判断删除流表实际条目是否大于等于删除流表条目阈值;如果是,则执行步骤C-3;
步骤C-3,第一NAT设备构建UDP删除报文,根据UDP删除报文的载荷将删除流表信息封装至UDP删除报文中,第一NAT设备将UDP删除报文发送至位于同一局域网中的第二NAT设备;
在步骤C-2中,若第一NAT设备判断删除流表实际条目小于删除流表条目阈值,则执行步骤C-4;
步骤C-4,第一NAT设备设定删除周期,删除周期为相邻两次发送UDP删除报文的时间戳的差值,第一NAT设备计算距离上次发送UDP删除报文的同步累积时间;
步骤C-5,第一NAT设备判断删除累积时间是否超过删除周期;
如果是,则执行步骤C-6;如果否,则第一NAT设备不构造UDP删除报文;
步骤C-6,第一NAT设备构建UDP删除报文,根据UDP删除报文的载荷将删除流表信息封装至UDP同步报文中,第一NAT设备利用UDP协议的广播、组播功能将UDP删除报文发送至位于同一局域网的第二NAT设备。
本实施例中,当第一NAT设备和第二NAT设备均正常工作时,存在有需要删除流表信息的情况时,第一NAT设备根据其设定的删除流表条件定时与第二NAT设备进行同步。
其中,所述删除流表设备条件包括:
所述删除流表实际条目大于等于删除流表条目阈值;
所述删除流表实际条目小于删除流表条目阈值并且删除累积时间超过删除周期。
在步骤C-1中,第一NAT设备设置删除流表条目阈值,所述删除流表条目阈值为其发送流表线程中所能存储的删除流表信息的最大条目数量,当超过最大条目数量时,其发送流表线程则会执行下一步操作,设置删除流表条目阈值一方面是为了减轻第一NAT设备的发送流表线程中的负载,避免流表信息过多造成发送流表线程的空间过小,提高发送流表线程的空间的利用效率;另一方面是为了保证第一NAT设备与第二NAT设备及时同步流表信息,避免出现第一NAT设备删除了所述删除流表信息而第二NAT设备没删除对应的流表信息的情况。
在步骤C-2和步骤C-3中,第一NAT设备将删除流表实际条目与删除流表条目阈值进行比对,当删除流表实际条目大于等于删除流表条目阈值时,第一NAT设备则基于UDP构造UDP删除报文,并将删除流表信息封装至UDP删除报文的数据部,需要注意的是,封装时需要根据所述UDP删除报文的载荷进行封装,流表信息的数据长度不可超过UDP删除报文的载荷。第一NAT设备利用UDP的广播、组播功能将所述UDP删除报文发送至第二NAT设备。
需要说明的是,在步骤C-2中,若第一NAT设备判定删除流表实际条目小于删除流表条目阈值时,则第一NAT设备将对是否同步流表信息作第二次判断。具体地,第一NAT设备设置删除周期,删除周期为相邻两次发送UDP删除报文的时间戳的差值,第一NAT设备计算距离上次发送UDP删除报文的同步累积时间,即第一NAT设备需要计算距离上次发送UDP删除报文已经过去了多久的时间,第一NAT设备判断同步累积时间是否超过删除周期,此步骤即为第二次判断。当第一NAT设备判断同步累积时间超过删除周期,则第一NAT设备构建UDP删除报文,根据UDP同步报文的载荷将删除流表信息封装至UDP删除报文中,第一NAT设备利用UDP的广播、组播功能将UDP删除报文发送至位于同一局域网的第二NAT设备。
本实施例中,第一NAT设备先后经过两次判断才将流表信息同步至第二NAT设备,当删除流表实际条目小于删除流表条目阈值时,则说明存储在第一NAT设备的流表信息并未对发送流表线程的空间造成过度占用,但由于第一NAT设备需要与第二NAT设备进行定时的同步,才能够避免NAT设备突发宕机导致TCP连接中断的情况,因此,第一NAT设备还设有删除周期,以保证第二NAT设备及时删除所述删除流表信息。
特别地,本申请中,假如第二NAT设备有需要删除的流表信息时,第二NAT设备亦执行与第一NAT设备相同的操作,将所需要删除的流表信息发送至第一NAT设备,第一NAT设备与第二NAT设备同时运行互不影响。
可以理解的是,本申请中的UDP同步报文、UDP广播报文、UDP删除单播报文和UDP删除报文均为UDP的数据报,在UDP中,UDP的数据报分为报文头和数据部,其报文头有八个字节,由四个字段构成,每个字段都是两个字节,所述四个字段分别为:
源端口,用于需要对方回信时选用,当不需要时源端口全部置零;
目的端口,用于在终点交付报文;
长度,即UDP的数据报的长度(包括其报文头和数据部),其最小值为八;
校验和,用于检测UDP的数据报在传输中是否有错误,有错误则丢弃。
在UDP通信中,当传输层从IP层收到UDP的数据报时,就根据报文头中的目的端口,将UDP的数据报通过相应的端口上交给应用进程,若接收方的UDP发现收到的数据报中的目的端口不正确,则丢弃。
需要说明的是,对于校验和该字段是可选的,若源主机不想计算校验和,则直接令该字段全为0。
在本申请中,为了提高UDP的传输效率,第一NAT设备和第二NAT设备在构造UDP的数据报时选用双方约定的固定端口,如0xaaaa。并且,由于第一NAT设备与第二NAT设备位于同一局域网中,两个NAT设备之间的UDP的数据报的校验和可以配置为0,以提高UDP的传输效率。
当本申请应用于多台NAT设备时,则所有NAT设备在构造各自的UDP的数据报时选用同一固定端口,并将其校验和配置为0。
本申请还提供了一种基于UDP的主备NAT设备流表同步系统,包括:
一个或多个处理器;
与所述一个或多个处理器关联的存储器,所述存储器用于存储计算机程序,所述计算机程序在被所述一个或多个处理器执行时,执行所述的一种基于UDP的主备NAT设备流表同步方法。
以上对本发明的较佳实施方式进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变型或替换,这些等同的变型或替换均包含在本申请权利要求所限定的范围内。

Claims (8)

1.一种基于UDP的主备NAT设备流表同步方法,其特征在于,包括以下步骤:
步骤100,第一NAT设备和第二NAT设备位于同一局域网中工作,有客户端接入三层交换机,三层交换机分配流量至第一NAT设备,流量通过第一NAT设备访问到源站,客户端与源站建立连接,第一NAT设备存储在此过程中产生的添加流表信息;
其中,所述在此过程中产生的添加流表信息包括:
第一流表信息,记载有第一NAT设备和客户端之间的流表信息;
第二流表信息,记载有第一NAT设备和源站之间的流表信息;
步骤200,第一NAT设备设置添加流表条目阈值和同步周期,根据添加流表条目阈值和同步周期,第一NAT设备构建UDP同步报文,并利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备,所述UDP同步报文携带有添加流表信息;
步骤300,第二NAT设备接收添加流表信息,将所述添加流表信息标志为远端NAT设备流表,存储在本地,第一NAT设备与第二NAT设备同步完毕;
步骤400,当第一NAT设备出现宕机情况时,与三层交换机连接的NAT设备从第一NAT设备切换为第二NAT设备,客户端通过三层交换机和第二NAT设备与源站保持连接;
所述步骤100具体包括:
步骤110,客户端接入三层交换机,第一NAT设备通过三层交换机接收客户端发送的原始五元组信息,根据原始五元组信息,第一NAT设备计算新的五元组信息,得到第二流表信息,并将第二流表信息暂存于其发送流表线程,其发送流表线程将第二流表信息标志为添加;
步骤120,第一NAT设备将第二流表信息发送至三层交换机;
步骤130,根据第二流表信息,三层交换机从客户端获取客户端的报文并转发至源站,同时将第二流表信息也转发至源站,源站在接收客户端的报文后产生源站报文;
步骤140,第一NAT设备根据原始五元组信息和步骤110中计算的新的五元组信息转换得到第一流表信息,并将第一流表信息暂存于其发送流表线程,其发送流表线程将第一流表信息标志为添加,第一NAT设备将第一流表信息发送至三层交换机;
步骤150,根据第一流表信息,三层交换机从源站获取源站报文并将源站报文转发至客户端,客户端接收源站报文,客户端与源站建立连接;
所述步骤200具体包括:
步骤210,第一NAT设备设置添加流表条目阈值,根据所存储的添加流表信息,第一NAT设备计算其所存储的添加流表信息的实际条目,记作添加流表实际条目;
步骤220,第一NAT设备判断添加流表实际条目是否大于等于添加流表条目阈值;如果是,则执行步骤221;
步骤221,第一NAT设备构建UDP同步报文,根据UDP同步报文的载荷将添加流表信息封装至UDP同步报文中,第一NAT设备利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备。
2.根据权利要求1所述的一种基于UDP的主备NAT设备流表同步方法,其特征在于,在构建UDP的数据报时,所述第一NAT设备选用与所述第二NAT设备约定的固定端口,并且所述UDP的数据包的校验和配置为零。
3.根据权利要求1所述的一种基于UDP的主备NAT设备流表同步方法,其特征在于,步骤220中,若第一NAT设备判断添加流表实际条目小于添加流表条目阈值,还包括以下步骤:
步骤230,第一网关设备设定同步周期,同步周期为相邻两次发送UDP同步报文的时间戳的差值,第一NAT设备计算距离上次发送UDP同步报文的同步累积时间;
步骤240,第一NAT设备判断同步累积时间是否超过同步周期;
如果是,则执行步骤241;如果否,则第一NAT设备不构建UDP同步报文;
步骤241,第一NAT设备构建UDP同步报文,根据UDP同步报文的载荷将添加流表信息封装至UDP同步报文中,第一NAT设备利用UDP的广播、组播功能将UDP同步报文发送至位于同一局域网的第二NAT设备。
4.根据权利要求1所述的一种基于UDP的主备NAT设备流表同步方法,其特征在于,所述步骤100之前,还包括:
步骤001,在第一NAT设备工作的过程中第二NAT设备关闭,客户端接入三层交换机,三层交换机分配流量至第一NAT设备,流量通过第一NAT设备访问到源站,第一NAT设备存储在此过程中产生的流表信息;
步骤002,第二NAT设备启动,启动后第二NAT设备构建标志为设备启动的UDP广播报文,并通过其发送报文线程发送UDP广播报文至第一NAT设备;
步骤003,第一NAT设备接收所述UDP广播报文,第一NAT设备构建UDP同步单播报文,根据UDP同步单播报文的载荷将已存储的流表信息封装至UDP同步单播报文中,通过其发送报文线程将所述UDP同步单播报文发送至第二NAT设备;
步骤004,第二NAT设备接收到所述UDP同步单播报文,从中提取出所述流表信息,并将所述流表信息标志为远端NAT设备流表,存储在本地。
5.根据权利要求1所述的一种基于UDP的主备NAT设备流表同步方法,其特征在于,在步骤300和步骤400之间,若第一NAT设备所存储的流表信息中存在有流表老化的现象,第一NAT设备和第二网管设备共同执行删除流表步骤;
在步骤400之后,若客户端断开与三层交换机的连接,第一NAT设备和第二网管设备亦执行删除流表步骤;
所述删除流表步骤包括:
A.第一NAT设备判断有需要删除流表信息的情况,从其存储的流表信息中提取出所需要删除的流表信息,记作删除流表信息;
B.第一NAT设备将删除流表信息发送给第一NAT设备的发送流表线程,第一NAT设备的发送流表线程接收到所述删除流表信息,暂存删除流表信息,将其标志为删除;
C.第一NAT设备设置删除流表条目阈值和删除周期,根据删除流表条目阈值和删除周期,第一NAT设备构建UDP删除报文并将UDP删除报文发送至位于同一局域网的第二NAT设备;
D.第二NAT设备接收到UDP删除报文,从其中提取删除流表信息,根据删除流表信息,第二NAT设备在所述远端NAT设备流表中找寻所述删除流表信息,找寻到后删除所述删除流表信息,第一NAT设备与第二NAT设备同步完毕。
6.根据权利要求5所述的一种基于UDP的主备NAT设备流表同步方法,其特征在于,步骤C具体为:
步骤C-1,第一NAT设备设置删除流表条目阈值,根据所存储的删除流表信息,第一NAT设备计算删除流表信息的实际条目,记作删除流表实际条目;
步骤C-2,第一NAT设备判断删除流表实际条目是否大于等于删除流表条目阈值;如果是,则执行步骤C-3;
步骤C-3,第一NAT设备构建UDP删除报文,根据UDP删除报文的载荷将删除流表信息封装至UDP删除报文中,第一NAT设备将UDP删除报文发送至位于同一局域网中的第二NAT设备。
7.根据权利要求6所述的一种基于UDP的主备NAT设备流表同步方法,其特征在于,在步骤C-2中,若第一NAT设备判断删除流表实际条目小于删除流表条目阈值,则执行以下步骤:
步骤C-4,第一NAT设备设定删除周期,删除周期为相邻两次发送UDP删除报文的时间戳的差值,第一NAT设备计算距离上次发送UDP删除报文的同步累积时间;
步骤C-5,第一NAT设备判断删除累积时间是否超过删除周期;
如果是,则执行步骤C-6;如果否,则第一NAT设备不构造UDP删除报文;
步骤C-6,第一NAT设备构建UDP删除报文,根据UDP删除报文的载荷将删除流表信息封装至UDP同步报文中,第一NAT设备利用UDP协议的广播、组播功能将UDP删除报文发送至位于同一局域网的第二NAT设备。
8.一种基于UDP的主备NAT设备流表同步系统,其特征在于,包括:
一个或多个处理器;
与所述一个或多个处理器关联的存储器,所述存储器用于存储计算机程序,所述计算机程序在被所述一个或多个处理器执行时,执行如权利要求1至7任一项所述的一种基于UDP的主备NAT设备流表同步方法。
CN202210859365.4A 2022-07-21 2022-07-21 一种基于udp的主备nat设备流表同步方法及系统 Active CN115348207B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210859365.4A CN115348207B (zh) 2022-07-21 2022-07-21 一种基于udp的主备nat设备流表同步方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210859365.4A CN115348207B (zh) 2022-07-21 2022-07-21 一种基于udp的主备nat设备流表同步方法及系统

Publications (2)

Publication Number Publication Date
CN115348207A CN115348207A (zh) 2022-11-15
CN115348207B true CN115348207B (zh) 2023-08-15

Family

ID=83949783

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210859365.4A Active CN115348207B (zh) 2022-07-21 2022-07-21 一种基于udp的主备nat设备流表同步方法及系统

Country Status (1)

Country Link
CN (1) CN115348207B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020055300A (ko) * 2000-12-28 2002-07-08 구자홍 브이오아이피 게이트웨이에서 네트워크 주소 변환 서버를통한 음성 패킷 전달 방법
CN101702657A (zh) * 2009-12-04 2010-05-05 杭州华三通信技术有限公司 一种nat业务的热备份方法和设备
CN101834831A (zh) * 2009-03-13 2010-09-15 华为技术有限公司 一种实现nat设备冗余备份的方法、装置和系统
CN102299975A (zh) * 2010-06-28 2011-12-28 杭州华三通信技术有限公司 自适应多层nat环境的nat设备调整方法和系统
CN103763202A (zh) * 2014-01-03 2014-04-30 杭州华三通信技术有限公司 一种基于nat的组播协议报文传输方法和设备
CN104601432A (zh) * 2014-12-31 2015-05-06 杭州华三通信技术有限公司 一种报文传输方法和设备
CN109547316A (zh) * 2018-12-29 2019-03-29 瑞斯康达科技发展股份有限公司 Vxlan报文穿越nat设备的方法、系统、存储介质
CN110166270A (zh) * 2018-02-13 2019-08-23 中兴通讯股份有限公司 热备切换处理方法、设备及存储介质
CN111131547A (zh) * 2019-12-30 2020-05-08 浪潮云信息技术有限公司 一种nat网关主备切换时避免tcp连接中断的方法
CN113259497A (zh) * 2020-02-07 2021-08-13 华为技术有限公司 传输报文的方法、装置、存储介质和系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10142221B2 (en) * 2016-09-07 2018-11-27 T-Mobile Usa, Inc. Network address translation in networks using multiple NAT devices
WO2022005603A1 (en) * 2020-06-30 2022-01-06 Arris Enterprises Llc Method for providing multicast dns services across ip subnet boundaries

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020055300A (ko) * 2000-12-28 2002-07-08 구자홍 브이오아이피 게이트웨이에서 네트워크 주소 변환 서버를통한 음성 패킷 전달 방법
CN101834831A (zh) * 2009-03-13 2010-09-15 华为技术有限公司 一种实现nat设备冗余备份的方法、装置和系统
CN101702657A (zh) * 2009-12-04 2010-05-05 杭州华三通信技术有限公司 一种nat业务的热备份方法和设备
CN102299975A (zh) * 2010-06-28 2011-12-28 杭州华三通信技术有限公司 自适应多层nat环境的nat设备调整方法和系统
CN103763202A (zh) * 2014-01-03 2014-04-30 杭州华三通信技术有限公司 一种基于nat的组播协议报文传输方法和设备
CN104601432A (zh) * 2014-12-31 2015-05-06 杭州华三通信技术有限公司 一种报文传输方法和设备
CN110166270A (zh) * 2018-02-13 2019-08-23 中兴通讯股份有限公司 热备切换处理方法、设备及存储介质
CN109547316A (zh) * 2018-12-29 2019-03-29 瑞斯康达科技发展股份有限公司 Vxlan报文穿越nat设备的方法、系统、存储介质
CN111131547A (zh) * 2019-12-30 2020-05-08 浪潮云信息技术有限公司 一种nat网关主备切换时避免tcp连接中断的方法
CN113259497A (zh) * 2020-02-07 2021-08-13 华为技术有限公司 传输报文的方法、装置、存储介质和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Naoya Hongo ; Hiroshi Yamamoto ; Katsuyuki Yamazaki.Browser Synchronization System for Supporting Elderly People and IT Shortfalls.IEEE.2013,全文. *

Also Published As

Publication number Publication date
CN115348207A (zh) 2022-11-15

Similar Documents

Publication Publication Date Title
CN100579072C (zh) 一种在ip设备之间进行通信的方法和系统
CN102084638B (zh) 计算机网络中接入服务器的确定性会话负载平衡和冗余
US10110555B2 (en) Method, device, and system for quickly informing CGN exception
CN103166959B (zh) 一种多径实时传输控制系统及方法
CN104023006B (zh) 一种基于应用层中继的多径传输系统及方法
CN102833332B (zh) 一种分布式多对多设备通信和管理方法
CN101136730A (zh) 一种分布式网络设备中的可靠同步方法
CA2656660C (en) Client/bridge and method and system for using same
EP1890424A1 (en) A system and method for achieving the data communication
CN102801623B (zh) 一种多接入数据转发方法及设备
EP2099180A1 (en) Switching device and method for Layer-2 forwarding of OAM frames with multicast Layer-3 addresses
CN101841432A (zh) 一种业务接入路由器的端口备份方法、装置和系统
CN104980355A (zh) 一种sdn环境下的源端可控组播数据传输方法及系统
CN100388721C (zh) 对基于流控制传送协议的偶联进行保护的方法
CN102223378B (zh) 一种文件同步方法和系统
CN105262836A (zh) 服务器推送信息的方法及客户端接收推送信息的方法
CN111435922A (zh) 一种带宽共享方法
CN102984070A (zh) 一种以太网无编号接口实现数据转发方法
CN103560962A (zh) 以太网交换机主机路由表项自动更新方法及交换机
CN102917082B (zh) 穿透网络地址转换的消息推送方法及系统
CN115348207B (zh) 一种基于udp的主备nat设备流表同步方法及系统
CN111711968B (zh) 报文处理方法、装置、通信设备和通信系统
CN105262682A (zh) 一种用于电力数据通信的软件定义网络及其流量疏导方法
CN109951388B (zh) 路由不间断方法和主控板
CN114449051B (zh) 一种数据包的传输方法以及通信设备

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
GR01 Patent grant
GR01 Patent grant