From P2P to Web Services and Grids: Peers In A Client/Server World

Front Cover
Springer Science & Business Media, 2005 - Computers - 275 pages
0 Reviews
IEEE DS Online Exclusive Content Book Reviews The Tech Hotlist: Grid Computing and P2P Milan Lathia a? Gridalogy and University of Illinois at Urbana-Champaign From P2P to Web Services and Grids: Peers in a Client Server World By Ian J. Taylor 275 pages US$64.95 Springer, 2004 ISBN: 1-852-33869-5 P2P (peer-to-peer) and grid computing are hot new technologies that have been touted by the media and are popular in academic and industrial circles. From P2P to Web Services and Grids: Peers in a Client Server World provides a comprehensive, updated review of the new and improved distributed computing technology formed by the union of computing and communications. As Ian J. Taylor points out, he wrote the book primarily for university students. Ita's written like a textbook, and very well, too. You need a computing foundation and some familiarity with grid computing to grasp all the concepts. The book does, however, give a good overview of the technology before delving too deeply into the details. Each chapter builds the technical know-how needed for the next one. Taylor is a professor at the University of Cardiff. The book is based largely on his online notes on P2P and distributed systems, which have been valuable to many students, including me. In addition, the book explains in detail recent technologies such as JXTA, Jini, Globus, and Freenet. Taylor also gives security, a rising concern with grid computing, the attention it deserves. He provides additional references for each chapter if you need more detail. The book has four parts: Distributed Environments; Middleware, Applications, and Supporting Technologies; Middleware Deployment; and From Web Services to Future Grids. The distributed-environments section works as an orientation and an introduction to many grid-computing-related concepts. It talks about P2P (peer-topeer), Web services, and grid-computing technologies. It covers the concept of distributed computing and P2P, their history, the technology, and academic and industrial applications. The grid-computing chapter is well written, with good information on the Globus Toolkit and the grid architecture. This section sets the tone of the book by introducing and explaining the basic principles of distributed computinga'the backbone of P2P and grid computing. The second section explores several well-known P2P and distributed computing technologies such as Jini and JXTA. Taylor uses code snippets to simplify many complex concepts used in these technologies. He also introduces signatures, encryption, and other related technologies. The analogical and simplified explanations of key concepts such as virtual organization, network topology, and addressing are well done. Additionally, this section details Gnutella and Freenet, two of the most popular P2P file-sharing mechanisms. Although neither Taylor nor I support illegal file sharing, I do appreciate the systema's architecture and design. His explanation does justice to file-sharing software concepts and technology. This section also looks in depth at concerns such as scalability and security. Not many authors have written in detail about security for grid computing. The third section includes chapters on several demo applications and code examples for using different technologies in grid computing. You can download and run the sample code from the companion Web site. The section details and demonstrates the power of Jini, JXTA, and related Web services. The final section covers various grid technologies. Services based on the Grid Computing Architecture and OGSA (Open Grid Services Architecture) re
  

What people are saying - Write a review

We haven't found any reviews in the usual places.

Contents

Introduction
1
11 Introduction to Distributed Systems
2
12 Some Terminology
3
13 Centralized and Decentralized Systems
5
131 Resource Discovery
6
132 Resource Availability
7
133 Resource Communication
9
14 Examples of Distributed Applications
10
Security
133
82 Design Issues
135
822 Layering of Security Mechanisms
136
823 Simplicity
138
832 Types of Encryption
140
834 Asymmetric Cryptosystem
141
835 Hash Functions
142
84 Signing Messages with a Digital Signature
143

Centralized
12
Brokered
13
15 Examples of Middleware
15
Brokered
16
Brokered
17
16 Conclusion
18
Distributed Environments
19
Peer2Peer Systems
23
211 Historical Peer to Peer
24
213 Modern Definition of Peer to Peer
25
214 Social Impacts of P2P
27
215 True Peer to Peer?
29
216 Why PeertoPeer?
30
22 The P2P Environment
31
222 NAT Systems
32
223 Firewalls
34
224 P2P Overlay Networks
35
23 P2P Example Applications
37
232 Distributed Computing Using SETIHome
38
233 Instant Messaging with ICQ
39
234 File Sharing with Gnutella
40
235 Conclusion
41
Web Services
43
What Do We Need?
44
312 Representing Data and Semantics
47
32 Web Services
48
321 A Minimal Web Service
49
322 Web Services Architecture
50
323 Web Services Development
52
33 ServiceOriented Architecture
53
34 Common Web Service Misconceptions
55
35 Conclusion
56
Grid Computing
57
42 Social Perspective
58
43 History of the Grid
59
431 The First Generation
60
432 The Second Generation
61
433 The Third Generation
62
44 The Grid Computing Architecture
63
441 Virtual Organizations and the Sharing of Resources
64
These Are the Criteria
67
452 Standard Open GeneralPurpose Protocols
68
453 Quality Of Service
69
47 The Globus Toolkit 2x
70
471 Globus Tools
71
472 Security
72
473 Information Services
73
474 Data Management
74
475 Resource Management
76
48 Comments and Conclusion
77
Middleware Applications and Supporting Technologies
79
Jini
83
51 Jini
84
521 RMI
85
522 Serialization
86
53 Jini Architecture
89
531 Jini in Operation
91
54 Registering and Using Jini Services
93
Registering a Service Jini Service
94
Finding and Using Services Jini Client
96
Tying Things Together
97
56 Organization of Jini Services
99
57 Conclusion
100
Gnutella
101
62 What Is Gnutella?
102
Connecting and Operating Within a Gnutella Network
105
633 Searching Within Gnutella
106
64 Gnutella 04 Protocol Description
107
641 Gnutella Descriptors
108
642 Gnutella Descriptor Header
109
Ping
110
Query
111
Push
112
65 File Downloads
113
66 Gnutella Implementations
115
Scalability
117
72 P2P Networks
119
73 Peer Topologies
121
731 Centralized
122
734 Decentralized
124
742 CentralizedCentralized
125
75 The Convergence of Napster and Gnutella
127
76 A Southern SideStep
128
77 Gnutella Analysis
129
772 Equal Peers?
130
78 Further Reading
131
85 Secure Channels
144
851 Secure Channels Using Symmetric Keys
145
Creating a Sandbox
147
87 Conclusion
148
Freenet
151
92 Freenet Routing
152
922 SelfOrganizing Adaptive Behaviour in Freenet
153
923 Requesting Files
154
924 Similarities with Other Peer Organization Techniques
155
93 Freenet Keys
156
931 KeywordSigned Keys
157
932 Signed Subspace Keys
158
933 Content Hash Keys
159
934 Clustering Keys
160
94 Joining the Network
161
95 Conclusion
162
Jxta
163
1011 Interoperability
164
1013 Ubiquity
165
102 Jxta Overview
166
1022 Jxta Peers
167
1023 Identifiers
168
1024 Advertisements
169
1026 Modules
170
1032 Rendezvous Nodes
171
1033 Pipes
172
1034 Relay Nodes
174
1042 The Peer Resolver Protocol
175
1043 The Peer Information Protocol
176
106 Jxta Environment Considerations
177
1062 NAT and Firewalls
178
Middleware Deployment
181
Distributed Object Deployment Using Jini
185
112 An RMI Application
186
1122 The Server
187
1123 The Client
189
1124 Setting up the Environment
190
113 A Jini Application
191
1131 The Remote Interface
192
1133 The Client
194
114 Running Jini Applications
196
1143 The Jini Lookup Service
197
115 Conclusion
198
P2P Deployment Using Jxta
199
1211 Starting the Jxta Platform
200
1212 Discovery
201
1213 Creating Pipes
204
122 Running Jxta Applications
208
The Jxta Approach
209
1232 Peer Configuration Management Within Jxta
211
1233 Running The Examples
214
1235 Expiration of Adverts
215
124 Conclusion
216
Web Services Deployment
217
1311 Just Like Sending a Letter
218
1312 Web Services Architecture with SOAP
219
1313 The Anatomy of a SOAP Message
221
132 WSDL
222
1321 Service Description
223
1322 Implementation Details
224
1323 Anatomy of a WSDL Document
225
133 UDDI
228
134 Using Web Services
229
1342 A Simple Web Service
231
1343 Deploying a Web Service Using Axis
232
1344 Web Service Invocation
233
1345 Cleaning Up and UnDeploying
235
From Web Services to Future Grids
237
OGSA
241
141 OGSA
242
1412 Virtual Services
244
1413 OGSA Architecture
245
142 OGSI
246
1421 Globus Toolkit Version 3
249
1431 Problems with OGSI
250
1432 Grid Services or Resources?
251
1434 Globus Toolkit Version 4
252
Want to Find Out More?
253
A2 P2P Computing
254
A3 Distributed Object Computing
255
A4 Web Services
256
RSA Algorithm
259
References
261
Index
269
Copyright

Common terms and phrases

Bibliographic information