[发明专利]分布式设备中的报文处理方法和分布式设备有效
申请号: | 201810399892.5 | 申请日: | 2018-04-28 |
公开(公告)号: | CN110417924B | 公开(公告)日: | 2021-10-01 |
发明(设计)人: | 熊鹰 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L29/12 | 分类号: | H04L29/12;H04L12/741 |
代理公司: | 北京弘权知识产权代理有限公司 11363 | 代理人: | 郭放;许伟群 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 设备 中的 报文 处理 方法 | ||
1.一种分布式设备中的报文处理方法,所述分布式设备部署于第一网络和第二网络之间,所述分布式设备包括第一分流单元、第二分流单元、以及至少两个处理单元,所述至少两个处理单元中的每个处理单元与所述第一分流单元和所述第二分流单元连接,其特征在于,所述方法包括:
所述第一分流单元从所述第一网络接收第一报文,根据所述第一报文的数据流标识和第一分流算法,从所述至少两个处理单元中选择第一处理单元,所述第一报文的数据流标识至少包括所述第一报文的源互联网协议IP地址、目的IP地址、源端口号和目的端口号;
所述第一分流单元将所述第一报文发送给所述第一处理单元;
所述第一处理单元为所述第一报文分配一个IP地址、以及一个端口号,分配的所述端口号满足条件:根据地址转换后的所述第一报文的反向报文的数据流标识和第二分流算法,从所述至少两个处理单元中选择出的第二处理单元与所述第一处理单元为同一处理单元,所述地址转换后的所述第一报文的源端口号为所述分配的端口号,所述地址转换后的所述第一报文的源IP地址和目的IP地址中的一个为所述分配的IP地址,所述第二分流算法是所述第二分流单元对所述地址转换后的所述第一报文的反向报文进行分流时使用的算法,所述第二分流算法是指将输入报文的源IP地址、目的IP地址、源端口号、协议号,以及第一端口号按照第一方式指示的顺序输入预定哈希算法后,将所述哈希算法的结果与调整值求和后,对求和结果执行对N取余运算,将取余运算结果对应的处理单元作为选择出的处理单元,所述调整值为所述输入报文的目的端口号减去第一端口号得到的差值,N为所述分布式设备包含的处理单元的数目,所述至少两个处理单元中的每个处理单元分别对应0至N-1中的一个值;
所述第一处理单元对所述第一报文进行地址转换,从而得到所述地址转换后的第一报文,所述地址转换包括将所述第一报文的源端口号替换为所述分配的所述端口号;
所述第一处理单元向所述第二分流单元发送所述地址转换后的第一报文;
所述第二分流单元向所述第二网络发送所述地址转换后的第一报文。
2.根据权利要求1所述的方法,其特征在于,所述第一网络是私网,所述第二网络是公网,
所述第一处理单元为所述第一报文分配一个IP地址、以及一个端口号,包括:
所述第一处理单元为所述第一报文分配预先配置的公网IP地址作为分配的IP地址;
所述第一处理单元从所述第一处理单元对应的端口段中选择一个端口号作为第二端口号,所述第一处理单元与所述至少两个处理单元中的其他处理单元分配的IP地址相同、且第一处理单元与所述至少两个处理单元中的其他处理单元对应的端口段互不重叠;
所述第一处理单元按照第二方式指示的顺序,将所述地址转换后的所述第一报文的源IP地址、目的IP地址、目的端口号,以及所述第二端口号输入所述预定哈希算法,得到哈希运算结果,所述地址转换后的所述第一报文的源IP地址为所述分配的IP地址,所述第二方式指示的顺序中源IP地址与所述第一方式指示的顺序中目的IP地址的位置相同、目的IP地址与所述第一方式指示的顺序中源IP地址的位置相同、目的端口号与所述第一方式指示的顺序中源端口号的位置相同;
所述第一处理单元求取所述哈希运算结果对N的取余运算结果;
所述第一处理单元求取所述第一处理单元对应的0至N-1中的值与取余运算结果之间的差值;
所述第一处理单元为所述第一报文分配所述第二端口号和所述差值之和作为所述分配的端口号。
3.根据权利要求2所述的方法,其特征在于,所述从对应的端口段中选择一个端口号作为第二端口号,包括:
所述第一处理单元按照预定数量的端口号划分为一组的方式,将所述端口段划分为至少一个端口号组;
随机从所述至少一个端口号组中选取一个端口号组,确定选取的端口号组中预定位置的端口号为所述第二端口号。
4.根据权利要求2所述的方法,其特征在于,所述从对应的端口段中选择一个端口号作为第二端口号,包括:
将从预留端口号开始的连续端口号划分为至少一个端口号组,所述至少一个端口号组中的第一个端口号用十六进制表示时后三位为0;
随机从所述至少一个端口号组中选取一个端口号组,确定选取的端口号组中预定位置的端口号为所述第二端口号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810399892.5/1.html,转载请声明来源钻瓜专利网。