PacketRusher Blueprint
The PacketRusher blueprint allows for the deployment and management of PacketRusher, a high-performance UEFI and gNB simulator for 5G core networks.
Creation
To instantiate a PacketRusher blueprint, send a POST request with the following JSON structure:
Request Body (Creation)
{
"config": {
"network_endpoints": {
"mgt": "CTE-control",
"n2": "CTE-control",
"n3": "CTE-control"
}
},
"areas": [
{
"id": 3,
"sims": [
{
"imsi": "001011000000001",
"plmn": "00101",
"key": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
"op": "112233445566778899AABBCCDDEEFF00",
"opType": "OPC",
"configured_nssai": [
{
"sst": 1,
"sd": "000001"
}
],
"default_nssai": [
{
"sst": 1,
"sd": "000001"
}
],
"sessions": [
{
"type": "IPv4",
"dnn": "internet",
"slice": {
"sst": 1,
"sd": "000001"
}
}
]
}
]
}
]
}
Parameters
config.network_endpoints:mgt: (String) Management network name.n2: (String) N2 control plane network name.n3: (String) N3 data plane network name.
areas: List of area objects.id: (Integer) Area identifier (used as TAC).sims: List of SIM configurations.imsi: (String) IMSI of the UE.plmn: (String) PLMN ID.key: (String) Secret key (K).op: (String) Operator code (OP or OPC).opType: (String) Type of operator code, e.g., “OPC”.amf: (Integer, optional) AMF identifier.configured_nssai: (List of Slices) Configured NSSAI.sst: (Integer) Slice/Service Type.sd: (String) Slice Differentiator.
default_nssai: (List of Slices) Default NSSAI.sessions: (List of Sessions) PDU Sessions to establish.type: (String) PDU Session type (e.g., “IPv4”).dnn: (String) Data Network Name (e.g., “internet”).slice: (Slice) Slice for this session.
Day-2 Operations
These operations can be performed on an existing blueprint instance.
Add Area (/add_area)
Adds a new area (VM) to the blueprint.
POST /add_area
{
"area_id": "4"
}
Delete Area (/del_area)
Removes an area from the blueprint.
DELETE /del_area
{
"area_id": "4"
}
Configure gNB (/configure_gnb)
Configures the gNB for a specific area. This step is required to start the simulation services on the VM.
POST /configure_gnb
{
"area": 3,
"plmn": "00101",
"tac": 3,
"gnb_id": 1,
"amf_ip": "10.0.0.10",
"upf_ip": "10.0.0.20",
"amf_port": 38412,
"nssai": [
{
"sst": 1,
"sd": "000001"
}
],
"additional_routes": [
{
"network_cidr": "10.10.10.0/24",
"next_hop": "10.0.0.1"
}
]
}
Detach gNB (/detach_gnb)
Stops the simulation services in a specific area.
POST /detach_gnb
{
"area": 3
}
Add SIM (/add_sim)
Adds a new SIM to an area.
POST /add_sim
{
"area_id": "3",
"sim": {
"imsi": "001011000000002",
"plmn": "00101",
"key": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
"op": "112233445566778899AABBCCDDEEFF00",
"opType": "OPC",
"amf": 0,
"configured_nssai": [{"sst": 1, "sd": "000001"}],
"default_nssai": [{"sst": 1, "sd": "000001"}],
"sessions": [
{
"type": "IPv4",
"dnn": "internet",
"slice": {"sst": 1, "sd": "000001"}
}
]
}
}
Delete SIM (/del_sim)
Removes a SIM from an area.
DELETE /del_sim
{
"area_id": "3",
"imsi": "001011000000002"
}