功能组合

SDN中基于多级流表的功能组合方法

定义:

  • 功能:在SDN控制器上运行的程序模块,通过控制器的北向接口下发流表。

  • 功能并行组合:将功能生成的表项合并,达到多个功能同时作用于数据包的效果,用A|B表示A与B并行组合;

  • 功能串行组合:将功能生成的表项合并,达到多个功能相继作用于数据包的效果,用A>>B表示A与B串行组合;

  • 组合策略:指定需要对特定的数据包进行的组合处理,用组合策略P=match(sricp=p)[A|B]表示对源IP对p的数据流执行并行组合;

功能组合算法

放置匹配字段和动作字段算法如下:


功能并行组合时,并行Map(A)和Map(B);
串行需要另外考虑一个问题: A的动作对B的匹配产生影响;若产生影响,则先对受到影响的匹配字段进行操作,然后进行表项放置。比如Load-Balabce和Route的串行组合,Load-Balance会修改数据包的目的IP,对Route的匹配产生影响;


实现

通过在控制平面增加功能组合模块实现。


0. 下达组合策略;

  1. 数据流到达后,与流表进行匹配。若成功则执行相应的处理,若失败则上传至控制器;
  2. 数据包上传至控制器后交由功能组合模块处理;
  3. 模块根据策略将数据包发送至相应的功能模块;
  4. 功能模块收到数据包后通过计算得到相应表项,下发至控制器;
  5. 控制器将接受到的功能表项组合为功能组合表项并下发至交换机;
  6. 同一个流的后续数据包根据流表进行处理。
原文地址:https://www.cnblogs.com/sunminming/p/7795947.html