| Chapter 1 Introduction | 第1-14页 |
| ·Research Purpose and Significance | 第12页 |
| ·Research State | 第12-13页 |
| ·Major Research Contents | 第13-14页 |
| Chapter2 Protocol Analysis | 第14-35页 |
| ·Introduction | 第14页 |
| ·Gnutella network usage | 第14-28页 |
| ·Test configuration and scenario | 第14-15页 |
| ·Test results | 第15-16页 |
| ·Logged statistics | 第16-26页 |
| ·Summary and conclusions | 第26-28页 |
| ·P-Grid network usage | 第28-30页 |
| ·Building the distributed search tree | 第28-29页 |
| ·Performing queries | 第29-30页 |
| ·OpenFT and giFT | 第30-33页 |
| ·Test environment | 第30-31页 |
| ·Performed tests | 第31-32页 |
| ·Test results | 第32-33页 |
| ·Summary | 第33-35页 |
| Chapter 3 Framework design | 第35-43页 |
| ·Introduction | 第35页 |
| ·Backend components | 第35-38页 |
| ·Peer Connection Monitor (PCM) | 第36页 |
| ·Peer Monitor or Protocol Monitor (PM) | 第36-37页 |
| ·Peer Reader, or Protocol Reader (PR) | 第37页 |
| ·Peer Protocol (PP) | 第37页 |
| ·Peer Back End (PBE) | 第37-38页 |
| ·Frontend components | 第38-39页 |
| ·Support components | 第39-43页 |
| ·Thread pool | 第39页 |
| ·Priority queues | 第39-40页 |
| ·Dictionaries for registrations | 第40-41页 |
| ·Sets | 第41-42页 |
| ·Input multiplexing | 第42-43页 |
| Chapter 4 Protocol design | 第43-59页 |
| ·Introduction | 第43页 |
| ·An efficient peer-to-peer protocol | 第43-51页 |
| ·Protocol overview | 第44页 |
| ·Protocol limitations | 第44-45页 |
| ·Key management | 第45-46页 |
| ·Multi-bit keys | 第46页 |
| ·Establishing connections | 第46-47页 |
| ·Protocol header | 第47-48页 |
| ·Message types | 第48-49页 |
| ·Using XML encoded messages | 第49-51页 |
| ·Payload details | 第51-59页 |
| ·Exchanging information with peerinfo | 第51-52页 |
| ·Exchanging host lists with list | 第52-54页 |
| ·Becoming a mirror with j oin | 第54-55页 |
| ·Disconnecting from nodes with leave | 第55-56页 |
| ·Changing keys with changekey | 第56-57页 |
| ·Registering shares with register and unregister | 第57-58页 |
| ·Performing searches with query | 第58-59页 |
| Chapter 5 Implementation | 第59-73页 |
| ·Introduction | 第59-62页 |
| ·Core classes | 第59-61页 |
| ·System initialization | 第61页 |
| ·System shutdown | 第61-62页 |
| ·Protocol modules | 第62-65页 |
| ·The PeerProtocol class | 第62-63页 |
| ·The PeerReader class | 第63页 |
| ·The PeerMonitor class | 第63-65页 |
| ·Backend implementation | 第65-69页 |
| ·The PeerConnectionMonitor class | 第65页 |
| ·The ThreadPool class | 第65-67页 |
| ·The HeapPriorityQueue class | 第67页 |
| ·The PeerBackEnd class | 第67-69页 |
| ·Implementing a file sharing system | 第69-73页 |
| ·Choosing a protocol | 第69-70页 |
| ·Implementing basic protocol support | 第70-71页 |
| ·Implementing protocol routing | 第71-72页 |
| ·Implementing protocol user access | 第72页 |
| ·Managing events | 第72页 |
| ·Putting the final touch to the application | 第72-73页 |
| Chapter 6 Summary and conclusions | 第73-76页 |
| ·Results obtained | 第73-75页 |
| ·The proposed protocol | 第74页 |
| ·The peer-to-peer framework | 第74-75页 |
| ·Future work | 第75-76页 |
| References | 第76-80页 |
| Publications | 第80-81页 |
| Acknowledgement | 第81-82页 |
| Appendix | 第82-83页 |