Dynamic rerouting and modification of layer traffic in virtualized RAN
By dynamically rerouting layer traffic in vRAN system, the problem of PHY migration difficulties in the existing technology is solved, efficient server migration and load balancing is achieved, system availability and energy efficiency are improved, and user visible interrupts are avoided.
Patent Information
- Application Number
- CN202380042821.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-05-26
- Filing Date
- 2023-04-20
- Publication Date
- 2025-01-07
AI Technical Summary
Existing virtualized radio access networks (vRAN) deployments have challenges in high availability, service, energy efficiency and load balancing, especially in the case of real-time latency requirements and high software complexity, resulting in difficulty in migration of PHYs and unable to dynamically re-revise Configure the radio unit server, resulting in a visible interrupt from the user.
By dynamically rerouting layer traffic between different servers, using the message controller to intercept, convert and rerout messages from radio access networks, discarding status information associated with time slots, realizing PHY migration without almost no user-visible interrupts. And there is no need to modify the vRAN software stack.
PHY migration and load balancing without user visible interrupts is achieved, improving system availability and energy efficiency, enabling automatic migration of PHY processes on demand or under unexpected events, and improving the flexibility and reliability of vRAN deployment.
Smart Images

Figure CN119278612A_ABST
Abstract
Description
Background Art
[0001] The Radio Access Network (RAN) is part of the cellular network infrastructure (e.g., LTE and 5G) that converts wireless signals between user devices and radio cell towers into data packets, and vice versa. Manufacturers and providers of RAN are looking to replace dedicated RAN hardware with software systems running on commodity servers deployed in edge data centers. This approach, known as virtualized RAN (vRAN), has the advantages of reduced vendor lock-in, rapid feature development / upgrades, easier maintenance, and reduced costs. However, current vRAN deployments need to overcome challenges in high availability, service, energy efficiency, and / or load balancing.
[0002] The distributed unit servers running the lower layers of the vRAN stack are statically configured to serve a fixed set of radio units (RUs). These lower layers include the physical layer (PHY, layer-1 or L1) and layer-2 (L2, including medium access control (MAC) and radio link control (RLC)). While this static configuration works well for certain scenarios (e.g., no server failures, no workload changes, etc.), there are some situations where the RU-to-server mapping needs to be dynamically reconfigured. For example, when a PHY process fails, the baseband processing workload served by the failed PHY process needs to be migrated to another server. This functionality is not available in current vRAN deployments.
[0003] Two aspects that make PHY migration challenging are real-time latency requirements and high software complexity. First, PHY processing has strict tail latency requirements in all RAN layers by requiring baseband processing tasks to be completed within strict transmission time intervals (TTIs), which can be measured as low as 500μs in common deployment configurations for 5G. Therefore, existing approaches (e.g., virtual machine migration) are not applicable as they require between tens of milliseconds to several seconds to complete the migration. Such downtime in PHY processing can cause severe user-visible outages. Second, production-grade vRAN software stacks are complex and often proprietary, making them difficult or almost impossible to modify to implement any custom migration logic.
[0004] It is with respect to these and other general considerations that the aspects disclosed herein are achieved.In addition, although relatively specific problems may be discussed, it should be understood that the examples should not be limited to solving the specific problems expressed in the background or elsewhere in this disclosure. Summary of the invention
[0005] According to the present disclosure, the above and other problems are solved by dynamically rerouting layer traffic between different servers with little user-visible disruption and without modification to the vRAN software stack. This approach enables operators to initiate PHY migration on demand (e.g., during planned maintenance) or establish automatic migration in the event of an unexpected event (e.g., server failure).
[0006] In one aspect, a server system supporting a radio access network (RAN) is provided. The server system includes: a first message controller associated with a first RAN server and a memory storing instructions, which, when executed by a processor, cause the first message controller to perform a set of operations. The set of operations includes: intercepting a first message from a first layer one (PHY) of the first RAN server, wherein the first message is directed to a first layer two (L2) of the first RAN server via a first communication channel. Additionally, the operations include: converting the first message into one or more first network packets, wherein converting the first message into the one or more first network packets includes discarding state information of the first PHY associated with at least one time slot. The set of operations also includes: rerouting the first message to a second layer two (L2) of a second RAN server by transmitting the one or more first network packets via a network at a time slot boundary.
[0007] In another aspect, a method for rerouting a message from a first RAN server of a radio access network (RAN) to a second RAN server is provided. The method includes: placing, by a PHY processor in the first RAN server, the message in a first memory of the first RAN server. The method also includes: converting, by a first message controller in the first RAN server, the message in the first memory into one or more network packets, wherein converting the message into the one or more network packets includes: discarding state information of the PHY processor for at least one time slot. In addition, the method includes: rerouting, by the first message controller, the one or more network packets via the network to a second message controller in the second RAN server at a time slot boundary.
[0008] In yet another aspect, a method for rerouting a message from a first RAN server of a radio access network (RAN) to a second RAN server is provided. The method includes: intercepting a first message by a first message controller in the first RAN server, the first message being transmitted from a first layer one (PHY) in the first RAN server to a first layer two (L2) in the first RAN server via a communication channel. In addition, the method includes: converting the first message by the first message controller to one or more first network packets, wherein converting the first message to one or more first network packets includes: discarding state information of the first PHY associated with at least one time slot. The method also includes: rerouting the first message to a second layer two (L2) of the second RAN server by the first message controller by transmitting the one or more first network packets via the network at the time slot boundary.
[0009] This summary is provided to introduce a selection of concepts in simplified form, which will be further described in the following detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Additional aspects, features, and / or advantages of the examples will be set forth in part in the following description, and in part will be apparent from the description, or may be learned by practicing the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Non-limiting and non-exhaustive examples are described with reference to the following figures.
[0011] Figure 1 An overview of an example system implementing Cloud RAN according to aspects of the present disclosure is shown.
[0012] Figure 2A An example far edge data center of a Cloud RAN according to aspects of the present disclosure is shown.
[0013] Figure 2B An example far edge data center of a cloud RAN implementing dynamic rerouting of layer traffic in accordance with aspects of the present disclosure is shown.
[0014] Figure 2C An example process for dynamic rerouting of layer traffic in accordance with aspects of the present disclosure is shown.
[0015] Figure 3A Example methods for dynamic rerouting of layer traffic in accordance with aspects of the present disclosure are shown.
[0016] Figure 3B Another example method for dynamic rerouting of layer traffic in accordance with aspects of the present disclosure is shown.
[0017] Figure 4is a block diagram illustrating example physical components of a computing device with which aspects of the present disclosure may be practiced.
[0018] Figure 5A is a simplified diagram of a mobile computing device with which aspects of the present disclosure may be practiced.
[0019] Figure 5B is another simplified block diagram of a mobile computing device with which aspects of the present disclosure may be practiced. DETAILED DESCRIPTION
[0020] Various aspects of the present disclosure are described more fully below with reference to the accompanying drawings, which form a part of the present disclosure and illustrate specific example aspects. However, different aspects of the present disclosure can be implemented in many different ways and should not be construed as limited to the aspects set forth herein; on the contrary, these aspects are provided so that the present disclosure will be thorough and complete, and will fully convey the scope of various aspects to those skilled in the art. Practical aspects can be as methods, systems, or devices. Therefore, various aspects can take the form of hardware implementation, complete software implementation, or a combination of software and hardware implementations. Therefore, the following detailed description should not be taken as limiting.
[0021] According to the present disclosure, the above and other problems are solved by dynamically rerouting layer traffic between different servers with little user-visible disruption and without modification to the vRAN software stack. This approach enables operators to initiate PHY migration on demand (e.g., during planned maintenance) or establish automatic migration in the event of an unexpected event (e.g., server failure).
[0022] As also described herein, there is no hard state that must be migrated for PHY processing in a cellular network. Therefore, layer traffic such as PHY-L2 traffic (e.g., traffic from PHY to L2) or L2-PHY traffic (e.g., traffic from L2 to PHY) can be simply rerouted to different servers. The rerouting mechanism is implemented by inserting one or more message controllers (e.g., middleboxes) in the communication channel between PHY and L2. In one aspect, the communication channel can be a shared memory channel. On the other hand, the communication channel can be a network channel using a network function application platform interface (nFAPI).
[0023] Layer traffic includes messages exchanged between PHY and L2 in a communication channel. Messages between PHY and L2 are intercepted by one or more message controllers and rerouted between servers via the network of the edge data center using any suitable protocol, such as User Datagram Protocol (UDP), Stream Control Transmission Protocol (SCTP), Remote Direct Memory Access (RDMA), etc. In particular, the message is obtained from the communication channel and converted into one or more network packets (e.g., by adding a packet header). The one or more network packets encapsulating the message are then transmitted to the appropriate server via the network of the edge data center. In this regard, the dynamic rerouting of PHY-L2 (or L2-PHY) traffic becomes transparent to existing vRAN software and hardware components.
[0024] Figure 1 An overview of an example system 100 in which dynamic rerouting of layer traffic can be implemented is shown. A mobile wireless telecommunications network such as system 100 can use cloud services to implement RAN. In this case, the cloud service connects a cell tower, and a mobile device (e.g., a smart phone) is connected to a public network (e.g., the Internet), a telecommunications network, a private network, or other suitable network through the cell tower. The cloud service provides virtual servers and other computing resources to dynamically scale computing capacity as needed based on the amount of data traffic (e.g., to and from mobile devices). In various aspects, the cloud RAN infrastructure represents the implementation of cloud services for RAN. Compared to typical cloud services, the cloud RAN infrastructure may include geographical and physical constraints and latency constraints imposed by RAN standards. The cloud RAN infrastructure includes a connection to at least one cell tower associated with an RU, and a connection to a cloud server associated with one or more of a distributed unit (DU), a central unit (CU), and a RAN intelligent controller (RIC). The cell tower is on-site, where the mobile device is connected via wireless cellular communication, and the RU of the cell tower is connected to the DU of a RAN server at a far edge data center. In order to achieve real-time processing of RAN data traffic, the far edge data center is relatively close (e.g., several kilometers) to the cell tower.
[0025] As described above, the DU is associated with a network switch, and it processes data in a series of operations that are associated with at least layer one (physical layer, L1) and layer two (data link layer, L2) of the open system interconnection (OSI) model. The physical layer connects the data link layer device (e.g., MAC) to the physical medium (e.g., optical fiber, copper cable, etc.). In various aspects, a switch is a hardware device that connects devices on a digital network using packet switching to receive data and forward the data to a destination device. Packet switching involves grouping the transmitted data into "packets." The "header" of each packet includes a "MAC address," which is a unique identifier used to direct the packet in the data link layer to the destination device. The "payload" of each packet includes the transmitted data, which is ultimately extracted and used by the application software. Some switches include integrated circuit chips that are programmed to process packets according to fixed rules associated with a limited set of networking protocols. Other switches are programmable based on a protocol-independent switch architecture, which enables developers to program each stage of packet processing.
[0026] exist Figure 1 In the illustrated example embodiment, cell towers 102A-C transmit and receive wireless communications with mobile computing devices (e.g., smart phones) via the RAN. Example system 100 also includes far edge data center 110 (switches, RAN servers), near edge data center 130 (core network servers), and cloud data center 150 (cloud services). In various aspects, example system 100 corresponds to a cloud RAN infrastructure for a mobile wireless telecommunications network.
[0027] The far edge data center 110 includes a DU 112 and a CU 118. In various aspects, the far edge data center 110 implements cloud integration with the RAN. The far edge data center 110 includes a switch 114 and a RAN server 116, which is configured to host a vRAN instance 120 for processing RAN data. A vRAN is a type of RAN in which networking functions (including a control plane and a data plane) are separated from the hardware hosting the vRAN (e.g., the RAN server 116 hosts the vRAN instance 120). In general, network function virtualization involves enabling software to perform hardware-based functions. This results in an increase in responsiveness to network fluctuations, as well as an increase in flexibility for enhancements, because software can be upgraded or repaired more easily than hardware.
[0028] The switches 114 and the RAN servers 116 process incoming data traffic and outgoing data traffic associated with at least a portion of layer one (physical layer) 174 and layer two (MAC, RLC) 176. In various aspects, the far edge data center 110 is located at a remote site of a cloud data center associated with a core network and cloud services. For example, the remote site can be located within a distance of several kilometers or more of a cell tower 102A-C. In various aspects, the upstream data traffic corresponds to data flowing from the cell tower 102A-C to the server 154 in the cloud data center 150. Similarly, the downstream data traffic corresponds to data flowing from the cloud data center 150 to the cell tower 102A-C.
[0029] The near edge data center 130 (e.g., hosting the core network) includes a CU 132 and a RAN intelligent controller 136 (RIC). The CU 132 is associated with a server 134, and the RIC 136 is associated with a server 138. In various aspects, the near edge data center 130 is located at a regional site for a private cloud service. For example, the regional site can be located tens of kilometers from the cell towers 102A-C.
[0030] The cloud data center 150 includes a RIC 152 associated with a server 154. For example, the RIC 152 handles non-real-time service operations. In various aspects, the cloud data center 150 can be located at a central location in the cloud RAN infrastructure. For example, the central location can be located hundreds of kilometers from the cell towers 102A-C.
[0031] In various aspects, far edge data centers 110 that are closer to cell towers 102A-C than cloud data centers 150 provide real-time processing. In contrast, cloud data centers 150 that are farthest from cell towers 102A-C in the cloud RAN infrastructure provide processing in a non-real-time manner.
[0032] Operational partitions 170 illustrate various operational segments for processing data traffic in the RAN. For example, operational partitions 182 to 191 may correspond to layer one 174 processing, and operational partitions 192 to 195 may correspond to layer two 176 processing of the OSI seven-layer model.
[0033] In various aspects, the conversion of data associated with the radio frequency (RF) 172 occurs before the data at the processing layer one 174. For data processing of RF 172, the radio front end partition receives and sends data to the mobile computing device via the cell tower 102A-C through wireless communication. The analog-to-digital converter (A / D) 181A converts the analog data from the radio front end into digital data for upstream data traffic. The digital-to-analog converter (D / A) 181B converts the digital data into analog data for downstream data traffic. In various aspects, the interface between the DU and the RU in the cloud RAN is called "fronthaul". The fronthaul defines various "planes" of operation, including "c-plane" (control plane), "u-plane" (user plane), "s-plane" (synchronization plane) and "m-plane" (management plane). In general, c-plane data is for scheduling and coordination of data transmission, u-plane data is for efficient data transmission, s-plane data is for timing and synchronization of data transmission between RU and DU, and m-plane data involves managing RU. Packets having data payloads associated with different operating planes include corresponding header information (eg, "c-plane header," "u-plane header," etc.).
[0034] The partitions in layer one 174 are related to operations for converting coded symbols, which use a communication medium (e.g., a physical line or radio) to convert coded symbols associated with a bit stream into physical signals for transmission. For example, layer 1174 can convert coded symbols into in-phase / quadrature (IQ) signals. In various aspects, the operation partitions for processing upstream data traffic in layer one 174 can include CP 182A, FFT 183A, demapping 184A, channel 185A, Eq 186A, demodulation 187A, descrambling 188A, rate 189A, decoding 190A, and CRC 191A. In various aspects, the operation partitions for processing downstream data traffic in layer one 174 can include CRC 191B, encoding 190B, rate 189B, scrambling 188B, modulation 187B, layer 186B, precoding 185B, mapping 184B, iFFT 183B, and CP 182B.
[0035] The partitions in layer two 176 are related to operations for transmitting data frames between network hosts over physical links. In various aspects, the partitions in layer two 176 correspond to the data link layer in the OSI seven-layer model. For example, low-MAC 192 is the lowest partition in layer two 176. Other partitions above low-MAC 192 include the following layers in ascending order: high-MAC 193, low-RLC 194, and high-RLC 195.
[0036] The partitions in layer three 178 are related to operations for forwarding data packets through routers. In various aspects, layer three 178 corresponds to the network layer in the OSI seven-layer model. The partitions in layer three 178 can be associated with operations managed by protocols such as packet data convergence protocol 196 (PDCP), radio resource control 197A (RRC), and service data adaptation protocol 197B (SDAP).
[0037] In various aspects, a combination of the DU 112 and the CU 118 in the far edge data center 110 can process partitions associated with at least a portion of the layer one 174, the layer two 176, and the layer three 178. In particular, a corresponding server in the RAN server 116 can include a central processing unit (CPU), and various accelerators for processing data associated with one or more partitions of the operating partition 170.
[0038] As will be understood, with respect to Figure 1 The various methods, devices, applications, features, etc. described are not intended to limit the example system 100 to be performed by the specific applications and features described. Therefore, additional controller configurations may be used to practice the methods and systems herein, and / or the features and applications described may be excluded without departing from the methods and systems disclosed herein.
[0039] Figure 2A An example far edge data center 210 of the RAN environment 200 is shown. The far edge data center 210 includes at least a switch 214 and RAN servers 220, 230, and 240. The switch 214 connects the cell towers 202A to 202D to the RAN servers 220, 230, and 240 via fiber fronthaul links.
[0040] In various aspects, each RAN server in the far edge data center 210 operates to process data at corresponding layers one (PHY) and two (L2). PHY is responsible for signal processing tasks (e.g., channel estimation, modulation / demodulation, forward error correction, etc.), while L2 is responsible for scheduling frequency resources and time resources between user equipment (UE). L2 is also connected to higher layers (e.g., L3) and the core network. In various aspects, PHY and L2 can run on different servers that communicate with each other using nFAPI.
[0041] In an example, each RAN server in the remote edge data center 210 may run one PHY and one L2. For example, the RAN server 220 may run PHY 222 and L2 224 for communication via communication channel 228; the RAN server 230 may run PHY 232 and L2 234 for communication via communication channel 238; and the RAN server 240 may run PHY 242 and L2 244 for communication via communication channel 248. In various aspects, the communication channels 228, 238, and 248 may be shared memory channels.
[0042] In the RAN environment 200, the mapping between components is typically fixed (e.g., cell tower to server). In addition, the PHY and L2 must be placed on the same server because they communicate through shared memory. However, this setup can have a drastic impact on the user's connectivity. For example, when a failure occurs in the PHY process (e.g., hardware failure, software failure, etc.), the UE may be disconnected for an extended period of time (e.g., up to 170 seconds) due to the time required for the L2 to initialize the new PHY and the time required for the UE to reattach to the cell tower. As an example, when the PHY software is updated (e.g., planned maintenance), connectivity downtime can be created because stopping the current PHY application and restarting the new version will disconnect the cell tower from the PHY.
[0043] In order to solve the above problems, Figure 2B An implementation of dynamic rerouting of layer traffic is shown. Dynamic rerouting of layer traffic is possible because PHY processing is focused on signal processing tasks for radio data, and in some examples, signal processing tasks are performed only for radio data. This means that PHY processes can be transmitted across servers without any state transfer because the L2 and higher layers maintain relevant states, such as the state of the PHY, RU, UE, and other resources. Although dynamic rerouting of layer traffic does not require state transfer for the PHY, the PHY is not completely stateless. Instead, the PHY is "slot stateless," which means that discarding PHY state across slots does not substantially affect end-user connectivity.
[0044] A timeslot is the basic unit of time in the radio protocol. The PHY performs work at the granularity of a timeslot. For example, for each timeslot, the L2 sends a request to the PHY describing the signal processing tasks to be performed during the timeslot (e.g., a set of UEs active in the timeslot, resource blocks used by each UE, modulation schemes used by each UE, etc.). The PHY returns a per-slot response, each of which has data decoded on the uplink. Dynamic rerouting of layer traffic between servers occurs at or near timeslot boundaries. Specifically, if the original PHY process is performed for timeslots 0 to i, the new PHY process can be rerouted to subsequent timeslots (e.g., i+1, i+2, etc.). Within a timeslot, the PHY process generates a large number of intra-slot states in the form of intermediate calculation results (e.g., demodulated data before decoding).
[0045] Downlink PHY processing is typically slot-less, which allows any such state to be discarded without significant changes to the downlink in-phase / IQ sample packet stream generated by the PHY layer. As an example of uplink PHY processing state, a signal-to-noise ratio (SNR) value can be maintained for selecting a PHY coding process (e.g., modulation and coding scheme). However, the SNR state can be ignored during migration, resulting in the destination PHY using an outdated or default SNR value. This is acceptable because the RAN has been designed to cope with such a changed SNR value. As another example of uplink PHY processing state, a hybrid automatic repeat request (HARQ) buffer can store one or more previously received transmissions for decoding transmissions that the PHY failed to decode. However, the HARQ buffer can also be ignored during migration, resulting in the destination PHY using an outdated or default HARQ buffer. In this case, the PHY or L2 level check will fail, but the RAN is designed to cope with such failures by retransmissions at higher layers of the RAN (e.g., RLC and L3). Therefore, it is also acceptable to ignore the HARQ buffer during migration. Therefore, dynamic rerouting of layer traffic can be considered time-slot stateless in the sense that ignoring uplink PHY state and downlink PHY state across "time slots" does not cause significant user-visible disruption (e.g., significantly higher latency).
[0046] exist Figure 2BIn the embodiment of the present invention, each RAN server in the far edge data center 210 can run one PHY, one L2, and a message controller (MC). For example, the RAN server 220 can run PHY 222, L2 224, and MC 226; the RAN server 230 can run PHY 232, L2 234, and MC 236; and the RAN server 240 can run PHY 242, L2 244, and MC 246. In other examples, the RAN server can run PHY and MC (not shown) or L2 and MC (not shown). Dynamic rerouting allows a PHY process running in one PHY of one RAN server to be moved to another PHY running on a different RAN server. To achieve this, the MC is inserted between the PHY and the L2, where the MC includes a PHY side and an L2 side. Alternatively, for a RAN server running one PHY or one L2, the MC can be associated with the PHY or L2 on the RAN server, respectively.
[0047] In various aspects, MC 226, 236 and 246 can be a software-based module executed by a processor (e.g., CPU) in a corresponding RAN server. Each MC is configured as an intermediary layer between PHY and L2 processes. Therefore, MC 226, 236 and 246 are compatible with existing vRAN components and hide the existence of any rerouting between PHY and L2. MC 226, 236 and 246 are also agnostic to the implementation of other vRAN components to allow even closed source PHY and L2 implementations.
[0048] MCs 226, 236, and 246 communicate with each other through the network of the far edge data center 210. In this way, each MC can communicate using a network protocol without inter-slot state, which in turn enables dynamic rerouting of layer traffic at slot boundaries. Packet losses are rare because the far edge data center 210 statically provides a network with the required bandwidth, and there are no incast-like situations that cause congestion. In various examples, to reduce latency, MCs 226, 236, and 246 can use one or more established techniques (e.g., kernel-bypass networks, core pinning, lock-free data structures, busy polling, process to completion, etc.) running on dedicated cores to cope with any network channel.
[0049] In various aspects, MC 226, 236, and 246 allows PHY and L2 to run on different servers by converting messages in the communication channel between PHY and L2 into one or more network packets to be transmitted through the network of far edge data center 210. To this end, MC 226, 236, and 246 ensure that PHY and L2 receive messages that comply with the Femtocell Application Programming Interface (FAPI) specification. In some examples, MC 226, 236, and 246 can be configured to receive / send messages that comply with other suitable specifications.
[0050] like Figure 2B As shown, the cell tower 202A is connected to the RAN server 220 through the switch 214. For the PHY to L2 message transmission path, the PHY 222 in the RAN server 220 attempts to connect to the L2 224 through the communication channel 228 in the RAN server 220. However, the PHY 222 is connected to the MC 226 instead. Therefore, when the PHY 222 sends the FAPI message 249 to the L2 224, the MC 226 intercepts the message through the communication channel 228 and reroutes the message to the MC 236 in the RAN server 230 via the network of the far edge data center 210. Then, the MC 236 receives the FAPI message 249 and forwards the FAPI message 249 to the L2 234 through the communication channel 238 in the RAN server 230. Therefore, the process from the PHY 222 is seamlessly rerouted to the L2 234 to run on a different server. The L2 to PHY message transmission path is similar, but in the opposite direction.
[0051] Figure 2C An example process 250 for dynamic rerouting of layer traffic is shown. Process 250 may be performed at Figure 2B 2. The process 250 is implemented in a remote edge data center 210 of the RAN. In various aspects, the process 250 involves message rerouting between RAN servers 260 and 270. The RAN server 260 can run the PHY layer and the L2 layer with a PHY processor 262 and an L2 processor 264, respectively. Similarly, the RAN server 270 can run the PHY layer and the L2 layer with a PHY processor 272 and an L2 processor 274.
[0052] Each RAN server includes an MC. For example, RAN server 260 includes MC 266, and RAN server 270 includes MC 276. MCs 266 and 276 operate to reroute layer traffic (e.g., PHY to L2, L2 to PHY) in RAN servers 260 and 270. To this end, MC 266 continuously monitors messages in shared memory 268, and MC 276 continuously monitors messages in shared memory 278. In various aspects, shared memories 268 and 278 are located in the respective RAN servers 260 and 270.
[0053] For PHY to L2 messaging, the PHY processor 262 may attempt to send a FAPI message 280 to the L2 processor 264 by placing the FAPI message 280 in the shared memory 268. However, the FAPI message 280 will be rerouted to the L2 processor 274 instead. In particular, the MC 266 monitors the shared memory 268 to intercept the FAPI message 280. The MC 266 copies the FAPI message 280 from the shared memory 268 and forwards the message to the MC 276 via a network channel (e.g., a network of a far edge data center 210). Once received, the MC 276 stores a copy of the FAPI message 280 in the shared memory 278. The L2 processor 274 is then able to access the FAPI message 280 in the shared memory 278. For L2 to PHY messaging, the process is in the opposite direction.
[0054] In various aspects, each message controller may be implemented as two separate components. For example, MC 266 includes a first controller portion coupled to PHY processor 262, and a second controller portion coupled to L2 processor 264. Similarly, MC 276 includes a third controller portion coupled to PHY processor 272, and a fourth controller portion coupled to L2 processor 274. In operation, a message from PHY processor 262 to L2 processor 264 is intercepted by the first controller portion of MC 266. The first controller portion of MC 266 then sends the message to the fourth controller portion of MC 276, so that the message is rerouted to L2 processor 274 instead.
[0055] Dynamic rerouting of layer traffic can be used to improve several important system properties. First, the PHY process may crash due to various reasons (e.g., hardware failure, crash of platform software, etc.). Using dynamic rerouting, the PHY process can be restored at a different server, which allows vRAN operators to take advantage of the substitutability of inexpensive commodity servers to improve availability. Second, updating the PHY software in current vRAN deployments creates user downtime because the active PHY processing needs to be stopped and restarted with a new version of the software. Using dynamic rerouting, vRAN operators can generate new PHY processes and move RUs to the new PHY processes without downtime. Third, large changes in user traffic may cause certain parts of the RAN to be underutilized. Current vRAN deployments do not consider ways to reduce energy consumption. Using dynamic rerouting, vRAN operators can improve energy efficiency by boxing PHY processing into a minimum number of servers based on the current workload and converting the remaining idle servers to energy-saving / power-off states.
[0056] Figure 3A An example method 300 for dynamic rerouting of layer traffic is shown. The general order of operations for method 300 is as follows: Figure 3A Typically, method 300 begins with a start operation 302 and ends with an end operation 310. Method 300 may include more or fewer steps, or may be combined with Figure 3A The order of the steps may be arranged differently than the order of the steps shown in . The method 300 may be performed as a set of computer executable instructions executed by a computer system and encoded or stored on a computer readable medium. In addition, the method 300 may be performed by gates or circuits associated with a processor, ASIC, FPGA, SOC or other hardware device. Figure 1 , FIG. 2A to FIG. 2C , Figure 4 and FIG. 5A to FIG. 5B The described systems, components, devices, modules, software, data structures, data property representations, signaling diagrams, methods, etc. are used to explain the method 300. For example, various aspects of the method 300 can be performed by a RAN server, such as Figure 1 RAN server 116, FIG. 2A to FIG. 2B RAN servers 220, 230 and 240 and Figure 2C RAN servers 260 and 270.
[0057] After starting operation 302, a server associated with a far edge data center of the cloud RAN may perform dynamic rerouting of layer traffic. For example, a first message controller running on a first RAN server and a second message controller running on a second RAN server in the far edge data center may operate to reroute PHY processing from the first RAN server to the second RAN server, and vice versa. In various aspects, the first RAN server and the second RAN server may be different servers.
[0058] At interception operation 304, the first message controller intercepts a first message transmitted from a first layer one (PHY) in a first RAN server to a first layer two (L2) through a communication channel. In one aspect, the communication channel is a shared memory channel. For example, the first message controller intercepts the first message by obtaining the first message in the shared memory channel. In another aspect, the communication channel is a network channel using nFAPI. For example, the first message controller intercepts the first message by obtaining the first message transmitted over the network channel.
[0059] The first message controller converts the first message into one or more first network packets at converting operation 306. In various aspects, converting includes discarding or ignoring state information associated with the first PHY of the first RAN server.
[0060] At rerouting operation 308, the first message controller reroutes the first message to the second RAN server. For example, the first message controller transmits one or more first network packets encapsulating the first message to the second RAN server via the network at a time slot boundary. The transmission of the one or more first network packets is performed with minimal impact on bandwidth based on discarding the state information of the first PHY of the first RAN server.
[0061] In various aspects, the second message controller receives the first message and establishes a connection to layer two in the second RAN server.The second message controller then forwards the first message to layer two in the second RAN server.
[0062] In various aspects, the second message controller intercepts a second message transmitted from layer two in the second RAN server to layer one. The second message controller converts the second message into one or more second network packets. The second message controller then reroutes the second message to the first RAN server by transmitting the one or more second network packets via the network. In turn, the first message controller receives the second message and establishes a connection to layer one in the first RAN server. The first message controller then forwards the second message to layer one in the first RAN server.
[0063] In various aspects, the first message and the second message may be FAPI-compliant messages, such that the first message is a first FAPI message and the second message is a second FAPI message. In this way, the first message controller may transmit the first FAPI message to the second RAN server via the network using a network protocol without inter-slot status. Similarly, the second message controller transmits the second FAPI message to the first RAN server via the network using a network protocol without inter-slot status. The first FAPI message and the second FAPI message may be transmitted at a slot boundary.
[0064] It should be understood that operations 302-310 are described for the purpose of illustrating the present method and system, and are not intended to limit the present disclosure to a particular sequence of steps. That is, the steps may be performed in a different order, additional steps may be performed, and the disclosed steps may be excluded without departing from the present disclosure.
[0065] Figure 3B Another example method 350 for dynamic rerouting of layer traffic is shown. The general sequence of operations of method 350 is as follows: Figure 3B Typically, method 350 begins with a start operation 352 and ends with an end operation 360. Method 350 may include more or fewer steps, or may be combined with Figure 3B The order of the steps may be arranged differently than the order of the steps shown in . The method 350 may be executed as a set of computer executable instructions executed by a computer system and encoded or stored on a computer readable medium. In addition, the method 350 may be executed by gates or circuits associated with a processor, ASIC, FPGA, SOC or other hardware device. Figure 1 , FIG. 2A to FIG. 2C , Figure 4 and Figure 5A The method 350 is explained by referring to the systems, components, devices, modules, software, data structures, data characteristic representations, signaling diagrams, methods, etc. described in Figure B. For example, various aspects of the method 350 can be performed by a RAN server, such as Figure 1 RAN server 116, FIG. 2A to FIG. 2B RAN servers 220, 230 and 240 and Figure 2C RAN servers 260 and 270.
[0066] After start operation 352, one or more message controllers may perform dynamic rerouting of layer traffic. At placement operation 354, a first PHY processor in a first RAN server places (e.g., stores) a message in a first memory of the first RAN server. For example, the message may be a FAPI-compliant message. At conversion operation 356, a first message controller in the first RAN server converts the message in the first memory into one or more network packets. In an example, the conversion includes discarding or ignoring state information associated with the first PHY processor of the first RAN server.
[0067] At transmission operation 358, the first message controller transmits the one or more network packets to a second message controller in the second RAN server via the network at a time slot boundary. Transmission of the one or more network packets is performed with minimal impact on bandwidth based on discarding the state information of the first PHY processor.
[0068] Then, the second message controller receives the message via the network. The second message controller stores the message in the second memory of the second RAN server. Then, the L2 processor of the second RAN server can access the message in the second memory.
[0069] In various aspects, the PHY processor is a first PHY processor in a first RAN server, and the L2 processor is a second L2 processor in the first RAN server. The first memory is shared between the first PHY processor and the first L2 processor. The second memory is shared between a second PHY processor and a second L2 processor in a second RAN server.
[0070] It should be understood that operations 352 to 360 are described for the purpose of illustrating the present method and system, and are not intended to limit the present disclosure to a specific sequence of steps. That is, the steps may be performed in a different order, additional steps may be performed, and the disclosed steps may be excluded without departing from the present disclosure.
[0071] Figure 44 is a block diagram illustrating the physical components (e.g., hardware) of a computing device 400 with which aspects of the present disclosure may be practiced. The computing device components described below may have computer executable instructions for implementing a dynamic rerouting application 420, which includes computer executable instructions for the dynamic rerouting application 420, which may be executed to implement the methods disclosed herein. In a basic configuration, the computing device 400 may include at least one processing unit 402 and a system memory 404. Depending on the configuration and type of the computing device, the system memory 404 may include, but is not limited to, volatile storage (e.g., random access memory), non-volatile storage (e.g., read-only memory), flash memory, or any combination of such memories. The system memory 404 may include an operating system 405 and one or more program modules 406 suitable for running the dynamic rerouting application 420, such as one or more components, and in particular, the system memory 404 may include a memory monitor 411, a message manipulator 413, and / or a packet generator 415.
[0072] In various aspects, the memory monitor 411 monitors the shared memory channel for messages communicated between the PHY layer and the L2 layer. The message manipulator 413 creates a copy of the message to be transmitted in the shared memory channel. The packet generator 415 processes the copy of the message into a network packet and transmits the network packet through the network channel.
[0073] The operating system 405 may be suitable for controlling the operation of the computing device 400, for example. In addition, embodiments of the present disclosure may be practiced in conjunction with a graphics library, other operating systems, or any other application program, and are not limited to any particular application or system. Figure 4 408. The computing device 400 may have additional features or functionality. For example, the computing device 400 may also include additional data storage devices (removable and / or non-removable), such as, for example, magnetic disks, optical disks, or tapes. Such additional storage devices may be used to store data or other data. Figure 4 4 is shown by a removable storage device 409 and a non-removable storage device 410.
[0074] As described above, a plurality of program modules and data files may be stored in system memory 404. When executed on processing unit 402, program module 406 may perform processes including, but not limited to, the various aspects described herein. Other program modules that may be used in accordance with various aspects of the present disclosure may include memory monitor 411, message manipulator 413, and / or packet generator 415, among others.
[0075] In addition, embodiments of the present disclosure may be practiced in circuits including discrete electronic components, packaged or integrated electronic chips containing logic gates, circuits utilizing a microprocessor, or a single chip containing electronic components or a microprocessor. For example, embodiments of the present disclosure may be practiced via a system on a chip (SOC) wherein Figure 4 Each or more of the components shown in can be integrated onto a single integrated circuit. Such a SOC device may include one or more processing units, a graphics unit, a communication unit, a system virtualization unit, and various application functionalities, all of which are integrated (or "burned") onto a chip substrate as a single integrated circuit. When operated via a SOC, the functionality described herein regarding the capabilities of the client-to-switch protocol can be operated via dedicated logic integrated with other components of the computing device 400 on a single integrated circuit (chip). Embodiments of the present disclosure may also be practiced using other technologies capable of performing logical operations, such as AND, OR, and NOT, including but not limited to mechanical, optical, fluid, and quantum technologies. In addition, embodiments of the present disclosure may be practiced within a general-purpose computer or any other circuit or system.
[0076] The computing device 400 may also have one or more input devices 412, such as a keyboard, a mouse, a pen, a sound or voice input device, a touch or sliding input device, etc. Output device(s) 414 may also be included, such as a display, a speaker, a printer, etc. The aforementioned devices are examples, and other devices may be used. The computing device 400 may include one or more communication connections 416 that allow communication with other computing devices 450. Examples of suitable communication connections 416 include, but are not limited to, RF transmitters, receivers, and / or transceiver circuitry; Universal Serial Bus (USB), parallel and / or serial ports.
[0077] The term computer-readable media as used herein may include computer storage media. Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures or program modules). System memory 404, removable storage device 409 and non-removable storage device 410 are all examples of computer storage media (e.g., memory storage devices). Computer storage media may include RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical storage device, cassette, magnetic tape, magnetic disk storage device or other magnetic storage device, or any other product that can be used to store information and can be accessed by computing device 400. Any such computer storage media may be part of computing device 400. Computer storage media do not include carrier waves or other propagated or modulated data signals.
[0078] Communication media may be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and includes any information delivery media. The term "modulated data signal" may describe a signal having one or more characteristics that are set or changed in a manner that encodes information in the signal. By way of example and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media.
[0079] Figure 5A and Figure 5B A mobile computing device 500 is shown with which embodiments of the present disclosure may be practiced, such as a mobile phone, a smart phone, a wearable computer (such as a smart watch), a tablet computer, a laptop computer, etc. In some aspects, the client may be a mobile computing device. Figure 5A , shows one aspect of a mobile computing device 500 for implementing various aspects. In a basic configuration, the mobile computing device 500 is a handheld computer having both input elements and output elements. The mobile computing device 500 typically includes a display 505 and one or more input buttons 510 that allow a user to input information into the mobile computing device 500. The display 505 of the mobile computing device 500 can also be used as an input device (e.g., a touch screen display). If included, the optional side input element 515 allows additional user input. The side input element 515 can be a rotary switch, a button, or any other type of manual input element. In alternative aspects, the mobile computing device 500 can incorporate more or fewer input elements. For example, in some embodiments, the display 505 may not be a touch screen. In yet another alternative embodiment, the mobile computing device 500 is a portable telephone system, such as a cellular phone. The mobile computing device 500 can also include an optional keypad 535. The optional keypad 535 can be a physical keypad or a "soft" keypad generated on the touch screen display. In various embodiments, output elements include a display 505 for showing a graphical user interface (GUI), a visual indicator 520 (e.g., a light emitting diode), and / or an audio transducer 525 (e.g., a speaker). In some aspects, the mobile computing device 500 incorporates a vibration transducer for providing tactile feedback to the user. In yet another aspect, the mobile computing device 500 incorporates input and / or output ports for sending or receiving signals to or from external devices, such as an audio input (e.g., a microphone jack), an audio output (e.g., a headphone jack), and a video output (e.g., an HDMI port).
[0080] Figure 5B5 is a block diagram illustrating an architecture of one aspect of a mobile computing device. That is, a mobile computing device 500 may incorporate a system (e.g., architecture) 502 to implement some aspects. In one embodiment, the system 502 is implemented as a "smart phone" capable of running one or more applications (e.g., a browser, email, calendar, contact manager, messaging client, game, and media client / player). In some aspects, the system 502 is integrated as a computing device, such as an integrated personal digital assistant (PDA) and a wireless phone.
[0081] One or more application programs 566 may be loaded into the memory 562 and run on or in association with the operating system 564. Examples of application programs include a phone dialer program, an email program, a personal information management (PIM) program, a word processing program, a spreadsheet program, an Internet browser program, a messaging program, and the like. The system 502 also includes a non-volatile storage area 568 within the memory 562. The non-volatile storage area 568 may be used to store persistent information that should not be lost if the system 502 loses power. The application programs 566 may use and store information in the non-volatile storage area 568, such as emails or other messages used by the email application, and the like. A synchronization application (not shown) also resides on the system 502 and is programmed to interact with a corresponding synchronization application residing on the host computer to keep the information stored in the non-volatile storage area 568 synchronized with the corresponding information stored at the host computer. It should be appreciated that other applications may be loaded into memory 562 and executed on mobile computing device 500, including instructions for implementing workflow policies as described herein (eg, memory monitors, message handlers, and / or packet generators, etc.).
[0082] System 502 has a power source 570, which can be implemented as one or more batteries. Power source 570 can also include an external power source, such as an AC adapter or a powered docking station that replenishes or recharges the batteries.
[0083] The system 502 may also include a radio interface layer 572 that performs the functions of transmitting and receiving radio frequency communications. The radio interface layer 572 supports wireless connectivity between the system 502 and the "outside world" via a communications carrier or service provider. Transmissions to and from the radio interface layer 572 are performed under the control of the operating system 564. In other words, communications received by the radio interface layer 572 can be propagated to the application 566 via the operating system 564, and vice versa.
[0084] Visual indicator 520 can be used to provide visual notifications, and / or audio interface 574 can be used to provide audio notifications via audio transducer 525 (e.g., Figure 5AThe visual indicator 520 may be a light emitting diode (LED) and the audio transducer 525 may be a speaker. These devices may be directly coupled to the power supply 570 so that when activated, they remain on for the duration indicated by the notification mechanism, even if the processor 560 and other components may be turned off to save battery power. The LED may be programmed to be turned on indefinitely until the user takes action to indicate the power-on state of the device. The audio interface 574 is used to provide audible signals to the user and receive audible signals from the user. For example, in addition to being coupled to the audio transducer 525, the audio interface 574 may also be coupled to a microphone to receive audible input, such as to support a telephone conversation. According to an embodiment of the present disclosure, the microphone may also be used as an audio sensor to support the control of notifications, as will be described below. The system 502 may also include a video interface 576 that enables the operation of the peripheral device 530 (e.g., a vehicle-mounted camera) to record still images, video streams, etc.
[0085] The mobile computing device 500 implementing the system 502 may have additional features or functionalities. For example, the mobile computing device 500 may also include additional data storage devices (removable and / or non-removable), such as magnetic disks, optical disks, or tapes. Such additional storage devices may be stored in the mobile computing device 500. Figure 5B , shown by non-volatile storage area 568.
[0086] Data / information generated or captured by the mobile computing device 500 and stored via the system 502 may be stored locally on the mobile computing device 500, as described above, or the data may be stored on any number of storage media that may be accessed by the device via the radio interface layer 572, or via a wired connection between the mobile computing device 500 and a separate computing device associated with the mobile computing device 500 (e.g., a server computer in a distributed computing network such as the Internet). It should be understood that such data / information may be accessed by the mobile computing device 500 via the radio interface layer 572 or via a distributed computing network. Similarly, such data / information may be readily transferred between computing devices for storage and use according to well-known data / information transmission and storage methods, including electronic mail and collaborative data / information sharing systems.
[0087] It should be understood that Figure 5A and Figure 5B The description is for the purpose of illustrating the present methods and systems and is not intended to limit the present disclosure to a specific sequence of steps or a specific combination of hardware or software components.
[0088] The description and explanation of one or more aspects provided in this application are not intended to limit or constrain the scope of the present disclosure claimed in any way. The disclosure claimed for protection should not be interpreted as being limited to any aspect or details provided in the application, for example. Whether shown and described in combination or individually, various features (both structural and methodological) are intended to be selectively included or omitted to produce an embodiment with a specific feature set. Description and explanation of the application have been provided, and without departing from the broader scope of the disclosure claimed for protection, those skilled in the art can envision changes, modifications and alternative aspects within the spirit of the broader aspects of the general inventive concept embodied in the application.
[0089] The present disclosure relates to systems and methods for dynamic rerouting of layer traffic in vRAN deployments according to various aspects provided in at least the following sections.
[0090] In one aspect, a server system supporting a radio access network (RAN) is provided. The server system includes a first message controller associated with a first RAN server and a memory, the memory storing instructions that, when executed by a processor, cause the first message controller to perform a set of operations. The set of operations includes intercepting a first message from a first layer one (PHY) of the first RAN server, wherein the first message is directed to a first layer two (L2) of the first RAN server via a first communication channel. In addition, the operation includes converting the first message to one or more first network packets, wherein converting the first message to one or more first network packets includes discarding state information of the first PHY associated with at least one time slot. The set of operations also includes rerouting the first message to a second layer two (L2) of a second RAN server by transmitting one or more first network packets via a network at a time slot boundary.
[0091] In an example of a server system, the communication channel is a shared memory channel. In another example, the PHY processes data for a cell tower of the RAN, and the first message includes processed data associated with the cell tower. In another example, the first message is received by a second message controller associated with a second RAN server, and the first message is placed in a second communication channel associated with a second L2 in the second RAN server. In yet another example, the second message is intercepted by a second message controller, wherein the second message is directed from the second L2 in the second RAN server to a second PHY in the second RAN server, the second message is converted by the second message controller into one or more second network packets, and the second message is rerouted to the first PHY of the first RAN server by the second message controller by transmitting one or more second network packets via the network. In yet another example, the first message and the second message are Femtocell Application Programming Interface (FAPI) compatible messages. In another example, the first RAN server is different from the second RAN server.
[0092] In another aspect, a method for rerouting a message from a first RAN server of a radio access network (RAN) to a second RAN server is provided. The method includes: placing, by a PHY processor in the first RAN server, the message in a first memory of the first RAN server. The method also includes converting, by a first message controller in the first RAN server, the message in the first memory to one or more network packets, wherein converting the message to the one or more network packets includes: discarding state information of the PHY processor for at least one time slot. In addition, the method includes rerouting, by the first message controller, the one or more network packets to a second message controller in the second RAN server via a network at a time slot boundary.
[0093] In an example of the method, a second message controller stores the message in a second memory of a second RAN server. In another example, a second L2 processor of the second RAN server accesses the message in the second memory. In another example, the PHY processor is responsible for data for a cell tower of a radio access network (RAN), and the first message includes processed data associated with the cell tower. In yet another example, the first memory is shared by a first PHY processor and a first L2 processor on the first RAN server. In yet another example, the second memory is shared by a second PHY processor and a second L2 processor on the second RAN server.
[0094] In yet another aspect, a method for rerouting a message from a first RAN server of a radio access network (RAN) to a second RAN server is provided. The method includes intercepting a first message by a first message controller in the first RAN server, the first message being transmitted from a first layer one (PHY) in the first RAN server to a first layer two (L2) in the first RAN server via a communication channel. In addition, the method includes converting the first message by the first message controller to one or more first network packets, wherein converting the first message to one or more first network packets includes discarding state information of the first PHY associated with at least one time slot. The method also includes rerouting the first message to a second layer two (L2) of the second RAN server by the first message controller by transmitting the one or more first network packets via the network at the time slot boundary.
[0095] In an example of the method, the communication channel is a shared memory channel. In another example, the PHY processes data for a cell tower of the RAN, and wherein the first message includes processed data associated with the cell tower. In another example, the first message is received by a second message controller associated with a second RAN server, and the first message is placed in a second communication channel associated with a second L2 in the second RAN server. In yet another example, the second message is intercepted by a second message controller, wherein the second message is directed from the second L2 in the second RAN server to a second PHY in the second RAN server, the second message is converted by the second message controller into one or more second network packets, and the second message is rerouted to the first PHY of the first RAN server by the second message controller by transmitting one or more second network packets via the network. In yet another example, the first message and the second message are Femtocell Application Programming Interface (FAPI) compatible messages. In another example, the first RAN server is different from the second RAN server.
[0096] Any one or more of the above aspects may be combined with any other of the one or more aspects as described herein.
Claims
1. A server system supporting a radio access network (RAN), comprising: a first message controller associated with the first RAN server; as well as A memory storing instructions, wherein when the instructions are executed by a processor, the first message controller performs a set of operations, the set of operations comprising: intercepting a first message of a first layer one (PHY) from the first RAN server, wherein the first message is directed to a first layer two (L2) of the first RAN server via a first communication channel; Converting the first message into one or more first network packets, wherein converting the first message into the one or more first network packets comprises: discarding state information of the first PHY associated with at least one time slot; and The first message is rerouted to a second layer two (L2) of a second RAN server by transmitting the one or more first network packets over the network at a time slot boundary.
2. The server system of claim 1, wherein the communication channel is a shared memory channel.
3. The server system of claim 1, wherein the PHY processes data for a cell tower of the RAN, and wherein the first message includes the processed data associated with the cell tower.
4. The server system according to claim 1, wherein: The first message is received by a second message controller associated with the second RAN server; and The first message is placed in a second communication channel associated with the second L2 in the second RAN server.
5. The server system according to claim 4, wherein: a second message is intercepted by the second message controller, wherein the second message is directed from the second L2 in the second RAN server to a second PHY in the second RAN server; The second message is converted by the second message controller into one or more second network packets; and The second message is rerouted by the second message controller to the first PHY of the first RAN server by transmitting the one or more second network packets via the network. 6 . The server system of claim 5 , wherein the first message and the second message are Femtocell Application Programming Interface (FAPI) compliant messages.
7. The server system of claim 1, wherein the first RAN server is different from the second RAN server.
8. A method of rerouting a message from a first RAN server of a Radio Access Network (RAN) to a second RAN server, comprising: placing, by a PHY processor in the first RAN server, the message in a first memory of the first RAN server; converting, by a first message controller in the first RAN server, the message in the first memory into one or more network packets, wherein converting the message into the one or more network packets comprises: discarding state information of the PHY processor for at least one time slot; The one or more network packets are rerouted by the first message controller via a network to a second message controller in the second RAN server at a time slot boundary.
9. The method of claim 8, wherein the second message controller stores the message in a second memory of the second RAN server.
10. The method of claim 9, wherein a second L2 processor of the second RAN server accesses the message in the second memory.
11. The method of claim 10, wherein the first memory is shared by the first PHY processor and a first L2 processor on the first RAN server; The second memory is shared by the second PHY processor and the second L2 processor on the second RAN server.
12. A method of rerouting a message from a first RAN server of a Radio Access Network (RAN) to a second RAN server, comprising: intercepting, by a first message controller in the first RAN server, a first message from a first layer one (PHY) in the first RAN server to a first layer two (L2) in the first RAN server via a communication channel; converting, by the first message controller, the first message into one or more first network packets, wherein converting the first message into the one or more first network packets comprises: discarding state information of the first PHY associated with at least one time slot; The first message is rerouted by the first message controller to a second layer two (L2) of a second RAN server by transmitting the one or more first network packets over a network at a time slot boundary.
13. The method of claim 12, wherein the communication channel is a shared memory channel.
14. The method of claim 12, wherein: The first message is received by a second message controller associated with the second RAN server; and The first message is placed in a second communication channel associated with the second L2 in the second RAN server.
15. The method according to claim 14, wherein: a second message is intercepted by the second message controller, wherein the second message is directed from the second L2 in the second RAN server to a second PHY in the second RAN server; The second message is converted by the second message controller into one or more second network packets; and The second message is rerouted by the second message controller to the first PHY of the first RAN server by transmitting the one or more second network packets via the network.