写点什么

SDN 系统方法 | 9. 接入网

作者:俞凡
  • 2022 年 6 月 25 日
  • 本文字数:9320 字

    阅读完需:约 31 分钟

随着互联网和数据中心流量的爆炸式增长,SDN 已经逐步取代静态路由交换设备成为构建网络的主流方式,本系列是免费电子书《Software-Defined Networks: A Systems Approach》的中文版,完整介绍了 SDN 的概念、原理、架构和实现方式。原文: Software-Defined Networks: A Systems Approach


第 9 章 接入网

现在我们将注意力转向 SDN 最新出现的用例: 接入网,包括光纤到家和移动蜂窝网络。虽然现在还处于早期阶段(刚刚推出产品部署),但有巨大的机会。本章描述了两个例子: 无源光网络(PON, Passive Optical Networks)无线接入网(RAN, Radio Access Networks) ,分别是光纤到家和移动蜂窝网络的核心。

9.1 背景

用于实现将家庭、企业和移动设备连接到互联网的最后一英里的网络技术有着独立于互联网其他部分的发展历程。这种发展已经持续了几十年,开始于对基于电路的语音通信的支持,然后逐渐增加了对基于 IP 的数据通信的支持。最终结果是一个巴洛克式的专用设备的集合,对于那些知道如何在 L2/L3 以太网交换机的集合上构建网络的人来说,这些设备看起来非常陌生。


但这使得接入网成为 SDN 的沃土,为了理解这意味着什么,我们需要从对将要替换的传统系统的简要概述开始。我们将在介绍两种特定接入技术(PON/RAN)的上下文中开始。幸运的是,从高层往下看,它们的架构惊人的相似。当然,细节差别也很大,但隐藏(甚至消除)不必要的细节是 SDN 带来的主要价值之一。


在讨论细节之前,需要再了解一点背景知识。提供宽带服务的 ISP(如电信公司或有线电视公司)通常经营着国家主干网络,连接到该主干网外围的是成百上千的边缘站点。在电信领域,这些边缘站点通常被称为中央机房(Central Offices) ,在有线通信领域,通常被称为头端(Head Ends) 。尽管这些名字暗示着"集中化"和"层次结构的根",但都位于 ISP 网络的最边缘,是 ISP 连接客户的最后一英里的一端。基于 PON 和 RAN 的接入网就部署在这些设施中。

9.1.1 无源光网络(Passive Optical Network)

PON 是树形结构的光纤网络,从 ISP 边缘站点的一台设备开始,可以扩展到 1024 个家庭。PON 的名字来源于被动的无源分路器,这些分路器向上下游转发光信号,而没有对帧进行主动存储转发的能力。端点完成帧的拼接,对应的 ISP 设备被称为光终端(OLT, Optical Line Terminal) ,部署在家庭中的设备被称为光网络单元(ONU, Optical Network Unit)


图 51 是一个 PON 的示例,简化为只有一个 ONU 和一个 OLT。在实际部署中,一个中心机房会有多个 OLT,分别连接数千个客户家庭。图 51 还突出显示了另一个细节,一个将接入网连接到 Internet 的 BNG(Broadband Network Gateway) 。BNG 是电信公司的一种设备,除了转发数据包外,还对用户进行身份验证,区分向每个客户提供的服务水平,并对流量进行计费。


图 51. 连接中心机房 OLT 到家庭和企业 ONU 的 PON 示例。


由于分路器是无源的,PON 实现了多接入协议。简单来说,上下游业务在两个不同的波长的光波上传输,因此是完全独立的。下行流量从 OLT 开始,信号沿着 PON 的每一条链路传播,每一帧都能够到达 ONU。然后 ONU 在帧中查看唯一的标识符,并接收该帧(如果标识符是自己)或丢弃(如果不是自己)。通过加密防止 ONU 窃听邻居的通信。上游流量在上游波长上进行时分复用,每个 ONU 周期性获得发送周期。


PON 与以太网类似,定义了一种共享算法,经过多年发展,该算法可以适应越来越高的带宽。目前部署最广泛的是 G-PON(Gigabit-PON),支持 2.25 Gbps 带宽。XGS-PON(10 Gigabit-PON)正在部署中。

9.1.2 无线接入网(Radio Access Network)

RAN 通过在无线电频谱的不同带宽上编码和传输数据来实现最后一跳。例如,传统的蜂窝技术范围从 700 MHz 到 2400 MHz,如今在 6 GHz 范围分配了新的中频频谱,而毫米波(mmWave)技术的频谱在 24 GHz 以上。


如图 52 所示,给定地理区域(例如地铁站)中的一组基站相互连接,并和运行在中央机房中的移动核心网(Mobile Core)通信。移动核心网类似于 BNG(从高层架构来说),充当连接接入网到 Internet 的 IP 网关,同时负责认证、QoS 和计费。与 BNG 不同,移动核心网还负责管理移动性(例如,记录当前哪个基站在为哪个有源设备服务,管理基站之间的切换,等等)。


图 52. 无线接入网(RAN),将一组蜂窝设备(User Equipment, UE)连接到中央机房的移动核心网。


图中显示了移动核心网和一组由回传(backhaul)网络连接的基站。回传网络的实现取决于技术选择,可以基于以太网或基于 PON,但就我们的目的而言,重要的是理解 RAN 实际上是构建在回传网络之上的局域包交换网络,其中基站是该 overlay 网络的"节点"。数据包通过这个网络"路由"到达最合适的基站,并在给定时刻为每个移动设备(用户设备或 UE)提供服务<sup>[1]</sup>。转发决策由基站实现,基站负责做出以下决策: 切换(handover, 将给定终端的流量从一个基站切换到另一个基站)、负载均衡(load balancing, 一组基站根据其当前负载决定哪个应该为某个终端服务)和链路聚合(link aggregation, 多个基站决定联合向某个给定终端传输数据)。


[1] 之所以说"路由",是因为基于综合考虑移动跟踪和监控决定如何最有效利用无线频谱,而不是通常在有线网络中使用的最短路径标准。重要的是,基站协同实现一种分布式决策算法,然后根据这些决策相互转发数据包。

9.1.3 关键结论(Key Takeaways)

在讨论如何应用 SDN 原则之前,有三个关于这两种网络技术的结论。首先是"接入网"和"IP 网关"的区别。例如,光纤到家(Fiber-to-the-Home)是由 PON 和 BNG 结合实现的,同样,5G 蜂窝移动网络(5G Cellular Mobile Network)是由 RAN 和移动核心网(Mobile Core)结合实现的。本章主要关注如何将 SDN 应用到 PON 和 RAN 上,但正如我们在 7.4 节中已经看到的,SDN 也可以应用到 BNG 和移动核心网。两者都是增强的 IP 路由器,其新特性都是对运行在交换结构中的 P4 程序的扩展。 我们将在最后一节中回到这个主题,介绍 SD-Fabric 和接入网之间的关系。


其次,因为 PON 是无源的,没有机会在网络内部进行软件控制。将 SDN 应用于 PON 涉及到对端点(即 OLT 和 ONU)的软件控制,并将这些端点之间的所有东西视为被动背板。此外,由于 ONU 是响应 OLT 指令的"哑"设备,这实际上可以归结为分解 OLT。


最后,由于 RAN 是将一组基站连接起来的包交换网络(作为回传网络的 overlay),因此有机会实现软件控制。这需要分解基站,正如我们将在本章后面看到的,基站在历史上运行多层协议栈,一旦被分解,这些组件就会分布在整个网络中,一些组件与无线电天线放在一起,一些组件与中央机房的移动核心网(Mobile Core)放在一起。换句话说,最终计划是"分割"和"分发"RAN 功能。


为了更广泛理解分解 5G 移动网络所涉及的内容,以便在软件中实现,推荐以下配套书籍。


延伸阅读:

L. Peterson and O. Sunay. 5G Mobile Networks: A Systems Approach. June 2020.

9.2 SD-PON

将 SDN 应用于 PON 的机会在于,OLT 本质上是增强的 L2 交换机,配备了运行在每个交换机端口上的不同的 MAC 层帧协议。就像可以买到基于 OCP 规范的裸金属 L2 交换机一样,现在也可以买到 OLT。但在实际实现软件定义的 PON(SD-PON)之前,还需要解决三个问题<sup>[2]</sup>。


[2] 为了与本书其他用例的命名方式一致,我们将其称为 SD-PON,但实际的 ONF 开源软件项目被称为 SEBA: SDN-Enabled Broadband Access。


首先,为了知道网络要支持什么级别的服务,PON 需要将大量配置加载到每个 OLT 中。其次,部署到家庭中的 ONU 设备的能力有限,需要通过连接的上游 OLT 间接控制。最后,网络运营商并不一定可以只用裸机硬件,而是必须处理各种传统设备。


为了解决这些问题,出现了图 53 中描述的 SD-PON 体系架构。基于该架构的生产网络现在已被电信公司部署到世界各地。为了简单起见,图中只显示一个 OLT,连接到两个 fabric 交换机。在实践中,这种架构对于聚合 OLT 很有必要,我们将在 9.4 节再解释细节,当前大家可以认为这些交换机都在第 7 章介绍的 SD-Fabric 的控制之下。下面我们将介绍 SD-PON 架构的其他部分。


图 53. SD-PON 架构。


首先是硬件抽象层,称为 VOLTHA(虚拟 OLT 硬件抽象, Virtual OLT Hardware Abstraction) 位于网络操作系统(例如 ONOS)和单个 OLT 之间。VOLTHA 提供北向 OpenFlow 接口,使 ONOS 能够像任何其他 SDN 设备一样控制 OLT,特定供应商的适配器在 OpenFlow 和 OLT 之间转换。原则上,这种转换可以在 ONOS 内部处理,ONOS 已经有健壮的南向适配器框架,但 VOLTHA 被设计为网络操作系统无关的,因此复制了大部分的机制。


VOLTHA 必须正确处理许多细节,但在概念上没有什么新内容,主要是控制状态流(例如,为订阅者分配特定的 QoS 类)和监视状态流(例如,识别 ONU 何时连接或分离)。主要的不同点是需要将 Traffic Profile 文件(图中表示为 TP)加载到 OLT 中。这一配置文件指定运维人员期望 PON 支持的 QoS 类,通常在 OLT 启动时加载这这一配置状态,原则上,也可以由 ONOS 通过 gNMI/gNOI 进行管理。OLT 目前不支持像 gNMI 这样的通用 API,所以通过这种一次性方式处理。


最后,也是最有趣的一点是,由于 ONOS 需要知道 ONU,但不能直接使用 OpenFlow 或任何其他 API 进行控制,因此该架构在 OLT 及其相连的 ONU 集合上构建了一个交换抽象层,在图 53 中由外部的灰色框表示。我们可以将这种网络模型看作是交换机,具有一组面向网络的端口(在通信行业中称为 NNI)和一组面向用户的端口(在通信行业中称为 UNI)。ONOS 把这个聚合网络当作一个逻辑交换机,每当用户打开家里的 ONU 时,ONOS 就会看到相应的 UNI 上有一个"port active"事件,并采取相应的操作,这些操作由图中所示的 SD-PON 控制套件实现。


那么需要做什么操作呢?主要工作是将用户安全的连接到 Internet。例如,当一个 ONU 上线(对应于逻辑交换机上的一个端口变为活动状态)时,将启动 802.1X 授权流程,验证该 ONU 是否是已注册的客户。成功授权的结果是,SD-PON 程序指示 ONOS 通过 fabric(使用规定的 QoS 配置文件)建立一条路径,将用户连接到 L2 网络。接下来,连接到 ONU 的家庭路由器将发送一个 DHCP 请求,触发 IP 地址分配,并触发 ONOS 建立路由,将家庭路由器连接到上游 BNG(以及互联网)。

9.3 SD-RAN

关于 5G 的早期宣传主要是关于更多的带宽,但 5G 的承诺主要是关于从单一接入服务(宽带连接)扩展到更丰富的边缘服务和设备集合,包括支持沉浸式用户界面(如 AR/VR)、关键任务应用(如公共安全、自动驾驶汽车)和物联网(IoT)。只有当 SDN 原则应用于 RAN 时,这些新应用才可行,才能支持快速引入新特性。正因如此,移动网络运营商正在努力实现软件定义 RAN(SD-RAN)。


延伸阅读:

SD-RAN Project. Open Networking Foundation. August 2020.


要理解 SD-RAN 的技术基础,重要的是要认识到,组成 RAN 的基站是专门的分组交换机。在给定地理区域内的一组基站相互协调,以分配和共享稀缺的无线电频谱。它们做出切换决策,共同为给定用户服务(可以把这看作链路聚合的 RAN 变体),并根据连续测量的信号质量做出包调度决策。今天这些都是纯粹的局部决策,但将其转化为全局优化问题是 SDN 的专长。


SD-RAN 的想法是让每个基站向 SDN 中央控制器报告本地收集到的关于无线电传输质量的统计数据,SDN 中央控制器结合来自一组基站的信息,构建一个关于无线电频谱如何被利用的全局视图。一套控制程序(例如,一个专注于切换,一个专注于链路聚合,一个专注于负载平衡,还有一个专注于频率管理)可以基于这些信息做出全局最优决策,并将控制指令推回到各个基站。这些控制指令不是在传输的单个片段的调度粒度上(即,在每个基站上仍然有实时调度程序,就像 SDN 控制的以太网交换机仍然有本地包调度程序一样),但通过不到 10 毫秒的测量回路,确实对基站施加了接近实时的控制。

9.3.1 分离式 RAN(Split RAN)

为了更好了解这是如何工作的,我们从图 54 所示的关于基站包处理流水线的细粒度视图开始。请注意,该图将基站描述为流水线(从左到右对发送到 UE 的数据包进行处理),但同样也可以将其视为协议栈。


图 54. RAN 处理流水线,包括用户平面和控制平面两个组件。


关键阶段如下。


  • RRC(无线资源控制, Radio Resource Control): 在流水线中负责粗粒度配置以及策略相关方面。RRC 运行在 RAN 的控制平面上,不处理用户平面报文。

  • PDCP(分组数据聚合协议, Packet Data Convergence Protocol): 负责对 IP 报头进行压缩解压缩、加密和完整性保护,并做出"早期"转发决策(即数据包是通过流水线发送到终端还是转发到另一个基站)。

  • RLC(无线链路控制, Radio Link Control): 负责分割和重组,通过实现某种形式的 ARQ(自动重复请求, automatic repeat request)实现可靠发送/接收。

  • MAC(媒体访问控制, Media Access Control): 负责缓冲、多路复用和解多路复用,包括什么时候传输哪些分片的实时调度决策。还能够做出"延迟"转发决策(即转发到包括 WiFi 在内的备选载波频率)。

  • PHY(物理层, Physical Layer): 负责编码和调制,包括前向纠错(FEC)。


图 54 中的最后两个阶段(D/A 转换和 RF 前端)不在本书范围之内。


下一步是理解上面概述的功能是如何在物理组件之间划分的,从而实现集中和分布式部署的"分割"。历史上主流实现是"不分割",如图 54 所示的整个流水线在一个基站中运行。展望未来,3GPP 标准已经被扩展到允许多个分割点,图 55 所示的分割正在由运营商领导的 O-RAN (Open RAN)联盟所积极推动,这也是本章其余部分所采用的方法。


图 55. Split-RAN 处理流水线分割为中央单元(CU),分布式单元(DU)和无线电单元(RU)。


结果就是产生了类似于图 56 所示的 RAN 范围的配置,有一个运行在云上的中央单元(CU, Central Unit) 服务于多个分布式单元(DU, Distributed Unit) ,每个 DU 又服务于多个无线电单元(RU, Radio Unit) 。关键是,RRC(集中在 CU 中)只负责近实时的配置和控制决策,而 MAC 阶段的调度器负责所有实时调度决策。


图 56. Split-RAN 架构,一个 CU 服务于多个 DU,每个 DU 服务于多个 RU。


由于无线传输的调度决策是由 MAC 层实时做出的,不能根据过时的信道信息做出调度决策,因此 DU 需要在管理的 RU"附近"(在 1ms 时延内),常见配置是在同一个铁塔上部署 DU 和 RU。但是当一个 RU 对应一个小扇区,许多 RU 分布在一个中等大小的地理区域(例如,商场、校园或工厂),那么一个 DU 可能会服务于多个 RU。5G 毫米波技术的采用可能会使后者更加普遍。

9.3.2 RAN 智能控制器(RAN Intelligent Controller)

RRC 在图 54 中显示为基站的一部分,在图 55 中显示为 CU 的一部分,代表 RAN 的控制平面。因为控制决策是集中制定的,因此 CU 的配置可以自然映射到 SDN,但其目标不仅仅是重新创建 RRC 功能的传统集合,还想为引入额外的控制功能铺平道路。为此,SD-RAN 采用了一种与其他领域中使用的网络操作系统/控制应用程序架构相平行的设计(并在本书中进行了描述)。


其结果是图 57 所示的设计,其中 RAN 智能控制器(RIC, RAN Intelligent Controller) 是 O-RAN 架构文档所称的集中式 SDN 控制器(因此我们在接下来的讨论中采用了这个术语)。"近实时"限定符表示 RIC 是 CU 中实现的 10-100 毫秒控制回路的一部分,而不是运行在 DU 中的 MAC 调度器所需的 1 毫秒控制回路。


图 57. RIC 集中控制分离式 RAN 层次架构中的组件。


如果进一步深入进去,图 58 显示了基于 ONOS 的 SD-RAN 用例示例。最值得注意的是,基于 ONOS 的 RIC 支持一组特定于 RAN 的北向和南向接口,原则上(但不是细节上)类似于前面章节描述的接口(例如,gNMI, gNOI, OpenFlow)。我们将在下一小节讨论这些接口。


图 58. 通过调整和扩展 ONOS 实现兼容 O-RAN 的 RIC。


基于 ONOS 的 RIC 利用了第 6 章中描述的拓扑服务,但也引入了两个新服务: Control Telemetry。建立在 Atomix 键/值存储基础上的 Control Service 管理所有基站和用户设备的控制状态,包括哪个基站为每个用户设备服务,以及可以连接设备的"潜在链接"集。Telemetry Service 建立在时间序列数据库(TSDB, Time Series Database) 的基础上,跟踪 RAN 组件报告的链接质量信息。各种控制应用程序分析这些数据,并就 RAN 如何才能最好的满足其数据交付目标做出明智决策。


图 58 中的示例 Control Apps (xApps)包含了一系列的可能性,但这并不是详尽列表。这些功能(链路聚合控制、干扰管理、负载均衡和切换控制)目前由仅具有局部可见性的单个基站实现,但它们具有全局影响。SDN 方案是集中收集可用的输入数据,做出全局最优决策,然后将各自的控制参数推回基站执行。


O-RAN 联盟

自 3G 以来,一直由 3GPP (3rd Generation Partnership Project)负责移动蜂窝网络的标准化,O-RAN (Open-RAN Alliance)是由移动网络运营商组成的联盟,定义了基于 SDN 的 5G 实施战略。

考虑到 3GPP 已经是负责全球蜂窝网络互操作性的标准化机构,为什么还会有 O-RAN 联盟?答案是,随着时间的推移,3GPP 已经成为由供应商主导的组织。O-RAN 是由网络运营商创立的(AT&T 和中国移动是创始成员),其目标是推动基于软件的实现,以打破当今市场供应商的垄断。

更具体来说,3GPP 定义了可能的 RAN 解耦点,而 O-RAN 指定(并编纂)相应的接口。特别是 E2 接口,是围绕支持不同服务模型的思想构建的,是这个策略的核心。运营商是否能成功实现最终目标还有待观察。

9.3.3 RIC 接口

回到图 58 中提到的三个接口,每个接口的用途都类似于前面章节中描述的接口。前两个,A1 E2,正朝着 O-RAN 标准化的方向发展。第三种是图 58 中所示的 xApp SDK,尽管 O-RAN 的长期目标是聚合在统一的 API(和相应的 SDK)上,但当前是基于 ONOS 实现的(概念上类似于 Flow Objectives)。


A1 接口为移动运营商的管理平面(通常被称为 OSS/BSS(运营支持系统/业务支持系统))提供了配置 RAN 的方法。到目前为止,我们还没有讨论通信 OSS/BSS,但可以肯定的是,这样的组件位于任何通信软件栈的顶部,是操作网络所需的所有配置设置和业务逻辑的源头,可以把它看作是 gNMI/gNOI 在 RAN 中的对应组件。


Near-RT RIC 使用 E2 接口来控制底层的 RAN 组件(包括 CU、DU 和 RU),可以将它看作 OpenFlow 在 RAN 中的对应组件。E2 接口的要求是能够将 Near-RT RIC 连接不同供应商的不同类型的 RAN 组件。这个要求反映在围绕服务模型(Service Model) 抽象的 API 中,其思想是每个 RAN 组件都发布一个服务模型,定义该组件能够支持的 RAN 功能集,RIC 对这个服务模型发出以下四种操作的组合。


  • 报告(Report): RIC 要求组件报告特定功能的配置值。

  • 插入(Insert): RIC 指示组件激活某个用户平面功能。

  • 控制(Control): RIC 指示组件激活某个控制平面功能。

  • 策略(Policy): RIC 设置某个已激活功能的策略参数。


当然,可以被激活的相关功能、可以报告的变量以及可以设置的测量都是 RAN 组件通过其发布的服务模型定义的。


综上所述,A1 和 E2 接口完成了 RAN 的三个主要控制回路中的两个: 外部(非实时)回路以 Non-RT RIC 为控制点,中间(近实时)回路以 Near-RT RIC 为控制点。第三个(内部)控制回路,在图 58 中没有显示,它运行在 DU 内部,包括实时调度器,嵌入在 RAN 流水线的 MAC 阶段。两个外控制回路大概的时间边界分别为>> 1s 和>10 ms,并假设实时控制回路<1 ms。


Near-RT RIC 打开了引入基于策略的 RAN 控制的可能性,因此,如果运营商定义的策略发生了中断(异常),表明需要外部回路的参与。例如,可以想象开发基于学习的控件,这些控件的推理引擎将作为应用程序运行在 Near-RT RIC,而非实时的学习引擎可以在其他地方运行。然后,Non-RT RIC 与 Near-RT RIC 交互,通过 A1 接口从管理平面向 Near-RT RIC 交付相关操作策略。


最后,xApp SDK 原则上是 Flow Objectives 在 RAN 中的对应组件,是基于 ONOS 实现的,目前仅仅作为 E2 接口的"透传",这意味着 xApps 必须知道可用的服务模型。这是有问题的,因为隐式的将应用程序与设备耦合了起来,但定义与设备无关的版本还在进行中。

9.4 SD-Fabric 的角色

正如本章前面所概述的那样,PON 和 RAN 都配有 IP 网关,该网关增强了特定的接入特性。位于运营商网络边缘的网关负责对用户访问进行授权,区分向用户提供的服务级别,并向用户收费。当用户从一个基站移动到另一个基站时,移动核心网还承担了跟踪移动性的额外责任。


这些附加功能大部分运行在控制平面(甚至管理平面)中,数据平面的行为与任何其他 L3 网络非常相似,这意味着数据平面可以通过前面章节中看到的机制实现,或者更具体的说,通过第 7 章中描述的 SD-Fabric 解决方案实现,但需要考虑这两种特定接入技术,以及对 SD-Fabric 的影响。


将 PON 连接到 Internet 的 BNG 有供应商定义的控制/管理平面,因此不需要行业范围的标准。数据平面需要支持 Q-in-Q 标签作为区分订户服务的机制,这是 SD-Fabric 提供此功能的原因之一。这意味着图 53 中所示的 fabric 交换机与图 13(来自第 2 章)和图 39(来自第 7 章)中所示的 fabric 交换机完全相同。换句话说,SD-Fabric 既将 OLT 连接到互联网,又将一组承载 BNG 控制和管理功能(以及运营商希望在边缘运行的任何其他 VNF)的服务器连接起来。


将 RAN 连接到互联网的移动核心网是由 3GPP 标准化的,这使它成为了定义良好的示例(只在高层架构讨论,完整的 3GPP 规范远远超出了本书范围)。图 59 给出了架构概述,确定了组成 5G 移动核心网的功能块。


图 59. 5G 移动核心网架构概述。


从这个图中可以看到,UPF(用户平面功能, User Plane Function) 实现了数据平面(3GPP 称之为用户平面)。其他所有功能都是控制平面功能,其中 AMF 负责移动性管理,SMF 负责会话管理,AUSF 负责身份验证。所有其他功能块都对应于低级流程,AMF、SMF 和 AUSF 调用这些流程来完成工作,但就我们的目的而言,可以将整个功能块视为运行在商业服务器上的微服务。关于移动核心网控制平面的更多细节,以及具体实现选择的示例,我们推荐 Magma SD-Core 开源项目。


延伸阅读:

Magma Core Project. Linux Foundation. 2021.

SD-Core Project. Open Networking Foundation. 2021.


对于我们的讨论来说,重要的是 UPF 也可以作为服务器托管的微服务来实现,就像任何基于软件的路由器一样。由于可以访问可编程交换网络,可以将该功能转移到交换机上。这正是 7.4 节中fabric.p4upf扩展所做的事情。


但除了转发 IP 数据包之外,还有什么额外的功能呢?UPF 执行三个额外的任务。首先,封装/解封装和基站之间通信的数据包,这些是 GTP-over-UDP/IP 封装的数据包。其次,根据运营商希望提供的不同 QoS 级别对数据包进行排队。这两项任务都可以在 P4 和底层可编程交换机中直接实现。第三个任务是"保存"发送到最近发生移动的终端的数据包,以便在相应的会话状态转换期间没有数据包被丢弃。这不是现在 P4 交换机所能支持的。因此,交换机会临时将这些数据包重定向到服务器上进行保存和重放,或者重定向到连接到这些服务器的 SmartNIC 上。MacDavid 和他的同事介绍了更详细的机制。


延伸阅读:

R. MacDavid, et al. A P4-based 5G User Plane Function. ACM SOSR. September 2021.


从讨论中我们得到的主要结论是,接入网和交换网是 SDN 的互补用例,可以协同工作。交换网不仅将承载接入网控制平面功能的服务器(包括 RIC 和 xApps)连接起来,而且还代表接入网运行某些数据平面功能。当所有这些用例结合起来时,最终的结果是边缘接入云(access-edge cloud) :一个中等大小的由商用服务器和交换机构建的集群,部署在企业和其他边缘站点中,能够承载接入网工作负载和边缘服务工作负载。Aether 就是这种边缘云的开源示例,它将 SD-Fabric、SD-RAN 和 SD-Core 组合在自包含的包中,可以在企业中部署,并作为云服务进行管理。


延伸阅读:

Aether: 5G-Connected Edge. Open Networking Foundation. 2021.


你好,我是俞凡,在 Motorola 做过研发,现在在 Mavenir 做技术工作,对通信、网络、后端架构、云原生、DevOps、CICD、区块链、AI 等技术始终保持着浓厚的兴趣,平时喜欢阅读、思考,相信持续学习、终身成长,欢迎一起交流学习。

微信公众号:DeepNoMind

发布于: 刚刚阅读数: 3
用户头像

俞凡

关注

公众号:DeepNoMind 2017.10.18 加入

俞凡,Mavenir Systems研发总监,关注高可用架构、高性能服务、5G、人工智能、区块链、DevOps、Agile等。公众号:DeepNoMind

评论

发布
暂无评论
SDN系统方法 | 9. 接入网_架构_俞凡_InfoQ写作社区