什么是 OpenFlow?
什么是 OpenFlow?
OpenFlow 是一种开放标准的通信协议,它通过将控制平面与数据平面分离,让网络设备能够实现软件定义网络(SDN)。借助 OpenFlow,用户可以通过软件定义的网络交换机来控制网络流量。OpenFlow 标准是催生 SDN 的奠基性标准之一。组织可以利用 OpenFlow 来动态管理网络行为、实施灵活的路由策略,以及在无需修改硬件的情况下自动完成网络配置。
为什么 OpenFlow 很重要?
OpenFlow 是软件定义网络最早采用的核心协议之一,负责控制器与交换机之间的通信。该协议最初是斯坦福大学的一个内部项目,后来由 Open Networking Foundation 管理,如今则由 Linux 基金会管理。OpenFlow 为厂商中立的标准,可与支持该协议的硬件交换机供应商的设备实现互操作。
OpenFlow 通过流表操作实现网络可编程,而流表由集中式控制层分发到对应的交换机。流表规定了数据包在网络中的转发方式,其中包含 IP 地址、端口和投递规则。借助这些流表,每台交换机都能知道数据包下一步该发往何处。如果到达的数据包与流表中的详细信息不匹配,它将会被送往控制器,由控制器检查并决定下一步如何处理。
尽管如今 OpenFlow 通常已被抽象化,或被其他协议取代,但它在 SDN 的发展史上仍具有重要意义。
OpenFlow 的关键组件有哪些?
OpenFlow 的运行需要四个主要组件。
OpenFlow 控制器
OpenFlow 控制器是一个软件定义的集中式控制层,负责跟踪整个网络的状态。为了保持容错能力,控制器可以构建为分布式系统。控制器由多家不同厂商提供,包括开源的 Floodlight 控制器和 OpenDaylight 控制器。
控制器既与硬件交换机通信,也与防火墙、路由器和负载均衡器等在网络流量控制中承担特定任务的 SDN 应用通信。
OpenFlow 交换机
支持 OpenFlow 协议的硬件交换机,其数据平面是可编程的。控制平面会向交换机发送消息和流表,使其能够准确处理网络数据包并做出转发决策。借助 OpenFlow,您可以用同一套协议管理来自不同厂商的硬件交换机。
安全通道
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