検索

P2P技术体系结构与分类

Jun 07, 2016 pm 03:39 PM
p2p建築分類存在するテクノロジー構造

P2P 技术存在三种结构模式的体系结构,即以 Napster 为代表的集中目录式结构、以 Gnutella 为代表的纯 P2P 网络结构和混合式 P2P 网络结构。从 P2P 技术的分代来说,到目前为止的 P2P 技术可分为四代:第一代 P2P( 中央控制网络体系结构 ) ,第二代 P2P( 分

 

P2P 技术存在三种结构模式的体系结构,即以Napster 为代表的集中目录式结构、以Gnutella 为代表的纯P2P 网络结构和混合式P2P 网络结构。从 P2P 技术的分代来说,到目前为止的P2P 技术可分为四代:第一代P2P( 中央控制网络体系结构) ,第二代P2P( 分散分布网络体系结构) ,第三代 P2P( 混合网络体系结构) ,第四代P2P( 目前发展中P2P 技术)

  1 、第一代P2P( 中央控制网络体系结构—— 集中目录式结构)

  集中目录式结构采用中央服务器管理P2P 各节点,P2P 节点向中央目录服务器 注册关于自身的信息( 名称、地址、资源和元数据) ,但所有内容存贮在各个节点中而非并服务器上,查询节点根据目录服务器中信息的查询以及网络流量和延迟等 信息来选择与定位其它对等点并直接建立连接,而不必经过中央目录服务器进行。集中目录式结构的优点是提高了网络的可管理性,使得对共享资源的查找和更新非 常方便; 缺点是网络的稳定性( 服务器失效则该服务器下的对等节点全部失效)

  2 、第二代P2P( 分散分布网络体系结构——P2P 网络结构)

  纯P2P 网络结构也被称作广播式的P2P 模型,它没有集中的中央目录服务器, 每个用户随机接入网络,并与自己相邻的一组邻居节点通过端到端连接构成一个逻辑覆盖的网络。对等节点之间的内容查询和内容共享都是直接通过相邻节点广播接 力传递,同时每个节点还会记录搜索轨迹,以防止搜索环路的产生。纯P2P 网络结构解决了网络结构中心化的问题,扩展性和容错性较好。由于没有一个对等节点 知道整个网络的结构,网络中的搜索算法以泛洪的方式进行,控制信息的泛滥消耗了大量带宽并很快造成网络拥塞甚至网络的不稳定,从而导致整个网络的可用性较 差,另外这类系统更容易受到垃圾信息,甚至是病毒的恶意攻击。

  3 、第三代P2P( 混合网络体系结构—— 混合式网络结构)

  混合式网络结构综合了纯P2P 去中心化和集中式P2P 快速查找的优势。按节点 能力不同( 计算能力、内存大小、连接带宽、网络滞留时间等) 区分为普通节点和搜索节点两类。搜索节点与其临近的若干普通节点之间构成一个自治的簇,簇内采 用基于集中目录式的P2P 模式,而整个P2P 网络中各个不同的簇之间再通过纯 P2P 的模式将搜索节点相连起来。可以在各个搜索节点之间再次选取性能最优的节点,或者另外引入一新的性能最优的节点作为索引节点来保存整个网络中可以利 用的搜索节点信息,并且负责维护整个网络的结构。由于普通节点的文件搜索先在本地所属的簇内进行,只有查询结果不充分的时候,再通过搜索节点之间进行有限 的泛洪。这样就极为有效地消除纯P2P 结构中使用泛洪算法带来的网络拥塞、搜索迟缓等不利影响。同时,由于每个簇中的搜索节点监控着所有普通节点的行为, 能确保一些恶意的攻击行为能在网络局部得到控制,在一定程度上提高整个网络的负载平衡。

  4 、第四代P2P( 发展中的P2P 技术)

  应该说第四代P2P 并没有形成真正的代,而是在原有技术的基础上作了改进,提出和应用了一些新技术措施。典型的有:

  (1) 动态口选择之一。目前的P2P 应用一般使用固定的端口,但是一些公司已 经开始引入协议可以动态选择传输口,一般说口的数目在1024~4000 之间。甚至P2P 流可以用原来用于HTTP(SMTP) 的口80(25) 来传输以 便隐藏。这将使得识别跨运营商网络的P2P 流,掌握其流量变得更困难。

  (2) 双向下载。eDBT 等公司进一步发展引入双向流下载。该项技术可以多路并行下载和上载一个文件和/ 或多路并行下载一个文件的一部分。而目前传统的体系结构要求目标在完全下载后才能开始上载。这将大大加快文件分发速度。

  (3) 智能结点弹性重叠网络。智能结点弹性重叠网络是系统应用P2P 技术来调度已有的IP 承载网资源的新技术,在路由器网络层上设置智能结点用各种链路对等连接,构成网络应用层的弹性重叠网。可以在保持互联网分布自治体系结构前提下、改善网络的安全性、QoS 和管理性。智能结点可以在路由器之间交换数 据,能够对数据分类( 分辩病毒、垃圾邮件) 保证安全。通过多个几何上分布的结点观察互联网,共享信息可以了解互联网蠕虫感染范围和性质。提供高性能、可扩 张、位置无关消息选路,以确定最近的本地资源位置。改进内容分发。使用智能结点探测互联网路径踪迹并且送回关于踪迹的数据; 解决目前互联网跨自治区路径选 择方面存在的问题。实现QoS 选路, 减少丢包和时延,快速自动恢复等。

 

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
MySQL:初心者が習得するための必須スキルMySQL:初心者が習得するための必須スキルApr 18, 2025 am 12:24 AM

MySQLは、初心者がデータベーススキルを学ぶのに適しています。 1.MySQLサーバーとクライアントツールをインストールします。 2。selectなどの基本的なSQLクエリを理解します。 3。マスターデータ操作:テーブルを作成し、データを挿入、更新、削除します。 4.高度なスキルを学ぶ:サブクエリとウィンドウの関数。 5。デバッグと最適化:構文を確認し、インデックスを使用し、選択*を避け、制限を使用します。

MySQL:構造化データとリレーショナルデータベースMySQL:構造化データとリレーショナルデータベースApr 18, 2025 am 12:22 AM

MySQLは、テーブル構造とSQLクエリを介して構造化されたデータを効率的に管理し、外部キーを介してテーブル間関係を実装します。 1.テーブルを作成するときにデータ形式と入力を定義します。 2。外部キーを使用して、テーブル間の関係を確立します。 3。インデックス作成とクエリの最適化により、パフォーマンスを改善します。 4.データベースを定期的にバックアップおよび監視して、データのセキュリティとパフォーマンスの最適化を確保します。

MySQL:説明されている主要な機能と機能MySQL:説明されている主要な機能と機能Apr 18, 2025 am 12:17 AM

MySQLは、Web開発で広く使用されているオープンソースリレーショナルデータベース管理システムです。その重要な機能には、次のものが含まれます。1。さまざまなシナリオに適したInnodbやMyisamなどの複数のストレージエンジンをサポートします。 2。ロードバランスとデータバックアップを容易にするために、マスタースレーブレプリケーション機能を提供します。 3.クエリの最適化とインデックスの使用により、クエリ効率を改善します。

SQLの目的:MySQLデータベースとの対話SQLの目的:MySQLデータベースとの対話Apr 18, 2025 am 12:12 AM

SQLは、MySQLデータベースと対話して、データの追加、削除、変更、検査、データベース設計を実現するために使用されます。 1)SQLは、ステートメントの選択、挿入、更新、削除を介してデータ操作を実行します。 2)データベースの設計と管理に作成、変更、ドロップステートメントを使用します。 3)複雑なクエリとデータ分析は、ビジネス上の意思決定効率を改善するためにSQLを通じて実装されます。

初心者向けのMySQL:データベース管理を開始します初心者向けのMySQL:データベース管理を開始しますApr 18, 2025 am 12:10 AM

MySQLの基本操作には、データベース、テーブルの作成、およびSQLを使用してデータのCRUD操作を実行することが含まれます。 1.データベースの作成:createdatabasemy_first_db; 2。テーブルの作成:createTableBooks(idintauto_incrementprimarykey、titlevarchary(100)notnull、authorvarchar(100)notnull、published_yearint); 3.データの挿入:InsertIntoBooks(タイトル、著者、公開_year)VA

MySQLの役割:WebアプリケーションのデータベースMySQLの役割:WebアプリケーションのデータベースApr 17, 2025 am 12:23 AM

WebアプリケーションにおけるMySQLの主な役割は、データを保存および管理することです。 1.MYSQLは、ユーザー情報、製品カタログ、トランザクションレコード、その他のデータを効率的に処理します。 2。SQLクエリを介して、開発者はデータベースから情報を抽出して動的なコンテンツを生成できます。 3.MYSQLは、クライアントサーバーモデルに基づいて機能し、許容可能なクエリ速度を確保します。

MySQL:最初のデータベースを構築しますMySQL:最初のデータベースを構築しますApr 17, 2025 am 12:22 AM

MySQLデータベースを構築する手順には次のものがあります。1。データベースとテーブルの作成、2。データの挿入、および3。クエリを実行します。まず、createdAtabaseおよびcreateTableステートメントを使用してデータベースとテーブルを作成し、InsertINTOステートメントを使用してデータを挿入し、最後にSelectステートメントを使用してデータを照会します。

MySQL:データストレージに対する初心者向けのアプローチMySQL:データストレージに対する初心者向けのアプローチApr 17, 2025 am 12:21 AM

MySQLは、使いやすく強力であるため、初心者に適しています。 1.MYSQLはリレーショナルデータベースであり、CRUD操作にSQLを使用します。 2。インストールは簡単で、ルートユーザーのパスワードを構成する必要があります。 3.挿入、更新、削除、および選択してデータ操作を実行します。 4. Orderby、Where and Joinは複雑なクエリに使用できます。 5.デバッグでは、構文をチェックし、説明を使用してクエリを分析する必要があります。 6.最適化の提案には、インデックスの使用、適切なデータ型の選択、優れたプログラミング習慣が含まれます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)