Sei sulla pagina 1di 12

DIRE DAWA UNIVERSITY

INSTITUTE OF TECHNOLOGY

SCHOOL OF COMPUTING

DEPARTMENT OF COMPUTER SCIENCE


Post Graduate Program (MSc) in Computer science
Proposal on Serverless Computing for Internet of Thing
Course title: Advanced topic in information system
Course code: COSC 624

Name:Asnak Yihunie
ID: SGS/0035/12
Email: asnakyihunie@gmail.com

Submitted to: - Dr Beakal


Email: beakalassefa@gmail.com

Submission Date: Oct, 11, 2020


Dire Dawa, Ethiopia
Abstract
IoT devices are attributed to very limited computation and storage capacity. To get over this
limitation, serverless Computing has been the most favored platform for processing IoT data,
which provides on-demand and scalable resources for computing and storage. The sensor data
are transported to the Cloud data center, where they are processed, and the outcome is sent to
the subscribed applications.

Serverless computing is a cloud computing model for ephemeral, stateless and event-driven
applications that scale up and down instantly. In contrast to the infinite resources of cloud
computing, the Internet of Things is the network of resource-constrained, heterogeneous and
intelligent devices that generate a significant amount of data. Due to the resource-constrained
nature of IoT devices, cloud resources are used to process data generated by IoT devices. This
paper describe how to process distributed serverless data in the context of IOT network, how to
implement and establishes the need for serverless Computing for processing IoT data. We will
be able to gain a fair comprehension of the various aspects of serverless Computing. The
benefits, and applications of serverless Computing with respect to IoT have been mentioned
elaborately. An architecture for IoT data processing is presented. A thorough comparison
between Cloud and serverless has been portrayed. Also, detailed discussion has been depicted
on how the IoT, serverless, and Cloud interact among them and how we develop machine
learning application on IOT.

Key word: - serverless computing, IOT, Nuclio, cloud computing, sensor device
Contents
Abstract......................................................................................................................................................ii
1. Introduction...........................................................................................................................................1
1.2. Statement of the problem..................................................................................................................2
1.3. Goal and scope.................................................................................................................................2
1.4. Objective..........................................................................................................................................2
1.4.1. General objective.......................................................................................................................2
1.4.2. Specific objective.......................................................................................................................2
1.5. Challenge..........................................................................................................................................3
1.6. Application of serverless computing for IoT....................................................................................3
1.7. System architecture/ design..............................................................................................................3
Serverless computing architecture......................................................................................................3
Our proposed system architecture......................................................................................................4
2. Literature review.....................................................................................................................................5
Organization of Paper..................................................................................................................................6
Reference.....................................................................................................................................................7
1. Introduction

Internet of thing is an interconnected everything to everything that generate data from one
device to another device, it is a network of smart physical device [1] that transfers data without
human to human interaction. This physical device to send information using sensors to a server.
IOT can be customer IOT and industry IOT, customer IOT means a reformation way of people
life by saving time and money. Industry IoT is a machine to machine communication technology
in different business service sector [2] those connected device exchange massive amount of data,
IoT device is heterogeneous , in our country Ethiopia have an opportunity in different sector
like agriculture[3]IoT in agriculture empowers the farmers with advanced and improved
automation and decision-making processes[4]. As number of connected devices is increase
collecting, sharing and managing data from these connected devices are challenged. Cloud
computing is the delivery of different services through the Internet, new technology in internet of
thing and machine learning [5] base technology in the use of IOT. IOT is limited scope and
moves to the cloud to fill the gap of these limited scope. The integration of cloud computing and
IoT storage, service, and applications are over the internet [1, 6]. Serverless computing is a
cloud-based model that enables users to create and run applications or processes without direct
contact with the underlying server. Developers to develop, run and manage applications
functionalities without the complexity of building and maintain the infrastructure associated with
developing and launching an application. It is a software design pattern where applications are
hosted by a third-party service. It eliminates the need for server software and hardware
management by the developer .Machine learning algorithm is very strong contributor to the rapid
adaption of processing large volume data emerging from IoT devices for generating patterns of
interest to analysts the data [4]. Serverless solutions accelerate and facilitate the development
process by eliminating tedious server orchestration tasks and allowing developers to
concentrate their efforts on the development logic.  Developers can embedded flexible
computation within their data flow without worrying about the server infrastructure
provisioning and DevOps considerations. Serverless computing has use machine learning
algorithm for data analytic in internet of thing.
1.2. Statement of the problem
 When IOT comes with cloud computing technology there lack of trust between service
providers and physical location of data. In cloud computing and IoT integration the major
challenge are security and privacy challenge.
 Security:-The IoT data, due to the considerable distance between the source and the
Cloud, travel through multiple hops and complex network structures which makes it
vulnerable.
 Privacy:-some tasks wat additional privacy that makes it impracticable to dump their
process to the cloud.
 Data blast:- IOT sensor produce huge data ,the increasing in sensor numbers causes
data blast

1.3. Goal and scope


The main goal of this work is addresses the problem and aims at developing solution that
employs serverless computing in the context of IOT network and design solution architecture
considering a heterogonous IOT network. High availability of the architecture: Easy of
deployment Support for heterogeneity Fault-tolerant architecture

1.4. Objective
1.4.1. General objective

The main objective of this paper is to study serverless computing in the context of IoT.

1.4.2. Specific objective


 Discuses characteristics of IOT and serverless computing
 Compare and contrast serverless platform architecture.
 Define open source serverless framework and compare each.
 Sect best machine learning tool

Answer the question how to build serverless architecture in the context of IOT, what are the use
of machine learning algorithm for internet of thing data, how to decide which machine learning
algorithm is used?
1.5. Challenge
Usage of serverless computing in IOT application increase IoT raises many challenges.

• Resource limit- as device increase limit their memory, function execution time,
bandwidth, and CPU usage.

• Latency Constraint:-serverless platform always improve the performance of their


infrastructure highly-distributed, loosely coupled  in nature

• Security Challenges: - as many IOT device run their functions on a shared platform.
Thus, if someone loads malicious code, it may negatively affect all cloud users.

1.6. Application of serverless computing for IoT


Serverless computing use many application of IoT i.e. agriculture, transportation, heath data
management and smart building, transportation. For example IOT in smart agriculture are:-

Sensor-based systems for monitoring crops, soil, fields, livestock, storage facilities, or basically
any important factor that influences the production of Smart agriculture vehicles, drones,
autonomous robots and actuators.

Connected agriculture spaces such as smart greenhouses or hydroponics.

Data analytics, visualization and management systems.


1.7. System architecture/ design
Serverless computing architecture

Serverless architectures are application designs that incorporate third-party “Backend as a


Service” (BaaS) services, that include custom code run in managed, ephemeral containers on a
“Functions as a Service” (FaaS) platform.
Figure 1. Nuclio architecture

Source https://jaxenter.com/wp-content/uploads/2017/10/nuclio-1.png )

Our proposed system architecture


Figure 2.shows the proposed architecture of Nuclio for internet of thing.
 IOT sensor/MQTT: - open internet protocol used to exchange message between client
and server
 MQTT topic –used to filter message each client.
Nuclio focuses on portability and reusability of:-

 Works in low-power devices, Docker, Kubernetes, or inside an IDE using Nuclio SDK


 Events/data sources map to functions or versions/tags at deployment time.
 Logs and statistics can be sent to multiple destination types, or to the IDE screen.
 Function images are stored in a shared repository and pushed to multiple clusters/devices
 Web App /AMQP over web socket:-provide persistent connection between client and
server used to start sending data at any time by both client and server, client send http
request to server.
 Storage: - an object storage service that are used to store object data.

Figure 2 serverless architecture for IoT

2. Literature review

Many previous work on serverless computing for Internet of thing have notice that there were
several effort. Serverless platform can be stretched on cluster of IoT device using software
container like Docker container, Docker file, container orchestration and multi-layer architecture
[1]data processing is offloaded to user device by means of AWS lambda [1],[7]. List application
of serverless computing and its characteristics and definition of serverless platform, address
some challenges. IOT data coming from many different sensors need to be available in near real-
time [13].It is heterogeneous, multi-dimensional, dynamic and inconsistent continues with high
velocity, Real-time and new streaming. IoT data is generated by IoT devices such as sensors,
actuators, video cameras, connected cars, and others [12] IoT data is unbounded in most cases
(i.e. The devices never stop sending data). Serverless computing applied on machine learning
application, describe challenges and limitation of machine learning model and show performance
evaluation of AWS, Google, IBM and Microsoft to develop neural network for training. [8]
Show benefits of training model. Neural network inferencing use AWS lambda platform and
Amazon MXNet deep learning framework, there is model size affect the inferencing
performance [9].

Demonstrate the difference between traditional virtual machine and serverless computing cost
efficiency and resource utilization for the elasticity of distributed and parallel data processing
using experiment four serverless computing environment in production, those are CPU
performance, network bandwidth, file I/O throughput and cost effectives across Amazon
Lambda, Azure function, google function and IBM open whisk [10]. Most of related work use
AWS lambda platform for data processing and experimental analysis AWS lambda. There is a
limitation in lambda function;-

High latency- unsuitable for real-time applications that require consistent and millisecond-level
response times.

Limited to trigger and event source - specific to the cloud provider.

Maximum execution time or Data size restriction: - Unsuitable for long-running tasks or
heavy data processing. My contribution is address this problem using Nuclio.

Nuclio is an open source serverless platform that is built on top of Kubernetes and comes in both
managed platform-as-a-service (PaaS) and self-hosted flavors don’t use any container
orchestration.

Organization of Paper
1. Introduction
1.2. Statement of problem
1.3. Goal and scope
1.4. Objective
1.5. Challenge
2. Literature review
3. Serverless computing
3.1.serveless platform
3.2. Open source serverless framework
4. System design /model
Methodology and tool used
Evaluation
5. Conclusion and recommendation

Reference
1. anoj Kumar. serverless computing for internet of thing:artu 2018: UNIVERSITY OF
TARTU(unpublished0)https://comserv.cs.ut.ee/home/files/Kumar_Computer_Science_201
8.pdf

2. M. M. Alsulami and N. Akkari, "The role of 5G wireless networks in the internet-of- things
(IoT)," 2018 1st International Conference on Computer Applications & Information
Security (ICCAIS), Riyadh, 2018, pp. 1-8, doi: 10.1109/CAIS.2018.8471687.
https://ieeexplore.ieee.org /iel7/8410645/8441936/08471687.pdf
3. Tesfa Tegegne(, Hailu Beshada Balcha. and Mebiratu Beyene:” internet of Things
Technology for Agriculture in Ethiopia: A Review “Bahir Dar University, Bahir Dar,
Ethiopia , Sep 27, 2020 https://www.researchgate.net/publication/334861637
4. Erwin Adi1 • Adnan Anwar2 • Zubair Baig2 • Sherali Zeadally,” Machine learning and
data analytics for the IoT”20, March 2020 https://link.springer.com/article/
5. Helsinki,” Serverless Computing on Constrained Edge Devices”, UNIVERSITY OF
HELSINKI,Department of Computer Science april 14,2020
http://scholar.google.com/scholar?
6. Christos Stergiou, Kostas E Psannis, Byung-Gyu Kim, Brij Gupta.”   Secure integration
of IOT and cloud computing”- Future Generation Computer Systems, 2018, volume 78
Pages 964-975 https://www.sciencedirect.com/science/article/pii/
7. Claudio Cicconetti∗, Marco Conti, Andrea Passarella,” Uncoordinated access to
serverless computing in MEC systems for IoT” IIT, National Research Council, Pisa, Italy
Volume 172, 8 May 2020, 107184,https://www.sciencedirect.com/science/article/pii/
8. L. Feng, P. Kudva, D. Da Silva and J. Hu, "Exploring Serverless Computing for Neural
Network Training," 2018 IEEE 11th International Conference on Cloud Computing
(CLOUD), San Francisco, CA, 2018, pp. 334-341, doi:10.1109/CLOUD.2018.00049.
9. V. Ishakian, V. Muthusamy and A. Slominski, "Serving Deep Learning Models in a
Serverless Platform," 2018 IEEE International Conference on Cloud Engineering (IC2E),
Orlando, FL, 2018, pp. 257-262, doi: 10.1109/IC2E.2018.00052.
10. H. Lee, K. Satyam and G. Fox, "Evaluation of Production Serverless Computing
Environments," 2018 IEEE 11th International Conference on Cloud Computing
(CLOUD), San Francisco, CA, 2018, pp. 442-450, doi: 10.1109/CLOUD.2018.00062.
11. T.Pfandzelter and D.Bermbach,”IOT Data Processing in the Fog:Functions,Streams,or
BatchProcessing?”2019IEEEInternationalConference on Fog Computing (ICFC)
,prague,CzechRepublic,2029,pp,201 06,d0i:10.1109/ICFC.2019.00033
https://ieeexplore.ieee.org/ bstract/document/8822056/
12. https://it.toolbox.com/blogs/carmashoemaker/iot-data-how-to-collect-process-and-
analyze-them-032619
13. Cosmina Ivan .Serverless Computing: An Investigation of Deployment Environments for
Web APIs ,Department of Computer Science, Technical University of Cluj-Napoca,
400027 Cluj-Napoca, Romania,25 June 2019
14. G. McGrath and P. R. Brenner, "Serverless Computing: Design, Implementation, and
Performance," 2017 IEEE 37th International Conference on Distributed Computing
Systems Workshops (ICDCSW), Atlanta, GA, 2017, pp. 405-410, doi:
10.1109/ICDCSW.2017.36. https://ieeexplore.ieee.org/ document/7979855
15. M. Wu, Z. Mi and Y. Xia, "A Survey on Serverless Computing and Its Implications for
JointCloud Computing," 2020 IEEE International Conference on Joint Cloud Computing,
Oxford, United Kingdom, 2020, pp. 94-101, doi: 10.1109/JCC49151.2020.00023.
https://ieeexplore.ieee.org /document/9183650/
16. A. Christidis, R. Davies and S. Moschoyiannis, "Serving Machine Learning Workloads in
Resource Constrained Environments: a Serverless Deployment Example," 2019 IEEE
12th Conference on Service-Oriented Computing and Applications (SOCA), Kaohsiung,
Taiwan, 2019,pp.55-63,doi:10.1109/SOCA.2019.00016.https://ieeexplore.ieee.org/
document/8953024
17. Stigler, Maddie. (2018). Understanding Serverless Computing. 10.1007/978-1-4842-
3084-
8_1.https://www.researchgate.net/publication/321293669_Understanding_Serverless_Co
mputing/
18. P. K. Gadepalli, G. Peach, L. Cherkasova, R. Aitken and G. Parmer, "Challenges and
Opportunities for Efficient Serverless Computing at the Edge," 2019 38th Symposium on
Reliable Distributed Systems (SRDS), Lyon, France, 2019, pp. 261-2615, doi:
10.1109/SRDS47363.2019.00036.

Potrebbero piacerti anche