Together with OpenEPC the following tools are available:
- Layer 3 eNodeB emulator and UE emulator for it
- eNodeB-M as multiple eNodeB/UE emulator
The eNodeB emulators implement the complete protocol stacks towards the EPC and support a rich list of procedures.
The Layer 3 eNodeB emulator is meant to be used together with UE emulators which can be deployed in separate containers or VMs. The interface between eNodeB emulator and UE emulator is a standard virtual Ethernet interface in which the UE emulator does a special DHCP request for its attachment. The eNodeB emulator considers the DHCP request as the attachment trigger and extracts from it the parameters for the attachment. The eNodeB emulator executes a complete attachment towards the EPC with the standard signaling procedures emulating the UE-NAS behavior. After the attachment signaling completes the eNodeB emulator gives the UE emulator its IP address. From that point on the UE can send traffic using that IP address and the eNodeB emulator will route it in the right GTP tunnels towards the EPC. The eNodeB emulator supports dedicated bearers and can trigger some signaling procedures from its Console API (Command Line or Remotely).
The eNodeB-M emulator goes beyond the capabilities of the eNodeB emulator as it permits to emulate several eNodeBs towards the core network. The eNodeB-M emulator doesn’t provide a virtual ethernet interface for an UE emulator instead it can be scripted and remotely controlled to trigger signaling procedures. It supports all standard EPC procedures supported by OpenEPC (including Idle mode procedures and UE triggered dedicated bearers as well as S1 and X2 handovers). The eNodeB-M can be used as a testing tool because it provides capabilities to program scenarios and run them automatically against the core network elements. OpenEPC provides a catalogue of test cases already programmed in the eNodeB-M for testing a core network.
If you have any questions about the eNodeB and UE emulators part of OpenEPC please contact us.