基于 Magma 构建灵活、低成本无线接入网
传统蜂窝网络一般基于特定接入技术并针对大规模公共网络设计,无法灵活适配小规模网络以及异构无线技术。本文介绍了 Magma 在构建低成本异构无线接入方面的探索。原文: Building Flexible, Low-Cost Wireless Access Networks With Magma
摘要
当今仍然有数十亿人受限于网络覆盖以及价格原因,没有接入互联网。本文将介绍一个用于建设低成本无线接入网的灵活、开放系统--Magma,该系统旨在连接因人口密度低或收入水平低等原因而被运营商忽略的用户,同时保留蜂窝网络所应有的功能,如认证和计费策略等。为了实现这一目标,与传统蜂窝网相比,Magma 采用了广泛利用互联网设计模式的方法,在边缘终止特定的接入网协议,并将接入网从核心架构中抽象出来。这一决定允许 Magma 使用 SDN(软件定义网络)原则重构无线核心网,并利用现代分布式系统的其他技术,从而降低网络运营商的成本和运营复杂性,同时实现弹性、可扩展性和丰富的策略支持。
1. 简介
良好的互联网连接已成为全世界人民和企业的基本需求。然而,全球有超过三分之一的人口没有接入互联网[54],并且还有许多用户缺乏重要应用所需的高速连接。这个问题主要是经济问题:商业网络运营商声称,互联网如今似乎已经完成了在商业上可行的用户覆盖范围[29]。为了覆盖更多用户,必须降低互联网接入成本,或者让传统、大规模商业运营商以外的实体建立可持续、可扩展的网络基础设施。我们需要有效方法来降低资本和运营成本,通过更便宜的设备和软件,减少对高技能网络管理员的依赖,以及增加对现有本地能力的利用。同时,运营商需要有效管理有限的网络资源,以实现可持续的网络运营。蜂窝网络通常通过为每个用户制定策略来实现这些目标,包括每个用户的数据上限、费率限制或基于使用量的收费策略。
不幸的是,传统无线解决方案不能很好适用于很多被服务覆盖所影响的用户场景。由于无线电的传播特性,在非授权频谱上运行的 WiFi 接入点一般不能为大的地理区域(如人口稀少的农村地区)提供有效覆盖。此外,WiFi 网络通常不提供精细策略来管理资源。相比之下,蜂窝基站提供更广泛的覆盖,支持更多用户,并连接到支持更灵活策略的核心网络。然而,今天的蜂窝接入网络依赖于昂贵的设备、复杂的协议和高度熟练的劳动力,限制了经济有效连接更多用户的能力。虽然蜂窝网可以扩展到大量用户群,但并不能很好的缩容,也就是说,小型蜂窝网络的部署通常相当昂贵。Magma 旨在弥合这两类解决方案之间的差距:具有丰富策略、大量用户群和长距离的蜂窝网络,以及更简单但扩展性较差的 WiFi 网络。
更为根本的是,我们注意到,选择使用蜂窝无线接入网(RAN)这一决策迫使网络运营商做出一系列影响深远的决定,而这些决定与他们选择的接入网技术没有内在联系。这种选择使网络运营商备受约束:(i)特定的网络架构--即 3GPP 定义的用于网络管理的接口以及策略执行路径上的设备,(ii)为满足大规模电信运营商需求而发展的供应商生态体系,以及(iii)特定的无线电频谱及相关监管要求。Magma 项目旨在改变这一切,它创建了一个开源的运营商级无线网络平台,支持广泛的部署场景。Magma 的部署可以利用任何现成的、最适合其用户密度或部署场景的无线接入技术。Magma 通过接入网关实现这一目标,接入网关在尽可能接近无线电的情况下终止特定的协议。因此,Magma 允许运营商使用单一核心网络和管理平台,在热点地区(如体育场馆)用 WiFi 热点增强现有蜂窝网络部署,或使用 LTE 基站为农村地区家庭服务。
理想情况下,可以从小规模开始部署新网络,并随着时间的推移而扩展。Magma 通过在商品硬件上运行软件组件的横向扩展实现了"随需求扩容(scale as you go)"的设计,这在云计算环境中很常见。Magma 还利用了云环境中常用的开源软件组件(如 Open vSwitch、gRPC、Kubernetes、Prometheus)。Magma 通过采用软件定义网络概念简化了网络管理,这样就可以用一个中央控制点来设置网络策略、管理用户等。Magma 采用分层控制平面来提高可扩展性。Magma 只支持高效互联网接入的基本功能(如认证、计费和基于用户的策略),而放弃了一些复杂功能。例如,虽然 Magma 支持移动性(在接入网关的服务区域内)和漫游,但还不支持接入网关之间的用户无缝移动,这是因为移动性不是 Magma 的商业部署所支持的用例要求(例如家庭宽带或回传到 WiFi 热点)。正如通过其他工作所看到的[38],现代终端主机协议和应用程序可以在没有网络内生移动性支持的情况下表现良好。
本文将介绍设计和部署 Magma 的经验教训,讨论支持异构无线电、回传技术以及灵活策略的目标,以低成本支持所有这些功能,从而引导我们开发了一个新颖的软件架构。Magma 被用于现实世界的部署,这些部署在地理范围、用户数量、技术选择和使其在财务上可持续的商业模式方面有很大不同。在第 2 节中,我们将阐述 Magma 的核心原则,即无线接入技术不应决定网络架构。然后在第 3 节讨论接入网关的设计如何使 Magma 支持各种技术、可扩展的控制平面、容错等。第 4 节介绍实验评估,证明 Magma 的设计和实施实现了良好的性能和可扩展性,同时讨论两个生产级接入网络。与传统方法相比,由于较低的运维、硬件和软件成本,在一次部署中可以节约 43%的成本。我们的部署经验也指明了 Magma 是如何向上、向下扩展的,在撰写本文时,有一个支持美国 45 个州的 800 多个 eNodeB(基站)的部署,第 5 节介绍了相关工作。最后在第 6 节讨论正在进行的关于 Magma 的工作和未来的挑战。
道德。本文没有提出任何道德问题,对于第 4 节中讨论的部署,只考虑运维数据,没有接触任何用户数据或流量。
2. 无线接入技术不应该决定网络架构
传统上,无线接入技术的选择决定了关于网络架构的一系列其他决定。相比之下,Magma 的出发点是,每一种无线接入技术在覆盖不同用户群方面都可以发挥作用,网络运营商应该能够使用最适合部署场景的无线和回传技术。简而言之,无线网络架构应该像互联网本身一样,将链路层抽象化。
2.1. WiFi vs 蜂窝接入网
作为现有有线网络的延伸而出现的两类主要的无线接入技术具有不同的设计理念,WiFi 扩展了 IP 网络,而现代蜂窝数据网络开始是对语音电话网络的扩展。两类接入网络之间的许多差异直接源于这种早期区别。
WiFi: WiFi 允许没有经验的用户自己运行简单的低成本局域网络,这些网络使用未经授权的无线电频谱(通常在 2.4GHz 和 5GHz),不需要 WiFi 网络运营商提前获得监管部门的批准。同时,任何人都可以访问相同的频谱,但要受到传输功率的限制。因此,WiFi 网络与婴儿监视器、无绳电话和智能电表等设备共享频段,所以 WiFi MAC 层必须假定 WiFi 接入点(AP)在存在物理层干扰的情况下运行。再加上限制功率从而限制了发射距离,WiFi 最适合在小范围内密集覆盖。考虑到干扰的可能性,WiFi 服务是尽力而为的,与互联网设计理念一致。企业级 WiFi 部署,如大学校园和公司办公大楼的部署,对多个接入点的重叠干扰进行更集中的管理。然而,干扰的风险意味着服务仍然是尽力而为的。
蜂窝网络: 蜂窝接入网允许电信运营商向其用户提供无线服务,通常使用运营商长期拥有或以高成本租赁的授权频谱。由于无线电对某一地理区域的频谱有独家使用权,因此蜂窝网被设计为广域覆盖和高频谱效率,由资源丰富的实体进行部署,因为只有他们才可以获得土地、建造和连接塔台,并雇用熟练的工作人员。
无论何种接入技术,任何规模的网络都需要在设备、人员方面进行大量投资,就蜂窝网络而言,还需要监管许可。因此,除了非常小的网络,运营商通过策略来管理有限的频谱,包括接入控制;根据时间、使用量或更复杂的技术来收取费用,其中包括社区价值[36];使用上限;以及节流。例如,LTE 的策略规范几乎达到 300 页[14]。一个简单的策略例子是:"客户 C 的速率限制为 X Mbps,如果在t1
时间段内发送了 Y GB 数据,就在t2
时间段内将其限制为 Z Mbps。"支持灵活的策略可以帮助运营商以经济上可持续的方式触达服务不足的用户:即使是出于社会责任原因运营的网络也会产生成本,必须有效管理有限的资源。
这些功能由复杂的分组核心网实现,该网络将多个基站连接到互联网,与互联网架构的渐进式演进相比,每一代蜂窝网络都是重新思考从认证到控制和数据平面模块化的机会。
图 1: LTE 和 5G 架构的区别。
不同世代的 3GPP 标准[15]有不同的分组核心架构,UTMS("3G")与 LTE("4G")不同,而后者又与 5G 不同,并且各代标准都与企业级 WiFi 不同。图 1 显示了 LTE 和 5G 之间的差异,图片来自[46]。不同无线技术也体现为基站的差异(eNodeB 与 gNB),但也要关注移动核心网的模块化演进。WiFi 又有所不同,而且标准化程度较低,其授权、认证和计费(AAA,Authorization, Authentication, and Accounting)等功能大致对应于 LTE 的移动管理实体(MME,Mobility Management Entity)和归属用户服务器(HSS,Home Subscriber Server)组件。
如今蜂窝网络和 WiFi 之间的界限越来越模糊,运营商将每种技术部署在该技术更适合的场景中。近年来,大型 WiFi 部署已经采用更复杂的用户认证、功率控制、无缝移动性等方法[23,24,60],Eduroam[58]和 OpenRoaming[57]等努力为 WiFi 用户提供类似蜂窝网的广域漫游。同时,蜂窝接入网络现在可以使用"轻授权(lightly licensed)"频谱,如公民频段无线服务(CBRS,Citizen’s Band Radio Service)[17],支持无线频谱动态分配,使无线系统能独占部分频谱(以数十分钟为单位)。企业正在为一系列用例部署私有蜂窝接入网络,如工业自动化、医疗应用以及酒店和体育赛事的互联网接入,这些用例需要比传统 WiFi 更好的频谱效率、认证和性能。
2.2. 降低门槛
Magma 旨在降低为缺乏网络服务的人群提供无线网络连接服务的成本。我们认为,运营商应该能够为任何部署选择合适的接入技术,而不是被锁定在只和该接入类型兼容的核心架构上。支持异构技术的统一设计可以摊薄软件构建工程成本以及培训和支持网络运维人员的费用。此外,这种设计使运营商能够在统一的核心网上支持多种无线技术(例如,在购物中心使用 WiFi,在其他地方使用蜂窝网络)。
蜂窝接入的准入门槛很高,部署蜂窝接入技术的网络运营商必须在基础设施方面进行大量资本投资(CapEx)。相比之下,WiFi 接入点的成本可能低于 100 美元,但即使是低成本的蜂窝部署,成本也至少要高出 WiFi 1-2 个数量级。传统上,蜂窝核心网络设备是为拥有数百个基站的大型部署而设计的,无法以合理成本"缩减"到小规模的初始部署。蜂窝网络的运营成本也很高(OpEx),需要依靠高技能工作人员来管理设备。此外,偏远社区可能负担不起高质量、低延迟的回传(如光纤)链接,而蜂窝网络通常依赖这种链接。相反,这些地区的网络可能使用可靠性和性能较低的卫星或无线回传链接。
相比之下,WiFi 部署可以从小规模开始,但在规模扩张方面存在很大障碍。WiFi 网络通常不需要熟练人员来部署。WiFi 本质上是一种尽力而为接入技术,可以利用任何可用的回传,甚至是基于同一物理 WiFi 的临时网格(ad-hoc mesh)回传。然而,WiFi 通常不提供可扩展的方式来实施网络策略,或者(除了专有和特定于供应商的解决方案)来管理大型网络。因此,面向 WiFi 的运营商很难像大型(通常是蜂窝)运营商那样在大范围内提供财务上可持续的服务。
尽管 WiFi 和蜂窝网络之间存在差异,但并没有根本障碍。网络策略的构建模块在每个国家都一样,缺少的只是架构支持。软件定义网络可以通过分布式基础设施支持网络范围内的控制来帮助解决这些差距,并且采用基于商品组件的可扩展技术可以降低成本。简而言之,采用并扩展成功的互联网和云原生技术实现可伸缩性和可管理性,使我们创建既灵活又低成本的无线接入网络成为可能。
图 2: Magma 在秘鲁的一个小型农村 ISP 的早期部署(他们的第一个蜂窝站点)。组件(从上到下)包括(a)点对点无线回传,(b)LTE 无线天线,(c)作为 Magma AGW 的强化嵌入式 PC,以及(d)太阳能和电池备份。
3. Magma 架构
Magma 不是通过简单的重新实现一个符合 3GPP 标准的移动核心网来克服现有解决方案的缺点。相反,如图 3 所示,Magma 通过在直连无线接入网的接入网关(AGW)中尽早终止特定无线协议,使这些接入网关在统一的设计中处理各种无线技术。Magma 架构超越了 3GPP 传统的 RAN/核心网的分解模式,将额外功能放在接入网关中,目的是使分组核心网更具可伸缩性,从而能够缩小规模。值得注意的是,Magma 采用了软件定义网络(SDN)系统架构,使用分层的控制平面设计,每个接入网关的本地控制器与集中式编排器交互。编排器是系统的中央控制点,维护与全系统配置有关的权威状态(配置状态)。与用户设备(UE)活动有关的运行时状态被定位到为特定 UE 提供服务的基站所在的 AGW。
图 3: Magma 简化体系架构
每个 AGW 都是一个小型故障域,确保任何组件故障或升级影响到的用户相对较少。通过这种方式,Magma 架构类似于现代云原生系统,旨在运行在容易发生故障的低成本硬件上[26]。Magma 采用了云计算架构的其他想法,包括使用 gRPC 进行组件间通信,用于状态同步的"期望状态(desired state)"模型,以及基于软件的、可编程的数据平面。虽然在云计算部署中很常见,但这些决定大大偏离了典型 3GPP 网络的设计和管理方式。
3.1. 无线接入技术抽象
如图 1 所示,无线接入技术的细节传统上会体现在核心网中。为了解决这个问题,Magma 确定了一套核心功能,AGW 必须为任何无线技术实现这些功能(例如,为特定用户找到合适的策略),并以独立于接入技术的方式提供这些功能。这些功能构成了 AGW 的核心,如图 4 的右侧所示。特定无线技术的控制协议在靠近无线的特定技术模块中被提前终止,这些模块在图的左边,与右边的通用功能(如用户管理、访问控制和管理)进行通信,所基于的信息与 RAN 无关。
图 4: Magma 体系架构中的通用功能和特定于 RAN 的协议。
考虑添加一个新的活跃 UE 的例子。UE 通过临时(未经认证的)无线链路与附近的基站通信。在传统 4G 实现中,基站将请求转发给移动管理实体(MME,Mobility Management Entity),MME 发起 UE 身份验证流程,查询用户数据库,对终端进行认证,创建新会话,并将为终端服务所需参数通知给其他组件,包括:(a)为终端分配 IP 地址,并在数据平面设置相应的 QoS 参数;(b)指示基站建立到终端的加密信道;和(c)向 UE 提供加密通道的对称密钥。这一系列事件完成后,UE 将和移动核心网建立一个活动会话,从而能够发送和接收数据。
这些功能在 Magma AGW 中以抽象化无线技术细节的方式进行,如图 4 右侧所示。例如,Magma 的用户数据库具有跨无线接入类型的所有能力的联合,即使数据库中的某些字段只对某些技术有效也没有关系。例如,QoS 策略在 WiFi 中不如在 4G 网络中丰富,而 4G 策略又不如 5G 策略丰富。同样,UE 认证和会话建立是由涵盖 4G、5G 和 WiFi 的通用功能以通用方式完成的。在 4G、5G 和 WiFi 的不同设备中实现的数据平面,在 Magma 中通过通用、可编程的数据平面实现。
表 1: Magma 抽象与特定无线技术的比较
表 1 显示了 4G、5G 和 WiFi 的各种组件是如何被映射到一套共同的 Magma 抽象中的。这里的核心思想是,通过执行一组功能,从而验证用户,建立会话状态,控制数据平面,等等。Magma 以一种与无线技术无关的通用方式完成所有这些工作,从而提供了一种将特定无线技术的细节从核心中抽象出来的方法,并且将相关协议终止在靠近无线本身的地方。
此外,Magma 增加了一些不属于 3GPP 标准的通用功能,如设备管理和遥测。再加上 SDN 架构,这就简化了对分布在广大地理区域的大量设备的管理。Magma 不需要登录到特定设备中去配置或检查统计数据,而是从编排器中提供中央管理和监控,并且其他接入北向 API 的系统也可以利用这些数据。我们发现,将设备管理和遥测视为 Magma 的首要职责,可以大大降低运营接入网的复杂性和成本(第 4.3.1 节)。
我们并不指望当前 Magma 的功能分解(图 4)是最基本的,但我们的经验表明,无论从工程角度还是从广泛的用例来看,至少是有用的(第 4 节将进一步讨论)。组件之间的模块化使 Magma 的内部接口可以独立于 RAN 发展,这与迭代开发方法相一致,与 3GPP 僵化的接口定义形成鲜明对比,使得团队能够对 AGW 功能进行重大改变,如添加新功能(如 5G 支持)或重构内部服务,而不需要将这些变化向南向 RAN 或向北向调度器 API 暴露。
图 4 左边特定于 RAN 的模块和右边的通用功能之间的所有通信都基于 gRPC[5],这是一个开源 RPCRPC 框架,所有长距离通信(例如从 AGW 到编排器)也是如此。虽然这是构建现代分布式系统的典型方法,但与为 3GPP 组件之间的通信协议有很大不同,后者将终端(如 UE 和 MME)的一致性要求泄露到网络级协议中。通过在 HTTP 上运行,gRPC 继承了 TCP/IP 对丢包和延迟的弹性,这在一些为更良好的受控环境(如专线)而设计的 3GPP 协议中是没有的。一个具体例子是 GTP(GPRS 隧道协议,GPRS Tunneling Protocol),它对丢包和延迟很敏感,以至于在质量较差或拥挤的回传链路(如卫星或共享微波链路)上很难运行。因此,采用 gRPC 使 Magma 有更大的自由度来实施替代的一致性模型,而不会在更多样化的回传网络条件下破坏 UE 状态机。在实践中,这种容忍度有助于减少设备上的错误处理。虽然 UE 在经历了 3GPP 协议级故障后应该重新连接,但我们发现某些使用了低端基带处理器的 UE 无法完成可靠的处理。当 UE 无法重连时,故障表现让使用这些设备的人感到困惑,他们会觉得这是因为信号不好,而且故障通常只在强制 UE 重启后才会解决。由于 Magma 在 AGW 本地终止 GTP,不用穿越回传链路,所以 UE 永远不会经历 GTP 连接中断,也不需要处理这类错误。
虽然和无线技术无关,但 Magma 必须对功能开发优先级做出实际选择。许多早期 Magma 部署使用的是 LTE,所以优先支持 LTE 功能,而把 5G 的支持放在后面。一个很好的例子是对 QoS 策略的支持,如第 2.2 节所述,今天 LTE 和 5G 都支持实行速率限制和使用上限的简单策略。当然也可以支持更复杂的策略(尤其是在 5G 中),目前正在开发对更丰富策略的全面支持。
3.2. 分层 SDN 控制平面
Magma 采用软件定义网络(SDN)架构,以减少操作复杂性以及对熟练员工的依赖。运营商不用基于分布式的设备集合进行配置,而是在编排器上指定整个网络的策略。编排器提供了中央控制点,并公开北向 API,以便与其他系统集成(例如,用于指标、警报和监控的系统)。然而,在单一中央控制器中运行整个控制平面会对系统的可扩展性造成限制。因此,像网络虚拟化平台(NVP,Network Virtualization Platform)[37]和开放虚拟网络(OVN,Open Virtual Network)[42]这样的实用 SDN 系统采用了分层的控制平面,这也是 Magma 使用的模型。
在分层控制平面设计中,我们确定控制平面中哪些组件会影响全网范围,这些组件是中央控制器的候选对象。例如,为了向网络添加新用户,关于该用户的长期信息是全网信息,由中央控制器创建和维护。相反,与 UE 相关的许多运行时状态可以被定位到单个 AGW。例如,UE 接入时与某个 AGW 相关联,UE 会话状态可以由该 AGW 的本地控制平面创建和管理。因此,大部分控制平面能够随着基站和用户数量的增加而扩展,而不会增加中央控制器的处理负载。
中央控制平面和本地控制平面之间的这种划分大致上与控制平面状态变化的时间尺度相一致。新用户的增加发生在配置时间尺度上,该状态是集中管理的。会话状态的创建(当 UE 接入并连接到 AGW 时)发生的频率更高,这种运行时状态由 AGW 的本地控制器处理。
与任何 SDN 架构一样,必须考虑"无头(headless)"操作,即数据平面节点与中央控制平面断开连接的情况。在传统 SDN 方法中,目标是确保数据平面在没有控制平面的情况下继续运行,只是在控制平面断开时,无法对数据平面进行更新。有了分层控制平面,即使无法连接中央控制器,许多本地操作仍然可以处理。例如,因为本地控制平面有足够的信息(例如,缓存的用户资料)来处理会话的建立,AGW 仍然可以为连接到基站的 UE 建立会话。相反,网络范围内的活动,如增加用户或改变用户策略,必须等到中央控制平面再次可用。Magma 对可用性和一致性进行了权衡,正如 CAP 定理[22, 28]所暗示的那样。一般来说,唯一的问题是在断开连接时,存储在 AGW 中的状态有可能是旧的,比如可能允许 UE 暂时消耗超过其配额的资源。
这种设计有助于实现 Magma 的可扩展目标,既允许最小足迹(缩容),也允许扩大规模。最小的 Magma 部署可以是单一 AGW 和一个编排器。编排器通常是部署在云上的三个虚拟机实例,而 AGW 本身是一个小型(4 核)X86 商品服务器。这比传统蜂窝式分组核心网的硬件要少得多。扩容基本上只需要增加 AGW,从而可以支持更多基站和 UE,而编排器上的负载没有增加多少。第 4.3 节将讨论我们在扩容方面的经验。
将本地控制面功能放在 AGW 上的决定,虽然有利于可扩展性,但确实需要权衡利弊,尤其是这样会让一些需要 AGW 之间协调的功能变得复杂。值得注意的是,虽然 Magma 支持同一个 AGW 提供服务的基站之间的移动性,但 AGW 之间的无缝移动性需要在切换期间从一个 AGW 到另一个 AGW 进行一些控制面状态的通信。虽然没有这个功能也能支持许多用例,但希望将来能增加这一功能。
3.3. 小型故障域的容错
基于 Magma 建立低成本解决方案的愿景,对架构如何处理容错有很大影响。低成本硬件很容易发生故障,因此 Magma 采用了大多数现代云系统的一致看法,即预计个别组件会发生故障,但必须控制单一组件故障影响到的用户(即故障域必须很小),并且不能影响其他组件。这种方法对软件升级等操作也有积极影响,因为有可能在不关闭整个系统的情况下独立升级小部件,这与传统 3GPP 实施方式形成了鲜明对比。
Magma 类似 SDN 的架构比典型 3GPP 实施更充分的将状态本地化。在标准实施中,UE 运行状态分散在几个大型组件中(例如,LTE 下的 PGW、SGW 和 MME)。相比之下,Magma 将 UE 运行状态定位到单一 AGW,从而简化了故障处理。存储在 AGW 中的运行状态被定期检查,并可能被复制到作为云服务运行的 AGW 备份实例。当一个 AGW 发生故障时,备份云实例接管服务,管理受影响的一组 UE 连接,直到主 AGW 被重启。如上所述,即使与编排器断开连接,AGW 也可以继续与 UE 建立会话。第 3.4 节中描述的状态同步方法可以减轻这种故障的长期影响。
虽然传统蜂窝分组核心网通常需要为数百万用户服务,但 Magma 将大部分功能分配给了大量接入网关,因此每个 AGW 都是一个故障域,维持少量(通常少于 10 个)基站服务的相对较少的 UE 状态。单个 AGW 故障会影响到目前由附属基站服务的 UE 集合,但对网络其他部分或其他客户没有影响,这与标准移动核心网实施中典型的大型故障域形成了鲜明对比。
3.4. 状态同步
移动核心网的状态需要在组件之间进行同步,一般来说,某个组件是某些状态的权威所有者,需要与其他组件同步状态。在 Magma 中,状态可以采取三种形式之一,Magma 对此做出不同的保证。
首先是与 UE 及其网络活动相关的运行时状态。与现有用户设备和 RAN 设备的向后兼容性要求 Magma 实现标准定义的状态机,以支持网络接入等操作。由于 UE 本身、RAN 设备或 Magma 的"核心"网元中的事件,运行时状态的修改随时可能发生。重要的是,Magma 中的运行时状态被封装在 AGW 中,如第 3.3 节所述,AGW 是 Magma 的故障域,我们为 AGW 定义了崩溃恢复故障模型。此外,大多数运行时状态都是短暂的,在发生故障时可以恢复,比如 UE 可以重新接入。
其次是配置状态,与 Magma 网络组件(如 AGW)的配置相关。该状态只会由编排器写入并异步推送到 AGW,例如应用于用户类别的网络策略,或由 AGW 应用于连接的 RAN 设备的无线配置。AGW 在崩溃后会恢复配置状态,配置状态的真实来源持久存储在编排器中(Postgres),允许通过编排器修改配置状态。配置状态通常在人能够感知的时间尺度上发生变化(即几分钟或几小时)。
最后,Magma 还管理指标状态,即来自 Magma 组件的遥测数据。这些数据虽然有用,但都是基于尽力而为模型采集的。
像其他云原生系统一样,Magma 对运行时状态和配置状态采用了"期望状态"模型。意思是,为了同步所需的状态变化(例如,在数据平面中增加一个新会话),其最终状态是通过 API 设置的。这与 3GPP 规范中常见的"CRUD(创建、读取、更新、删除)"接口形成对比。Magma 用期望状态模型取代了 CRUD 模型,以简化部分故障情况下对系统各组件变化的推理。这是在挑战环境中常见的情况,端到端系统的一部分(如回传)远不如其他部分(如 UE 和 RAN 之间的链接)可靠。下面将通过一个简单的例子来进一步解释。
考虑在 AGW 中为一组活跃会话建立数据面状态的情况。假设有两个活跃会话,X 和 Y,然后第三个 UE 接入,需要建立会话 Z。在 CRUD 模型中,控制平面将指示数据平面"添加会话 Z"。相比之下,期望状态模型将传达整个新状态:"现在会话集合是 X、Y、Z"。CRUD 模型在面对故障时很脆弱,如果丢了一个消息,或者某个组件暂时无法接收更新,接收端就会与发送端不同步。因此,控制平面有可能认为会话 X、Y 和 Z 已经建立了,而数据平面只有 X 和 Y 的状态。通过发送所有状态,可以确保一旦接收端能够再次接收消息,就会重新与发送端同步。
这种方法在云原生世界中并不新奇,但与典型的 3GPP 系统不同,从而允许 Magma 容忍偶尔的通信失败(例如由低质量回传引起的失败)或由于软件重启、硬件故障等导致的组件失效。将 3GPP 协议的范围限制在网络的最边缘,使我们能够灵活的重新考虑状态同步,以提高容错能力(此外还有上面提到的其他好处)。
最后,考虑一下 Magma 如何管理一个特别的策略状态:根据数据量向用户收费,以及重复消费的可能性。基于数据量的计费策略通常使用第三方在线收费系统(OCS)来实现,该系统与网络运营商现有的业务支持系统(BSS)以及 Magma 集成。在这种安排下,计费和收费(billing and charging) 由 OCS 处理,而 Magma 处理计量和记账(metering and accounting) 。OCS 跟踪用户账户余额(如美元),然后通过 Magma 向用户授权少量数据配额(如 1MB)。当用户接近用完其配额时,Magma 代表用户向 OCS 申请另一个配额,OCS 决定是否批准或拒绝该请求。从 Magma 的角度来看,一个用户是否被分配了配额是配置状态,而用户当前配额的剩余量是运行时状态。因此,虽然某个恶意用户有可能通过在 AGW 之间战略性移动来实现双花,但作为商业决策,允许的最大双花消费额度是以配额大小为上限的。对于那些特别关注这个问题的运营商,也可以在分布式环境中采用基于容量的记账技术[31]。
3.5. 软件数据平面实现
数据平面负责(i)识别活跃会话的流量(进出活跃 UE 的流量);(ii)收集这些流量的统计数据;(iii)添加和删除隧道头;以及(iv)执行策略,如每个用户的速率限制。Magma 数据平面使用 Open vSwitch(OVS)[47]实现,OVS 提供了可编程数据平面,由 OpenFlow[39]控制。虽然 OpenFlow 和 OVS 是方便的实现选择,但不是架构的根本,未来也可以选择其他实现。重要的是,数据平面是高度可编程的,并且完全用软件实现。
数据平面的软件实现使 Magma 能够在商用硬件上运行。虽然数据平面的吞吐量、延迟和抖动对蜂窝网络很重要,但我们发现 OVS 提供了完全足够的性能,OVS 的性能已经被研究和优化了很多年[47]。在第 4 节中,我们评估了 OVS 在 Magma 环境中的性能。值得注意的是,系统的其他方面,如回传和 RAN 容量,可能比接入网关内的数据平面有更大的总体性能影响。
图 4 中的"数据平面配置"生成一组基于规则对数据平面进行编程所需的指令,以处理当前会话流。目前,这些命令都是 OpenFlow 命令,如果用不同转发引擎替换 OVS,那么只有"数据平面配置"组件会受到影响。
3.6. 与其他网络联合
到此为止,我们已经介绍了 Magma 的的独立部署模式,Magma 的所有可能的部署模式如下:
独立部署(Standalone) 。Magma 支持独立的网络,所有 3GPP 控制和用户平面流量都在 AGW 中终止。
本地分发漫游(Local breakout roaming) 。Magma 与现有蜂窝网络联合,控制面流量在外部终止,但用户面流量仍由 AGW 处理,并直接路由进出互联网的流量。
归属地漫游(Home roaming) 。Magma 与现有蜂窝网络联合,控制和用户平面通信都终止在外部网络中。
与 AGW 终止来自无线网络的特定接入协议一样,Magma 引入了额外组件来终止与外部核心网络的特定接入协议,该组件被称为联盟网关(FeG, Federation Gateway) 。FeG 实现了 3GPP 定义的接口,以支持"归属地漫游"和"本地分发漫游"。AGW 中提供了丰富的策略执行,因此后者在 Magma 中是可能的。例如,AGW 可以通过查询联合网络中的用户数据库获得适用于 UE 的策略,然后在 AGW 中执行该策略。UE 和 MNO 核心网之间的信令流量由编排器中的 FeG 服务处理。用户数据面流量通过隧道连接到一个类似组件,即 GTP 聚合器(GTP-A, GTP Aggregator),它反过来连接到 MNO 现有的 P-GW。
与 AGW 不同,FeG 和 GTP-A 是路径上的集中式设备,这么设计基于一个实际的目的:传统的 MNO 喜欢在敏感的核心网络和"扩展"网络之间通过单一接入点互连[31]。正如第 4.3.2 节所讨论的,这对可扩展性有影响。
4. 演进
Magma 做出了一些与传统核心网不同的基本设计选择,以提高灵活性和可扩展性,同时支持丰富的网络策略,目的是为了支持实际的蜂窝接入部署。为了评估 Magma,我们首先考虑模拟环境中的系统性能,然后讨论大规模商业部署。
4.1. 支持典型部署
仿真测试平台
尽管可以基于小规模部署评估 Magma 在实际部署中的性能,但评估有数百个 UE 和 RAN 组件的场景是不切实际的。此外,由于隐私和商业考虑,很难从商业部署中提取数据。因此,我们使用商业仿真系统 Spirent Landslide[53]来评估 Magma,该系统允许我们以可复制的方式仿真虚拟 UE 和 RAN 组件的任意配置。
我们在评估中部署了 Magma 的最新稳定版本,即 v1.6.1,在实验室的 AWS EC2 实例集群和两个 AGW 上部署了编排器。第一个 AGW 是裸机 AGW,运行在 Intel J3160 4 核 1.6GHz CPU 上,有 8GB 内存和 4 个英特尔 I210 1Gbps 网卡。第二个是运行在 Intel Xeon 6126 2.60GHz、8GB 内存和 2 个 10G Mellanox ConnectX-3 网卡上的虚拟 AGW。我们为虚拟 AGW 分配了可变数量的 vCPU,下面的实验中会有定义。裸机和虚拟 AGW 都直接连接到 Landslide 模拟器上,并分别通过 1Gbps 和 10Gbps 链接连接到互联网。我们还验证了在实验中,内存不是 AGW 的瓶颈,并且编排器部署中的所有机器都在容量阈值下运行。最后,在所有实验之前,模拟 UE 的模拟 SIM 卡被预先配置给编排器和 AGW,这是网络运营商部署 Magma 的典型做法。
与传统核心网不同,Magma 的 AGW 与 RAN 设备同处一地(例如,在塔台站点),Magma 的扩展单位是 AGW 本身:随着运营商网络增长,既需要增加额外的 RAN 容量(即无线设备),也需要增加"核心网"容量(即 AGW 实例)。由于 AGW 处于与基站相关的所有流量的路径上,AGW 的配置应该保证基站容量只受到 RAN 容量的限制,而不是 AGW。这是一个值得注意的点,在一定程度上激发了 Magma 的设计:当将核心网功能与 RAN 网元共址时,RAN 是站点的性能瓶颈。
推荐(典型的)部署方案是每个"基站"有一个 AGW,在 LTE 网络的情况下,实际上是由 1-3 个 eNodeB 组成。一个典型 eNodeB(如表 2 或图 2 中描述的)最多可以支持 96 个同时活跃用户以及最多 20MHz 无线信道,这个信道容量又对应于理想条件下 126Mbps 的峰值总吞吐量[16],典型基站最大容量为 378Mbps。我们注意到,与基站成本相比,AGW 的额外成本并不高,与相关工作中观察到的基站成本分类相似[31]。虽然 LTE 基站的成本变化很大,而且根据我们的经验,主要成本是非网络,如土地、电力和塔台(也称为"无源基础设施"),一个代表性部署可能包括表 2 中的硬件,AGW 成本占基站有源设备成本的 3%以下。电力成本在"离网"地点可能特别重要,但这些成本主要由无线设备的电力需求驱动,因此不会受到移动核心网实施的很大影响。请注意图 2 中对太阳能和电池电源的使用。
表 2: 典型 Magma 部署的有源 RAN 设备成本明细,不包括特定地点的无源基础设施和回传费用。
Magma 必须能够支持这种类型的工作负荷。我们通过模拟上述基站的峰值负载来评估:共有 288 个 UE 以 3UE/秒的速率接入(或"附着")到网络,然后每个 UE 以 1.5Mbps 的速率执行简单的 HTTP 下载,总负载为 432Mbps。图 5 展示了结果,重点是 AGW 的总 CPU 利用率和实现的吞吐量。简单来说,AGW 在大约 1.5 分钟内接受了所有新用户的连接请求,之后 AGW 在 UE 发出 HTTP 请求的时间内进入稳定状态。在这个实验中,UE 的平均持续吞吐量在整个实验期间达到了预期的 432Mbps,表明性能受到 RAN 的限制,而不是 Magma 的 AGW,和预期一致。
图 5:基站在最大"典型"工作负载下的 AGW CPU 利用率,总吞吐量受限于无线容量,而不是 AGW。
我们承认,其他的 RAN 配置(包括 vRAN/cRAN)也可以存在,许多 RAN 组件可以有效的同时运行在同一个运营商网络节点上。Magma 可以有效用于这些部署,分配一个(或多个)AGW 来支持一系列 RAN 设备。然而,到目前为止,没有大规模 Magma 部署使用这种配置(据我们所知),Magma 可以部署在任何通用计算上(例如,虚拟机或容器),与 RAN 基础设施一起运行。同样,无线设备供应商可以将 AGW 集成到与传统 eNodeB 相同的物理设备中,以实现 RAN 和 AGW 组件的整合。
4.2. 控制面与用户面分离
不同的网络使用模式会对核心网用户平面或控制平面组件造成压力:前者的一个常见例子是人类用户访问视频内容,而后者的例子则是大量设备组成的物联网工作负载,它们只偶尔交换一些小信息。这给传统蜂窝核心网带来了重大的可扩展性挑战,并促使人们努力将控制平面和数据平面组件分离,以便运营商可以独立(静态或动态)扩展,这在 LTE 和 5G 中被称为"控制/用户平面分离(CUPS)"。
Magma 的分布式设计很容易实现 CUPS 架构。默认情况下,每个 AGW 在网络边缘实现数据平面,所有控制平面功能都在 AGW 上作为用户空间进程实现,配置状态由编排器管理。
图 5 中我们可以看到 AGW 在两个不同的特征域内运行。实验开始时,当 UE 接入网络时,AGW 的 CPU 主要处理接入请求相关的控制平面工作负载,包括执行验证用户所需的加密操作,以及在数据平面和控制平面设置用户、会话的状态,为 UE 实现所需策略。根据我们的经验,这是计算最密集的控制平面流程。当 UE 接入后,CPU 主要处理与转发 UE 流量有关的用户平面工作负载。
图 6 说明了裸机 AGW 是如何应对"最坏情况"时的控制平面工作负载的,即新 UE 激增,然后造成数据平面饱和。我们将连接成功率(CSR,connection success rate) 定义为实验期间每 5 秒钟的连接尝试总数中,成功的连接尝试数量。我们观察到,在超过 2UE/s 时,裸机 AGW 无法为所有连接尝试提供服务,连接成功率(CSR)在超过这一点时呈线性下降。在每个 AGW 的基础上,Magma 的控制平面性能相对有限,工程上正在积极改善这一点。接入率也是硬件的一个功能:虚拟 AGW 的 4 个 vCPU 实例支持每秒 16 次接入,这将使上述"典型"站点的 RAN 容量在 18 秒内达到饱和。
图 6:支持的最大接入率受到 AGW(特别是 MME 组件)的限制,结果来自物理 AGW。
图 7:稳态吞吐量与分配给用户平面的 CPU 对比,注意流量生成器在 5CPU 以上的情况下无法使虚拟 AGW 的用户平面达到饱和。
图 8:连接成功率中位数与用户平面分配的 CPU 数量之比。
最后,考虑每个 AGW 对控制和用户平面的资源分配。为了做到这一点,我们静态限制了用户平面可用的内核数量,并评估了稳态吞吐量和中位连接成功率,结果显示在图 7 和图 8 中。请注意,实验使用的是虚拟机 AGW,因此绝对吞吐量数字与早期实验没有可比性。我们观察到,增加用户面可用内核可以提高稳态吞吐量,代价是降低连接成功率(即控制面性能),但是允许内核调度器在用户面和控制面任务之间灵活分配资源,可以提供高吞吐量和良好的连接成功率。我们注意到,可以将用户面性能提高到超过当前所显示的性能,不过我们用的商业测试设备无法产生超过 2.5Gbps 的总负载。
综合仿真结果表明,Magma 可以用低成本商品硬件处理典型工作负载。对于更密集的工作负载,Magma 的控制面和用户面容量可以随着额外的硬件而扩展。最后我们注意到,这些结果为单个 Magma AGW 的性能定义了一个上限,Magma 网络的容量与 AGW 呈线性扩展关系。
4.3. 部署
接下来看看 Magma 的大型商业部署。首先请注意,Magma 是一个由 Linux 基金会管理的开源项目,因此核心开发团队(包括本文作者)并不直接运维任何生产部署,所有例子来自项目生态系统内的合作伙伴。
Magma 的采用情况。 为了了解 Magma 在实践中的使用情况,我们采访了两位在 Magma 开源项目的产品管理和营销部门工作的人,他们经常与运营商以及 Magma 生态系统中的其他商业实体交流。根据我们的讨论,截至 2022 年 2 月,在非洲、亚洲、北美和南美的 8 个国家,有 20 个商业网络正在使用 Magma 运营。这些网络支持一系列接入模式和策略。例如,Magma 已被用于为 WiFi 热点提供回传的网络,为家庭和企业提供固定无线宽带,将传统移动运营商的服务扩展到室内 WiFi 的"运营商"WiFi,以及传统移动宽带服务。今天,Magma 代码库有大约 100 个活跃提交者。
Magma 的部署情况。 为了展示 Magma 的使用情况,我们与最大的商业实体之一 FreedomFi 合作,为部署 Magma 的运营商提供支持。FreedomFi 提供了两个重要部署的数据,这些数据经过了去标识化处理,我们在分析中只使用运营数据(而不是用户数据)。
4.3.1. 固定无线热点
FreedomFi 的首批商业部署之一是 AccessParks[1],一家位于美国的运营商,在大型户外区域提供公共 WiFi 热点网络,在他们部署的地方需要多个 WiFi 接入点(AP)以提供一致的服务。随着 CBRS 频谱的出现,AccessParks 试图用 LTE 为其中某些大型部署的 WiFi 热点提供回传服务。终端用户通过传统 WiFi 机制和现有受控门户系统连接到 AccessParks 的 WiFi 接入点,而 Magma 网络中的 UE 是固定无线调制解调器,将 WiFi AP 连接到互联网。图 10 说明了该设置。
图 9: 2022 年 3 月至 4 月期间每小时 AccessParks 的使用量。
图 10:由 Magma 提供无线回传的 WiFi 热点。这是 AccessParks 在其部署中使用的网络架构,终端用户通过标准机制连接到 WiFi 接入点,而流量则通过本地蜂窝调制解调器从热点回传到 Magma 支持的 LTE RAN。请注意,如果网络运营商适当配置并允许的话,该设计并不排除终端用户直接连接到 LTE 网络。
AccessParks 于 2020 年 12 月开始部署 10 个试点站点,以评估 Magma。今天,该网络由 14 个站点组成,为 200 多个接入点提供回传服务,并计划继续扩大。图 9 介绍了网络活跃用户和每小时吞吐量。
AccessParks 网络策略非常简单。因为 LTE 网络只是作为回传,所有 UE 的访问都可以不受限制。每个用户的策略由 AccessParks 预先配置在使用标准技术(即 WiFi 接入点 AAA 的 RADIUS)的专属门户和预付费计费软件中。
运维复杂性。 AccessParks 最初试点 Magma 的部分动机是他们在前两年的部署中对其他商业和开源蜂窝核心软件运维复杂性的不良体验。虽然运维复杂性是主观的,但表现出来的一个可量化指标是运营商的劳动力成本,更简单的系统应该需要更少的员工时间和支持来管理,表 3 显示了 AccessParks 的比较结果。对于相同的接入网基础设施,与传统架构相比,AccessParks 使用 Magma 的持久性部署成本减少了 43%,主要受益于支持成本和站点配置和规划工程时间的减少。
表 3:AccessParks 的传统蜂窝系统与 Magma 的每站点安装成本比较,每站点总成本下降了 43%,主要是由于 Magma 降低了部署的操作复杂性。
4.3.2. 特许加盟 MNO(Franchised MNO Extension)
第二个(据我们所知也是最大的)Magma 部署是一个早期阶段部署,以提供一个特许、中立主机网络,其独特之处在于,网络基础设施的实际部署不由任何一个网络运营商管理。相反,"微型网络运营商"(包括个人、小型 ISP 和企业)将 LTE 和 5G RAN 设备与 FreedomFi 定制的 Magma AGW 一起部署,以支持其专有的流量计费和结算系统。
服务和策略。 中立主机网络由 FreedomFi 运营,允许现有移动网络运营商客户使用该网络进行服务。该网络支持的核心"策略"是将所有用户流量传回适当的移动网络运营商,而用户的移动网络运营商则在其现有核心网络内应用其标准网络策略进行计费、收费和流控。FreedomFi 网络在尽力而为基础上提供接入,每个微型网络运营商利用 3.5GHz 频段的共享 CBRS[17]频谱(如之前介绍的部署)。这项服务需要将数以千计的分布式 AGW 与合作伙伴 MNO 的集中式核心网整合起来,需要利用第 3.6 节中介绍的联盟功能。
规模。 截至目前,该网络仍处于早期测试阶段,所以没有大规模用户流量。然而,仍然提供了一个有用的例子,说明 Magma 控制平面如何随着网络规模的扩大而扩大。即使没有用户,Magma 仍然管理设备配置、网络监控,并支持与合作伙伴 MNO 核心网的互连。
FreedomFi 网络于 2021 年 11 月开始初步部署,截至 2022 年 4 月,由 5370 个 AGW 和 880 个 eNodeB 组成(FreedomFi 报告说,AGW 和 eNodeB 数量的差异是由于供应链问题,AGW 是商品 X86 PC,而蜂窝无线电是专业设备,供应商较少,该网络中使用的设备 2022 年 1 月才开始发货)。目前,该网络平均每周增加 150 个新的 AGW 和 90 个新的 eNodeB,所有这些都由微型网络运营商临时部署,分布在全美 45 个州。
有一个专门的编排器支持这个网络,运行在 6 个由 Kubernetes(EKS)管理的 AWS 虚拟机上[18]。其中 3 个实例专门用于"重量级"任务,如运行 FeG、配置设备和报告指标,这些系统都配备了 16 个 vCPU 和 32GB 内存。其余编排器服务运行在一个较小的虚拟机集合上(4 vCPU/16GB RAM)。GTP-A 运行在一台带有 3.4GHz 8 核至强 E2278G CPU、32GB RAM 和 2x10G 网卡的裸机服务器上,并部署在合作伙伴 MNO 的核心网设施附近。总体来说,FreedomFi 每月运营成本约为 4000 美元。
我们认为该网络的快速部署谨慎证明了 Magma 有能力支持具有独特商业模式的大规模网络,希望在未来的工作中能进一步研究这个网络的运行动态。
5. 相关工作
开源 LTE/5G 核心网。 有几个项目与我们目标一致,即创建一个开源的 LTE/5G 蜂窝核心网[4, 9, 10, 13]。在这些项目之前,也有类似的努力来建立开放的 2G 和 3G 网络[11, 12]。除了 OpenBTS[11] (一个 GSM 到 VOIP 的桥接),每一个都专注于实现传统的、符合 3GPP 标准的核心网络。Aether[2, 43]是一个开源 5G 连接边缘平台,集成了 5G 连接和边缘云服务器。与 Magma 一样,Aether 采用云原生设计原则,然而并没有重构网络设计以打破无线接入技术与核心网的耦合,而且 Aether 并不关注低成本设备以覆盖服务不足的用户。
扩展网络连接。 已经提出了很多新的建议及解决方案,以扩大互联网接入服务,为边缘人群服务[25, 30, 44, 45, 48, 55, 56]。同样,如社区网络[3, 6, 7, 21]和小型 ISP[32]等小规模网络运营商有丰富的为农村社区提供服务[27]的历史。在这些广泛领域中,Magma 与社区蜂窝网络的工作关系最为密切[19, 33, 51]。
NextG 蜂窝核心架构。 网络研究界正在积极思考下一代网络设计。PEPC[50]通过将用户状态整合到一个位置来重构分组核心网,其精神与 Magma 的 AGW 相似。ECHO[40]重构了 EPC,以在不太可靠的公共云基础设施上运行。SCALE[20]探索了可弹性扩展的蜂窝控制平面,KLEIN[49]介绍了类似的弹性控制和数据平面。虽然这些工作都集中在(逻辑上)中心化的核心网,但所介绍的技术也是对 Magma 的有益补充。
其他工作采取了更"干净"的方法来重新设想蜂窝核心网。CellBricks[38]考虑了高度联合的蜂窝网络,并将对移动性、认证和计费的支持转移到终端主机,其实现为 Magma 的扩展。SoftCell[34]采用 SDN 原则来提高分组核心网的可扩展性和灵活性。Magma 借鉴了这些工作的灵感,同时保持了向后兼容的、符合标准的边缘,以促进生产部署。
Magma 的想法直接源自最近对服务不足社区的核心架构探索工作。CCM[31]提出了分布式的蜂窝 2G 核心网,能够在不可靠的农村回传连接上实现半断开操作,这项工作是 Magma 的早期灵感来源,并将这些概念扩展到现代无线接入技术。同样,CoLTE[52]提供了一个轻量级核心网,和 AGW 一样,与 RAN 网元共处一地,但与 Magma 不同的是,它侧重于小型、独立的社区网络。
开放无线接入网。 最近的一些倡议集中在开放无线接入网。例如,OpenRAN 项目[59]和 O-RAN 联盟[8,41]制定了解耦的 3GPP RAN 标准,各层之间有开放接口。这些努力是对 Magma 的补充,专注于蜂窝接口,即 Magma 接入网关之前的那部分网络。
6. 结论
本文介绍了我们在设计和部署 Magma 方面的经验,Magma 是用于构建接入网络的开源平台,其最重要的设计决定是在靠近无线的接入网关中终止特定的 RAN 协议,这个简单的设计决定带来了许多好处:支持不同的无线技术,容忍回传链路的中断,使用低成本软件数据平面,并通过分层 SDN 控制平面实现自然扩展。Magma 还采用了现代云计算设计模式(例如,期望状态同步,容忍单个组件故障)和开源软件组件(例如,gRPC、Open vSwitch、Kubernetes、Prometheus)。根据 Magma 支持实用网络的目标,我们展示了 Magma 可以支持的典型部署场景,并讨论了两个基于 Magma 的大规模商业网络。重要的是,Magma 还可以缩小规模,其最小占地面积小,支持增量部署,从而填补了传统 WiFi 和蜂窝网络之间的空白。Magma 的所有软件组件都可以在 GitHub(https://github.com/magma/magma)上找到。
Magma 的主要设计目标是通过支持异构无线和回传技术,降低资本和运营成本,覆盖服务不足的社区。我们相信,Magma 也很适合其他部署场景,包括企业 5G 网络。Magma 未来的工作是扩大支持的功能集,包括接入网关之间的无缝移动性以及网络虚拟化。我们期待着扩展 Magma 代码库,以及软件贡献者社区,从而发展平台为更多用户服务。
参考文献
[1] AccessParks. https://accessparks.com/. Retrieved 7/2022.
[2] Aether. https://www.aetherproject.org/. Retrieved 7/2022.
[3] AlterMundi. https://altermundi.net/. Retrieved 7/2022.
[4] free5GC. https://www.free5gc.org/.
[5] gRPC. https://grpc.io/. Retrieved 7/2022.
[6] Guifi.net. https://guifi.net/. Retrieved 7/2022.
[7] NYCMesh. https://www.nycmesh.net/. Retrieved 7/2022.
[8] O-RAN Alliance. https://www.o-ran.org/.
[9] Open Air Interface. https://openairinterface.org/.
[10] Open5Gs. https://open5gs.org/. Retrieved 7/2022.
[11] OpenBTS. http://openbts.org. Retrieved 7/2022.
[12] Osmocom. https://osmocom.org/projects/cellular-infrastructure. Retrieved 7/2022.
[13] srsRAN. https://www.srsran.com/.
[14] Universal Mobile Telecommunications System (UMTS); LTE; Policy and Charging Control (PCC); Reference points. https://www.etsi.org/deliver/etsi_TS/129200_129299/129212/15.03.00_60/ts_129212v150300p.pdf. (3GPP TS 29.212 version 15.3.0 Release 15).
[15] 3GPP: The mobile broadband standard. https://www.3gpp.org/.
[16] 3GPP: Evolved universal terrestrial radio access (EUTRA); physical layer procedures. https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=2427.
[17] CBRS Alliance. https://www.cbrsalliance.org.
[18] Amazon Elastic Kubernetes Service (EKS). https://aws.amazon.com/eks/.
[19] Abhinav Anand, Veljko Pejovic, Elizabeth M Belding, and David L Johnson. VillageCell: Cost Effective Cellular Connectivity in Rural Areas. In International Conference on Information and Communication Technologies and Development, pages 180–189, 2012.
[20] Arijit Banerjee, Rajesh Mahindra, Karthik Sundaresan, Sneha Kasera, Kobus Van der Merwe, and Sampath Rangarajan. Scaling the LTE Control-Plane for Future Mobile Access. In ACM SIGCOMM CoNEXT Conference, pages 1–13. ACM, 2015.
[21] Luca Belli, Sarbani Banerjee Belur, Peter Bloom, Anriette Esterhuysen, Nathalia Foditsch, Maureen Hernandez, Erik Huerta, Mike Jensen, Meghna Khaturia, Michael J Oghia, et al. Community Networks: The Internet by the People, for the People. FGV Direito Rio, December 2017.
[22] Eric Brewer. CAP Twelve Years Later: How The "Rules" Have Changed. Computer, 45(2):23–29, 2012.
[23] Jyh-Cheng Chen, Ming-Chia Jiang, and Yi-wen Liu. Wireless LAN security and IEEE 802.11i. IEEE Wireless Communications, pages 27–36, February 2005.
[24] T. Charles Clancy. Secure handover in enterprise WLANs: Capwap, Hokey, and IEEE 802.11R. IEEE Wireless Communications, pages 80–85, October 2008.
[25] Michaelanne Dye, David Nemer, Josiah Mangiameli, Amy S Bruckman, and Neha Kumar. El Paquete Semanal: The Week’s Internet in Havana. In CHI Conference on Human Factors in Computing Systems, pages 1–12, 2018.
[26] Armando Fox, Steven D Gribble, Yatin Chawathe, Eric A Brewer, and Paul Gauthier. Cluster-based Scalable Network Services. In ACM Symposium on Operating Systems Principles, pages 78–91, 1997.
[27] Hernan Galperin and François Bar. The Microtelco Opportunity: Evidence from Latin America. Information Technologies and International Development, 3(2), 2006.
[28] Seth Gilbert and Nancy Lynch. Brewer’s Conjecture and the Feasibility of Consistent, Available, PartitionTolerant Web Services. SIGACT News, 33(2):51–59, jun 2002.
[29] GSMA. Unlocking Rural Coverage: Enablers for commercially sustainable mobile network expansion, 7 2016. https://www.gsma.com/mobilefordevelopment/resources/unlocking-rural-coverage-enablers-commercially-sustainable-mobile-network-expansion/
[30] S. Guo, M. H. Falaki, E. A. Oliver, E. A. Oliver, S. Ur Rahman, S. Ur Rahman, A. Seth, M. A. Zaharia, and S. Keshav. Very Low-Cost Internet Access Using KioskNet. ACM SIGCOMM Computer Communication Review, 37(5):95–100, 2007.
[31] Shaddi Hasan, Mary Claire Barela, Matthew Johnson, Eric Brewer, and Kurtis Heimerl. Scaling Community Cellular Networks with CommunityCellularManager. In USENIX Symposium on Networked Systems Design and Implementation, pages 735–750, 2019.
[32] Shaddi Hasan, Yahel Ben-David, Max Bittman, and Barath Raghavan. The Challenges of Scaling WISPs. In Annual Symposium on Computing for Development, pages 3–11, 2015.
[33] Kurtis Heimerl, Shaddi Hasan, Kashif Ali, Eric Brewer, and Tapan Parikh. Local, Sustainable, Small-Scale Cellular Networks. In International Conference on Information and Communication Technologies and Development, ICTD ’13, pages 2–12, Cape Town, South Africa, 2013. ACM.
[34] Xin Jin, Li Erran Li, Laurent Vanbever, and Jennifer Rexford. SoftCell: Scalable and Flexible Cellular Core Network Architecture. In ACM SIGCOMM CoNEXT Conference, pages 163–174. ACM, 2013.
[35] Matthew Johnson, Spencer Sevilla, Esther Jang, and Kurtis Heimerl. dLTE: Building a more WiFi-like Cellular Network (Instead of the Other Way Around). In ACM Workshop on Hot Topics in Networks, pages 8–14. ACM, 2018.
[36] Matthew William Johnson, Esther Han Beol Jang, Frankie O’Rourke, Rachel Ye, and Kurtis Heimerl. Network Capacity as Common Pool Resource: CommunityBased Congestion Management in a Community Network. ACM Human-Computer Interaction, 5(CSCW1):1–25, 2021.
[37] Teemu Koponen, Keith Amidon, Peter Balland, Martin Casado, Anupam Chanda, et al. Network Virtualization in Multi-tenant Datacenters. In USENIX Symposium on Networked Systems Design and Implementation, pages 203–216, 2014.
[38] Zhihong Luo, Silvery Fu, Mark Theis, Shaddi Hasan, Sylvia Ratnasamy, and Scott Shenker. Democratizing Cellular Access with CellBricks. In ACM SIGCOMM, August 2021.
[39] Nick McKeown, Tom Anderson, Hari Balakrishnan, Guru Parulkar, Larry Peterson, Jennifer Rexford, Scott Shenker, and Jonathan Turner. OpenFlow: Enabling Innovation in Campus Networks. ACM SIGCOMM Computer Communication Review, 38(2):69–74, 2008.
[40] Binh Nguyen, Tian Zhang, Bozidar Radunovic, Ryan Stutsman, Thomas Karagiannis, Jakub Kocur, and Jacobus Van der Merwe. ECHO: A Reliable Distributed Cellular Core Network for Hyper-Scale Public Clouds. In Annual International Conference on Mobile Computing and Networking, pages 163–178. ACM, 2018.
[41] O-RAN Alliance. O-RAN: Towards an Open and Smart RAN, October 2018. White paper, https://www.o-ran.org/s/O-RAN-WP-FInal-181017.pdf.
[42] OVN Architecture. https://www.ovn.org/support/dist-docs/ovn-architecture.7.pdf, 2021.
[43] Guru Parulkar. Aether: An Open Source Platform for Private 5G Connected Edge Cloud-as-a-Service, 2020. Keynote presentation at ONF Spotlight on 5G Connected Edge Cloud for Industry 4.0 Transformation, https://www.youtube.com/watch?v=Zn7FZyiw5KM&t=4s.
[44] Rabin Patra, Sergiu Nedevschi, Sonesh Surana, Anmol Sheth, Lakshminarayanan Subramanian, and Eric Brewer. WiLDNet: Design and Implementation of High Performance WiFi Based Long Distance Networks. In USENIX Symposium on Networked Systems Design and Implementation, 2007.
[45] Alex (Sandy) Pentland, Richard Fletcher, and Amir Hasson. DakNet: Rethinking Connectivity in Developing Nations. Computer, 37(1):78–83, 2004.
[46] Larry Peterson and Oguz Sunay. 5G Mobile Networks: A Systems Approach. Systems Approach, June 2020. https://5g.systemsapproach.org/.
[47] Ben Pfaff, Justin Pettit, Teemu Koponen, Ethan Jackson, Andy Zhou, Jarno Rajahalme, Jesse Gross, Alex Wang, Joe Stringer, Pravin Shelar, et al. The Design and Implementation of Open vSwitch. In USENIX Symposium on Networked Systems Design and Implementation, pages 117–130, 2015.
[48] Thomas Pötsch, Salman Yousaf, Barath Raghavan, and Jay Chen. Zyxt: A Network Planning Tool for Rural Wireless ISPs. In ACM SIGCAS Conference on Computing and Sustainable Societies, pages 1–11, 2018.
[49] Zafar Ayyub Qazi, Phani Krishna Penumarthi, Vyas Sekar, Vijay Gopalakrishnan, Kaustubh Joshi, and Samir R Das. KLEIN: A Minimally Disruptive Design for an Elastic Cellular Core. In ACM Symposium on SDN Research, pages 1–12. ACM, 2016.
[50] Zafar Ayyub Qazi, Melvin Walls, Aurojit Panda, Vyas Sekar, Sylvia Ratnasamy, and Scott Shenker. A High Performance Packet Core for Next Generation Cellular Networks. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication, pages 348–361. ACM, 2017.
[51] Rhizomatica. http://rhizomatica.org/, 2013. Retrieved 4/2013.
[52] Spencer Sevilla, Matthew Johnson, Pat Kosakanchit, Jenny Liang, and Kurtis Heimerl. Experiences: Design, Implementation, and Deployment of CoLTE, a Community LTE Solution. In ACM MobiCom, pages 1–16, 2019.
[53] Spirent Landslide Core Network Testing. https://www.spirent.com/products/mobile-network-testing.
[54] Statista. Internet usage worldwide—statistics & facts. https://www.statista.com/topics/1145/internet-usage-worldwide/#dossierKeyfigures.
[55] Sonesh Surana, Rabin K Patra, Sergiu Nedevschi, Manuel Ramos, Lakshminarayanan Subramanian, Yahel Ben-David, and Eric A Brewer. Beyond Pilots: Keeping Rural Wireless Networks Alive. In NSDI, volume 8, pages 119–132, 2008.
[56] William Waites, James Sweet, Roger Baig, Peter Buneman, Marwan Fayed, Gordon Hughes, Michael Fourman, and Richard Simmons. RemIX: A Distributed Internet Exchange for Remote and Rural Networks. In Workshop on Global Access to the Internet for All, pages 25–30, 2016.
[57] WBA. OpenRoaming. https://wballiance.com/openroaming/, 2021.
[58] Klaas Wierenga and Licia Florio. Eduroam: Past, Present and Future. Computational Methods in Science and Technology, 11(2):169–173, 2005.
[59] Mao Yang, Yong Li, Depeng Jin, Li Su, Shaowu Ma, and Lieguang Zeng. OpenRAN: A Software-Defined RAN Architecture via Virtualization. ACM SIGCOMM Computer Communication Review, 43(4):549–550, 2013.
[60] H. Zhu, M. Li, I. Chlamtac, and B. Prabhakaran. A Survey of Quality of Service in IEEE 802.11 Networks. IEEE Wireless Communications, pages 6–14, August 2004.
你好,我是俞凡,在 Motorola 做过研发,现在在 Mavenir 做技术工作,对通信、网络、后端架构、云原生、DevOps、CICD、区块链、AI 等技术始终保持着浓厚的兴趣,平时喜欢阅读、思考,相信持续学习、终身成长,欢迎一起交流学习。
微信公众号:DeepNoMind
版权声明: 本文为 InfoQ 作者【俞凡】的原创文章。
原文链接:【http://xie.infoq.cn/article/4a96a477735a882dd89e53cb8】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论