search for books and compare prices
Tables of Contents for Peer-To-Peer With Vb .Net
Chapter/Section Title
Page #
Page Count
About the Author
xv
 
About the Technical Reviewer
xvii
 
Acknowledgments
xix
 
Introduction
xxi
 
Part One Introducing Peer-to-Peer
1
32
Chapter 1 The Evolution of Peer-to-Peer
3
20
A Brief History of Programming
3
5
The Birth of Client-Server
4
1
Distributed Computing
5
1
Peer-to-Peer Appears
6
2
Evaluating the Peer-to-Peer Model
8
5
Benefits and Challenges
8
2
Peer-to-Peer and Security
10
1
The Peer-to-Peer Niche
10
3
The Evolution of the Internet
13
7
The Early Internet
13
1
The Client-Server Internet
13
1
The Return of Peer-to-Peer
14
5
The "Death" of Peer-to-Peer
19
1
Peer-to-Peer Technologies in .NET
20
1
The Last Word
21
2
Chapter 2 Peer-to-Peer Architecture
23
10
Peer-to-Peer Characteristics
23
4
Peer Identity
23
1
Peer Discovery
24
1
The Server-Mode/Client-Mode Model
25
1
Network Addressing Challenges
26
1
Peer-to-Peer Topology
27
4
Peer-to-Peer with a Discovery Server
27
1
Peer-to-Peer with a Coordination Server
28
1
Pure Peer-to-Peer
29
2
The Last Word
31
2
Part Two Peer-to-Peer with a Coordination Server
33
154
Chapter 3 Remoting Essentials
35
36
Inter-Process Communication
35
4
Introducing Remoting
37
1
Remoting Advantages
37
1
Remoting Drawbacks
38
1
Remoting Architecture
39
10
Serializable Types
41
3
Remotable Types
44
1
Remoting Hosts
45
2
Configuration Files
47
2
A Basic Remoting Example
49
10
The Remote Object
50
1
The Server
50
1
The Server Configuration File
51
2
The Client
53
1
The Client Configuration File
54
1
The Application in Action
55
3
Remote Object Lifetime
58
1
A Bidirectional Remoting Example
59
5
The Remote Objects
60
2
The Configuration Files
62
1
The Client
63
1
Configuring Remoting
64
5
Formatters and Channels
65
2
Dynamic Registration
67
2
The Last Word
69
2
Chapter 4 Building a Simple Messenger
71
42
Envisioning Talk .NET
71
6
Defining the Interfaces
73
1
Creating the TraceComponent
74
3
The Coordination Server
77
5
Tracking Clients
80
1
Sending Messages
81
1
The TalkClient
82
13
The Remotable ClientProcess Class
84
6
The Talk Form
90
5
Enhancing Talk .NET
95
16
Cleaning Up After Clients
95
2
Toward Decentralization
97
3
Adding a File Transfer Feature
100
7
Scalability Challenges with the Simple Implementation
107
1
Databases and a Stateless Server
108
1
OneWay Methods
108
1
Optional Features
109
1
Firewalls, Ports, and Other Issues
109
1
Remoting and Network Address Translation
110
1
The Last Word
111
2
Chapter 5 Threading the Coordination Server
113
34
Threading Essentials
113
1
Threading and the Coordination Server
114
17
Synchronizing Collection Access
115
3
Creating a Delivery Service
118
8
Deadlocks and Other Threading Nightmares
126
1
Using the ThreadPool
127
3
Cleaning Up Disconnected Clients
130
1
Threading and the Client
131
13
Refining Talk .NET
134
1
Client Lifetime
134
2
Duplicate Users
136
2
Using a Windows Service
138
6
The Last Word
144
3
Chapter 6 Building a Distributed Task Manager
147
40
Distributed Computing Issues
147
2
Defining the Task Interface
149
6
The TaskComponent Interfaces
150
2
Message Objects
152
2
The Task Logic
154
1
Creating the Work Manager
155
10
Tracking Workers
156
2
Tasks
158
3
Dispatching Tasks
161
2
Completing Tasks
163
2
Creating the Task Worker
165
10
The System Tray Interface
165
2
The ClientProcess
167
4
The Main Form
171
4
Enhancing the Work Manager
175
11
Queuing
175
1
Performance Scoring
176
1
Writing Directly to a Result Store
177
1
A Generic Task Client
178
2
A Configurable Sandbox
180
5
Toward a Pure Peer-to-Peer Task Manager
185
1
The Last Word
186
1
Part Three Peer-to-Peer with a Discovery Server
187
116
Chapter 7 Networking Essentials
189
26
Network Basics
189
10
Internet Protocol
191
1
IP Addresses
192
2
Tracing, Pinging, and More
194
2
Transmission Control Protocol and User Datagram Protocol
196
1
Ports
197
2
Application-Level Protocols
199
1
Networking in .NET
199
3
The Dns Class
200
1
Network Streams
201
1
Communicating with TCP
202
7
Handling Multiple Connections
208
1
Communicating with UDP
209
5
Broadcasts and Multicasts
212
2
The Last Word
214
1
Chapter 8 Building a Discovery Web Service
215
26
The Discovery Service
215
3
Stateful and Stateless Discovery Services
217
1
Web Service Essentials
218
6
The Anatomy of a Web-Service Request
219
1
The Least You Need to Know About IIS
220
2
The Web-Service Class
222
1
The Web-Service Client
223
1
The Registration Database
224
12
Creating the Database
225
1
Stored Procedures
226
3
Creating the Database Class
229
7
The Discovery Service
236
4
Testing the Discovery Service
238
2
The Last Word
240
1
Chapter 9 Building a File Sharer
241
46
An Overview of FileSwapper
241
4
The Discovery Service Web Reference
244
1
Global Data and Tasks
245
4
Utility Functions
249
6
Thread-Safe ListViewItem Updates
253
2
The Main Form
255
4
FileSwapper Configuration
258
1
Searches
259
4
Uploads
263
9
The FileServer Class
264
5
The FileUpload Class
269
3
Downloads
272
12
The FileDownloadQueue Class
275
4
The FileDownloadClient Class
279
5
Possible Enhancements
284
1
The Last Word
285
2
Chapter 10 Using a Discovery Service with Remoting
287
16
The Registration Database
287
6
Stored Procedures
288
3
The Database Class
291
2
The Discovery Service
293
3
The Talk .NET Peers
296
6
Adding Caching
299
2
Adding E-mail Validation
301
1
The Last Word
302
1
Part Four Advanced Peer- to-Peer
303
92
Chapter 11 Security and Cryptography
305
30
Security and Peer-to-Peer
305
3
Security Challenges
306
1
Design Choices
307
1
Understanding Cryptography
308
5
Understanding Hash Codes
308
1
Understanding Encryption
309
3
Understanding Digital Signatures
312
1
Asserting Identity with Digital Signatures
313
11
The Server Database
313
2
The Client Login
315
2
The SignedObject Class
317
4
The Login Process on the Client Side
321
1
The Login Process on the Web-Server Side
322
1
Weaknesses in This Approach
323
1
Trust Decisions
324
1
Hiding Information with Encryption
324
9
The EncryptedObject Class
324
3
Sending and Receiving Encrypted Messages
327
2
Chaining Encryption and Signing
329
2
Using Session Keys
331
2
The Last Word
333
2
Chapter 12 Working with Messenger and Groove
335
30
Using Windows Messenger
335
2
Creating a Windows Messenger Client
337
8
Understanding the Groove Platform
345
2
Creating a Simple Groove Application
347
14
The Groove Designer Code
348
4
The Groove Application Logic
352
4
Debugging a Groove Application
356
1
Enhancing the Groove Application
357
4
Other Peer-to-Peer Platforms
361
2
Gnutella
361
1
DirectPlay
362
1
Windows Peer-to-Peer Networking
362
1
The Last Word
363
2
Chapter 13 The Intel Peer-to-Peer Accelerator Kit
365
30
About the Intel Peer-to-Peer Accelerator Kit
366
6
The Messaging Enhancements
367
1
The Intel Peer-to-Peer Daemon
367
2
Peer-to-Peer URLs and Remoting
369
1
The Discovery Service
370
1
Intel Peer to-Peer Drawbacks
371
1
Installing the Intel Peer-to-Peer Accelerator Kit
372
7
Configuring the Peer Service
374
5
Creating a Messenger that Uses Intel Peer-to-Peer
379
10
Changes to the Talk Component
379
1
Changes to the TalkServer
380
3
Changes to the Talk Client
383
2
Adding Security
385
4
Dissecting the Samples
389
5
FileCopy
389
1
Messenger
390
1
Scribble
391
1
SharedCyclesP2P
392
1
ShareBaby2
393
1
PeerASP Host
394
1
The Last Word
394
1
Index
395