SmartControl provides an simple message request/response application programming interface (API) to dsTest, allowing the interaction of an external source (ES) with dsTest via an XML based API. The ES can control internally configured dsTest nodes and events associated with the applications configured on those nodes. Using the API, the ES sends and receives messages that can control events within dsTest and cause interaction with external nodes that are attached to the dsTest nodes.
Using SmartControl, the ES sends messages to dsTest in the form of node actions. These messages are constructed similar to internal dsTest actions, and instruct dsTest nodes to exchange signaling data with a device under test (DUT). dsTest node simulators and emulators, such as a Policy and Charging Enforcement Function (PCEF) or Online Charging Sever (OCS), can interact with other dsTest nodes or external devices under test (DUT) as part of the SmartControl initiated events.
SmartControl interacts with dsTest nodes by creating external nodes that attach themselves to an internally configured dsTest node. Using this attachment, dsTest will honor the SmartControl requests by generating the specified event from the attached dsTest node. Depending upon SmartControl request and the configuration of the dsTest node, this event could cause signaling message to be generated to other dsTest nodes or to externally connected devices under test.
Examples of how SmartControl can be used with dsTest include:
- Sending messages to (and receiving messages from) a dsTest SPR node that can instruct the SPR to take an action, such as starting or continuing a SmartEvents state machine;
- Trigger application events on a dsTest node that is configured with an interface application and is connected to other internal dsTest nodes or external nodes;
- Coordinate actions between two or more instances of dsTest.
SmartControl High Level Architecture
The External Source establishes a connection with dsTest by opening a TCP connection and sending a Registration message to the dsTest server. dsTest will expect a Registration message from the External Source within five seconds of establishing a TCP connection and will respond with to a valid Registration message with a message of the same type with dsTest specific information. The connection will be closed by dsTest after the registration interval if no Registration message is received.
Upon successful registration, dsTest will create a node named “ExternalNodeX”, where X is one higher that the current number of external nodes connected.
Messages are constructed in a Type-Length-Value (TLV) format. Message types are:
- Registration – Registers the External Source with dsTest and creates a dsTest internal node attached to an existing configured dsTest node;
- Error Indication – Returns a error indication in response to a Registration or Event Trigger message
- Event Trigger – Specifies the dsTest node, application, and event to be triggered on the dsTest node attached to the external node.
For more information about SmartControl, download this PDF.
SmartControl Example for Controlling GTP-U Testing
In this example, the tester wants to test the GTP-U data performance of the Device Under Test (DUT).
The ES is a data generator that can be used to generate GTP-U data traffic to the DUT. SmartControl is used such that a dsTest external node attached to a dsTest gtp node simulator can generate the required GTP-C signaling (e.g. S5/S8) to establish the sessions and bearers between the ES and DUT. Once the signaling is successfully completed, the data stream can be initiated.
In an extended test of the DUT, dsTest server emulators such as PCRF and/or OCS nodes can be used to coordinate policy and charging traffic (Gx, Ro, Rf) to the DUT in conjunction with the GTP signaling and data traffic.
For more information regarding how SmartControl can aid your EPC Testing, please contact Developing Solutions.
General Reference Guides
- Diameter Dictionary
- Diameter Result Codes
- RADIUS Dictionary
- S1 Dictionary
- GTPv1 Dictionary
- GTPv2 Dictionary
- GTP Cause Values
- Specification Map