05.01.2013 Views

Emulation Experimentation Using the Extendable Mobile Ad-hoc ...

Emulation Experimentation Using the Extendable Mobile Ad-hoc ...

Emulation Experimentation Using the Extendable Mobile Ad-hoc ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Abstract<br />

The current deployment and continuing evolution<br />

of wireless technology within commercial and military<br />

applications places an increased importance<br />

on providing researchers and evaluators with a scalable,<br />

practical, and realistic experimentation framework.<br />

The experimentation framework must provide<br />

researchers with <strong>the</strong> ability to examine any<br />

and all aspects of complex wireless networks and<br />

<strong>the</strong>ir corresponding interactions at all points within<br />

<strong>the</strong> network stack with a certain level of confidence.<br />

<strong>Emulation</strong> is a viable option providing researchers<br />

with <strong>the</strong> ability to bridge <strong>the</strong> gap between simulation<br />

and field testing in a practical and realistic<br />

manner.<br />

In this paper we describe <strong>the</strong> <strong>Extendable</strong> <strong>Mobile</strong><br />

<strong>Ad</strong>-<strong>hoc</strong> Network Emulator (EMANE) with its open,<br />

flexible, and modular architecture. EMANE’s flexible<br />

design provides <strong>the</strong> ability to operate in various<br />

hardware configurations (centralized, decentralized,<br />

and virtualized). EMANE’s modularity provides<br />

<strong>the</strong> ability to utilize plugins with <strong>the</strong> appropriate<br />

fidelity and realism to support diverse experiment<br />

objectives. The open EMANE architecture leverages<br />

<strong>the</strong> user community to develop and contribute<br />

models, tools, and applications.<br />

1 Introduction<br />

As wireless technology becomes more prevalent<br />

in every day commercial and military applications,<br />

<strong>the</strong>re is a growing demand within research and test<br />

communities to evaluate existing and evolving technologies<br />

in a scalable, practical, and realistic environment.<br />

Within recent years, network emulation<br />

has gained favor within <strong>the</strong>se communities to complement<br />

traditional approaches such as simulation<br />

and field testing. However, significant challenges<br />

must be overcome to fully realize <strong>the</strong> benefits of<br />

wireless network emulation.<br />

This paper describes <strong>the</strong> open source 1 Extend-<br />

<strong>Emulation</strong> <strong>Experimentation</strong><br />

<strong>Using</strong> <strong>the</strong> <strong>Extendable</strong> <strong>Mobile</strong> <strong>Ad</strong>-<strong>hoc</strong> Emulator<br />

1 EMANE is release under <strong>the</strong> BSD license. EMANE plu-<br />

Kaushik B. Patel and Steven M. Galgano<br />

CenGen, Inc.<br />

Columbia, MD 21045<br />

{kbpatel, sgalgano}@cengen.com<br />

1<br />

able <strong>Mobile</strong> <strong>Ad</strong>-<strong>hoc</strong> Network Emulator (EMANE)<br />

developed by CenGen, Inc., sponsored by <strong>the</strong> OSD<br />

Network Communication Capabilities (NCC) Tactical<br />

Edge <strong>Experimentation</strong> Testbed Initiative, to<br />

address many of <strong>the</strong> challenges with wireless network<br />

emulation.<br />

EMANE supports <strong>the</strong> emulation of both simple<br />

and complex wireless network architectures consisting<br />

of heterogeneous networking technologies and<br />

<strong>the</strong>ir interactions. For example, <strong>the</strong> Army Future<br />

Combat System’s (FCS) vision of a highly mobile<br />

digital battlefield consists of heterogeneous platforms<br />

(sensors, dismounts, vehicles, UAVs, etc.) all<br />

interconnected with varying MANET wireless technologies.<br />

EMANE provides <strong>the</strong> ability to replicate<br />

such networks in a realistic manner to provide <strong>the</strong><br />

necessary insight into overall system performance.<br />

EMANE provides a flexible and modular architecture<br />

to support realistic emulation of current and<br />

future networking technologies. By implementing<br />

an open and modular emulation architecture, <strong>the</strong><br />

cost associated with <strong>the</strong> integration of new features<br />

and technologies can be significantly reduced. In<br />

addition, <strong>the</strong> open and modular approach promotes<br />

independent development of tools, models and applications<br />

by respective experts which can be leveraged<br />

by <strong>the</strong> emulation community at large.<br />

EMANE uses a generic mechanism for distribution<br />

of events, control, and logging information to<br />

and from emulation components. This generic distribution<br />

mechanism allows EMANE developers to<br />

focus on component functionality, eliminates <strong>the</strong><br />

need for pre-computed scenarios, and allows emulation<br />

components to report errors and alerts in<br />

real-time minimizing experimentation cycles.<br />

EMANE supports configuration of large scale experiments<br />

comprised of physical and virtual nodes<br />

with <strong>the</strong> same ease as small scale experiments containing<br />

a hand full of nodes.<br />

gin components are <strong>the</strong> property of <strong>the</strong>ir author and may be<br />

distributed under any license.


EMANE was developed using cross platform tool<br />

kits to support Linux, OS X and MS Windows experiment<br />

testbed environments 2 .<br />

The remainder of this paper is organized as follows:<br />

Section 2 describes <strong>the</strong> modular EMANE software<br />

architecture and component types. Section 3<br />

describes <strong>the</strong> rationale for realistic wireless models<br />

and identifies existing wireless models, as well<br />

as models under development within EMANE. Section<br />

4 lists some of <strong>the</strong> current programs utilizing<br />

EMANE. Section 5 provides a near term road map<br />

for EMANE and planned future work.<br />

2 Architecture<br />

EMANE implements a highly flexible modular architecture<br />

capable of accommodating a wide range<br />

of experiment testbeds. The flexibility of EMANE<br />

centers around its ability to centralize or distribute<br />

some or all of an experiment’s emulation processing<br />

across any number of testbed nodes. XML inputs<br />

to <strong>the</strong> emulator control <strong>the</strong> types of processing<br />

deployments and <strong>the</strong>ir respective locations, as<br />

well as <strong>the</strong> types of emulation modules to instantiate.<br />

The modularity of EMANE comes from a<br />

set of well defined component APIs that allow independent<br />

development of emulation module plugins,<br />

while retaining <strong>the</strong> ability to deploy and control<br />

<strong>the</strong>se components in a consistent generic manner.<br />

There are three main types of EMANE components:<br />

Network <strong>Emulation</strong> Modules, <strong>Emulation</strong><br />

Boundaries and <strong>Emulation</strong> Event Components.<br />

All EMANE components are implemented as<br />

Dynamic-Link Libraries and referred to as plugins.<br />

All plugins, regardless of type, implement a set of<br />

common interfaces to allow generic creation, configuration,<br />

and control. In addition, plugins implement<br />

a set of specialized interfaces which vary<br />

based on <strong>the</strong>ir respective type. EMANE uses a layered<br />

XML approach to instantiate any number of<br />

plugins and configure each plugin with any number<br />

of input parameters. The XML configuration<br />

is designed to minimize <strong>the</strong> amount of redundant<br />

information necessary to create an EMANE deployment.<br />

This is done by building a hierarchical series<br />

of emulation element groups. Each level in <strong>the</strong> hierarchy<br />

encapsulates <strong>the</strong> previous level(s) while still<br />

allowing tailoring of parameters from <strong>the</strong> level(s)<br />

below.<br />

2 EMANE is developed using The ADAPTIVE Communication<br />

Environment (ACE TM )[1] and The XML C parser<br />

and toolkit of Gnome (libxml2)[2].<br />

2<br />

2.1 Network <strong>Emulation</strong> Modules<br />

A Network <strong>Emulation</strong> Module (NEM) is a logical<br />

component that encapsulates all <strong>the</strong> functionality<br />

necessary to emulate a particular type of network<br />

technology. Each NEM is composed of two types<br />

of plugins: a Medium Access Control (MAC) Layer<br />

plugin and a Physical (PHY) Layer plugin. Instantiated<br />

NEM component layers are configured and<br />

<strong>the</strong>n connected to <strong>the</strong> layer immediately above and<br />

below. NEM layers communicate with each o<strong>the</strong>r<br />

using a generic message passing interface. Each<br />

layer is capable of communicating cross-layer control<br />

messages and Over-The-Air (OTA) messages<br />

with <strong>the</strong>ir neighboring layers (See Figure 1). Examples<br />

of cross-layer messages include: per packet<br />

RSSI, carrier sense, and transmission control messages.<br />

Each layer has <strong>the</strong> capability to generate<br />

OTA messages for communication with respective<br />

layer counterparts contained in different NEMs.<br />

Layers may also append and strip layer specific<br />

headers to OTA messages.<br />

Figure 1: NEM Stack with Boundary and OTA connections<br />

(Left). NEM Stack showing physical and<br />

logical communication paths (Right).<br />

NEMs are created and managed by a NEM Platform<br />

Server. NEMs managed by <strong>the</strong> same NEM<br />

Platform Server are referred to as being part of <strong>the</strong><br />

same platform (See Figure 2). The determination<br />

as to how many NEM platforms are required to support<br />

a given emulation experiment is a function of<br />

<strong>the</strong> number of NEMs, <strong>the</strong> complexity of <strong>the</strong> emulation<br />

modules, and <strong>the</strong> processing and memory<br />

resources available. Inter-NEM communication is<br />

manged by <strong>the</strong> NEM Platform Server. NEMs belonging<br />

to <strong>the</strong> same platform use in memory message<br />

passing. NEMs belonging to different platforms<br />

communicate using a multicast channel.<br />

The EMANE infrastructure delivers all OTA mes-


Figure 2: NEM Platform Server hosting 4 NEMs.<br />

sages to every NEM participating in <strong>the</strong> emulation.<br />

This provides <strong>the</strong> opportunity to model more<br />

complex PHY phenomena such as RF interference.<br />

PHY layer modules use a common header to allow<br />

cooperation between heterogeneous modules in<br />

<strong>the</strong> same experiment. The common header includes<br />

<strong>the</strong> following information: PHY type, NEM source,<br />

NEM destination, time, message duration, center<br />

frequency, bandwidth, data rate, antenna gain, antenna<br />

beam width, antenna elevation, antenna azimuth<br />

and transmission power. This information is<br />

used to support high fidelity RF models which may<br />

compute noise floors, detect frequency interference,<br />

and support directional antennas.<br />

2.2 <strong>Emulation</strong> Boundaries<br />

<strong>Emulation</strong> boundary components are responsible<br />

for transferring data between <strong>the</strong> emulation and application<br />

domain 3 . The top of every NEM layer<br />

stack is connected to one side of its associated emulation<br />

boundary instance (See Figure 1). The<br />

o<strong>the</strong>r side of <strong>the</strong> emulation boundary instance interfaces<br />

with <strong>the</strong> application domain. Data received<br />

from <strong>the</strong> application domain is transmitted<br />

opaquely to <strong>the</strong> boundary’s respective NEM for<br />

OTA message processing. The emulation boundary<br />

is <strong>the</strong> only EMANE component aware of <strong>the</strong> exact<br />

format of <strong>the</strong> application domain data. Along<br />

with <strong>the</strong> opaque data, <strong>the</strong> boundary component<br />

supplies <strong>the</strong> destination address, ei<strong>the</strong>r a unicast or<br />

broadcast NEM identifier, to <strong>the</strong> NEM stack. This<br />

decoupling of application domain data knowledge<br />

from <strong>the</strong> emulation functionality allows NEMs to<br />

be used in conjunction with various types of net-<br />

3 The application domain refers to entities running during<br />

<strong>the</strong> experiment which are not part of EMANE. The application<br />

domain includes, but is not limited to, user space<br />

processes, kernel space processes, network appliances or any<br />

o<strong>the</strong>r device, system, or component that is not operating on<br />

behalf of or as part of EMANE.<br />

3<br />

works, for example, IP and non-IP based networks.<br />

EMANE boundary components may or may not<br />

be designed to inter-operate with o<strong>the</strong>r dissimilar<br />

boundary components in <strong>the</strong> same experiment.<br />

Two emulation boundary implementations are<br />

supplied with <strong>the</strong> core EMANE distribution: Virtual<br />

Transport and Raw Transport. Both of<br />

<strong>the</strong>se emulation boundaries were designed to interoperate<br />

and interface with <strong>the</strong> application domain<br />

using E<strong>the</strong>rnet Frames. The Virtual Transport uses<br />

a virtual network interface as <strong>the</strong> emulation stack<br />

entry and exit point. All traffic routed to <strong>the</strong> virtual<br />

interface is transmitted to <strong>the</strong> boundary’s respective<br />

NEM stack for processing. All messages<br />

received from <strong>the</strong> boundary’s respective NEM stack<br />

are written back to <strong>the</strong> virtual interface for delivery<br />

to <strong>the</strong> application domain via <strong>the</strong> operating system<br />

kernel. The Raw Transport promiscuously opens<br />

a dedicated network interface and transmits all inbound<br />

traffic to <strong>the</strong> boundary’s respective NEM<br />

stack and conversely writes received traffic from its<br />

NEM stack out <strong>the</strong> network interface.<br />

<strong>Emulation</strong> boundary components are created and<br />

managed by a Transport Daemon. Boundaries managed<br />

by <strong>the</strong> same Transport Daemon are referred to<br />

as being part of that Transport Daemon. The Virtual<br />

Transport and Raw Transport support two different<br />

types of emulation experiment configurations.<br />

The Virtual transport is ideal when you are able to<br />

run some or all of <strong>the</strong> EMANE components on <strong>the</strong><br />

experiment test node. This lightweight transport<br />

simply packs and unpacks E<strong>the</strong>rnet frames moving<br />

<strong>the</strong>m between <strong>the</strong> NEM stack and <strong>the</strong> application<br />

domain. The Raw transport is ideal when you are<br />

unable to run any EMANE components on <strong>the</strong> experiment<br />

test node. For instance, if you are using<br />

EMANE as a black box emulator and connecting<br />

network appliances to <strong>the</strong> emulator using multiple<br />

physical interfaces. Multichannel gateway emulation<br />

is supported by configuring <strong>the</strong> Transport Daemon<br />

to instantiate one boundary for each gateway<br />

channel and <strong>the</strong>n configuring an application domain<br />

routing protocol to gateway <strong>the</strong> corresponding interfaces.<br />

2.3 <strong>Emulation</strong> Event Components<br />

An emulation event is an opaquely distributed<br />

message which is delivered in real-time to one<br />

or more targeted EMANE components. Every<br />

EMANE component is capable of transmitting and<br />

receiving events. Components which create events<br />

based on experiment scenarios are called Event Generators.<br />

Event Generators are instantiated and<br />

managed by <strong>the</strong> EMANE Event Service, which pro-


vides <strong>the</strong> interface used to publish events.<br />

No restriction is placed on how generators create<br />

events. Some generators may read precomputed<br />

state information from input files and publish<br />

events on time boundaries. O<strong>the</strong>rs may create<br />

event data algorithmically in real-time and publish<br />

<strong>the</strong> events based on update threshold logic. When<br />

new EMANE event types are introduced, no modifications<br />

are necessary to existing EMANE components,<br />

provided those components are not required<br />

to process <strong>the</strong> new events. Only <strong>the</strong> Event Generator<br />

and <strong>the</strong> destination EMANE components need<br />

to know <strong>the</strong> more specialized form of <strong>the</strong> generically<br />

transmitted event. Events are addressable using a<br />

three field tuple: NEM Platform Server identifier,<br />

NEM identifier, and component identifier.<br />

An Event Agent is an EMANE component that<br />

translates events from <strong>the</strong>ir emulation domain representation<br />

to a format usable by application domain<br />

entities. They facilitate <strong>the</strong> reuse of any experiment<br />

scenario information propagated via an<br />

event that is of interest outside of <strong>the</strong> emulation domain.<br />

For example, position information contained<br />

in <strong>the</strong> EMANE Location Event which is used by<br />

some PHY layers to compute path loss may also be<br />

of interest to application domain entities that require<br />

GPS location.<br />

2.4 NEM <strong>Ad</strong>vanced Topics<br />

A Shim Layer plugin provides a mechanism to interact<br />

with <strong>the</strong> OTA messages and cross-layer messages<br />

exchanged between contiguous layers. Shims<br />

may generate <strong>the</strong>ir own OTA messages for communication<br />

with <strong>the</strong>ir respective Shim layer contained<br />

in a different NEM, and can append and strip layer<br />

specific headers to OTA messages.<br />

It is possible to insert one or more Shims between<br />

<strong>the</strong> layers of a NEM stack or at <strong>the</strong> top and bottom<br />

of <strong>the</strong> layer stack. A Shim plugin implements <strong>the</strong><br />

same generic interface as a MAC and PHY plugin.<br />

This generic interface allows Shims to be inserted<br />

between components without requiring those components<br />

to have knowledge of <strong>the</strong>ir presence. Figure<br />

3 shows what a NEM layer stack looks like after<br />

inserting Shim layers and <strong>the</strong> resulting physical and<br />

logical connections.<br />

A NEM containing a MAC and PHY layer is formally<br />

known as a structured NEM. A NEM may<br />

also be unstructured. An unstructured NEM relaxes<br />

NEM layer stack constraints to allow for <strong>the</strong><br />

creation of NEMs that may or may not contain<br />

MAC, PHY or Shim layers. Unstructured NEMs<br />

are useful when porting legacy emulation models<br />

that do not support a separation of MAC and PHY<br />

4<br />

Figure 3: NEM Layer stack as it appears without<br />

Shims and with three Shims inserted. Two Shims<br />

reside between <strong>the</strong> MAC and PHY layers and one<br />

Shim resides between <strong>the</strong> PHY Layer and <strong>the</strong> OTA<br />

message interface.<br />

layer functionally.<br />

3 Network <strong>Emulation</strong> Modules<br />

Within <strong>the</strong> EMANE architecture, NEMs address<br />

<strong>the</strong> “hard problem” in wireless network emulation<br />

associated with representing <strong>the</strong> behavior of <strong>the</strong> underlying<br />

wireless technology at both <strong>the</strong> Media Access<br />

and Physical Layers. Physical and MAC layer<br />

phenomena such as frequency interference, multipath/fading,<br />

collisions, channel access protocols,<br />

adaptive power and data rate controls, quality of<br />

service, and o<strong>the</strong>rs vary significantly based on <strong>the</strong><br />

underlying wireless commercial or tactical technology.<br />

Depending on <strong>the</strong> research/test objective, failure<br />

to account for <strong>the</strong>se or any corresponding cross<br />

layer interactions can provide misleading and outright<br />

false results. Conversely, <strong>the</strong> ability to account<br />

for some of <strong>the</strong>se complex phenomena within<br />

a real-time emulation environment can impose requirements<br />

(hardware, timing, scale, etc.) which<br />

may not be critical to <strong>the</strong> research/test objective.<br />

As such, <strong>the</strong> modular EMANE architecture is designed<br />

specifically to support independent development<br />

of NEMs to emulate current and evolving wireless<br />

technology of varying fidelity under a single emulation<br />

framework. These independently developed<br />

modules can be contributed to <strong>the</strong> EMANE project<br />

as add-ons for use by <strong>the</strong> community at large or<br />

can be maintained as proprietary/sensitive modules


with restricted access by <strong>the</strong> developing organization.<br />

3.1 PHY and MAC Phenomena<br />

Although <strong>the</strong> details on <strong>the</strong> methodology and<br />

techniques for NEM development to account for<br />

PHY and MAC phenomena is beyond <strong>the</strong> scope<br />

of this paper, we will highlight two specific areas,<br />

frequency interference and channel access scheme,<br />

where <strong>the</strong> development of novel techniques and advanced<br />

algorithms within <strong>the</strong> EMANE framework<br />

can significantly improve <strong>the</strong> utility and effectiveness<br />

of wireless network emulation.<br />

3.1.1 Frequency Interference<br />

The impact of RF interference from ei<strong>the</strong>r intentional<br />

or unintentional (fratricide) sources can be<br />

significant compared to effects on propagation from<br />

phenomena such as ducting, wea<strong>the</strong>r, foliage, and<br />

o<strong>the</strong>rs. As networks/systems become more complex<br />

and RF resource remain scarce, RF interference is<br />

a common occurrence ra<strong>the</strong>r than an anomaly and<br />

as such needs to be accounted for within <strong>the</strong> emulation<br />

environment to properly assess <strong>the</strong> effectiveness<br />

of current and evolving communication technologies.<br />

Many simulators and emulators today utilize<br />

<strong>the</strong> notion of Signal to Interference and Noise Ratio<br />

(SINR) as defined in Equation 1 along with Bit Error<br />

Rate (BER) or Packet Error Rate (PER) curves<br />

as <strong>the</strong> basis for <strong>the</strong> receive packet treatment logic.<br />

The SINR equation although accurate in definition,<br />

loses significance as <strong>the</strong> interference term,<br />

n�<br />

i=0<br />

Rxpoweri<br />

is approximated by accounting only for “in-band” 4<br />

traffic and ignores traffic from all “out-of-band”<br />

sources. Simplifying assumptions like network homogeneity<br />

and static spectral environment limit <strong>the</strong><br />

ability to effectively research and evaluate advanced<br />

wireless research topics within an emulation framework<br />

such as: heterogeneous networks, directional<br />

antennas, frequency hopping, interference mitigation<br />

techniques against wide and narrow band jammers,<br />

and dynamic spectral allocation algorithms.<br />

EMANE, with its implementation of <strong>the</strong> common<br />

PHY header along with <strong>the</strong> OTA distribution mechanism,<br />

provides <strong>the</strong> framework for developing NEMs<br />

in support of <strong>the</strong> more advanced research topics<br />

4 In-Band traffic is all traffic that is associated with a single/homogeneous<br />

wireless technology.<br />

5<br />

identified above.<br />

⎡<br />

⎢<br />

SINR = 10 log ⎢<br />

⎣<br />

Noise + n�<br />

Rxpower<br />

n�<br />

Rxpower<br />

Rxpoweri<br />

i=0<br />

⎤<br />

⎥<br />

⎦<br />

Receive power of <strong>the</strong> packet/frame to<br />

be evaluated accounting for transmit<br />

power, antenna gains and propagation<br />

effects<br />

Rxpoweri Receive power of all o<strong>the</strong>r pack-<br />

i=0<br />

ets/frames received during <strong>the</strong> packet<br />

interval (i.e. collisions)<br />

Noise Thermal and platform noise of <strong>the</strong> receiver<br />

taking into account bandwidth,<br />

noise figure, etc.<br />

3.1.2 Channel Access Scheme<br />

(1)<br />

Packet mode channel access schemes, also commonly<br />

referred to as Media Access Protocol (MAC),<br />

for wireless communications have been and continue<br />

to be heavily researched due to <strong>the</strong>ir significant impact<br />

on network performance associated with scale,<br />

throughput, and latency. The MAC protocol defines<br />

<strong>the</strong> mechanisms used to control access to a<br />

wireless medium shared by multiple nodes and can<br />

also include o<strong>the</strong>r controls (acknowledgments, retries,<br />

fragmentation, etc.) in support of quality<br />

of service (QoS) requirements. The MAC protocol,<br />

based on <strong>the</strong> given wireless technology can vary<br />

from very simple, such as static Time Division Multiple<br />

Access (TDMA) where nodes are statically assigned<br />

one or more time slots for transmissions, to<br />

very complex, such as a hybrid protocol that dynamically<br />

leverages <strong>the</strong> benefits of contention based<br />

access via Carrier Sense Multiple Access/Collision<br />

Avoidance (CSMA/CA) in conjunction with contention<br />

free dynamic TDMA reservations on top<br />

of advanced channelization techniques using Frequency<br />

Division Multiple Access (FDMA) or Code<br />

Division Multiple Access (CDMA).<br />

The ability to accurately model <strong>the</strong> various channel<br />

access schemes within <strong>the</strong> framework of a realtime<br />

emulation environment faces significant challenges.<br />

One of <strong>the</strong> major challenges associated with<br />

accurate real-time emulation of MAC protocols is<br />

timing. To highlight this, we examine CSMA/CA, a<br />

contention based access protocol which is utilized in<br />

both commercial and tactical products and as such<br />

provides a good basis for discussion. CSMA/CA<br />

utilizes two basic principles: carrier sensing and collision<br />

avoidance. Here we look a little deeper into<br />

<strong>the</strong> timing associated with collision avoidance for<br />

802.11. In 802.11, collisions are minimized by requiring<br />

all nodes with a packet for transmit to se-


lect a random slot within a given contention window<br />

once <strong>the</strong> channel becomes idle. The size of a<br />

slot is on <strong>the</strong> order of tens of microseconds, sufficiently<br />

long enough in real systems to ensure multiple<br />

nodes selecting different slots will not step on<br />

one ano<strong>the</strong>r. Within an emulated system, however,<br />

<strong>the</strong> time it takes for a packet to get from one emulated<br />

node to ano<strong>the</strong>r can be significantly larger<br />

than <strong>the</strong> contention delay implying that actual implementation<br />

of <strong>the</strong> protocol will not provide an<br />

accurate representation of <strong>the</strong> collision and backoff<br />

phenomena associated with CSMA/CA. <strong>Ad</strong>vanced<br />

statistical models or simplistic approximations can<br />

be utilized to account for such a phenomena, but <strong>the</strong><br />

determination of which model is appropriate should<br />

be based on <strong>the</strong> research/test objective.<br />

3.2 Models<br />

The EMANE project currently contains three<br />

models each having varying features and complexity<br />

supporting research and evaluation of wireless<br />

technologies within DoD, Academia, and Industry:<br />

RF-Pipe, Comm Effects, and IEEE 80211abg. In<br />

addition, <strong>the</strong>re are two high-fidelity tactical models<br />

(SRW and HNW) currently under development<br />

with controlled/restricted access.<br />

3.2.1 RF-Pipe<br />

The RF-Pipe model is a simplistic yet feature rich<br />

model which can be configured to provide capabilities<br />

similar to existing emulators, such as NRL’s<br />

MANE[3] and Boeing’s Core[4], to emulate throughput<br />

and loss of various wireless technologies such<br />

as satellite comms, 802.11, and tactical waveforms.<br />

In addition, <strong>the</strong> model also serves as a template to<br />

guide independent NEM developers of more complex<br />

models. The majority of <strong>the</strong> functionality of<br />

<strong>the</strong> RF-Pipe model is contained within <strong>the</strong> PHY<br />

layer and can be summarized as follows:<br />

• Filters out-of-band packets.<br />

• <strong>Ad</strong>ds transmission delay based on data rate,<br />

propagation delay, and jitter.<br />

• Computes propagation effects based on runtime<br />

Path Loss or Location events. Path Loss<br />

Event values are computed off-line with events<br />

dispatched in real-time during <strong>the</strong> emulation<br />

experiment. Location Event based path loss is<br />

computed in real-time using one of two configured<br />

propagation models (Free Space or 2-Ray<br />

Flat Earth).<br />

• Performs packet treatment based on Receive<br />

Power (Rxpower) and configured min/max<br />

6<br />

thresholds as depicted in Figure 4.<br />

Rxpower = T xpower+T xgain+Rxgain−P athloss<br />

(2)<br />

The model utilizes <strong>the</strong> common EMANE PHY<br />

header to provide <strong>the</strong> Txpower and Txgain in<br />

each over-<strong>the</strong>-air packet transmission providing<br />

<strong>the</strong> ability to emulate different types of<br />

platforms such as base stations, vehicles, dismounts,<br />

and sensors.<br />

Figure 4: RF-Pipe Packet Treatment.<br />

3.2.2 Comm Effects<br />

The Comm Effect model provides <strong>the</strong> ability to<br />

control network impairments commonly provided<br />

via traditional COTS network emulators on a per<br />

link basis asymmetrically. The Comm Effect model<br />

is a Shim-only implementation utilizing unstructured<br />

EMANE NEMs as described in Section 2.4.<br />

The Comm Effects model provides <strong>the</strong> ability to<br />

define <strong>the</strong> following network impairments:<br />

• Loss: The percentage of packets that are<br />

dropped based on a uniform loss distribution<br />

model.<br />

• Delay: Defines <strong>the</strong> delay for a packet to traverse<br />

a specific link. The delay is composed of<br />

a fixed and variable (jitter) component. Delay<br />

is computed at <strong>the</strong> receiver and <strong>the</strong> packet is<br />

delivered up <strong>the</strong> stack once <strong>the</strong> delay expires<br />

providing <strong>the</strong> ability to emulate out of order<br />

packet reception.<br />

• Duplicates: Defines <strong>the</strong> percentage of packets<br />

to be duplicated at <strong>the</strong> receiver.<br />

The network impairments defined above are controlled<br />

based on time and/or predefined filters.<br />

Time based impairments are controlled via <strong>the</strong><br />

use of Comm Effect events dispatched in real-time<br />

during <strong>the</strong> emulation experiment. The events provide<br />

each node with <strong>the</strong> effects/impairments to every<br />

o<strong>the</strong>r node within <strong>the</strong> scenario.


Filter based impairments provide <strong>the</strong> ability to<br />

define static impairments at start up. A filter consists<br />

of one or more rules based on IPv4/IPv6 packet<br />

header fields. All packets matching <strong>the</strong> defined set<br />

of rules are effected with <strong>the</strong> appropriate network<br />

impairments. The model provides <strong>the</strong> ability to define<br />

more than one filter and as such each received<br />

packet is evaluated against <strong>the</strong> defined filters in <strong>the</strong><br />

order <strong>the</strong>y are defined, with <strong>the</strong> first match determining<br />

<strong>the</strong> impairment to be applied. When filters<br />

are used in conjunction with time based impairments,<br />

<strong>the</strong> event driven impairments serves as<br />

<strong>the</strong> default effect for all packets that do not match<br />

any defined filters.<br />

3.2.3 IEEE 802.11abg<br />

The 802.11abg model is a high-fidelity NEM<br />

to emulate <strong>the</strong> IEEE 802.11 MAC layers Distributed<br />

Coordination Function (DCF) channel access<br />

scheme on top of <strong>the</strong> IEEE 802.11 Direct<br />

Spread Spectrum Sequence (DSS) and Orthogonal<br />

Frequency Division Multiplexing (OFDM) signals in<br />

space. The key features of this high fidelity model<br />

are as follows:<br />

• Distributed Coordination Function (DCF)<br />

channel access protocol.<br />

• Support for 802.11b (DSS), 802.11a/g (OFDM)<br />

and 802.11b/g (DSS and OFDM) modes with<br />

<strong>the</strong> corresponding rates and waveform timing.<br />

• Support for unicast and broadcast messaging.<br />

• Half duplex operations where all packets received<br />

while transmitting are silently discarded.<br />

• Receive power calculation based on transmit<br />

power, antenna gain, and externally computed<br />

propagation model (path loss) with real-time<br />

dissemination via EMANE events.<br />

• Bit Error Rate (BER) curves as a function of<br />

SINR and data rate specified via XML providing<br />

<strong>the</strong> ability to represent different communication<br />

channel models. Default curves provided<br />

for an <strong>Ad</strong>ditive White Gaussian Noise (AWGN)<br />

channel.<br />

• Probability of Reception (PoR) computed<br />

based on BER and packet size.<br />

P oR = (1 − BER) L<br />

BER Bit Error Rate for <strong>the</strong> corresponding<br />

data rate and SINR.<br />

L Length of <strong>the</strong> received packet in bits.<br />

(3)<br />

7<br />

3.2.4 Tactical Models<br />

There are currently two high-fidelity tactical<br />

EMANE models under development. The two models<br />

are <strong>the</strong> Highband Networking Waveform (HNW)<br />

being developed by Harris Corporation and <strong>the</strong><br />

Solider Radio Waveform (SRW) being developed by<br />

CenGen, Inc. HNW is designed to serve as a tactical<br />

backbone network (i.e. wireless Wide Area<br />

Network) that can bridge multiple wireless Local<br />

Area Networks at <strong>the</strong> tactical edge being serviced by<br />

waveforms such as SRW. The two waveforms were<br />

chosen based on <strong>the</strong>ir maturity and <strong>the</strong>ir diverse set<br />

of capabilities and services in support of <strong>the</strong> DoD’s<br />

research and testing of wireless technologies associated<br />

with tactical networks. Both models have restricted<br />

access and all inquiries should be directed<br />

to <strong>the</strong> Naval Research Laboratory.<br />

4 EMANE User Community<br />

EMANE falls under <strong>the</strong> umbrella of <strong>the</strong> OSD Network<br />

Communication Capabilities (NCC) Tactical<br />

Edge <strong>Experimentation</strong> Testbed Initiatives with an<br />

objective on <strong>the</strong> development and collaboration of<br />

common testbed and experimentation capabilities<br />

that proliferate to DoD, Academia, and Industry.<br />

Since EMANE’s initial release in late 2008, <strong>the</strong> user<br />

community has steadily begun to embrace EMANE<br />

as an emulation suite to support research and evaluation<br />

of various wireless networking technologies.<br />

5 Summary and Future Direction<br />

EMANE, with its open, flexible, and modular architecture<br />

provides <strong>the</strong> framework for practical and<br />

realistic emulation of current and evolving wireless<br />

networking technologies. EMANE’s flexible design<br />

provides <strong>the</strong> ability to operate in various hardware<br />

configurations (centralized, decentralized, and virtualized).<br />

EMANE’s modularity provides <strong>the</strong> ability<br />

to utilize plugins with <strong>the</strong> appropriate fidelity<br />

to support diverse experiment objectives. The open<br />

EMANE architecture leverages <strong>the</strong> user community<br />

to develop and contribute models, tools, and applications.<br />

Future work in this area will focus on <strong>the</strong> following:<br />

• EMANE framework enhancements to fur<strong>the</strong>r<br />

optimize performance and provide additional<br />

mechanisms to monitor and analyze emulator<br />

operation.<br />

• Characterize requirements (hardware, timing,<br />

scale, etc.), for high-fidelity emulation based on<br />

complex MAC and PHY implementations.


• Development of additional high-fidelity NEMs<br />

of both commercial (WiMAX) and tactical<br />

waveforms.<br />

• Investigate feasibility and techniques of using<br />

EMANE with simulation in <strong>the</strong> loop to leverage<br />

existing simulation models.<br />

References<br />

[1] ACE TM , The ADAPTIVE Communication<br />

Environment (ACE TM ). [Online], URL: http:<br />

//www.cs.wustl.edu/~schmidt/ACE.html.<br />

[2] libxml2, The XML C parser and toolkit of<br />

Gnome. [Online], URL: http://www.xmlsoft.<br />

org.<br />

[3] MANE, <strong>Mobile</strong> <strong>Ad</strong>-<strong>hoc</strong> Network Emulator<br />

(MANE). [Online], URL: http://cs.itd.<br />

nrl.navy.mil/work/mane/index.php.<br />

[4] CORE, The Common Open Research Emulator<br />

(CORE). [Online], URL: http://cs.itd.nrl.<br />

navy.mil/work/core.<br />

8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!