cs6601 distributed systems
TRANSCRIPT
![Page 1: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/1.jpg)
CS6601 DISTRIBUTED SYSTEMS
UNIT – I
Dr.A.Kathirvel, Professor, Computer Science and Engg.
M N M Jain Engineering College, Chennai
![Page 2: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/2.jpg)
Unit - I
INTRODUCTION
Examples of Distributed Systems–Trends
in Distributed Systems – Focus on
resource sharing – Challenges. Case
study: World Wide Web.
Coulouris, Dollimore, Kindberg and Blair
Distributed Systems:Concepts and Design Edition 5, Addison-Wesley 2012
![Page 3: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/3.jpg)
Applications
Most people know about the Internet (a computer network) through applications
World Wide Web
Online Social Network
Streaming Audio Video
File Sharing
Instant Messaging
…
3
![Page 4: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/4.jpg)
4
Selected application domains and
associated networked applications Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking
and trading
The information society Web information and search engines, ebooks, Wikipedia; social
networking: Facebook and MySpace.
Creative industries and
entertainment
online gaming, music and film in the home, user-generated
content, e.g. YouTube, Flickr
Healthcare health informatics, on online patient records, monitoring
patients
Education e-learning, virtual learning environments; distance learning
Transport and logistics GPS in route finding systems, map services: Google Maps,
Google Earth
Science The Grid as an enabling technology for collaboration between
scientists
Environmental
management
sensor technology to monitor earthquakes, floods or tsunamis
![Page 5: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/5.jpg)
Fig1.2 : An example financial trading
system
5
![Page 6: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/6.jpg)
intranet
ISP
desktop computer:
backbone
satellite link
server:
☎
network link:
☎
☎
☎
Fig1.3: A typical portion of the Internet
6
![Page 7: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/7.jpg)
Fig1.4: Portable and handheld devices
in a distributed system
7
![Page 8: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/8.jpg)
8
Fig1.5: Cloud computing
8
![Page 9: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/9.jpg)
Fig1.6: Growth of the Internet
(computers and web servers)
Date Computers Web servers Percentage
1993, July 1,776,000 130 0.008
1995, July 6,642,000 23,500 0.4
1997, July 19,540,000 1,203,096 6
1999, July 56,218,000 6,598,697 12
2001, July 125,888,197 31,299,592 25
42,298,371 2003, July
2005, July
~200,000,000
353,284,187 67,571,581
21
19
9
![Page 10: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/10.jpg)
Transparencies Access transparency: enables local and remote resources to be accessed using identical
operations.
Location transparency: enables resources to be accessed without knowledge of their
physical or network location (for example, which building or IP address).
Concurrency transparency: enables several processes to operate concurrently using
shared resources without interference between them.
Replication transparency: enables multiple instances of resources to be used to increase
reliability and performance without knowledge of the replicas by users or application
programmers.
Failure transparency: enables the concealment of faults, allowing users and application
programs to complete their tasks despite the failure of hardware or software
components.
Mobility transparency: allows the movement of resources and clients within a system
without affecting the operation of users or programs.
Performance transparency: allows the system to be reconfigured to improve
performance as loads vary.
Scaling transparency: allows the system and applications to expand in scale without
change to the system structure or the application algorithms.
10
![Page 11: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/11.jpg)
Fig1.7: Web servers and web browsers
Internet
Browsers Web servers
www.google.com
www.cdk5.net
www.w3c.org
standards
faq.html
http://www.w3.org/standards/faq.html#conformance
http://www.google.comlsearch?q=obama
http://www.cdk5.net/
File system of www.w3c.org
11
![Page 12: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/12.jpg)
Fig2.1:Generations of DS
12
![Page 13: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/13.jpg)
Fig2.2:Communicating entities and
communication paradigms
13
![Page 14: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/14.jpg)
Fig2.3:Clients invoke individual servers
Server
Client
Client
invocation
result
Serverinvocation
result
Process:Key:
Computer:
14
![Page 15: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/15.jpg)
Fig2.4a:Peer-to-peer architecture
15
![Page 16: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/16.jpg)
Fig2.4b: A service provided by multiple
servers
Server
Server
Server
Service
Client
Client
16
![Page 17: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/17.jpg)
Fig2.5:Web proxy server
Client
Proxy
Web
server
Web
server
serverClient
17
![Page 18: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/18.jpg)
Fig2.6: Web applets
a) client request results in the downloading of applet code
Web
server
ClientWeb
serverApplet
Applet code
Client
b) client interacts with the applet
18
![Page 19: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/19.jpg)
Fig2.7:Software and hardware
service layers in distributed Systems
Applications , services
Computer and network hardware
Platform
Operating system
Middleware
19
![Page 20: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/20.jpg)
Fig2.8:Two-tier & three-tier architectures
20
![Page 21: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/21.jpg)
Fig2.9:AJAX example: soccer score
updates
new Ajax.Request('scores.php? game=Arsenal:Liverpool’,
{onSuccess: updateScore});
function updateScore(request) {
.....
( request contains the state of the Ajax request including the
returned result.
The result is parsed to obtain some text giving the score, which
is used to update the relevant portion of the current page.)
....
}
21
![Page 22: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/22.jpg)
Fig2.10:Thin clients and compute
servers
Thin Client
Application Process
Network computer or PC Compute server
network
22
![Page 23: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/23.jpg)
Fig2.11:The web service architectural
pattern
23
![Page 24: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/24.jpg)
Fig2.12: Categories of middleware
24
![Page 25: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/25.jpg)
Fig2.13:Real-time ordering of events
send
receive
send
receive
m1 m2
2
1
3
4X
Y
Z
Phys ical
time
A
m3
receive receive
send
receive receive receive
t1 t2 t3
receive
receive
m2
m1
25
![Page 26: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/26.jpg)
Fig2.14:Processes and channels
process p process q
Communication channel
send
Outgoing m essage buffer Incom ing message buffer
receivem
26
![Page 27: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/27.jpg)
Fig2.15: Omission and arbitrary failures
Class of failure Affects Description
Fail-stop Process Process halts and remains halted. Other processes may detect this state.
Crash Process Process halts and remains halted. Other processes may not be able to detect this state.
Omission Channel A message inserted in an outgoing message buffer never arrives at the other end’s incoming message buffer.
Send-omission Process A process completes a send, but the message is not put in its outgoing message buffer.
Receive-omission Process A message is put in a process’s incoming message buffer, but that process does not receive it.
Arbitrary (Byzantine)
Process or channel
Process/channel exhibits arbitrary behaviour: it may send/transmit arbitrary messages at arbitrary times, commit omissions; a process may stop or take an incorrect step.
27
![Page 28: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/28.jpg)
Fig2.11:Timing failures
Class of Failure Affects Description
Clock Process Process’s local clock exceeds the bounds on its rate of drift from real time.
Performance Process Process exceeds the bounds on the interval between two steps.
Performance Channel A message’s transmission takes longer than the stated bound.
28
![Page 29: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/29.jpg)
Fig2.17:Objects and principals
Network
invocation
result
ClientServer
Principal (user) Principal (server)
ObjectAccess rights
29
![Page 30: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/30.jpg)
Fig2.18: The enemy
Communication channel
Copy of m
Process p Process q m
The enemy m’
30
![Page 31: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/31.jpg)
Fig2.19: Secure channels
Principal A
Secure channel Process p Process q
Principal B
31
![Page 32: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/32.jpg)
Fig3.1:Network performance
km
32
![Page 33: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/33.jpg)
Fig3.2: Conceptual layering of
protocol software
Layer n
Layer 2
Layer 1
Message sent Message received
Communication
medium
Sender Recipient
33
![Page 34: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/34.jpg)
Fig3.3: Encapsulation as it is applied
in layered protocols
Presentation header
Application-layer message
Session header
Transport header
Network header
34
![Page 35: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/35.jpg)
Fig3.4:Protocol layers in the ISO Open
Systems Interconnection (OSI) model
Application
Presentation
Session
Transport
Network
Data link
Phys ical
Message sent Message received
Sender Recipient
Layers
Communication
medium
35
![Page 36: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/36.jpg)
Fig3.5: OSI protocol summary
Layer Description Examples
Application Protocols that are designed to meet the communication requirements of specific applications, often defining the interface to a service.
HTTP, FTP , SMTP, CORBA IIOP
Presentation Protocols at this level transmit data in a network representation that is independent of the representations used in individual computers, which may differ. Encryption is also performed in this layer, if required.
Secure Sockets ( SSL),CORBA Data Rep.
Session At this level reliability and adaptation are performed, such as detection of failures and automatic recovery.
Transport This is the lowest level at which messages (rather than packets) are handled. Messages are addressed to communication ports attached to processes, Protocols in this layer may be connection-oriented or connectionless.
TCP, UDP
Network Transfers data packets between computers in a specific network. In a WAN or an internetwork this involves the generation of a route passing through routers. In a single LAN no routing is required.
IP, ATM virtual circuits
Data link Responsible for transmission of packets between nodes that are directly connected by a physical link. In a WAN transmission is between pairs of routers or between routers and hosts. In a LAN it is between any pair of hosts.
Ethernet MAC, ATM cell transfer, PPP
Physical The circuits and hardware that drive the network. It transmits sequences of binary data by analogue signalling, using amplitude or frequency modulation of electrical signals (on cable circuits), light signals (on fibre optic circuits) or other electromagnetic signals (on radio and microwave circuits).
Ethernet base- band signalling, ISDN
36
![Page 37: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/37.jpg)
Fig3.6:Internetwork layers
Underlying network
Application
Network interface
Transport
Internetwork
Internetwork packets
Network-specific packets
MessageLayers
Internetworkprotocols
Underlyingnetworkprotocols
37
![Page 38: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/38.jpg)
Fig3.7:Routing in a wide area network
Hosts Links
or local
networks
A
D E
B
C
1
2
5
4 3
6
Routers
38
![Page 39: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/39.jpg)
Fig3.8:Routing tables for the network
in Fig3.7
Routings from D Routings from E
To Link Cost To Link Cost
A
B
C
D
E
3
3
6
local
6
1
2
2
0
1
A
B
C
D
E
4
4
5
6
local
2
1
1
1
0
Routings from A Routings from B Routings from C
To Link Cost To Link Cost To Link Cost
A
B
C
D
E
local
1
1
3
1
0
1
2
1
2
A
B
C
D
E
1
local
2
1
4
1
0
1
2
1
A
B
C
D
E
2
2
local
5
5
2
1
0
2
1
39
![Page 40: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/40.jpg)
Fig3.9:Pseudo-code for RIP routing
algorithm
Send: Each t seconds or when Tl changes, send Tl on each non-faulty outgoing
link.
Receive: Whenever a routing table Tr is received on link n:
for all rows Rr in Tr {
if (Rr.link | n) {
Rr.cost = Rr.cost + 1;
Rr.link = n;
if (Rr.destination is not in Tl) add Rr to Tl;
// add new destination to Tl
else for all rows Rl in Tl {
if (Rr.destination = Rl.destination and
(Rr.cost < Rl.cost or Rl.link = n)) Rl = Rr;
// Rr.cost < Rl.cost : remote node has better route
// Rl.link = n : remote node is more authoritative
}}}
40
![Page 41: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/41.jpg)
Fig3.10: Simplified view of part of a
university campus network
file
compute
dialup
hammer
henry
hotpoint
138.37.88.230
138.37.88.162
bruno 138.37.88.249
router/
sickle
138.37.95.241 138.37.95.240/29
138.37.95.249
copper 138.37.88.248
firewall
web
138.37.95.248/29
server
desktop computers 138.37.88.xx
subnet
subnet
Eswitch
138.37.88
server
server
server
138.37.88.251
custard 138.37.94.246
desktop computers
Eswitch
138.37.94
hub hub
Student subnet Staff subnet
other servers
router/ firewall
138.37.94.251
☎
1000 Mbps Ethernet
Eswitch: Ethernet switch
100 Mbps Ethernet
file server/ gateway
printers
Campus router
Campus router
138.37.94.xx
41
![Page 42: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/42.jpg)
Fig3.11:Tunnelling for IPv6 migration
A B IPv6 IPv6
IPv6 encapsulated in IPv4 packets
Encapsulators
IPv4 network
42
![Page 43: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/43.jpg)
Fig3.12: TCP/IP layers
Messages (UDP) or Streams (TCP)
Application
Transport
Internet
UDP or TCP packets
IP datagrams
Network-specific frames
Message Layers
Underlying network
Network interface
43
![Page 44: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/44.jpg)
Fig3.13:Encapsulation in a message
transmitted via TCP over an Ethernet
Application message
TCP header
IP header
Ethernet header
Ethernet frame
port
TCP
IP
44
![Page 45: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/45.jpg)
Fig3.14:The programmer's conceptual
view of a TCP/IP Internet
IP
Application Application
TCP UDP
45
![Page 46: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/46.jpg)
Fig3.15: Internet address structure,
showing field sizes in bits 7 24
Class A: 0 Network ID Host ID
14 16
Class B: 1 0 Network ID Host ID
21 8
Class C: 1 1 0 Network ID Host ID
28
Class D (multicas t): 1 1 1 0 Multicas t address
27
Class E (reserved): 1 1 1 1 unused0
28
46
![Page 47: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/47.jpg)
Fig3.16:Decimal representation of
Internet addresses
octet 1 octet 2 octet 3
Class A: 1 to 127
0 to 255 0 to 255 1 to 254
Class B: 128 to 191
Class C: 192 to 223
224 to 239 Class D (multicast):
Network ID
Network ID
Network ID
Host ID
Host ID
Host ID
Multicast address
0 to 255 0 to 255 1 to 254
0 to 255 0 to 255 0 to 255
0 to 255 0 to 255 0 to 255
0 to 255 0 to 255 1 to 254 240 to 255 Class E (reserved):
1.0.0.0 to
127.255.255.255
128.0.0.0 to
191.255.255.255
192.0.0.0 to
223.255.255.255
224.0.0.0 to
239.255.255.255
240.0.0.0 to
255.255.255.255
Range of addresses
47
![Page 48: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/48.jpg)
Fig3.17:IP packet layout
dataIP address of destinationIP address of source
header
up to 64 kilobytes
Figure 3.19 IPv6 header layout
Source
address (128 bits)
Destination
address (128 bits)
Version (4 bits) Traffic class (8 bits) Flow label (20 bits)
Payload length (16 bits) Hop limit (8 bits) Next header (8 bits)
48
![Page 49: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/49.jpg)
Fig3.18:A typical NAT-based home
network
49
![Page 50: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/50.jpg)
Fig3.20: The MobileIP routing
mechanism
Sender
Home
Mobile host MH
Foreign agent FA
Internet
agent
First IP packet
addressed to MH
Address of FA
returned to sender
First IP packet
tunnelled to FA
Subsequent IP packets
tunnelled to FA
50
![Page 51: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/51.jpg)
Fig3.21:Firewall configurations
Internet
Router/Protected intranet
a) Filtering router
Internet
b) Filtering router and bastion
filter
Internet
R/filterc) Screened subnet for bastion R/filter Bastion
R/filter Bastion
web/ftpserver
web/ftpserver
web/ftpserver
51
![Page 52: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/52.jpg)
Fig3.22: IEEE 802 network standards
IEEE No. Name Title Reference
802.3 Ethernet CSMA/CD Networks (Ethernet) [IEEE 1985a]
802.4 Token Bus Networks [IEEE 1985b]
802.5 Token Ring Networks [IEEE 1985c]
802.6 Metropolitan Area Networks [IEEE 1994]
802.11 WiFi Wireless Local Area Networks [IEEE 1999]
802.15.1 Bluetooth Wireless Personal Area Networks [IEEE 2002]
802.15.4 ZigBee Wireless Sensor Networks [IEEE 2003]
802.16 WiMAX Wireless Metropolitan Area Networks [IEEE 2004a]
52
![Page 53: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/53.jpg)
Fig3.23:Ethernet ranges and speeds
10Base5 10BaseT 100BaseT 1000BaseT
Data rate 10 Mbps 10 Mbps 100 Mbps 1000 Mbps
Max. segment lengths:
Twisted wire (UTP) 100 m 100 m 100 m 25 m
Coaxial cable (STP) 500 m 500 m 500 m 25 m
Multi-mode fibre 2000 m 2000 m 500 m 500 m
Mono-mode fibre 25000 m 25000 m 20000 m 2000 m
53
![Page 54: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/54.jpg)
Fig3.24: Wireless LAN configuration
LAN
Server
WirelessLAN
Laptops
Base s tation/access point
Palmtop
radio obs truction
A B C
DE
54
![Page 55: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/55.jpg)
Fig3.25: Bluetooth frame structure
SCO packets (e.g. for voice data) have a 240-bit payload containing 80
bits of data triplicated, filling exactly one timeslot.
bits: 72 18 18 18 0 - 2744
Access code Header copy 1
Header
copy 2
Header copy 3
Data for transmission
bits: 3 1 1 1 4 8
Destination Flow Ack Seq Type Header checksum
Address within Piconet
= ACL, SCO, poll, null
Header
55
![Page 56: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/56.jpg)
Designing Distributed Systems
Google Case Study
56
![Page 57: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/57.jpg)
Fig21.1:Outline architecture of the
original Google search engine
57
![Page 58: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/58.jpg)
Fig21.2: Example Google applications
58
![Page 59: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/59.jpg)
Fig21.3:Organization of the Google
physical infrastructure
(To avoid
clutter the
Ethernet
connection
s are
shown
from only
one of the
clusters to
the
external
links)
59
![Page 60: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/60.jpg)
Fig21.4:The scalability problem-Google
60
![Page 61: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/61.jpg)
Fig21.5:The overall Google systems
architecture
61
![Page 62: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/62.jpg)
Fig21.6: Google infrastructure
62
![Page 63: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/63.jpg)
Fig21.7: Protocol buffers example
63
![Page 64: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/64.jpg)
Fig21.8a:Summary of design choices
related to communication-paradigmspart
64
![Page 65: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/65.jpg)
Fig21.8b:Summary of design choices
related to communication paradigms-part2
65
![Page 66: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/66.jpg)
Fig21.9:Overall architecture of GFS
66
![Page 67: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/67.jpg)
Fig21.10:Chubby API
67
![Page 68: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/68.jpg)
Fig21.11:Overall architecture of Chubby
68
![Page 69: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/69.jpg)
Fig21.12: Message exchanges in
Paxos (in absence of failures) - step 1
69
![Page 70: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/70.jpg)
Fig21.12:Message exchanges in Paxos
(in absence of failures) - step 2
70
![Page 71: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/71.jpg)
Fig21.12:Message exchanges in
Paxos (in absence of failures)-step 3
71
![Page 72: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/72.jpg)
Fig21.13:The table abstraction in Bigtable
72
![Page 73: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/73.jpg)
Fig21.14:Overall architecture of Bigtable
73
![Page 74: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/74.jpg)
Fig21.15:The storage architecture-Bigtable
74
![Page 75: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/75.jpg)
Fig21.16:The hierarchical indexing
scheme adopted by Bigtable
75
![Page 76: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/76.jpg)
Fig21.17:Summary of design choices
related to data storage and coordination
![Page 77: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/77.jpg)
Fig21.18:Examples of the use of MapReduce
77
![Page 78: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/78.jpg)
Fig21.19:The overall execution of a
MapReduce program
78
![Page 79: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/79.jpg)
Fig21.20:The overall execution of a
Sawzall program
79
![Page 80: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/80.jpg)
Fig21.21:Summary of design choices
related to distributed computation
80
![Page 81: CS6601 DISTRIBUTED SYSTEMS](https://reader034.vdocuments.us/reader034/viewer/2022042907/58845bbf1a28ab903b8b7313/html5/thumbnails/81.jpg)
Questions?