PreprintPDF Available

Rule-Based Translation of Application-Level QoS Constraints into SDN Configurations for the IoT

Preprints and early-stage research may not have been peer reviewed yet.

Abstract and Figures

In this paper, we propose an approach for the automated translation of application-level requirements regarding the logical workflow and its QoS into a configuration of the underlying network substrate. Our goal is to facilitate the integration of QoS constraints in the development of industrial IoT applications to make them more reliable. We follow an approach based on two semantic models: The first model allows to design the workflow of an IoT application and to express application-level QoS requirements on its interactions. The second model captures the configuration of a network and can be used as input to a north-bound interface of an SDN controller. Finally, we make use of rule-based semantic reasoning to automatically translate from the application requirements into SDN parameters.
Content may be subject to copyright.
Rule-Based Translation of Application-Level QoS
Constraints into SDN Configurations for the IoT
Jan Seeger∗†, Arne Br¨
oring, Marc-Oliver Pahl, Ermin Sakic∗†
Technical University Munich, Munich, Germany, {seeger, pahl}
Siemens AG, Munich, Germany, {arne.broering, ermin.sakic}
Abstract—In this paper, we propose an approach for the au-
tomated translation of application-level requirements regarding
the logical workflow and its QoS into a configuration of the
underlying network substrate. Our goal is to facilitate the inte-
gration of QoS constraints in the development of industrial IoT
applications to make them more reliable. We follow an approach
based on two semantic models: The first model allows to design
the workflow of an IoT application and to express application-
level QoS requirements on its interactions. The second model
captures the configuration of a network and can be used as input
to a north-bound interface of an SDN controller. Finally, we make
use of rule-based semantic reasoning to automatically translate
from the application requirements into SDN parameters.
Index Terms—IoT, Semantics, SDN, QoS
The Internet of Things (IoT) is rapidly growing. It consists
of network-enabled devices with sensors and actuators that
improve our comfort or make us safer. The IoT extends
ubiquitous communication to the physical world [1]. The
amount of information provided by the IoT and the diverse
ways to interact with the physical world are challenging. One
approach that has become widely used for the creation of
new applications is the concept of service composition [2].
Service composition means encapsulating functionalities that
are provided by devices in dedicated services and combining
them on a higher level. The ability to combine services is
popular in IoT deployments, as tools such as “If This Then
That”1or Node-RED2show. Furthermore, service composition
facilitates easier development of applications built atop the
compositional APIs. Such simplification can become a key
enabler towards an IoT app economy [3].
Looking at the industrial or building automation domains,
composition of services is comparatively more difficult, both
because of a lack of standards for interoperable communi-
cation, and an inability of current composition systems to
state non-functional requirements that automation systems
have. Such non-functional requirements include latency or
bandwidth constraints. While progress is being made on stan-
dardizing communication interfaces and protocols (by groups
such as the Fairhair Alliance3or the Open Mobile Alliance4),
the specification of QoS requirements is not supported by the
current service compositions for automation systems.
Automation systems, particularly in the building domain,
are converging to a shared infrastructure to reduce operating
costs and to promote integration with information and com-
munication technology. These shared infrastructures no longer
provide the guarantees of an isolated automation network,
such as the guaranteed delivery time and available bandwidth.
SDN technology can help with this. Through the centralized
management of network elements, advanced QoS requirements
can be enforced in the network from a central point.
There has been little research on incorporating the tools
that SDN provides and considering the requirements of service
composition concepts to realize IoT applications. This paper
presents an approach that bridges the application-layer and
network-layer perspectives, by describing application require-
ments and automatically translating them into network/SDN
configurations using semantically-enriched models. This se-
mantic enrichment enables machine interpretable resource
descriptions and the automated matching of existing devices
and services to defined compositions.
We follow an approach based on two semantic models: the
first model for designing the application workflow builds up
on our previous work on IoT Recipes [4] and extends it by
adding the ability to attach application-level QoS requirements
into configurations of an SDN controller. The second model
developed here describes concrete SDN configurations. We
further define a method for rule-based semantic reasoning
that allows translating of high-level application-specific QoS
constraints into lower-level SDN-specific QoS constraints,
thus integrating QoS constraints with semantic application
A number of service composition platforms exist for com-
posing automation tasks to new services. A thorough survey
on the field of cloud-focused QoS-aware web services compo-
sition can be found in [5]. The platforms described there are
all cloud-focused, while we intend to model edge-level (i.e.
local) service composition with QoS constraints. For example,
[6] describes a QoS-aware service selection mechanism based
on semantic matching. Liu et. al. describe a reliable service
composition platform in [7], while Moustafa et. al. describe
a stigmergic approach that qualifies provided QoS properties
with trust [8]. All of these approaches have in common that the
QoS requirements are specified with the services themselves
and the orchestration platform not taking the underlying net-
work communication into account. In contrast to the state of
the art, by leveraging SDN functionalities, we aim to enforce
QoS constraints on the network-level as well as the service
Software-defined networking (SDN) [9] provides a fine-
grain control of network settings. It separates the control
from the data plane and centralizes the control decisions
on a single controller. A typical mechanism to implement
virtual topologies in SDN networks is using VLAN tags
or OpenFlow flow-based traffic differentiation. Furthermore,
OpenFlow can facilitate QoS-aware service differentiation by
means of explicit queue assignment and per-flow metering
Other established approaches for enabling QoS constraints
on a per-application basis are Differential Services (DiffServ)
[10] and Integrated Services (IntServ) [11]. DiffServ is a
coarse-grained and decentralized approach for ensuring net-
work traffic QoS. However, its coarse class concept makes
it unsuitable for expressing fine-grained QoS requirements
for local automation systems. IntServ architecture provides
for fine-grained end-to-end support for QoS requirements.
It is however not widely supported by consumer hardware,
and has scalability issues when it comes to larger systems.
Both of these protocols do not provide for a centralized view
and control over the network, which complicates a global
distribution of policies as we envision it.
Various research works focus on the enforcement of QoS
parameters via SDN prootocols. Naman et al. [12] describe the
architecture for a network-exposed API that provides visibility
into the network state, and an SDN assisted congestion control
algorithm that utilizes network state information to achieve
requirements that demand low latency and high bandwidth.
Akella et al. [13] present a QoS-guaranteed approach for
bandwidth allocation that satisfies QoS requirements for pri-
oritized cloud users. Kucminski et al. [14] use a QoS-based
routing scheme to prioritize important broadband data traffic
over the less important one. Li et al. [15] approach QoS
guarantees by identifying the application at the SDN controller
and setting up different QoS levels for different types of
applications. Guck et al. [16] develop a network model for
guaranteeing latency bounds over standard network equipment
with a reasonable runtime cost. Gorlatch et al. [17] translate
the high-level QoS requirement of response-time in real-time
interactive applications to different types of network level
latency requirements.
However, no systematic semantic modelling of QoS require-
ments has been attempted so far. Our aim is the specification of
a general model for the specification of QoS requirements on
service compositions and as a translation target for application-
specific QoS requirements. This systematic model can then be
used for providing functionality tools for enforcing service
QoS requirements in an SDN enabled network. t
The semantic models of our approach are visualized in
Fig. 1. They are defined as triples in the RDF format5and
can be serialized e.g. in the N3 format6.
On the left side of Fig. 1, the model to define abstract IoT
compositions as recipes is shown. This model is based on our
previous work [4], [18]. A recipe is a template for a workflow
of interactions between multiple components, or ingredients.
When a recipe is instantiated, ingredients are replaced with
concrete components, which we call IoT offerings. An offering
is a concrete service of an IoT device or platform that has
inputs, outputs and a semantic category. In this work, the
recipe model is extended to allow the definition of application-
level QoS constraints, which are then translated to SDN QoS
constraints. Therefore, the concept QoSConstraint has been
associated with an interaction of the recipe. Based on this
model, applications can be created in the form of a dataflow
graph, as shown in the initial user interface design of Fig. 2.
Besides defining the interactions of the workflow, the user
can specify constraints on the communication paths between
SDN enables the enforcement and validation of QoS con-
straints on a service composition’s network communication. To
take advantage of these tools, we need to model its parameters
in a manner compatible with a service model. We have chosen
to model SDN concepts in a semantic fashion, for simplified
integration with semantic service composition systems similar
to the platform described in [4].
Our SDN model is depicted on the right side of Fig. 1.
The design of this model is inspired by the data structures
used by the northbound interfaces of SDN controllers, such
as defined by [19]. The central component of this model is
the application. When the model is instantiated, this is the
entry point to the definition of a specific SDN configuration.
Associated with the application is a time period during which
it is valid and a tenant who represents the user of the network.
Every application is associated with an interface that comprises
of the network node on which it runs as well as the physical
port it is attached to.
A key concept associated with the application is the flow
filter. Here, a destination (pointing to a specific interface),
filter conditions, and QoS requirements are defined. As QoS
requirements, we have added delay, bandwidth and protect
constraints. This modelling is non-exhaustive, and depending
on the functionality available at the store, more constraints
can be added. The delay constraint describes a maximum
allowed latency between two endpoints, while the bandwidth
constraint specifies a minimum guaranteed bandwidth between
two endpoints. The protect constraint provides a mean to spec-
ify redundant packet transmission, which facilitates sending
the same packet over different network links to improve the
connection reliability.
Fig. 1. The two semantic models (as RDF triples) for IoT workflow compositions (left) and for defining SDN-based network configurations (right). Rules
enable an automatic translation from recipe instances to SDN parameters.
These constraints are applied to flows that match the con-
ditions attached to a single filter. Currently, we included flow
conditions to check for matches on the ethernet, IP, TCP and
UDP protocols. Further protocols can be added, e.g., based on
ARP addresses or ICMP packets. As an example, to specify
the maximum delay for a connection between a sensor and an
actuator, we can instantiate a flow filter with a delay QoS and a
flow condition consisting of an IP header match with a source
IP address of the sensor, and the destination IP address that
of the actuator. Then, the maximum delay constraint would
be applied to all packets being sent from the sensor to the
Applications are the components that take advantage of the
defined QoS constraint. In the example user interface in Fig-
ure 2, the shown recipe corresponds to the ”tenant” concept.
The tenant can have several independent applications. Com-
ponents in Figure 2 correspond to the ”application” concept,
where each application can have multiple QoS constraints.
Together, the applications (or components) realize a vision-
and sound-based intruder alert function for an office building.
Application-level QoS constraints refer to the possibility
of defining such constraints on a high-level, independent of
network-level specifics. Application-level QoS constraints are
thus an abstract description of an application’s network re-
quirements. Due to being defined on the application level, such
constraints are easier to define for the user, and can be stored
independently of the specifics of the underlying network. An
example for the use and implementation of application-level
constraints can be found in [17].
We have defined a scheme for expressing application-level
QoS constraints as a collection of semantic rules. Including
these rules in the triple store together with the semantic
models, the application-level constraints are automatically
translated by the semantic reasoner of the triple store into
instances of the lower-level SDN model. These instances can
then be submitted as configurations to an SDN controller.
One use case for an application-specific constraint is con-
straining the frame rate (f) for a camera stream that specifies
the minimum frames/second the network needs to be able to
transmit. Since we define this constraint on the application
level, information on the camera’s data format and the res-
olution of the video stream is available to us. If the video
format’s efficiency is e[−∞,1] and the video’s resolution is
x×y, we can infer a minimum bandwidth with the calculation
bw = (1e)xyf. The bandwidth constraint derived from
this equation can then be configured on the network. If the
application then changes (for example, switching to a video
camera with a less effective video format), the application-
level constraint can be reevaluated and changes can be applied
to the network.
Another use case is the translation of 802.11Qcc7traffic
specifications into SDN requirements. The translation of a Qcc
description with the maximum number of frames transmitted
during a single interval as Nmax
Fand the maximum length
of transmitted frames as WFwould be specified as bw =
Listing 1 contains an example definition of a camera
framerate application constraint and a device that this con-
straint can be applied to. The definition of CameraOne
1:CameraOne a:Offering ;
2:resolutionX 1024 ;
3:resolutionY 786 ;
4:efficiency "0.8"ˆˆxsd:float ;
5:address "" .
8a:Constraint ;
9:translatesInto [
10 a:Calculation ;
11 :targetConstraint :BandwidthConstraint ;
12 :productOf (
13 :resolutionX
14 :resolutionY
15 [
16 a:Calculation ;
17 :differenceOf (
18 1
19 :efficiency)
20 ],[
21 a:ParameterValue ;
22 :parameterRelation
23 :desiredFramerate ])] .
25 :VideoFramerateConstraintOne
26 a:VideoFramerateConstraint ;
27 :interactionFrom :CameraOne ;
28 :interactionTo :ProcessingOne ;
29 :desiredFramerate 20 .
Listing 1: Device and constraint definition in N3 format.
contains the information necessary for calculating the con-
straint (resolution, efficiency, and address). This information
is stored in the orchestration system, and used at instantiation
time of the recipe. The definition of the constraint describes
the translation from the high-level application constraint to
lower-level network constraints. In this case, our translation
target is a BandwidthConstraint. The target value of
the bandwidth constraint should be calculated as per the
use case defined above, where the bandwidth of the link is
xy(1 e). Application constraints can also translate into
multiple network-level constraints.
Listing 2 contains an excerpt of the translation implemen-
tation using the EYE reasoner [20]. The implementation takes
the form of rules that are expressed as implications. When
the premise of the rule (the part before the ) holds, the
conclusion of the rule is inserted into the triple store, with
all existential variables (those prefixed with a ’?’) replaced
with the bindings from the rule’s premise. Line 1 defines
the productOf property as a calculation function that is
resolved by the rule system. The rule in lines 2–19 results
in the recursive calculation of calculation values. We do this
by iterating over all the values in the argument list of the
calculation relation (for example, productOf) and attaching
the calculated values to the calculation. The argument list can
contain three types of values: Literals, which are used as-is,
device properties, which are resolved from the device the con-
straint is applied to, and parameters, which are resolved from
the constraint itself. When all input values for a calculation
are available (line 16), they are appended into a single list and
attached to the calculation node. Then, the calculation rule on
lines 21 to 28 fires and computes the result using the reasoner’s
1:productOf a:CalcFunction .
3?calc a:Calculation ;
4:forConstraint ?constraint ;
5?op ?list.
6?op a:calcFunction .
7?constraint :interactionFrom ?device .
8?SCOPE e:findall (?value {
9?rel list:in ?list .
10 ?device ?rel ?value .
11 } ?VALUES) .
12 # Elided.
14 list:append ?ALLVALUES .
15 ?ALLVALUES e:length ?length .
16 ?list e:length ?length .
17 } => {
18 ?calc :inputValues ?ALLVALUES .
19 } .
21 {
22 ?calc a:Calculation ;
23 :productOf ?something ;
24 :inputValues ?list .
25 ?list math:product ?value .
26 } => {
27 ?calc :hasResultValue ?value .
28 } .
29 {
30 ?constraint a:Constraint ;
31 :translatesInto [
32 a:Calculation ;
33 :hasResultValue ?value ;
34 :targetConstraint ?sdnconstraint] ;
35 :interactionFrom [
36 a:Offering ;
37 :address ?fromDeviceAddress] .
38 # Elided.
39 } => {
40 ?constraint :translatesTo [
41 a?sdnconstraint ;
42 :hasValue ?value ;
43 :matchFlow [
44 a:FlowFilter ;
45 :matchFromIP ?fromDeviceAddress ;
46 :matchToIP ?toDeviceAddress]].
47 } .
Listing 2: Translation rules for a camera frame-rate constraint
in N3 format.
built-in math:product predicate. This rule is replicated
for other calculation instructions, such as differenceOf
or sumOf (not included here). When a result value for the
root of the calculation has been computed, the rule in lines
30–47 generates the target constraint with the correct value.
Additionally, flow filter information from the device is used
to generate a flow filter. We can define QoS constraints for
audio streams in a similar manner to realize the audio bitrate
constraint in Fig. 2.
The concept of application-level QoS descriptions harmo-
nizes well with frameworks that support the abstract specifi-
cation of compositions, such as COCOA [21], where abstract
service compositions are treated as state machines, or the
Recipe system from [4].
Fig. 2. User interface to configure network QoS on the application-level
within a recipe defining an IoT service composition.
An example for a user interface (UI) design for the speci-
fication of application workflows and constraints can be seen
in Fig. 2. This UI is based on our previous work in [18].
In this example, the UI has been used to define a recipe
that combines multiple services of devices in an intrusion
detection system. For the camera and audio streams, the
analysis services need a minimum amount of data to work
correctly. To guarantee this, the user has specified application-
level QoS requirements on the interactions between sensors
and analysis services. Additionally, when a notification is
generated by the system, it should be sent quickly. Otherwise,
the intruder will be long gone when the notification is sent.
For this, another constraint is attached that specifies a certain
maximum time for a message to be delivered from one service
to the next.
The abstract service composition and associated QoS con-
straints are first defined in the UI. The user can then trigger
the storing of the designed recipe as RDF triples (according to
the above defined semantic model) in a triple store associated
with the UI. This results in semantic information in the
triple store similar to that in Listing 1, however, without
the interactionFrom and interactionTo parameters,
since the recipe is still abstract. When concretizing the recipe
with specific components later, the interactionFrom and
interactionTo properties are added to the constraint,
which automatically starts the translation of the application
constraint into concrete network constraints. An external pro-
cess regularly interrogates the triple store about all existing
SDN-level constraints, and converts them to a format suitable
for the targeted SDN controller, and send them to the SDN
controller. This enables the treatment of recipes containing
application-level QoS requirements as QoS enabled applica-
tions that can be instantiated automatically using different
concrete components.
Fig. 3. Number of constraints vs. required time to translate constraints with
100 devices. Each translation was run 5 times.
We have evaluated the performance of the translation of QoS
constraints by repeatedly instantiating the ”camera” constraint
shown in Listing 1 with 100 devices, and measuring the
reasoning time. The results can be seen in Figure 3. As
expected, the Prolog-based reasoner performs efficiently with
reasoning for 100 devices and 500 constraints taking less than
5 seconds on a 2.6 GHz 2-core virtual machine with 1 GB of
In this paper, we have described a semantic model for
defining SDN QoS constraints, and the use of this model in
the instantiation of abstract service compositions. Additionally,
we have illustrated how application-level constraints (e.g., a
video stream’s frame rate, or a message’s timeliness) can be
translated into the provided model. We have implemented this
translation using a rule-based approach with the EYE reasoner.
This abstraction and the ability to define such constraints on
the application-level supports application developers, as they
do not have to know about networking details. I.e., we achieve
flexibility and ease-of-use when defining service compositions
with QoS requirements.
Modelling further application-level constraints will be done
in future work, as it strongly depends on specific use cases.
In future, we will implement the abstract modelling approach
in our recipe system [4]. We plan to further elaborate the
presented semantic model to a full ontology that enables
the machine-interpretable definition of SDN configuration
descriptions. Further, we will evaluate the ability of the system
to run reliable service orchestrations. This will involve the
implementation of the user interface sketched in Fig. 2 and
the implementation of an SDN management system to enforce
those constraints in the network.
This work has been supported through the project SEMIoT-
ICS funded by the European Union’s Horizon 2020 research
and innovation programme under grant agreement No. 780315.
[1] J. Gubbi, R. Buyya, S. Marusic, and M. Palaniswami, “Internet
of things (IoT): A vision, architectural elements, and future
directions,” vol. 29, no. 7, pp. 1645–1660. [Online]. Available:
[2] Q. Z. Sheng, X. Qiao, A. V. Vasilakos, C. Szabo, S. Bourne, and
X. Xu, “Web services composition: A decade’s overview,Information
Sciences, vol. 280, pp. 218–238, Oct. 2014, wOS:000339132700014.
[3] M.-O. Pahl and G. Carle, “Taking Smart Space Users into the Develop-
ment Loop: An Architecture for Community Based Software Develop-
ment for Smart Spaces,” in Proceedings of the 2013 ACM Conference
on Pervasive and Ubiquitous Computing Adjunct Publication. New
York, NY, USA: ACM, 2013, pp. 793–800.
[4] J. Seeger, R. A. Deshmukh, and A. Br¨
oring, “Running Distributed and
Dynamic IoT Choreographies,” in 2018 IEEE Global Internet of Things
Summit (GIoTS) Proceedings, vol. 2. Bilbao, Spain: IEEE, Jun. 2018,
pp. 33–38, arXiv: 1802.03159.
[5] V. Hayyolalam and A. A. Pourhaji Kazem, “A systematic literature
review on QoS-aware service composition and selection in cloud
environment,Journal of Network and Computer Applications,
vol. 110, pp. 52–74, May 2018. [Online]. Available: http://www.
[6] S. B. Mokhtar, D. Preuveneers, N. Georgantas, V. Issarny, and
Y. Berbers, “EASY: Efficient semAntic Service discoverY in pervasive
computing environments with QoS and context support,Journal
of Systems and Software, vol. 81, no. 5, pp. 785–808, May
2008. [Online]. Available:
[7] C. Liu, J. Cao, and J. Wang, “A Reliable and Efficient Distributed Ser-
vice Composition Approach in Pervasive Environments,” IEEE Transac-
tions on Mobile Computing, vol. 16, no. 5, pp. 1231–1245, May 2017.
[8] A. Moustafa, M. Zhang, and Q. Bai, “Trustworthy Stigmergic Ser-
vice Compositionand Adaptation in Decentralized Environments,IEEE
Transactions on Services Computing, vol. 9, no. 2, pp. 317–329, Mar.
[9] B. A. A. Nunes, M. Mendonca, X. N. Nguyen, K. Obraczka, and
T. Turletti, “A Survey of Software-Defined Networking: Past, Present,
and Future of Programmable Networks,” IEEE Communications Surveys
Tutorials, vol. 16, no. 3, pp. 1617–1634, 2014.
[10] S. Blake, D. Black, M. Carlson, E. Davies, Z. Wang, and W. Weiss, “An
architecture for differentiated services,” Tech. Rep., 1998.
[11] R. Braden, D. Clark, and S. Shenker, “Integrated services in the internet
architecture: an overview,” Tech. Rep., 1994.
[12] A. T. Naman, Y. Wang, H. H. Gharakheili, V. Sivaraman, and
D. Taubman, “Responsive high throughput congestion control for
interactive applications over SDN-enabled networks,Computer
Networks, vol. 134, pp. 152–166, Apr. 2018. [Online]. Available:
[13] A. V. Akella and K. Xiong, “Quality of Service (QoS)-Guaranteed
Network Resource Allocation via Software Defined Networking (SDN),
in 2014 IEEE 12th International Conference on Dependable, Autonomic
and Secure Computing, Aug. 2014, pp. 7–13.
[14] A. Kucminski, A. Al-Jawad, P. Shah, and R. Trestian, “QoS-based rout-
ing over software defined networks,” in 2017 IEEE International Sym-
posium on Broadband Multimedia Systems and Broadcasting (BMSB),
Jun. 2017, pp. 1–6.
[15] F. Li, J. Cao, X. Wang, and Y. Sun, “A QoS Guaranteed Technique
for Cloud Applications Based on Software Defined Networking,” IEEE
Access, vol. 5, pp. 21 229–21 241, 2017.
[16] J. W. Guck, A. Van Bemten, and W. Kellerer, “Detserv: Network models
for real-time qos provisioning in sdn-based industrial environments,
IEEE Transactions on Network and Service Management, vol. 14, no. 4,
pp. 1003–1017, 2017.
[17] S. Gorlatch and T. Humernbrum, “Enabling high-level QoS metrics
for interactive online applications using SDN,” in 2015 International
Conference on Computing, Networking and Communications (ICNC),
Feb. 2015, pp. 707–711.
[18] A. S. Thuluva, A. Br¨
oring, G. P. Medagoda, H. Don, D. Anicic,
and J. Seeger, “Recipes for IoT Applications,” in Proceedings of the
Seventh International Conference on the Internet of Things, ser. IoT
’17. New York, NY, USA: ACM, 2017, pp. 10:1–10:8. [Online].
[19] E. Sakic, V. Kulkarni, V. Theodorou, A. Matsiuk, S. Kuenzer, N. E.
Petroulakis, and K. Fysarakis, “Virtuwind–an sdn-and nfv-based archi-
tecture for softwarized industrial networks,” in International Conference
on Measurement, Modelling and Evaluation of Computing Systems.
Springer, 2018, pp. 251–261.
[20] R. Verborgh and J. D. Roo, “Drawing Conclusions from Linked Data
on the Web: The EYE Reasoner,IEEE Software, vol. 32, no. 3, pp.
23–27, May 2015.
[21] S. Ben Mokhtar, N. Georgantas, and V. Issarny, “COCOA:
COnversation-based service COmposition in pervAsive computing
environments with QoS support,Journal of Systems and Software,
vol. 80, no. 12, pp. 1941–1955, Dec. 2007. [Online]. Available:
ResearchGate has not been able to resolve any citations for this publication.
Full-text available
Industrial networks require real-time guarantees for the flows they carry. That is, flows have hard end-to-end delay requirements that have to be deterministically guaranteed. While proprietary extensions of Ethernet have provided solutions, these often require expensive forwarding devices. The rise of Software-Defined Networking (SDN) opens the door to the design of centralized traffic engineering frameworks for providing such real-time guarantees. As part of such a framework, a network model is needed for the computation of worst-case delays and for access control. In this article, we propose two network models based on network calculus theory for providing deterministic services (DetServ). While our first model, the multi-hop model (MHM), assigns a rate and a buffer budget to each queue in the network, our second model, the threshold-based model (TBM), simply fixes a maximum delay for each queue. Via a packet-level simulation, we confirm that the delay bounds guaranteed by both models are never exceeded and that no packet loss occurs. We further show that the TBM provides more flexibility with respect to the characteristics of the flows to be embedded and that it has the potential of accepting more flows in a given network. Finally, we show that the runtime cost for this increase in flexibility stays reasonable for online request processing in industrial scenarios.
Conference Paper
Full-text available
The Internet of Things (IoT) is on rise. More and more physical devices and their virtual shadows emerge and become accessible through IoT platforms. Marketplaces are being built to enable and monetize the access to IoT offerings, i.e., data and functions offered by platforms, things, and services. In order to maximize the usefulness of such IoT offerings we need mechanisms that allow their efficient and flexible composition. This paper describes a novel approach for such compositions. The approach is based on the notion of Recipes that define work-flows on how their ingredients, i.e., instances of IoT offerings, shall interact with each other. Furthermore the paper presents a novel user interface that enables users to create and instantiate recipes by selecting their ingredients. An example from the smart mobility domain guides through the paper, illustrates our approach, and demonstrates as a proof-of-concept.
New interactive video applications are increasingly emerging over the Internet; these interactive applications are characterized by high bandwidth requirements that fluctuates depending on end-user actions (e.g. less bandwidth is usually needed for stationary scenes). More importantly, this interactive class of services also involves a requirement for high responsiveness (i.e. low latency) from the network, in order to respond in real-time to end-user actions. One emerging service of this nature is 360° video streaming; another example is cloud-based gaming services. In this paper, we focus specifically on JPIP (JPEG 2000 Interactive Protocol) applications that support remote interactive video browsing with dynamic pan and zoom capabilities, as a highly representative example of the interactive service class. Existing network communication services are mostly agnostic to latency implications, and hence are not well adapted to such interactive applications. Meanwhile, explicit resource reservation protocols have not been widely deployed, and do not consider the time-varying dependencies that naturally arise in interactive applications. In this work, we leverage software defined networking (SDN) principles to support a proposed “interactive service” class. The main contributions of this work are a network-exposed application programming interface (API) that provides visibility into the state of the network, an SDN-assisted congestion control algorithm that utilizes network state information to achieve the desired low latency and high bandwidth utilization requirements, and a fair resource assignment algorithm that shares available bandwidth among interactive and non-interactive traffic dynamically – all without a reservation protocol.
Generally, cloud computing consists of providing virtualized and scalable resources as services through the Internet dynamically. According to the costumers' requests, various types of services which have the same functionality with different non-functionality features, are delivered in the cloud environment that often should be combined to satisfy the customer's complex requests. Recently, the composition of unique and loosely-coupled services into a preferred system is a prevalent industrial method and a commonly tracked research topic in academia. Service composition deals with generating new value-added services by merging some single existing services to provide an optimal composite service which includes formerly existing single and simple services aims to improve Quality of service (QoS). To the best of our knowledge, in spite of this issue's significance in cloud computing, there is not any comprehensive and systematic single research about this issue with a particular focus on QoS, which takes all metrics inspected in this paper into consideration. The most notable and impact of this paper is that it does not eliminate any paper in this scope, also it investigates more criteria than the current surveys. Hence, the purpose of this paper is to investigate the former mechanisms and techniques in terms of numerous factors. So, it adopts a systematic literature review, vital questions which can be enhanced by the research accomplished to address the stated problem have been extracted and raised. Afterwards, by classifying the researches into two primary groups (centralized and distributed) based on the environment of the problem and identifying the inspected QoS parameters, predefined goals, and developing environments, appropriate outcomes and statistics are attained that can contribute to upcoming works. In other words, this paper focuses to systematically categorize and evaluate the current research approaches and strategies on QoS-aware cloud service composition (published up to August 2017).
Due to the centralized control, network-wide monitoring and flow-level scheduling of Software-Defined-Networking (SDN), it can be utilized to achieve Quality of Service (QoS) for cloud applications and services, such as voice over IP, video conference and online games, etc. However, most existing approaches stay at the QoS framework design and test level, while few works focus on studying the basic QoS techniques supported by SDN. In this paper, we enable SDN with QoS guaranteed abilities, which could provide end-to-end QoS routing for each cloud user service. First of all, we implement an application identification technique on SDN controller to determine required QoS levels for each application type. Then, we implement a queue scheduling technique on SDN switch. It queues the application flows into different queues and schedules the flows out of the queues with different priorities. At last, we evaluate the effectiveness of the proposed SDN-based QoS technique through both theoretical and experimental analysis. Theoretical analysis shows that our methods can provide differentiated services for the application flows mapped to different QoS levels. Experiment results show that when the output interface has sufficiently available bandwidth, the delay can be reduced by 28% on average. In addition, for the application flow with the highest priority, our methods can reduce 99.99% delay and increase 90.17% throughput on average when the output interface utilization approaches to the maximum bandwidth limitation.
Conference Paper
Quality of Service (QoS) relies on the shaping of preferential delivery services for applications in favour of ensuring sufficient bandwidth, controlling latency and reducing packet loss. QoS can be achieved by prioritizing important broadband data traffic over the less important one. Thus, depending on the users’ needs, video, voice or data traffic take different priority based on the prevalent importance within a particular context. This prioritization might require changes in the configuration of each network entity which can be difficult in traditional network architecture. To this extent, this paper investigates the use of a QoS-based routing scheme over a Software Defined Network (SDN). A real SDN test-bed is constructed using Raspberry Pi computers as virtual SDN switches managed by a centralized controller. It is shown that a QoS-based routing approach over SDN generates enormous control possibilities and enables automation.
The global, ubiquitous usage of smart handsets and diverse wireless communication tools calls for a meticulous reexamination of complex and dynamic service componentization and remote invocation. In order to satisfy ever-increasing service requirements and enrich users' experiences, efficient service composition approaches, which leverage the computing resources on nearby devices to form an on-demand composite service, should be developed. This is especially true for situations that are confronted with limited local computing capacity and device mobility. For any mobile pervasive environment, execution reliability and latency of the composite service are major concerns that impact users' satisfaction. In this paper, we propose a novel three-staged approach which takes reliability and latency into account to solve a distributed service composition efficiently. First, the graph of the functional process description is decomposed into multiple path structures through a graph-traversing algorithm. Second, messages are forwarded among the network nodes (i.e., intelligent handsets) to search for the sub-solutions for these path structures. Finally, an efficient combinatorial optimization algorithm computes the optimal service composition by the selection from these sub-solutions. This approach is validated extensively in static and mobile environments, and the results show the effectiveness and outperformance of this approach over existing approaches.
Conference Paper
Quality of Service (QoS) - based bandwidth allocation plays a key role in real-time computing systems and applications such as voice IP, teleconferencing, and gaming. Likewise, customer services often need to be distinguished according to their service priorities and requirements. In this paper, we consider bandwidth allocation in the networks of a cloud carrier in which cloud users' requests are processed and transferred by a cloud provider subject to QoS requirements. We present a QoS-guaranteed approach for bandwidth allocation that satisfies QoS requirements for all priority cloud users by using Open vSwitch, based on software defined networking (SDN). We implement and test the proposed approach on the Global Environment for Networking Innovations (GENI). Experimental results show the effectiveness of the proposed approach.
This issue’s installment examines a software program reasoning about the world’s largest knowledge source. Ruben Verborgh and Jos De Roo describe how a small open source project can have a large impact. This is the fourth open source product discussed in the Impact department and the first written in the logic programming language Prolog.
Service-oriented computing (SOC) represents a paradigm for building distributed computing applications over the Internet. In the past decade, Web services composition has been an active area of research and development endeavors for application integration and interoperation. Although Web services composition has been heavily investigated, several issues related to dependability, ubiquity, personalization, among others, still need to be addressed, especially giving the recent rise of several new computing paradigms such as Cloud computing, social computing, and Web of Things. This article overviews the life cycle of Web services composition and surveys the main standards, research prototypes, and platforms. These standards, research prototypes, and platforms are assessed using a set of assessment criteria identified in the article. The paper also outlines several research opportunities and challenges for Web services composition.