IEEE Communications Magazine October 201366 0163-6804/13/$25.00 2013 IEEE
INTRODUCTIONThere is a growing interest in adopting commer-cial off-the-shelf (COTS) hardware and softwaretechnologies in military application environ-ments, such as tactical edge networks (TENs). In fact, the adoption of COTS technologiesenables reaping the benefits of economies ofscale, and facilitates and hastens the develop-ment and deployment of complex distributedapplications by leveraging robust and widelyadopted standards and software components.
Legacy and COTS applications were (andsometimes continue to be) developed using stan-dards devised for wired Internet environments orcorporate networks, such as service oriented archi-tectures (SOAs) and other web-inspired technolo-gies, and TCP and UDP. When these applicationsare deployed on TENs, their performance is sig-nificantly degraded. In fact, the reliance on webprotocols results in excessive bandwidth utilizationin an environment where bandwidth is alreadyscarce. Reliance on TCP results in decreasedthroughput, decreased bandwidth, and other fail-ures such as connection resets.
In order to support the deployment and reuseof COTS and legacy applications in tactical envi-ronments, there is a need to develop solutionsthat mediate between the communication seman-tics required by the applications and those thatcan be reasonably supported by TENs. Morespecifically, the tactical scenario demands anintelligent substrate that transparently capturesthe data transmitted by the applications, manip-ulates it to reduce its footprint, and remaps itover TEN-specific communication solutions.
This article presents an analysis of the chal-lenges in deploying COTS applications in TENs,which motivated us to develop NetProxy, a state-of-the-art solution explicitly designed to addressthose issues. NetProxy was originally introducedin , which focuses on technical aspects of thetool such as its architecture and implementation,and was later extended for the present work.NetProxy is a component of the Agile Comput-ing Middleware, a comprehensive communica-tions solution we designed to support thedevelopment of distributed applications forTENs .
We note that while the performance and reli-ability of COTS applications is also a relevantissue with wireless and mobile ad hoc networkenvironments, its importance in TENs is muchmore significant. As a result, we believe that thisis an interesting research area that could lead toresults with impact outside the military applica-tion environment. We hope that this article willattract the interest of researchers working inwireless communications and stimulate them todevelop methodologies and solutions that pushforward the state of the art.
COTS APPLICATIONS AND SOAS INTACTICAL NETWORKS
The deployment of COTS and legacy applica-tions in TENs presents many significant chal-lenges related to the use of softwarearchitectures and communication protocols thatare not suited for highly dynamic and unreliablenetworking environments. More specifically, the
ABSTRACTThe increasing adoption of COTS hardware
and software technologies in tactical scenariosraises the issue of supporting the deployment oflegacy and COTS applications in extremelydynamic and challenging environments such astactical edge networks (TENs). COTS applica-tions adopt standards devised for wired Internetenvironments or corporate networks, such asservice oriented architectures, and TCP andUDP, thus exhibiting severe reliability and per-formance problems on TENs. To support thereuse and deployment of COTS applications inTENs, there is the need to develop solutionsthat mediate the application requirements withthe communication semantics of TENs. Thisarticle presents an overview of the challenges indeploying COTS applications in TENs and pre-sents NetProxy, a state-of-the-art solution explic-itly designed to address them.
Mauro Tortonesi, Alessandro Morelli, and Cesare Stefanelli, University of Ferrara
Ralph Kohler, US Air Force Research Lab
Niranjan Suri, Florida Institute for Human & Machine Cognition and US Army Research Lab
Scott Watson, Space and Naval Warfare Systems Center
Enabling the Deployment of COTSApplications in Tactical Edge Networks
TORTONESI_LAYOUT_Layout 1 9/27/13 10:37 AM Page 66
IEEE Communications Magazine October 2013 67
most significant problems exhibited by COTSapplications originate from their reliance onSOAs and TCP.
SOA-based applications typically adopt client-server architectures with long-lived and (semi-) -static bindings between software components. Infact, while the fundamental building block ofSOAs is represented by short-lived operations,that is, synchronous remote procedure calls(RPCs), usually SOA-based clients exploit infor-mation about server locations (e.g., obtainedfrom Web Services Description Language[WSDL] documents) for several subsequentrequests, thus leading to a relatively tight andbrittle coupling between software components.This model is perfectly appropriate for LANs orwired Internet environments but that does notmatch the resilience and adaptivity requirementsof TENs. In fact, applications running in TENsmust deal with frequent disconnections for mul-tiple reasons (nodes might move and fall out ofcommunications range, networks may becomepartitioned, client devices might need to be tem-porarily shut down or stop network activity). Inaddition, TEN applications often need to switchto different service providers, exploiting newresources (e.g., unmanned aerial vehicles,UAVs) as they come in topological proximityand, when possible, leveraging peer-to-peer(P2P) architectures and/or local replicas of dataand services .
The coupling between components in SOA-based applications can be loosened via the adop-tion of enterprise message buses (EMBs) thatalso reduce the risk of building stove-piped sys-tems. However, the reliance on COTS messagingsystems and protocols results in applications thatfall short of matching the needs of TENs. Infact, COTS solutions such as JGroups(http://www.jgroups.org/) and Advanced MessageQueuing Protocol (AMQP)-based middlewarebeing proposed and adopted in TENs were notdesigned to withstand temporary network dis-connections between components without dis-rupting service sessions or to support theopportunistic exploitation of resources.
In addition, SOA-based technologies adoptapplication protocols (e.g., HTTP) and middle-ware that hinder the adoption of performanceoptimizations such as request aggregation and/orpipelining and reuse of trasport-layer connec-tions. SOA-based applications also make heavyuse of verbose and bandwidth-expensive XML-based data representation protocols that are anexcessive burden for TENs.
The Marine Corps Systems CommandsMarine Air Ground Task Force (MAGTF) Com-mand & Control (C2) Systems & Applications(SA) Service-Oriented Infrastructure (SOI) rep-resents an illustrative example of how difficult itis to run SOA-based applications in TENs. SOIrelies on the JBoss middleware and variousenterprise message buses. Applications typicallyintegrate with SOI using Apache Qpid, a cross-platform Advanced Message Queuing Protocol(AMQP)-based messaging middleware, convey-ing all the messages over TCP. Therefore, whenrunning on a TEN, those applications will eithernot function or provide poor performance whencommunicating with SOI.
These considerations led to the developmentof SOA-specific solutions, such as DSProxy ,that facilitate the deployment of SOA-basedCOTS applications in TENs by operating asadapters between the applications and militarygrade store-and-forward communication solu-tions, such as the X400-based STANAG 4406messaging system, and techniques, e.g., requestoptimization and distributed caching, thatimprove the applications fault-tolerance andperformance.
However, while proxy-based adaptation hasproved to be a very effective technique forenabling the deployment of SOA-based COTSapplication in military environments, SOA-spe-cific approaches present several significant draw-backs. More specifically, SOA-specific adapterssuch as DSProxy do not consider non-SOA-based COTS and legacy applications and onlyfocus on the optimization of application-levelprotocols.
Instead, there is the opportunity to improvethe performance of COTS applications by apply-ing communication optimization techniques thatoperate contextually at both the application andtransport levels. This is particulary important inCOTS applications that perform long servicesessions and adopt transport-level communica-tion semantics based on the reliable streammodel provided by TCP.
The reliable stream model is not compatiblewith the always exploit the best connectionoperational mode, which is a fundamentalrequirement for TENs. In fact, nodes in a TENoften have more than one communication link;for example, a slow but reliable third generation(3G) connection, a SATCOM connection thatmay not work in bad weather, and/or a fasterlocal connection (e.g., to an airborne relaynode), which is not always available. To achievethe best performance, applications (and the mid-dleware) need to dynamically switch between theavailable links to exploit the best connectivity.However, TCP-based applications are not capa-ble of dynamically switching service sessionsbetween different network interfaces, thus forc-ing users to manually shut down service sessionsand restart them in order to take advantage offaster (and cheaper) links when available. Notethat while similar issues are also actively studiedin Third Generation Project Partnership (3GPP)networks , the need to always exploit the bestconnection in TENs is an even more importantand complex issue due to the wide heterogeneityof link types.
In fact, the mismatch between the semanticsof transport-layer protocols on which COTSapplications are built and those that could bereasonably provided over TENs also represents amajor issue. At the transport protocol level,COTS applications leverage the semantics pro-posed by commonly used protocols, such as TCPand UDP, which provide reliable and sequenceddelivery of a stream of data and unreliable unse-quenced delivery of messages, respectively.
TCP and similar protocols are also very inef-ficient in highly dynamic environments such asTENs. In fact, TCP implements a single first-infirst-out (FIFO) transmission queue and doesnot enable applications to liberate the queue
The deployment of
COTS and legacy
applications in TENs
that are related to
the use of software
protocols that are
not suited for highly
dynamic and unreli-
TORTONESI_LAYOUT_Layout 1 9/27/13 10:37 AM Page 67
IEEE Communications Magazine October 201368
from stale data waiting for (re)transmission (anoperation that the stream-oriented nature ofTCP, which does not preserve the boundariesbetween messages, would also make rather diffi-cult to implement). In cases where the informa-tion generation rate outpaces the networkcapability, this limitation forces the transmissionof obsolete messages, significantly reducing theapplications goodput. The negative impact ofthe TCP queuing model on latency is also wellrecognized in wired Internet environments .However, these issues are further exacerbated inTEN applications by the time-sensitive and mul-tiple-priority nature of traffic, and by the adop-tion of peculiar and high-latency communicationsolutions, such as tactical radio links withDAMA modulation that implement two-partycommunications over unidirectional links.
In addition, in wireless environments, TCPimplementations often misinterpret packet losses(caused by higher channel error rate, mediumcontention/collision, and/or node mobility) ascongestion symptoms and consequently triggercongestion control mechanisms that significantlyreduce the transmission rate. This approachleaves the wireless channel underutilized andgenerates traffic flows with lower throughputand higher latency than the network is actuallycapable of delivering.
At the other end of the spectrum, UDP doesnot provide reliability levels or flexible mecha-nisms for group communications suited for TENcommunications. In fact, the best-effort deliverysemantics implemented by UDP places the bur-den of ensuring the delivery of important mes-sages on the applications, for instance byimplementing ad hoc retransmission schemes.UDP broadcast communications are also inade-quate as a basic mechanism for group communi-cation in TENs, which instead call fordisruption-tolerant communication schemes.
The limitations of TCP and UDP have amajor impact on COTS and legacy tactical appli-cations that typically leverage TCP for reliableend-to-end communication and UDP for besteffort broadcast/multicast communications. Anexample of these legacy applications is GeoChat,a multi-user chat application that is part of theAir Force Special Operations Commands Bat-tlefield Air Operations (BAO) Kit. GeoChatuses TCP for file exchange, incurring relativelyfrequent failures and low performance, andUDP multicast for chat messages, incurring fre-quent loss of messages.
Instead, TEN applications are better servedby communication solutions that provide a widerrange of delivery semantics, thus enabling thedifferentiation of delivery mechanisms accordingto the importance of the messages being trans-mitted. In particular, reliable and sequenceddelivery (as provided by TCP) is very expensiveand should be used only when absolutely neces-sary. The importance of providing customizabledelivery mechanisms in wireless environments iswidely recognized, as demonstrated by recentresearch efforts on SCTP, which supports multi-ple streams, multiple associations, and partialreliability mechanisms . In fact, state-of-the-art TEN-specific communication solutions recog-nize the need for smart buffer management and
go beyond the features provided by SCTP byalso enabling fine-grained control of messagedelivery semantics and mobile service sessions.
Finally, the limited bandwidth available forcommunications in the tactical environmentrequires applications to adopt communicationschemes that are as efficient as possible. Howev-er, COTS applications were typically designedfor wired Internet environments with theassumptions of having frequent and evenly dis-tributed transmission opportunities and lowround-trip times. As a result, they often imple-ment rather simple communications schemesthat do not adopt any optimization, for example,by aggregating or parallelizing requests orreusing already established connections for fol-lowing requests . These assumptions do nothold in TENs, thus leading to very poor perfor-mance results.
BRIDGING THEIMPEDANCE MISMATCH
Running COTS applications on top of communi-cation solutions specifically designed for TENs isoften impossible or impractical, as it requiresmodifications to the applications source code.Clearly, this approach cannot be app...