网络应用专题.ppt
文本预览下载声明
网络应用专题 客户-服务器交互 1. 概述 将网络硬件和协议软件结合起来,可以形成一个允许任意一对计算机上的应用程序相互通信的基本的通信结构 2. 应用软件提供的功能 虽然基础的物理网络和通信协议对交互联网的通信是必须的,但应用软件为用户提供高层服务,并决定了用户对基础互联网能力的理解方式 3. 互联网提供的功能 互联网提供一个通用的通信构架,而不指明提供哪些服务、由哪些计算机来运行这些服务、如何确定服务的存在以及如何使用这些服务-这些问题都由应用软件和用户来解决 4. 建立通信 协议软件无法通知应用程序通信的到达,应用程序也无法同意和接受任意收到的信息 5. 客户-服务器模式 一个通信涉及的两个应用程序不能都在等待信息到达-一个应用程序必须主动地启动交互,另一个则被动地等待。这种模式称之为客户-服务器模式 客户-服务器模式 6. 客户与服务器的特性 客户端软件: 一个任意的应用程序,在远程访问时临时称为客户,同时兼作其他的本地计算 直接被用户调用,只运行一次 在用户的个人计算机上本地运行 主动地与服务器启动通信 能支持所需的多重服务,但同时只与一个远程服务器进行主动通信 不需要特殊的硬件和高级的操作系统。 6. 客户与服务器的特性 服务器软件: 一种专门用途的、享有特权的程序,专门用来提供某一种服务,可以同时处理多个远程客户的请求 在系统初启时自动调用,不断运行许多遍 在一台共享计算机上运行(即不是在用户的个人计算机上) 被动地等待来自任意客户的通信 接受来自任意客户的通信,但只提供一种服务 需强大的硬件和高级的操作系统支持。 7. 服务器程序与服务类计算机 服务器(程序):一个被动地等待通信的程序。 服务类计算机:运行服务器(程序)的功能强大的计算机。 8. 请求、应答与数据流向 信息在客户与服务器之间沿任一方向或两个方向传递。典型地,客户服务器发送请求,服务器向客户返回应答。 客户向服务器发送一系列请求,服务器返回一系列应答 客户与服务器的通信一旦建立,服务器不间断地输出数据 数据传输完毕,通信断开。 8. 请求、应答与数据流向 9. 传输协议与客户-服务器交互 客户和服务器使用传输协议通信。 10. 单机上的多重服务 一套足够强大的计算机系统能够同时运行多个客户与服务器程序。所需条件: 计算机具有足够的硬件资源(有一个快速的CPU和足够的存储器) 计算机具有允许多个应用程序同时执行的操作系统(如UNIX或Windows) 单机上的多重服务 10. 单机上的多重服务 单机运行多重服务的好处: 有助于减轻系统管理员的负担 将服务要求量少的多个服务器合并到单机上会在稍微的性能降低的情况下显著地降低开销 11. 标识一个特定服务 传输协议赋给每个服务一个唯一的标识。客户和服务器都使用这个标识;协议软件使用这个标识将收到的请求转向正确的服务器 这个标识称之为协议端口号(protocal port number)。 12. 为一个服务建立多个服务器副本 在技术上,一套计算机系统如果允许同时允许多个应用程序,则称它支持并发,而具有一个以上控制线程的程序称为并发程序 并发 为一个服务建立多个服务器副本 一个并发的服务器可以同时处理多个客户的请求。当请求到达时,服务器将它交给一个控制线程,使之能与已有的线程并发执行 本质上,每个请求由一个独立的服务器副本执行。 13. 动态服务器创建 大多数服务器是动态操作的。服务器在每个请求到来时创建一个新的线程。 服务器程序由两部分组成: 一部分负责接收请求和生成新线程 一部分包含处理单个请求的代码 动态服务器创建 如果有N个客户正在使用一台单机上的服务,则存在N+1个提供服务的线程:主线程等待更多的请求,同时有N个服务线程分别同一个客户进行交互。 14. 传输协议与无二义性通信 二义性问题:如果一个服务器存在多个副本,客户是怎样与正确的副本进行交互? 15. 面向连接与无连接的传送 传输协议支持两种基本的通信方式: 面向连接:当使用面向连接的传输时,客户首先建立与指定服务器的连接。这个连接在客户发送请求与服务器进行应答期间一直存在。当客户结束使用这个服务后,由它来关闭这个连接。如TCP协议。 无连接:使用时,发送方的应用程序指明报文发往的目的地,每个报文独立地进行发送。如UDP(用户数据报协议)。 16. 支持多种协议的服务 服务器对外提供的服务对于无连接与面向连接的传输都适用,即允许使用多种传输协议,使得服务对于不能访问特定传输协议的客户也适用 优点:增加了服务器软件的灵活性 支持多种协议的服务 支持多种协议的服务器可能以两种方式实现: 直接式:对同一个访问有两个服务器,分别是无连接、面向连接 复杂式:一个单一的服务器同时用两个或多个传输协议进行交互。服务器可接收到达的任一种协议的请求,并在发出
显示全部