|
6. Middleware for Supporting Application
Programs with End-to-end QoS |
1.
Protocols for Supporting Real-time
Resource Management
Exploitation
of LRD for resource and traffic control (Hou): We will investigate three
theoretically grounded methods: prediction, reconstruction and interpolation,
for measuring cross traffic on the bottleneck link of an end-to-end path. The objective is to infer cross traffic as
accurately as possible, while not injecting a significant amount of probe
packets into the network. In all these
methods, we will take advantage of the LRD characteristic of cross traffic. We
will also conduct simulation/empirical (Internet) studies to study (i) if these methods can give good mean or
instantaneous measurement of cross traffic (ii) if they are adaptive to the
dynamic change of cross traffic and are robust in the presence of multiple
bottleneck links on an end-to-end path.
We will also further improve the robustness of three methods in the cases that probe packets may be queued before/after the bottleneck link and that the bottleneck itself may change as a result of dynamic network traffic changes.
2.
Analysis Framework for Supporting Security
Centrality analysis within
specific routing protocols (Levitt): We believe that centrality analysis is part of an overall network
security strategy that integrates intrusion monitoring with an adaptive
response approach that will re-direct the routing as well as trigger more
extensive diagnostic testing. We will be using the results of this project to
develop such an integrated intrusion monitoring and response strategy in
routers.
Inter-organization cooperation in detecting/responding to large-scale worm attack (Levitt): We propose to extend our simple preliminary model of peer-to-peer mitigating response to include more complex strategies and reporting policies. These include
3. Protocols
for Supporting Mobile Wireless Environments
Lightweight protocols
for participation incentives (Baker): We are continuing our work in OCEAN on lightweight protocols for
participation incentives. We are
currently experimenting with algorithms that balance participation incentives
with load balancing in the network so that nodes willing to forward traffic for
others are not overwhelmed with requests.
The results so far are very promising in that they achieve most of what
heavier-weight protocols achieve, but with much greater efficiency and no required
security infrastructure. We hope to
have finished evaluating several different approaches to combining load
balancing with participation incentives to varying degrees by mid-2003.
Channel access
(Garcia-Luna-Aceves):
The remaining limitation of the channel-access protocols based on transmission
scheduling that we have developed is that a node is given the opportunity to
transmit independently of whether or not the node has something to transmit. We
will work on flow-oriented scheduled channel access, which extends our prior
results on scheduled channel access by using the flows traversing network nodes
the entities that compete for scheduled channel access. We will also work on
the characterization of flows over multihop networks that use collision
avoidance in order to understand the fairness of such schemes and their ability
to support higher-level protocols (e.g., routing) aimed at providing QoS
guarantees.
Topology management
(Garcia-Luna-Aceves): In contrast to a wired network, the scheduling
decisions made at the MAC layer in wireless networks impact the de-facto
topology over which routing and multicasting must operate. Hence, it is
important to understand the ability to manage the useful topology of a wireless
network to make network-level and end-to-end protocols more effective in
multihop wireless networks. We will
investigate topology management algorithms that build and maintain a virtual
overlay topology based on the minimum dominating set (MDS) of the network. Our intent is to improve over the
state-of-the art by developing heuristics based on two-hop neighborhood
information already used for channel access.
Protocols for
small-device networks in homeland security scenarios (Suda): The project of
designing protocols for small device networks in homeland security scenarios is
at its beginning stages, and we plan to follow the research schedule listed
below.
Analytical Approach
· December 2002: Complete building of mathematical models for protocols
· July 2003: Complete mathematical analysis of protocols
· December 2003: Complete evaluation of protocols through analytical research
Simulation Approach
· April 2003: Complete investigation of various protocol components and options
· December 2003: Complete building of simulators to evaluate proposed protocols
· July 2004: Complete evaluation of protocols through simulations
· December 2004: Complete analysis of simulation results
Empirical Approach
· July 2003: Complete high-level implementation designs of protocol components
· December 2003: Complete detailed implementation designs of protocol components
· July 2004: Complete prototype implementation of the proposed protocols
· December 2004: Complete empirical evaluation of the proposed protocols in relatively simple testbed environments and refining them based on the evaluation
· April 2005: Complete evaluation of the proposed protocols in more complex testbed environments
4. Protocols
for Supporting Scalable Real-time Multicasts
Extension of
QoS-driven multicast routing to wireless sensor networks (Hou): Already
important in wired networks, multicast is expected to assume an important role
in actively controlled wireless networks in which a myriad of mobile sensors,
actuators and vehicles inter-connected by wireless links. Providing multicast
support for such environments is a challenging problem, for several
reasons. First, the addition of
mobility to the host group model implies that multicast routing algorithm must
now deal not only with dynamic group membership, but also with dynamic member
location (i.e., the routes used to reach specific group members are themselves
transient in nature). Second, many of
the algorithms used in multicast routing protocols, such as DVMRP, MOSPF, PIM
or CBT, implicitly assume static hosts when a multicast delivery tree is set
up. Reconstructing the delivery tree
every time a multicast source moves is not always a viable option, because of
the overhead involved. Last but not least, support of reliable data transport
and QoS in the existence of host mobility and low-bandwidth, unreliable
wireless links requires careful coordination, and perhaps combination, of host
membership, dynamic routing, resource management, and reliable multicast
transport. We will:
(i)
Develop multicast models of different levels of QoS in wireless networking
environments (e.g., user-viewed video streams may tolerate relaxed reliable
delivery in lieu of reduced latency).
(ii) Develop
multicast routing algorithms that take into account of host mobility and
frequent route changes. In particular, we will extend Mobile IP (by perhaps
migrating some of the functionalities of DVMRP and MOSPF to Mobile IP) and
develop multicast routing protocols in mobile wireless networks.
Routing and
multicasting (Garcia-Luna-Aceves): We will introduce QoS constraints into our partial link-state
routing approach, and develop a mesh-based multicast protocol that supports QoS
constraints. The goal of our multicast approach is to work correctly with
on-demand and table-driven routing schemes.
Scalable real-time video multicast protocols (Suda): In the projects of designing scalable real-time video multicast protocols and bandwidth efficient multicast protocol in ad-hoc networks, we have completed protocol designs and evaluation of the proposed protocols through simulations. For these component projects, we plan to follow the research schedule listed below.
December 2002: Complete initial prototype implementations of the proposed protocols
July 2003: Complete refinement of the prototype implementations
July 2004: Complete empirical evaluation of the proposed protocols
5.
Bio-Networking Architecture
Design of the
Bio-Networking Architecture is at its beginning stage, and we plan to follow
the research schedule listed below.
Analytical
Approach
· December 2002: Complete building of mathematical models for protocols
· July 2003: Complete mathematical analysis of protocols
· December 2003: Complete evaluation of protocols through analytical research
Simulation
Approach
· April 2003: Complete investigation of various protocol components and options
· December 2003: Complete building of simulators to evaluate proposed protocols
· July 2004: Complete evaluation of protocols through simulations
· December 2004: Complete analysis of simulation results
Empirical
Approach
· July 2003: Complete high-level implementation designs of protocol components
· December 2003: Complete detailed implementation designs of protocol components
· July 2004: Complete prototype implementation of the proposed protocols
· December 2004: Complete empirical evaluation of the proposed protocols in relatively simple testbed environments and refining them based on the evaluation
April 2005: Complete evaluation of the proposed protocols in more complex testbed environments
6. Middleware for Supporting Application
Programs with End-to-end QoS
Systematic benchmarking and optimization (Schmidt): We will conduct benchmarks to evaluate the end-to-end
properties of the QoS-enabled network protocols supported by TAO’s pluggable
protocols framework. Our primary focus
has been on DiffServ and SCTP. In
particular, our goal is to leverage SCTP's network path multiplexing feature to
enable CORBA applications to recover from network connectivity failures within
a small, bounded amount of time (~10 milliseconds end-to-end). As a result of
the benchmarking efforts, we will pinpoint the key sources of overhead and
non-determinism and then apply optimizations to alleviate these problems.
C4ISR demonstrations (Schmidt): In collaboration with BBN
Technologies and Lockheed Martin Advanced Technology Labs (ATL), we are
demonstrating the QoS-enabled network protocols supported by TAO’s pluggable
protocols framework in the context of a representative DoD C4ISR system
developed as part of the PCES program.
This C4ISR system uses Real-time CORBA and TAO’s pluggable protocols
framework to send snapshots and video frames captured by a UAV (such as a
Predator) to a C2 node (such as an AWACS) where the information is analyzed and
selected imagery is forwarded to a strike fighter (such as an F/A-18 or F-15)
in order to retarget it in real-time to attack moving ground targets, as shown
in the following figure:

This demonstration will
leverage the DiffServ and SCTP capabilities in TAO’s pluggable protocols
framework in order to manage the quality of service between the various links
and interconnects, both onboard and offboard the various avionics nodes in the
system.
Reflective middleware (Schmidt): The aim of this phase of our
research is to study ways of making the best available use of networking and
computing resources in an intelligent way.
For example, some computations can inherently be run in parallel on
multiple processors. An example is information exploitation and signal
processing, where radar signal data can be split into multiple parts and
processed concurrently. While there
exist ways to write parallel programs (such as using the MPI library),
middleware support for parallel programs is still rudimentary. With the advent of the so-called Data
Parallel CORBA specification, it is now possible to extend the benefits of
middleware support to parallel programming over high-speed networks and
clusters of parallel processing nodes, as shown in the following figure.
Moreover, with the advent of new protocols and services in CORBA, such as Load-balancing and Fault-Tolerance, mechanisms now exist to run programs not only in parallel but also to run them in the fastest way (by running the computations on the least loaded servers) while still providing fault tolerance. The implications for the existence of such complimentary mechanisms are enormous, for example in C4ISR JSTARS and AWACS platforms or in a total ship computing environment, such as DD(X).
To date, there is little or no research into the type of
middleware-driven policies, data reorganization strategies and algorithms, and
protocols that will result in the best use of the network and computing
resources and the way to combine all the mechanisms in an intelligent way. Reflection
is a powerful technique in this respect.
By reflection, we mean the ability of a system to observe its own
behavior and take suitable actions when deemed necessary by the system
itself. Reflection is a mechanism to
incorporate intelligence into the system.
While reflection allows for a mechanism to incorporate intelligence, the
intelligence itself has to come from suitable policies, algorithms, and
protocols.
In the
context of the topics outlined above, we therefore plan to focus parts of our
future PERC research on the following topics:
· From the actual machines that make up the computing environment,
which includes CPU(s) load, memory usage, and network bandwidth usage. We propose to collect this data via a reflective
middleware service that is orthogonal to any of the current CORBA
services. Work is already underway to
implement this service in TAO. This service also has direct ramifications for
Load-Balancing (querying machines for 'load') and Fault-Tolerance (load
information from machines can act as heartbeat messages while also providing
information on the current 'health' of a machine).
· Data about the application itself: While each application will have
its own unique needs about data that is critical to it, we hope to come up with
a framework of 'reflection-data-structures' useful for distributed applications
and for Data-Parallel applications in particular. Useful reflective data
structures could be which (remote) operations were called, with what
parameters, how large were the parameters, and how many resources were required
to execute the operation. The
information about these structures can be collected transparently and easily
via the CORBA Portable Interceptors mechanism. Our research will evaluate what
data to collect, how it should be stored, how to access it and how
intelligently the collected data can be utilized.
Dependable Communication Middleware (Hou): The proposed middleware
will not only significantly enhance the abstractions provided to the application
developers, but will impact many other applications such as internetworking of
homes (i.e., connecting home computers to the Internet). We will continue the efforts along three
directions:
(i) We will continue to
implement the communication middleware in Redhat Lunix.
(ii) We will identify a
set of middleware services common to network services with dependability
guarantees, and study how to group together the building blocks (Figure 1) to
realize these services and to ensure end-to-end QoS provisioning.
(iii) We will implement user APIs
that may be a profile of APIs or a
new API veneer that covers the APIs of the underlying middleware services that
it abstracts with a common syntax.
7. Tools
for Supporting Network Simulation/Emulation
Narses
flow-based simulator (Baker): We are also continuing our work on the Narses flow-based
simulator. We are stress-testing its
behavior on a variety of challenging topologies while comparing our results to
ns-2 in terms of accuracy of results, speed of simulation, and memory
requirements for the simulation. We
hope to make a software release of Narses available in mid-2003, as there is
interest from many peer-to-peer research groups around the country in using the
tool.
Design,
implementation, and module enhancement of JavaSim
(Hou): We will
continue our JavaSim efforts along
the following directions:
(i)
We will extend JavaSim to include
components in other emerging network architectures, such as wireless sensor
networks.
(ii)
We will extend JavaSim to realize
network emulation. Specifically, we
will develop a complete Java-compliant socket layer on which real applications
(e.g., web/ftp servers and audio/video applications) can be readily
ported. We will also devise techniques
to interface device driver components in JavaSim
with real network interface cards (NICs);
(iii)
We will investigate use of fluid models to expedite simulation. In the fluid
model based simulation, network traffic is modeled in terms of a continuous
fluid flow, rather than discrete packet instances. A cluster of closely spaced packets may be modeled as a single
fluid chunk with a constant fluid rate.
A set of differential equations is derived (based on the fluid model)
and used to characterize the system evolution.
A fluid-model based simulator then keeps track of the fluid rate changes
at traffic sources and at router queues.
We will investigate in which network layer (transport, routing, buffer
management, or MAC) fluid model-based simulation is most effective, and
quantify the execution time speed-up thus achieved and the approximation errors
thus incurred. We will also implement
fluid-model based simulation classes in JavaSim.
(iv)
We will develop a real-time process-driven simulation technique (as opposed to
event-driven simulation) that naturally extends the ACA independent execution
model and characterizes the interactions in real systems more realistically.
(v) We will investigate whether or not, and how, the conservative and optimistic synchronization approaches used in event-driven simulation can be applied to real-time process-driven simulation. Our ultimate goal is to build parallel simulation engines into the ACA runtime.