如何使用点对点网络来最小化互联网带宽?
我正在尝试构建一个网络解决方案来解决以下问题:
我有几家商店正在运行需要经常更新新内容(主要是视频文件〜40Mb)的PC。我想将新内容放在中央服务器上,并让电脑下载文件。我可以编写在 PC 上运行的服务,负责联系服务器并下载内容。但是,我必须找到一种方法来最小化所使用的总带宽。这些电脑已连接到互联网,但未连接到域,它们大多是 Windows 7 家庭版/高级版。
如果每台 PC 仅连接到中央服务器,我将无法利用相邻 PC(在同一商店内、同一路由器上)可能已经拥有新文件的事实。理想情况下,该 PC 能够发现这一点,而不是从中央服务器获取文件,而是从邻居服务器获取文件。文件不安全,速度只是一个小问题。
首先,点对点服务将是该解决方案的核心。但是,我对点对点应用程序开发一无所知,也不知道从哪里开始。 如果您对从哪里开始这样的解决方案有任何想法,或者对如何解决这个问题有任何想法,我很乐意听到!
谢谢你,杰西 D.
I am trying to build a networking solution to the following problem:
I have several stores running PCs which need to be frequently updated with new content (primarily video files ~40Mb). I want to put the new content on a central server and have the PCs pull down the files. I can write services to run on the PCs that will take care of contacting the server and downloading the content. But, I have to find a way to minimize the total bandwidth used. The PCs are connected to the internet but not on a domain, they are mostly Windows 7 Home/Premium editions.
If each PC connected only to the central server I would not be taking advantage of the fact that the neighboring PC (within the same store, on the same router) may already have the new files. Ideally, that PC would be able to discover this and rather than getting the files from the central server it would get them from its neighbor. The files are not secure and speed is only a minor concern.
At first though a Peer-To-Peer service would be at the heart of this solution. But, I don't know anything about Peer-To-Peer application development or where to start.
If you have any ideas of where to start with such a solution or any thoughts on how I could solve this problem I'd love to hear it!
Thank You, Jesse D.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不要尝试开发自己的东西,只需在中央服务器上设置一个(私人)bittorrent 跟踪器并将所有 PC 指向它以下载更新即可。
您甚至可以使用由 Twitter 开发的 Murder,其目的就是向众多计算机分发更新。
Don't try to develop your own thing, just set up a (private) bittorrent tracker on your central server and point all the PCs to it to download the update.
You may even be able to use Murder, developed by Twitter for the very purpose of distributing updates to numerous machines.