一种网络流转发异常检测方法与流程

文档序号:12376017阅读:来源:国知局

技术特征:

1.一种检测网络流转发异常的方法,所述网络流是在动态配置的软件定义网络中的网络流,其特征在于,包括以下两个方面:

A1:基于Packet-In来判断网络流是否被异常转发,用于根据Packet-In发现异常;

A2:一种流表项编辑机制,确保被异常转发的网络流一定会产生Packet-In。

2.根据权利要求1所述网络流转发异常检测方法,其特征在于:

A1中采用流表项查找引擎和验证逻辑来判断网络流是否被异常转发;控制器将收到的Packet-In发送给所述流表项查找引擎,所述流表项查找引擎查找这个产生这个Packet-In的交换机PIS和产生Packet-In的交换机的前一跳交换机BPIS;所述验证逻辑验证BPIS是否确实将网络流转发到PIS,以及PIS是否确实不存在能够处理这个流的流表项,进而判断网络流是否发生转发错误。

3.根据权利要求2所述网络流转发异常检测方法,其特征在于,所述表项查找引擎根据交换机上的流表项,为每一个交换机构建两棵前缀Trie树,所述前缀Trie树包括正向查找树和反向查找树,所述正向查找树和反向查找树用于根据一个数据包或者Packet-In快速获取所述PIS、BPIS以及它们上转发所述Packet-In对应的数据包的流表项,所述流表项查找引擎会随着所述流表项的下发或者修改而更新。

4.根据权利要求2所述网络流转发异常检测方法,其特征在于,所述验证逻辑包括:

如果所述BPIS不存在,即所述PIS的前一跳设备是主机,PIS上能够转发对应数据包的流表项CFR也不存在,则说明这个Packet-In是一条新流导致,是正常产生的;

如果BPIS不存在,但PIS上存在CFR,则说明CFR可能没有工作;假设控制器在一段时间内(τ)收到N个Packet-In;如果N的值很大,则说明CFR确实没有正常工作;否则只能发出警告,让管理员手动验证这类问题;

如果BPIS存在,但BCFR不存在,则说明这个Packet-In是被错误转发的网络流触发的;

如果BPIS存在,BCFR存在,但是这条流表项不将数据包转发到PIS,则说明这个Packet-In是被错误转发的网络流触发的;

如果BPIS存在,且BCFR存在,且将数据包转发到PIS,CFR也不存在;则说明这个Packet-In是正常的网络流产生的;

如果BPIS存在,BCFR存在,且将数据包转发到PIS,但PIS上存在CFR,则CFR可能没有工作;假设控制器在一段时间内(τ)收到N个Packet-In;如果N的值很大,则说明CFR确实没有正常工作;否则只能发出警告,让管理员手动验证这类问题。

5.根据权利要求1所述网络流转发异常检测方法,其特征在于,A2中,通过编辑控制层下发到数据层的流表项来确保被异常转发的网络流一定会产生Packet-In。

6.根据权利要求5所述网络流转发异常检测方法,其特征在于:在基于目的地址转发的网络中,控制器在它下发的流表项的匹配域中强制加入入端口域,入端口域字段所匹配的值等于所述流表项需要转发的网络流进入目的地址交换机的端口号,当所述入端口域字段与所述交换机端口号不一致时,在所述交换机上,被错误转发的网络流触发Packet-In。

7.根据权利要求5所述网络流转发异常检测方法,其特征在于:在基于源地址、目的地址转发的网络中,控制器不需要做任何其他额外操作。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1