## 2 O-RAN Architecture and Development
### O-RAN Open Source Development Landscape  
During the past few years, open source platforms for cellular networks have been developed to move away from proprietary hardware and mitigate technological barriers [23; 24; 25; 26]. The main open source projects implementing O-RAN specifications are OpenAirInterface (OAI) [24], srsRAN [25] and O-RAN Software Community (O-RAN SC) [23]. These three communities are sharing the source code of different modules with different states of progress. For example, the OAI has implemented the CU/DU split by supporting Software Defined Radio (SDR) USRP devices [27] for RU and on-the-shelf UEs. The testbed Colosseum [28] was built to provide remote access to OAI resources configured with 256 SDRs. It is a large-scale wireless testbed with a massive channel emulator, which enables the design, development, and testing of solutions at scale in various deployments and channel conditions. The testbed is open to the research community and can be used for experimental research with different applications. On the other hand, srsRAN has developed full stacks of UE and gNB with a simple setup compared to the OAI platform. The O-RAN SC has published partly their industrial solutions of the O-DU with Medium Access Control (MAC) and Radio Link Control (RLC) protocols. In parallel, the Software-Defined Radio Access Network (SD-RAN) paradigm enables RAN programmability and introduces new APIs for control extending platforms like OAI and srsRAN to support control/data plane separation [29]. The objective of SD-RAN is to focus on the L2 protocols: Radio Resource Control (RRC), RLC, MAC and Packet Data Convergence Protocol (PDCP) protocols. FlexRAN [30] is an example of SD-RAN platforms promising flexibility by supporting dynamic control functions and robustness by handling network applications with critical real-time requirements. Other new SD-RAN controllers, such as the 5G-EmPower [31], deal with other challenges like heterogeneity of mobile RANs or RAN slicing with NexRAN [32]. These open source platforms and APIs represent key first steps toward the availability of a fully open-source O-RAN solution. These platforms allow the research community to experiment with new methods and replace the simulation hypothesis. The research results would be with significant impact. Furthermore, without the shift of the softwarization of the RAN functions as close as possible to the antenna, the ML algorithms cannot be applied efficiently for the reconfiguration of the network. In addition, the 3 GPP specifications are upgraded frequently with new interfaces and protocols to improve the global network performances and handle new applications. For example, the 3 GPP release 17 introduces new NTN and satellite communications and the new Multicast/Broadcast Session (MBS) in the definition of protocols' functions. If the RAN is closed with a full hardware implementation, the solution would not be maintained quickly and the research community would not have access to new challenges. However, the flexibility of the software radio would allow the designer and the researcher to quickly maintain the O-RAN solutions as well as design, prototype, demonstrate, and analyze the O-RAN functions in the real-world settings. There remain challenges in the implementation and testing of open source O-RAN solutions. Limited use cases, missing functionalities in the current implementation, as well as the affordability of hardware devices are some obstacles to make further progress in O-RAN implementation. For example, at the time of writing, O-RAN SC [23] shares only the O-DU without the complete implementation of the CU. This O-DU handles the registration of one UE with one distributed unit and without the possibility to test it with an SDR. The ssrRAN [25] and O-RAN SC [23] support the release 15 of the 3 GPP specifications, and they do not support the side link V2X communications use case. The OAI [24] uses USRP X300, which is a capital outlay.