数据中心网络系列(2)--openflow

Openflow

简述

随着互联网的发展,对于网络的要求越来越高,网络技术的变革显得尤为重要,但由于如今的网络过于依赖设备和协议,不易于进行网络技术的研究。网络设备厂商将设备与协议绑定,形成一个不开放的环境,让他们开放平台似乎是不可能的事,并且也没有有效的途径在生产网络上实验新的技术。这导致了网络技术的发展停滞不前。

为了解决上述问题,Openflow应运而生,其主要实现以下的目标:

  • 贯彻高性能和低成本的需求
  • 支持范围广泛的研究
  • 保证隔离实验和生产网络
  • 与设备厂商封闭平台需求保持一致

组成

现代以太网交换机和路由器包含流表来实现防火墙、NAT、QoS和收集策略,但每个厂商的设备的流表都不一样,缺乏统一兼容的协议。因此Openflow提供一个开源的协议来对流表进行编程。如此,管理员可以控制不同的流,选择数据包的路由和处理接受的包,这样可以隔离生产和实验测试网络,也可以进行新协议的研究。

一个Openflow交换机由三部分组成:

  • 一个流表,和与每条流绑定的行为(指明如何处理流)
  • 一个加密通道,连接交换机和控制器,命令和数据包通过这个通道进行传输
  • Openflow协议,提供开源和标准方法进行控制器和交换机通信

Openflow-scope.png

专用Openflow交换机是集成Openflow协议和接口,但不支持L2和L3交换的商用交换机。专用Openflow交换机的每条流记录必须包含三个基本的行为:

  • 向特定端口转发这条流的数据包
  • 封装和向控制器转发数据包
  • 抛弃数据包

流表中每条流记录包括:

  • 定义流的数据包头
  • 定义处理的行为
  • 策略,跟踪数据包

而其他支持Openflow交换机(在原来L2和L3交换基础上增加Openflow特性)必须支持:在交换机原来的处理管道中转发流数据包。且交换机必须隔离生产和实验测试网络。

Openflow switches

控制器负责在流表中添加和移除流记录,它可以是运行在PC上的简单应用。

Openflow应用

  1. 网络管理和接入
  2. VLANs
  3. 移动无线VOIP客户端
  4. 无IP网络

Segment Routing

简介

OpenFlow作为最主要的SDN协议,希望以一种全新转发协议颠覆现有以IP、MPLS网络架构。但是,这种激进的演进方式没有得到设备厂家及电信运营商的支持,通过对现有网络协议进行扩展和优化,推动现有网络平滑演进,实现网络开放的目标才是更加可行的选择。

Segment Routing就是这样的背景下,由IETF推动的支持SDN架构的新型路由转发协议。目前,Segment Routing还处于草案阶段,但是已经形成了完整的体系架构,并得到了大部分设备厂家的支持。

Segment Routing(SR)是一种源路由机制,用于优化IP、MPLS网络能力,可使网络具有更高的可扩展性,并以更简单的方式提供TE、FRR、MPLS VPN等功能。SR为网络提供呵呵上层应用快速交互的能力。

工作原理

和MPLS网络 类似,SR以标签交换为基础,只是对IGP协议进行简单的扩展。在SR网络中,通过Segment表示网络前缀,包括Nodal Segment(全局标签)和Adjacency Segment(本地标签)。通过将Nodal Segment和路由前缀相关联,我们可以通过最短路径到达任意节点,而转发路径是一条还是等价多路径负载分担,则取决于网络的IGP拓扑。