如果我想为P2P应用程序(比如比特币,Bitorrent等)编写节点,那么有很多部分是相同的:
由于我不想重新发明轮子,他们是一个框架,我可以作为一种基础库来构建吗?
答案 0 :(得分:0)
你提到了比特币和bittorrent,它们完全不同,所以我假设你不想受任何特定协议甚至序列化格式的束缚。
然而,您提到了高级别问题的对等发现和统计管理,可以在某些网络协议的上构建。 但该协议规定了这种机制如何运作。
听起来有点像你在询问是否有适合摩天大楼的预制屋顶以及木屋。
因此,如果你真的想设计自己的协议,你可能应该首先考虑基础。
或者,根据人们如何解释您的问题,如果您想为特定网络编写客户端,那么您应该只是寻找一个实现该特定网络核心概念的库,同时释放您实施其余的申请 在bittorrent的案例中,这样的例子是libtorrent