[发明专利]包交换电路及包交换方法无效
| 申请号: | 201210183971.5 | 申请日: | 2012-06-06 |
| 公开(公告)号: | CN102780611A | 公开(公告)日: | 2012-11-14 |
| 发明(设计)人: | 万玉鹏;卢海彦;余剑 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | H04L12/56 | 分类号: | H04L12/56 |
| 代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 交换 电路 方法 | ||
1.一种包交换电路,其特征在于,包括:多个输入端口、多个输出端口、第一轮询单元、路由计算单元、共享缓存、与输出端口一一对应的控制缓存、以及第二轮询单元,其中,每个输入端口均具有输入缓存,每个输出端口均具有输出缓存;
所述输入端口,用于接收数据包并将所述数据包存储在自身的输入缓存中;
所述第一轮询单元,用于对所述输入端口的输入缓存进行轮询;
所述路由计算单元,用于对所述第一轮询单元轮询到的输入缓存中存储的至少一个数据包进行路由计算,确定所述数据包对应的输出端口;
所述共享缓存,用于存储经过所述路由计算单元确定输出端口的数据包,并根据输出端口将数据包在共享缓存中的存储地址存入相应的控制缓存中;
所述第二轮询单元,用于对多个控制缓存进行轮询,在轮询到的控制缓存中获得至少一个数据包在共享缓存中的存储地址,并根据所述存储地址在共享缓存中获得数据包,并存入相应的输出端口的输出缓存中;
所述输出端口,用于读取自身的输出缓存并发送数据包。
2.根据权利要求1所述的包交换电路,其特征在于,所述第二轮询单元还用于:检测轮询到的控制缓存所对应的输出端口的输出缓存是否反压;如果反压,轮询下一个控制缓存。
3.根据权利要求1或2所述的包交换电路,其特征在于,所述共享缓存还用于:判断待存入共享缓存的数据包与已存入共享缓存的数据包之间是否相同;
如果相同,丢弃所述待存入共享缓存的数据包;
如果不同,将所述待存入共享缓存的数据包存入共享缓存。
4.根据权利要求1至3中任一项所述的包交换电路,其特征在于,所述共享缓存中数据包的存储地址,按照数据包到达共享缓存的先后顺序依次递增,且循环使用。
5.根据权利要求1至4中任一项所述的包交换电路,其特征在于,所述共享缓存的容量大于或等于全部输入缓存的容量之和。
6.一种基于权利要求1至5中任一项所述的包交换电路的包交换方法,其特征在于,包括:
对轮询到的输入缓存中存储的至少一个数据包进行路由计算,确定数据包的输出端口;
将已确定输出端口的数据包存入共享缓存,根据输出端口将数据包在共享缓存中的存储地址存入相应的控制缓存中;
在轮询到的控制缓存中获得至少一个数据包在共享缓存中的存储地址,并根据所述存储地址在共享缓存中获得数据包,并存入相应的输出缓存中。
7.根据权利要求6所述的方法,其特征在于,所述在轮询到的控制缓存中获得至少一个数据包在共享缓存中的存储地址之前,所述方法还包括:
检测轮询到的控制缓存所对应的输出端口的输出缓存是否反压;
如果反压,轮询下一个控制缓存。
8.根据权利要求6或7所述的方法,其特征在于,所述将已确定输出端口的数据包存入共享缓存之前,所述方法还包括:
判断待存入共享缓存的数据包与已存入共享缓存的数据包之间是否相同;
如果相同,丢弃所述待存入共享缓存的数据包;
如果不同,执行所述将已确定输出端口的数据包存入共享缓存的步骤。
9.根据权利要求6至8中任一项所述的方法,其特征在于,所述将已确定输出端口的数据包存入共享缓存具体包括:
按照数据包到达共享缓存的先后顺序对所述数据包进行存储,数据包的存储地址依次递增,且循环使用。
10.根据权利要求6至9中任一项所述的方法,其特征在于,所述共享缓存的容量大于或等于全部输入缓存的容量之和。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210183971.5/1.html,转载请声明来源钻瓜专利网。





