一种流表更新方法及装置的制造方法_6

文档序号:8546123阅读:来源:国知局
>[0267]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0268]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0269]所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM, Read-Only Memory)、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
[0270]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
【主权项】
1.一种流表更新方法,其特征在于,包括: 根据第一客户端的信息和网络创建信息,确定与所述第一客户端的信息和所述网络创建信息对应的所述第一客户端的流表项数目的阈值,其中,所述第一客户端的信息包括所述第一客户端的序列号ID,所述网络创建信息包括所述第一客户端所在网络的ID和所述第一客户端所在网络的所有客户端的媒体访问控制MAC地址; 获取交换机上报的数据包,所述数据包是由所述第一客户端发送给所述交换机的,并且所述数据包与所述交换机中保存的流表中的所述第一客户端的各个流表项匹配失败; 生成所述第一客户端的与所述数据包对应的第一流表项; 若所述流表已满,且所述流表中的所述第一客户端的流表项数目小于所述第一客户端的流表项数目的阈值,则生成第一指示,所述第一指示用于指示所述交换机将所述流表中流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为所述第一流表项,其中,所述溢值为所述第二客户端的流表项数目超出所述第二客户端的流表项数目的阈值的数目; 下发所述第一流表项和所述第一指示至所述交换机,以使得所述交换机根据所述第一指示将所述流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为所述第一流表项。
2.根据权利要求1所述的流表更新方法,其特征在于,所述根据第一客户端的信息和网络创建信息,确定与所述第一客户端的信息和所述网络创建信息对应的所述第一客户端的流表项数目的阈值,具体包括: 根据所述第一客户端的信息和所述网络创建信息,确定与所述第一客户端的信息和所述网络创建信息对应的所述第一客户端的网络级别; 根据所述第一客户端的网络级别,确定与所述第一客户端的网络级别对应的所述第一客户端的流表项数目的阈值。
3.根据权利要求1或2所述的流表更新方法,其特征在于,所述获取交换机上报的数据包之后,生成第一指示之前,所述方法还包括: 统计所述流表中的所述第一客户端的流表项数目。
4.根据权利要求1-3任一项所述的流表更新方法,其特征在于,所述生成第一指示,具体包括: 确定所述流表中的各个客户端的流表项数目的溢值; 根据所述各个客户端的流表项数目的溢值,确定流表项数目的溢值最大的所述至少一个第二客户端; 确定所述至少一个第二客户端的任意一个流表项; 根据所述至少一个第二客户端的任意一个流表项,生成与所述至少一个第二客户端的任意一个流表项对应的所述第一指示。
5.根据权利要求1-4任一项所述的流表更新方法,其特征在于,所述生成所述第一客户端的与所述数据包对应的第一流表项,具体包括: 根据所述数据包,确定所述数据包的转发路径; 根据所述数据包和所述数据包的转发路径,生成与所述数据包对应的所述第一流表项。
6.根据权利要求5所述的流表更新方法,其特征在于,所述根据所述数据包,确定所述数据包的转发路径,具体包括: 获取所述数据包的地址信息,其中,所述数据包的地址信息包括MAC地址,或MAC地址和互联网协议IP地址; 根据所述数据包的地址信息,确定与所述数据包的地址信息对应的所述数据包的转发路径。
7.根据权利要求5所述的流表更新方法,其特征在于,所述根据所述数据包和所述数据包的转发路径,生成所述第一流表项,具体包括: 获取所述数据包的包头信息; 根据所述数据包的包头信息,确定与所述数据包的包头信息对应的所述第一流表项的匹配域; 根据所述第一流表项的匹配域和所述数据包的转发路径,生成与所述数据包对应的所述第一流表项。
8.根据权利要求1-3任一项所述的流表更新方法,其特征在于,所述方法还包括: 若所述流表已满,且所述流表中的所述第一客户端的流表项数目大于或等于所述第一客户端的流表项数目的阈值,则提示错误信息。
9.一种流表更新方法,其特征在于,包括: 接收来自第一客户端的数据包; 若所述数据包与流表中的所述第一客户端的各个流表项匹配失败,则发送所述数据包至控制设备,以使得所述控制设备根据所述数据包,生成所述第一客户端的与所述数据包对应的第一流表项,并当所述流表已满,且所述流表中的所述第一客户端的流表项数目小于所述第一客户端的流表项数目的阈值时,生成第一指示; 接收所述控制设备下发的所述第一流表项和所述第一指示,所述第一指示用于指示将所述流表中流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为所述第一流表项; 根据所述第一指示,将所述流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为所述第一流表项。
10.根据权利要求9所述的流表更新方法,其特征在于,所述根据所述第一指示,将所述流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为所述第一流表项,具体包括: 根据所述第一指示,删除所述流表项数目的溢值最大的至少一个第二客户端的任意一个流表项; 将所述第一流表项插入所述流表中。
11.根据权利要求9或10所述的流表更新方法,其特征在于,所述接收来自第一客户端的数据包之后,发送所述数据包至控制设备之前,所述方法还包括: 将所述数据包与所述流表中的所述第一客户端的各个流表项进行匹配。
12.根据权利要求9-11任一项所述的流表更新方法,其特征在于,所述接收所述控制设备下发的所述第一流表项和所述第一指示之后,所述方法还包括: 根据所述第一流表项,转发所述数据包。
13.根据权利要求9所述的流表更新方法,其特征在于,所述方法还包括: 若所述数据包与所述流表中的所述第一客户端的第二流表项匹配成功,则根据所述第二流表项转发所述数据包。
14.一种控制设备,其特征在于,包括: 确定单元,用于根据第一客户端的信息和网络创建信息,确定与所述第一客户端的信息和所述网络创建信息对应的所述第一客户端的流表项数目的阈值,其中,所述第一客户端的信息包括所述第一客户端的序列号ID,所述网络创建信息包括所述第一客户端所在网络的ID和所述第一客户端所在网络的所有客户端的媒体访问控制MAC地址; 获取单元,用于获取交换机上报的数据包,所述数据包是由所述第一客户端发送给所述交换机的,并且所述数据包与所述交换机中保存的流表中的所述第一客户端的各个流表项匹配失败; 生成单元,用于生成所述第一客户端的与所述获取单元获取的所述数据包对应的第一流表项,以及若所述流表已满,且所述流表中的所述第一客户端的流表项数目小于所述确定单元确定的所述第一客户端的流表项数目的阈值,则生成第一指示,所述第一指示用于指示所述交换机将所述流表中流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为所述第一流表项,其中,所述溢值为所述第二客户端的流表项数目超出所述第二客户端的流表项数目的阈值的数目; 发送单元,用于下发所述生成单元生成的所述第一流表项和所述第一指示至所述交换机,以使得所述交换机根据所述第一指示将所述流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为所述第一流表项。
15.根据权利要求14所述的控制设备,其特征在于, 所述确定单元,具体用于根据所述第一客户端的信息和所述网络创建信息,确定与所述第一客户端的信息和所述网络创建信息对应的所述第一客户端的网络级别,并根据所述第一客户端的网络级别,确定与所述第一客户端的网络级别对应的所述第一客户端的流表项数目的阈值。
16.根据权利要求14或15所述的控制设备,其特征在于,所述控制设备还包括统计单元, 所述统计单元,用于在所述获取单元获取到所述交换机上报的所述数据包之后,所述生成单元生成所述第一指示之前,统计所述流表中的所述第一客户端的流表项数目。
17.根据权利要求14-16任一项所述的控制设备,其特征在于, 所述确定单元,具体用于确定所述流表中的各个客户端的流表项数目的溢值,并根据所述各个客户端的流表项数目的溢值,确定流表项数目的溢值最大的所述至少一个第二客户端,以及确定所述至少一个第二客户端的任意一个流表项; 所述生成单元,具体用于根据所述确定单元确定的所述至少一个第二客户端的任意一个流表项,生成与所述至少一个第二客户端的任意一个流表项对应的所述第一指示。
18.根据权利要求14-17任一项所述的控制设备,其特征在于, 所述确定单元,具体用于根据所述获取单元获取的所述数据包,确定所述数据包的转发路径; 所述生成单元,具体用于根据所述数据包和所述确定单元确定的所述数据包的转发路径,生成与所述数据包对应的所述第一流表项。
19.根据权利要求18所述的控制设备,其特征在于, 所述获取单元,具体用于获取所述数据包的地址信息,其中,所述数据包的地址信息包括MAC地址,或MAC地址和互联网协议IP地址; 所述确定单元,具体用于根据所述获取单元获取的所述数据包的地址信息,确定与所述数据包的地址信息对应的所述数据包的转发路径。
20.根据权利要求18所述的控制设备,其特征在于, 所述获取单元,具体用于获取所述数据包的包头信息; 所述确定单元,具体用于根据所述获取单元获取的所述数据包的包头信息,确定与所述数据包的包头信息对应的所述第一流表项的匹配域; 所述生成单元,具体用于根据所述确定单元确定的所述第一流表项的匹配域和所述数据包的转发路径,生成与所述数据包对应的所述第一流表项。
21.根据权利要求14-16任一项所述的控制设备,其特征在于,所述控制设备还包括提示单元, 所述提示单元,用于若所述流表已满,且所述统计单元统计的所述第一客户端的流表项数目大于或等于所述第一客户端的流表项数目的阈值,则提示错误信息。
22.—种交换机,其特征在于,包括: 接收单元,用于接收来自第一客户端的数据包; 发送单元,用于若所述接收单元接收的所述数据包与流表中的所述第一客户端的各个流表项匹配失败,则发送所述数据包至控制设备,以使得所述控制设备根据所述数据包,生成所述第一客户端的与所述数据包对应的第一流表项,并当所述流表已满,且所述流表中的所述第一客户端的流表项数目小于所述第一客户端的流表项数目的阈值时,生成第一指示; 所述接收单元,还用于接收所述控制设备下发的所述第一流表项和所述第一指示,所述第一指示用于指示将所述流表中流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为所述第一流表项; 替换单元,用于根据所述接收单元接收的所述第一指示,将所述流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为所述接收单元接收的所述第一流表项。
23.根据权利要求22所述的交换机,其特征在于, 所述替换单元,具体用于根据所述接收单元接收的所述第一指示,删除所述流表项数目的溢值最大的至少一个第二客户端的任意一个流表项,并将所述第一流表项插入所述流表中。
24.根据权利要求22或23所述的交换机,其特征在于,所述交换机还包括匹配单元, 所述匹配单元,用于在所述接收单元接收来自所述第一客户端的所述数据包之后,所述发送单元发送所述数据包至所述控制设备之前,将所述数据包与所述流表中的所述第一客户端的各个流表项进行匹配。
25.根据权利要求22-24任一项所述的交换机,其特征在于, 所述发送单元,还用于在所述接收单元接收到所述控制设备下发的所述第一流表项和所述第一指示之后,根据所述第一流表项,转发所述数据包。
26.根据权利要求22所述的交换机,其特征在于, 所述发送单元,还用于若所述接收单元接收的所述数据包与所述流表中的所述第一客户端的第二流表项匹配成功,则根据所述第二流表项,转发所述数据包。
【专利摘要】本发明的实施例提供一种流表更新方法及装置,涉及通信领域,能够在流表已满的状态下更新流表,从而满足客户对流表资源的需求,以及实现流表资源的公平分配。该方法可以包括:根据第一客户端的信息和网络创建信息,确定与第一客户端的信息和网络创建信息对应的第一客户端的流表项数目的阈值;获取交换机上报的数据包;生成第一客户端的与数据包对应的第一流表项;若流表已满,且流表中的第一客户端的流表项数目小于第一客户端的流表项数目的阈值,则生成第一指示;下发第一流表项和第一指示至交换机,以使得交换机根据第一指标将流表项数目的溢值最大的至少一个第二客户端的任意一个流表项替换为第一流表项。
【IPC分类】H04L12-741
【公开号】CN104869064
【申请号】CN201410060892
【发明人】蔡启申, 李金明
【申请人】华为技术有限公司
【公开日】2015年8月26日
【申请日】2014年2月21日
当前第6页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1