P2P网络技术原理与C++开发案例
分类: 图书,计算机/网络,家庭与办公室用书,因特网 电子邮件,
作者: 张文,赵子铭主编
出 版 社: 人民邮电出版社
出版时间: 2008-8-1字数: 565000版次: 1页数: 360印刷时间: 2008/08/01开本: 16开印次: 1纸张: 胶版纸I S B N : 9787115181053包装: 平装编辑推荐
第9章中开发案例的源代码可到人民邮电出版社网站下载。
其他章节中的开发案例的源代码可到相应网站下载,下载地址在书中相应章节处已注明。
内容简介
随着P2P网络的飞速发展,P2P网络技术已经成为当今IT技术领域研究与应用的热点。本书通过基础理论篇与C++开发案例篇两个部分的讲解,使读者对P2P网络技术有全面的理解。
基础理论篇对P2P网络的定义、典型的网络拓扑结构、应用与研究现状以及当今5种主流的P2P系统分别进行了介绍;通过与传统的搜索技术相比较,分析了P2P搜索技术的原理;对P2P技术所涉及的安全问题逐一进行了分析;对P2P应用的相关技术进行了深入剖析。
C++开发案例篇介绍了P2P应用开发的两个平台,然后针对5个具体的P2P系统进行了详细的系统介绍和源码分析,包括P2P文件共享系统、P2P即时通信系统、P2P流媒体系统和P2P视频点播系统。
本书可供广大从事P2P网络技术工作的研发人员和工程技术人员阅读参考,也可作为高等院校通信类、网络类、信息类、计算机类、电子类等专业高年级本科生和研究生学习P2P技术的书籍。
目录
基础理论篇
第1章P2P基本概念
1.1P2P网络的定义
1.2P2P网络结构
1.2.1集中式P2P网络
1.2.2完全分布式非结构化P2P网络
1.2.3完全分布式结构化P2P网络
1.2.4混合式P2P网络
1.2.5P2P网络和传统网络的对比
1.3P2P网络的应用
1.4P2P的发展
1.4.1起步
1.4.2发展
1.4.3高峰
1.5P2P技术国内外研究现状
1.5.1国外相关研究
1.5.2国内研究现状
1.6本章总结
1.7练习题
第2章主流P2P系统
2.1文件共享类系统
2.1.1Napster
2.1.2Gnutella
2.1.3BitTorrent
2.1.4eMule
2.1.5Maze
2.2即时通信类系统
2.2.1Skype
2.2.2QQ
2.2.3GTalk
2.3流媒体类系统
2.3.1AnySee
2.3.2PPLive
2.4共享存储类系统
2.4.1OceanStore
2.4.2Granary
2.5对等计算类系统
2.6本章总结
2.7练习题
第3章P2P网络的基础——搜索和路由算法
3.1传统搜索技术
3.2P2P搜索技术的发展
3.3DHT网络(结构化P2P网络)的搜索技术
3.3.1DHT路由原理
3.3.2Chord
3.3.3Pastry
3.3.4CAN46
3.3.5Tapestry
3.3.6Kademlia
3.3.7小结
3.4非结构化P2P网络的搜索技术
3.4.1Flooding
3.4.2Modified-BFS
3.4.3Iterative Deepening
3.4.4Random Walk
3.4.5Query Routing
3.4.6Gnutella2
3.4.7移动Agent
3.4.8小结
3.5小世界(Small World)模型
3.5.1小世界模型概述
3.5.2聚类分布(CD)算法
3.5.3小世界网络的研究现状
3.6P2P搜索技术研究的挑战
3.7本章总结
3.8练习题
第4章P2P应用与安全
4.1P2P应用面临的安全问题
4.1.1P2P应用引发的版权问题
4.1.2P2P应用对现有网络应用的威胁
4.1.3P2P网络病毒与蠕虫
4.1.4结构化P2P网络的隐患
4.2P2P应用与安全技术
4.2.1P2P应用中的密码学技术
4.2.2P2P应用中的网络安全技术
4.2.3利用P2P网络解决安全问题
4.3P2P实例系统--Skype的安全性分析
4.3.1Skype简介
4.3.2Skype安全机制分析
4.3.3Skype流量识别
4.4本章总结
4.5练习题
第5章P2P应用的相关技术
5.1P2P与网络穿越
5.1.1NAT网络概念
5.1.2STUN协议与NAT穿越
5.1.3UDP穿越NAT
5.1.4TCP穿越NAT
5.1.5NAT类型检测
5.1.6常见NAT穿越解决方案
5.2P2P与IMS结合
5.2.1什么是IMS
5.2.2P2P与IMS的网络融合
5.3VoIP通信基础
5.3.1VoIP系统概念
5.3.2H.323协议
5.3.3SIP
5.3.4RTP
5.3.5RTSP
5.4P2P和SIP的结合
5.4.1P2P和SIP结合方案分析
5.4.2基于Pastry设计P2P-SIP系统
5.5本章总结
5.6练习题
C++开发案例篇
第6章P2P应用开发平台
6.1Windows Peer-to-Peer Networking平台
6.1.1Windows Peer-to-Peer Networking平台简介
6.1.2Windows Peer-to-Peer Networking平台结构
6.1.3Windows Peer-to-Peer Networking平台工作机制
6.1.4Windows Peer-to-Peer Networking平台开发环境
6.1.5Windows Peer-to-Peer Networking平台开发入门
6.2JXTA
6.2.1JXTA简介
6.2.2JXTA的平台结构
6.2.3JXTA的基本概念
6.2.4JXTA的网络架构
6.2.5JXTA开发环境
6.3本章总结
6.4练习题
第7章P2P文件共享系统开发实例一——eMule的设计与实现
第8章P2P文件共享系统开发实例二——BT的设计与实现
第9章P2P即时通信系统开发实例——Hermes的设计与实现
第10章P2P流媒体系统开发实例——PeerCast的设计与实现
第11章P2P视频点播系统开发实例——Myseelite的设计与实现
书摘插图
基础理论篇
第1章P2P基本概念
1.3P2P网络的应用
Internet最初产生和发展的一个主动力就是资源共享,也正是文件交换的需求直接导致了P2P技术的兴起,这是P2P最初也是最成功的应用之一,也正是针对这类应用的Napster使得人们在客房端/服务器模式下开始重新认识P2P思想对人们使用网络习惯的影响。
……