Jump to section

什么是软件定义网络?

复制网址

软件定义网络(SDN)是一种将网络资源抽象到虚拟化系统中的 IT 基础架构方法。这被称为网络虚拟化。SDN 将网络转发功能与网络控制功能分离开来,目的是创建可集中管理且可编程的网络,这也就是说将控制平面与数据平面分离。SDN 允许 IT 运维团队通过集中面板来控制复杂网络拓扑中的网络流量,而无需手动处理每个网络设备。

企业组织采用软件定义网络是为了应对传统基础架构的限制。软件定义网络的优势包括:

  • 控制平面与数据平面分离:控制平面负责决定如何转发数据包,由基于软件的控制器集中实施。数据平面负责通过网络实际转发数据包,它仍存在于基于硬件的网络设备中,但经过了简化和专门设置,只专注于数据包转发。在传统网络中,控制平面和数据平面通常集成在交换机、路由器和接入点等网络设备中,无需进行集中控制。
  • 集中控制:软件定义网络提供集中式控制,网络策略和配置由中央控制器管理和实施,这与传统网络不同,传统网络的网络策略和配置分布在多个网络设备上。
  • 成本更低:与硬件基础架构相比,软件定义网络基础架构通常更便宜,因为它们是在现成的商用服务器上运行,而不是在昂贵的单一用途设备上运行。由于软件定义网络基础架构可以在单个服务器上运行多项功能,因此它们占用的空间也比较少。这就意味着需要的物理硬件更少,故而更利于资源整合,以降低物理空间占用、功耗和总体成本。 
  • 更高的可扩展性和灵活性:通过虚拟化网络基础架构,您可以在合适的情况下根据需要扩展或收缩网络资源,而不必急于添加其他专有硬件。采用软件定义网络后,您会获得极大的灵活性,可实现网络资源的自助置备。
  • 可编程且能轻松实现自动化:在软件定义网络中,管理员使用软件定义的逻辑和 API 来定义网络策略和配置。这使我们能够动态配置网络资源并基于策略对其进行管理,有利于快速部署和适应不断变化的业务需求。传统网络通常需要使用命令行界面(CLI)或特定于设备的配置工具对网络设备进行手动配置和管理。 
  • 简化管理:软件定义网络使整个基础架构更容易运维,因为无需极其专业的网络专家来管理。 

软件定义网络与软件定义存储和其他技术相结合,可以构成一种称为超融合的 IT 基础架构方法,这是一种几乎万能的软件定义方法。

对于电信公司来说,还有一种网络抽象,称为网络功能虚拟化(NFV)。与软件定义网络类似,NFV 将网络功能从硬件中抽象出来。NFV 通过提供可运行 SDN 软件的基础架构来支持软件定义网络。NFV 使提供商可以灵活地在不同服务器上运行相应的功能,或在需求发生变化时根据需要移动这些功能。有了这种灵活性,电信服务提供商可以更快地交付服务和应用。例如,如果客户请求一项新的网络功能,他们可以启动新的虚拟机(VM)来处理该请求。当不再需要该功能时,可停用此虚拟机。这是一种低风险测试潜在新服务价值的方法。

根据您要完成的工作,NFV 和 SDN 可以协同使用,两者都使用商用硬件。借助 NFV 和 SDN,您可以打造一个更加灵活、可编程且可以有效利用资源的网络架构。

软件定义网络的架构反映了它转移控制权和责任的方式与传统网络相比有何异同。

控制平面负责做出有关如何通过网络转发数据包的高级决策。在软件定义网络中,控制平面通过软件集中实施,并且该软件通常在集中式控制器或网络操作系统上运行。控制器使用 OpenFlow、NETCONF 或 gRPC 等标准化协议与网络设备通信,并维护网络拓扑和状态的全局视图。

数据平面(也称为“转发平面”或“转发元件”)负责根据从控制平面接收到的指令在网络中转发数据包。在软件定义网络中,数据平面在交换机、路由器和接入点等网络设备中实施,这些设备被称为转发元件。这些设备依靠控制平面获取有关如何转发数据包的指令,可以对其进行简化或专门设置,使其只专注于数据包转发。

软件定义网络组件

在 SDN 的架构中,有几个组件定义了其进程处理。

有两种类型的 API(应用编程接口)可实现平面之间以及与更大型网络之间的通信:

  • 南向 API:在软件定义网络架构中,南向 API 用于实现控制平面和数据平面之间的通信。这些 API 允许控制器对网络设备进行编程和配置、检索有关网络拓扑和状态的信息,并接收有关链路故障或拥塞等网络事件的通知。常见的南向 API 包括 OpenFlow,它被广泛用于控制器与网络交换机之间的通信。
  • 北向 API:北向 API 用于面向更高级别的网络管理应用和服务公开软件定义网络控制器的功能。这些 API 允许外部应用与软件定义网络控制器交互、请求网络服务并检索有关网络拓扑、流量流和性能指标的信息。利用北向 API,我们可以对网络管理任务进行编程并实现网络管理任务自动化,进而促进与协调系统、云平台和其他管理工具的集成。

此外,SDN 控制器是软件定义网络架构的核心组件,负责实施网络控制功能并协调控制平面与数据平面之间的通信。控制器提供网络的集中视图、维护网络状态信息,并根据网络策略和要求做出有关如何配置和管理网络设备的决策。OpenDaylight、ONOS 和 Ryu 都是软件定义网络控制器的示例。

交换机、路由器和接入点等网络设备构成了软件定义网络架构的数据平面。这些设备从控制器接收到的指令转发数据包,并且可能支持基于流转发、服务质量(QoS)和流量工程等功能。在软件定义网络中,网络设备通常会被简化和标准化,以支持可编程性和与控制器的互操作性。

管理和编排(MANO):软件定义网络架构还可能包括负责置备、配置和监控网络资源的管理和编排系统。MANO 系统通过北向 API 与 SDN 控制器交互,以自动执行网络管理任务、优化资源利用率并确保服务可用性和性能。

总体而言,软件定义网络架构将网络控制功能与数据转发功能分离开来,将网络智能和管理集中到基于软件的控制器中,并通过标准化 API 和接口实现对网络资源可编程、灵活且可扩展的管理。

软件定义网络对安全防护有多种影响。

  • 由于软件定义网络使用集中式控制平面,因此与传统网络模型相比,安全防护策略的实施过程得到了简化。SDN 允许在整个网络中以简化方式一致地实施安全防护策略,从而降低了错误配置的风险。
  • 集中式控制器可让用户从全局角度全面地了解网络流量,以实现更有效的监控并更快地识别潜在威胁。
  • 由于 SDN 能够动态调整网络配置、隔离受影响的分段或重新路由流量以避开受损节点,因此用户能够实时检测和缓解威胁
  • 集中式控制平面还可以自动更新整个网络的安全策略和配置,确保及时修补所有设备,并根据最新的安全标准对设备进行配置。
  • 软件定义网络可实施微分段,允许对不同网络分段进行精细隔离,并通过将潜在威胁控制在特定分段来减小攻击面。
  • 通过集中记录和分析网络流量,可以更好地了解网络行为,帮助识别异常活动和潜在的安全漏洞。
  • SDN 可轻松地与各种安全防护工具集成,比如入侵检测系统(IDS)、入侵防护系统(IPS)、防火墙以及安全信息和事件管理(SIEM)系统。

当然,软件定义网络在安全防护方面也有自己的挑战,其中大部分都与其集中授权有关。这些挑战包括:

  1. SDN 控制器是一个关键组件,因此这是潜在的单点故障。损害控制器会导致整个网络失去控制。
  2. SDN 控制器是攻击者的重点目标。确保其安全性对于维护整体网络安全来说非常重要。
  3. 此外,必须使用强大的加密和身份验证功能来确保控制器与网络设备之间的通信安全,以防止控制信息被拦截、篡改或仿冒。
  4. 同样,必须确保控制器与应用(北向)以及控制器与网络设备(南向)之间用于通信的 API 安全无虞,以防止他人未经授权访问和利用它。

随着网络的不断成熟,它们自然会变得越来越复杂,而且原本很轻松就可以实施的策略也会变得越来越复杂。在动态的大规模 SDN 环境中维护一致的安全防护策略既复杂又容易出错。另外还有一项挑战是:确保安全防护策略不会相互冲突并得到一致应用。

在任何网络架构中,安全防护解决方案都必须随着网络而扩展,以处理不断增加的流量和设备,同时确保不会引入明显的延迟或性能瓶颈。通常情况下,软件定义网络的优势会掩盖其所面临的挑战来的负面影响,因为集中控制计划可确保一致性,并使部署安全防护机制变得更轻松。

软件定义网络(SDN)提供了一种灵活、可编程且集中化的网络管理方法,适用于不同行业和应用的各种用例。

  • 数据中心优化方面,SDN 的网络虚拟化和自动化网络管理提高了灵活性并降低了出错的几率。
  • 网络功能虚拟化(NFV)方面,SDN 可以用在商用硬件上运行的软件取代传统网络设备(比如防火墙和负载均衡器),从而降低成本并提高灵活性。SDN 还允许创建服务链,其中数据流经一系列 VNF,为数据包提供可自定义的路径。
  • 园区和企业网络中,利用 SDN 的集中式策略管理功能,可在整个网络中实施一致的安全防护策略。SDN 还能根据用户身份、设备和上下文动态调整访问权限控制,从而提高安全性并改善用户体验。
  • SDN 技术可用于优化和管理广域网(WAN)连接,提高长距离网络连接的性能和可靠性。这对于拥有多个分支机构的企业特别有用。
  • 云计算和多云集成方面,SDN 支持无缝集成和管理多云环境,这使企业组织能够高效利用来自多个云提供商的资源,并提供可扩展的网络解决方案,能够根据云应用的需求不断发展演进。
  • 物联网(IoT)中,SDN 支持大规模扩展,在添加新设备时提供动态网络配置。此外,利用 SDN 的集中控制功能,可在所有物联网设备上实施一致的安全防护策略,从而降低与不安全端点相关的风险。
  • 5G 网络中,SDN 允许创建虚拟网络切片,其中每个切片都针对不同类型的服务进行了优化(例如,自动驾驶汽车具备的低延迟、视频流具备的高吞吐量)。
  • 灾难恢复和业务连续性方面,SDN 可以自动执行故障转移过程,确保在发生故障时迅速恢复网络服务,并且还提供更加灵活和高效的网络备份解决方案,确保灾难期间数据完整无缺且可供使用。

红帽非常关注开放混合云,这是一种融合开放实践的混合云全面视图。红帽开放混合云策略依托于红帽三大产品奠定的技术基础,即红帽企业 Linux红帽 OpenShift红帽 Ansible 自动化平台。红帽平台可释放底层基础架构的力量,在任何环境中创造一致的云体验,并且能够提供自动化的 IT 基础架构。红帽正在引领混合云的发展,帮助成千上万家公司顺利完成现代化之旅。 

扩展阅读

文章

什么是超融合基础架构?

超融合是一种 IT 基础架构解决方案,将计算、存储和网络资源整合在一个统一系统中。

文章

什么是软件定义网络?

软件定义网络(SDN)是一种将网络资源抽象到虚拟化系统中的 IT 基础架构方法。

文章

什么是 NFV?

网络功能虚拟化(NFV)是一种对传统在专有硬件上运行的网络服务进行虚拟化的方法。