Upload
norman-kelley
View
213
Download
0
Embed Size (px)
Citation preview
Introduction 1
From P2P to Web Services and Grids
MM Lab. Catholic University of Daegu
Ian J. Taylor
Introduction 2
1. Introduction (1/14)
Although the underlying philosophies of Grid computing and P2
P are different, they both are attempting to solve the same probl
em, that is, to create a virtual overlay over the existing Internet t
o enable collaboration and sharing of resource.
Overlay Networks
기존의 네트워크가 제공하지 않는 네트워크 서비스를 수행할 목적으로 , 기존의 네트워크 위에서 설정된 노드들 (nodes) 과 논리적 링크들 (logical links) 로 이루어진 가상 네트워크를 말한다 . 따라서 오버레이 네트워크에서 이웃 노드들은 물리적인 이웃 노드가 아니라
논리적인 이웃 노드이다 .
Introduction 3
1. Introduction (2/14)
refer only to networks that create virtual topologies based on node-content attributes. Overlay networks share four common qualities:
1. Guaranteed data retrieval 2. Provable lookup-time horizons (typically O(log N) with N being the number
of network nodes) 3. automatic load balancing 4. self-organization
• In implementation, the approaches differ greatly.1. Grid computing connects virtual individual users using highly transient in a
collaborative fashion.2. P2P connects individual users using highly transient devices and computers
living at the edges of the Internet.
Introduction 4
1. Introduction (3/14)
Introduction 5
1. Introduction (4/14)
1.1 Introduction to Distributed Systems
Definition
A distributed system is a collection of independent computers that appears to its users as a single coherent systems.
Characteristics
1. be capable of dealing with heterogeneous devices
2. be easy to expand and scale
3. be permanently available
4. hide communication from the users
Introduction 6
1. Introduction (5/14)
The role of middleware in a distributed system
Introduction 7
1. Introduction (6/14)
Middleware abstracts the underlying mechanism and protocols from the application developer and provides a collection of high-level capabilities to make things for programmers to develop and deploy their applications.
Middleware therefore provides the virtual overlay across the distributed resources to enable transparent deployment across the underlying infrastructures.
1.2 Some Terminology Resource: any hardware or software entity being represented or shared on a di
stributed network. Node: a generic term used to represent any device on a distributed network. Client: is a consumer of information, e.g., a Web browser. Server: is a provider of information, e.g., a Web server or a peer offering a fil
e-sharing service. Service: is "a network-enabled entity that rpovides some capability". Peer: a peer is when a device acts as both a consumer and provider of informa
tion.
Introduction 8
1. Introduction (7/14)
An overview of the terms used to describe distributed resources.
Introduction 9
1. Introduction (8/14)
1.3 Centralized and Decentralized Systems Three main areas that determine whether a system is centralized or decentral
ized: 1. Resource Discovery 2. Resource Availability
3. Resource Communication
1.3.1 Resource Discovery Within any distributed system, there needs to be a mechanism for discoverin
g the resources. This process is referred to as discovery and a service which supplies this information is called a discovery services.
Discovery is typically a two-state process.1. the discovery service needs to be located. 2. the relevant information is retrieved.
Introduction 10
1. Introduction (9/14)
1.3.2 Resource Availability A comparison of service availability from centralized, brokered and
decentralized system.
Gnutella Scenario
User
Mp3.com
MP3.com Scenario
User
Napster.com
Napster Scenario
Introduction 11
1. Introduction (10/14)
1.3.3 Resource Communication
There are two methods of communication between resources of a distributed system:
1. Brokered Communication: where the communication is always passed through a central server and therefore a resource does not have to reference the other resource directly.
2. 2. Point-to-Point (or Peer-to-Peer) Communication: this involves a direct connection between the sender and the receiver. Ih this case, the sender is aware of the receiver's location.
Introduction 12
1. Introduction (11/14)
The centralization of communication: a truly decentralized system would have even connections across hosts, rather than a many-to-one type
connectivity.
Introduction 13
1. Introduction (12/14)
1.4 Examples of Distributed Applications 1.4.1 A Web Server: Centralized Taxonomy for Web Server
Introduction 14
1. Introduction (13/14)
1.4.3 Napster: Brokered
Taxonomy for Napster
Introduction 15
1. Introduction (14/14)
1.4.4 Gnutella: Decentralized Taxonomy for Gnutella