如何制作自己的 P2P 软件? [关闭]

2023-12-28

我怎样才能制作自己的napster?这些 p2p 程序使用哪个库?我不太熟悉套接字编程的概念。你能用Qt4制作p2p程序吗?

从 Napster 时代起我就一直想知道这个问题。

您将如何创建下一个“bitorrent”?这是通过使用类似的套接字库吗?

p2p 技术的最新进展是什么?有什么新闻网站吗? p2p的未来会怎样?


P2P 或点对点是一种非常难创建的程序类型,主要是因为其结构本身。大多数互联网应用程序都是客户端-服务器,这是因为只需拥有一个您知道可以连接的固定服务器就可以解决很多令人头疼的问题。归根结底,这或多或少就是 Napster 所做的全部工作,它只是对文件进行索引并说明当前谁在托管这些文件。

创建 P2P 软件的另一个问题是,如果您自己开发它,即使您确实创建了一堆虚拟计算机,也很少有同行可以进行测试。您会发现很难测试它扩展到 00 后的用户。

不过,第一步是,您需要学习使用合适的语言进行编程,例如 C++ 或 C#,可能只是将其作为控制台应用程序来学习技术。

接下来,学习如何使用文件。如果你不能保存东西,那就没什么用了。

接下来是网络。从设置客户端-服务器开始,以便掌握传输文件的情况。制作一个提供文件的服务器应用程序和一个下载文件的客户端应用程序。然后开始将其扩展到一台服务器,向许多客户端提供文件。

最后一步是合并客户端和服务器,以便当对等方下载更多文件时,它可以开始成为服务器并让其他客户端从中下载。

如果你愿意,现在你可以考虑使用 GUI。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何制作自己的 P2P 软件? [关闭] 的相关文章

  • C语言生成20个随机二位整数求奇偶个数并且从小到大输出

    这道题考察的是生成随机二位整数保存是要保存在一个容量为20的数组中 然后再循环进行判断奇偶性进行求个数和求和最终输出奇数平均值和偶数的和 最后采用冒泡排序对这个数组进行排序 冒泡排序可以看我之前的文章最终输出就行了 代码如下 include
  • 05-BTC-网络

    目录 前言 比特币网络的工作原理 比特币网络 比特币网络中的每一个节点维护一个零度节点的集合 比特币系统中 每个节点要维护一个等待上链的交易的集合 比特币网络的传播属于best effort 前言 学习肖臻老师的 区块链技术与应用 公开课笔
  • vue父子组件在不同情况下生命周期的执行顺序

    在分析父子组件生命周期之前 我们先核实一次两个路由 不包含子组件 之间切换 其生命周期的执行顺序 在这用到两个路由 新闻路由和top路由 名字只做区分 没有其他含义 1 首先切换到新闻路由 执行顺序 beforeCreate gt crea
  • 数据结构练习题-算法设计题-线性表

    算法设计题 1 将两个递增的有序链表合并为一个递增的有序链表 要求结果链表仍使用原来两个链表的存储空间 不另外占用其它的存储空间 表中不允许有重复的数据 题目分析 合并后的新表使用头指针Lc指向 pa和pb分别是链表La和Lb的工作指针 初
  • 最后一次实验

    拓扑图 实验要求 拓扑分析 先分ip 然后分vlan然后配ip 配路由 设备配置和配置解析 sw1 sw2 r1 r2 r3 实验结果
  • statsmodels 笔记:seasonal_decompose 时间序列分解

    1 使用方法 statsmodels tsa seasonal seasonal decompose x model additive filt None period None two sided True extrapolate tre
  • 2E丑数(DP)

    include
  • eNSP:ospf相关实验

    一 实验要求 二 实验步骤 1 建设如下图拓扑并划分网段 2 配置R1 R4的接口和回环地址 R1 r1 int g0 0 0 r1 GigabitEthernet0 0 0 ip add 192 168 1 1 27 r1 int l 0
  • 开源P2P视频流媒体源代码研究

    1 Azureus http azureus sourceforge net 这是java版的betorrent 最新版本2 4 0 2 从网上直接下载的源代码是没法构建的 所用的库没有在包里面 可以到 http azureus cvs s
  • 数据结构与算法--用c语言建立队列以及其相关操作

    一 队列的定义和特点 队列与栈一样 也是一种特殊的线性表 与栈 先进后出 不同的是 队列服从 先进先出 也就是元素从队尾进入队列 从队头离开 如图所示 a1最先进入队列 因此最先从对头离开队列 然后是a2 以此类推 二 队列的相关操作及其代
  • 直接P2P连接

    这个主题类似于这个线程 我对网络编程主题相当陌生 除了在单个本地计算机上执行基本的 TCP UDP 之外 从未做过任何其他事情 现在我正在开发一个需要 P2P 网络支持的应用程序 更具体地说 我需要应用程序通过互联网进行连接和通信 最好不使
  • TCP P2P 无需服务器

    是否可以编写没有服务器的TCP P2P程序 当我在谷歌上搜索这个问题时 我发现了一些关于 NAT 穿越 UPnP 的内容 我可以以某种方式使用它们吗 是的 你可以 正如 GrandmasterB 指出的那样 每个对等点都有服务器和客户端套接
  • 安卓和iPhone之间的距离

    我正在寻找一种当两部手机靠近时传输数据的方法 这需要跨平台 因此我无法使用 NFC 或 iBeacon 我计划使用 allJoyn 发送信息 我只想将数据发送给距离我几英尺的其他人 有什么方法可以在其他手机上准确读取距离吗 或者我可以通过放
  • peerjs/webrtciceConnectionState 失败

    我已经尝试解决这个问题有一段时间了 我正在尝试使用peerjs 建立一个简单的连接 我可以成功连接到具有 id 的对等点USER ID 但是 他们无法连接到我 当他们尝试连接时 我收到以下日志 iceConnectionState更改为fa
  • Windows Metro 应用程序中没有 P2P?

    在 BUILD 的 NET 开发人员对 Windows 8 应用程序开发的看法 会议中 讲师提到 Metro 配置文件中仅公开了客户端 WCF 功能 我们无法创建服务器 http channel9 msdn com Events BUILD
  • Android、NSD/DNS-SD:NsdManager 不可靠的发现和 IP 解析

    在过去的几周里 Android 的 NSD 实现让我抓狂 从用户的角度来看 会出现以下问题 设备以完全不确定的方式发现彼此 如果我启动我的NsdManager基于应用程序 如果只涉及两个设备 它或多或少可以工作 如果第三个设备加入 它很少会
  • WebRTC:匹配最近的同行

    给定一个公共 IP 地址 对等点 A 和许多其他公共 IP 地址 IPv4 和 IPv6 地址的混合 列表 将对等点 A 的 IP 地址匹配的最简单方法是什么 n最近的对等点 而无需让对等点手动相互 ping 通以进行延迟基准测试 我认为使
  • 当 DHT 中的节点死亡时,数据会发生什么?

    问题取自这里 https groups google com forum topic byu cs 460 computer networking hpESI0NapmY https groups google com forum topi
  • WCF 是否支持点对点实现?

    我正在尝试在 LAN 内实现点对点消息传递和文件共享实用程序 那么 WCF 支持 p2p 吗 有人尝试过通过 WCF 进行文件共享吗 是的 它确实 请参见如何在对等网络中设计状态共享 http msdn microsoft com en u
  • 为什么我在使用 WifiP2pManager 时总是显示 BUSY?

    我正在尝试使用 Wi Fi Direct 连接两个 Android 设备 在我的 HTC 手机 One SV 上它似乎可以工作 但在我的第二台设备 LG Optimus 4xhd 上它不起作用 在我的 onResume 函数中 我启动以下线

随机推荐

  • 是否可以从 SwiftUI 使用 ASWebAuthenticationSession ?

    我想使用 OAuth API 进行身份验证ASWebAuthenticationSession但它似乎无法从 SwiftUI 中使用 这就是我想要的 struct ContentView View ASWebAuthenticationPr
  • 即使 UI 状态表明不显示加速键,TLabel 也会显示加速键

    With default Windows settings accelerator keys are not meant to be shown on dialogs until the user presses the ALT key 德
  • 更改 MailChimp 的成功/错误消息

    我在任何地方都找不到这个 熟悉 MailChimp 的人可以提供建议吗 我已经嵌入了我的表单 输入 并且有一些空的 div 如下 其中注入了错误 成功消息 div class clear div class response style d
  • 使用 Mailgun 和 NodeMailer 包发送电子邮件

    几天前 我意识到谷歌已经改变了 Gmail 帐户的安全性 特别是从应用程序发送电子邮件的可能性 在谷歌搜索了一段时间后 我找不到解决办法 所以 我求助于 Mailgun 我创建了一个帐户并启用了业务验证 但是 我仍然无法发送电子邮件 我不断
  • 如何过滤掉 Base36 ID 中的脏话?

    我想在我正在开发的 Web 应用程序中使用 base36 但由于 id 作为 url 对用户可见 所以我想过滤掉脏话 有人解决这个问题了吗 或者这真的是一个问题吗 仅跳过数据库序列中的数字有意义吗 好吧 与其尝试收集所有可能的脏话 不如过滤
  • Javascript argument.sort() 抛出错误排序不是函数

    只是想知道为什么我在使用以下简单的 JavaScript 函数时遇到错误 function highest return arguments sort function a b return b a highest 1 1 2 3 错误消息
  • 给定一个字符串,仅在一次扫描中找到其第一个非重复字符

    给定一个字符串 找到其中第一个不重复的字符 为了 例如 如果输入字符串是 GeeksforGeeks 那么输出应该是 F 我们可以使用字符串字符作为索引并构建一个计数数组 以下是算法 从左到右扫描字符串并构造计数数组或 哈希映射 再次从左到
  • $_SESSION 变量需要 mysql_real_escape_string() 吗?

    我应该使用mysql real escape string 我的 MySQL 查询中的函数 SESSION变量 理论上 SESSION与以下不同 最终用户无法修改变量 GET or POST变量对吗 谢谢 不管用户是否可以修改数据 您可能都
  • 如何在 pyplot 中以对数比例绘制 secondary_y

    我想在一个图中有两条线 或更好的散点图 辅助 Y 线应采用对数刻度 如何使用 python matplotlib 做到这一点 您可以使用以下命令创建第二个 y 轴ax2 ax twinx 然后 正如 tacaswell 在评论中指出的那样
  • 在 Visual Studio 解决方案资源管理器中标记或突出显示文件

    是否有一个插件允许我在 Visual Studio 中标记或标记文件 然后这些文件会以视觉方式突出显示 例如不同的背景颜色 我搜索了 Visual Studio Gallery 但没有找到任何东西 Thanks 要仅突出显示解决方案资源管理
  • mysql TIME_WAIT;连接数过多问题

    当我在现场检查 mysql 加载时间时 我得到的结果显示连接为 TIME WAIT 即使我关闭了每个页面上的连接 有时网站无法加载 表示连接太多 有什么办法可以解决这个问题 预先感谢您的任何回复或建议 如果客户端连接到 MySQL 服务器
  • 使用 imshow 打印一种颜色 [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我想使用 RGB 值在屏幕上打印颜色 并且输出应该只是单一颜色 例如 如果我给出红色的 RGB 值 我希望输出显示红色
  • 如何在 Keras 中使用 model.reset_states() ?

    我有顺序数据 并且声明了一个 LSTM 模型来预测y with x在喀拉斯 所以如果我打电话model predict x1 and model predict x2 调用是否正确model reset states两者之间predict
  • 如何使用 SwiftUI 在视图上检测向上、向下、向左和向右滑动

    我正在着手构建 Apple Watch 应用 我目前正在做的工作将要求我利用检测四个主要方向的滑动 UP DOWN LEFT and RIGHT 问题是我不知道如何检测到这一点 我环顾四周 发现自己走进了死胡同 我可以对下面的视图做什么才能
  • JQuery UI 翻转文本,就像gumroad.com [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我试图在我
  • 在 Chapel 文件中包含第二个源文件

    在 C 中 当我需要 actions cpp 中的类时classes cpp我包括标题 例如 include
  • 如何读取和遍历 inode

    我已经在 EXT2 文件系统中打开了超级块和组描述符 但我不知道如何读取根目录或其中的文件 这是我得到的一些内容 fd open dev sdb2 O RDONLY lseek fd SuperSize SEEK SET read fd s
  • 创建一个可以在 React 上拖放列和行的表格

    我想创建一个可以在 React 上拖放列和行的表格 我看过其他解决方案 例如反应美丽 dnd https github com atlassian react beautiful dnd 表格拖动器 https github com sin
  • 如何从非组件辅助函数访问 redux 的存储?

    我有一个辅助函数 当我想从 Redux 存储中删除某些内容时 我会调用它 但是 我需要能够访问函数内的当前存储 以确定下一步要做什么 这就是我想做的 export function deleteDocument id this props
  • 如何制作自己的 P2P 软件? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我怎样才能制作自己的napster 这些 p2p 程序使用哪个库 我不太熟悉套接字编程的概念 你能用Qt4制作p2p程序吗 从 Napst