点对点模型

 
网络模型中除了客户端/服务器模型外,还有点对点模型。点对点网络模型有两种不同形式:点对点网络设计和点对点应用程序。这两种形式具有相似的特征,但实际工作过程却大不相同。
 
点对点网络
 
在点对点网络中,两台或两台以上的计算机通过网络互连,它们共享资源(如打印机和文件)时可以不借助专用服务器。每台接入的终端设备(称为“点”)既可以作为服务器,也可以作为客户机。在某项事务中,作为服务器的计算机也可以同时成为其它服务器的客户端。于是,计算机的角色根据请求的不同在客户端和服务器之间切换。
 
拥有两台互连电脑、一台共享打印机的家庭简易网络就是一种典型的点对点网络。两个人都可以对电脑进行设置,用于共享文件、开启网络游戏,或者共享 Internet 连接。除此之外,点对点网络功能还有一个实例。例如,连接到某一大型网络的两台计算机,可以通过应用软件在该网络上实现两者之间的资源共享。
 
与使用专用服务器的客户端/服务器模型不同,点对点网络将资源分散在网络中。前者把要共享的信息存储在专用服务器上,而后者则将信息存储在任意接入设备的任意位置。因此,无需安装其它服务器软件即可在当前操作系统中支持文件、打印机共享。由于点对点网络一般不使用集中用户帐户、许可权限或者监控,因此在包含很多计算机的网络中很难实施安全管理和访问策略。。这就要求必须在每台对等设备上分别设置用户帐户和访问权限。
 

点对点应用程序
 
与点对点网络不同,点对点应用程序 (P2P) 允许设备在同一通信过程中既作客户端又作服务器。在该模型中,每台客户端都是服务器,而每台服务器也同时是客户端。每台机器都可以发起通信,并在通信过程中处于平等地位。不过,点对点应用程序要求每台终端设备提供用户界面并运行后台服务。当启动某个点对点应用程序时,程序将调用所需用户界面和后台服务。此后,这些设备就可以直接通信。
 
某些 P2P 应用程序中采用混合系统,即共享的资源是分散的,但指向资源位置的索引存储在集中目录中。在混合系统中,每台对等设备通过访问索引服务器获取存储在另一台对等设备中的资源位置。索引服务器也可以帮助连接两台对等设备。但连接完成后,通信将只在两台对等设备之间完成,而不需要与索引服务器进行额外通信。
 
点对点应用程序可以用于点对点网络、客户端/服务器网络以及 Internet。