zoukankan      html  css  js  c++  java
  • OpenFlow1.3.3 学习记录(持续更新)

    OpenFlow1.3.3 学习记录(持续更新)

    正在学习OpenFlow1.3,该篇笔记将日常更新,主要内容大致为官方文档的总结与翻译。

    交换机组件

    按照优先级顺序进行包匹配,如果匹配到流表项,则执行流表项中绑定的Instructions;如果没有匹配到流表项,将根据table-miss的配置进行操作,转发到controller,drop,next flow table。Instruction包括:actions或者修改流水线配置。

    OpenFlow Ports

    • Standard Ports
    • Physical Ports
    • Reserved Ports
      • ALL
        • 除了输入端口和设置OFPPC_NO_FWD端口
        • 只能作为out_port
      • CONTROLLER
        • out_port时:被封装packet-in
      • TABLE
        • 仅在作为packet_out中的output action中有效
      • IN_PORT
        • only: out_port
      • ANY
        • 没有指定端口时代表特殊含义;
        • 不能作为in_port, out_port
      • NORMAL
      • FLOOD

    端口改变

    Packet转发到不存在的端口,将执行drop操作;对于组表同样,但组表的表现可能会受liveness checking影响。

    当端口状态改变时,最好删除相关的流表项。

    OpenFlow流表

    Pipeline Processing

    交换机分两类:

    • OpenFlow-only
    • OpenFlow-hybrid 支持传统交换机和OpenFlow交换机操作

    流表至少有一个,从0开始,流水线从第一个流表开始处理。当匹配到流表项,则开始执行instruction设置的操作。流表项可以将一个包指向到另外一个流表项(GotoTable),但只能向前不能回退。最后一个流表项,不能被指向到其他流表项。

    如果没有匹配到流表项,根据table-miss流表项进行操作。如果没有table-miss设置,默认drop。

    Flow Table

    Match Fields Piority Counters Instructions Timeouts Cookie Flags
    • couters: 当匹配到包进行更新

    未完,待续

  • 相关阅读:
    python3 练习题 day04
    python3 装饰器
    python3 生成器和生成器表达式
    python3 列表/字典/集合推导式
    python3 迭代器
    python3 day04 大纲
    ES6 的数值扩展
    ES6中的解构赋值
    ES6中 let与const 的区别
    react的基本配置安装及使用babel
  • 原文地址:https://www.cnblogs.com/NinWoo/p/9368796.html
Copyright © 2011-2022 走看看