高级OpenFlow主题:Ryu控制器与静态路由实现
1. Ryu中的OpenFlow操作
Ryu是一个强大的SDN控制器框架,在Ryu代码中有两个基础组件值得关注:
- ryu.base.app_manager :它是集中管理Ryu应用的组件。 ryu.base.app_manager.RyuApp 是所有Ryu应用继承的基类,它为Ryu应用提供上下文,并在应用间路由消息。同时,它包含 send_event 和 send_event_to_observers 等方法来触发OpenFlow事件。
- ryu.controller : ryu.controller.controller 处理来自交换机的连接,并将事件路由到合适的实体。其中, ryu.controller.ofp_event 是OpenFlow事件的定义, ryu.controller.ofp_handler 是OpenFlow事件的处理程序。Ryu应用使用 ryu.controller.handler.set_ev_cls 装饰器来注册监听特定事件。
每个Ryu应用都有一个先进先出的事件接收队列,并且Ryu应用是单线程的,线程会不断从队列中取出事件并调用相应的事件处理程序。下面是两个处理OpenFlow事件的示例:
from ryu.base import ap
超级会员免费看
订阅专栏 解锁全文
1045

被折叠的 条评论
为什么被折叠?



