软件定义网络 - 快速指南



什么是软件定义网络?

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

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

软件定义网络的架构

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

Architecture of Software-Defined Networking

应用层

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

控制层

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

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

基础设施层

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

软件定义网络的组件

软件定义网络 (SDN) 有许多重要的组件。

Components of Software-Defined Networking

控制平面和数据平面分离

在 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 使用基于软件的控制器集中控制整个网络,而不是依赖于路由器和交换机等硬件设备来做出决策。

Centralizes Control Plane

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

什么是传统网络?

传统网络使用专用的硬件设备(如交换机、路由器和防火墙)来控制网络流量。这些设备中的每一个都独立运行,并且可以对流量流做出自己的决策。这项技术比较旧,但如今许多组织仍在使用它。

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

Distributed Control Plane

传统网络的组件

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

传统网络的优点

  • 完善成熟 - 这是一种经过验证的方法。因为这些网络已被许多网络管理员使用多年。
  • 性能可预测 - 其网络性能一致且可预测。因为它基于特定的配置和硬件。
  • 熟悉易用 - 它易于使用,因为所需的培训最少。

传统网络的缺点

  • 可扩展性有限 - 由于这些网络依赖于物理硬件,因此难以扩展。
  • 手动配置 - 如果需要更改此网络,则需要手动执行此操作。但这可能既费时又容易出错。
  • 架构僵化 - 这些网络难以适应不断变化的业务需求。

SDN 和传统网络的区别

请查看以下框图。它以一种广泛的方式描述了软件定义网络与传统网络的不同之处 -

Difference between SDN and Traditional Network

SDN 和传统网络之间存在多种差异。下表突出显示了其中一些差异 -

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

结论

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

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

软件定义网络 - 架构

软件定义网络 (SDN) 用于设计、构建和管理网络。传统网络依赖于硬件,而 SDN 使用软件来控制和管理网络。SDN 的架构由结构化且定义良好的组件和接口构成。这些组件协同工作,提供灵活性和集中控制,并实现高效的网络管理。每个组件都有其特定的角色、功能、输入和输出。这些组件类似于操作系统的组件。

以下是 SDN 架构的重要组件:

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

控制平面

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

Control Plane

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

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

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

数据平面

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

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

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

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

SDN 控制器

SDN 控制器充当 SDN 架构的“大脑”,类似于操作系统中的命令解释器。它是一个软件应用程序,集中控制整个网络,使管理员能够管理网络资源。

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

SDN Controller

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 应用程序之间的活动。
  • 提供 API 用于与 SDN 控制器和应用程序交互。

可编程交换机

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

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

可编程交换机具有以下功能:

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

结论

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

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

借助 SDN 控制器、可编程交换机和开放接口等组件,SDN 为构建高效的网络铺平了道路。

软件定义网络 - 控制器

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

SDN 控制器提供网络的集中式管理。SDN 控制器充当中央控制点,其工作方式类似于操作系统管理硬件和软件交互的方式。

SDN Controller

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 和惠普企业等供应商拥有具有企业级功能的 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的广域网来优化其数据中心之间的流量。因此,如果某个链路发生故障或出现拥塞,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(互联网组管理协议)进行单播和多播流量的功能,用于需要加入和离开多播组的主机。

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

高可用性和可扩展性

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

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

叶脊结构中的分段路由

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

SD-Fabric中的分段路由使用多协议标签交换(MPLS)。例如,当流量需要在不同机架中的两个主机之间传输时。然后,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原理实现叶脊结构时,它具有多种优势。叶脊结构集中连接并优化流量流,就像SDN控制器集中和网络控制一样。它为动态网络奠定了基础,这些网络可以扩展以满足数据中心的需要。您可以利用分段路由、ECMP和集中式路由等。SD-Fabric展示了SDN如何将通用网络设计转变为灵活且高性能的基础设施。叶脊结构具有负载平衡和可用性等优势。

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

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

网络虚拟化

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

Network Virtualization

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

网络虚拟化架构

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

这些层还创建了灵活且软件驱动的网络环境:

1. 应用层

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

2. 控制层

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

3. 基础设施层

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

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

虚拟交换机和数据平面

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

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

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

高可用性和可扩展性

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

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

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

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 用于虚拟路由器、防火墙和内容分发网络 (CDN)。

结论

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

软件定义网络 - 接入网络

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

什么是接入网络?

接入网络是网络的一部分,它直接为最终用户提供互联网连接。这些网络对于弥合最终用户设备与更广泛的互联网基础设施之间的差距至关重要。您还可以使用 SDN 访问网络。SDN 对网络的控制,类似于在数据中心中部署 SDN 所获得的优势。

有两种类型的接入网络受益于 SDN 集成。它们是:

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

这些将在下面简要说明:

SDN 在无源光网络 (PON) 中

在无源光网络 (PON) 中,单个 OLT 使用无源分路器连接多个家庭和企业。它引导光信号,无需主动电子设备。通常,PON 管理一直以来都是硬件密集型的,但灵活性有限。

SDN in Passive Optical Networks

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

集中式管理

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

动态服务配置

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

服务质量 (QoS)

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

SDN 在无线接入网 (RAN) 中

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

SDN in Radio Access Networks

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,接入网络易于编程、适应和能够提供动态服务。

广告