Janus: 基于 eBPF 的 5G 实时 AI 控制器(中)

简介: Janus: 基于 eBPF 的 5G 实时 AI 控制器(中)

6. 实现及集成

我们在这一节提供更多关于 Janus 组件的实现及其与真实 vRAN 集成的细节。


Janus 设备(Janus device)。 Janus 设备是用 C 语言实现的,可以动态链接到 vRAN 的库。它基于 eBPF[59]的用户模式(usermode)实现,我们对其进行了扩展,以增加对 Janus map、辅助函数和输出数据机制的支持。总的来说,我们不得不在基本实现的基础上增加了 5000 行代码。开发 Janus 设备代码时没有对 vRAN 函数的线程模型做任何假设(例如,调用钩子的线程的亲和性,线程调度策略和优先级等)。然而,如果知道这些信息,Janus 可以对库实现进一步优化。我们已经非常小心确保 Janus 的快速路径(钩子可能在 vRAN 功能的时间敏感部分被调用)永远不会被阻塞或抢占。附录 A.5 中有更多关于实时优化的细节。


Janus 控制器(Janus controller)。 Janus 控制器是用 Go(数据收集器)和 Python(小程序加载器/补丁程序)编写的,有 4000 行代码。控制器通过基于 TCP 的 protobuf API 与 Janus 设备进行通信,也可以使用其他接口,如 O-RAN RIC E2 接口。对于小程序的验证,我们使用开源 PREVAIL 验证器[48],并添加了 1000 行左右的扩展代码,以增加对 Janus 特定功能的支持(即辅助函数、map 等)。最后,Janus 补丁程序依靠 pyelftools[1]和 LLVM[8]来处理小程序的 ELF 文件内容。


Janus SDK。 Janus SDK 用 Python 编写(1000 行代码),与 Janus 控制器共享部分代码库,通过 LLVM 将小程序编译成 eBPF 字节码,用 eBPF[59]将字节码转换为 x86 JIT 代码,利用 nanopb[6]为小程序编译 protobuf 输出消息格式。


vRAN 集成。 将 Janus 集成到 vRAN 非常简单快捷。为了证明这一点,我们将 Janus 设备集成到两个 vRAN 软件实现中,以此作为概念验证。一个是 CapGemini 公司[35]开发的商业级 5G vCU/vDU 实现,基于英特尔 FlexRAN PHY 设计[57]。另一个是开源 OAI[26]。两者都是用 C/C++编写的,可以很简单的集成和链接 Janus 代码。对于 Janus 的集成,我们不得不在测试的每个 vRAN 功能中增加大约 50 行初始化代码,以及为引入的每个新钩子增加大约 30 行代码。

7. 性能评估

7.1. 实验设备

软硬件配置: 为了评估 Janus 性能,我们使用了一台配备 48 个物理核心(Intel Xeon Platinum 8168 @ 2.7GHz)和 196GB 内存的服务器,禁用超线程,运行 Linux v5.15,应用了PREEMPT_RT实时补丁[82],并对实时性能进行了优化,包括禁用 P 和 C-States 以及 1GB hugepages。我们选择该配置是因为这是部署 vRAN 功能的典型配置[45, 58, 93]。


图 4: vRAN 测试平台基础设施及其性能


我们用了三套配置进行评估。第一套是端到端配置,由 CapGemini[35]的商业级 5G vRAN 堆栈组成,集成了 Janus 设备(见第 6 节),一个商业级 5G 核心网,一个 100MHz 的 4×4 富士康 RU 和 5G OnePlus Nord 智能手机(图 4a)。vRAN 基于 x86,除了 LDPC[55],所有任务都在 x86 处理器上运行。使用这种配置,我们能够产生最大 1Gbps 的下行链路和 45Mbps 的上行链路流量。Janus 基于这一配置收集 IQ 样本、FAPI 和 RLC 数据(见表 1)。在第二套配置中,我们用 RRC/F1 和 FAPI 数据的钩子,以及表 2 的切片间无线资源分配钩子对 4G OAI 进行检测。第三套也就是最后一套配置中,我们提供了一个假的 Janus 设备,这是个循环运行的单线程进程,调用连接到 Janus 钩子的小程序,我们基于这个配置进行微观测试(第 7.3 节)。


在所有配置中,Janus 钩子被线程调用,这些线程的亲和性被设置为单核,并使用SCHED_FIFO策略(不可抢占)进行调度,其调度优先级为 94。我们基于[76]的时间测量框架作为指导方针对运行时间进行测量。


vRAN 小程序时间预算: 基于 5G RAN 设置确定可以分配多少时间给 Janus 小程序,而不会影响 RAN 性能。我们专注于 vRAN DU 的 PHY 层,因为其他层对时间要求都不太严格。PHY 中数据包的传输和接收发生在固定传输时间间隔(TTI)内[45]。基于 CapGemini vRAN 设置,我们测量了 15 分钟内 4x4 MIMO 流量(1Gbps 下行和 45Mbps 上行)完全饱和时,每个 TTI 的 PHY 运行时间。图 4b 显示了上行链路和下行链路的最大运行时间与所需 CPU 核数的关系,以及基于供应商给定配置的处理期限。差值(橙色)是 Janus 小程序的最大运行时间预算,从 200𝜇s 到 600𝜇s 不等。


虽然看起时间很长,但在实践中,由于某些原因,限制要小得多。一些小程序可能在每个 TTI 中被执行多次,例如第 4 节中的 IQ 样本处理在每个 TTI 中被调用 14 次(每个 OFDM 符号一次)。此外,多个小程序可以被加载到不同的钩子上,分享整体的时间预算。最后,更高要求的 PHY 配置,如大规模 MIMO(目前无法评估),将可能给 Janus 钩子留下更少的空闲 CPU 时间。我们的设计目标是假设小程序的运行时间预算可以低至 20𝜇s。

7.2. 端到端系统评估

本节我们将展示 Janus 提取遥测数据的灵活性以及加载小程序集的安全性,来探索 Janus 在实际端到端部署中的行为和优势。对于安全部分,评估集中在第 5.1 节中介绍的运行时控制机制,Janus 控制器基于 eBPF 验证器的静态分析的有效性在[48]中得到了广泛研究。同时,可以参考表 3 的参考文献,了解我们用于实现小程序的算法性能。


我们用第 4 节介绍的干扰检测作为小程序集分析示例。我们部署 USRP 软件定义无线电作为外部干扰,产生重复的干扰模式,包括 5s 的干扰和 5s 沉默。图 5a 显示了在真实 5G 下行链路传输过程中干扰的频谱图(细尖峰)。我们在一台 OnePlus Nord 5G 手机和 5G vRAN 之间用 iperf 测量下行链路,当干扰活跃时,看到有大约 30%的丢包。测量的同时,我们加载 Janus 小程序进行干扰检测,细节在第 4 节中介绍。我们在控制器上实现了一个简单的干扰检测器,连续跟踪每个资源块的输入信号的平均值和方差,如果输入大于平均值加 3 倍标准差,则认为存在干扰。如图 5b 中所示,这种方法成功检测到了所有干扰期。


图 5: 基于 Janus 收集的数据展示的干扰和探测波谱视图。


通过补丁防止 RAN 崩溃: 因此我们接下来会展示 Janus 如何有效处理那些虽然可以通过验证,但由于执行时间长而造成 vRAN 运行安全隐患的小程序。我们为同一个实验写了另一个逻辑正确但更低效的小程序,在一个临时结构里分配 13KB 内存,在 for 循环中逐字节对内存进行 memset,然后在第二个 for 循环中逐个复制由钩子传递的 IQ 样本,并发送到控制器。


我们故意写的低效代码通过了验证,因为没有内存访问方面的安全问题,并且运行可以完结(有界循环)。然而,一旦这个小程序被加载到端到端 vRAN,就会使 vRAN 崩溃。如图 6a 中的 CDF 所示,该小程序的运行时间中位数为 51.4𝜇s,99.999 百分位为 52.2𝜇s。考虑到原始 IQ 样本钩子在每个 TTI 被调用 14 次(每个 OFDM 符号一次),小程序的平均总运行时间为 719.6𝜇s,大于 vRAN 的上行链路的 600𝜇s 时间预算(如图 4b 所示)。


图 6: 抢占非安全小程序以及基于可编程的小程序的收集数据好处。


然后,我们用 Janus 补丁程序修补小程序,并以 5𝜇s 的运行时阈值将其重新加载到 vRAN。如图 6a 所示,小程序的修补版本很早就被抢占了,因此运行时中位数现在正好变成了 5𝜇s, 99.999 百分位数变成了 5.04𝜇s。虽然修补后的小程序不再发送 IQ 样本(因为运行被抢占了),但 vRAN 受到了保护,没有违反最后期限。


减少数据采集带宽: 在相同的干扰检测示例中,两个小程序协调其输出以降低总体数据采集带宽,如第 4 节所述。为了评估协调的好处,我们还用更加集中的方式(协调发生在 RIC 中)实现相同的场景。在这种方法中,两个小程序独立将所有调度数据和原始 IQ 样本发送到控制器(每个符号约 13KB 数据),而不是在本地关联,并仅为空闲 slot 发送 IQ 样本。


我们基于这些配置测量了将输出数据发送到 Janus 收集器的吞吐量,以及两个小程序的运行时间,如图 6b 所示。在图的上半部分可以看到,原始干扰检测方法消耗了 172Mbps 的数据带宽,而基于 vRAN 内联预处理方法消耗的带宽只有 4.5Mbps,几乎减少了 40 倍。尽管有额外的预处理工作,但与原始方法相比,预处理小程序的运行时间减少了 3.5 秒。原始方法在每次小程序发送原始 IQ 样本时需要执行一次 memset 和拷贝 13KBs 的内存,而预处理方法每次调用只需要拷贝约 400B 内容。当前 O-RAN RIC 为用例指定了服务模型,并由 RAN 供应商集成,因此不可能提供自定义预处理程序。


小程序运行时。 由于篇幅所限,我们没法详细讨论第 4 节中的每个场景,但图 7 提供了表 3 中 17 个小程序的中位数和尾部(99.999)运行时间,其中小程序名使用了表 3 中的缩写,并考虑了每个小程序在最差情况下的执行情况(即最大设备数量,最大带宽等)。报告的时间基于打过补丁的小程序,我们通过补丁确保检查点距离𝑁=60 以及采样频率𝑀=10(关于参数选择细节,见第 7.3 节)。可以看到,所有小程序的运行时间都远低于 7.1 节中讨论的 20𝜇s 的时间预算(最差的小程序也小于 8𝜇s),其中要求最高的是切片调度器(SL1 和 SL3)、干扰检测(ID)和原始调度数据监测(RAW1 和 RAW2)。通过在 5G vRAN 部署中同时部署表 3 中标记为监测的所有小程序作为进一步演示,同时让网络流量达到饱和(1Gbps 下行和 45Mbps 上行),没有看到加载小程序后链路性能的任何影响。


图 7: 打过补丁后小程序的最差运行时间。

7.3. 微基准测试

图 8: 基于补丁的小程序行为分析与其他方法的比较。


补丁的开销和敏感性。 我们通过研究表 3 中对计算要求最高的小程序(即 RAW1、ID、SL1 和 SL3),根据 7.2 节的运行时间结果,探索补丁过程的行为(5.1 节)。由于篇幅所限,表 3 中其余小程序呈现出类似的修补行为,不做赘述。


首先,不同的检查点距离𝑁会引入不同的检查点数量,我们以此着手研究算法 1。正如图 8a 中看到的,小程序的指令越多(列在每个小程序标签下),引入的检查点就越多。此外,当我们增大𝑁时,检查点数量会下降。检查点数量几乎在所有情况下都略高于指令数除以𝑁,这意味着如果代码按顺序执行,有一些检查点的距离会小于𝑁。对字节码的检查显示,额外的检查点主要是在紧密循环(<𝑁条指令)中引入的,如果展开循环,就会形成一个超过𝑁个指令的代码块,这表明我们的补丁算法可以有效处理这种情况。


然后,我们研究了小程序在不同补丁距离(参数𝑁)和采样频率(参数𝑀)下的行为。图 8b 中的结果显示了未打补丁的版本与打了补丁但没有运行时间阈值的小程序运行时间比较。对于𝑁比较小的情况,运行时间开销会变得很高(比如对于 ID 来说超过了 100%),因为运行时间检查执行得非常频繁,而减少采样频率会有所帮助(如 ID 的𝑁=10 和𝑀=30 的情况所示)。另一方面,较大的𝑁值和较小的采样频率会体现为更少的运行时间检查,导致抢占式小程序的平均和尾部延迟更高,如图 8c 所示(运行时间阈值设置为 400ns)。对于𝑁=60 和𝑀=30,RAW1 和 ID 的尾部运行时间几乎比运行时间阈值多 100%。基于对表 3 中所有小程序的评估,我们发现𝑁=60 和𝑀=10 在运行时间开销和抢占延迟之间取得了最佳平衡。


最后,我们将算法 1 的检查点方法与[95, 96]中提出的另一种方法进行比较,即在被修补代码的控制流图的每个基本块上引入检查点。对于基本块方法,我们使用𝑀=30 的采样频率,在𝑁=60 和𝑀=10 的情况下,产生与 Janus 修补器相似的抢占尾部延迟结果。如图 8d 所示,与 Janus 修补器相比,基本块方法在大多数情况下的运行时间开销(99.999 尾部运行时间)会更高(例如,SL1 小程序的开销高出 2 倍以上)。开销增加的原因是,在许多情况下,基本块可能非常小(2-3 条指令),如果基本块经常被访问(热代码),那么即使使用了基于采样率的检查,检查点增加的指令也会使其运行时间增加一倍以上。Janus 采取的方法更加规范,允许 RAN 运营商或供应商选择两个检查点之间的确切指令数量。


Janus 钩子开销。 为了测量空闲 Janus 钩子的开销,我们使用假的 Janus 设备,并测量在没有加载任何小程序的情况下,在 2 百万迭代中调用一个或 10 个 Janus 钩子的耗时。表 4 列出了中位数、99.9 和 99.999 百分位数的结果。可以看到,在单个钩子调用的情况下,所有情况下的开销都可以忽略不计(<1ns)。在 10 个钩子的情况下,99.9 和 99.999 百分位数的差异上升到 10ns(每个钩子调用 1ns∼)。结论是,在 vRAN 代码中增加钩子对其性能的影响可以忽略不计。


表 4: Janus 空钩子的中位数和尾部运行时间。


数据输出开销。 接下来评估将数据复制到输出消息并将其放入输出 map 的开销(不包括输出线程和 protobuf 序列化开销)。我们以 protobuf 消息SizeMessage1为基准,定义为 protobuf 库[79]基准测试套件的一部分。这个消息总共包含 62 个字段,既有基础字段(如 int32、int64、bool),也有可变大小字段(字符串和可重复字段)。我们写了一个小程序,用随机内容和不同的消息大小来填充SizeMessage1,并将其发送出去。正如图 9a 所示,对于小数据包(<2KB),中位数和尾部运行时间都保持在 1𝜇s 以下,执行时间随着数据包大小逐渐增加,但始终保持在 2𝜇s 以下,最高达到 9KB 的大数据包。实践中,我们为第 4 节中的用例编写的小程序都不需要发送超过 2KB 的监控数据,这意味着大多数实际场景的输出开销非常低。


图 9: 小程序处理大小不同的 SizeMessage1 消息[79]的运行时间和最大 kpps。


网络开销。 最后,我们测量输出线程的开销,该线程将 protobuf 消息序列化,并通过网络将其发送给控制器。我们基于之前实验相同的配置,并测量最大可实现的数据包发送率,结果用图 9b 中的蓝线表示。对于小数据包(<500𝐵),Janus 可以在单个输出线程中序列化并发送超过 80kpps,在发送 9KB 的大数据包时,速度下降到 20kpps。根据遥测小程序(第 4 节),即使在最苛刻的情况下,单个 cell 的数据包数量和大小也落在图 9b 的橙色区域内。这意味着单个 Janus 设备可以处理多达 4 个 cell(浅蓝色和橙色区域)的苛刻用例,而对于轻量级监测,则可以处理超过一倍的 cell。目前,主要瓶颈是输出信息的序列化,可以从图 9b 的橙色线看出,因为即使我们丢弃数据包,也只看到输出速率增加了 25%,这可以通过基于 bypass kernel(例如 DPDK)的解决方案取代基于套接字的 UDP 操作来进一步优化。

8. 讨论及相关工作

向 vRAN 推送任意代码 -- [43, 73]中的工作通过在运行时在 vRAN 中加载任意代码,论证了实时 RAN 可编程性的需求。虽然这些工作在概念上与 Janus 相似,但并没有提出实现这种功能的安全方法,并承认安全问题是在真实部署中引入相关工作的障碍。他们只显示了在低端配置上的操作(高达 20MHz 的 SISO,吞吐量比我们为 Janus 展示的少 10 倍),并且没有提供对高吞吐量数据流(如 IQ 样本)的访问。


检查点补丁代码 -- 文献中研究了通过编译器辅助添加检查点,并通过定期保存软件状态来提高容错性的方法(例如,在间歇性能源系统中)[67, 68, 80, 99, 101]。在这类系统中,检查点的选择通常是以不影响可恢复性的情况下最大限度减少能耗为目标,这导致了与 Janus 的抢占目标相比不同的设计选择。与 Janus 更接近的是,[95, 96]中的工作侧重于添加检查点,以断言实时系统在最差情况下的执行是否已经超时。与 Janus 相反,这种检查需要硬件辅助,而且检查点被添加到正在运行的程序的每个基本块中,正如第 7.3 节所示,与 Janus 修补器相比,它的开销更大。


RAN 数据收集 -- vRAN 领域的一些工作提供了数据收集的解决方案,从 API 规范(例如 O-RAN RIC E2 服务模型[24, 85]和 FlexRAN API[43])到精心设计的日志系统(例如 OAI T-tracer[7],SCOPE 数据收集模块[30])。然而,这些解决方案缺乏灵活性,无法根据应用需要来调整收集数据的类型、数量和频率,而这正是 Janus 的主要设计目标之一。对于 eBPF 空间的数据收集解决方案也可以得出类似的结论,它们要么提供一套固定指标(如 Hubble[5]),要么数据只能以特定格式导出(如 ebpf_exporter[4]中的计数器和直方图)。


通过 Janus map 支持复杂 ML 模型 -- 如第 4 节所述,在 Janus C 代码中内联开发大型 ML 模型(例如,随机森林)是具有挑战性的工作,主要由于生成的字节码大小及其对验证的影响。我们相信,考虑到 RAN 的大量用例都依赖于相同模型(如随机森林、LSTM 和 RNN[18, 40, 54, 66, 84, 89, 97, 98]),我们提出的基于 map 的方法以序列化格式加载 ML 模型并通过辅助函数进行推理是非常强大的。因此,我们正计划扩展这种方法,以支持随机森林以外的其他广泛使用的 ML 模型。

9. 结论

我们在本文中提出了 Janus,一个完全可编程、安全的 5G RAN 监测和控制框架,允许运营商实时加载具有自定义数据模型的自定义小程序,大大增加了现有 O-RAN RIC 提供的灵活性。我们通过构建和评估 4 个不同类别的 17 个应用(大多数是 O-RAN RIC 无法实现的)来证明这种灵活性。Janus 使用静态验证和小程序执行预估来实现安全性,其模块化的设计使得很容易添加到现有 vRAN 产品中。我们希望 Janus 最终会被 O-RAN 社区采用,以帮助加速 Open RAN 的创新。

参考文献

[1] 2021. pyelftools. https://github.com/eliben/pyelftools.

[2] 2022. Awesome eBPF. https://github.com/zoidbergwill/awesomeebpf.

[3] 2022. eBPF. https://ebpf.io/.

[4] 2022. ebpf_exporter. https://github.com/cloudflare/ebpf_exporter.

[5] 2022. Hubble exported metrics. https://docs.cilium.io/en/stable/operations/metrics/#hubble-exported-metrics.

[6] 2022. nanopb. https://github.com/nanopb/nanopb.

[7] 2022. OAI T Tracer. https://gitlab.eurecom.fr/oai/openairinterface5g/-/wikis/T.

[8] 2022. The LLVM compiler infrastructure. https://llvm.org/.

[9] O-RAN Working Group 3. 2021. Use Cases and Requirements. ORAN.WG3.UCR-v01.00 (2021).

[10] 3GPP. 2018. 3GPP TS 38.410: NG general aspects and principles. (2018).

[11] 3GPP. 2018. 3GPP TS 38.463: E1 Application protocol (E1AP). (2018).

[12] 3GPP. 2019. 3GPP TS 38.470: F1 general aspects and principles. (2019).

[13] 3GPP. 2020. 3GPP TS 28.552: Management and orchestration: 5G performance measurements. (2020).

[14] 3GPP. 2020. 3GPP TS 32.425: Performance Management (PM); Performance measurements for Evolved Universal Terrestrial Radio Access Network (E-UTRAN). (2020).

[15] 3GPP. 2020. 3GPP TS 38.322: Radio Link Control (RLC) protocol specification. (2020).

[16] 3GPP. 2020. 3GPP TS 38.331: Radio Resource Control (RRC) protocol specification . (2020).

[17] 3GPP. 2020. 3GPP TS 38.420: Xn general aspects and principles. (2020).

[18] Javed Akhtar, Krunal Saija, Narayanan Ravi, Shekar Nethi, and Saptarshi Chaudhuri. 2021. Machine Learning-based Prediction of PMI Report for DL-Precoding in 5G-NR System. In 2021 IEEE 4th 5G World Forum (5GWF). IEEE, 105–110.

[19] ORAN Alliance. 2019. O-RAN WhitePaper-Building the Next Generation RAN. O-RAN Alliance, Tech. Rep., Oct (2019).

[20] ORAN Alliance. 2020. O-RAN use cases and deployment scenarios. White Paper, Feb (2020).

[21] ORAN Alliance. 2020. O-RAN Working Group 3: Near-Real-time RAN Intelligent Controller-E2 Service Model (E2SM). ORAN-WG3. E2SM-KPM-v01. 00.00 (2020).

[22] ORAN Alliance. 2021. O-RAN Fronthaul Control User and Synchronization Plane Specification v7.0.

[23] ORAN Alliance. 2021. O-RAN Working Group 2: “O-RAN AI/MLworkflow description and requirements 1.03. O-RAN.WG2.AIMLv01.03 Technical Specification (2021).

[24] O-RAN Alliance. 2021. O-RAN E2 Application Protocol (E2AP) v2.0. ORAN-WG3.E2AP-KPM-v02.00 (2021).

[25] O-RAN Alliance. 2021. O-RAN Minimum Viable Plan and Acceleration towards Commercialization. White Paper, June (2021).

[26] OpenAir Software Alliance. 2022. Open Air Interface Project. https://openairinterface.org/about-us/.

[27] Bharath Balasubramanian, E Scott Daniels, Matti Hiltunen, Rittwik Jana, Kaustubh Joshi, Rajarajan Sivaraj, Tuyen X Tran, and Chengwei Wang. 2021. RIC: A RAN intelligent controller platform for AIenabled cellular networks. IEEE Internet Computing 25, 2 (2021), 7–17.

[28] Andson Balieiro, Kelvin Dias, and Paulo Guarda. 2021. A Machine Learning Approach for CQI Feedback Delay in 5G and Beyond 5G Networks. In 2021 30th Wireless and Optical Communications Conference (WOCC). IEEE, 26–30.

[29] Gilberto Berardinelli, Saeed R Khosravirad, Klaus I Pedersen, Frank Frederiksen, and Preben Mogensen. 2016. Enabling early HARQ feedback in 5G networks. In 2016 IEEE 83rd Vehicular Technology Conference (VTC Spring). IEEE, 1–5.

[30] Leonardo Bonati, Salvatore D’Oro, Stefano Basagni, and Tommaso Melodia. 2021. SCOPE: an open and softwarized prototyping platform for NextG systems. In Proceedings of the 19th Annual International Conference on Mobile Systems, Applications, and Services. 415–426.

[31] Leonardo Bonati, Salvatore D’Oro, Michele Polese, Stefano Basagni, and Tommaso Melodia. 2021. Intelligence and learning in O-RAN for data-driven NextG cellular networks. IEEE Communications Magazine 59, 10 (2021), 21–27.

[32] Gabriel Brown and HEAVY READING. 2018. New Transport Network Architectures for 5G RAN. White Paper. Available online: https://www.fujitsu. com/us/Images/New-Transport-Network-Architectures-for-5GRAN. pdf (accessed on 29 June 2021) (2018).

[33] Nicola Bui and Joerg Widmer. 2018. Data-driven evaluation of anticipatory networking in LTE networks. IEEE Transactions on Mobile Computing 17, 10 (2018), 2252–2265.

[34] Cambridge Consultants. 2022. Wireless breakthrough for the Ocado Smart Platform. https://www.cambridgeconsultants.com/case-studies/wireless-breakthrough-ocado-smart-platform.

[35] CapGemini Engineering. 2022. 5G gNodeB. https://capgeminiengineering.com/nl/en/services/next-core/wireless-frameworks/.

[36] Francisco J Cazorla, Leonidas Kosmidis, Enrico Mezzetti, Carles Hernandez, Jaume Abella, and Tullio Vardanega. 2019. Probabilistic worst-case timing analysis: Taxonomy and comprehensive survey. ACM Computing Surveys (CSUR) 52, 1 (2019), 1–35.

[37] Cellwize and Intel. 2022. Cellwize Announces Collaboration to Accelerate Deployment of 5G vRAN Networks With AI. https://www.sdxcentral.com/articles/press-release/cellwizeannounces-collaboration-to-accelerate-deployment-of-5g-vrannetworks-with-ai/2021/06/.

[38] Cohere Technologies. 2022. With Vodafone and Partners, VMWare demonstrates how to accelerate innovation in the RAN. https://www.cohere-tech.com/press-releases/with-vodafone-and-partnersvmware-demonstrates-how-to-accelerate-innovation-in-the-ran.

[39] Salah Eddine Elayoubi, Sana Ben Jemaa, Zwi Altman, and Ana Galindo-Serrano. 2019. 5G RAN slicing for verticals: Enablers and challenges. IEEE Communications Magazine 57, 1 (2019), 28–34.

[40] Capgemini Engineering. 2021. Intelligent 5G L2 MAC Scheduler. White Paper, Feb (2021).

[41] Small Cell Forum. 2021. 5G FAPI: PHY API Specification.

[42] Xenofon Foukas, Mahesh K Marina, and Kimon Kontovasilis. 2019. Iris: Deep reinforcement learning driven shared spectrum access architecture for indoor neutral-host small cells. IEEE Journal on Selected Areas in Communications 37, 8 (2019), 1820–1837.

[43] Xenofon Foukas, Navid Nikaein, Mohamed M Kassem, Mahesh K Marina, and Kimon Kontovasilis. 2016. FlexRAN: A flexible and programmable platform for software-defined radio access networks. In Proceedings of the 12th International on Conference on emerging Networking EXperiments and Technologies. 427–441.

[44] Xenofon Foukas, Georgios Patounas, Ahmed Elmokashfi, and Mahesh K Marina. 2017. Network slicing in 5G: Survey and challenges. IEEE communications magazine 55, 5 (2017), 94–100.

[45] Xenofon Foukas and Bozidar Radunovic. 2021. Concordia: teaching the 5G vRAN to share compute. In Proceedings of the 2021 ACM SIGCOMM 2021 Conference. 580–596.

[46] Gines Garcia-Aviles, Andres Garcia-Saavedra, Marco Gramaglia, Xavier Costa-Perez, Pablo Serrano, and Albert Banchs. 2021. Nuberu: Reliable RAN virtualization in shared platforms. In Proceedings of the 27th Annual International Conference on Mobile Computing and Networking. 749–761.

[47] Andres Garcia-Saavedra and Xavier Costa-Perez. 2021. O-RAN: Disrupting the virtualized RAN ecosystem. IEEE Communications Standards Magazine (2021).

[48] Elazar Gershuni, Nadav Amit, Arie Gurfinkel, Nina Narodytska, Jorge A Navas, Noam Rinetzky, Leonid Ryzhyk, and Mooly Sagiv. 2019. Simple and precise static analysis of untrusted linux kernel extensions. In Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation. 1069–1084.

[49] David Ginthör, René Guillaume, Maximilian Schüngel, and Hans D Schotten. 2021. 5G RAN slicing for deterministic traffic. In 2021 IEEE Wireless Communications and Networking Conference (WCNC). IEEE, 1–6.

[50] Google. 2022. Sandbox2. https://developers.google.com/codesandboxing/sandbox2.

[51] Google. 2022. Sandboxed API. https://developers.google.com/codesandboxing/sandboxed-api.

[52] Tao Guo and Alberto Suárez. 2019. Enabling 5G RAN slicing with EDF slice scheduling. IEEE Transactions on Vehicular Technology 68, 3 (2019), 2865–2877.

[53] Andreas Haas, Andreas Rossberg, Derek L Schuff, Ben L Titzer, Michael Holman, Dan Gohman, Luke Wagner, Alon Zakai, and JF Bastien. 2017. Bringing the web up to speed with WebAssembly. In Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation. 185–200.

[54] Sahar Imtiaz, Georgios P Koudouridis, Hadi Ghauch, and James Gross. 2018. Random forests for resource allocation in 5G cloud radio access networks based on position information. EURASIP Journal on Wireless Communications and Networking 2018, 1 (2018), 1–16.

[55] Intel. 2020. Unleash the Speed of 4G and 5G Virtualized Radio Access Networks (vRAN). Product Brief, Intel vRAN Dedicated Accelerator ACC100 (2020).

[56] Intel. 2020. Virtual RAN (vRAN) with Hardware Acceleration. White Paper, Jan (2020).

[57] Intel. 2022. FlexRAN Reference Architecture for Wireless Access. https://www.intel.com/content/www/us/en/developer/topictechnology/edge-5g/tools/flexran.html.

[58] Intel. 2022. Smart Edge Open Radio Access Network.https://smart-edge-open.github.io/ido-specs/doc/referencearchitectures/ran/smartedge-open_ran/.

[59] iovisor. 2022. Userspace eBPF VM. https://github.com/iovisor/ubpf.

[60] David Johnson, Dustin Maas, and Jacobus Van Der Merwe. 2022. NexRAN: Closed-loop RAN slicing in POWDER-A top-to-bottom open-source open-RAN use case. In Proceedings of the 15th ACM Workshop on Wireless Network Testbeds, Experimental evaluation & CHaracterization. 17–23.

[61] Ravi Kokku, Rajesh Mahindra, Honghai Zhang, and Sampath Rangarajan. 2011. NVS: A substrate for virtualizing wireless resources in cellular networks. IEEE/ACM transactions on networking 20, 5 (2011), 1333–1346.

[62] Manikanta Kotaru, Kiran Joshi, Dinesh Bharadia, and Sachin Katti. 2015. Spotfi: Decimeter level localization using wifi. In Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication. 269–282.

[63] Merima Kulin, Tarik Kazaz, Ingrid Moerman, and Eli De Poorter. 2018. End-to-end learning from spectrum data: A deep learning approach for wireless signal identification in spectrum monitoring applications. IEEE Access 6 (2018), 18484–18501.

[64] Daniel Lehmann, Johannes Kinder, and Michael Pradel. 2020. Everything Old is New Again: Binary Security of {WebAssembly}. In 29th USENIX Security Symposium (USENIX Security 20). 217–234.

[65] liburcu. 2022. Userspace RCU. https://liburcu.org/.

[66] Changqing Luo, Jinlong Ji, Qianlong Wang, Xuhui Chen, and Pan Li. 2018. Channel state information prediction for 5G wireless communications: A deep learning approach. IEEE Transactions on Network Science and Engineering 7, 1 (2018), 227–236.

[67] Kiwan Maeng, Alexei Colin, and Brandon Lucia. 2017. Alpaca: Intermittent execution without checkpoints. Proceedings of the ACM on Programming Languages 1, OOPSLA (2017), 1–30.

[68] Kiwan Maeng and Brandon Lucia. 2018. Adaptive dynamic checkpointing for safe efficient intermittent computing. In 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18). 129–144.

[69] Paul E McKenney, Silas Boyd-Wickizer, and Jonathan Walpole. 2013. RCU usage in the linux kernel: One decade later. Technical report (2013).

[70] Paul E McKenney and Jonathan Walpole. 2007. What is RCU, fundamentally? Linux Weekly News (LWN. net) (2007).

[71] Mehrtash Mehrabi, Mostafa Mohammadkarimi, Masoud Ardakani, and Yindi Jing. 2019. Decision Directed Channel Estimation Based on Deep Neural Network 𝑘-Step Predictor for MIMO Communications in 5G. IEEE Journal on Selected Areas in Communications 37, 11 (2019), 2443–2456.

[72] Mustafa Mohsin, Jordi Mongay Batalla, Evangelos Pallis, George Mastorakis, Evangelos K Markakis, and Constandinos X Mavromoustakis. 2021. On Analyzing Beamforming Implementation in O-RAN 5G. Electronics 10, 17 (2021), 2162.

[73] Navid Nikaein, Chia-Yu Chang, and Konstantinos Alexandris. 2018. Mosaic5G: Agile and flexible service platforms for 5G research. ACM SIGCOMM Computer Communication Review 48, 3 (2018), 29–34.

[74] Daisuke Nojima, Yuki Katsumata, Takuya Shimojo, Yoshifumi Morihiro, Takahiro Asai, Akira Yamada, and Shigeru Iwashina. 2018. Resource isolation in RAN part while utilizing ordinary scheduling algorithm for network slicing. In 2018 IEEE 87th Vehicular Technology Conference (VTC Spring). IEEE, 1–5.

[75] O-RAN SC projects . 2022. RAN Intelligent Controller Applications. https://docs.o-ran-sc.org/en/latest/projects.html#ranintelligent-controller-applications-ricapp.

[76] Gabriele Paoloni. 2010. How to benchmark code execution times on Intel IA-32 and IA-64 instruction set architectures. Intel Corporation 123 (2010), 170.

[77] Michele Polese, Leonardo Bonati, Salvatore D’Oro, Stefano Basagni, and Tommaso Melodia. 2022. Understanding O-RAN: Architecture, Interfaces, Algorithms, Security, and Research Challenges. arXiv preprint arXiv:2202.01032 (2022).

[78] Michele Polese, Rittwik Jana, Velin Kounev, Ke Zhang, Supratim Deb, and Michele Zorzi. 2020. Machine learning at the edge: A datadriven architecture with applications to 5G cellular networks. IEEE Transactions on Mobile Computing 20, 12 (2020), 3367–3382.

[79] Protocol Buffers. 2022. Protobuf benchmark proto file. https://github.com/protocolbuffers/protobuf/blob/fb77cc9d9f066a8ce4f12e8d5f76188d48101444/benchmarks/google_size.proto.

[80] Benjamin Ransford, Jacob Sorber, and Kevin Fu. 2011. Mementos: System support for long-running computation on RFID-scale devices. In Proceedings of the sixteenth international conference on Architectural support for programming languages and operating systems. 159–170.

[81] Raymond Knopp. 2022. OAI Layer 2 Protocol Stack. https://www.openairinterface.org/docs/workshop/1stOAINorthAmericaWorkshop/Training/KNOPP-OAI-L2.pdf.

[82] Rohde & Schwarz. 2022. PREEMPT_RT patch versions. https://www.rohde-schwarz.com/uk/solutions/aerospace-defensesecurity/security/spectrum-monitoring/efficient-interferencehunting/huntinginterferences_91389.html.

[83] Peter Rost and Athul Prasad. 2014. Opportunistic hybridARQ—Enabler of centralized-RAN over nonideal backhaul. IEEEWireless Communications Letters 3, 5 (2014), 481–484.

[84] Krunal Saija, Shekar Nethi, Saptarshi Chaudhuri, and RM Karthik. 2019. A machine learning approach for SNR prediction in 5G systems. In 2019 IEEE International Conference on Advanced Networks and Telecommunications Systems (ANTS). IEEE, 1–6.

[85] Robert Schmidt, Mikel Irazabal, and Navid Nikaein. 2021. FlexRIC: an SDK for next-generation SD-RANs. In Proceedings of the 17th International Conference on emerging Networking EXperiments and Technologies. 411–425.

[86] Souvik Sen, Božidar Radunovic, Romit Roy Choudhury, and Tom Minka. 2012. You are facing the Mona Lisa: Spot localization using PHY layer information. In Proceedings of the 10th international conference on Mobile systems, applications, and services. 183–196.

[87] Weisen Shi, Junling Li, Peng Yang, Qiang Ye, Weihua Zhuang, Xuemin Shen, and Xu Li. 2021. Two-level soft RAN slicing for customized services in 5G-and-beyond wireless communications. IEEE Transactions on Industrial Informatics 18, 6 (2021), 4169–4179.

[88] Small Cell Forum. 2022. 5G FAPI: PHY API Specification. http://scf.io/en/documents/222_5G_FAPI_PHY_API_Specification.php.

[89] Nils Strodthoff, Barış Göktepe, Thomas Schierl, Cornelius Hellge, and Wojciech Samek. 2019. Enhanced machine learning techniques for early HARQ feedback prediction in 5G. IEEE Journal on Selected Areas in Communications 37, 11 (2019), 2573–2587.

[90] Telefonica. 2021. Telefonica views on the design, architecture, and technology of 4G/5G Open RAN networks. White Paper, Jan (2021).

[91] TensorFlow. 2022. TensorFlow Lite for Microcontrollers. https://www.tensorflow.org/lite/microcontrollers.

[92] Marcos AM Vieira, Matheus S Castanho, Racyus DG Pacífico, Elerson RS Santos, Eduardo PM Câmara Júnior, and Luiz FM Vieira. 2020. Fast packet processing with ebpf and xdp: Concepts, code, challenges, and applications. ACM Computing Surveys (CSUR) 53, 1 (2020), 1–36.

[93] OpenAirInterface Wiki. 2022. OpenAirKernelMainSetup. https://gitlab.eurecom.fr/oai/openairinterface5g/-/wikis/OpenAirKernelMainSetup.

[94] Reinhard Wilhelm, Jakob Engblom, Andreas Ermedahl, Niklas Holsti, Stephan Thesing, David Whalley, Guillem Bernat, Christian Ferdinand, Reinhold Heckmann, Tulika Mitra, et al. 2008. The worst-case execution-time problem—overview of methods and survey of tools. ACM Transactions on Embedded Computing Systems (TECS) 7, 3 (2008), 1–53.

[95] Julian Wolf, Bernhard Fechner, Sascha Uhrig, and Theo Ungerer. 2012. Fine-grained timing and control flow error checking for hard real-time task execution. In 7th IEEE International Symposium on Industrial Embedded Systems (SIES’12). IEEE, 257–266.

[96] Julian Wolf, Bernhard Fechner, and Theo Ungerer. 2012. Fault coverage of a timing and control flow checker for hard real-time systems. In 2012 IEEE 18th International On-Line Testing Symposium (IOLTS). IEEE, 127–129.

[97] Hao Yin, Xiaojun Guo, Pengyu Liu, Xiaojun Hei, and Yayu Gao. 2020. Predicting Channel Quality Indicators for 5G Downlink Scheduling in a Deep Learning Approach. arXiv preprint arXiv:2008.01000 (2020).

[98] Qi Zhang, Alexandros Nikou, and Marios Daoutis. 2022. Predicting Buffer Status Report (BSR) for 6G Scheduling using Machine Learning Models. In 2022 IEEE Wireless Communications and Networking Conference (WCNC). IEEE, 632–637.

[99] Ying Zhang and Krishnendu Chakrabarty. 2003. Energy-aware adaptive checkpointing in embedded real-time systems. In 2003 Design, Automation and Test in Europe Conference and Exhibition. IEEE, 918–923.

[100] Yadan Zheng, Shubo Ren, Xiaoyan Xu, Ying Si, Mingke Dong, and Jianjun Wu. 2012. A modified ARIMA model for CQI prediction in LTE-based mobile satellite communications. In 2012 IEEE International Conference on Information Science and Technology. IEEE, 822–826.

[101] Avi Ziv and Jehoshua Bruck. 1997. An on-line algorithm for checkpoint placement. IEEE Transactions on computers 46, 9 (1997), 976–985.

目录
相关文章
|
机器学习/深度学习 人工智能 小程序
Janus: 基于 eBPF 的 5G 实时 AI 控制器(下)
Janus: 基于 eBPF 的 5G 实时 AI 控制器(下)
89 0
|
小程序 安全 算法
Janus: 基于 eBPF 的 5G 实时 AI 控制器(上)
Janus: 基于 eBPF 的 5G 实时 AI 控制器(上)
108 0
|
边缘计算 人工智能 物联网
物联网未来展望:5G、AI与边缘计算的融合之路
本篇详细探讨了物联网领域的未来展望,包括5G与物联网的融合、人工智能在物联网中的应用,以及边缘计算与物联网的发展趋势。通过代码示例,读者可以了解如何利用5G网络进行物联网设备间的高效数据传输,以及如何应用人工智能技术进行智能感知和数据分析。此外,我们还介绍了边缘计算在物联网中的重要作用,以及如何在边缘设备上进行数据处理和分析。通过本篇内容,读者将对物联网未来的技术发展有更全面的认识,为把握物联网领域的机遇提供有益的前瞻性指导。
448 0
|
机器学习/深度学习 人工智能 算法
【年终特辑】看见科技创新力量 洞见时代创业精神—文旅娱乐—智媒云图:5G时代的“AI交互+数字艺术”双效引擎
【年终特辑】看见科技创新力量 洞见时代创业精神—文旅娱乐—智媒云图:5G时代的“AI交互+数字艺术”双效引擎
143 0
|
机器学习/深度学习 数据采集 人工智能
5G网络怎样绿色减排?看联通巧用AI+CPU调频方案实现动态节能
5G网络怎样绿色减排?看联通巧用AI+CPU调频方案实现动态节能
|
人工智能 Cloud Native 关系型数据库
5G与AI“点燃”数字应用,云原生重塑数据库未来
5G与AI“点燃”数字应用,云原生重塑数据库未来
214 0
华为5G手机发布!5G和AI给世界带来什么?
5G+AI多元化的场景应用为企业提供了巨大的市场机遇,也提出了更高要求。
335 0
|
3天前
|
机器学习/深度学习 人工智能 供应链
AI技术在医疗领域的应用与未来展望###
本文深入探讨了人工智能(AI)技术在医疗领域的多种应用及其带来的革命性变化,从疾病诊断、治疗方案优化到患者管理等方面进行了详细阐述。通过具体案例和数据分析,展示了AI如何提高医疗服务效率、降低成本并改善患者体验。同时,文章也讨论了AI技术在医疗领域面临的挑战和未来发展趋势,为行业从业者和研究人员提供参考。 ###
|
4天前
|
机器学习/深度学习 人工智能 算法
AI技术在医疗领域的应用与挑战
【10月更文挑战第21天】 本文探讨了人工智能(AI)在医疗领域的多种应用,包括疾病诊断、治疗方案推荐、药物研发和患者管理等。通过分析这些应用案例,我们可以看到AI技术如何提高医疗服务的效率和准确性。然而,AI在医疗领域的广泛应用也面临诸多挑战,如数据隐私保护、算法透明度和伦理问题。本文旨在为读者提供一个全面的视角,了解AI技术在医疗领域的潜力和面临的困难。

热门文章

最新文章