Software-Defined Networking (SDN)在5分钟内解释或更少

SDN被认为是新型网络技术和应用的关键支持技术。

多媒体内容的增长,移动设备的日益普及以及对云计算的需求,都对更灵活和高效的网络架构提出了要求。

由于这些趋势导致了无法预测的流量模式和特定资源需求的突然增加,传统的网络架构难以跟上。

需要一种替代策略,因为扩展网络基础设施以处理这些波动可能非常昂贵和复杂。

SDN是为了解决这个问题而发展起来的,它通过将控制平面与数据平面分离来实现。这使得网络能够自动重新配置自己以满足不断变化的需求,提高整体性能和效率。让我们来了解一下SDN的相关内容。

什么是SDN?

软件定义网络(SDN)是一种现代网络架构,允许管理员使用软件来定义和控制网络设备的行为,而不是逐个配置这些设备。

它通常与网络功能虚拟化(NFV)一起使用,以进一步提高网络的灵活性和成本效益。此外,它还允许网络智能的集中化,更容易进行故障排除和监控网络。

SDN的架构

SDN架构通常包括三个主要层次:应用层、控制层和数据层。

图片来源:Sotirios Goudos
  1. 应用层:这是SDN架构的顶层,负责定义网络的期望行为。该层的应用可能包括流量工程工具、安全策略或虚拟网络覆盖。
  2. 控制层:控制层负责实施应用层定义的策略和规则。它通常以一个中央控制器的形式实现,该控制器与数据层中的网络设备进行通信。
  3. 数据层或基础设施层:该层包含组成数据层的物理网络设备,如交换机和路由器。这些设备负责在网络中转发网络流量。

北向接口和南向接口用于促进架构的不同层之间的通信。整合这三个层次使得网络能够协调和高效地运行。

SDN的工作原理

在SDN网络中,控制平面和数据平面被分离。控制平面做出关于如何通过网络转发流量的决策,而数据平面负责根据这些决策转发流量。

图片来源:Jun Luo

控制平面是通过一个中央控制器来实现的,该控制器是在单个服务器或一组服务器上运行的软件应用。控制器维护网络的整体视图,并利用这个视图来做出有关流量应如何转发的决策。它通过与网络中的数据平面元素(称为“转发元素”或“交换机”)进行通信来实现这一点。

SDN网络中的这些交换机通常是“开放”的,意味着它们可以被外部软件控制和编程,而不是通过固定的转发规则进行硬编码。因此,控制器可以配置链接以按所需的方式传输流量。

为了控制交换机,控制器使用南向API与它们进行通信,南向API是一组控制器用于向交换机发送指令和接收状态信息的协议和接口。控制器使用北向API与需要使用网络的高级应用和系统进行通信,例如在云中运行的应用程序。

通过这种方式,控制器充当网络的“大脑”,决策如何转发流量,并将这些决策传达给交换机,交换机充当网络的“肌肉”,执行从控制器接收到的指令,并相应地转发流量。

SDN的特点

SDN具有几个关键特点,使其与传统的网络架构有所区别:

  • 灵活性:可以在不物理重新配置设备的情况下对网络进行更改,这使得网络管理人员能够迅速应对不断变化的需求和情况。
  • 可编程性:可以使用API或其他软件开发工具以编程方式控制网络的行为。这使得自动化网络任务和将网络与其他系统集成变得更容易。
  • 抽象:在SDN架构中,控制平面与转发流量的数据平面分离。这有助于工程师在不影响转发流量设备的情况下轻松更改网络操作方式。
  • 虚拟化:还允许对网络资源进行虚拟化,允许管理员根据需要创建虚拟网络。这在网络资源需求具有高度动态性的云计算环境中特别有用。

除了上述列出的特点,使用SDN的主要优势是它使企业能够在软件中模拟其物理网络基础设施,从而降低总体资本支出(CAPEX)和运营支出(OPEX)。

SDN架构的类型

一般来说,不同类型的网络可能需要不同的SDN方法。

例如,具有许多不同类型设备和复杂拓扑的大型企业网络可能受益于混合SDN架构,该架构结合了集中和分布式SDN的元素。相反,对于设备较少且拓扑较简单的较小网络,集中式SDN设计可能效果良好。

重要的是要仔细评估不同选项,并选择最能满足组织需求的架构。SDN主要使用五种不同的架构模型。

#1. 集中式SDN

在集中式SDN架构中,所有控制和管理功能都集中在一个单一的中央控制器中,这使管理员能够轻松定义和控制网络的行为。但同时也可能导致单一故障点。

#2. 分布式SDN

在这种架构类型中,控制功能分布在多个控制器之间,提高了可靠性,但使网络管理更加复杂。

#3. 混合SDN

混合SDN架构模型将集中式和分布式SDN元素结合起来。它可以使用集中式控制器执行某些功能,并使用分布式控制器执行其他功能,具体取决于网络的需求。

#4. 覆盖SDN

覆盖架构使用虚拟网络技术,例如或,在现有物理网络之上创建逻辑网络。这使管理员可以轻松创建、修改和删除虚拟网络。

#5. 底层SDN

底层架构利用现有的网络基础设施来支持创建虚拟网络,这些网络可以使用技术如MPLS或分段路由在网络设备之间创建虚拟链路。

学习资源

选择最佳的SDN相关概念学习资源可能是一项具有挑战性的任务,因为有许多不同的选项可供选择。因此,尝试几种不同的资源可能会对您更有帮助。

#1. SDN崩溃课程 实践/动手实操

这是Udemy平台上提供的一门课程。这门课程是获得SDN和基于OpenFlow的网络编程实践经验的绝佳途径。它还涵盖了各种高级OpenFlow概念,如计量表(QoS)和组表(负载均衡器,嗅探器)。

我们强烈推荐任何希望了解更多关于SDN和涉及的不同技术的人参加这门课程。只需要基本的网络知识就足以开始学习这门课程。

#2. SDN:软件定义网络

本书主要讨论了SDN的关键技术和协议,包括OpenFlow、OpenStack和ONOS。它提供了这些技术如何用于构建和管理网络的详细示例。

预览 产品 评分 价格


SDN: Software Defined Networks: An Authoritative Review of Network Programmability Technologies $59.99

它还提供了设置和管理SDN网络的有用提示,包括故障排除和安全考虑。

#3. 简化SDN和NFV

本书全面介绍了SDN和NFV,包括它们的优势、技术和应用。它还包括真实世界的案例和案例研究,以帮助说明关键点并展示这些技术如何在行业中使用。

预览 产品 评分 价格


SDN and NFV Simplified: A Visual Guide to Understanding Software Defined Networks and Network… $36.86

作者在清晰简洁的方式下对SDN和NFV的关键概念进行了很好的解释,使本书适合各个技术水平的读者。

#4. 软件定义网络

本书从实施和利用技术的个人视角全面介绍了SDN。

预览 产品 评分 价格


Software-Defined Networks: A Systems Approach $29.21

本书对于理解整个SDN架构,即使对于初学者也非常有帮助。它还讨论了如何使用行业标准为可扩展环境设计网络。

#5. SDN和NFV:基本知识

这是一本写得很好,引人入胜的指南,为SDN和NFV提供了坚实的基础,适合各个技术水平的读者。

预览 产品 评级 价格


SDN and NFV: Essentials $37.67

学习SDN概念的最佳方式是通过与SDN工具和技术进行亲身实践来获得经验。您可以尝试使用Mininet等工具和RYU之类的控制器设置一个简单的SDN环境,并使用软件来控制网络流量。

总结

在今天的数字环境中,SDN在使网络更灵活和高效方面非常有帮助。

在传统网络中,控制平面和数据平面紧密耦合,这意味着对控制平面的更改也需要对数据平面进行更改。这在更改网络时可能会变得困难和耗时,特别是在大型和复杂的网络中。

通过SDN,控制平面与数据平面分离,这使得通过编程方式更容易控制和优化网络行为。在需要快速轻松地对网络进行更改的环境中,这尤其有用,例如在云计算环境中,工作负载可以快速进行配置和取消配置。

希望您通过阅读本文对SDN及其架构有所了解。

您可能还对了解最佳 agentless network monitoring工具感兴趣。

类似文章