Professional Documents
Culture Documents
Abstract— This paper is devoted to analysis of QoS parameters presented. The paper is focused on comparative analysis of
of WebRTC traffic presented for centralized Quality of Service (QoS) parameters, measured for three
videoconferencing system used for collaborative work. This different locations of the conference bridge: in private cloud,
system consists of a videoconference application, built in public cloud, in local network. Impact of the location of
according to the WebRTC architecture, and a telemetric terminals and impact of presence of telemetric traffic also are
system, built as the IoT environment. Tests were carried out taken into account.
for three locations of the conference bridge: in private cloud
(the OpenStack cloud), in public cloud (the AWS cloud) and in The rest of this paper is organized as follows. Section 2
local network. Results show, that conference bridge in a cloud describes a concept of integration of WebRTC with IoT.
is a good solution for the WebRTC, and additional Section 3 presents test environment, while Section 4
transmission of telemetric data do not affect the QoS discusses results of carried experiments. Section 5
parameters of WebRTC's media stream. summarizes our experiences.
Keywords- cloud, conference bridge, IoT, QoS, WebRTC
II. THE SYSTEM FOR REMOTE COLLABORATION
I. INTRODUCTION During the interactive remote collaboration the
conference systems are often used. Because the collaborative
The motivation being behind the introduction of Web work requires an exchange of various types of data,
Real-Time Communications (WebRTC) is to allow usage of collaborative systems must enable sharing many resources
typical web browsers for transmission of multimedia available in the end systems. Nowadays, in many cases (e.g.
streams, such as voice, video, gaming, and also supporting in telemedicine), it is necessary to share data from multiple
remote collaboration among users. Typically, transmission of devices, located near end users, that are built according to the
media information is done based on dedicated systems, thus IoT paradigm [14]. As a result, collaborative services must
preventing flexible transmission in newer installations. IETF provide teleconferencing services and data transfer from the
RTCWeb WG [1], supported by collaboration with W3C [2]. IoT devices.
The outcome of IETF RTCWeb WG is summarized in basic
RFCs defining WebRTC use cases [3], or reporting used The developed conference system uses WebRTC
audio codecs [4], or video codecs [5] but significant work is terminals (web browsers with full support for the WebRTC)
still ongoing and already documented in working drafts, for and the Kurento Media Server [15] as conference bridge.
example a draft defining data channels in WebRTC [6]. Brief The Kurento can work both running on a single server and in
description of WebRTC features and architecture can be a computing cloud (private or public) [16]. To transfer data
found in [7], [8], [9]. from IoT devices (in the following text, data coming from
IoT devices will also be referred as a telemetry data) between
One of challenges of modern ICT systems is integration the WebRTC terminals (via conference bridge Kurento), the
of the WebRTC and Internet of Things (IoT) [10]. WebRTC data channel (DataChannel in Fig. 1) was used.
Significant position among proposed solutions has usage of The data from the IoT devices are integrated and aggregated
the MQ Telemetry Transport (MQTT) signaling protocol, at the WebRTC terminal by a local broker. The broker was
implemented in IoT devices (small sensors and mobile written by the Authors with the use of the mosca [17] library.
devices), for WebRTC applications [11][12]. This Some improvements (as implementation of the QoS 2 level
integration is a complex process and requires new methods of the MQTT protoco [18]) were introduced. The broker was
for rapid prototyping of the new applications [13]. run on WebRTC terminals. As conference bridge, the
In this paper, an analysis of a system for collaborative Kurento Media Server (original software, without our fixes)
work that combines videoconferencing system (built was used. Conference application was written by the Authors
according to the WebRTC architecture) with IoT system is (with the use of libraries for a broker and the Kurento). As is
87
IV. RESULTS 700
88
TABLE I. MEAN THROUGHPUT (IN KBPS) OF MEDIA STREAM
a)
700
Endpoints Mean throughput [kbps]
600
Sender Receiver to Kurento from Kurento
]s 500
p
b Conference bridge in private cloud
[k 400
t from WebRTC
u
p mobile (nearby
h stationary 514.6 ± 4.4 510.8 ± 3.4
g 300
u
from Kurento location)
ro
h
T 200 stationary mobile (distant 514.3 ± 4.8 510.5 ± 3.9
location)
100
mobile (nearby stationary 562.6 ± 0.4 558.0 ± 0.8
0 location)
0 10 20 30 40 50 60
mobile (distant stationary 563.8 ± 1.2 558.0 ± 3.2
Time [s]
location)
Conference bridge in public cloud
b)
700 mobile (nearby
stationary 545.6 ± 1.2 543.2 ± 1.8
location)
600
stationary mobile (distant 545.3 ± 1.4 543.1 ± 1.9
s] 500 location)
p
b
k[ mobile (nearby stationary 580.8 ± 1.2 577.7 ± 1.5
t 400 from WebRTC
u
p location)
gh300
u
o
from Kurento
mobile (distant stationary 567.3 ± 1.5 553.7 ± 3.0
r
h
T 200 location)
100 Conference bridge in a local network
mobile (nearby
0 stationary 596.0 ± 0.7 593.8 ± 0.4
0 10 20 30 40 50 60 location)
Time [s]
stationary mobile (distant 595.4 ± 0.8 593.7 ± 0.6
location)
c) mobile (nearby stationary 592.2 ± 2.8 591.5 ± 1.7
700 location)
mobile (distant stationary 591.4 ± 3.1 591.0 ± 1.8
600
location)
]s 500
p
b
Mean delays and delay variances, computed for media
k[
t 400
u from WebRTC streams, are shown in Table 2. The smallest mean delays
p
h
g 300 from Kurento (from 80 to 85 milliseconds) were achieved in the case of the
u
o
r
h
Kurento server (conference bridge) located at the private
T 200
cloud. The greatest delays (from 279 to 285 milliseconds)
100 were observed if the conference bridge was located in the
0 public cloud. Delays measured for conference bridge was
0 10 20 30 40 50 60 located in local network (from 267 to 272 milliseconds) were
Time [s] close to delays achieved in a conferencing system with the
bridge in public cloud, although slightly smaller (1% to 5 %).
d)
700 In the case of conference bridge located in both private
600
cloud and local network, propagation delays, transmission
delays, and queuing delays are comparable. Large difference
]s 500
p between mean delays measured for this two locations of
kb
[ 400 Kurento server results from processing delay. Processing in
t from WebRTC
u
p
h
g 300 from Kurento
the local cloud was much faster than performed by a
u
ro dedicated server. Processing in the public cloud was even
h
T 200 faster, but, due to location in distant network, propagation
100 delays, transmission delays, and queuing delays are too large
0
to be compensated by higher processing speed.
0 10 20 30 40 50 60
Time [s]
As one might expect, fluctuations of end-to-end delay
were smallest in the case of both local locations of
Figure 4. Instantaneous throughput of a media (audio and associated conference bridge (private cloud and local network).
video) stream. Transmission: a, c, d) from stationary computer to the Variations calculated for public cloud were one order of
mobile one, b) from mobile computer to the stationary one. Location of magnitude larger (0.018 to 0.019) then in uncongested local
Kurento media server: a, b) in private cloud, c) in public cloud, d) in a local
network (0.002s to 0.003s).
network. Location of mobile computer: nearby location
89
TABLE II. END-TO-END DELAY TABLE III. TRANSMISSION ERRORS
90
TABLE IV. IMPACT OF TELEMETRIC (IOT DEVICES)
QoS level
Sender Receiver
0 1 2 0 1 2
stationary mobile (nearby location) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%)
stationary mobile (distant location) 0 (0.00%) 0 (0.00%) 0 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%)
mobile (nearby location) stationary 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%) 0 (0.00%) 0 (0.00%)
mobile (distant location) stationary 0 (0.00%) 0 (0.00%) 0 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%)
stationary mobile (nearby location) 16 (0.07%) 15 (0.07%) 15 (0.07%) 18 (0.08%) 16 (0.07%) 16 (0.07%)
stationary mobile (distant location) 16 (0.07%) 16 (0.07%) 16 (0.07%) 18 (0.08%) 16 (0.07%) 16 (0.07%)
mobile (nearby location) stationary 17 (0.08%) 16 (0.07%) 16 (0.07%) 19 (0.08%) 17 (0.08%) 17 (0.08%)
mobile (distant location) stationary 17 (0.08%) 15 (0.07%) 15 (0.07%) 19 (0.08%) 16 (0.07%) 16 (0.07%)
stationary mobile (nearby location) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%)
stationary mobile (distant location) 0 (0.00%) 0 (0.00%) 0 (0.00%) 1 (0.00%) 0 (0.00%) 0 (0.00%)
mobile (nearby location) stationary 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%)
mobile (distant location) stationary 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%) 1 (0.00%)
WebRTC represents a new solution of direct conferencing systems, IEEE Communications Magazine, 2013, Vol.
communication among users which can be seen as revisiting 51(4).
of peer-to-peer concept. Besides defining built-in features [9] A. Johnston, J. Yoakum and K. Singh, Taking on webRTC in an
enterprise, IEEE Communications Magazine, 2013, Vol. 51(4).
and aspects of WebRTC, there is significant interest in
[10] P. Bernier, “How IoT and WebRTC Can Change the World”,
studying cooperation of this technology with other important http://www.realtimecommunicationsworld.com/topics/realtimecomm
or novel solutions, such as conferencing tools, VoIP unicationsworld/articles/400358-how-iot-webrtc-change-world.htm
applications or IoT. [11] R. Bharath, P. Vaish and P. Rajalakshmi, "Implementation of
diagnostically driven compression algorithms via WebRTC for IoT
ACKNOWLEDGMENT enabled tele-sonography," IECBES 2016, Kuala Lumpur, pp. 204-
209. 2016.
The research reported in the chapter was supported by the [12] T. Sandholm, B. Magnusson and B. A. Johnsson, "An On-Demand
contract 11.11.230.018. WebRTC and IoT Device Tunneling Service for Hospitals," FiCloud-
2014, Barcelona, pp. 53-60, 2014.
[13] J. Janak and H. Schulzrinne, “Framework for rapid prototyping of
REFERENCES distributed IoT applications powered by WebRTC”, In Principles,
Systems and Applications of IP Telecommunications (IPTComm), pp.
[1] https://datatracker.ietf.org/wg/rtcweb/charter/ 1-7, 2016.
[2] http://www.w3.org/TR/webrtc/ [14] D. Gachet, M. de Buenaga, F. Aparicio and V. Padrón, "Integrating
Internet of Things and Cloud Computing for Health Services
[3] Ch. Holmberg, G. Eriksson and S. Hakansson, RFC 7478, Web Real- Provisioning: The Virtual Cloud Carer Project," IMIS 2012, Palermo,
Time Communication Use Cases and Requirements, Oct. 2015. pp. 918-921, 2012.
[4] A. Roach, RFC7742, WebRTC Video Processing and Codec [15] “What's Kurento – Kurento”, http://www.kurento.org/whats-kurento
Requirements, March 2016.
[16] https://webrtchacks.com/webrtcmedia-servers-in-the-cloud/.
[5] J.M. Valin and C. Bran, RFC7874, WebRTC Audio Codec and
Processing Requirements, May 2016. [17] https://github.com/mcollina/mosca
[6] J. Randell, S. Loreto and Tuexen M., WebRTC Data Channels, draft- [18] http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html
ietf-rtcweb-data-channel-13, Oct. 2015. [19] G. Ilya. “High Performance Browser Networking”, O'Reilly Media,
[7] S. Loreto and S. P. Romano, Real-Time Communications in the Web. 2013.
Issues, Achievements, and Ongoing Standardization Efforts, IEEE [20] https://aws.amazon.com/
Internet Computing, 2012. [21] https://aws.amazon.com/ec2/instance-types/,
[8] A. Amirante, T. Castaldi, L. Miniero and S. P. Romano, On the [22] https://www.openstack.org
seamless interaction between webRTC browsers and SIP-based
[23] http://mosquitto.org/
91