基于P2P文件传输

基于P2P文件传输基于P2P文件传输1.      P2P简介对等网络P2P(peer-to-peer)技术是一种用于不同计算机用户之间,不经过中继设备直接交换数据或服务的技术,其网络通信方式如下图所示:P2P技术打破了传统的Client/Server模式,在对等网络中,每个节点的地位都是相同的,具备客户端和服务器双重特性,可以同时作为服务使用者和服务提供者。P2P技术有着广阔的应用领域,目前主

大家好,又见面了,我是你们的朋友全栈君。

基于P2P文件传输

1.      P2P简介

对等网络P2P(peer-to-peer)技术是一种用于不同计算机用户之间,不经过中继设备直接交换数据或服务的技术,其网络通信方式如下图所示:

P2P技术打破了传统的Client/Server模式,在对等网络中,每个节点的地位都是相同的,具备客户端和服务器双重特性,可以同时作为服务使用者和服务提供者。

P2P技术有着广阔的应用领域,目前主要的应用有文件交换、分布式计算、协同工作、分布式搜索和电子商务等。

2.      主要的P2P模式

      P2P模式的变化经历了集中式、分布式、和混合式3个阶段。P2P技术起源于文件交换技术,在发展过程中,文件交换技术的演变最具代表性,下面介绍P2P模式的几种形式:

(1)      集中式对等网络。集中式P2P模式由一个中心服务器来负责记录共享信息以及反馈对这些信息的查询。每一个对等实体要对它所需共享的信息以及进行的通信负责,根据需要下载它所需要的其他对等实体上的信息。这种形式具有中心化的特点,但是它不同于传统意义于上的Cleint/Server模式。因为传统意义上的Client/Server模式采用的是一种垄断的手段,所有资料都存放在服务器上,客户机只能被动的从服务器上读取信息,并且客户机之间不具有交互能力;而集中式P2P模式则是所有网上提供的资料都存放在提供资料的客户机上,服务器上只保留索引信息,此外服务器与对等实体以及对等实体之间都具有交互能力。

(2)      分布式对等网络。在分布式P2P中,对等机通过与相邻对等机之间的连接,遍历整个网络体系。每个对等机在功能上都是相似的,并没有专门的服务器,而对等机必须依靠它们所在的分布网络来查找文件和定位其他对等机。这种无中心、纯分布式系统不再是简单的点到点通信,而是更高效、更复杂的网络通信。

(3)      混合P2P网络。集中式P2P有利于网络资源的快速检索,并且只要服务器能力足够强大就可以无限扩展,但是其中心化的模式容易遭到直接的攻击;分布式解决了抗攻击的问题,但是又缺乏快速搜索和可扩展性。混合式P2P结合了集中式和分布式P2P优点,在设计思想和处理能力上都进一步的优化。它在分布式模式的基础上,将用户节点能力进行分类,使某些节点担任特殊任务。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160307.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MySQL concat函数的使用

    MySQL concat函数的使用MySQLconcat函数是MySQL数据库中众多的函数之一,下文将对MySQLconcat函数的语法和使用进行说明,供您参考和学习。MySQLconcat函数使用方法:CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串。如有任何一个参数为NULL,则返回值为NULL。注意:如果所有参数均为非二进制字符串,则结果为非二进制字符串。 

    2022年6月6日
    85
  • BigDecimal除法运算报错

    BigDecimal除法运算报错今天在运用BigDecimal做除法运算的时候,错误如下:Non-terminatingdecimalexpansion;noexactrepresentabledecimalresult 不是很明白为什么会这个样子,度娘告诉我是因为BigDecimal做除法运算,如果除的结果为无限小数的时候就会报错。解决方法是:  divide(BigDecimaldivisor,…

    2022年6月16日
    47
  • 《转》OpenStack Live Migration[通俗易懂]

    《转》OpenStack Live Migration

    2022年1月23日
    41
  • position属性值有哪些_静态web和动态web的区别

    position属性值有哪些_静态web和动态web的区别1:static静态定位,是默认值,当代码使用top,left.等,无效2:absolute绝对定位,相对于父元素进行定位,元素通过top,right,left等进行定位3:fixed

    2022年8月1日
    5
  • Apache 安装与配置「建议收藏」

    Apache 安装与配置「建议收藏」一、下载http://httpd.apache.org/download.cgi二、安装安装过程很简单,因为是压缩包,所以,先将其解压包中的Apache24解压到合适的位置,我将其解压到了D盘soft目录。配置找到D:\soft\Apache24\conf\httpd.conf文件,用记事本打开,找到DefineSRVROOT…

    2022年9月21日
    1
  • ajax实例教程_creo实例教程

    ajax实例教程_creo实例教程一、什么是Ajax?Ajax=Javascript和xml。Ajax是一种创建快速动态网页的技术。通过在后台与服务器进行少量的数据交换,Ajax可以使网页进行异步刷新,这意味着可以在不加载整个页面的情况下局部更新网页的某个部分。这么好的友好后台交互方式使Ajax技术迅速的流行起来。传统的页面如果不使用Ajax需要重新加载整个页面来实现更新内容。二、Ajax的语法步骤。

    2022年8月16日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号