[发明专利]一种基于SOPC的NAT的实现方法及装置有效
申请号: | 201510641720.0 | 申请日: | 2015-09-30 |
公开(公告)号: | CN105162901B | 公开(公告)日: | 2019-05-14 |
发明(设计)人: | 刘兆先 | 申请(专利权)人: | 北京特立信电子技术股份有限公司;邦彦技术股份有限公司 |
主分类号: | H04L29/12 | 分类号: | H04L29/12 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 唐致明 |
地址: | 100000 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 sopc nat 实现 方法 装置 | ||
1.一种基于SOPC的NAT的实现方法,其特征在于,其应用于一种基于SOPC的NAT的实现装置,所述一种基于SOPC的NAT的实现装置包括:
处理器模块,用于对学习/处理模块输出的数据包信息进行查表处理,并将处理结果返回给学习/处理模块;
学习/处理模块,其分别与提取模块和处理器模块相连,所述学习/处理模块有两个作用:一是接收提取模块的输出,检查学习内容中是否有符合项,如果有符合项则将存储的对应结果输出给NAT处理模块或NAT逆处理模块,如果没有符合项则将接收的数据直接提交给处理器模块,并记录该数据,以便在学习过程中与处理结果建立一一对应关系;二是学习处理器模块输出的数据包处理结果,即将数据包信息输入与数据包处理结果间建立一一对应的关系,以便对后续数据包中有相同输入条件的数据包直接进行处理,以减轻处理器模块的负荷,提高数据包的处理能力,然后将结果输出给NAT处理模块或NAT逆处理模块;
提取模块,其与以太网接口相连,用于提取数据包信息;
以太网接口,包括用于连接私网的私网以太网接口和用于连接公网的以太网接口;
数据缓冲模块,其连接于提取模块和NAT处理模块或NAT逆处理模块之间,用于缓存数据包;
NAT处理模块,其分别与提取模块、数据缓冲模块、学习/处理模块和以太网接口连接,其用于接收学习/处理模块的输出,并结合提取模块的输出、数据缓冲模块中的数据包内容,实现私网到公网的NAT处理;
NAT逆处理模块,其分别与提取模块、数据缓冲模块、学习/处理模块和以太网接口连接,其用于接收学习/处理模块的输出,并结合提取模块的输出、数据缓冲模块中的数据包内容,实现公网到私网的NAT逆处理;
所述方法包括步骤:
S1,对数据包进行信息提取;
S2,将数据包存入缓冲区,同时将提取的信息提交给学习/处理模块;
S3,学习/处理模块判断自己能否处理此信息,如果能处理,则进入步骤S4,否则将接收到的信息提交给处理器模块并进入步骤S5;其中,所述学习/处理模块包括CAM模块和存储模块,CAM模块用于实现数据的快速匹配,用于判断学习内容中是否有符合项,存储模块用于存储学习到的处理结果;
S4,学习/处理模块根据以前学习的内容进行处理,然后将处理结果提交给NAT处理模块或NAT逆处理模块,然后跳转进入步骤S7;
S5,处理器模块对接收到的信息进行处理,并将处理结果返回给学习/处理模块;
S6,学习/处理模块学习处理器模块的结果,并将处理结果提交给NAT处理模块或NAT逆处理模块;
S7,NAT处理模块、NAT逆处理模块根据接收的处理结果对缓冲区中的数据包进行处理;
步骤S5中所述的信息为私网数据或公网数据,所述步骤S5具体包括子步骤:
S51,对私网数据进行处理,并将处理结果返回给学习/处理模块;
或者
S52,对公网数据进行处理,并将处理结果返回给学习/处理模块;
所述步骤S51具体包括子步骤:
S511,用源端口号作为私网端口查找NAT处理表的索引,从外部存储器中取出该源端口号的对应表项,判断表项的有效标识位是否有效,如果有效则进入步骤S512,否则转至步骤S519;其中,所述外部存储器中存储有NAT处理表;
S512,判断指针标识位是否有效,如果有效则转至步骤S517,否则转至步骤S513;
S513,判断私网数据中的协议类型、源IP分别与对应表项中的协议字段、源IP字段是否匹配,如果匹配则转至步骤S514,否则转至步骤S519;
S514,用所述NAT处理表对应表项的替换端口的内容对源端口进行替换,并判断外网网关有效标识位是否有效,如果有效则转至步骤S516,否则转至步骤S515;其中,所述NAT处理表中存储有源端口对应表项的替换端口;
S515,数据包可直接送达或采用默认网关,转至步骤S518;
S516,数据包需经过该外网网关转发,转至步骤S518;
S517,通过IP指针找到IP查找表,历遍有效标识位有效的表项,如果存在协议字段、源IP字段匹配项,则转至步骤S514,否则转至步骤S519;
S518,查表成功,转至步骤S5111;
S519,若动态模式位置位,则随机分配一个未使用的公网IP、端口,并将相应信息添加到NAT配置表中,转至步骤S5111;
S5110,查表失败,数据包丢弃,转至步骤S5111;
S5111,将处理结果返回给学习/处理模块,转至步骤S511,开始下一次查表;
所述步骤S52具体包括子步骤:
S521,用目的端口号作为公网端口查找NAT处理表的索引,从外部存储器中取出该目的端口号的对应表项,判断表项的有效标识位是否有效,如果无效则转至步骤S5210,如果有效则转至步骤S522;
S522,判断指针标识位是否有效,如果无效则转至步骤S523,如果有效则转至步骤S525;
S523,判断公网数据中的协议类型、外网IP分别与对应表项中的协议字段、外网IP字段是否匹配,如果匹配则转至骤S524,否则转至步骤S5210;
S524,用所述NAT处理表对应表项的替换端口的内容、内网IP的内容对目的端口、目的IP进行替换,转至步骤S529;
S525,通过IP指针找到IP查找表,历遍有效标识位有效的表项,如果存在协议字段、外网IP字段匹配,且当远程IP有效标识有效时,远程IP、远程端口也匹配的匹配项时则转至步骤
S526,如果没有则转至步骤S5210;
S526,判断内网IP有效标识是否有效,如果有效则转至步骤
S527,否则转至步骤S528;
S527,用IP查找表中的替换端口、内网IP对目的端口、目的IP进行替换,转至步骤S529;
S528,用IP查找表中的替换端口、端口查找表中的内网IP对目的端口、目的IP进行替换,转至步骤S529;
S529,查表成功,转至步骤S5211;
S5210,查表失败,转至步骤S5211;
S5211,将处理结果返回给学习/处理模块,转至步骤S521,开始下一次查表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京特立信电子技术股份有限公司;邦彦技术股份有限公司,未经北京特立信电子技术股份有限公司;邦彦技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510641720.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种健身车座椅装置
- 下一篇:控件间传输数据的方法和装置