软件定义网络 - 快速指南

什么是软件定义网络?

软件定义网络 (SDN) 是一种构建网络的现代方法。通常,网络依赖于路由器和交换机等硬件设备。这些设备难以配置和管理。

您可以使用 SDN 通过将控制逻辑(控制平面)与物理设备(数据平面)分离来管理网络设备。借助 SDN,网络管理员可以使用软件从中央位置控制网络,以管理、自动化和优化网络。

软件定义网络的架构

软件定义网络围绕三个关键层构建。这些层中的每一层在网络中都有不同的功能。

软件定义网络架构

应用层

这是最顶层。它包括各种网络应用程序,如安全系统(防火墙)、负载平衡器和入侵检测系统。这些应用程序与 SDN 控制器通信以请求特定的网络行为,如路由、访问控制和流量优化。

控制层

控制层有 SDN 控制器。它充当网络的中央决策单元。它从数据平面中的设备收集信息并决定网络应如何运行。

控制器通过 API 与数据平面中的设备通信。它指导如何根据预定义的规则和策略转发数据。

基础设施层

基础设施层具有构成数据平面的物理和虚拟设备。这些设备(如交换机和路由器)负责根据 SDN 控制器给出的指令转发数据。它们不会对流量做出任何决定,而是执行从控制器收到的命令。

软件定义网络的组件

软件定义网络 (SDN) 有各种重要组件。

软件定义网络的组件

控制平面和数据平面分离

在 SDN 中,控制平面(做出路由决策)与数据平面(转发数据)分离。控制平面集中在 SDN 控制器中。它监督整个网络并向数据平面中的设备发送指令。数据平面设备(如交换机和路由器)遵循这些指令转发流量。

SDN 控制器

SDN 控制器是 SDN 架构的核心部分。它从网络设备收集信息,以决定如何路由数据。它将这些指令发送到数据平面中的设备。控制器有一个集中管理点来配置和优化网络。

SDN 网络设备

数据平面中的设备(如交换机和路由器)负责根据从控制器收到的指令转发流量。这些设备使用 SDN 控制器设置的规则在整个网络中高效转发数据。

OpenFlow 协议

SDN 中使用的主要协议之一是 OpenFlow。该协议用于与交换机和路由器通信,发送确定如何转发流量的流规则。OpenFlow 用于 SDN 提供的集中控制和可编程性。

SDN 如何工作?

在 SDN 中,网络控制与转发数据的硬件分离。通常,控制平面和数据平面都集成在每个网络设备中。SDN 通过将控制平面移至集中式 SDN 控制器来改变这种情况。数据平面保留在硬件设备上,如交换机,并根据控制器的指令转发数据。

例如,在正常网络中,当数据包到达交换机时。交换机将咨询其控制平面以决定将数据包转发到何处。而在 SDN 中,交换机只需遵循 SDN 控制器给出的指令。如果交换机不知道如何处理数据包。它会查询控制器。它会发回处理该数据包的规则。

SDN 的优点和缺点

使用 SDN 有几个优点和缺点,其中一些在下面重点介绍 −

SDN 的优点

  • 您可以使用软件对 SDN 进行编程和修改。
  • 网络管理员可以配置网络,而无需手动调整每个设备。
  • SDN 硬件更简单、更便宜,因为每个交换机只处理数据转发。
  • 您可以控制由 SDN 控制器集中管理的逻辑。
  • 它通过对流量和策略进行集中控制来提高安全性。
  • 您可以使用 SDN 控制器检测可疑的网络活动。

SDN 的缺点

  • SDN 依赖于集中控制器。因此它可能存在单点故障。
  • 如果中央控制器发生故障,整个网络都会受到影响。
  • 在非常大且坚固的网络中扩展 SDN 存在挑战。

SDN 与传统网络之间的差异

下表比较和对比了 SDN 和传统网络的主要功能,并强调了它们之间的差异 −

软件定义网络 传统网络
通过基于软件的控制器进行集中控制。 分布式控制。每个设备管理自己的操作。
它将控制平面与数据平面分开。 它将每个设备的控制平面和数据平面结合在一起。
它是可编程的和动态的。 它是不可编程的和静态的。
开放标准使不同供应商的设备能够实现互操作性。 专有且通常与单个供应商绑定。
更容易扩展并适应不断变化的业务需求。 扩展需要手动配置和硬件升级。
它使用集中式 API 来控制网络设备。 它使用特定于设备的配置方法,如 CLI 或 SNMP。

结论

软件定义网络 (SDN) 正在改变网络的设计、管理和运营方式。SDN 可以使用控制和数据平面集中控制、灵活性和自动化。SDN 在企业环境、云网络和数据中心的成本节约、可扩展性和效率方面具有多种优势。

SDN 代表了网络架构的重大转变。您可以采用动态和可编程的网络管理方法。它能够简化操作、降低成本并提高现代网络基础设施的性能。

SDN 与传统网络

管理和控制计算机网络有两种方法:软件定义网络 (SDN) 和传统网络。这两种方法在网络内高效数据流和连接的架构和实现方面存在许多差异。我们将在本章中讨论这些差异。

什么是软件定义网络 (SDN)?

软件定义网络 (SDN) 是一种现代网络方法。它使用软件应用程序来控制和管理网络。

SDN 使用基于软件的控制器集中控制整个网络,而不是依靠路由器和交换机等硬件设备来做出决策。

集中控制平面

控制平面(决策)和数据平面(流量转发)是分开的。您可以对其进行编程。SDN 用于创建虚拟网络并控制物理网络。它使用软件。

什么是传统网络?

传统网络用于专用硬件设备(如交换机、路由器和防火墙)来控制网络流量。这些设备中的每一个都独立运行,并且可以对流量做出自己的决定。这种技术已经很古老了,如今在许多组织中都在使用。

传统网络使用静态和基于硬件的架构。它具有集成到每个设备的控制和数据平面。如果您想在此网络中进行更改,则需要手动干预,这既耗时又困难。

分布式控制平面

传统网络的组件

  • 网络设备 − 有各种物理硬件设备,如路由器和交换机。您可以使用设备来管理网络内的流量。
  • 布线 − 有物理电缆。这些用于将设备相互连接。它们构成了网络的主干。
  • 协议 −有各种标准网络协议,如 TCP/IP 和以太网,用于设备之间的通信。

传统网络的优势

  • 完善 − 这是一种久经考验的方法。因为这些网络在许多网络管理员中使用多年。
  • 可预测的性能 − 它的网络性能是一致且可预测的。因为它基于特定的配置和硬件。
  • 熟悉度 − 它易于使用,因为只需极少的培训。

传统网络的缺点

  • 可扩展性有限 −由于依赖物理硬件,这些网络更难扩展。
  • 手动配置 − 如果您需要更改此网络,则需要手动执行此操作。但这可能很耗时,并且可能导致错误。
  • 刚性架构 − 这些网络很难适应,因为业务需求会发生变化。

SDN 与传统网络之间的差异

查看以下框图。它广泛描述了软件定义网络与传统网络的不同之处 −

SDN 与传统网络之间的差异

这些是 SDN 与传统网络之间的各种差异。下表突出显示了其中一些差异 −

软件定义网络 传统网络
它使用虚拟化方法来管理网络。 它依靠专用硬件设备来控制网络流量。
它使用基于软件的控制器进行集中控制。 它具有分布式控制,每个设备管理自己的操作。
它是可编程的。因此它具有高度的灵活性。 它是不可编程的。因此它不太能适应变化。
它支持开放接口以实现互操作性。 它依赖于来自单个供应商的专有系统。
数据和控制平面是分开的。 数据和控制平面在每个设备中组合在一起。
您可以自动进行配置。因此可以节省时间。 它需要手动配置。它需要更多时间。
它可以根据需要对特定网络数据包进行优先级排序。 它以相同的方式处理所有网络流量,没有优先级。
随着需求的发展,它更容易编程和重新编程。 一旦网络到位,就很难修改和重新编程。
由于简化了硬件需求,它具有成本效益。 由于专用设备,它的硬件成本更高。
它的结构管理复杂性较低。 它具有更高的结构复杂性。因此很难管理。
由于集中控制,更容易排除故障和报告问题。 由于分布式控制,其故障排除很困难。
其维护成本低于传统网络。 其维护成本高于 SDN。

结论

软件定义网络 (SDN) 和传统网络。您可以根据需要选择其中之一。SDN 灵活、可扩展且自动化。SDN 适用于大型动态网络。相比之下,传统网络更易于使用。您可以拥有更可预测的环境。

SDN 为您提供具有许多优势的现代方法。其中一些优势是成本效益和集中控制。但 SDN 也有复杂性和安全风险等缺点。传统网络是可靠的。但由于其刚性和手动特性,这些不太适合快速变化的业务环境。因此,您可以使用 SDN 代替传统网络。

软件定义网络 - 架构

软件定义网络 (SDN) 用于设计、构建和管理网络。传统网络依赖于硬件。但 SDN 使用软件来控制和管理网络。SDN 的架构是结构化且定义明确的组件和接口。这些组件协同工作,为您提供灵活性、集中控制和高效的网络管理。每个组件都具有其功能、输入和输出的作用。这些组件与操作系统的组件类似。

以下是 SDN 架构的重要组成部分 −

  • 控制平面
  • 数据平面
  • SDN 控制器
  • 应用层
  • 基础设施层
  • 开放接口
  • 网络操作系统 (NOS)
  • 可编程交换机

控制平面

控制平面是 SDN 的重要组成部分。它用于决定如何处理网络流量。在传统网络中,控制逻辑直接嵌入到每个网络设备中。但在 SDN 中,控制平面与物理硬件分离。它集中在 SDN 控制器内。因此,您可以进行集中管理并更轻松地进行配置。

控制平面

控制平面负责监督诸如确定数据的最佳路径、管理网络策略和处理路由协议等任务。它与数据平面通信以执行这些决策。数据在网络上正确转发。例如,如果由于拥塞而需要重定向数据包。然后,控制平面向相关交换机发送指令以进行动态调整。

控制平面的主要职责包括 −

  • 它管理路由和交换逻辑。
  • 它根据策略确定流量。
  • 它与 SDN 控制器通信以更新转发规则。
  • 它保持网络范围的策略以实现最佳数据流。

数据平面

数据平面也称为转发平面。它是 SDN 架构的一部分。它用于处理数据在网络中的实际移动。它由交换机和路由器等网络设备组成,这些设备负责根据从控制平面收到的指令转发数据包。

数据平面的功能是执行 SDN 中控制平面做出的转发决策。它不会自行做出任何路由决策。因此它用于简单且经济高效的硬件。例如,数据平面中的交换机可以接收来自 SDN 控制器的指令,通过特定端口转发发往特定 IP 地址的所有数据包。

数据平面的主要职责包括 −

  • 它根据流规则转发数据包。
  • 它实现从 SDN 控制器接收的转发表。
  • 它根据指示执行数据包过滤和转发等操作。
  • 它有效地管理不同网络设备之间的数据流量。

SDN 控制器

SDN 控制器充当 SDN 架构的"大脑"。它类似于操作系统中的命令解释器。它是一个集中控制整个网络的软件应用程序。因此管理员可以管理网络资源。

SDN 控制器与控制平面和数据平面通信,以收集有关网络状态的信息并向网络设备发出指令。

SDN 控制器

SDN 控制器具有集中控制点,可以更轻松地实施网络策略、流量管理和安全措施。它支持各种 API 与网络设备交互,如 OpenFlow、REST API 和其他专有协议。例如,当新设备加入网络时,SDN 控制器可以更新所有连接设备的路由规则以进行集成。

SDN 控制器负责这些活动 −

  • 它收集有关网络状况的实时信息。
  • 它管理流规则并将其推送到网络设备。
  • 它具有供管理员配置网络的用户界面或 API。
  • 您可以自动执行配置更新和策略等网络任务。

应用层

应用层是 SDN 架构的最顶层。它类似于操作系统中的用户级进程。此层具有各种应用程序,它们使用 SDN 控制器的功能来执行各种任务,例如流量管理、安全服务和负载平衡。

此层中的应用程序与 SDN 控制器通信以请求网络行为更改。例如,安全应用程序请求 SDN 控制器阻止某些类型的流量,而负载平衡器可以指示 SDN 控制器在网络路径之间分配流量。因此,网络管理员无需手动更改每个设备即可部署和管理复杂的服务。

以下是应用层的功能 −

  • 它从控制器请求特定的网络操作。
  • 它实施服务质量 (QoS) 和防火墙规则等策略。
  • 您可以自动化网络配置,以动态响应不断变化的条件。
  • 它根据实时分析监控和调整网络性能。

基础设施层

基础设施层称为物理层。它是 SDN 架构的基础。它具有网络设备——数据平面的物理和虚拟设备。这些设备(如交换机和路由器)用于根据 SDN 控制器的指令转发数据。

基础设施层类似于操作系统中的硬件层。SDN 控制器通过开放接口与设备交互。这种分离是为了获得更大的灵活性。因为您可以在不影响控制逻辑的情况下升级和更换物理硬件。例如,组织可以将旧交换机替换为具有更高容量型号的优质交换机,而无需重新编程网络。

以下是基础设施层的功能 −

  • 它根据 SDN 控制器设置的流规则转发数据。
  • 它支持通过开放接口与 SDN 控制器通信。
  • 物理和虚拟网络设备都可以在 SDN 环境中运行。
  • 它将新设备无缝集成到现有网络结构中。

开放接口

开放接口是 SDN 的重要组成部分。它用于在架构的不同层之间进行通信。这些接口(如 OpenFlow、REST API)充当 SDN 控制器与数据平面设备通信的通道。

使用开放标准和协议使 SDN 不受供应商限制。因此来自不同制造商的这些设备可以协同工作。网络运营商希望避免供应商锁定并构建可以根据需要进行调整的网络。例如,OpenFlow 用于 SDN 控制器在交换机上安装流规则,以指示应如何处理数据包。

开放接口的功能包括 −

  • 它提供了来自不同供应商的设备之间的互操作性。
  • 它提供了将新设备集成到网络中的功能。
  • 它为控制器和网络设备提供了一种标准化的通信方式。
  • 您可以使用自定义网络应用程序。

网络操作系统 (NOS)

网络操作系统 (NOS) 也是 SDN 架构的重要组成部分。它具有管理和控制整个网络的软件平台。NOS 具有 SDN 控制器运行、监控网络状况和做出决定的环境。

NOS 用于实时查看整个网络拓扑、跟踪每个设备的状态并将此信息提供给 SDN 控制器。它还可以在发生变化时管理配置任务。例如,当链接发生故障时,NOS 可以重新路由流量以最大限度地减少中断。

网络操作系统的功能包括 −

  • 维护网络拓扑的全局视图。
  • 管理流规则到所有网络设备的分发。
  • 协调不同 SDN 应用程序之间的活动。
  • 提供与 SDN 控制器和应用程序交互的 API。

可编程交换机

可编程交换机用作数据平面的构建块。您可以对这些交换机进行编程。SDN 控制器管理这些交换机。因此,您可以轻松升级网络。

例如,您可以指示可编程交换机优先处理视频流流量,而不是其他类型的流量。您可以适应新的流量模式,根据需要动态重新分配资源。

可编程交换机有多种功能 −

  • 它们执行 SDN 控制器提供的流规则。
  • 它们根据可编程规则转发流量。
  • 它们通过软件更新支持新协议和功能。
  • 它们通过智能流量管理提高网络性能。

结论

SDN 架构是一个结构化系统,将网络控制与数据转发分开。它还通过 SDN 控制器使用软件进行网络管理来集中决策。它充当管理进程、内存和设备的操作系统。

SDN 管理网络流量、配置和数据流。您可以创建、管理和扩展现代网络。它具有传统网络无法比拟的灵活性和控制力。

借助 SDN 控制器、可编程交换机和开放接口等组件,SDN 为高效网络提供了一条道路。

软件定义网络 - 控制器

软件定义网络 (SDN) 控制器是 SDN 架构中的基本组件。它用于通过集中控制来管理网络流量。路由器和交换机等网络设备使用分布式控制平面。这些设备中的每一个都管理自己的控制决策。

SDN 控制器对网络进行集中管理。SDN 控制器充当中心点。它的工作原理类似于操作系统管理硬件和软件交互的方式。

SDN 控制器

SDN 控制器负责多种功能并具有各种接口。该控制器充当 SDN 网络的"大脑"。它管理控制平面和数据平面之间的交互,以实现应用程序和网络设备之间的通信。我们将在本章中解释 SDN 控制器。

集中控制

在传统网络中,路由决策等控制功能分布在多个设备上。因此,网络管理可能很困难。但是,SDN 控制器将这些控制功能集中起来。SDN 将所有控制逻辑整合到一个软件应用程序中。因此,SDN 的网络管理更容易,因为您可以从一个位置修改所有网络行为。

SDN 控制器将控制平面从硬件设备上取下并将其作为软件运行。它使用此控件来管理数据平面。它保留在物理、虚拟交换机和路由器上。例如,当需要新的路由策略时,控制器可以在网络中的所有相关设备之间传播此策略。

通过 API 进行通信

SDN 控制器使用应用程序编程接口 (API) 与应用程序和网络设备进行通信。您可以在 SDN 架构的不同层之间进行交互。

通信分为两种类型的接口 −

北向接口

这些接口将 SDN 控制器与应用程序(如防火墙、负载平衡器、监控工具等)连接起来。因此,应用程序可以请求具有应执行的策略的特定网络和控制器。例如,负载平衡应用程序可以使用北向 API 要求控制器在多条路径上分配流量。

以下是 API 的功能 −

  • 应用程序可以通过控制器与网络交互。
  • 您可以配置网络设备。
  • 您可以根据不断变化的条件自动调整网络。

流量管理

SDN 控制器负责管理整个网络中的数据流。因此,数据包将根据预定义的策略和实时条件通过最有效的路径进行路由。流量管理是一项关键功能。因为它允许网络动态适应流量模式的变化。

例如,如果网络中的某个链接变得拥塞,SDN 控制器可以使用具有最小延迟和最大性能的替代路径自动重新路由流量。这种动态流量控制是使用 SDN 控制器而非传统网络方法的主要优势之一。因为它需要在传统网络方法中手动重新配置。

网络可见性和自动化

SDN 控制器可以集中查看整个网络。它用于管理员监控和管理网络性能。它对于故障排除、容量规划和安全监控等任务非常重要。SDN 控制器从所有连接的设备收集数据。它为网络运营商提供了流量模式、设备状态和问题的实时视图。

自动化是 SDN 控制器的另一个优势。您可以自动执行常规任务,如设备配置、网络监控和流量调整,而无需人工干预。例如,控制器可以在高峰使用时间调整给定应用程序的带宽分配,以实现一致的性能,而无需人工干预。

与网络可见性和自动化相关的一些重要活动是 −

  • 您可以监控实时流量和设备状态。
  • 您可以自动执行常规任务,如配置和更新。
  • 它具有网络优化的分析和见解。

安全注意事项

SDN 控制器的集中性具有多种优势。但它也面临各种安全挑战。由于控制器可以访问整个网络并可以更改网络。这是重要的安全点。如果控制器受到威胁,整个网络可能都处于危险之中。

网络管理员必须为 SDN 控制器实施强大的安全措施,如强大的身份验证机制、加密和访问控制,以减轻这些风险。只有授权人员才能访问和修改控制器设置。定期的安全审核和更新对于保护 SDN 控制器免受新出现的威胁是必要的。

以下是各种安全活动 −

  • 您可以为控制器访问实施身份验证和加密。
  • 您可以更新软件以修补漏洞。
  • 您可以监控可能表明存在安全漏洞的异常活动。

冗余和容错

许多网络在冗余设置中使用多个 SDN 控制器来确保高可用性和可靠性。因此,如果一个控制器发生故障并失去连接,则另一个控制器可以接管以防止网络中断。这种冗余对于持续可用性至关重要的大型网络非常重要。

例如,部署三个 SDN 控制器的集群是很常见的。如果主控制器遇到问题,则另一个备份控制器会立即接管控制以维持网络的稳定性和性能。因此,这种技术具有容错能力,也可以在控制器之间进行负载平衡以管理大规模流量。

SDN 控制器的示例

在商业和开源选项中,SDN 控制器有各种用途。其中一些如下所示 −

  • 商业 SDN 控制器 − 思科、瞻博网络、VMware 和 HP Enterprise 等供应商拥有具备企业级功能的 SDN 控制器,例如与现有网络管理工具集成以及支持大规模部署。
  • 开源 SDN 控制器 − 开源控制器(例如 OpenDaylight、ONOS(开放网络操作系统)和 POX)用于研究和自定义部署。您可以修改网络运营商控制器功能。

结论

SDN 控制器是软件定义网络架构的核心组件。它集中了网络控制并可以自动化动态流管理。您可以将控制逻辑与物理设备分开。因此,SDN 控制器简化了网络管理并为您提供了灵活、可扩展且适应性强的网络。

SDN 控制器具有网络运营商可以与之交互的界面,就像操作系统的控制面板一样。您还可以提高安全性并减少冗余。

软件定义网络 - 用例

软件定义网络 (SDN) 用于构建网络,您可以在其中集中控制平面并将其与数据平面分开。因此,它为您提供了网络运营的灵活性和效率。SDN 具有各种用例,在不同行业和环境中具有各种优势。这些用例扩展到数据中心、云计算、广域网 (WAN) 和网络虚拟化等领域。下面,我们将详细讨论其中一些用例。

网络虚拟化

网络虚拟化是 SDN 的第一个值得注意的用例。使用 SDN,您可以创建独立于物理网络运行的虚拟网络。在传统网络中,如果您想创建虚拟网络,则需要手动配置。但是在 SDN 中,您可以使用网络虚拟化进行编程。因此,您可以使用软件创建、修改和删除虚拟网络,而无需手动干预交换机和路由器。

SDN 中的每个虚拟网络都可以在其自己的环境中运行。每个虚拟网络都有其独特的地址空间、安全策略和流量管理规则。例如,您可以为不同部门创建单独的虚拟网络,以便使用相同的物理基础设施保护其流量。您可以使用 VXLAN 等封装技术实现这种分离。因此虚拟网络可以在物理网络之上运行。

SDN 在网络虚拟化中有各种好处。其中一些如下所示 −

  • 为不同部门提供独立的虚拟网络。
  • 与虚拟网络创建相比,程序控制更为灵活。
  • 它还增强了根据需要部署和删除虚拟网络的灵活性。

云计算

您还可以在云计算中使用 SDN。云服务提供商依靠 SDN 来动态管理和配置网络资源。SDN 具有支持按需、可扩展云服务所需的灵活性,因为您可以自动化网络基础设施。

例如,当云用户请求新的虚拟机和服务时,SDN 可以自动配置必要的网络资源,如 IP 地址、防火墙和负载平衡器。这些配置用于支持新实例。因此,您可以接受更改而无需手动干预。一旦不再需要资源,SDN 控制器可以自动释放这些资源。因此,它还为您提供了高效的资源利用率。

SDN 在云计算中的优势如下 −

  • 按需为新服务和虚拟机提供网络配置。
  • 自动化网络配置以减少人工工作。
  • 可扩展性以适应不断变化的工作负载和增长。

SD-WAN(软件定义广域网)

SD-WAN 是企业网络中的另一个 SDN 用例。传统 WAN 难以管理,因为连接多个远程站点(如分支机构和数据中心)非常复杂。这些通常需要昂贵且耗时的手动配置。因此,您可以将 SD-WAN 与 SDN 原则结合使用,通过软件集中控制和管理 WAN 流量。

借助 SD-WAN,您可以从中央控制器部署、配置和管理远程位置。例如,可以使用零接触配置使新的分支机构上线。SD-WAN 设备被运送到该位置。中央控制器可以自动配置这些设备。因此,您不需要现场技术专业知识,从而加快部署时间。您还可以加密站点之间的隧道,以提高安全性和更好的流量管理。因此,高优先级应用程序会获得所需的带宽。

使用 SD-WAN − 有多种优势

  • 您可以集中控制 WAN 流量来管理远程站点。
  • 您可以使用零接触配置来部署新位置。
  • 您可以使用加密隧道和流量优先级来增强安全性。

数据中心

您可以从中央控制器管理整个网络。它可以自动调整网络配置以满足不断变化的应用程序需求。例如,如果应用程序的流量突然激增。那么 SDN 控制器可以分配更多带宽以获得最佳性能。

数据中心中 SDN 的另一个优势是多租户。不同的客户可以在隔离环境中运行的同时共享相同的基础架构。这些可以拥有自己的网络配置、安全策略和资源分配,以进行互不干扰的活动。

SDN 在数据中心有各种优势。其中一些优势如下 −

  • 您可以集中管理网络资源。
  • 它具有动态资源分配以实现最佳性能。
  • 它具有针对多租户环境的安全隔离。

WAN 的流量工程

您可以在流量工程中使用 SDN,例如在连接大片地理区域数据中心的广域网 (WAN) 中。在一般的 WAN 中,流量可能难以优化,因为路由决策是由每个设备独立完成的。但有了 SDN,流量工程变得更加高效,因为 SDN 控制器可以全局查看网络,并可以根据全网状况实时引导流量。

例如,谷歌和微软等大型云提供商已经构建了由 SDN 驱动的 WAN,以优化其数据中心之间的流量。因此,如果某个链接发生故障并拥塞,SDN 控制器可以沿着最有效的路径动态重新路由流量,这样就不会出现任何链接过载的情况。

这些是 SDN 对流量工程的一些好处 −

  • 根据整体网络状况进行实时流量优化。
  • 动态重新路由流量以避免拥塞和链接故障。
  • 您还可以提高网络性能和资源利用率。

接入网络

SDN 原则也用于接入网络,如光纤到户 (FTTH) 和移动网络。通常,接入网络依赖于专用硬件。因此很难修改和升级。但是,如果您使用 SDN,网络运营商可以将控制平面与接入设备的数据平面管理分离。

例如,支持 SDN 的宽带接入 (SEBA) 可以使用 SDN 来管理光纤接入网络。您可以集中控制将家庭和企业连接到互联网以提供服务的设备。

SDN 在接入网络中具有多种优势。其中一些如下所述。 −

  • 您可以集中控制接入设备以降低管理复杂性。
  • 它具有更简单的服务配置和更新。
  • 您可以通过软件驱动的更新加速创新。

网络遥测

您可以在带内网络遥测 (INT) 中使用 SDN。通常,网络监控工具依赖于采样技术和手动检查。因此,这些工具可能很慢并且容易出错。但 SDN 能够在数据包穿越网络时直接从网络收集实时数据,以了解网络性能。

使用 INT,数据包携带遥测指令,因为它们会通过网络移动。沿路径的交换机将延迟、拥塞和路径选择等数据收集到数据包本身中。因此,您可以使用信息来分析和检测微爆发和其他网络问题。

SDN 用于网络遥测的一些优势如下 −

  • 您可以监控实时流量状况。
  • 它为您提供有关网络性能和延迟的详细见解。
  • 您可以使用从网络设备直接收集数据来改进故障排除。

结论

由于软件定义网络 (SDN) 的优势,它有各种用例。其中一些用例是网络虚拟化和云计算。它们用于管理数据中心、流量工程、接入网络控制等。SDN 提供了一般网络方法无法提供的灵活性、可扩展性和效率。您可以集中控制并在其核心上实现自动化。SDN 控制器充当网络的"大脑"。这些 SDN 用例向您展示了集中控制和软件驱动管理的价值。

软件定义网络 - 叶脊结构

软件定义网络 (SDN) 叶脊架构用于设计数据中心的可扩展高性能网络。叶脊结构优化数据流,实现跨网络设备的有效通信,就像 SDN 控制器的集中控制一样。

双层交换结构

叶脊架构中的双层交换结构有两种类型的交换机:叶交换机和脊交换机。网络中的每个设备都与其他每个设备进行可预测且低延迟的通信。这些交换机如下所述 −

叶交换机

这些是接入层交换机。它们连接机架内的服务器、防火墙、负载平衡器和其他设备。每个机架有两个叶交换机以实现冗余。因此,如果一个叶交换机发生故障,第二个交换机将保持连接。

主干交换机

主干交换机构成网络的核心。每个叶交换机连接到结构中的每个主干交换机,以创建完全网状拓扑。因此,流量最多以两跳的速度从一个叶交换机流向另一个叶交换机 - 叶到主干和主干到叶。

东西向流量(数据中心内设备之间的流量)在此架构中进行了优化,以实现低延迟通信。您可以将所有叶交换机连接到所有主干交换机。因此网络的流量分布均匀。

SD-Fabric 的功能

SD-Fabric 是基于 SDN 的叶-主干架构实现。它建立在 ONOS(开放网络操作系统)上。您可以管理第 2 层 (L2) 和第 3 层 (L3) 连接。它向您展示了如何使用 SDN 构建生产级网络。

第 2 层和第 3 层连接

SD-Fabric 支持 L2 功能,如 VLAN 和 Q-in-Q(双 VLAN 标记)。这些功能用于需要按服务类别隔离流量的接入网络。SD-Fabric 还支持跨 L3 结构的 L2 隧道,以便单标记和双标记 VLAN 在网络中移动。

就 L3 而言,SD-Fabric 支持 IPv4 和 IPv6 路由。它具有使用集中式多播树构造和 IGMP(Internet 组管理协议)处理单播和多播流量的功能,适用于需要加入和离开多播组的主机。

此外,SD-Fabric 还实现了重要的协议,如用于 IPv4 的 ARP(地址解析协议)和用于 IPv6 的 NDP(邻居发现协议)。 IPv4 和 IPv6 的 DHCP(动态主机配置协议)也支持动态 IP 地址分配。因此 SD-Fabric 可以处理内部服务器到服务器的流量和外部路由需求。

高可用性和可扩展性

SD-Fabric 结合了双归属、链路绑定和等价多路径 (ECMP) 路由等成熟技术,具有高可用性。在此配置中,每台服务器都连接到一对架顶式 (ToR) 交换机。每个叶交换机使用 ECMP 链路组连接到多个主干交换机。因此,即使一台交换机和链路发生故障,流量也会自动重新路由,从而实现冗余。因此,它可以保持网络性能。

就可扩展性而言,SD-Fabric 最多可支持 120,000 条路由和 250,000 条流。因此,您可以为其配置两个主干交换机和八个叶交换机。它最多支持四个机架的服务器。随着流量的增加,您可以向结构中添加更多脊交换机和叶交换机,而无需对网络配置进行重大更改。

叶脊结构中的分段路由

SD-Fabric 中使用的一项重要技术是分段路由 (SR)。分段路由告知流量如何在网络中转发,因为您可以将端到端路径分解为一系列分段。这些分段由标签表示。每个标签交换步骤都由交换机的转发平面使用。

多协议标签交换 (MPLS) 用于 SD-Fabric 中的分段路由。例如,当流量需要在不同机架中的两个主机之间传输时。然后,SD-Fabric 为每个路径段分配 MPLS 标签 - 叶到脊和脊到叶。MPLS 标签告知数据包使用网络。因此它到达目的地。

使用基于 MPLS 的分段路由可实现高效的流量。而 ECMP 可确保流量在多条路径上保持平衡,以防止任何单个链路过载。

路由和多播管理

SD-Fabric 还使用 SDN 原理处理路由和多播流量。SD-Fabric 根据网络的全局知识计算最佳路由和多播树,而不是运行分布式路由协议,如 OSPF(开放最短路径优先)和 PIM(协议独立多播)。然后将此信息推送到没有分布式协议的结构交换机。

例如,如果您想创建一个多播组。然后 SD-Fabric 控制器构建树并将其安装在相关交换机上。您可以使用 RESTful API 和命令行界面 (CLI) 与这些服务交互,以编程方式管理路由和多播组。

叶脊结构的优势

叶脊架构在数据中心和大型网络中具有多种优势。其中一些优势如下 −

  • 低延迟 − 两层设计确保网络中的任何设备只需两跳即可与另一台设备通信。因此,它最大限度地减少了延迟。
  • 高可用性 − 具有冗余连接和使用双归属和 ECMP 等技术。因此,网络可以处理链路和交换机故障而不会影响性能。
  • 可扩展性 − 叶脊结构可以通过根据需要添加更多叶和脊交换机来扩展。您可以添加这些而无需进行大量重新配置。
  • 高效负载平衡 − ECMP 路由在多条路径之间平衡流量。因此,没有一条链路会成为瓶颈。
  • 简化管理 − SDN 控制器(如 SD-Fabric 中的 ONOS)具有集中控制动态路由、策略管理和网络实时可见性的功能。

叶脊架构的缺点

叶脊架构也有一些缺点。其中一些缺点如下 −

  • 成本 − 如果您想实现完全网状的叶脊架构。那么您需要像大型部署一样在交换机和互连方面进行投资。
  • 布线复杂性 − 随着交换机数量的增加,将每个叶连接到每个主干所需的布线会变得难以管理。
  • 关注东西向流量 − 叶脊架构擅长处理东西向流量。但这些可能需要更多设计考虑来处理内部和外部网络之间的南北流量。

结论

使用 SDN 原则实现 Leaf-Spine 结构时,它具有多种优势。Leaf-Spine 结构集中连接并优化流量,就像 SDN 控制器集中网络控制一样。它为可扩展以满足数据中心需求的动态网络奠定了基础。您可以利用分段路由、ECMP 和集中路由等。SD-Fabric 展示了 SDN 如何将一般网络设计转变为灵活且性能良好的基础设施。Leaf-Spine 结构具有负载平衡和可用性等优势。

软件定义网络 - 网络虚拟化

网络虚拟化与软件定义网络 (SDN) 集成时用于网络。您可以创建独立于物理硬件运行的虚拟网络。网络虚拟化将网络功能与物理设备分离,以实现高效的网络管理。这就像 SDN 控制器如何集中控制网络设备一样。

网络虚拟化

网络虚拟化将网络服务与路由器和交换机等物理设备分离。您可以将这些功能抽象为软件。您可以创建在物理网络之上运行的虚拟网络。这些虚拟网络可以独立运行。如此多的虚拟网络共存于同一物理硬件上,以至于单个物理网络被划分为多个虚拟层。

网络虚拟化

路由器和交换机等物理设备仍然负责在虚拟化网络中转发流量。但对网络功能(如路由、交换和安全策略)的控制已转移到基于软件的虚拟控制层。因此,可以实现与服务器虚拟化相同的动态、灵活和可扩展的网络管理。

网络虚拟化的架构

与 SDN 架构一样,网络虚拟化的架构有三层。这些层协同工作,将网络功能与物理基础设施分离。

这些层还创建了一个灵活且由软件驱动的网络环境 −

1.应用层

在此层中,网络虚拟化应用程序与虚拟网络控制器通信以满足网络要求。这些要求包括虚拟机 (VM) 和其他工作负载应如何相互连接和交互。应用程序定义网络策略,如 VLAN、防火墙规则和负载平衡配置等。然后,这些策略将传递到控制层进行实施。

2. 控制层

网络虚拟化中的控制层由虚拟网络控制器管理。此层集中控制器将应用程序层的高级要求转换为给定的网络配置。您可以创建和管理虚拟网络元素,如虚拟交换机、虚拟路由器和安全策略。因此,网络资源将根据定义的策略进行分配。

3. 基础设施层

此层由物理网络组件组成,如交换机、路由器和服务器。基础设施层充当虚拟化网络中的数据包转发背板。控制和数据平面功能被分离并由更高层的软件处理。

网络虚拟化覆盖,如 VXLAN(虚拟可扩展 LAN)和 GENEVE(通用网络虚拟化封装),用于创建虚拟网络层。这些覆盖将虚拟网络寻址与物理网络分离,以便在数据中心内移动虚拟机而不会破坏网络配置。

虚拟交换机和数据平面

网络虚拟化的核心是虚拟交换机。虚拟交换机驻留在物理主机上,管理虚拟机和外部网络之间的数据包转发。最常用的虚拟交换机之一是 Open vSwitch (OVS)。它部署在专有和开源网络虚拟化系统中。

虚拟交换机在网络虚拟化的数据平面中很重要。它具有转发规则,以确保根据虚拟网络配置将数据包传送到其预期目的地。在许多情况下,数据平面还以跨虚拟交换机的分布式方式处理网络服务,如防火墙和负载平衡。

例如,您可以直接在虚拟交换机内实现虚拟防火墙。因此,虚拟机之间的流量可以在源头进行过滤,而无需通过外部硬件防火墙。这种分布式方法可以提高性能,因为它可以减少延迟并最大限度地减少对外部网络跳数的需求。

高可用性和可扩展性

网络虚拟化增强了网络可扩展性和可用性,因为虚拟网络可以动态配置和管理,而不会影响物理基础设施。这种控制分离使网络能够根据需要增长。新的虚拟网络和设备可以在几分钟内添加,而不是几天。

为了保持高可用性,虚拟网络设计有冗余路径和分布式控制机制。它就像在叶脊架构中一样,可以动态地重新路由网络流量以防止故障。在网络虚拟化中,流量可以在虚拟路径之间转移,以确保持续的服务可用性,即使在物理设备和链路发生故障的情况下也是如此。

随着越来越多的工作负载和应用程序部署在虚拟化网络中。系统可以通过添加更多虚拟机、虚拟交换机甚至整个虚拟网络来扩展。因此,您可以扩展其网络容量,而无需添加大量物理基础设施。

SDN 在网络虚拟化中的作用

软件定义网络 (SDN) 在管理网络虚拟化方面发挥着重要作用。SDN 控制器可以集中控制物理和虚拟网络元素。因此,可以根据应用程序需求和流量状况实时调整网络配置。

SDN 控制器使用命令来管理虚拟网络,以虚拟交换机并在物理和虚拟网络之间路由流量。因此,即使虚拟机在网络中移动,流量也能高效流动。

SDN API 允许应用程序与虚拟网络交互,以自动执行配置、策略管理和实时监控。这些 API 充当虚拟网络控制层和物理基础设施之间的桥梁,用于两层之间的通信。

您可以将 SDN 可编程性和集中控制与网络虚拟化相结合,以将功能与硬件分离,企业可以创建能够改变业务需求的敏捷、响应迅速的网络。

网络虚拟化的优势

网络虚拟化在网络环境中具有各种优势。其中一些优势如下 −

  • 提高灵活性 − 您可以在几分钟内创建、修改和删除虚拟网络。因此,您可以非常快速地响应不断变化的应用程序需求。
  • 节省成本 − 您可以将网络功能整合到虚拟基础设施上。因此,它可以减少对昂贵硬件(如专用路由器和交换机)的需求。
  • 简化管理 − 虚拟网络环境是集中管理的。您可以从单一控制点定义和执行整个基础架构的网络策略。
  • 可扩展性 − 随着新工作负载的部署,虚拟网络可以动态增长。因此,无需更改物理网络基础架构。
  • 提高安全性 − 虚拟网络可以分割为隔离环境,以保证不同虚拟机和应用程序之间的流量安全。微分段等策略允许对虚拟机之间的网络通信进行细粒度控制。

网络虚拟化的缺点

这些是网络虚拟化的一些缺点 −

  • 复杂性 − 当您将网络虚拟化与现有物理网络集成时,实施网络虚拟化可能会很复杂。因此,管理虚拟覆盖和物理底层需要技能和工具。
  • 性能开销 − 虚拟化网络功能可能会给主机服务器带来更多处理开销。例如,虚拟交换机可能会消耗 CPU 资源,从而影响性能。
  • 兼容性问题 − 并非所有物理网络设备都支持虚拟网络使用的覆盖和封装方法。它可能会使与旧系统的集成变得复杂。

软件定义网络与网络虚拟化之间的区别

功能 SDN NV
控制平面与转发平面 SDN 将控制平面和转发平面分开,以便进行集中管理。 NV 将网络功能与硬件分离,以实现虚拟网络。
网络焦点 SDN 管理整个网络基础设施和服务。 NV 专注于在共享硬件上创建和管理虚拟网络。
功能范围 SDN 在整个网络中具有广泛的功能。 NV 专注于路由、防火墙和低级网络功能。
主要用例 SDN 主要用于数据中心和云环境。 服务提供商和运营商使用 NV 进行网络服务虚拟化。
技术基础 SDN 集中控制和可编程性。 NV 虚拟化网络服务,如路由和负载平衡。
通信协议 SDN 使用 OpenFlow 进行设备控制器通信。 NV 使用 VXLAN 和 GENEVE 等覆盖层进行网络封装。
标准和治理 SDN 由开放网络基金会 (ONF) 支持。 NV 由 ETSI NFV 工作组管理。
支持者和倡导者 SDN 由企业硬件和软件提供商支持。 NV 得到电信服务提供商的大力支持。
发起者 SDN 项目由企业 IT 推动。 NV 项目由服务提供商和运营商领导。
硬件使用 SDN 应用程序在行业标准服务器或交换机。 NV 应用程序在虚拟化 x86 服务器上运行。
成本效率 SDN 通过最大限度地减少专用设备需求来降低硬件成本。 NV 通过用虚拟功能替换物理设备来降低成本。
可扩展性和灵活性 SDN 可动态扩展并根据流量需求进行调整。 NV 通过添加虚拟网络进行扩展,而无需改变物理基础设施。
主要应用程序 SDN 用于网络、云编排和流量管理。 NV 用于虚拟路由器、防火墙和内容交付网络(内容分发网络)。

结论

网络虚拟化(与 SDN 非常相似)用于设计网络。它将网络功能与物理基础设施分离,并创建基于软件的虚拟网络。它将控制平面和数据平面分离。网络虚拟化是可扩展、灵活且可编程的网络。网络虚拟化和 SDN 的结合可用作构建敏捷、经济高效且安全的网络的平台。网络虚拟化支持对虚拟网络的集中控制和管理,就像 Leaf-Spine 结构集中和优化物理网络中的流量一样。

软件定义网络 - 接入网络

接入网络用于为家庭、企业和移动设备提供互联网连接。当您将它们与软件定义网络 (SDN) 集成时。那么这些接入网络将变得灵活、高效且更易于管理。因为 SDN 集中控制,就像网络虚拟化将网络功能与物理设备分离一样。

什么是接入网络?

接入网络是网络的一部分,它直接向最终用户提供互联网连接。这些网络对于弥合最终用户设备与更广泛的互联网基础设施之间的差距非常重要。您还可以使用 SDN 来访问网络。SDN 对网络的控制,就像在数据中心部署 SDN 所看到的好处一样。

有两种类型的接入网络可从 SDN 集成中受益。这些是 −

  • 无源光网络 (PON) − PON 用于光纤到户 (FTTH) 服务。它使用无源分路器将光信号从 ISP 中心局的光线路终端 (OLT) 通过光网络单元 (ONU) 分配到多个家庭。
  • 无线接入网络 (RAN) − RAN 用于移动蜂窝网络。基站通过无线电频率将移动设备连接到互联网。这些网络用于无线通信。

这些内容将在下面简要解释 −

无源光网络 (PON) 中的 SDN

在无源光网络 (PON) 中,单个 OLT 使用无源分路器连接多个家庭和企业。它无需有源电子设备即可引导光信号。总体而言,PON 管理是硬件密集型的,但灵活性有限。

无源光网络中的 SDN

使用 SDN,控制平面与物理设备分离,以便对 OLT 和 ONU 进行集中式、软件驱动的管理。

集中式管理

SDN 集中控制 OLT 和 ONU。因此,ISP 可以从单个控制点管理数千个客户连接。它可以动态配置服务、分配带宽和调整网络策略。

动态服务配置

使用 SDN,服务提供商可以自动为客户配置新服务,而无需手动配置。当新客户连接到网络时。然后,SDN 控制器可以自动设置适当的服务级别和策略。

服务质量 (QoS)

SDN 在 PON 网络中具有更精确的 QoS 管理。服务提供商可以确保关键流量(如视频流和语音呼叫)优先于不太敏感的流量。

无线接入网络 (RAN) 中的 SDN

无线接入网络 (RAN) 通过基站将移动设备连接到互联网。这些基站通过无线电频率传输数据。通常,每个基站独立运行并管理自己的无线电资源,以决定切换、负载平衡和频谱使用情况。

无线接入网络中的 SDN

SDN 将这些功能集中起来,以便更有效地管理移动网络。

集中控制

SDN 允许对基站进行集中控制,以便全面了解网络状况并更有效地分配资源。这确保了对有限的无线电频谱进行更好的管理,并在用户在基站之间移动时改善切换。

移动性管理

借助 SDN,网络可以跟踪移动设备的实时位置并管理基站之间的切换。这为在覆盖区域之间移动的用户提供了更可靠的连接和更少的延迟。

动态频谱分配

SDN 允许动态管理无线电频谱。它根据网络需求实时调整频率分配。这确保网络可以处理更多用户,同时保持高流量区域的性能。

接入网络中的 SDN 架构

接入网络(如数据中心)中的 SDN 架构跨越三层:应用层、控制层和基础设施层。这些层协同工作,将控制与物理硬件分离,并创建软件定义的网络环境。

应用层

在此层中,应用程序与 SDN 控制器通信以定义网络策略和服务要求,例如带宽分配、安全策略和流量管理规则。这些策略被传递到控制层进行实施。

控制层

SDN 控制器位于控制层,管理网络中的所有物理设备。它将应用层的高级策略转换为 OLT、ONU、基站和其他设备的特定配置。

基础设施层

此层具有物理硬件,如 OLT、ONU 和基站。这些设备负责转发流量。控制功能由更高级别的 SDN 控制器管理。

SDN 提高了 PONRAN 的灵活性和可扩展性 −

  • PON 中,SDN 使多个服务提供商的虚拟 OLT 能够共享相同的物理基础设施,同时保持对其服务的单独控制。
  • RAN 中,SDN 有助于将一般基站分解为分布式单元 (DU) 和中央单元 (CU),以实现高效的资源管理并提供 5G 等高级服务的能力。

接入网络中 SDN 的优势

接入网络中 SDN 具有多种优势。其中一些优势如下 −

  • 提高敏捷性 −您可以创建和更改网络服务以满足用户需求。
  • 节省成本 − 由于您可以使用虚拟化网络功能,因此它减少了对昂贵硬件的需求。
  • 简化管理 − SDN 集中控制。因此,从一个地方管理整个网络很容易。
  • 可扩展性 − 网络可以在不改变物理基础设施的情况下增加。
  • 改进的 QoS − SDN 有助于确保语音和视频等重要服务获得所需的带宽。

接入网络中 SDN 的缺点

接入网络中的 SDN 也有一些缺点。其中一些缺点如下所示 −

  • 复杂性 −当您使用较旧的物理网络时,设置 SDN 可能很困难。
  • 性能开销 − 虚拟化网络功能有时会因为需要额外的处理而减慢速度。
  • 安全风险 − 由于控制是集中的。因此,如果 SDN 控制器被黑客入侵,整个网络可能会受到影响。

结论

SDN 正在通过集中控制、灵活性和可扩展性将接入网络转变为 PON 和 RAN 系统。您可以将控制与物理硬件分离。SDN 允许服务提供商有效地管理他们的网络。您还可以为客户提供高质量的服务。重要的是,下一代技术(如 5G 接入网络)可以使用 SDN。借助 SDN,接入网络易于编程、适应,并且能够提供动态服务。