-
P2P 的实现原理
应用背景
关于UDP穿透NAT的中文
资料在网络上是很少的,仅有这篇文章有实际的参考
价值。本人近两年来也一直从事P2P方面的开发工作,比较有代表性的是个人开发的BitTorrent下载软件 - FlashBT(变态快车).
对P2P下载或者P2P的开发感兴趣的朋友可以访问软件的官方主页: http://www.hwysoft.com/chs/ 下载看看,说不定有收获。写这篇文章的主要目的是懒的再每次单独回答一些网友的提问, 一次性写下来, 即节省了自己的时间,也方便了对于P2P的UDP穿透感兴趣的网友阅读和理解。对此有兴趣和经验的朋友可以给我发邮件或者访问我的个人Blog留言: http://hwycheng.blogchina.com.
您可以自由转载此篇文章,但是请保留此说明。
再次感谢shootingstars网友的早期贡献. 表示谢意。
关键技术
NAT(The IP Network Address Translator) 的概念和意义是什么?
NAT, 中文翻译为网络地址转换。具体的详细信息可以访问RFC 1631 - http://www.faqs.org/rfcs/rfc1631.html, 这是对于NAT的定义和解释的最权威的描述。网络术语都是很抽象和艰涩的,除非是专业人士,否则很难从字面中来准确理解NAT的含义。
要想完全明白NAT 的作用,我们必须理解IP地址的两大分类,一类是私有IP地址,在这里我们称作内网IP地址。一类是非私有的IP地址,在这里我们称作公网IP地址。关于IP地址的概念和作用的介绍参见我的另一篇文
- 2022-07-02 02:43:33下载
- 积分:1
-
aMule的源码
amuel跨平台的源码,可以在linux中编译,方便学习amule的工作原理,以及amule中的DHT的Kad的实现原理与网络协议内容。非常好用。
- 2022-09-07 00:15:03下载
- 积分:1
-
QT 绘制曲线
随时间变化,动态绘制曲线,
/* 定时时间到 */
void Dialog::timerUpDate()
{
t += 10;
Point.setX(t); /* 时间加二秒 */
Point.setY(qrand() % 100); /* 设置纵坐标值 */
path->lineTo(Point); /* */
if(t > width()) /* 当时间值 T大于窗口的宽度时需调整坐标原点 */
p -= 10; /* 调整坐标原点 */
update();
}
- 2022-05-27 23:05:07下载
- 积分:1
-
linux c 时戳追加方式日志记录
linux c 包含时戳 采用追加方式进行日志记录,可以快速移植到开发项目中。
- 2022-08-08 17:21:09下载
- 积分:1
-
power point presentation
;power point演示文稿。计算机视觉霍夫变换功率点演示。边界检测。预处理边缘图像,边缘跟踪方法,将直线和曲线拟合到边缘,霍夫变换
- 2022-02-13 15:37:12下载
- 积分:1
-
wu-manber算法c语言实现
wu-manber算法c语言实现,多模匹配算法,高效快速。
- 2022-06-13 07:35:29下载
- 积分:1
-
linux u盘自动拷贝
嵌入式linux系统,自动识别插入的u盘,并根据U盘里的配置文件,自动拷贝U盘的文件到指定的目录,并通过指示等和声音提示拷贝的过程及结果。用于车载播放系统的片源自动更新。
- 2022-01-25 19:25:41下载
- 积分:1
-
linux 内核
这是一个linux内核用C语言编写。它包括:处理器,内存管理,不同的文件。
- 2022-04-15 03:20:24下载
- 积分:1
-
Section Poincaré
;
- 2022-04-11 09:49:38下载
- 积分:1
-
netflow解析
在linux环境下,使用libpcap库函数来捕获netflow格式数据(端口为9995),并使用BPF来过滤数据,然后存入到mysql数据库中
- 2023-04-23 12:35:03下载
- 积分:1