Conference PaperPDF Available

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

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:
... In this example, video and audio streams are connected to analytics components that feed into an aggregating intrusion detector and nally a component that is able to send noti cations. e recipe designer can further specify application-level constraints (e.g., minimum video frame rate) on the interactions between sensors and analysis services [25]. ...
... One possible storage mechanism for such data would be a semantic triple store such as Apache Jena 6 . With this semantic store, the system can take advantage of semantic reasoning and translation, as described in [25]. e con gurator controls the creation of the system and is responsible for con guring devices into a choreography. ...
... Example of a recipe combining multiple device services for object detection (Source:[25]). ...
Full-text available
In the industrial Internet of Things domain, applications are moving from the Cloud into the Edge, closer to the devices producing and consuming data. This means that applications move from the scalable and homogeneous Cloud environment into a potentially constrained heterogeneous Edge network. Making Edge applications reliable enough to fulfill Industry 4.0 use cases remains an open research challenge. Maintaining operation of an Edge system requires advanced management techniques to mitigate the failure of devices. This article tackles this challenge with a twofold approach: (1) a policy-enabled failure detector that enables adaptable failure detection and (2) an allocation component for the efficient selection of failure mitigation actions. The parameters and performance of the failure detection approach are evaluated, and the performance of an energy-efficient allocation technique is measured. Finally, a vision for a complete system and an example use case are presented.
... This work describes the latest findings on our research agenda to enable IoT applications as distributed choreographies. Our agenda started with the definition of the Recipe concept as template for IoT applications [6], continued by our approach for runtime management of such recipes [7], the dynamic and resilient management of IoT applications [8], and rule-based configuration of networks underlying the IoT application [9]. This work combines the results of these previous works and goes beyond by investigating, implementing, and evaluating an approach that automatically translates application-specific SPDI and QoS constraints into executable patterns/rules as well as their actual monitoring and enforcement. ...
... Based on the above outline model, we have implemented application-level QoS constraints on a semantics-based platform in our previous work [9]. Application-level QoS constraints refer to the possibility of defining such constraints on a high-level, independent of network-level specifics. ...
... Using application-level constraints, we can ensure the availability of bandwidth from application development onwards. For more information on the possible implementation of such constraints via a semantic reasoner, see [9]. ...
Full-text available
Various tools support developers in the creation of IoT applications. In general, such tools focus on the business logic, which is important for application development, however, for IoT applications in particular, it is crucial to consider the network, as they are intrinsically based on interconnected devices and services. IoT application developers do not have in depth expertise in configuring networks and physical connections between devices. Hence, approaches are required that automatically deduct these configurations. We address this challenge in this work with an architecture and associated data models that enable networking-aware IoT application development. We evaluate our approach in the context of an application for oil leakage detection in wind turbines.
... In this example, video and audio streams are connected to analytics components that feed into an aggregating intrusion detector and nally a component that is able to send noti cations. e recipe designer can further specify application-level constraints (e.g., minimum video frame rate) on the interactions between sensors and analysis services [25]. ...
... One possible storage mechanism for such data would be a semantic triple store such as Apache Jena 6 . With this semantic store, the system can take advantage of semantic reasoning and translation, as described in [25]. e con gurator controls the creation of the system and is responsible for con guring devices into a choreography. ...
... Example of a recipe combining multiple device services for object detection (Source:[25]). ...
Full-text available
In the industrial Internet of Things domain, applications are moving from the Cloud into the edge, closer to the devices producing and consuming data. This means applications move from the scalable and homogeneous cloud environment into a constrained heterogeneous edge network. Making edge applications reliable enough to fulfill Industrie 4.0 use cases is still an open research challenge. Maintaining operation of an edge system requires advanced management techniques to mitigate the failure of devices. This paper tackles this challenge with a twofold approach: (1) a policy-enabled failure detector that enables adaptable failure detection and (2) an allocation component for the efficient selection of failure mitigation actions. We evaluate the parameters and performance of our failure detection approach and the performance of an energy-efficient allocation technique, and present a vision for a complete system as well as an example use case.
... Con el desarrollo de un entorno de pruebas, permite evaluar la capacidad de enrutamiento del protocolo Openflow, y el balance de carga de los controladores SDN, el cual son uno de los principales inconvenientes mencionados en algunos estudios realizados previamente en [4], [5], [6]. La principal motivación al realizar el prototipo de pruebas, se basa en la literatura científica sobre el presente y el futuro de las redes donde el tráfico será realmente abundante. ...
... Otra herramienta utilizada para la emulación de redes definidas por software es Mininet. Seeger et al. implementaron Mininet para medir las limitaciones de SDN al configurar QoS en los dispositivos de IdC [5]. La arquitectura SDN para el IdC propuesta por Sinh et al. [6] utilizan Mininet en el desarrollo del prototipo de simulación. ...
Full-text available
La Virtualización de las Funciones de Red (NFV) surge como una de las tecnologías más prometedoras para la gestión de la nueva generación de Internet. En los últimos años, los sistemas informáticos y de comunicación han evolucionado enormemente y han influido en el desarrollo de las infraestructuras de red en términos de escalabilidad, programabilidad y gestión dinámica. El número de dispositivos conectados crece exponencialmente con el desarrollo de Internet de las Cosas (IdC) y de múltiples aplicaciones en línea. Con la evolución de nuevas tecnologías emergentes, aparece el Software Defined Networking (SDN) y la NFV, permitiendo una gestión flexible, dinámica y adaptable para optimizar los recursos de la red. En un entorno de pruebas de IdC, se desarrolló una arquitectura de red virtual, la cual proporciona una plataforma que nos permite evaluar la orquestación de un controlador SDN distribuido. Se evaluó en términos de simulación y experimentación aspectos sobre el tratamiento flujo de datos masivos, el análisis de tráfico de red granulado y la utilización de los recursos de cada uno de los dispositivos conectados. Este trabajo de investigación pretende mejorar significativamente la ingeniería de trafica a gran escala, con un enfoque de distribución de la gestión de carga de los nodos controladores, permitiendo una gestión dinámica y flexible. Los resultados experimentales muestran un buen rendimiento de la plataforma de pruebas desarrollada.
... Karakus and Durresi [42] provided survey in SDN technology and described how it could be utilize in QoS provisioning for network applications. Additionally, Seeger et al. [43] proposed an automated translation framework for converting QoS network constraints into SDN configuration. Also, an automated QoS mechanism for SDN network was investigated in [44]. ...
Full-text available
Internet of Things (IoT) services have grown substantially in recent years. Consequently, IoT service providers (SPs) are emerging in the market and competing to offer their services. Many IoT applications utilize these services in an integrated manner with different Quality-of-Service (QoS) requirements. Thus, the provisioning of end-to-end QoS is getting more indispensable for IoT platforms. However, provisioning the system by using only QoS metrics without considering user experiences is not sufficient. Recently, Quality of Experience (QoE) model has become a promising approach to quantify actual user experiences of services. A holistic design approach that considers constraints of various QoS/QoE metrics together is needed to satisfy requirements of these applications and services. Besides, IoT services may operate in environments with limited resources. Therefore, effective management of services and system resources is essential for QoS/QoE support. This paper provides a comprehensive survey for the state-of-the-art studies on IoT services with QoS/QoE perspective. Our contributions are threefold: 1) QoE-driven architecture is demonstrated by classifying vital components according to QoE-related functions in prior studies; 2) QoE metrics and QoE optimization objectives are classified by corresponding system and resource control problems in the architecture; and 3) QoE-aware resource management e.g., QoE-aware offloading, placement and data caching policies with recent Machine Learning approaches are extensively reviewed.
... In fact, both industrial and aca-demic research fields have recently demonstrated how the adoption of dynamically configurable switches and routers can greatly improve the management of industrial network flows. However, traditional IP-based solutions identify traffic flows by exploiting network parameters such as IP addresses, ports, and transport protocols [4]- [9]. Such solutions present notable limits, since they do not allow to differentiate among traffic flows generated by the same network equipment but related to different applications. ...
Full-text available
The vast number of smart cloud applications that communicate with the “things” over a variety of physical networks and communication protocols contribute to the rise of complexity in Internet of Things (IoT) systems. The diversity of end‐user requirements related to the volume of generated data, its variety, and the velocity of its transmission makes quality of service (QoS) provisioning even more crucial and challenging in IoT. This paper provides a comprehensive and up‐to‐date survey of QoS support in IoT networks and communication protocols. An analysis of the QoS‐aware IoT architectures, layer‐dependent QoS metrics, and network resource optimization methods utilized in IoT systems are given. The limitations of the current state‐of‐the‐art studies for efficient delivery of QoS metrics are discussed. The paper concludes with future research directions on end‐to‐end QoS provisioning in IoT. This paper provides a comprehensive and up‐to‐date survey of QoS support in IoT networks and communication protocols. An analysis of the QoS‐aware IoT architectures, layer‐dependent QoS metrics, and network resource optimization methods utilized in IoT systems are given. The limitations of the current state of the art studies for efficient delivery of QoS metrics are discussed. The paper concludes with future research directions on end‐to‐end QoS provisioning in IoT.
Wireless sensor-actuator network (WSAN) technology is gaining rapid adoption by industrial Internet of Things applications in recent years. A WSAN typically connects sensors, actuators, and controllers in industrial facilities, such as steel mills, oil refineries, chemical plants, and infrastructures implementing complex monitoring and control processes. IEEE 802.15.4–based WSANs operate at low power and can be manufactured inexpensively, which makes them ideal where battery lifetime and costs are important. Recent studies have shown that the selection of network parameters has a significant effect on network performance. However, the current practice of parameter selection is largely based on experience and rules of thumb involving a coarse-grained analysis of expected network load and dynamics or measurements during a few field trials, resulting in non-optimal decisions in many cases. In this work, we develop P-SAFE (Parameter Selection and Adaptation FramEwork), which optimally selects the network parameters based on the application quality-of-service demands and adapts the parameter configuration at runtime to consistently satisfy the dynamic requirements. We implement P-SAFE and evaluate it on three physical testbeds. Experimental results show that our solution can significantly better meet the application quality-of-service demand compared to the state of the art.
Conference Paper
Full-text available
IoT systems are growing larger and larger and are becoming suitable for basic automation tasks. One of the features IoT automation systems can provide is dealing with a dynamic system -- Devices leaving and joining the system during operation. Additionally, IoT automation systems operate in a decentralized manner. Current commercial automation systems have difficulty providing these features. Integrating new devices into an automation system takes manual intervention. Additionally, automation systems also require central entities to orchestrate the operation of participants. With smarter sensors and actors, we can move control operations into software deployed on a decentralized network of devices, and provide support for dynamic systems. In this paper, we present a framework for automation systems that demonstrates these two properties (distributed and dynamic). We represent applications as semantically described data flows that are run decentrally on participating devices, and connected at runtime via rules. This allows integrating new devices into applications without manual interaction and removes central controllers from the equation. This approach provides similar features to current automation systems (central engineering, multiple instantiation of applications), but enables distributed and dynamic operation. We demonstrate satisfying performance of the system via a quantitative evaluation.
Full-text available
VirtuWind proposes the application of Software Defined Networking (SDN) and Network Functions Virtualization (NFV) in critical infrastructure networks. We aim at introducing network programmability, reconfigurability and multi-tenant capability both inside isolated and inter-connected industrial networks. Henceforth, we present the design of the VirtuWind architecture that addresses the requirements of industrial communications: granular Quality of Service (QoS) guarantees, system modularity and secure and isolated per-tenant network access. We present the functional components of our architecture and provide an overview of the appropriate realization mechanisms. Finally, we map two exemplary industrial system use-cases to the designed architecture to showcase its applicability in an exemplary industrial wind park network.
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.