Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Copyright2013-15
1
COMP 2410 – Networked Information Systems
IC1 – The Architecturesof Networked Applications
Roger ClarkeXamax Consultancy, Canberra
Visiting Professor, A.N.U. and U.N.S.W.
http://www.rogerclarke.com/II/NIS2410.html#L1http://www.rogerclarke.com/II/NIS2410-1 {.ppt, .pdf}
ANU RSCS, 18 March 2015
Copyright2013-15
2
Application Architectures
Agenda
1. The Notion of 'Architecture'2. Alternative Architectures:
.1 Master-Slave Architecture
.2 Client-Server Architecture• Cloud Computing
.3 Peer-to-Peer (P2P) Architecture3. Networks without People
Copyright2013-15
3
Architecture
Elements and their Inter-Relationships
The way components fit together
The term applies to any complex systeme.g. buildings, logistical networks, human
organisations, computer networks, software
Encompasses static components
May encompass processes as well
Copyright2013-15
4
Copyright2013-15
5
Elements of Internet Architecture
• Computers, incl. hosts and workstations
• Communications Links between computers:
• Physical Media (e.g. cables, telephone lines)
• Wireless Media (e.g. microwave, cellular phone)
Copyright2013-15
6
Elements of Internet Architecture
• Computers, incl. hosts and workstations
• Communications Links between computers:
• Physical Media (e.g. cables, telephone lines)
• Wireless Media (e.g. microwave, cellular phone)
• Protocols defining the rules of engagement between the elements
• Software running on computers
• Human Processes to create and amend protocols
• Governance Mechanisms
Copyright2013-15
7
Elements of Internet Architecture
• Computers, incl. hosts and workstations
• Communications Links between computers:
• Physical Media (e.g. cables, telephone lines)
• Wireless Media (e.g. microwave, cellular phone)
• Protocols defining the rules of engagement between the elements
• Software running on computers:• Clients (which are
directly used, e.g. by people)• Servers (which provide
services to Clients)• Intermediating Nodes, e.g.
gateways and proxy-servers(which pass traffic onwards)
• Human Processes to create and amend protocols
• Governance MechanismsCopyright2013-15
8
1. Master-Slave ArchitectureStar Topology
HubDumbTerminal
Copyright2013-15
9
The 'PC’ Era – Mid-Late 1970s Onwards
SmallPC
BBSin
SmallPC
SmallPCs
SmallPC
SmallPC- to -
Copyright2013-15
10
2. Client-Server ArchitectureMid-1980s Onwards
ServerSoftware
inLarge
CentralHost
ClientSoftware
inSmall
RemotePC
PCsin
LocalArea
Network
Copyright2013-15
11
Client-Server Architecture – Internet-MediatedMid-1990s Onwards
Serverin
Host
Clientin
Workstation
Clientin
Workstation
Clientin
Workstation
Clientin
Workstation
Clientin
Workstation
Clientin
Workstation
Serverin
Host
Serverin
Host
Copyright2013-15
12
Client-Server – 'The Cloud'
• 'Server Virtualisation'• Cloudsourcing• Outsourcing
• of Applications (SaaS)• of Platform incl. OS, dev tools (PaaS)• of Infrastructure incl. air-con (IaaS)
http://www.rogerclarke.com/II/CCBR.html
Copyright2013-15
13
Business ComputingFrom Insourcing to Outsourcing
'Off-Site Hosting'
'Outsourced Facility'
Copyright2013-15
14
From Insourcing to Cloudsourcing
CloudSourced Facilities
Copyright2013-15
15
Business CloudsourcingHow is it different from Outsourcing generally?
• Scalability ('there when it's needed')• Flexible Contractual Arrangements ('pay per use')• Opaqueness ('let someone else worry about details')
• which means less user control:• of the Application, through commoditisation• of Service Levels, through SLA dependence
(assuming there's an SLA, and it's negotiable)• of Host Location, through resource-virtualisation
Copyright2013-15
16
Levels of Cloudsourcing
• Software as a Service (SAAS) Google Gmail, Google Drive/Docs/AppsMS Office 365DropboxSalesforceMYOB LiveAccounts, Intuit Online
• Platform as a Service (PaaS)MS Azure, Sware Dev Environments, ...
• Infrastructure as a Service (IaaS) Amazon EC2, Rackspace, ...
Copyright2013-15
17
SaaS, incl. Consumer Computing
Email clients, usingsmtp/pop/imap
Personal Web-Sites
Dedicated Devices
Office on the Desktop
FTP-server and -client
Webmail, usinghttp / https
Flickr, Picasa
iTunes
Zoho, Google Docs
Dropbox
Functions Applications ==>> Services 1975-2000 2000-
Personal Galleries
Personal Music
Doc Prep
File-Sharing
http://www.rogerclarke.com/EC/CCC.html#CASCopyright2013-15
18
Consumer Requirements and Risks – 1 of 3The Basic Needs• Does it do what I want it to do? [Fit]• Will it be there when I want it? [Availability, Reliability]
Copyright2013-15
19
Consumer Requirements and Risks – 1 of 3The Basic Needs• Does it do what I want it to do? [Fit]• Will it be there when I want it? [Availability, Reliability]
The Basic Protections• How do I keep going if it stays fallen over for a long time?
[Service Interruptions]• Will you respond helpfully and quickly enough when I ask for help?
[Customer Service]• Will you lose my data, or muck it up? [Data Integrity]• Do I get my data back if you fall over or withdraw the service?
[Survival]• Can I move my data to another supplier? [Lateral Compatibility]• Who can I complain to if I get dudded, and will they actually help
me? [Consumer Protection]
Copyright2013-15
20
Consumer Requirements and Risks – 1 of 3The Basic Needs• Does it do what I want it to do? [Fit]• Will it be there when I want it? [Availability, Reliability]
The Basic Protections• How do I keep going if it stays fallen over for a long time?
[Service Interruptions]• Will you respond helpfully and quickly enough when I ask for help?
[Customer Service]• Will you lose my data, or muck it up? [Data Integrity]• Do I get my data back if you fall over or withdraw the service?
[Survival]• Can I move my data to another supplier? [Lateral Compatibility]• Who can I complain to if I get dudded, and will they actually help
me? [Consumer Protection]
Copyright2013-15
21
Consumer Requirements and Risks – 2 of 3More Advanced Needs• Will it keep doing what it does now? [Service Integrity]• Will it stay up-to-date? [Future Fit]
• Will it fall over too often? [Robustness]• Will it come back quickly after it falls over? [Resilience]• Is my service protected against you, them and the gods?
[Service Security]• If bits of it are broken, will you fix it without breaking it some more?
[Maintainability]• Can I fiddle with it a bit if I need to? [Flexibility]• Can I move my data to an upgraded version? [Forward Compatibility]• How long will old versions keep working for me?
[Backward Compatibility]• Am I breaking the law if I use the service? [Legal Compliance]
Copyright2013-15
22
Consumer Requirements and Risks – 3 of 3More Advanced Protections• Am I going to get gouged? [Cost]• Can only appropriate people get in and do things?
[Authentication and Authorisation]• Can I get access to all data that you hold about me?
[Subject Access]• Is my data protected against you, them and the gods?
[Data Security]• Is my privacy protected against you, them and the gods?
[Privacy Controls]• If I terminate our relationship, will my data be irretrievably
deleted? [Fully Effective Withdrawal]• What happens to my data if I die? [Archival / Memorialisation]
http://www.rogerclarke.com/EC/CCC.html#CRR
Copyright2013-15
23
Key Developments Since the Mid-1990s• Workstation Capacity (now rivals Hosts)• Workstation Diversity (vast, expanding)
desktops, laptops, handhelds, smartcards, ...phones ==> smartphones, PDAs ==> tablets, ... carburettors, fridges, ... RFID tags, ... 'things' / IoT
• Broadband Connectivity (widespread)This enables dispersion and replicationof devices capable of providing services
• Wireless Connectivity (increasingly widespread)This enables Mobilitywhich means Devices change networkswhich means their IP-addresses change
Copyright2013-15
24
Computing Power ‘at the Edge’
Mobiles
Copyright2013-15
25
3. Peer-to-Peer (P2P) ArchitectureThe Cooperative Use of Resources at the Edge
Server & Client
inWorkstation
Server & Client
inWorkstation
Copyright2013-15
26
P2P – The Motivation
• Take advantage of resources that are available at the edges of the Internet
• Make each participating programboth a Client and a Server
• Each Workstation is also a Host, e.g.• a music playstation can be a mixer too• a PC can host part of a music repository• a tablet could host part of a music catalogue
Copyright2013-15
27
The P2P Server-Component’s Multiple Functions
Server & Client
inWorkstation
Server & Client
inWorkstation
Network ManagementDirectory Management
Object ManagementProcess Management
Copyright2013-15
28
P2P – Towards a Technical Definition
P2P is a network architecture in which each node
is capable of performing each of the functions
necessary to support the network
and in practice many nodes do perform many of the functions
Copyright2013-15
29
Important Characteristics of P2P
• Collaboration is inherent• Clients can find Servers• Enough Devices with Enough Resources act as
Servers for discovery, and as Servers for services• ‘Single Points-of-Failure’ / Bottlenecks / Chokepoints
are avoided by means of networking dynamics • 'Free-Riding' / 'Over-Grazing' of the 'Commons'
is restrained through software and psych. features
Copyright2013-15
30
P2P Applications for Access to Digital Objects
• Entertainment Materials, in various formats
Copyright2013-15
31
P2P Applications for Access to Digital Objects
• Software:• Fixes/Patches• Releases
• Virus Signatures• Announcements, e.g. of
technical info, business info, entertainment ‘info’, sports results, promotional messages, advertisements
• News Reports, by news organisations, and by members of the public
• Emergency Services Data• Backup and Recovery Data• Games Data, e.g. scenes
and battle configurations• Archived Messages, for
conferencing/chat/IM, and cooperative publishing
• Learning Materials, in various formats
• Entertainment Materials, in various formats
Copyright2013-15
32
Networks for 'Things'Artefacts / appliances / 'everyday objects' that have
embedded computing and communications capabilities
• TelemetryRemote data acquisition and reporting
• SCADA (Supervisory Control And Data Acquisition)Telemetry plus control messages sent back
• RFID and NFC TagsAttachments to provide short-distance wireless comms
• The Internet of Things (IoT)A vague term for inter-linking comms-capable artefacts
Copyright2013-15
33
Application Architectures
Agenda
1. The Notion of 'Architecture'2. Alternative Architectures:
.1 Master-Slave Architecture
.2 Client-Server Architecture• Cloud Computing
.3 Peer-to-Peer (P2P) Architecture3. Networks without People
Copyright2013-15
34
COMP 2410 – Networked Information Systems
IC1 – The Architecturesof Networked Applications
Roger ClarkeXamax Consultancy, Canberra
Visiting Professor, A.N.U. and U.N.S.W.
http://www.rogerclarke.com/II/NIS2410.html#L1http://www.rogerclarke.com/II/NIS2410-1 {.ppt, .pdf}
ANU RSCS, 18 March 2015
Copyright2013-15
35
A Few Drill-Down Slides
Copyright2013-15
36
Levels of Cloudsourcingand What is and isn't Outsourced
Copyright2013-15
37
Cloud Reliability – The First Few YearsInferences from Media Reports
(1) Outages are not Uncommon(2) Outages Arise from Multiple Causes(3) Providers' Safeguards are Sometimes Ineffective(4) Failure Cascades are Prevalent(5) Providers have had to be Forced to be Responsive(6) Providers have often been Uninformative(7) Outages may Affect Important Ancillary Services(8) The Direct Impacts have sometimes been Significant(9) Indirect Impacts have often been Even More Significant(10) Few Customers are Recompensed
http://www.rogerclarke.com/EC/CCEF-CO.html Copyright2013-15
38
Why P2P Is Attractive
• Much-Reduced Dependence on individual devices and sub-networks (no central servers)
• Robustness not Fragility (no single point-of-failure)• Resilience / Quick Recovery (inbuilt redundancy)• Resistance to Denial of Service (D)DOS Attacks
(no central servers)
• Much-Improved Scalability (proportionality)• Improved Servicing of Highly-Peaked Demand
(more devices on the demand-side implies there are also more server-resources)
Copyright2013-15
39
Technical Concerns about P2P
• Address Volatility: old addresses may not work(hence trust based on repetitive dealings is difficult)
• Absence of Central Control (hence risk of anarchy)• Inadequate Server Participation (over-grazing)• Security Challenges:
• Malware, embedded or infiltrated• Surreptitious Enlistment (at least potential)• Vulnerability to Masquerade• Vulnerability to Pollution Attacks (decoys)