p2p文件传输小工具

使用webRTC的相关技术栈可以很轻松的开发一个p2p文件传输工具,这里主要讲下使用datachannel开发的一个文件传输工具client程序的使用

客户端A:需要可以访问公网,运行client的主机

客户端B:可以访问公网,可以和客户端A在同一个局域网内,也可以在不同的网络环境,不同的NAT环境,更能演示P2P穿透,运行client主机

首先发送文件的客户端A运行

client会连接websocket后台的信号服务器,提示输入remote ID,说明已经正常。

客户端A,也就是发送端,需要指定文件,启动之后,等待输入对端的ID信息

接收端B启动

运行远端,也就是文件接收方,这里也是一样的,但是这里要留意下local ID,wT4I

注意接收端这里不带-f的参数,这里是接受发送端发送的文件。

输入ID

输入ID后,正常state 会从connecting,到最后的connected,然后会建立datachannel,最后就可以发送文件数据了。

开始接受数据

我这里稍微修改了下代码,会看到发送文件的大小,以及当成传送的字节数。也可以把文件的md5值给传送过来,用于校验。

传送结束

传输结束,关闭datachannel。

一致性检查

用md5sum校验下内容是否一致。发现是完全一致的。可以找个实网的环境来测试下,这个是会实现NAT穿透的

备注:用电信手机拨号分享的网络好像穿透失败,无法正常打洞。都是宽带测试了几个都是可以的。速度能到3MB/s ~ 4MB/s. 非常不错。

下载链接

https://download.csdn.net/download/lvronglee/89380980

整个代码主要是编译对example的代码进行少许的修改,以及python的信号服务代码,可以非常方便的部署到阿里云上测试。

需要源码/或者编译方法的关注,私信留言

相关推荐

  1. <span style='color:red;'>P</span><span style='color:red;'>2</span><span style='color:red;'>P</span>应用

    P2P应用

    2024-06-10 10:40:03      46 阅读
  2. p2p原理

    2024-06-10 10:40:03       20 阅读
  3. 【<span style='color:red;'>P</span><span style='color:red;'>2</span><span style='color:red;'>P</span>】

    P2P

    2024-06-10 10:40:03      17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-10 10:40:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-10 10:40:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-10 10:40:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-10 10:40:03       18 阅读

热门阅读

  1. Puppeteer 中的 iFrame使用(包括多重嵌套)指南

    2024-06-10 10:40:03       8 阅读
  2. Solidity&Foundry 安全审计测试 Delegatecall漏洞

    2024-06-10 10:40:03       7 阅读
  3. 探究Vue源码:深入理解diff算法

    2024-06-10 10:40:03       9 阅读
  4. web前端复试经验:深度解析与实用指南

    2024-06-10 10:40:03       12 阅读
  5. npm发布自己的插件包

    2024-06-10 10:40:03       11 阅读
  6. Servlet 调试

    2024-06-10 10:40:03       8 阅读
  7. TCP复用:原理、应用与优势

    2024-06-10 10:40:03       8 阅读
  8. 【学习笔记】linux解压缩文件小记

    2024-06-10 10:40:03       10 阅读
  9. ObjectARX打印当前图纸为PDF(亲测有效)

    2024-06-10 10:40:03       8 阅读
  10. PDF格式分析(八十四)——小部件注释(Widget)

    2024-06-10 10:40:03       9 阅读