p2p 不要 server 的话怎么穿透防火墙呢?
怎么和另一个局域网内的机器进行数据传输呢?

解决方案 »

  1.   

    对于p2p来说,每个peer都同时是server和client。oicq不应该算是p2p的应用,尽管它有的情况下也在两个客户之间直接通信
      

  2.   

    对于p2p来说,每个peer都同时是server和client。我想oicq不太应该算是p2p的应用,尽管它一般情况下也是在两个客户之间直接通信
      

  3.   

    qq不是p2p吧?好像是通过udp协议进行通讯的
      

  4.   

    http://www.cn.ibm.com/developerWorks/java/j-p2p/index.shtml
    http://www.cn.ibm.com/developerWorks/java/j-p2papp/index.shtml
    http://www.cn.ibm.com/developerWorks/java/l-jxta/index.shtml
      

  5.   

    to:vdragon(紫龙) 
    p2p 并不能算是一种协议,虽然以后它有可能标准化
    而且即使能标准化出一种p2p协议,他也是比udp(tcp)更高级的一种应用层协议所以说,使用udp并不能作为qq是不是p2p应用的判定条件,呵呵其实,qq是qq,管他是不是p2p呢,和大家的生活无关紧要
      

  6.   

    p2p当然可以不需要server。
    每个端点都同时是server和client。
    当然也可以带server,
    qq可以看为是一个带SERVER的应用。
      

  7.   

    当然在某些情况下,比如两个终端之间有直接的点到点连接,进行数据传输的时候,可以不用经过 server 中转,但你要找到那个另一个终端 ,还是要经过 server。
    拿 napster 来说:
    试想,如果没有在 napster server 注册服务,单靠 napster 客户端,你怎么知道你的附近有另一个人有音乐分享给你呢?
    而且,如果两个终端位于不同的局域网以内,怎么能使两个终端连接以进行数据传输呢?udp??? 只有经过 p2p 代理 server。如果真的存在那么一种方式可以使 p2p 软件不用 server 的话,这种软件也不过是一个没有实用价值的玩具而已。
      

  8.   

    p2p并不是不要server只是不需要一种集中管理式的server,在p2p网络中,每个peer都有同样的权限,不像普通的b/s应用,一方请求为主,一方应答为主,
    优秀的p2p可以完全不需要集中式的server来进行管理(如napster),可以完全做到每个peer真正的对等(平等)但这是需要用效率作为代价的,
    有兴趣的人可以去看看gnutella的模型
      

  9.   

    当然需要server,如果做过大型项目的话,一定知道有application server 和 database server...
    p2p的client只不过拥有了比传统意义上的去8权限和对等性,但是没有特定的server作为信息的集中管理,p2p是无法做到资源共享的,那就变成传统的点对点通讯,而且,这还牵涉到安全问题.BTW TO vdragon(紫龙):
    qq是p2p,同时使用TCP和UDP协议,具体的情况你可以search一下就明白了.
      

  10.   

    qq当然不算p2p
    qq信息要腾讯服务器转发
    真正的p2p,两者既是Server,也是client
      

  11.   

    p2p可以有一个集中的server,如napster,也可以没有,如gnutella,freenet。关注p2p我觉得最应该看看的是freenet,这个让各国政府都很头痛的家伙,呵呵
    中国甚至屏蔽掉了大部分和freenet有关的站点