在计算机网络中,网络层包括数据平面和控制平面,它们分别负责网络数据转发和网络路由控制。以下是它们之间的区别:
数据平面(Data Plane):
- 数据平面负责实际的数据传输和转发,它处理网络中的数据包,并根据预先配置的路由表执行转发决策。
- 数据平面通常由硬件设备(如路由器、交换机)上的专用芯片或软件组件实现,用于处理数据包的转发和交换。
- 数据平面的主要任务是根据目的地址在网络中转发数据包,以将数据包从源主机传递到目的主机。
控制平面(Control Plane):
- 控制平面负责管理网络中的路由信息和路由选择算法,它决定了数据包在网络中的转发路径。
- 控制平面通常运行在网络设备上的软件进程中,负责维护路由表、学习网络拓扑、执行路由选择算法等。
- 控制平面的主要任务是根据网络中的拓扑结构和路由策略生成路由表,以便数据平面能够正确地转发数据包。
综上所述,数据平面负责实际的数据传输和转发,而控制平面负责管理网络中的路由信息和路由选择算法,以便数据平面能够执行正确的数据包转发。控制平面和数据平面之间的分离使得网络能够更好地实现灵活性、可扩展性和管理性。
网络层服务
- 在发送主机和接收主机对之间传送段(segment)
- 在发送端将段封装到数据报中
- 在接收端,将段上交给传输层实体
- 网路层协议存在于每一个主机和路由器
- 路由器检查每一个经过它的IP数据报的头部
- 网络层的关键功能
- 网络层功能
- 转发:将分组从理由七的输入接口转发到合适的输出接口。路由器查了很多网卡街道不同的物理网络中(插入什么网卡接入到什么网络中)。在这些网络中,完成IP分组的解封装,选择下一个接口(也就是说选择接口以后封装成目标网络的帧然后打出去)是一个局部的,数据平面功能(选择路的路口进入,哪个出去)
- 路由:使用路由算法来决定分组从发送机到目标接收主机的路径,是一个全局,控制平面的功能(去公园选择某条路到达目的地),控制平面
- 路由选择算法
- 路由选择协议
- 路由决定路径,转发决定从该路径的那个端口进出
- 网络层功能
数据平面
- 本地,每个路由器功能
- 决定从路由器输入端口到啊的分组如何转发到输出端口
- 转发功能
- 传统方式:基于目标地址+转发表(仅仅根据IP的目标,IP地址对分组做转发的动作)
- SDN(software-defined networking)方式:基于多个字段+流表(根据ip所在物理网络的帧,IP分组包括的TCP的段等等多种信息对分组做动作,而且动作不仅仅是转发,还有泛洪,阻止,修改字段等等)
控制平面
- 网络范围的逻辑
- 决定数据报如何在路由器之间路由,决定数据报从源头=到目标主机之间的端到端的路径
- 两个控制平面办法
- 传统的路由算法:在路由器中被实现
- SDN: 在远程的服务器中实现
传统方式:每一路由器控制平面
- 每个路由器同时实现控制平面和数据平面的功能
- 路由器上面有路由实体(跟其他路由实体交换路由信息,测量自己的路由信息,分布式的计算路由表),算出路由表交给IP协议实体,IP协议实体根据到来的分组,按照IP路由表作匹配,匹配完了转发
- 数据平面和控制平面紧耦合,路由和转发相互作用,集中在一台物理设备上做的,控制平面的功能是分布式的做·(就是每个路由器独立的实现功能)
- 问题:更改路由器的运行逻辑非常困难(因为这种体系架构)
SDN方式:逻辑集中的控制平面
- 一个不同的(通常是远程的)控制器与本地控制代理(CAs)交互
- 控制平面的功能集中在一个服务器做,运行了远程的控制器(网络操作系统),通过南向接口和每一个分组交换设备的(CA 即控制代理)打交道。,每个CA向网络操作系统上报他们的状况,然后网络操作系统把流表算出来通过南向接交给每一个分组交换设备。分组交换设备把这个流表进行装在,对到来的分组作多字段的匹配,匹配完了之后按照流表的信息对分组做动作
南向接口(Southbound Interface)是一个网络术语,用于描述网络控制器或管理系统与底层网络设备之间的接口。这个术语描述了网络控制器向底层网络设备发送命令、配置或控制信息的方向。 - 解决僵化的问题:控制逻辑和数据逻辑分离,编制不同的逻辑形成不同的流表,然后实现不同的行为逻辑,这种就是集中式的。使得网络可编程
网络服务模型
- 从发送方主机到接收方主机传输数据报的“通道”,网络提供什么样的服务模型?
- 当下面这些具体的指标等于相应值的时候们就说这个网络向上提供的服务是个服务模型
- 对于单个数据报的服务
- 可靠传送
- 延迟保证(比如少于某个时间的延迟)
- 对于数据报流的服务
- 保序数据报传送
- 保证流的最小带宽
- 分组之间的延迟差:每个分组的的延迟的差别
- besteffort: 屁用没有的服务,啥都不保证
- 对于单个数据报的服务
连接建立
- 在某些网络架构中第三个重要功能(其他两个是连接和路由:ATM, frame relay, X.25)
- 在分组传输之前,在两个主机之前,在通过一些路由器所构成的路径上建立一个网络层连接,这涉及到路由器
IP协议实现数据层面转发功能,一些路由协议实体的实现实现了控制平面的路由功能,路由表交给IP协议,IP协议那这路由表对到来的分组局部的转发,实现数据平面的功能,所以路由器是数据平面和控制平面粘合剂。(IP的网络没有连接建立的功能) - 有些是有连接的服务(所有的交换节点都维持连接状态,比如ATM网络),有些不是维护每个节点的连接
- 网络层和传输层连接服务区别:传输层仅仅体现端系统(TCP连接),网络层链接不仅仅在端系统上,中间的路由设备也维护了端到端的通讯状态