[发明专利]一种网络地址端口转换方法和装置有效
申请号: | 200810117868.4 | 申请日: | 2008-08-06 |
公开(公告)号: | CN101335770A | 公开(公告)日: | 2008-12-31 |
发明(设计)人: | 鄢波涛 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | H04L29/12 | 分类号: | H04L29/12;H04L12/56;H04L29/06 |
代理公司: | 北京德琦知识产权代理有限公司 | 代理人: | 宋志强;麻海明 |
地址: | 310053浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 网络地址 端口 转换 方法 装置 | ||
1.一种网络地址端口转换方法,其特征在于,该方法包括:
接收需要做网络地址端口转换NAPT处理的当前流;
分配指定公网地址作为当前流进行NAPT处理后的源IP地址;
从指定公网地址的端口队列中选择一个端口作为当前流进行NAPT处理后的源端口;
根据由所述源IP地址、所述源端口、当前流的目的IP地址、当前流的目的端口和当前流所属协议组成的五元组查找会话表判断具有相同五元组的流是否已经存在,
如果不存在则根据所述源IP地址和所述源端口对当前流进行NAPT处理,将NAPT处理后的当前流的五元组保存到会话表中,并发送所述NAPT处理后的当前流;如果具有相同五元组的流已存在,则该方法进一步包括尝试分配下一个端口,如果多次尝试都失败则不进行NAPT处理,丢弃当前流。
2.如权利要求1所述的方法,其特征在于,所述如果具有相同五元组的流已存在,则该方法进一步包括具体为:
从指定公网地址的端口队列中重新选择一个端口作为当前流进行NAPT处理后的源端口,并根据由所述源IP地址、所述重新选择的源端口、当前流的目的IP地址、当前流的目的端口和当前流所属协议组成的五元组判断具有相同五元组的流是否已经存在,如果不存在则根据所述源IP地址和所述重新选择的源端口对当前流进行NAPT处理,将NAPT处理后的当前流的五元组保存到会话表中,发送所述NAPT处理后的当前流,如果存在则重复所述从指定公网地址的端口队列中重新选择一个端口的步骤以及后续步骤;
如果第N次从指定公网地址的端口队列中重新选择一个端口作为当前流进行NAPT处理后的源端口后,会话表中仍存在由所述源IP地址、所述第N次重新选择的源端口、当前流的目的IP地址、当前流的目的端口和当前流所属协议组成的五元组,则丢弃所述当前流;N为大于1的自然数。
3.如权利要求1或2所述的方法,其特征在于,
当所述指定公网地址的端口队列中包括M个端口时,为接收到的需要做NAPT处理的前M条流均分配所述指定公网地址作为NAPT处理后的源IP地址,将所述M个端口按照端口编号顺序和接收所述M条流的先后顺序依次不重复地分别分配给所述M条流作为NAPT处理后的源端口;对于所述M条流中的每一条流,都根据该流所分配到的源IP地址和源端口对该流进行NAPT处理,将该NAPT处理后的流的五元组保存到会话表中,发送该NAPT处理后的流;M为自然数;
所述当前流是在第M条流之后接收到的流;所述从指定公网地址的端口队列中选择一个端口包括:从指定公网地址的端口队列中按所述M个端口编号的顺序依次进行选择。
4.如权利要求3所述的方法,其特征在于,该方法进一步包括:
设置冲突检查标志位和计数器;所述计数器在每次从端口队列中选择一个端口时计一次数;所述冲突检测标志位的状态在所述计数器计M次数之后变为有效,之前无效;
在所述冲突检查标志位无效时,对于分配到源IP地址和源端口的流不执行所述根据五元组判断是否有相同的流已存在的步骤,而直接根据分配到的源IP地址和源端口进行NAPT处理后发送;
反之,在所述突检查标志位有效时,对于分配到源IP地址和源端口的流执行所述根据五元组判断是否有相同的流已存在的步骤。
5.如权利要求3所述的方法,其特征在于,该方法进一步包括:当接收到的需要做NAPT转换的流包括分别属于不同协议的流,且所述不同协议的个数为P时,P为大于1的自然数,为所述指定公网地址设置与所述P种协议一一对应的P个端口队列,且所述P个端口队列中的每个队列都包括所述M个端口;
所述为前M条流均分配所述指定公网地址作为NAPT处理后的源IP地址,以及将M个端口按照端口编号顺序和接收所述M条流的先后顺序依次不重复地分配给所述M条流作为NAPT处理后的源端口包括:对于所述P种协议中的每种协议,为属于该协议的前M条流均分配所述指定公网地址作为NAPT处理后的源IP地址,并将与该协议对应的端口队列中的M个端口按照端口编号顺序和接收属于该协议的前M条流的先后顺序依次不重复地分别分配给属于该协议的前M条流作为NAPT处理后的源端口;
所述从指定公网地址的端口队列中选择一个端口作为当前流进行NAPT处理后的源端口包括:从指定公网地址的与当前流所属协议对应的端口队列中的选择一个端口作为当前流进行NAPT处理后的源端口。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810117868.4/1.html,转载请声明来源钻瓜专利网。