[发明专利]用于多核转发网络地址端口转换的端口分配方法和装置有效
| 申请号: | 201510980638.0 | 申请日: | 2015-12-23 |
| 公开(公告)号: | CN105450792B | 公开(公告)日: | 2018-09-14 |
| 发明(设计)人: | 刘健男 | 申请(专利权)人: | 东软集团股份有限公司 |
| 主分类号: | H04L29/12 | 分类号: | H04L29/12 |
| 代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 张大威 |
| 地址: | 110168 辽*** | 国省代码: | 辽宁;21 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 用于 多核 转发 网络地址 端口 转换 分配 方法 装置 | ||
本发明提出一种用于多核转发NAPT的端口分配方法和装置,该用于多核转发NAPT的端口分配方法包括:接收到报文后,在CPU独立占用的独立资源池中查找是否存在未分配的端口号;如果存在,则在所述未分配的端口号中确定匹配的端口号,并将所述匹配的端口号分配给所述报文;如果不存在,则在多核共有的共有资源池中查找是否存在未分配的端口号;如果所述共有资源池中存在未分配的端口号,则在所述未分配的端口号中确定匹配的端口号,并将所述匹配的端口号分配给所述报文;如果所述共有资源池中不存在未分配的端口号,选择可用CPU,并将所述报文转发给所述可用CPU进行处理。该方法能够提升多核转发NAPT的性能。
技术领域
本发明涉及网络通信技术领域,尤其涉及一种多核转发网络地址端口转换(Network Address Port Translation,NAPT)的端口分配方法和装置。
背景技术
NAPT是将数据包的源互联网协议(Internet Protocol,IP)地址转换成另一个指定的IP地址,同时对初始源端口进行端口地址转换(Port Address Translation,PAT),主要作用于从防火墙内部网络访问外部网络的情况,隐藏内部网络使用的IP地址,一定程度上保障私有网络安全。
对于网络安全厂商,NAPT的实现主要就是在网络地址转换(Network AddressTranslation,NAT)的IP资源池中选择一个合法IP地址,并选择一个未用的端口号(1024-65535)。如何高性能的查找未用端口号,就是NAPT的性能关键点。
随着科技的不断发展,现在的防火墙已普遍使用多核处理器。相关技术中,在多核转发场景下都是使用加锁的方式和普通的查找算法来确定NAPT的端口分配策略,但是,这种端口分配策略使得多核转发NAPT性能有待提升。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种用于多核转发NAPT的端口分配方法,该方法可以提升多核转发NAPT的性能。
本发明的另一个目的在于提出一种用于多核转发NAPT的端口分配装置。
为达到上述目的,本发明第一方面实施例提出的用于多核转发NAPT的端口分配方法,包括:接收到报文后,在CPU独立占用的独立资源池中查找是否存在未分配的端口号;如果所述独立资源池中存在未分配的端口号,则在所述未分配的端口号中确定匹配的端口号,并将所述匹配的端口号分配给所述报文;如果所述独立资源池中不存在未分配的端口号,则在多核共有的共有资源池中查找是否存在未分配的端口号;如果所述共有资源池中存在未分配的端口号,则在所述未分配的端口号中确定匹配的端口号,并将所述匹配的端口号分配给所述报文;如果所述共有资源池中不存在未分配的端口号,选择可用CPU,并将所述报文转发给所述可用CPU进行处理。
本发明第一方面实施例提出的用于多核转发NAPT的端口分配方法,通过为每个CPU分配独立资源池,可以使得多核之间在NAPT资源分配时互不干扰,性能达到每核线性增长;通过在独立资源池中的资源不足时再从共有资源池中分配端口号,可以通过较低的复杂度实现端口资源的分配,保证连接可以被及时分配到可用的资源,从而提升多核转发NAPT性能。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东软集团股份有限公司,未经东软集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510980638.0/2.html,转载请声明来源钻瓜专利网。





