• No results found

Web-Based and Cloud Systems

N/A
N/A
Protected

Academic year: 2022

Share "Web-Based and Cloud Systems"

Copied!
15
0
0

Loading.... (view fulltext now)

Full text

(1)

Web-Based and Cloud Systems

INF 5040 autumn 2017 lecturer: Roman Vitenberg

2 IN5020, ifi/UiO

¡Browser-server WWW application

¡Geared towards human interaction

¡Not suitable for automation

¡Automatic restocking from amazon.com

¡Sniping in eBay

¡Web services middleware

¡Generic extension of the WWW application

¡Web servers announce and provide services

¡Web server can be a client of another service

Two main flavors

(2)

3 IN5020, ifi/UiO

Communicating entities

Client

Web Server Proxy

Infrastructure of Web proxies

Infrastructure of Web servers

HTTP HTTP

5 IN5020, ifi/UiO

¡Protocol translation and conversion

¡Not needed for modern browsers/clients

¡Filtering requests and responses

¡Logging

¡Compression

¡Caching

Web proxy functions

(3)

6 IN5020, ifi/UiO

¡Cache update protocols

¡Pull with if-modified-since GET HTTP header

¡Lease-based propagation

¡Not as effective for dynamic content

¡Cache replacement policies

¡LRU is commonly used and it performs well

¡A number of specialised policies, e.g., Greedy-Dual

Client-side and proxy caches

7 IN5020, ifi/UiO

¡

Commonly deployed throughout the world

¡

Reduces latency and traffic for popular documents

¡

Increases latency for other documents

¡

Higher-level proxies require a lot of storage space

Hierarchical proxy caching

Client Proxy

Proxy Web

Server

1. Look in Local cache 2. Ask next level proxy 4. Forward request

to Web server

3. Look in local cache

(4)

8 IN5020, ifi/UiO

¡Deployed on a per-organisation basis

¡Can be combined with hierarchical caches

Cooperative proxy caching

Client

ServerWeb

Proxy

Proxy

Proxy

1. Look in Local cache

2. Ask neighbor proxies 3. Forward request

to Web server

9 IN5020, ifi/UiO

¡

Several possibilities for request dispatching

¡Round-robin DNS

¡Content-aware dispatcher inspecting HTTP requests

¡TCP-level switch

Simple server-side backend

Client

ServerWeb Proxy

ServerWeb ServerWeb

Request dispatcher

(5)

10 IN5020, ifi/UiO

¡Placement of data/object replicas

¡See the lecture on replication…

¡A number of evaluation metrics

¡Latency (real-time and the number of hops)

¡Bandwidth (available and network usage)

¡Financial

¡Consistency enforcement

¡See the lecture on replication…

¡Redirection of client requests

Content-distribution network (CDN)

11 IN5020, ifi/UiO

Redirection of client requests in an Akamai CDN

Client Web

Server CDN

Server

Regular DNS system CDN DNS

server

Cache

1. Get base document

2. Document with refs to embedded documents 3.

4.

DNS lookups Return IP address of

client-best server

5. Get embedded

documents 7. Embedded documents

6. Get embedded documents (if not already cached)

(6)

¡Definition:

¡ Clouds are pay-per-use services offering on-demand compute, network, and storage capacity

¡Three classes of cloud; viewed as a layered architecture:

¡ Infrastructure as a Service (IaaS)

¡ Platform as a Service (PaaS)

¡ Software as a Service (SaaS)

Cloud Computing

¡IaaS

¡offering virtualized resources (computation, storage, and communication) on-demand

¡several choices of OS and a customized software stack

¡e.g., Amazon EC2: offering VMs with a software stack customizable like an ordinary server

¡PaaS

¡offering an environment to create and deploy applications

¡no need to know low-level technical config., e.g., number of processors or amount of memory

¡offering multiple programming models and specialized services, e.g., data access and authentication

¡e.g., Google AppEngine: for developing and hosting Web apps written in Python or Java

Types of clouds – (1)

(7)

¡SaaS

¡applications reside on the top of the cloud stack

¡accessed by end users through Web portals

¡desktop apps such as word processing as a service in the Web

¡e.g., Salesforce.com: offering business productivity apps (CRM)

Types of clouds – (2)

¡On-Demand Self-Service

¡ consumers expect on-demand, nearly instant and unilateral access to resource

¡Measured Service

¡ measuring the usage of cloud resources for each individual consumer through its metering capabilities

¡Elasticity

¡ users expect clouds to rapidly provide resources in any quantity at any time

¡Resource Pooling

¡ physical and virtual resources dynamically assigned and reassigned according to consumer demand

¡Broad Network Access

¡ Supporting a range of devices, transport protocols, interfaces, and security technologies for accessing cloud services

Five essential characteristics of clouds

(8)

16 IN5020, ifi/UiO

¡Definition:

¡the worldwide network of interconnected objects uniquely addressable based on standard communication protocols

¡IoT Enabling Technologies: RFID and WSNs

Internet of Things

17 IN5020, ifi/UiO

¡Interoperable Communication Protocols

¡IoT devices

¡support a number of interoperable communication protocols

¡communicate with other devices

¡Unique Identity

¡Each IoT device has a unique identity and a unique identifier (such as an IP address or a URI)

¡Integrated into Information Network

¡IoT devices: integrated into the information network

¡to communicate and exchange data with other devices and systems

¡Self-Adapting

¡the capability to dynamically adapt with the changing contexts:

operating conditions, user’s context, or sensed environment

Characteristics of IoT

(9)

18 IN5020, ifi/UiO

¡The “Things” in IoT usually refers to IoT devices

¡unique identities

¡can perform remote sensing, actuating and monitoring

¡can exchange data with other connected devices and applications (directly or indirectly) or collect data from other devices

¡process the data either locally or send the data to centralized server

¡Data analytics systems: resulting in useful information to guide further actions locally or remotely

¡Varied in types

¡Wearable Sensors, Smart watches, LED lights, automobiles, and industrial machines

Physical Design of IoT – Things in IoT

19 INF5040, ifi/UiO

IoT Protocols

Transport Layer

Network Layer

Link Layer Application Layer HTTP

MQTT

CoAP XMPP

WebSockets

DDS AMQP

TCP UCP

IPv6 IPv4 6LowPAN

802.3 - Ethernet 802.11 - WiFi

802.16 - WiMax 802.15.4 – LR-WPAN

2G/3G/LTE - Cellular

(10)

20 IN5020, ifi/UiO

¡IoT Functional Blocks

¡provide the system the capabilities for identification, sensing, actuation, communication, and management

¡Device, Communication, Services, Management, Security, Application

¡IoT Communication Models

¡Request–Response, Publish/Subscribe, Push-Pull, Exclusive Pair

¡IoT communication APIs

¡REST–based Communication APIs

¡WebSocket–based Communication APIs

Logical Design of IoT

21 IN5020, ifi/UiO

¡Device: allowing identification, remote sensing, actuating and remote monitoring capabilities

¡Resource: software components on the IoT device for accessing, processing, and storing sensor information, or controlling actuators connected to the device

¡Controller Service:

¡ sends data from the device to the web service

¡ receives commands from the application for controlling the device

¡Database: either local or in the cloud to store IoT-generated data

¡Web Service: serves as a link between the IoT device, application, database and analysis components

¡Analysis Component: analyzing IoT data and generating results

¡Application: an interface between users and the IoT system to control and monitor its various aspects

Main Components of IoT

(11)

22 INF5040, ifi/UiO

IoT Systems Design – Level 1

Application

REST/WebSocket Services Controller Service

Resource Device Database

REST/WebSocket Communication

Cloud Local

Monitoring Node Performs analysis, stores data

23 INF5040, ifi/UiO

IoT System Design – Level 2

Controller Service Resource

Device

REST/WebSocket Communication Cloud

Application

REST/WebSocket Services Database Local

Monitoring Node

Performs analysis Cloud Storage

REST/WebSocket Communication

(12)

24 INF5040, ifi/UiO

IoT System Design – Level 3

Controller Service Resource

Device

REST/WebSocket Communication Cloud

Application

REST/WebSocket Services Database Local

Monitoring Node Cloud Storage & Analysis

REST/WebSocket Communication

25 INF5040, ifi/UiO

IoT System Design – Level 4

Controller Service Resource

Device

Controller Service Resource

Device

Application

REST Services

Database Observer Node

Observer Node

Analytics Component (IoT Intelligence) Monitoring

Nodes

Cloud Storage & Analysis Cloud

Local

REST/WebSocket Communication

(13)

26 INF5040, ifi/UiO

IoT System Design – Level 5

Resource

Endpoint Device

Controller Service Resource

Endpoint Device

Application

REST Services

Database Observer Node

Observer Node

Analytics Component (IoT Intelligence) Endpoints

Cloud Storage & Analysis Cloud

Local

REST/WebSocket Communication

Controller Service Resource

Coordinator Device

Coordinator

Controller Service

27 INF5040, ifi/UiO

IoT System Design – Level 6

Resource

Endpoint Device

Controller Service Resource

Endpoint Device

Application

REST Services

Database Observer Node

Observer Node

Analytics Component (IoT Intelligence) Endpoints

Cloud Storage & Analysis Cloud

Local

Centralized Controller Coordinator

Controller Service

REST/WebSocket Communication

(14)

29 IN5020, ifi/UiO

¡Home

¡Cities

¡Environment

¡Energy Systems

¡Retail

¡Logistics

¡Industry

¡Agriculture

¡Health & Lifestyle

IoT Applications

30 IN5020, ifi/UiO

¡Smart Cities

¡ Smart Parking

¡ Smart Lighting for Road

¡ Smart Road

¡ Structural Health Monitoring

¡ Surveillance

¡ Emergency Response

IoT Applications (1)

(15)

33 IN5020, ifi/UiO

¡In smart health & lifestyle:

¡Health & Fitness Monitoring

¡Wearable Electronics

IoT Applications (2)

References

Related documents