控制平面与数据平面

显微镜下的微芯片

作者

Mesh Flinders

Staff Writer

IBM Think

Ian Smalley

Staff Editor

IBM Think

章节标题

控制平面是进行网络设计并设置其功能参数的地方,而数据平面是数据在设备之间传输的地方。

在计算机网络中,“平面”指网络架构中的一层,在这一层执行与网络操作相关的特定任务。平面不是实际的物理组件,而是一种帮助开发人员和工程师理解数据流在网络中如何传输的概念。网络中通常存在三种平面:

  • 控制平面管理网络布局。
  • 数据平面发送和接收数据。
  • 管理平面配置和监控通过网络连接的设备

今天,我们将仔细探讨控制平面和数据平面,以及它们如何协同工作以提升网络的性能、效率和安全性。

什么是控制平面?

控制平面是计算机网络中负责确定数据在网络中传输路径的部分。随着计算机网络越来越多地融入现代业务流程,对网络架构(特别是网络平面如何运作)的关注也随之增加。

控制平面使用路由协议(基于算法的规则)来确定信息在网络设备之间传输的最佳路径。一个例子是多协议标签交换 (MPLS),在这种情况下,控制平面确定数据在网络中传输的最优路径,然后在将数据发送到数据平面之前为其分配一个唯一标签。

什么是数据平面?

数据平面,也称为转发平面,是网络架构中负责传输数据包的部分。数据包是为在网络上传输而收集的小单位信息。数据平面根据从控制平面接收到的路由信息和协议,控制数据包在网络中的实时传输。

数据平面会不断检查由控制平面建立和维护的路由表,以指导数据在网络中的传输路径。根据路由表中的规则,数据平面将数据包转发到正确的目的地。它还可以执行特定的处理任务(例如更新数据包头部、包含信息来源和分类的数据),以满足安全性要求。

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

控制平面与数据平面:主要区别

控制平面和数据平面各自承担不同的功能并执行不同的任务,以支持现代网络的运行。控制平面主要关注数据的路由和处理方式,而数据平面则负责在网络中的设备(或节点)之间传输数据。它们最重要的区别可以从用途、复杂性和通信方式三个方面来概括。

用途

控制平面利用路由协议和网络拓扑(本质上是网络中节点的地图)选择数据传输的路径。

一旦选定了正确的路径,数据平面就会根据控制平面设定的指令和规则,将相应的数据包转发到目标位置。

复杂性

在设计上,控制平面的复杂性高于数据平面。控制平面所确定的协议和路由路径需要复杂的业务逻辑和强大的决策流程。

相比之下,数据平面的任务相对简单:在网络中传输数据,其逻辑也比较直接,根据控制平面设定的规则,将数据包转发到目标位置。

通信

最后,控制平面和数据平面与其所支持的系统进行通信的方法也不同。控制平面依赖于一系列规则(协议)来管理数据的传输方式。例如,边界网关协议 (BGP)、中间系统到中间系统协议 (IS-IS) 以及开放最短路径优先协议 (OSPF) 都是常见的控制平面协议。

而数据平面则使用快速的物理网络连接,如以太网和 Wi-Fi,来进行通信。

产品聚焦

Hybrid Cloud Mesh

此视频展示了 Hybrid Cloud Mesh 如何随时随地在数分钟内提供以应用程序为中心的多云网络连接。

需要理解的关键术语

控制平面和数据平面并非物理组件,而是帮助工程师、开发人员和网络管理员理解数据在网络中如何传输的概念。控制平面和数据平面在概念上都位于网络层,即计算机网络架构中使设备能够通过网络进行通信的部分。为了更好地理解控制平面和数据平面的工作原理,我们先来了解几个关键术语。

什么是计算机网络?

计算机网络是由两个或多个互联设备(如台式计算机、移动设备或路由器)组成的系统,目的是共享资源和信息。通过网络连接的设备依赖通信协议,这些在控制平面上定义的规则,规定了信息如何跨网络进行发送与接收。例如,边界网关协议 (BGP) 是一种常用协议,用于管理数据在互联网中从一个网络路由到另一个网络的方式。。

什么是软件定义网络?

软件定义网络 (SDN) 是一种由软件控制的计算机网络架构方法,它高度依赖于 应用程序编程接口 (API)(一组使应用程序能够互相通信并交换数据和功能的规则)。在控制平面和数据平面中均可以找到 API。管理系统操作和配置的 API 位于控制平面,而与实际数据交互的 API 则属于数据平面。

如今,许多企业正在探索 SDN 作为在网络管理中实现云基础设施优势的一种方式。SDN 是一个快速增长的市场,去年市值达到 282 亿美元,预计在未来七年将增长超过 17%。1

什么是路由器和交换机?

路由器和交换机是在网络功能中发挥重要作用的物理或虚拟设备。路由器在通过网络连接的设备之间移动数据包(格式正确的路由信息单元)。控制平面使路由器能够分析数据包并确定它们的最佳路由。大多数路由器使用高度复杂的路由算法来转发数据包。

与路由器一样,交换机可以是物理的,也可以是虚拟的。交换机是使多个设备能够通过数据转发互联的组件。交换机使用以太网线在设备之间传输数据包,从而允许用户和节点之间共享数据和资源。

控制平面如何工作?

控制平面执行多项关键功能,使现代计算机网络得以运行:

  • 路由:路由是为数据寻找正确网络传输路径的过程。路由表会列出数据可在网络中选择的各种路径,是通过协议和网络拓扑编制而成的。
  • 维护网络拓扑:维护网络拓扑是指绘制网络中计算机及其他设备的排列结构。网络拓扑通过物理组件和虚拟组件(如路由器和软件)的结合来建立和维护。
  • 管理流量:建立路由后,控制平面会对网络流量进行调整并确定网络流量的优先级,从而保障重要应用程序的高可用性。为了有效管理网络流量,控制平面必须强制实施网络管理员建立的网络策略。
  • 负载均衡:在不同服务器之间分配流量以提高系统可用性是一个称为负载均衡的过程。许多热门网站和应用每天都会收到数百万用户请求,因此负载均衡成为网络性能的关键组成部分。
  • 聚类和高可用性:控制平面负责将一组节点聚合为簇,即作为单一计算单元运行的互联设备。簇对于平衡流量和保持高可用性至关重要,高可用性指系统能够全天候 100% 可用的能力。

数据平面如何工作?

一旦控制平面确定了数据在网络中的传输路径,数据平面就会根据控制平面提供的逻辑和指令将数据传送到目标位置。虽然在设计和功能上比控制平面简单得多,但数据平面对网络的完整性和功能同样至关重要。

在数据平面上,网络流量通过路由器传输,并受到严格控制,以保护设备免受恶意流量的影响,例如旨在破坏操作或窃取信息的网络攻击。如果没有数据平面,所有在控制平面上建立的协议和路由将无法发挥作用,网络中的设备之间也无法交换数据包。

控制平面和数据平面的五大优势

从支持云计算人工智能 (AI) 系统等先进技术的运行,到通过自动扩展和资源配置等功能提升应用性能,以下是控制平面和数据平面的五大主要优势。

高效

控制平面和数据平面都能提升网络的运行效率。

控制平面提供了一个集中管理网络中所有设备的入口。使网络管理员能够在同一位置轻松配置安全设置、自动化软件更新以及执行其他重要任务。

数据平面则旨在快速处理大量数据,在网络节点之间以最小延迟传输数据包。

性能

控制平面和数据平面都能提升网络性能。

控制平面执行由网络管理员设定的路由策略,以确保网络达到最佳性能,而数据平面凭借其操作简便性,使数据以最高速传输。

通过将数据路由任务与数据转发任务分离,控制平面和数据平面架构使每项功能可以独立优化,从而提升整个网络的整体性能。

可扩展性

控制平面和数据平面都被认为具有高度可扩展性,这意味着可以在不影响网络性能的情况下增加更多资源。

在控制平面中,可扩展性通过“自动扩展”实现,当用户流量达到一定阈值时,系统会自动分配额外资源。

数据平面同样以可扩展性为核心,其架构确保在应对日益增长的流量需求时,不会影响数据传输速度。

弹性

控制平面和数据平面由于其设计都具有高度的弹性。通过将与流量路由相关的关键任务与流量传输相关的任务分离,控制平面和数据平面的设计确保了一方出现问题不会影响另一方。

例如,如果控制平面上的负载均衡器发生故障,它通常不会影响数据平面上的数据传输。

延迟

控制平面和数据平面都可以通过多种方式帮助减少延迟,延迟是衡量系统延误的重要指标。

控制平面监控设备的性能指标,以确保其保持在特定水平。例如,中央处理器 (CPU) 延迟,即数据包通过系统所需时间的测量值。

数据平面使用一些技术来提高数据处理速度,例如增强型数据包处理和机器学习 (ML) 算法。这两种新兴技术都有助于降低网络延迟并提高系统可用性。

控制平面和数据平面用例

控制平面和数据平面在现代计算机网络中发挥着重要的作用,是许多有价值的企业应用程序的基础。以下是部分最常见的用例。

云计算

云计算是通过互联网按需访问计算资源的方式,其普及速度极快,到 2024 年,全球多达 90% 的企业将采用云计算。2控制平面和数据平面已成为现代云基础设施中不可或缺的一部分,因此专门的云数据平面和云控制平面被设计用于在云环境中实现增强功能。

云控制平面为云网络提供管理、路由及其他关键功能,而云数据平面则用于在云生态系统中高效传输数据。如今,所有领先的云服务提供商,包括 Cisco、Microsoft Azure 和 Amazon Web Services (AWS),都将云控制平面和云数据平面作为其云基础设施产品的一部分部署。

Kubernetes

Kubernetes 是世界上使用最广泛的容器平台之一,它依赖于控制平面和数据平面来运行。

Kubernetes 簇通过控制平面管理节点,使软件代码能够在任何计算环境中运行。在数据平面上,专门的 Kubernetes 组件(如 kubelet 和 kube-proxy)用于处理节点之间的网络流量。Kubernetes 对现代 IT 基础设施的可扩展性、安全性和效率至关重要。

虚拟机 (VM)

虚拟机 (VM) 是物理计算机的虚拟化表示,它们使用软件而非硬件来运行程序,已成为希望降低成本的企业的重要工具。运行虚拟机的企业可以获得云环境的灵活性和可扩展性,同时减少对物理基础设施的依赖。VM 就像物理计算机一样运行程序和操作系统 (OS),并且可以使用虚拟资源存储和处理数据。

虚拟机在控制平面上进行配置和管理,并在数据平面上执行计算工作负载,包括运行应用程序。

数据库即服务 (DBaaS)

数据库即服务 (DBaaS) 是一种云计算解决方案,使用户无需购买和设置物理组件即可访问数据库和数据库软件。

在 DbaaS 平台中,数据库操作在控制平面上进行管理,而实际的计算任务则在数据平面上完成。例如,在 DbaaS 中,控制平面负责服务器的配置和扩展,而数据平面则执行关键的数据库查询。

人工智能系统

人工智能 (AI) 系统旨在执行通常需要人类智能的任务。近十年来,AI 系统已深度融入现代生活,改善了汽车、智能手机甚至家用电器等许多常用设备的功能。

在企业端,AI 系统帮助企业开展更智能的营销活动,更好地利用数据,并提升自动化能力。AI 系统依赖控制平面和数据平面来运行复杂算法、执行计算以及在网络中传输数据。

相关解决方案
IBM SevOne Network Performance Management

IBM SevOne Network Performance Management 是一款监视和分析软件,可提供对复杂网络的实时可见性和洞察。

监控网络性能
网络解决方案

IBM 的云网络解决方案可实现高性能连接,为应用程序和业务提供支持。

深入了解云网络解决方案
技术咨询服务

利用 IBM Consulting 实现应用程序现代化改造并满足行业需求。

技术咨询服务
采取后续步骤

利用 IBM 的高性能网络解决方案,将您的网络转变为业务加速器。

深入了解云网络解决方案 预约实时演示
脚注

1 Software defined networking market size, Global Market Insights, February, 202

2 How many companies use cloud computing in 2024? Edge Delta, May, 2024