Professional Documents
Culture Documents
Contents
Distributed system_____________________________________________________________________1
Example of DS:________________________________________________________________________3
TRENDS in distributed systems__________________________________________________________3
TYPEs of distributed systems______________________________________________________________3
PERVASIVE NETWORK_________________________________________________________________4
IoT___________________________________________________________________________________4
SMART HOME/HOME AUTOMATION_______________________________________________________4
SMART CITY/ ICT______________________________________________________________________4
Crowdsourcing________________________________________________________________________5
Crowdsensing (smart city)_______________________________________________________________5
Mobile and ubiquitous computing________________________________________________________5
Distributed multimedia systems__________________________________________________________6
Distributed computing as a utility_________________________________________________________6
Computer cluster_______________________________________________________________________6
Grid computing_________________________________________________________________________6
Challenges of distributed systems__________________________________________________________6
Heterogeneity__________________________________________________________________________6
Openness:____________________________________________________________________________7
Security_______________________________________________________________________________7
Scalability_____________________________________________________________________________7
Quality of service_______________________________________________________________________7
Concurrency___________________________________________________________________________8
Transparency:__________________________________________________________________________8
Computer Networks Vs. Distributed Systems__________________________________________________8
DASH________________________________________________________________________________9
CONTENT DISTRIBUTION NETWORK CDN_________________________________________________9
Example of DS:
1. Web search
Google infrastructure:
• A very large number of networked computers at data;
• A distributed system w/ very large files and heavily optimized;
• A structured distributed storage system for fast access to very large datasets;
• A lock service such as distributed locking and agreement;
• A programming model w/ very large parallel and distributed computations.
2. Massively multiplayer online games (MMOGs)
• Properties: a huge, persistent open world, Players cooperate/compete with
each other on a large scale/around the world
• Challenges
• Fast response times to preserve the user experience of the game;
• Real-time propagation of events to many players;
• Maintaining a consistent view of the shared world.
Massively multiplayer online games (MMOGs)
• Solutions:
• Client-server architecture;
• Distributed architecture;
• Peer-to-peer architecture.
3. Financial trading
a.
PERVASIVE NETWORK is a large scale network appearing to operate almost everywhere and
using a large number of networks that self-organizing to offer unified services:
• Wifi
• Cellular networks
• IoT
IoT A system of interrelated computing devices, mechanical and digital machines provided with
unique identifiers (UIDs). Data transfer over a network without requiring human-to-
human/computer interaction.
Convergence of
• real-time analytics, • wireless sensor networks,
• machine learning, • control systems,
• commodity sensors, • home and building automation.
• embedded systems,
SMART HOME/HOME AUTOMATION
Control and monitor connected home devices from apps. More efficient energy and electric use
and security.
• Household devices:
• Wireless speaker systems • Lighting
• Thermostats • Home energy use monitors
• Home security & monitoring • Door locks
systems • Refrigerators
• Domestic robots • Laundry machines
• Smoke/CO detectors • Water detectors
Factors:
• The application of a wide range of electronic and digital technologies to communities and
cities.
• The use of Information and Communication Technologies (ICT) to transform life and
working environments within the region.
• The embedding of ICTs in government systems.
• The territorialisation of practices that brings ICTs and people together to enhance the
innovation and knowledge that they offer.
Crowdsourcing
• A sourcing model individuals or organizations obtain goods and services,
including ideas, voting, micro-tasks and finances, from a large, relatively open and often
rapidly-evolving group of participants.
• Currently involves using the internet to: attract and divide work between
participants; achieve a cumulative result.
Crowdsensing (smart city)
Mobile crowdsensing: A large group of individuals with sensing and computing mobile
devices. Collectively share data and extract information to measure, map, analyze,
estimate or infer (predict) any processes of common interest.
• Crowdsensing = crowdsourcing of sensor data from mobile devices.
• Crowdsensing = crowdsourcing + sensors
• Crowdsourcing = crowd + outsourcing
3 main purposes/types:
• environmental (such as monitoring pollution),
• infrastructure (such as locating potholes),
• social (such as tracking exercise data within a community).
Smartphones can sense:
• ambient light,
• noise (through the microphone),
• location (through the GPS),
• movement (through the accelerometer), and more
2 TYPES
Participatory crowdsensing, where the users voluntarily participate in contributing
information.[4]
Opportunistic crowdsensing , where the data is sensed, collected, and shared
automatically without user intervention and in some cases, even without the user's
explicit knowledge
Mobile and ubiquitous computing
Mobile computing
• The performance of computing tasks while the user is on the move, or in
places other than usual environment.
• They CAN still access the Internet and use the resources their home
intranet, e.g., home printers, (location-aware or context-aware computing).
Mobile computing’s components:
• mobile communication (ad-hoc, protocol, data formats,…)
• mobile hardware
• mobile software.
Ubiquitous (or pervasive) computing
• Harnessing of many small, cheap computational devices that are present in users’
physical environments, including the home, office and even natural settings.
• Mobile and ubiquitous computing
• Similarity
• Difference
5
Cloud computing
The on-demand availability of computer system resources (e.g., data storage and
computing power) without direct active management by the user, e.g., data centers
• Enterprise cloud;
• Public cloud;
• Large clouds: functions
distributed over multiple
locations from central servers.
Computer cluster is a set of loosely or tightly connected computers that work together so as
be viewed as a single system;
• Each node set to perform the same task, controlled and scheduled by software.
Grid computing is the use of widely distributed computer resources to reach a common goal;
• Each node set to perform a different task/application;
• More heterogeneous and geographically dispersed;
• Commonly used for a variety of purposes;
• Constructed with general-purpose grid middleware software libraries;
• Sizes can be quite large.
Challenges of distributed systems
1. Heterogeneity (ko dong nhat)
2. Openness
3. Security
4. Scalability
5. Failure handling
6. Concurrency
7. Transparency
8. Quality of service
Heterogeneity
networks, computer hardware, operating, systems, programming languages, implementations
by different developers
Middleware
6
Mobile
code
Program code that can be transferred from one computer to another and
run at the destination, e.g., Java applets;
• Levels:
•Strong code mobility: moving both the code, data and the execution state;
•Weak code mobility: moving the code and the data only;
•Architectural styles:
Remote evaluation;
Code on demand;
Mobile agents.
Virtual machine:
• Provides a way of making code executable on a variety of host computers;
• The computing resources of a physical server are virtualized and shared among all
VMs running on it
Openness:
•Can be extended and reimplemented in various ways;
•New resource-sharing services can be added for use by various client programs.
Requirements:
•Published specification and documentation
•Uniform communication mechanism and published interfaces
•Heterogeneous hardware and software
Security
Denial of service attacks DoS
Security of mobile code: (1) malicious functionality and (2) vulnerabilities
Scalability
Controlling the cost of physical resources
•Controlling the performance loss
•Preventing software resources running out
•Avoiding performance bottlenecks
Quality of service
7
•Reliability
•Security: Privacy
•Performance: Responsiveness and computational throughput; Time-critical data
•Adaptability
Concurrency
Is a system representing the fact that multiple activities are executed at the same time.
Underlying challenges: providing mechanisms to control the different flows of execution via
coordination and synchronization, while ensuring consistency.
Example: a data structure that records bids for an auction may be accessed very frequently
when it gets close to the deadline time.
Semaphores: a standard technique used in most operating systems.
Transparency:
Network transparency Failure transparency
Concurrency transparency Mobility transparency
Replication transparency Performance transparency
Scaling transparency
Middleware of on top of OS
Is single model to user
•The operating system automatically allocates jobs to processors, moves files among various
computers without explicit user intervention. Eg: Internet
DASH
Adaptive bitrate streaming technology where a multimedia file is partitioned into one or more
segments and delivered to a client using HTTP
vs Bring Home:
Goal: same with Enter Deep but by building large clusters with smaller number of sites
How: Deploy server clusters in IXPs, Internet Exchange Points
Cons: At the expense of higher delay and lower throughput to end users
A CDN is a system of strategically positioned severs around the globe. The main goals
are about speed, scalability and high-availability, SEO Improvement, lower cost