1. Architecture
The high-level architecture of the RAN simulator and its interface to ONAP is shown below.
...
- This is a Springboot based micro-service
- RAN topology of ~2000 cells to be simulated is defined into a Config DB.
- RAN Simulator spawns the netconf servers based on this topology
- Exposes following rest APIs for GUI to:
- Retrieve the current topology
- Update phy-cell-id of a cell to simulate collision or confusion
- Update neighbor list to simulate collision or confusion (in the table view)
- Receive the new phy-cell-id set by SDN-R (after PCI optimization, or otherwise)
- Start/Stop the network simulation
- MariaDB will be used as the Config DB to store the topology
- Robot scripts will drive the test sequences
- Web GUI will show the current topology, phy-cell-id collision/confusions (using different color codes), ran-neighbor-list.
- Basic pictorial representation will be provided, improvements will be a stretch goal.
RAN-Sim GUI
4.1. Assumptions
- For initial setup, an input file containing foll. info shall be used
- Cell Id
- Cell position = {0,1,2,3} 0=>no sectors, 1-3 denotes sectors
- PCI value
- (x,y) = mapping to a co-ordinate on the canvas from (lat,long)
- Neighbor list (ordered list of (cell id, PCI))
- Canvas view and ‘on-click’ views possible
- Editable contents: neighbor list (in graphical view), PCI value (in graphical view)
- Maximum 3 cells in a single location
- All cells are assumed to be of same size, i.e., path loss, etc. are not considered.
- Option provided for user to pause before seeing the changed PCI values.
- Only 1 iteration of PCI/neighbor list change will be performed.
4.2. Illustration of GUI
4.2.1. Canvas view when a neighbor list of a cell is updated
4.2.2. Canvas view when a neighbor list of a second cell is updated (OOF is not yet triggered)
4.2.3. Details of a particular cell (on click view)
5. Simulation setup and sample test sequences
...
5.1. Setup
The topology of the RAN to be simulated along with the details of the cells to be provided as input. This can be done in 2 ways:
- RANSim controller obtains number of clusters, cluster size, PCI range available via GUI and sets up the network. This is currently being implemented.
- A config file is provided with the network topology. However, this should contain details such as cellID, neighbor list, (x,y) co-ordinates (grid positioncould be lat-long) of each cell also (for the display).
In either case, OOF shall get offline inputs of the network topology and neighbor list details to set up its own DB.
...
5.2. Test sequences
- A neighbor list change or PCI change is triggered via GUI. As a result, all impacted cells are identified and netconf notifications sent to ONAP (SDN-R). This triggers PCI optimization, and results are then fed back to RANSim. RANSim then displays the changed configuration.
- Different color codes are used for active cells, cells experiencing collision, confusion, etc.
Note: When a second change is triggered, any effect of the first change is also transmitted (i.e., neighbor list changes due to PCI optimization implementation) to ONAP.
•For initial setup, an input file containing foll. info shall be used
•
•
Cell position = {0,1,2,3} 0=>no sectors, 1-3 denotes sectors
(x,y) = mapping to a co-ordinate on the canvas from (lat,long)
•Canvas view and ‘on-click’ views possible
•Editable contents: neighbor list (in graphical view), PCI value (in graphical view)
•Maximum 3 cells in a single location
•All cells are assumed to be of same size, i.e., path loss, etc. are not considered.
•Option provided for user to pause before seeing the changed PCI values.
•Only 1 iteration of PCI/neighbor list change will be performed.