Networking Modeling and Simulation: Bridging the Gap from Theory to Field Tests

The use of live field testing for new data links, protocols, waveforms, radios, and algorithms is the traditional best-practice. With that said, the cost, time, effort and complexity involved in large-scale field tests often makes these tests unaffordable to many levels of testers. A glaring example is the gap that exists between basic research algorithm development and the testing of those algorithms in operationally relevant environments, where the number of nodes extends into hundreds of individual systems and radios. Modeling, Simulation and Analysis (MS&A) bridges this gap, offering an attractive, costeffective, and readily scalable means to evaluate newly developed theories and technologies with a full complement of scenarios not easily achievable through empirical methods. MS&A is a viable tool that helps gain insight into large-scale system performance in ways that are affordable at all levels of test.

Inserting the proper MS&A steps into design processes of algorithms and technologies results in reduced cost, schedule, and risk for the systems and algorithms under development, the ability to test the operational characteristics of new systems and algorithms in complex environments, the capability of reconfiguring and customizing simulations for a wide variety of Air Force (AF)-relevant scenarios, largescale systems and network models. This approach provides the methods needed to fine-tune systems and algorithms, and validate test plans before going out to the field to test. It also provides a central visualization for systems and networks spread over a wide geographical area that is not possible in empirical testing.

The work presented here was completed using Riverbed Modeler (formerly OPNET Modeler). Riverbed Modeler is a commercial discrete event simulator with a rich feature set that is used for the modeling, simulating, and analysis of communications networks, protocols, devices, and applications. The graphical editor interface encompasses a three-part modeling mechanism: the process model, the node model and the network model. The process model is a finite state machine that uses C programming to represent the process flow. There is a hierarchical network model structure that covers the Application, TCP, IP, MAC, and PHY layers. Riverbed Modeler includes an extensive range of protocols and standards with up to 400 libraries and standards implemented and specific model descriptions for popular networking equipment including operational parameters. There is also a variety of application models such as Poisson distribution, Binomial distribution, etc. Riverbed Modeler is well-suited for protocol and algorithm development, since each level of the model is completely customizable, allowing users to tailor their models to their specific needs and requirements for various topologies and scenarios.

Networking M&S in Riverbed Modeler

Two efforts in Riverbed Modeler will be discussed in this article: (A) a cross-layer ROuting and Spectrum Allocation (ROSA) implementation and (B) directional networking using multi-beam directional antennas.


As spectrum becomes a scarce resource, cognitive radio networks, where secondary users can opportunistically access the spectrum without disrupting primary users’ existing transmissions, are a feasible solution. AFRL/RI (the Air Force Research Laboratory, Information Directorate), in collaboration with the University at Buffalo, developed a cross-layer ROuting and dynamic Spectrum Allocation (ROSA) algorithm that maximizes the network throughput by performing joint routing, dynamic spectrum allocation, scheduling in a distributed way, and transmit power control. It utilizes distributed routing decisions based on the differential backlog and channel capacity to choose the optimal frequency, next hop, and the session to be transmitted to maximize the spectrum utility function.

Each node is assumed to be equipped with two transceivers. One channel is reserved for the time-slotted Common Control Channel (CCC), employed by all secondary users for negotiations for spectrum access. The second channel is used for Data Communication (DC). Handshakes on the two channels are performed independently, allowing parallelism. When the CCC is sensed to be idle, every backlogged node that is not already transmitting performs the ROSA algorithm as follows:

  • Calculate the spectrum, corresponding transmit power, and capacity for each link for the set of next hops, which includes neighbors that are closer to the destination for the backlogged session. The spectrum and power allocation algorithm maximizes the capacity link which translates into selecting the spectrum and the corresponding transmit power on each frequency to maximize the Shannon capacity subject to the spectrum conditions (including the presence of a spectral hole) and the hardware limitations of the radio.
  • Schedule the session with the maximum differential backlog on that link with the next hop that maximizes the spectrum utility for that link. Calculate this maximum spectrum utility. This ensures that nodes with smaller backlogged queues with more spectrum receive more traffic.
  • Calculate the probability of accessing the medium based on this maximum spectrum utility on the next hop link. Links with a higher differential backlog may have a higher spectrum utility. This leads to having a higher probability of being scheduled for transmission. This probability is implemented by varying the size of the contention window at the media access control (MAC) layer. The transmitter generates a back-off counter that is uniformly chosen from a range that depends on the contention window of that transmitter. Nodes with smaller back-off counters will have higher priorities in allocating resources, so heavily back-logged links with more spectrum are given a higher probability of transmitting.


The steps listed above are fundamental steps of the ROSA algorithm, provide a general idea on what the implementation of the algorithm entails, and were taken from [1] where the full theoretical explanation can be found.

The MAC layer for ROSA is similar to the IEEE 802.11 two-way request-to-send (RTS) and clear-to-send (CTS) handshake with an additional control packet, the data transmission reservation (DTS), that is used by the transmitter to announce its spectrum reservation and its transmit power to its neighbors. To allow nodes to learn about the spectral nature and the queue length information of their neighbors, the RTS/CTS/DTS packets are modified to include the address fields of the sender and receiver, spectrum reservation, reservation duration field, queue length information, and power constraints.

The performance of ROSA was compared with two alternatives which rely on the same knowledge of the environment. Routing with Fixed Allocation (RFA) uses routing based solely on the differential backlog with a predefined channel and transmit power. Routing with Dynamic Allocation (RDA) uses routing based on the shortest path (with no consideration of the differential backlog,) with dynamic channel selection and transmit power allocation [2].

The Riverbed Modeler ROSA model was designed with several goals in mind. First, the model needed to be flexible with regard to the underlying RF parameters. It should be able to support the representation of a generic radio, the USRP radios used by AFRL/RI, and future radios based on existing military data links. Each of these could have different frequencies, bandwidths, powers, modulation, data rates, etc., and the model must not be hard-coded to work with fixed values for any of these parameters. Another design goal was to implement the core ROSA algorithm such that it could be used outside of Riverbed Modeler. This allows the algorithm to be developed and tested even without a Riverbed Modeler license available, testing to be performed outside the constraints of a Riverbed Modeler simulation, and for the algorithm code to potentially be used in other models or even an actual radio.

The remainder of this paper presents the implementation of ROSA in Riverbed Modeler.

The application layer is modeled as simple traffic generators with fixed rates, fixed-sized packets, and either a fixed, single destination or randomized source-destination pairs. A standard Riverbed Modeler sink is used to record receive statistics and destroy the packet. Packet streams connect the application to the DC and the DC to the sink. Node addresses can be set manually or be automatically assigned. The sink provides statistics on end-to-end delay (seconds) and the traffic received in bits, bits/sec, packets, and packets/sec.

The MAC layers are where the ROSA algorithm resides. The node model of ROSA and the process models of the CCC MAC, DC MAC, application and sink are shown in Figure 1. The CCC is responsible for spectrum reservation negotiations between nodes, storing neighbor information used by the algorithm, calling external C++ code to execute the ROSA algorithm to determine its next hop and RF transmission parameters and beginning the RTS/CTS/DTS handshaking to acquire the data channel reservation. Once acquired, it passes the RF parameters and session to transmit to the DC layer to start the data packet transmissions. The CCC provides reservation information for both the transmit and receive to the DC using a Remote Interrupt with Event State. The DC queues packets from the application, transmits when directed by the CCC, decapsulates the received physical layer packets, forwards to the sink (if for this node), queues routed packets, and provides session backlog information to the CCC.

Statistic wires from the transmitter and receiver to the CCC MAC indicate when the CCC transmitter stops transmitting, when the receiver becomes busy, and when the receiver is no longer busy. A statistic wire from the DC MAC indicates when a packet is added to an empty queue (first active session) or when the queue becomes empty (no active sessions).

The RTS/CTS/DTS packet formats and the data/ACK packets were based on Riverbed Modeler 802.11 formats and customized to include all information required by the ROSA algorithm. The packet formats for the data and control packets are shown in Figures 2 and 3.

To support a generic ROSA radio, many of the CCC and DC transmitter and receiver parameters are set based on global attribute settings. The settings include maximum transmitter power, base frequency, bandwidth of each mini-band, the maximum number of mini-bands, and data rate. During a simulation, as the ROSA algorithm executes and different DC power and frequencies are selected, the DC transmitter and receiver parameters are modified. Additionally, a packet field for the data rate is added to the packet to support variable data rates. This field is used in the radio transceiver pipeline stages. The ROSA model pipeline stages are largely based on Riverbed’s WLAN (802.11) implementation, though some are based on the Riverbed’s default stages. Using the WLAN stages provided to the ROSA model support for handling jamming and using the data rate packet field.

The global attributes also include a mode field that changes the routing and spectrum allocation algorithm to use. Possible values are ROSA, RFA and RDA. The latter two were implemented in Riverbed Modeler as well, for comparison with ROSA.


In the future, AFRl/RI will examine how well ROSA would perform in contested environments where undesired emitters may block certain frequencies from usage. The Riverbed Modeler ROSA model and the Stockbridge Controllable Contested Environment (CCE) test site (that incorporates terrain effects) will be used together to guide the design of the AFRL field test experimentation plan. This test plan will be executed as the existing hardware lab set-up, with the ten USRP N210s + SBX/CBX daughterboards shown in Figure 4, is moved to the Stockbridge CCE test site. The existing hardware testbed implements the ROSA algorithm using RTS/CTS/DTS control packets, a wired CCC Collaborative Virtual Sensing (CVS) where nodes obtain spectrum information based on a combination of physical sensing and local exchange of information, neighbor discovery via beacon packets, and the RDA/RFA alternatives for comparison. Analysis in Riverbed Modeler will consist of examining how ROSA performs as the number of nodes increases, with different propagation effects, with various jamming scenarios, and with node mobility. Newly developed neighbor discovery methods in GPS-denied environments and methods to make the CCC more robust in contested environments will also be tested and analyzed in Riverbed Modeler. The use of the ROSA model provides a means to affordably complete a thorough analysis of the strengths of ROSA, as well as determining any breaking points, in a wide variety of geometries, environments, topologies, and traffic loads.


Want to find out more about this topic?

Request a FREE Technical Inquiry!