文章目录
- 软件定义网络SDN由斯坦福大学N.McKeown于2009年首先提出。
- 谷歌于2010~2012年的数据中心网络B4进行了运行验证
- 优点:
- 提高网络带宽利用率;
- 网络运行更加稳定;
- 管理更加高效简化;
- 运行费用明显降低。
4.10.1 SDN与协议OpenFlow
注意:
- SDN不是OpenFlow
- SDN未规定必须使用OpenFlow
1. 协议OpenFlow
2. OpenFlow数据层面
匹配+动作:
-
数据层面的分组交换机或OpenFIow交换机完成“匹配+动作”。
-
称为广义转发。
流表:
- 流表:规定“匹配+动作”。
- 流:穿过网络的一种分组序列,而在此序列中的分组都共享分组首部某些字段的值。
流表由远程控制器管理:
SDN远程控制器通过一个安全信道,使用OpenFIow协议来管理OpenFlow交换机中的流表。
流表结构:
- 首部字段值:一组字段(12个),用来使入分组的对应首部与之相匹配。 匹配不上的分组被丢弃,或发送到远程控制器做更多的处理。
- 计数器:一组计数器,可包括已经与该表顶匹配的分组数量,以及从该表项上次更新到现在经历的时间。
- 动作:一组动作。当分组匹配某个流表顶时,把分组转发到指明的端口, 或丢弃该分组,或把分组进行复制后再从多个端口转发出去,或重写分组的首 部字段(第二、三和四层的首部字段)等。
例子:
简单转发:
负载均衡:
防火墙:
可见,广义转发表具有多样性和灵活性。其优点是显而易见的。
4.10.2 SDN体系结构
1. SDN体系结构的四个关键特征
- 基于流的转发。流表规定转发规则。
- 数据层面与控制层面分离。二者不在同一个设备中。
- 网络控制功能位于数据层面交换机之外,用软件实现。
- 可编程的网络。
2. SDN与传统网络的差别
4.10.3 SDN控制器
通信层:
- 完成SDN控制器与受控网络设备之间的通信。
- 通信层与数据层面的接口叫做南向接口,基本上采用OpenFlow。
网络范围的状态管理层:
- 完成核心功能。
- 管理和维护链路、主机、交换机等网络状态;
- 确定和维护流表等。
到网络控制应用程序层的接口:
- SDN控制器与网络控制应用程序交互的接口称为北向接囗。
- 该API接口允许网络控制应用程序对状态管理层里的网络状态和流表进行读写操作。
参考资料:《计算机网络(第8版)》—— 谢希仁。