Information Technology Reference
In-Depth Information
networks, application programmers have no control over the network. One
reason is that a general applicable, conceptual and technical framework to
program the network is absent [2].
In the absence of any notion of specific application demands, as is usually
the case, network providers offer typically a best or constant effort network
service. Theoretically at least, computer programs can be so specific in their
service requirement and optimal response to disturbances that network
providers cannot configure and control the network for such applications
anymore. If cloud infrastructures would only run on wind energy, for
example, the amount and direction of wind will continuously change the
energy available for computing and network resources. In such cases, (partial)
control over the network must also be transferred to a computer program, i.e.
the application domain, to automate continuous reconfiguration of the
infrastructure.
Traditionally, networks have been designed according to well-defined
requirements. One could say that at this point application domain knowledge
enters the network domain. Conversely, application engineers may use the
interface of a given network service, e.g. sockets in the Internet, to include the
network in the application logic. Here, we extend the latter approach; any
application-specific property of a network service becomes a network control
issue programmed in the application domain, i.e. a dynamic user network
interface. Moreover, we define the basic framework needed to design and
build network control programs in the application domain.
In Section 2 we review state of the art of related areas in programmable
networks, overlay network and sensor networks that allow network control
from the application domain. Then, in Section 3, the application framework is
presented and its functional components are described in Section 4. In Section
5, the implementation and test bed is introduced and Section 6 follows with
examples of applications that control networks. The paper ends with
conclusions and future work in Section 7.
2 Related Work
A basic approach to develop a programmable network is to use general-
purpose computers as Network Elements (NE) and implement C programs
that manipulate packet streams and network links [3-5]. The programmable
and active network [6, 7] community developed the architectures for dynamic
deployment and extensibility of functions in network elements. Other efforts
provide programmability in the control plane of networks, while remaining
backwards compatible with current Internet technologies [8-11]. These
technologies enable network operators to offer better services to applications.
Basically, there are two types of limitations in networks that motivate
application control: (1) limited network functions or (2) limited network
resources. If the network does not offer enough functionality, a well-known
Search WWH ::




Custom Search