在 SDN 控制器中,当一个新的数据包到达基于 OpenFlow 的路由器或交换机并且在 OpenFlow 流表中没有找到匹配的流条目时,SDN 控制器会做什么?它是否只是将该数据包转发到目的地并在流表中安装其相应的流条目?如果是这样,为什么不出于安全原因放弃它?
SDN控制器如何处理未知数据包?
网络工程
思科
路由
路由器
专用网
开放流
2021-07-17 22:43:53
2个回答
当在没有关联规则的 SDN 交换机上接收到数据包时,它会被转发到控制器。现在,控制器可以选择丢弃它,或者做一些特殊的事情(比如记录它然后转发)。此行为是实现许多 Openflow 功能(例如学习开关)的关键。
https://github.com/mininet/openflow-tutorial/wiki/Create-a-Learning-Switch
该控制器没有做任何事情的时候了-它不知道该事件已经发生。要做出的初始决定必须由接收到它无法匹配的数据包的设备做出。它可能决定(由于配置)将该数据包发送到控制器,但简单的数学表明这不会扩展(与设备的总前面板吞吐量相比,管理接口非常慢),因此默认情况下不匹配数据包被丢弃。
如果设备将数据包发送到控制器(或者,更有可能只是前一百个字节左右),那么控制器当然可以自由地对这些数据做任何它喜欢的事情。
其它你可能感兴趣的问题