CN106790556B - 一种基于分布式***的nat会话管理方法 - Google Patents

一种基于分布式***的nat会话管理方法 Download PDF

Info

Publication number
CN106790556B
CN106790556B CN201611216255.7A CN201611216255A CN106790556B CN 106790556 B CN106790556 B CN 106790556B CN 201611216255 A CN201611216255 A CN 201611216255A CN 106790556 B CN106790556 B CN 106790556B
Authority
CN
China
Prior art keywords
session
nat
key assignments
aging
hash
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
CN201611216255.7A
Other languages
English (en)
Other versions
CN106790556A (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.)
Shenzhen Forward Industrial Co Ltd
Original Assignee
Shenzhen Forward Industrial 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 Shenzhen Forward Industrial Co Ltd filed Critical Shenzhen Forward Industrial Co Ltd
Priority to CN201611216255.7A priority Critical patent/CN106790556B/zh
Publication of CN106790556A publication Critical patent/CN106790556A/zh
Application granted granted Critical
Publication of CN106790556B publication Critical patent/CN106790556B/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
    • 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
    • H04L61/256NAT traversal
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于分布式***的NAT会话管理方法,包括步骤:(1)创建NAT会话;(2)对创建的NAT会话进行保持更新;(3)对更新后的NAT会话进行老化操作;(4)查询老化操作后的NAT会话。本方法中采用hash桶、hash链表等数据结构实现了NAT会话的创建和保持更新管理,将hash桶参数设置为合适值可将会话键值均匀散列到各个hash桶中,有效提高会话键值查找速度,同时提出采用单独的双向链表将会话链接起来,完成对已创建会话的老化和查询管理,避免对hash桶频繁加锁,提高会话的老化和查询效率。

Description

一种基于分布式***的NAT会话管理方法
技术领域
本发明属于数据通信和网络安全领域,尤其涉及一种基于分布式***的NAT会话管理方法。
背景技术
随着互联网技术的迅猛发展,越来越多的用户进入互联网获取各种信息,包括当前热门的物联网技术也离不开互联网的支撑。但是传统IPv4网络的地址仅有32bit,只能分配给有限的用户,而IPv6的出现也正是为了解决这个地址资源瓶颈问题。
当前传统IPv4网络发展已经相当成熟,完全过渡到IPv6还需要一段较长时间。为了解决IPv4网络中地址资源瓶颈问题,NAT(Network Address Translation)技术应运而生,该技术能将多个私网地址映射到一个或多个公网地址,实现网络地址的高度重用,解决地址资源瓶颈问题。
分布式***通常包括多块控制板卡、多块业务板卡和交换板卡等,每张板卡都是一个独立的子***,整个***的正常运行依赖于每个子***的互相协作。在网络通信设备中,控制板卡主要用于运行各种路由协议、各种表项以及规则的产生和下发。业务板卡主要用于接收控制板卡下发的各种表项及规则,并根据这些表项和规则进行网络数据流处理和转发。交换板卡主要用于连接控制板卡和业务板卡,实现高速无阻塞数据交换传递功能。
NAT技术广泛应用于基于分布式***的网络通信设备中,其实现关键在于会话的使用和管理,寻找一种以较低的管理复杂度使得NAT在分布式***中高效运行的会话管理方法至关重要。
专利201510056361.2中通过信息树数据结构对会话进行老化管理:当IP信息发生改变后,将改变前的IP信息以节点的形式***到预设的IP信息树型存储结构的等待树中,根据等待树中的IP节点数量,以及老化定时时间,确定是否对流表和NAT会话表进行老化,本方案中采用了树形结构进行老化管理,实现较为复杂。
专利200610140776.9中通过单独创建会话保活报文的方式对会话表项进行保持更新。该方法由于要单独创建保活报文,带来了额外的管理开销。
综上,分布式***中的NAT技术对会话管理的依赖较强,要实现该技术,需要找到一种简单、高效的会话管理方法。
发明内容
本发明所要解决的技术问题是提供一种基于分布式***的NAT会话管理方法,该方法有效提高会话键值查找速度及会话的老化和查询效率。
本发明解决上述技术问题的技术方案如下:
一种基于分布式***的NAT会话管理方法,包括以下步骤:
(1)创建NAT会话:将会话发起方向IP报文中的五元组信息作为会话发起方向键值,结合NAT规则计算出会话回应方向键值;根据发起方向键值和回应方向键值分别计算出hash桶索引,再将发起方向键值和回应方向键值分别加入到对应hash桶中,形成NAT会话;最后将该NAT会话加入到一个双向链表中,完成NAT会话的创建;
(2)对创建的NAT会话进行保持更新:将收到IP报文中的五元组信息作为查询键值,并由该查询键值计算出hash桶索引值,再到对应hash桶中查询对应的会话键值;通过查询到的会话键值得到对应的NAT会话,将会话中当前时间更新为***时间,完成对已创建NAT会话的保持更新,以确保该会话在有通信流量时不被老化删除;
(3)对更新后的NAT会话进行老化操作:采用一个老化指示指针指向双向链表开始处,并每间隔一段时间从指针指示处延着该双向链表对其中的NAT会话进行老化检查;在检查每条会话时,将当前时间加上老化时间大于***时间的会话进行老化处理,同时保留其他会话,并更新所述指示指针位置,完成对更新后的NAT会话的老化操作;
(4)查询老化操作后的NAT会话:采用一个查询指示指针指向双向链表开始处,并每间隔一段时间判断是否有查询动作需要执行;如果需要执行查询动作,便从指针指示处延着双向链表对其中的NAT会话进行查询,更新所述指示指针位置,完成对老化检查后的NAT会话的查询操作。
本发明的有益效果是:本方法有效提高了会话键值查找速度,以及提高了会话的老化和查询效率。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述步骤(1)的创建NAT会话的具体方法为,
(11)NAT设备接收到报文时,提取出报文中的IP五元组信息作为会话发起方向键值,并将其保存到会话发起方向键值中,所述IP五元组为源IP、目的IP、源端口、目的端口和协议号;
(12)对接收到的报文使用会话进行NAT规则匹配;
(13)根据NAT规则匹配结果,判断该报文是否需要进行NAT转换,如果不需要做NAT转换,则进入正常转发流程;如果需要进行NAT转换,则进入下一步;
(14)根据NAT转换规则对IP五元组中的源IP、源端口或目的IP、目的端口进行转换,选择转化后的IP和端口,通过选择的IP和端口得到该报文对应的会话回应方向键值;
(15)根据会话发起方向键值和会话回应方向键值分别计算出hash桶索引值会话发起方向hash索引和会话回应方向hash索引;
(16)根据计算出的hash桶索引,分别将会话发起方向键值和会话回应方向键值加入到对应的hash桶中;
(17)将会话发起方向键值和会话回应方向键值对应的会话加入到双向链表中,便于老化和查询操作。
采用上述进一步方案的有益效果是:根据IP报文五元组信息将所有会话发起方向键值和回应方向键值分开,并均匀散列到不同的hash桶中,可有效减少同一会话中两个方向的报文流量以及不同会话流量间的hash访问冲突,提高报文转发时查询会话键值的效率。
进一步,所述步骤(2)对创建的NAT会话进行保持更新方法为,
(21)NAT设备接收到报文时,提取报文中的IP五元组信息作为会话键值,并保存到会话键值中;
(22)用会话键值计算出hash桶索引值,并到该hash桶中查询该会话键值;
(23)判断该hash桶中是否查询到该会话键值,如果未查询到该会话键值,则返回会话创建流程,重新创建NAT会话;如果查询到该会话键值,则进入下一步;
(24)获取当前***时间,并将该会话键值对应会话中的当前时间更新为当前***时间,保证会话不被老化删除。
采用上述进一步方案的有益效果是:在NAT报文转发查询会话键值的同时,采用捎带更新的方式对会话进行保持更新,避免了对会话键值的二次查询,简化更新流程、提高会话更新效率。
进一步,所述步骤(3)对更新后的NAT会话进行老化操作方法为,
(31)将老化指示指针指向双向链表开始处;
(32)将每次老化检查的会话条数最大值设置为max,将已检查会话条数设置为0;
(33)判断进行老化检查的会话条数是否大于等于最大值max或双向链表中是否已无会话;如果是,则进入步骤(34);如果否,则进入步骤(35);
(34)延时一段时间后返回步骤(32)进行下一次老化检查;
(35)获取老化指示指针所指向会话的当前时间、老化时间和***时间;
(36)判断会话当前时间与会话老化时间之和是否小于***时间,如果是,则进入步骤(37);如果否,则进入步骤(38)说明该会话已较长时间无流量通过,
(37)将该会话老化删除,并释放相关资源,更新老化指示指针,使老化指示指针指向双向链表中的下一条会话;
(38)不对该会话进行老化删除操作,直接更新老化指示指针,使老化指示指针指向双向链表中的下一条会话;
(39)返回步骤(33),循环对会话进行老化检查操作。
采用上述进一步方案的有益效果是:采用单独的双向链表和老化指示指针结合的方式完成对NAT会话的老化操作,避免了在会话老化查询过程中对hash桶二次加锁,在提高会话老化效率的同时不影响NAT报文的转发效率。
进一步,所述步骤(4)查询老化操作后的NAT会话方法为,
(41)将会话查询指示指针指向双向链表开始处;
(42)判断当前是否需要进行查询操作,如果不需要执行查询操作,则进入步骤(43);如果需要执行查询操作,则进入步骤(44);
(43)延时一段时间后返回步骤(42);
(44)设置每次能查询的会话条数最大值为max,设置已查询的会话条数为0;
(45)判断已查询会话条数是否大于等于最大值max或双向链表中是否已无会话,如果是,则返回步骤(43);如果否,则进入步骤(46);
(46)获取查询指示指针当前所指向会话的信息,完成当前会话的查询;
(47)更新查询指示指针,使其指向双向链表中的下一条会话;
(48)返回步骤(45),对双向链表中的其他会话进行查询。
采用上述进一步方案的有益效果是:采用单独的双向链表和查询指示指针结合的方式完成对NAT会话的查询操作,避免了在会话查询过程中对hash桶二次加锁,在提高会话查询效率的同时不影响NAT报文的转发效率。
附图说明
图1是分布式***通用架构图;
图2是本发明实施例中的会话结构图;
图3是本发明实施例中的hash桶会话管理结构图;
图4是本发明实施例中的会话创建流程图;
图5是本发明实施例中的会话保持更新流程图;
图6是本发明实施例中的会话老化流程图;
图7是本发明实施例中的会话查询流程图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
图1是分布式***通用架构,包括控制板卡、交换板卡和业务板卡。本发明实施例中重点关注的是业务板卡,NAT模块运行在业务板卡上。每张业务板卡都是多CPU***,可根据实际情况进行功能定制,并不局限于本实施例。如本实施例中,业务板卡的CPU0用于完成会话的老化检查和查询工作,其他CPU用于完成数据业务的转发、NAT会话创建和保持更新功能。
图2是本发明实施例中的会话结构图,图中每条会话结构中都含有一个会话发起方向键值、会话回应方向键值、双向链表节点及其他信息。会话发起方向键值中保存会话发起方向报文的IP五元组信息,包括报文的源IP、源端口、目的IP、目的端口和协议号,会话回应方向键值保存了会话回应方向报文的IP五元组信息,双向链表节点用于将新创建会话加入到双向链表中。
图3是本发明实施例中的hash桶会话管理结构图,hash桶大小为N,采用hash链表结构处理hash冲突。桶中存放会话的IP五元组信息,称为会话键值,包括会话中的发起方向键值和回应方向键值。
为了解决分布式***NAT技术中的会话管理问题,本发明提出一种NAT会话管理方法,其中包括:NAT会话的创建方法;NAT会话的保持更新方法;NAT会话的老化方法;NAT会话的查询方法。
在NAT设备内部,每个报文根据IP五元组被归类到不同的报文流中,每一种报文流将对应一条NAT会话。
对于NAT会话的创建方法如下:当NAT设备收到需要做NAT的报文流第一个报文时,提取出报文中的IP五元组信息在会话发起方向键值中保存,同时可根据NAT转换规则对IP五元组中的源IP、源端口或目的IP、目的端口进行转换,将转换后的IP五元组作为hash算法输入参数,计算出一个会话发起方向hash值。同时,通过NAT中的源IP和源端口转换模块可以得到该报文流的响应报文IP五元组信息在会话回应方向键值中保存,同样的方式进行hash计算得到会话响应方向的hash值,通过计算出的两个会话hash值分别将该会话两个方向的IP五元组信息会话发起方向键值和会话回应方向键值存入对应的hash桶中,对于hash冲突可采用hash链表结构解决,也可以采用其他方式解决。如果hash桶大小及hash算法设置合适,可将会话键值均匀散列到不同的hash桶中,加快会话的***、查询、删除等操作,在较大程度上提升NAT性能。
图4是本发明实施例中的会话创建流程图,NAT模块启动后从使能了NAT功能的接口接收报文,进入102流程提取报文中的IP五元组信息,并将其保存到会话发起方向键值中;具体地,报文进入103流程使用会话进行NAT规则匹配;然后进入判断单元104,通过NAT规则匹配结果判断该报文是否需要做NAT转换,如果不需做NAT转换则进入105,走普通转发流程;如果需要做NAT转换,进入106模块进行IP和端口选择,通过选择出的IP和端口可以得到该报文对应的会话回应方向键值;然后进入到107流程,使用会话发起方向键值和会话回应方向键值分别计算出hash桶索引值会话发起方向hash索引和会话回应方向hash索引;进入108流程后,根据计算出的hash桶索引分别将会话发起方向键值和会话回应方向键值加入到对应的hash桶中;进入109流程后,将会话发起方向键值和会话回应方向键值对应的会话加入到双向链表中,便于老化和查询操作。
对于NAT会话的保持更新方法如下:当某个报文流对应的会话在NAT设备中已经建立时,需要对会话时间进行不断更新以确保该会话在有通信流量时不被老化删除。具体方法是:***或NAT模块运行一个时钟,该时钟能自动更新当前时间,当NAT设备从使能了NAT功能的接口接收到报文时,同样提取出报文的IP五元组进行hash计算,进一步地在该hash值对应的hash桶中可查找到是否有该报文对应的会话,如果有便将该NAT会话的当前时间更新为时钟的当前时间,以便在老化流程中不被老化删除。
图5是本发明实施例中的会话保持更新流程图,NAT模块启动后从使能了NAT功能的接口接收报文,进入202流程提取报文的IP五元组信息,并保存到会话键值中;进入203流程用会话键值计算出hash桶索引值,并到该hash桶中查询该会话键值;进入204判断单元,如果在该hash桶中没有查询到该会话键值,则继续走205会话创建流程;如果查询到了,则获取当前***时间,并将该会话键值对应会话中的当前时间更新为当前***时间,保证会话不被老化删除。
对于NAT会话的老化方法如下:由于前期创建的NAT会话被分插到了不同的hash桶中,要对会话进行老化操作,需要对某个hash桶进行加锁操作,但这样势必引起hash桶频繁加锁,降低NAT性能。为了解决该问题,本发明提出将新创建的会话在加入到hash桶的同时,也都同时加入到一个双向链表中,初始化时用一个老化指示指针指向该双向链表头部。NAT模块启动一个老化定时器,每间隔一段时间便从老化指示指针处开始延着双向链表,对其中的会话进行老化检查操作。检查方法是获取当前***时间、会话中保存的当前时间和会话老化时间,如果会话保存的当前时间+会话老化时间<当前***时间,则将会话老化掉,反之则不进行老化操作,保留会话。最后更新老化指示指针指向位置,保存下一次老化检查开始处。
图6是本发明实施例中的会话老化流程图,NAT模块启动后,进入302初始化阶段,将老化指示指针指向双向链表开始处。然后进入303,将每次最多老化检查的会话条数设置为max,将已检查会话数设置为0;然后进入304判断单元,如果进行老化检查的会话条数大于等于最大值max或双向链表中已无会话,则进入305,延时一段时候后进行下一次老化检查;反之,进入306,获取老化指示指针所指向会话的当前时间、老化时间和***时间。然后进入307判断单元,如果会话当前时间+会话老化时间<***时间,说明该会话已较长时间无流量通过,进入308流程,将该会话老化删除并释放相关资源,然后进入309流程更新老化指示指针。反之,则不对该会话进行老化删除操作,直接进入309流程更新老化指示指针,使老化指示指针指向双向链表中的下一条会话。最后,再次进入303流程,循环对会话进行老化检查操作。
对于NAT会话的查询方法如下:初始时,使用一个查询指示指针指向双向链表头部,每当有查询命令时,便从查询指示指针指向处开始遍历查询双向链表中的会话项,查询结束后更新查询指示指针指向位置,待下一次查询操作。
图7是本发明实施例中的会话查询流程图,NAT模块启动后,进入402初始化阶段将会话查询指示指针指向双向链表开始处,然后进入404判断单元,判断当前是否需要进行查询操作。如果不需要则进入403,延时一段时间后再进入404判断单元。如果需要执行查询操作,则进入405流程,设置每次最多能查询的会话条数为max,设置已查询的会话条数为0;然后进入406判断单元,如果已查询会话条数大于等于max或双向链表中已无会话,则进入403,延时一段时间后再进入404判断单元;反之,进入407流程,获取查询指示指针当前所指向会话的信息,完成当前会话的查询。然后进入408流程,更新查询指示指针,使其指向双向链表中的下一条会话;最后,再次进入406判断单元,对双向链表中的其他会话进行查询。
由于本发明提出的会话管理方法适用于分布式***,在分布式网络通信设备中,NAT模块通常都工作在业务板卡上,对于各个业务板卡会话的保持更新、老化和查询方法一致。通常网络通信设备中的业务板卡都是多CPU(Central Processing Unit)***,CPU资源可以按需进行分配和定制,视具体需求不同而不同,本发明中使用负责流量转发的CPU对NAT会话进行创建和保持更新操作,另外单独分配一个CPU或多个执行NAT会话的老化和查询操作,但不仅限于此分配方式。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种基于分布式***的NAT会话管理方法,其特征在于,包括以下步骤:
(1)创建NAT会话:将会话发起方向IP报文中的五元组信息作为会话发起方向键值,结合NAT规则计算出会话回应方向键值;根据发起方向键值和回应方向键值分别计算出hash桶索引,再将发起方向键值和回应方向键值分别加入到对应hash桶中,形成NAT会话;最后将该NAT会话加入到一个双向链表中,完成NAT会话的创建;
(2)对创建的NAT会话进行保持更新:将收到IP报文中的五元组信息作为查询键值,并由该查询键值计算出hash桶索引值,再到对应hash桶中查询对应的会话键值;通过查询到的会话键值得到对应的NAT会话,将会话中当前时间更新为***时间,完成对已创建NAT会话的保持更新,以确保该会话在有通信流量时不被老化删除;
(3)对更新后的NAT会话进行老化操作:采用一个老化指示指针指向双向链表开始处,并每间隔一段时间从指针指示处延着该双向链表对其中的NAT会话进行老化检查;在检查每条会话时,将当前时间加上老化时间小于***时间的会话进行老化处理,同时保留其他会话,并更新所述指示指针位置,完成对更新后的NAT会话的老化操作;
(4)查询老化操作后的NAT会话:采用一个查询指示指针指向双向链表开始处,并每间隔一段时间判断是否有查询动作需要执行;如果需要执行查询动作,便从指针指示处延着双向链表对其中的NAT会话进行查询,更新所述指示指针位置,完成对老化检查后的NAT会话的查询操作。
2.根据权利要求1所述的基于分布式***的NAT会话管理方法,其特征在于,所述步骤(1)的创建NAT会话的具体方法为,
(11)NAT设备接收到报文时,提取出报文中的IP五元组信息作为会话发起方向键值,并将其保存到会话发起方向键值中,所述IP五元组为源IP、目的IP、源端口、目的端口和协议号;
(12)对接收到的报文使用会话进行NAT规则匹配;
(13)根据NAT规则匹配结果,判断该报文是否需要进行NAT转换,如果不需要做NAT转换,则进入正常转发流程;如果需要进行NAT转换,则进入下一步;
(14)根据NAT转换规则对IP五元组中的源IP、源端口或目的IP、目的端口进行转换,选择转换后的IP和端口,通过选择的IP和端口得到该报文对应的会话回应方向键值;
(15)根据会话发起方向键值和会话回应方向键值分别计算出hash桶索引值会话发起方向hash索引和会话回应方向hash索引;
(16)根据计算出的hash桶索引,分别将会话发起方向键值和会话回应方向键值加入到对应的hash桶中;
(17)将会话发起方向键值和会话回应方向键值对应的会话加入到双向链表中,便于老化和查询操作。
3.根据权利要求2所述的基于分布式***的NAT会话管理方法,其特征在于,所述步骤(2)对创建的NAT会话进行保持更新方法为,
(21)NAT设备接收到报文时,提取报文中的IP五元组信息作为会话键值,并保存到会话键值中;
(22)用会话键值计算出hash桶索引值,并到该hash桶中查询该会话键值;
(23)判断该hash桶中是否查询到该会话键值,如果未查询到该会话键值,则返回会话创建流程,重新创建NAT会话;如果查询到该会话键值,则进入下一步;
(24)获取当前***时间,并将该会话键值对应会话中的当前时间更新为当前***时间,保证会话不被老化删除。
4.根据权利要求3所述的基于分布式***的NAT会话管理方法,其特征在于,所述步骤(3)对更新后的NAT会话进行老化操作方法为,
(31)将老化指示指针指向双向链表开始处;
(32)将每次老化检查的会话条数最大值设置为max,将已检查会话条数设置为0;
(33)判断进行老化检查的会话条数是否大于等于最大值max或双向链表中是否已无会话;如果是,则进入步骤(34);如果否,则进入步骤(35);
(34)延时一段时间后返回步骤(32)进行下一次老化检查;
(35)获取老化指示指针所指向会话的当前时间、老化时间和***时间;
(36)判断会话当前时间与会话老化时间之和是否小于***时间,如果是,则进入步骤(37);如果否,则进入步骤(38)说明该会话已较长时间无流量通过,
(37)将该会话老化删除,并释放相关资源,更新老化指示指针,使老化指示指针指向双向链表中的下一条会话;
(38)不对该会话进行老化删除操作,直接更新老化指示指针,使老化指示指针指向双向链表中的下一条会话;
(39)返回步骤(33),循环对会话进行老化检查操作。
5.根据权利要求4所述的基于分布式***的NAT会话管理方法,其特征在于,所述步骤(4)查询老化操作后的NAT会话方法为,
(41)将会话查询指示指针指向双向链表开始处;
(42)判断当前是否需要进行查询操作,如果不需要执行查询操作,则进入步骤(43);如果需要执行查询操作,则进入步骤(44);
(43)延时一段时间后返回步骤(42);
(44)设置每次能查询的会话条数最大值为max,设置已查询的会话条数为0;
(45)判断已查询会话条数是否大于等于最大值max或双向链表中是否已无会话,如果是,则返回步骤(43);如果否,则进入步骤(46);
(46)获取查询指示指针当前所指向会话的信息,完成当前会话的查询;
(47)更新查询指示指针,使其指向双向链表中的下一条会话;
(48)返回步骤(45),对双向链表中的其他会话进行查询。
CN201611216255.7A 2016-12-26 2016-12-26 一种基于分布式***的nat会话管理方法 Active CN106790556B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611216255.7A CN106790556B (zh) 2016-12-26 2016-12-26 一种基于分布式***的nat会话管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611216255.7A CN106790556B (zh) 2016-12-26 2016-12-26 一种基于分布式***的nat会话管理方法

Publications (2)

Publication Number Publication Date
CN106790556A CN106790556A (zh) 2017-05-31
CN106790556B true CN106790556B (zh) 2019-09-17

Family

ID=58927445

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611216255.7A Active CN106790556B (zh) 2016-12-26 2016-12-26 一种基于分布式***的nat会话管理方法

Country Status (1)

Country Link
CN (1) CN106790556B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107465578B (zh) * 2017-09-21 2020-04-03 杭州全维技术股份有限公司 一种动态检测促使ap及时下线的方法
CN107679148A (zh) * 2017-09-26 2018-02-09 郑州云海信息技术有限公司 一种分布式文件***的会话查找方法、装置及设备
CN107566549B (zh) * 2017-09-30 2021-06-18 东软集团股份有限公司 一种网络地址转换映射表的处理方法、装置及设备
CN107682470B (zh) * 2017-10-16 2021-04-27 杭州迪普科技股份有限公司 一种检测nat地址池中公网ip可用性的方法及装置
CN108173982B (zh) * 2018-03-26 2020-12-22 深圳市风云实业有限公司 跨板报文的nat处理方法及装置
CN109067935A (zh) * 2018-08-16 2018-12-21 深圳市风云实业有限公司 分片报文处理方法及多核处理器***
CN109634966A (zh) * 2018-12-17 2019-04-16 广州天懋信息***股份有限公司 基于哈希算法的千万级网络会话表管理方法、***、介质和设备
CN112055097B (zh) * 2020-08-13 2021-05-07 北京天融信网络安全技术有限公司 一种nat规则匹配方法、装置、电子设备及存储介质
CN112104761A (zh) * 2020-08-20 2020-12-18 广东网堤信息安全技术有限公司 一种nat地址转换的方法
CN112600809A (zh) * 2020-12-08 2021-04-02 阿米华晟数据科技(江苏)有限公司 会话资源的管理方法、装置、设备及存储介质
CN113810313B (zh) * 2021-09-06 2024-04-19 山石网科通信技术股份有限公司 分布式会话报文的处理方法及处理装置
CN113904950B (zh) * 2021-12-06 2022-02-22 广东睿江云计算股份有限公司 基于流的网络监测方法、装置、计算机设备及存储介质
CN114221847B (zh) * 2021-12-10 2024-01-23 北京天融信网络安全技术有限公司 网络会话管理方法、装置及设备、存储介质
CN115065640B (zh) * 2022-08-09 2022-11-01 北京安博通金安科技有限公司 一种流表管理方法、装置、电子设备及存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1946062A (zh) * 2006-10-10 2007-04-11 华为数字技术有限公司 保活nat设备中会话表项的方法和***
CN101674297A (zh) * 2008-09-12 2010-03-17 ***通信集团公司 分布式业务网络、核心服务设备及协议报文处理方法
CN101702657A (zh) * 2009-12-04 2010-05-05 杭州华三通信技术有限公司 一种nat业务的热备份方法和设备
CN101729592A (zh) * 2008-10-29 2010-06-09 ***通信集团公司 一种分布式通信网络、设备及通信网络分离方法
CN102098353A (zh) * 2011-01-31 2011-06-15 北京邮电大学 基于分布式哈希表DHT实现IPv4和IPv6互通的***和方法
CN102185723A (zh) * 2011-05-27 2011-09-14 杭州迪普科技有限公司 一种会话管理方法及装置
US8041835B2 (en) * 2007-04-24 2011-10-18 Sony Computer Entertainment Inc. Network address translation type for flexible neighbor selection in overlay networks
CN102412949A (zh) * 2011-12-30 2012-04-11 苏州山石网络有限公司 一种分布式***中nat端口资源支持双控制板的方法
CN103152269A (zh) * 2013-02-26 2013-06-12 杭州华三通信技术有限公司 一种基于nat的报文转发方法和设备
CN103825976A (zh) * 2014-03-04 2014-05-28 杭州华三通信技术有限公司 分布式***架构中的nat处理方法及装置
CN104580550A (zh) * 2014-12-30 2015-04-29 北京天融信科技有限公司 分布式***中多业务板分流时的nat处理方法及设备
CN104618152A (zh) * 2015-01-19 2015-05-13 迈普通信技术股份有限公司 一种会话表老化方法及***

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1946062A (zh) * 2006-10-10 2007-04-11 华为数字技术有限公司 保活nat设备中会话表项的方法和***
US8041835B2 (en) * 2007-04-24 2011-10-18 Sony Computer Entertainment Inc. Network address translation type for flexible neighbor selection in overlay networks
CN101674297A (zh) * 2008-09-12 2010-03-17 ***通信集团公司 分布式业务网络、核心服务设备及协议报文处理方法
CN101729592A (zh) * 2008-10-29 2010-06-09 ***通信集团公司 一种分布式通信网络、设备及通信网络分离方法
CN101702657A (zh) * 2009-12-04 2010-05-05 杭州华三通信技术有限公司 一种nat业务的热备份方法和设备
CN102098353A (zh) * 2011-01-31 2011-06-15 北京邮电大学 基于分布式哈希表DHT实现IPv4和IPv6互通的***和方法
CN102185723A (zh) * 2011-05-27 2011-09-14 杭州迪普科技有限公司 一种会话管理方法及装置
CN102412949A (zh) * 2011-12-30 2012-04-11 苏州山石网络有限公司 一种分布式***中nat端口资源支持双控制板的方法
CN103152269A (zh) * 2013-02-26 2013-06-12 杭州华三通信技术有限公司 一种基于nat的报文转发方法和设备
CN103825976A (zh) * 2014-03-04 2014-05-28 杭州华三通信技术有限公司 分布式***架构中的nat处理方法及装置
CN104580550A (zh) * 2014-12-30 2015-04-29 北京天融信科技有限公司 分布式***中多业务板分流时的nat处理方法及设备
CN104618152A (zh) * 2015-01-19 2015-05-13 迈普通信技术股份有限公司 一种会话表老化方法及***

Also Published As

Publication number Publication date
CN106790556A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN106790556B (zh) 一种基于分布式***的nat会话管理方法
CN103825954B (zh) 一种OpenFlow控制方法及相应插件、平台和网络
CN103346981B (zh) 虚拟交换方法、相关装置和计算机***
US9998352B2 (en) Method and system for sending flow table in SDN, of controller, and of switch
CN104468397B (zh) 一种虚拟机热迁移转发不丢包的方法和装置
US7739404B2 (en) Scalable methods for distributing routing information to border gateway protocol (BGP) devices
CN108809857A (zh) 一种基于sdn的流量监控与业务服务质量保障策略的方法
CN107395532A (zh) 一种基于sdn的多租户虚拟网络隔离方法
CN111638957B (zh) 一种集群共享式公有云负载均衡的实现方法
CN110430114B (zh) 一种虚拟路由器及实现sdn网络与传统ip网络互联的方法
CN109067935A (zh) 分片报文处理方法及多核处理器***
CN103475566A (zh) 一种实时消息交换平台及分布式集群组建方法
WO2024093064A1 (zh) 一种大规模多模态网络中标识管理及优化转发方法和装置
CN108989220B (zh) 路由方法和路由***
CN103384280B (zh) 一种网络地址转换端口资源管理方法及***
CN104253878A (zh) Dhcp relay终结子接口的vlan信息管理***及方法
US11012542B2 (en) Data processing method and apparatus
CN108881027B (zh) 一种基于Linux***实现路由器的radius报文转发方法和装置
US11909634B2 (en) ISCSI multipath management system and method, device, and storage medium
CN104954477B (zh) 一种基于并发改进的大规模图数据流式划分方法及***
CN105453494B (zh) 虚拟最短路径树建立及处理的方法及路径计算单元
CN110995489B (zh) 大数据平台服务器管理方法、装置、服务器及存储介质
US20140050116A1 (en) Techniques for Generic Pruning in a Trill Network
WO2016177215A1 (zh) 网络控制的处理方法、装置及软件定义网络***
CN110536187A (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