1

sdn 中数据和控制平面之间的隔离究竟是如何设计的,例如当我们假设 SDN 在服务器中时?SDN 交换机中数据和控制端口之间的隔离又如何呢?

4

4 回答 4

0

为了澄清 SDN,首先想象一下传统转发是如何工作的

PC1 --- Router1 ----Router2-----Router3----PC2

PC1 要到达 PC2,必须经过 Router1、Router2 和 Router3。路由器 1 具有有关其邻居(即路由器 2)的信息。其他路由器也是如此,直到它到达 PC2。如果我们观察到路由器在每一步中将数据包转发到哪里的决定。“大脑”在路由器中,它也充当携带数据包的设备。这类似于我们的腿有自己的大脑可以走到某个地方。

在 SDN 的情况下,每个路由器的大脑都被拉起并放在一个地方。那是控制器或控制平面。现在路由器只是数据/数据包转发设备,因此在 SDN 中被称为交换机。这类似于我们现在大脑的工作方式。大脑决定我们的腿和手应该如何移动,以便我们做出决定。

在 SDN 交换机中,交换机在虚拟端口 6633 或 6653 上与控制平面通信。

希望这可以澄清事情。

于 2015-11-24T07:59:40.193 回答
0

软件定义网络是一个概念。当您说“当我们假设 SDN 在服务器上时?”时,我会说这不是一个可以放在某个地方的东西,而是一个概念。这个概念是基于一些明确的观点。SDN 的良好实施将确保以下几点。

  1. 控制平面 - 数据平面分离
  2. 集中控制点
  3. 杂项:网络可编程性、可扩展性等。

当您尝试在 SDN 概念中寻找隔离时,您基本上要寻找的是第 1 点。如果有帮助,让我解释一下。

我们启动 SDN 的主要原因是在网络中引入更强大和更好的可编程性。阻止我们这样做的一件事是网络部署的分布式特性。在部署中的许多路由器/交换机中显式进入并运行某些配置所需的网络属性或行为的任何更改。这引入了各种复杂性和错误倾向。

例如,假设我们希望来自特定 ip 或 ip 掩码的数据包通过一个特殊的服务功能(例如防火墙),这将决定数据包的命运。现在,我们必须将此配置放入所有边界路由器或可能接收数据包的一组设备中。在大型部署中,我们必须在无数设备上放置此配置以安全地确保策略的执行。

因此,将网络控制与数据转发设备解耦的想法应运而生。这实际上意味着我们将拥有一个可以由网络控制器或程序员控制的哑数据转发服务。提供此数据包转发服务的数据平面保持在路由器和交换机级别,而控制平面可能并且应该是单独的物理实体。从概念上讲,它们是分开的,但不是孤立的。

SDN 的一个核心优势是它使网络控制逻辑能够在全球网络视图上进行设计和操作,就好像它是一个集中式应用程序一样。网络控制平面被认为是一个逻辑集中的应用程序,我们在其中进行更改,以强制执行我们在网络中的预期行为。

总之,我们在 SDN 中所做的基本工作是,我们将所有这些控制级业务逻辑从转发设备(手段、物理和虚拟交换机和路由器)中取出,并将它们放在一个我们称为控制器的应用程序中,然后我们提供控制器应用程序在数据平面转发设备中进行通信和编程更改的一种方式。完全理解这种架构的一个很好的研究将是:理解 OpenFlow

长话短说,隔离在数据平面和控制平面之间是一个稍微错误的词。这更像是他们分开但彼此依赖。没有控制平面,转发设备就是哑巴,没有数据平面,控制平面就无从控制!

希望这有帮助!

于 2018-01-06T19:03:28.333 回答
0

从概念上讲,它不是定义分离(隔离)的实现位置,而是因为控制和数据平面(例如openflow)之间的标准。您可以在单个服务器上同时拥有数据和控制平面,只要它们通过标准接口进行通信,它们就会分开。相反的情况也是如此,您可以将控制和数据平面物理分离,但如果它们不是通过标准接口,那本身就不是 SDN。

只需通过 ONF 解释: https ://www.opennetworking.org/software-defined-standards/overview/

于 2018-12-09T17:59:44.923 回答
0

SDN是一种网络范式。一种网络风格。在了解 SDN 之前,我们必须了解两件事。1.Data Plane:实际将数据包或数据从输入端口转发到输出端口的数据路径。2.控制平面:这具有如何将数据包从输入端口移动到输出端口的逻辑。控制平面指导数据平面。

在 SDN 之前,数据平面和控制平面这两个平面都驻留在路由器、交换机、防火墙等网络设备中。现在有了 SDN,控制平面和数据平面已经分离,即控制平面从网络设备中移出并已放置到中央服务器上。一个 SDN 控制器可以控制多个网络元素。分离的粒度留给实现。

于 2015-11-18T09:31:53.917 回答