软件定义网络 (SDN) 是一种由软件控制的网络架构(由应用程序编程接口 (API)驱动)方法。SDN 利用集中式平台与 IT 基础设施通信并引导网络流量。
SDN 通过使用软件创建并运行一系列虚拟覆盖网络,这些网络与物理底层网络协同工作。SDN 有可能以代码形式交付应用程序环境,并最大限度地减少管理网络所需的实际操作时间。
企业如今希望借助 SDN 将云计算优势引入网络管理和部署。 借助网络虚拟化,组织可通过软件即服务 (SaaS)、基础设施即服务 (IaaS) 及其他云计算服务等新工具和技术实现更高效率,并通过API与其软件定义网络集成。
SDN 还能提升网络行为的灵活性与可见性。 在传统环境中,路由器或交换机(无论是在云端还是数据中心中的实体)均只了解其旁边网络设备的状态。SDN 集中了这些信息,以便组织查看和控制整个网络和设备。
组织还可以在单一实体网络内划分不同的虚拟网络,或连接不同的实体网络以创建单个虚拟网络,从而提供高度的灵活性。
简而言之,企业之所以使用 SDN,是因为它是一种有效控制流量并根据需要进行扩展的方法。
定义创建网络生态系统的基本组件,将有助于更好地理解 SDN 的工作原理。SDN 架构由三个层组成,这些层通过北向 API(允许较低层级组件与较高层级组件通信的接口)和南向 API(促进相反方向通信)进行通信。这三个层分别是:
应用层包含网络应用程序和程序。应用层通过其北向接口与控制层通信,向控制层告知应用资源需求。传统网络可能使用专用设备(如防火墙或负载均衡器),但软件定义网络则使用应用层来控制和管理数据平面。
控制层作为大脑或网络操作系统,管理流量和数据的移动。控制层在整个网络的资源分配中起着关键作用。它是实现应用层与基础设施层之间通信的中心层。
该层由物理交换机和路由器组成,这些设备通过网络传输数据包和网络流量。
除了这些层之外,软件定义网络还由可能位于不同物理区域的组件构建而成。
其中包括:
应用程序负责传递网络信息或请求特定资源的可用性或分配。
SDN 控制器处理与应用程序的沟通,以确定数据包的目的地。控制器是 SDN 中的负载均衡器。
网络设备接收控制器关于如何路由数据包的指令。
OpenFlow 等可编程网络协议可在 SDN 网络中引导网络设备之间的流量。开放网络基金会 (ONF) 协助规范了 OpenFlow 协议和其他开源 SDN 技术。
组织可以通过组合这些组件,以更简单集中的方式管理网络。SDN 从数据平面或底层基础设施中剥离了路由和数据包转发功能(称为控制平面)。然后,SDN 会部署控制器(被视为 SDN 网络的大脑),并将其层叠在云端或本地部署的网络硬件之上,以便团队运用基于策略的管理(一种自动化方式)直接管理网络控制。
SDN 控制器会知会交换机数据包的发送位置。在某些情况下,嵌入软件或硬件中的虚拟交换机可替代物理交换机。此举将其功能整合到单一的智能交换机中,该交换机可以检查数据包及其虚拟机目的地,确保在移动数据包之前不会出现任何问题。
“虚拟网络”一词有时被错误地用来指代“SDN”。这两个概念是不同的,但它们确实能良好协同工作。
Network Functions Virtualization (NFV) 在单一实体网络中划分出一个或多个逻辑网络或虚拟网络。NFV 还可以连接不同网络上的设备,以创建单一虚拟网络,通常包括 虚拟机。
SDN 可以与 NFV 出色配合,完善通过集中式服务器控制数据包路由的流程,提高可见性和控制力,从而为 NFV 提供协助。
软件定义网络主要有四种类型:
开放式协议用于控制负责数据包路由的虚拟和实体设备。开放式 SDN 使网络运营商、开发人员和供应商的不同团队能够在优化方面进行协作。
组织可以通过编程接口(通常称为“南向 API”)控制进出每个设备的数据流。API SDN 使编排平台、云管理工具和网络管理系统能够与 SDN 基础设施集成。
虚拟网络在现有硬件之上运行, 创建 具有通往远程和本地数据中心的通道的隧道。该模型随后分配带宽 并将设备分配给各个通道。
通过将 SDN 与传统网络相结合,混合模型可为每种类型的流量分配最佳协议。混合 SDN 常被用作 SDN 的渐进式实施方法,使企业能够将 SDN 集成到传统环境中。
SDN 架构具备多种优势,这主要归功于网络控制和管理的集中化。这些优点包括:
将数据包转发功能与数据平面分离,可实现直接编程和更简单的网络控制。其中可能包括实时配置网络服务(例如以太网或防火墙),或快速分配虚拟网络资源,以通过集中位置更改网络基础设施。
由于 SDN 可根据需求和使用情况的变化实现动态负载均衡,以管理流量,因此可减少延迟,提高网络效率。
网络运营商可以借助基于软件的控制层,更灵活地控制网络、更改配置设置、调配资源并增加网络容量。
管理员可以使用单一协议,通过中央控制器与各种硬件设备进行沟通。此外,由于组织通常倾向于使用开放式控制器,而非特定供应商的设备和协议,因此在选择网络设备时也更具灵活性。
SDN 技术与虚拟机及网络虚拟化相结合,使服务提供商能够为客户提供不同的网络隔离和控制。这有助于服务供应商提高其可扩展性,并向需要更大灵活性和带宽使用量不固定的客户按需提供带宽。
SDN 解决方案具备显著优势,但如果实施不当,也会带来风险。控制器对维护网络安全至关重要。由于采用集中式控制,因此可能会出现单点故障。可以通过在网络上实施具备自动故障转移功能的控制器冗余,来缓解这一潜在漏洞。此举可能成本高昂,但与在网络的其他区域建立冗余,以确保业务连续性并无不同。
服务供应商和组织均能从软件定义的 广域网 (SD-WAN) 中获益。传统的广域网 (WAN) 用于将用户连接到数据中心内组织服务器上托管的应用程序。多协议标签交换 (MPLS) 电路通常用于沿最短路径路由流量,以有助于确保可靠性。
作为替代方案,SD-WAN 可进行编程配置,并为广域网中的任何云、本地部署或混合网络拓扑提供集中管理功能。SD-WAN 可以处理海量流量和多种类型的连接,包括 SDN、虚拟专用网络、MPLS 等。
IBM Cloud Infrastructure Center 是一款兼容 OpenStack 的软件平台,用于管理 IBM zSystems 和 IBM LinuxONE 上的私有云基础架构。
发现专为企业混合云和 AI 策略设计的服务器、存储器和软件。
查找适合企业的业务需求的云基础设施解决方案,并按需扩展资源。