用于编写 P2P 应用程序的 Python 库/框架

标签 python networking p2p jxta

<分区>

有没有用 Python 编写 P2P 应用程序的库或框架?

我知道最初的 Bittorrent 客户端是用 Python 编写的。我看起来像 JXTA但对于 Python。

最佳答案

Twisted 几乎可以解决 Python 中任何与网络相关的问题,但您确实必须接受 Twisted 的做事方式。它本质上不是一个 P2P 堆栈,而是一个事件循环、回调系统和网络框架。

Divmod Vertex 目前没有维护,几年前我尝试使用它时仍然很粗糙。

CSpace可能最接近您正在寻找的东西:“一个通过互联网进行安全、分散、用户对用户通信的平台。”它将 P2P 和 NAT 遍历抽象出来,因此您的应用程序可以正常运行,而不是“P2P 应用程序”。

同样,几年前澳大利亚有一个名为“The Circle”的老式 P2P 系统,完全用 Python 编写,具有安全的 P2P 消息传递、聊天、文件共享和其他功能。 0.41c 是最后一个版本:http://savannah.nongnu.org/projects/circle/

同样来 self 的书签:

http://entangled.sourceforge.net/是 Entangled,“基于 Kademlia 的分布式哈希表 (DHT),以及对等元组空间实现。”

http://khashmir.sourceforge.net/是一个 Python 分布式哈希表,值得注意的是它使用 Airhook 协议(protocol)联网,该协议(protocol)具有很强的容错性(设计用于例如在蜂窝网络上使用)。

http://kenosis.sourceforge.net/是一个Python P2P RPC系统。

关于用于编写 P2P 应用程序的 Python 库/框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/963305/

相关文章:

tcp - 如何从未知服务器连接到客户机上开放的 tcp 端口?

distributed-computing - K-Bucket 在 Kademlia DHT 中究竟意味着什么?

Python读取txt文件中的\n和\r

python - Django 表单在单个 HTML 中多次使用并避免重复的 id

python - 用于分块响应的 uwsgi/nginx 配置

networking - 使用多个 NIC 在 C++ 中收听多播的问题

python - 向父类中的函数添加条件更好,还是为每个子类定义单独的函数更好?

c# - 让 Windows Store Sockets 与 Netcat 聊天?

networking - 将数据包信息写入文本文件

p2p - 完全去中心化的P2P?