Modeling Aggregate Input Load of Interoperable Smart City Services

The Internet of Things (IoT) is expanding and reaching the maturity level beyond initial deployments. An integrative and interoperable IoT platform proves to be a suitable execution environment for Smart City services because users simultaneously use multiple services, while an IoT platform enables cross-service data sharing. A large number of various IoT and mobile devices as well as the corresponding services can generate tremendous input load on an underlying IoT platform. Thus, it is crucial to analyze the overall input rate on Smart City services to ensure predefined quality of service (e.g., low latency required by some IoT services). An aggregate input rate which characterizes a real world deployment can be used to check if a platform is able to adequately support multiple services running in parallel and to evaluate its overall performance. In this paper we review IoT-based Smart City services to identify key applications characterizing the domain, e.g., smart mobility, smart utilities, and citizen-driven mobile crowd sensing services. Next, we analyze the potential load which such applications pose on IoT services that continuously process the generated data streams. The analysis is used to create a model estimating an aggregate load generated by Smart City applications. We simulate a number of characteristic application compositions to provide insight about the aggregate input load and its potential impact on the performance of Smart City services. The proposed model is a first step towards predicting the processing load of Smart City services to facilitate the assessment and planning of required resources for continuous processing of sensor data in the context of Smart City services.


INTRODUCTION
e Internet of ings (IoT) is reaching the peak of expectations according to Gartner [19], and we are witnessing a consolidation of the developed technologies and paradigms beyond initial trials and prototype solutions. IoT platforms are nowadays increasingly deployed to support and connect a large number of heterogeneous IoT devices, as well as to store and continuously process the generated data streams. us, the digitalization of our everyday environment results in a huge number of novel IoT services addressing the needs of citizens (e.g., monitoring of personal pollution exposure or live tra c data). In parallel, various IoT platforms which follow the requirements of domain-speci c applications have emerged to create the so called IoT verticals, individual vertically integrated systems focusing on a single domain. e consolidation of IoT technologies has started by addressing one of the most pressing limitations of the fragmented IoT universe-the lack of interoperability. e H2020 project symbIoTe is developing an interoperability and mediation framework that enables cooperation and interaction between IoT verticals to create an environment for cross-domain IoT services [30]. To achieve an interoperable ecosystem, it is necessary to study and analyze individual performance of a service, but also to determine aggregate performance factors impacting all services running in parallel, i.e., to analyze individual performance requirements posed on underlying IoT platforms and the cumulative requirements related to all services.
Smart City is an ideal example of an interconnected ecosystem which serves as a driver for interoperable IoT deployments, especially in terms of connecting various domains and creating di erent IoT services. IoT platforms serving the Smart City domain collect, store and process all data generated in urban environments regardless of their source: these can be xed sensors, mobile sensors mounted on public transportation, or smartphones with built-in sensors carried by citizens who wish to improve the quality of life in their city (mobile crowd sensing, MCS). e Smart Santander project [29] is a large testbed and an example of a real-world Smart City deployment. Such platforms connect data sources with various services, and thus create an environment for deploying novel context-aware services which are particularly useful to end users (e.g., smart mobility services with alerts and noti cations). e publish/subscribe paradigm has been identi ed as a suitable communication solution enabling ad hoc and non-blocking component interactions in highly distributed environments, such as IoT platforms in the Smart City domain [21]. e paradigm is designed to send data only to parties that are interested in particular data objects, and o ers the means to lter unnecessary data close to a production site, so that the system is not congested with irrelevant data [2]. Despite of its favorable properties, when designing publish/subscribe solutions for IoT platforms, we need to take into account the behavior of communicating parties to be able to validate the overall system performance. In the context of a Smart City, data consumer is a Smart City platform that has to store and process the incoming data, while all sensors and smartphone applications serve as data sources that constantly feed the platform with new data. To analyze the overall performance of such integrative platforms processing data streams from a multitude of sources, we rst need to asses the load generated by those data sources.
In this paper we classify Smart City services with regard to their input load posed to an underlying platform assuming a normal workload. Additionally, we provide an estimation of an aggregate input load when multiple services are deployed in parallel. We focus on the load generated at the platform input point by all data sources (sensors and user applications involved in MCS tasks) during the process of data acquisition, but we do not take into account load that is generated by speci c user requests, either one-time or continuous user queries. Although user requests also have signi cant impact on an aggregate input load, we do not investigate them further in this paper due to the lack of information about their characteristics (the frequency of requests, noti cation triggers and amount) in literature.
To summarize, our main contributions are the following: 1. analysis of Smart City services for an integrative IoT platforms; 2. classi cation and characterization of services in terms of the generated input load, and 3. simulation that estimates the cumulative input load for aggregated Smart City services. Evaluation of an IoT solution usually focuses on performance tests to identify service limitations by means of a synthetic input rate, and typically does not assess system performance under realistic input load. is paper provides insight about the input rates which can be expected in realworld service deployments, so that IoT solutions can be evaluated with regard to their performance in real-world environments. e rest of the paper is structured in the following way: Section 2 provides an overview of related work, while Section 3 introduces an overview of deployments and classi cation of Smart City services according to their application domains. Section 4 provides insights about the characteristics of a service input load and analyzes an aggregate input load in cases when multiple services are running in parallel, while Section 5 concludes the paper and gives directions for future work.

RELATED WORK
Smart city. Early works have recognized that the IoT will drive a signi cant change in habitation of urban areas. Gluhak et al. studied multiple deployments of IoT testbeds, and have evaluated prototypical services in the Smart City environment [15]. e authors discuss requirements and challenges that need to be addressed to enable proper experimentation with IoT platforms. Although their work is published in early phase of the IoT, they already stressed the importance of enabling the concurrency in service execution, handling mobility of entities and impact of human users to the overall system performance and acceptance. Jalali et al. present enabling technologies and an architecture for the Smart City environment, and point to aggregation of data during its transfer from the source to the core network where an IoT platform will store data for future use [20]. e paper also presents applications that will drive teh development of Smart City architectures. A more detailed analysis of Smart City services and application is available in [7] which focuses on positive synergy of a novel concept called the Cloud of ings, which interconnects the areas of Cloud Computing with IoT. In addition to the example usage of cloud-driven IoT applications, Bo a et al. also identify several challenges, which include the performance of such platforms. e authors stress that the main challenge is to obtain stable and acceptable network performance to reach the Cloud where data is stored, because the broadband increase in capacity did not follow the storage and computation evolution [7]. In [34] Yin et al. present a literature review that analyzes the Smart City domain from the four di erent perspectives: technical, application, system integration and data processing. e authors consider some of non-technical issues important for further proliferation of Smart City services, such as city planning, citizen behavior and city tra c, which can signi cantly in uence the overall performance of a Smart City environment. Neiro i et al. study Smart Cities from a socio-economical point of view, using statistical parameters of urban environments, such as population, size, economical development, to analyze adoption of di erent Smart City initiatives (i.e. applications) [27].
Input load/arrival rate. Modeling of input load or arrival rate is very important in di erent domains, not only in the area of computer networks. Literature contains various techniques to model and asses the input load or arrival rate of customer requests for almost all purposes where queueing theory [16] can be applied. For example, the arrival rate in uences customer waiting time in a bank [33] or distribution of the input load is used as parameter to model the behavior of road tra c ow [31]. e area of telecommunications utilizes modeling of input load to evaluate the performance of call centers, and to optimize their operations. e authors of [28] are experimenting with the well-accepted arrival rate model for the call center to model and evaluate the impact of arrival rate uncertainty on the call center performance. e authors stress that the performance is highly sensitive to the arrival rate estimation. is points to the fact that such analysis should be done for other domains as well, e.g., for performance evaluation of web applications or distributed systems implemented using microservices. Zink et al. study network tra c generated within a campus network focusing on the YouTube video service [36]. e authors recorded tra c traces and modeled the number of requests posed to the service in order to gain insight about the characteristics of the tra c, such as request distribution, frequency or clip popularity, which were used to create synthetic tra c traces that can be used in further experiments. eir work is somewhat similar to ours, with a di erence that we model the IoT domain and we do not have access to real input load traces (e.g. tra c traces), rather we use input load distributions as reported in relevant literature. Some ndings characterizing the IoT network tra c and corresponding models can be found in literature. Huang et al. report a model for congestion control in IoT in which they used the queueing theory to analyze the performance of the model [18]. e authors built their work on steady state probability distribution and they assume the exponential distribution for arrival rate of events. Similar work is reported by Awan et al. who study the ality of Service for delay sensitive IoT applications, and also assume an exponential distribution of the overall input load [4]. In this paper, we provide a more thorough analysis of distributions characterizing input load generated by real-world IoT applications.
Performance evaluation. In our previous work we developed the CloUd-based PUblish/Subscribe middleware (CUPUS) used as an underlying communication solution for Mobile Crowd Sensing [2]. e CUPUS middleware was compared to the well-known protocols used in IoT, namely the Message eue Telemetry Transport (MQTT) protocol and Constrained Application Protocol (CoAP) and, in addition, its performance was evaluated using a real-world data set [2]. Although, we used a data set obtained during a realworld trial of a mobile crowd sensing service in the evaluation, but the input rate was synthetically created using the acquired data set. e synthetic input rate was used to test the limitations of CUPUS, rather then to investigate its performance under a realistic load. In contrast to [2], this paper investigates input rates of real-world IoT service deployments, so that researchers can perform system evaluations, both in terms of performance limitations and expected performance in a real-world deployment. Similarly, Vandikas and Tsiatsis performed performance evaluation of IoT-Framework, a framework built on open source components used to disseminate the generated data streams in an IoT environment [32]. e authors evaluate their system with regard to maximum throughput without experimenting with the distribution of input rate and only focus on the total number of data producers (i.e. an overall input rate). In addition to the experimental evaluation and evaluation using the queueing theory principles, the literature reports on evaluation using analytical models developed for a speci c group of solutions. For example, Mühl et al. analyze publish-subscribe systems by modeling the interrelationship between messages in the system and develop a novel general model that describes the system behavior in details [25] as opposed to typical queueing theory models and basic metrics. A similar approach is used in this paper. We try to dissect the aggregate input rate of IoT services into its basic components by analyzing individual services generating the load, instead of using a single distribution as a parameter to represent cumulative input rate.

SMART CITY SERVICES
In recent years, the Smart City concept has a ract a lot of interest. Although there is no single de nition of a Smart City in the literature, all de nitions point out that a Smart City can be de ned as a system that uses Information and Communication Technologies (ICT) to meet the citizens' needs and improve the e ciency of city services. More speci cally, the Smart City refers to safe, secure, environmental and e cient urban center with advanced infrastructure which integrates various public services, such as lighting, tra c or energy production, and thus increases their e ciency, reduces costs and power consumption, improves communication among the sub-systems and stimulates sustainable economic growth and a high quality of life [5,9].
Furthermore, Pike Research 1 is forecasting that the number of people living in cities will almost double -from 3.6 to 6.3 billion by 2050 which will require the adjustment of city authorities and services to enable the desired quality of life to their citizens. is can be achieved by using smart services which enable real-time monitoring and automated control of city infrastructure with less or even without human intervention [12]. Smart City services are usually categorized across multiple domains, including Smart Governance, Smart Mobility, Smart Utilities, Smart Buildings, and Smart Environment [35], which are recognized as key factors that express urban growth and development. Typically, smart services use numerous sensors deployed in an urban area (either heterogeneous or multiple instances of the same sensor type) which communicate with a remote IoT platform located in the cloud. Figure 1 shows a highly distributed architecture of a Smart City environment with multiple sensor instances which use publish/subscribe paradigm to communicate. ose sensors are either static (e.g., sensors deployed on tra c lights, within buildings, etc.) or mobile (e.g., sensors deployed on vehicles, carried by citizens, etc.), and create vast amounts of data either periodically or on demand. Since each service has different requirements, they di er both in terms of generated input load and expected behavior. In the rest of this section, we brie y describe Smart City services in various domains and provide a short overview of services that have been implemented in di erent Smart City testbeds across Europe.

Smart Governance
Smart governance incorporates all public services which enable city authorities to e ciently communicate with citizens and to o er information in a secure and easily accessible way. Such services aim to address a number of challenges facing public sector organizations through citizen engagement platforms, such as e-Government. For example, the government can collect and analyze citizens' data to provide more e cient services for community management. Another example is a smart medical and healthcare system which serves to maintain all patient health records, can reduce cost and enhance the e ciency and quality of healthcare systems.

Smart Mobility
Smart mobility, i.e., e cient transportation has a signi cant role in the Smart City concept. Nowadays, great emphasis is put on the use of smart technologies to establish a smart tra c management system which includes monitoring of road conditions, free parking spots, automatic control of tra c lights, etc. Typically, such services exploit di erent sensors deployed on vehicles and public infrastructure, or involve individuals who continuously contribute tra c-related data to the application servers to estimate current road conditions. is information is of great importance both for citizens to adjust their routes while moving through the city, and for city authorities to plan the road infrastructure and devise adequate measures when needed. We distinguish between two types of services, those which use static sensors deployed on tra c lights or road segments that periodically send data, and those which exploit users who opportunistically collect data while moving through the city.

Smart Utilities
Smart utilities comprise di erent services deployed in homes to achieve intelligent control of various smart appliances (e.g., TV, refrigerator, washer, thermostat, etc.), lighting system, security cameras, gas sensors, or household energy consumption. For instance, by using a smart thermostat it is possible to remotely control house temperature and adjust heating/cooling to enhance the level of comfort before the owner enters the house, while intelligent control of security cameras and alarm systems enables real-time intrusion detections and appropriate reactions. Smart lighting service can be used to adjust the light illumination based on human movements, user preferences and ambient conditions. Similar, smart lighting service can be adopted on street lighting systems to reduce energy consumption since according to International Energy Agency report 19% of energy usage in the world is used for lighting [3]. Smart lighting service enables remote control of street lights to optimize the lamp intensity according to weather conditions and daylight availability. All those services require continuous monitoring and periodical data transmissions to a central IoT platform.

Smart Buildings
In recent years, a lot of a ention is put on the intelligent design of buildings to enable advanced sensing, remote control and automation, as well as energy transmission and consumption monitoring. One example of a smart building service is continuous maintenance of its structural health which includes vibration monitoring, location of damages and predictions of its remaining lifetime. Such service typically uses di erent sensors deployed in buildings and surrounding areas which periodically communicate with a remote IoT platform. An important aspect of the smart building infrastructure is energy consumption monitoring which can be achieved with smart meters. Smart metering services can collect information from di erent devices, capture energy consumption in (near) realtime, as well as remotely control and adjust electrical power usage. Although smart meter typically refers to an electricity meter, smart buildings can also be equipped with smart devices measuring natural gas and water consumption. Such devices enable end-consumers

Smart Environment
Over the past few years, scientists are investigating the impact of environmental pollution on human health. It has been shown that exposure to tra c-related air pollution can cause di erent respiratory problems [17], while prolonged noise exposure can lead to sleep disturbance, cardiovascular diseases, hearing loss or mental health problems [11]. erefore, city authorities aim to promptly identify contaminated areas and devise appropriate actions by using both static, as well as, mobile pollution sensors to densely monitor noise and air quality in big cities. Another important segment of smart environment is waste management control service which requires intelligent waste containers that are able to detect waste levels and improve the quality of recycling as well as garbage collection cycles.
Some of the aforementioned services have already been implemented in di erent real-world Smart City deployments. In Table 1 we give a brief overview of currently available services in various Smart City testbeds across Europe which will be used in the following section to estimate their data distributions and generated input load.

INPUT LOAD OF SMART CITY SERVICES
In this section we analyze the input load of a service in relation to its characteristics, namely: individual behavior which describes behavior of a single instance of a service, number of deployments or installations where we try to asses order of magnitude of running instances in a single Smart City, input load which represents probability distribution of input load that is created by a service, and parameters used in later analysis that describe the identi ed distribution. Additionally, we study the input load of service composition, which provides insight into the aggregate input load and its characteristics. Table 2 summarizes the description of analyzed services regarding its load posed onto an underlying platform. In comparison to Table 1, we removed the smart governance services, namely citizen services and healthcare, since those two services are usually focused on a single citizen, i.e., most of data is personal and con dential and the data does not have real value for anyone else except the current user, so it is not widely shared within a community. Such services are o en centralized and literature does not report on usage patterns, so they are excluded from further analysis. We distinguish three types of sensors used across Smart City services: 1) xed sensors that are mounted on a physical object and do not change location (e.g., sensors for monitoring building's structural health), 2) nomadic sensors that can change their location while they are o ine (e.g., sensors mounted on a waste bin) and 3) mobile sensors which are mobile during their operation (e.g., wearable sensors for air quality monitoring). We do not speci cally distinguish the services based on the type of used sensors, and in further analysis we consider only the mobile air quality service as fully mobile, and we do not make a distinction between xed and nomadic sensors. Individual behavior of a sensor installation is taken from literature, and the number of deployments indicates only the order of magnitude, without the intention to give a real number, because it is hard to asses it correctly, since Smart City deployments grow continuously. e input load distribution is derived from the individual behavior, with an assumption that xed sensors are not synchronized in their sensing cycles (i.e., we assume uniform distribution of the sensing cycles start time). A mobile air quality service depends on citizens who start them and later on in this section we report our ndings regarding the input load distribution of such a service. Distribution parameters were derived from the rst two columns, and the goal is to give an order of magnitude of the distribution parameters, not the exact values.
We identi ed the two di erent probability distributions of input load for Smart City services. One is the degenerate distribution, a distribution in which a random variable can have only a single value, i.e. a distribution that gives a constant value for all outcomes. e second identi ed distribution is the Poisson distribution, which is widely used for modeling the probability of an event occurring over a certain interval. e Poisson distribution is used in queueing theory to model the input load of a system and it has only one parameter which can be obtained empirically (e.g., it is used to For example a tra c congestion service developed in the Padova Smart City project which sends one data packet every 10 minutes per each deployed device, where the number of devices is constant in time [35] and sensing intervals are uniformly distributed in time, is described with a degenerate distribution modeling the input load. If 10 such sensors are deployed in a Smart City, the expected value of the input load is 1 publication/minute. Another example of a xed deployment of sensors is the smart metering service in which devices periodically collect information every 10 to 60 minutes, depending on country regulations [10], and due to uncertainty of inter-arrival times which are modeled by the exponential distribution, the input load of such service can be modeled using the Poisson distribution [14]. e air quality and noise monitoring services in the city of Padova use static sensors which periodically send data to the application servers, while the 'Sense the Zagreb Air' project [1] uses mobile users to opportunistically collect air quality data with mobile phones and wearable sensors. e setup with xed stations produces data with a constant rate, while the input load of mobile service is not easily predictable. We have analyzed the data acquired by real users during the 'Sense the Zagreb Air' project to determine the distribution of the input load generated by such service. e project organized a measurement campaign in July 2014 in Zagreb, Croatia, with volunteers that were collecting data while they were being mobile. We analyzed the data and obtained two graphs that characterize the input load of the mobile air quality service. Figure   3 shows the distribution of input load of the service for two di erent periods. e campaign was divided in two parts, during one part volunteers were carrying a sensor on their own, and during the second part a guided tour was organized when all volunteers received exact directions where to perform air quality measurements. Figure  3a represents freelance sensing between 5 PM and 6 PM every day of the campaign and Figure 3b represents a guided tour on the rst day of the campaign (between 11 AM and 2 PM). We modeled input load with the Poisson distribution with good results for both scenarios. For the rst scenario, the MAE parameter was 0.0025, while for the second scenario the MAE parameter was 0.0122. e analysis also shows that the distribution parameter (i.e., λ which represents the expected value) changes depending on the time of day, daily migrations and user incentives. It is interesting to observe that the guided measurement tour involved all 20 volunteers with all sensors adjusted to generated measurements periodically every 20 seconds, so the expected number of measurements (i.e. input load) would be close to 60. However, the analysis showed that the Poisson distribution with the λ = 30 shows the best t. Further investigation of this phenomenon can be made, but it is beyond the scope of this paper.

Aggregate input load of multiple services
is subsection presents the analysis of aggregate input load when multiple services are running in parallel. e goal is to present the probability mass function that describes the aggregate load generated by services. Such distribution can be used to generate synthetic input load for testing the performance of a system with real-world parameters of generated data. First, we present a generic formula to calculate probability mass function and later we demonstrate it using the above mentioned services.
To obtain distribution (i.e., the probability mass function) of the aggregate input load of two services, it is necessary to calculate convolution of the two probability distributions, where each service input load is represented by its distribution. More formally, we form a new independent random variable Z which is de ned as Z = X + Y , where X represents an independent random variable of input load of the rst service and Y represents an independent random variable of input load of the second service. e probability mass function is calculated as follows: where P(X ) and P(Y ) represent the probability mass functions of input load of the rst and second service, respectively.
To demonstrate the aggregate input load with di erent distributions, we calculate the probability mass functions for three mixture of services with various combinations of the distributions.
To calculate the aggregate input load of the tra c and parking sensors, we calculate convolution of two degenerate distributions, with di erent distribution parameters. e probability mass function of the degenerate distribution is de ned as follows: To calculate the probability mass function of the aggregate input load for the tra c and parking service we calculate the convolution using Equation 1 as follows: where X and Y represent independent random variables of input load for the tra c and parking service, respectively. e only point where the product of aggregate probability mass functions is equal to 1 is when aggregate independent variable Z = c t r af + c par k . All three aggregate probability mass functions are shown in Figure 4a. e is limited between 0 and z since individual distributions do not have de ned value for non-positive arguments. e same approach can be used to calculate the aggregate input load of two services which have di erent distributions, i.e. the degenerate and Poisson distribution. e probability mass function of the Poisson distribution with parameter λ, which also de nes the expected value of the distribution, is de ned as follows: e aggregate probability mass function is calculated as follows: = P Pois (Y = z − c t r af ; λ mob−air ) where P de (X = i; c t r af ) represents the degenerate distribution of the tra c service and P Pois (Y = z − i; λ mob−air ) represents the input load distribution of the mobile air quality service. Such service can be used for example to discover a correlation between tra c congestion and level of air pollutants. e aggregate distribution mass function is in fact the shi ed Poisson distribution for the value of degenerate distribution. e expected value of the aggregate input load is E(Z ) = c t r af + λ mob−air , while the variance is the same as for the Poisson distribution of the mobile air quality service V ar (Z ) = λ mob−air . e aggregate probability mass function of the degenerate and Poisson distribution is shown in Figure 4b. e convolution of the two Poisson distributions, i.e., the input load of mobile air quality and smart metering service is resulting also in the Poisson distribution with the parameter which is the sum of the two parameters from individual services, as shown in Figure 4c. e aggregate probability mass function is calculated as follows: = P Pois (Z = z; λ met er + λ mob−air ) e expected value and the variance is de ned by the Poisson distribution parameter E(Z ) = V ar (Z ) = λ met er + λ mob−air .
Except the two distributions reported in literature, also the power-law probability distribution can be interesting, because it is used to model geographical distribution of mobile users [24] for a single time interval. We omi ed it from the analysis in this paper, because further investigation is necessary to demonstrate if a geoaware service (i.e., a service which utilizes current location of a user) would also produce an input load that follows the power-law distribution.
So far, we analyzed the aggregate input load for a case when multiple services are running in parallel, but services can be mutually exclusive where execution of the rst service stops execution of the second service. In such a case, to calculate the aggregate input load of two services, it is necessary to calculate mixture distribution, where each service input load is represented by its probability mass function (P i ) and its weight (i.e. the occurrence probability) w i . e probability mass function for mixture distribution is calculated as follows: Mixture distribution is used to model an overall input load when users are migrating from one service to another, and weights represent the service share. Additionally, it is used to model an overall input load of a service that has multiple modes of operation, where each mode is represented with its own distribution. We presented that the mobile air quality service has di erent distribution parameters during the day and related to the user involvement, so to model overall input load of such service we calculate mixture distribution: P(Z = z) = w 1 · P P ois (X = z; λ mob−air 1 ) +w 2 · P P ois (Y = z; λ mob−air 2 ), where P Pois (z; λ mob−air 1/2 ) represent the distribution of sensing modes, and weights w 1/2 represent the share of users that are involved in the one or another mode. e probability mass function with di erent shares of user (i.e. mixtures) is shown in Figure 5.
e expected value is calculated as a weighted sum of individual expected values: E(Z ) = w 1 · λ mob−air 1 + w 2 · λ mob−air 2 e output of the mixture distribution can be used as an input to convolution of distributions and vice versa, so with these two

Implications on performance evaluation
To asses the total aggregate input load of all Smart City services to an underlying IoT platform, we combine all distributions identi ed in Table 2.
e aggregate input load consists of the degenerate and Poisson distribution, where the expected value is E(all − ser ices) = 270.1pub/min. Since we did not present an exact number of deployments, but rather only identi ed an order of magnitude, we can conclude that a Smart City IoT platform should support 1000 publications per minute to be able to process all data in (near) real-time. Studies regarding platform evaluation show that IoT platforms can process input load of that size and even 10 times higher load [2,32]. Although IoT platforms posses suitable techniques to process the identi ed load, continuous improvement is very important, because the number of deployed devices and involved users in IoT is constantly increasing (with expectations up to 50 billion by 2020 [13]). If we analyze a share of individual services in the total aggregate input load, we can observe that a mobile crowd sensing paradigm (e.g. the mobile air quality monitoring) is already responsible for a large part of the total input load. Services such as mobile air quality monitoring do not represent full potential of the MCS paradigm because they require an adequate equipment to be operable (i.e. a wearable sensor), but utilization of MCS paradigm with services that do not require anything except a smartphone (e.g., noise monitoring/detection) can generate massive amounts of data.
Evaluation of an IoT platform is o en done experimentally, by executing performance tests with various input loads to test limitations of the platform and to get performance parameters. To analyze the performance with real-world services, evaluation should be made with real world data and input load which correctly represents a test case. If a distribution of input load of individual services is known, a probability mass function can be calculated and used to generate aggregate input load to a platform. Input load is generated by using the probability mass function (or the cumulative function) together with a random number generator (uniformly generated).
In addition, IoT platforms are evaluated using the analytical models based on the queueing theory principles [22]. e most common queueing theory model used in the analysis is the M/M/1 model, which represents the model where an input load is modeled by the Poisson distribution and service time is modeled by exponential distribution. e queueing theory also includes the models which use general distribution of input rate, which o er expressions to calculate parameters of analyzed system and do not follow neither the degenerate nor Poisson distributions.

CONCLUSIONS
e rapid expansion of the Internet of ings has opened new perspectives for deployment of di erent smart services. However, the lack of interoperability among platforms and services prevents IoT to reach its full potential which is particularly visible in the Smart City domain. is has led to a need for an integrative and interoperable IoT platform which supports a multitude of services with di erent requirements and provides prerequisites for the Smart City deployment. To achieve an interoperable ecosystem, it is necessary to analyze both the individual performance requirements posed on underlying IoT platform, as well as the cumulative requirements that represent all platform services.
In this paper we review IoT-based Smart City services with regard to their input load posed to an underlying platform during normal workload. e analysis takes into account the individual service behavior, deployment size, the probability distribution of input load created by observed service, and parameters that describe the identi ed distribution. Additionally, we provide an estimation of an aggregate input load generated at the platform input point when multiple services are deployed in parallel. We have identi ed two types of Smart City services regarding the probability distribution of input load, those which generate data following the degenerate distribution, such are parking or waste management services, and those whose input load follows the Poisson distribution, such as smart metering service or mobile air quality monitoring with wearable sensors. We have shown that the total aggregate input load of all Smart City services to an underlying IoT platform can be expressed as convolution of the degenerate and Poisson distribution with the expected value of E(all − ser ices) = 270.1pub/min. e aggregate probability mass function can be used to generate an overall input load necessary for the platform performance evaluation.
As future work we plan to investigate the characteristics of input load of citizen-based services which do not require additional equipment and thus generate huge amounts of data (e.g., noise monitoring with smartphones). Since such services are geo-aware, we plan to more thoroughly investigate whether their input load corresponds to the power-law distribution. Another possible direction for future work is creation of a test suite with some pre-de ned input loads that represent IoT-based Smart City services which would be a step forward to the standardization of evaluation process for the IoT platforms.