确切是说是P2SP收费的一款软件,我先给大家分析一下我的思路如下:有2台基本服务器
  第1台是信息服务器,提供基于WEB的查询(类似MP3的网站)客户登陆这个网站可以找到自己想要的文件。  第2台是文件服务器,里面存放原始是文件(意思是当只有一个客户端的时候用来给他服务),客户端通过SOCKET连接这台服务器下载自己想要的文件。工作原理:客户用浏览器在第1台服务器浏览找到自己要下载的文件,调出客户端软件,客户端软件通过该文件的ID获取含有该文件的机器IP(客户端通过WEBSERVICE访问服务器1,服务器1上存放着客户端文件ID和IP,如果只有一个客户端的时候那么就只有固定的第2台服务器地址),得到IP和文件ID后客户端用socket连接含有该文件的IP机器(包括第2台服务器),连接后分配文件段分别从这些机器里面下载,现在完成后拼接成一个文件,到此下载文件完成。验证原理:每个客户端登录时用webservice验证个人感觉安全,没有任何敏感信息,获取含有文件的IP机器信息时候 也需要webservice验证(验证在这里起到主要作用,前面的验证只是为了登录的门面功夫,和保存用户名密码,以供后面继续验证用)。问题所在:咋一看上去似乎合情合理,如果客户记住了第2台服务IP地址,或者有客户端常年IP不变,那么客户完全可以自己写个客户端连接这些机器来下载文件,正对这个问题我的想法是,让下载文件时候再验证,下载的客户端通过socket发送用户名,密码信息,到含有文件的机器(被下载的机器通过WEBSERVICE连接服务器1给予下载机验证),如果通过则提供给予下载。请教问题:1个人感觉以上验证过分累赘,2被下载客户端在被下载时候可能是全速提供网络流给下载机器,这个时候如果在连接服务器用WEBSERVICE验证会不会导致验证缓慢。

解决方案 »

  1.   

    问题这么复杂庞大,我估计是没人答吧!
      

  2.   

    主要是原理上的分析,没涉及代码,但是这个东西说起来有点烦
      

  3.   

    迅雷是这么做的么?没有。迅雷为什么没有这么做?既没有意义也不可行。
      

  4.   

    原来LZ的第二台服务器常年不限时做种啊
      

  5.   

    建议多找一些p2p协议的资料看看
      

  6.   

    迅雷没这么做,因为他是免费的呀,而我这个不存在免费所以要不停的验证,第2台服务器就是为了提供一个有效的基础的下载源,的确我刚接触P2P目前在下载端输入一个文件编号已经可以下载所需的文件了(还没加入验证),后来想想验证的事情 就卡这边了!希望大家给点思路,看看有没有最可行的路好走!
      

  7.   

    算了自己在折磨折磨吧,这边周期太长,结贴了吧