跳至主要内容

什么是 OpenFlow?

OpenFlow 是一种开放标准的通信协议,它通过将控制平面与数据平面分离,让网络设备能够实现软件定义网络(SDN)。借助 OpenFlow,用户可以通过软件定义的网络交换机来控制网络流量。OpenFlow 标准是催生 SDN 的奠基性标准之一。组织可以利用 OpenFlow 来动态管理网络行为、实施灵活的路由策略,以及在无需修改硬件的情况下自动完成网络配置。

为什么 OpenFlow 很重要?

OpenFlow 是软件定义网络最早采用的核心协议之一,负责控制器与交换机之间的通信。该协议最初是斯坦福大学的一个内部项目,后来由 Open Networking Foundation 管理,如今则由 Linux 基金会管理。OpenFlow 为厂商中立的标准,可与支持该协议的硬件交换机供应商的设备实现互操作。

OpenFlow 通过流表操作实现网络可编程,而流表由集中式控制层分发到对应的交换机。流表规定了数据包在网络中的转发方式,其中包含 IP 地址、端口和投递规则。借助这些流表,每台交换机都能知道数据包下一步该发往何处。如果到达的数据包与流表中的详细信息不匹配,它将会被送往控制器,由控制器检查并决定下一步如何处理。

尽管如今 OpenFlow 通常已被抽象化,或被其他协议取代,但它在 SDN 的发展史上仍具有重要意义。

OpenFlow 如何运作?

OpenFlow 协议允许硬件交换机由软件定义网络控制,并由一个独立的控制平面统一协调。兼容 OpenFlow 的软件定义控制器通过南向 API 与 OpenFlow 交换机通信。控制器通过北向 API 从路由、负载均衡等软件定义网络应用中获取数据,再向交换机发送指令。同样,交换机也可以向控制器报告网络状态,控制器则把这些信息传递给网络应用,由网络应用决定下一步该怎么做。

OpenFlow 的关键组件有哪些?

OpenFlow 的运行需要四个主要组件。

OpenFlow 控制器

OpenFlow 控制器是一个软件定义的集中式控制层,负责跟踪整个网络的状态。为了保持容错能力,控制器可以构建为分布式系统。控制器由多家不同厂商提供,包括开源的 Floodlight 控制器和 OpenDaylight 控制器。

控制器既与硬件交换机通信,也与防火墙、路由器和负载均衡器等在网络流量控制中承担特定任务的 SDN 应用通信。

OpenFlow 交换机

支持 OpenFlow 协议的硬件交换机,其数据平面是可编程的。控制平面会向交换机发送消息和流表,使其能够准确处理网络数据包并做出转发决策。借助 OpenFlow,您可以用同一套协议管理来自不同厂商的硬件交换机。

安全通道

OpenFlow 要求控制器与交换机之间有一条安全通道,用于二者通信。OpenFlow 协议消息正是通过这条通道传输的。这些消息可以包括:查询交换机功能、配置交换机、将数据包转发给控制器或从控制器发出,以及修改流表。

流表

流表会被分发到交换机,并安装在设备上。控制器可以向交换机发送消息,以添加、删除或修改这些流表。交换机利用流表进行流量控制。每个流条目都包含匹配字段、优先级值、计数器和超时值。当数据包进入交换机时,交换机会将其与流条目进行匹配,并执行相应的操作。

OpenFlow 有哪些功能?

与其他 SDN 协议一样,OpenFlow 提供了许多传统网络管理所不具备的功能。

动态流控制

借助外部的集中式控制器,您可以在出现问题时使用 OpenFlow 执行网络操作。这些操作包括根据网络状态进行负载均衡、路径优化和重路由等。

网络可编程性

网络工程师可以创建自定义转发规则、策略和网络配置,并将它们传递给交换机。这样一来,网络就可以按需进行编程。

流量工程

根据控制器和流表的可用情况,您可以使用 OpenFlow 协议来执行流量工程任务,例如落实服务质量和优化延迟。

网络虚拟化

控制平面允许您在其控制的所有设备上实现网络虚拟化。这意味着,您可以根据需要创建、配置和删除虚拟网络。

OpenFlow 与 NETCONF 有何区别?

NETCONF 是一种用于管理网络设备的协议,支持添加、配置、删除交换机或其他设备。此外,NETCONF 也可以用于 SDN 操作。

NETCONF 通常用于网络设备的配置,但它可以与 OpenFlow 搭配使用,由 OpenFlow 负责整个网络的流量管理。

在许多基于云的现代 SDN 工具中,OpenFlow 和 NETCONF 等协议要么可供选择,要么已经内置在工具中。

AWS 如何支持您的软件定义网络需求?

AWS 提供现代化的软件定义网络服务,可为您的云和混合基础设施带来可编程、灵活的网络控制:

  • AWS 云 WAN 提供中央仪表板,您只需点击几下,即可在您的分支机构、数据中心和 Amazon Virtual Private Cloud (Amazon VPC) 之间建立连接,从而构建全球网络。
  • AWS Transit Gateway 通过中央枢纽连接您的 Amazon Virtual Private Cloud(VPC)和本地网络。这种连接方式简化了网络架构,并消除了复杂的对等连接关系。
  • Amazon Virtual Private Cloud(VPC)让您能够完全掌控自己的虚拟网络环境,包括资源放置、连接性和安全性。

立即创建免费账户,开始在 AWS 上使用软件定义网络。

Browse all cloud computing concepts

Browse all cloud computing concepts content here:

正在加载
正在加载
正在加载
正在加载
正在加载

Did you find what you were looking for today?

Let us know so we can improve the quality of the content on our pages