全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、引言VeryCD emule 自去年推出LowToLow功能以来,经过很多网友热心的测试, 到限制为止已经比较稳定的运行了,VeryCD emule 是一个开源软件,我们遵循GPL的开放精神,开放了所有代码,但是emule的各项功能都有很大的完善空间, 我们相信还有很多网络编程爱好者热爱emule这个软件,但是由于没有相关的文档资料,估计想参与的网友可能也不知道该从何下手,因此我们准备在这里陆续贴出些资料,期待更多编程爱好者、网络系统架构师能参与进来,大家一起来完善改进emule这个优秀的P2P软件,大家一起来分享知识,分享编程的乐趣。二、VeryCD emule L2L相关类简介和架构图穿透功能代码主要在以下文件中实现:NatThread.cpp、NatSocket.hcpp、 TraverseBySourceExchange.cpp、TraverseBySvr.cpp、 TraverseStrategy.cpp、 SourceExchangeNAT.cpp它们主要完成以下类的的具体功能:CNatThread: 穿透功能的工作线程CNatSocket: 穿透成功,用于Peer之间通讯(也即FakeTcpSocket,用UDP模拟TCP通信,在这个类中的一些发送接收数据处理的算法我们采用了emule neo Mode的一些实现代码)CTraverseFactory 策略工厂,创建策略组合CTraverseBySvr 基于服务器穿透的策略类CTraverseBySourceExchange 基于源交换穿透的策略类CUnconnSocket 被动方收到穿透请求,创建CUnconnSocket,开始穿透CTraverseStrategy 穿透策略类的基类CSourceExchangeNAT 处理源交换穿透命令系统静态结构图如下:三、实现思路CAsyncSocketEx是TCP socket,emule通过它把数据发送出去。我们扩展了CAsyncSocketEx的Connect, Send, Receive三个函数。如果是穿透连接的话,走UDP穿透的通道,否则就按原来的TCP传输。这样的好处是:1 合理性。我们是改进数据传输方式,应该只改动传输相关的类(即CAsyncSocketEx),其它地方代码不应该受到大的改动,对其它逻辑不应该有大的影响。2 架构上耦合度小。主要是CAsyncSocketEx跟穿透有关系,代码与官方同步
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年青岛市城阳区公务员人员招聘考试备考题库及答案详解
- 高中生物人教版(2019)必修二第6章 第1节 生物有共同祖先的证据 同步测试(含答案)
- 2026年庆阳市西峰区公务员人员招聘考试参考试题及答案详解
- 2025-2026学年处暑的来历说课稿
- 2025年河北省邢台市事业单位人员招聘笔试试题及答案详解
- 2025-2026学年2的减法说课稿
- 2026年山东省枣庄市公务员人员招聘考试参考试题及答案详解
- 2025-2026学年并联的说课稿
- 2026年南宁市良庆区事业单位人员招聘笔试备考题库及答案详解
- 2027华能(福建漳州)热电有限责任公司校园招聘考试备考试题及答案解析
- 2026年甘肃省白银市公安局白银分局招聘警务辅助人员41人笔试参考题库及答案详解
- 婚前医学检查相关知识考核试题(附答案)
- 2026 年烈士纪念日英雄事迹学习专题课件
- Unit3 Smart Learning 单元测试题-人教版英语九年级上册
- 电力系统分析试题与答案
- 煤矿废水处理站建设与运营方案
- 2026年考研政治真题及答案
- 幼儿园大班活动教学设计及教案示范
- 导尿管相关尿路感染(CAUTI)防控最佳护理实践专家共识解读
- 集成电路封装技术(第二版) 课程标准、授课计划
- 高等数学上册同济大学数学系教学课件全套
评论
0/150
提交评论