• 6.1 网络应用模型
    • 6.1.1 客户/服务器模型

      • 服务器
        • 总是打开的主机
        • 服务于 许多来自其他称为客户机的主机请求
        • 服务器上运行的软件则是专门用来提供某种服务的程序,可同时处理多个远程或本地客户的要 求。
          • 系统启动后即自动调用并一直不断地运行着,被动地等待并接收来自各地客户的请求。
        • 服务器程序不需要知道客户程序的地址。
        • 工作流程
          1. 服务器处于接收请求的状态。
          2. 客户机发出服务请求,并等待接收结果。
          3. 服务器收到请求后,分析请求,进行必要的处理,得到结果并发送给客户机。
      • 客户程序
        • 必须知道服务器程序的地址
        • 一般不需要特殊的硬件和复杂的操作系统。
      • 客户/服务器模型最主要的特征
        • 客户是服务请求方,服务器是服务提供方。
        • 如Web应用程 序,其中总是打开的Web服务器服务于运行在客户机上的浏览器的请求。当Web服务器接收到来 自客户机对某对象的请求时,它向该客户机发送所请求的对象以做出响应。
      • 常见的使用客户/服务 器模型
        • Web、文件传输协议( FTP、远程登录和电子邮件等。
      • 主要特点
        1. 网络中各计算机的地位不平等,
          • 服务器可以通过对用户权限的限制来达到管理客户机的 目的,使它们不能随意存储/删除数据,或进行其他受限的网络活动。
          • 整个网络的管理工 作由少数服务器担当,因此网络的管理非常集中和方便。
        2. 客户机相互之间不直接通信。
          • 例如,在Web应用中两个浏览器并不直接通信。
        3. 可扩展性不佳。
          • 受服务器硬件和网络带宽的限制,服务器支持的客户机数有限。
        • 服务器性能的好坏决定了整个系统的性能,当大量用户请 求服务时,月艮务器就必然成为系统的瓶颈。
    • 6.1.2 P2P 模型

      • 思想是整个网络中的传输内容不 再被保存在中心服务器上,每个结点都同时具有下载、上传的功能,其权利和义务都是大体对等的。
      • 各计算机没有固定的客户和服务器划分。
        • 任意一对计算机— —称为对 等方( Peer),直接相互通信。
      • 从本质上来看仍然使用客户/服务器方式,每个结 点既作为客户访问其他结点的资源,也作为服务器提供资源给其他结点访问。
      • 比较流行的P2P 应用
        • PPlive、Bittorrent和电驴等。
      • 优点
        1. 减轻了服务器的计算压力,消除了对某个服务器的完全依赖,可以将任务分配到各个结 点上,因此大大提高了系统效率和资源利用率
        2. 多个客户机之间可以直接共享文档。
        3. 可扩展性好,传统服务器有响应和带宽的限制,因此只能接受一定数量的请求。
        4. 网络健壮性强,单个结点的失效不会影响其他部分的结点。
      • 缺点
        • 在获取服务的同时,还要给其他结点提供服务,因此会占用较多的内存, 影响整机速度。
        • 据某互联网调研机构统计, 当前P2P程序已占互联网50%〜90%的流量,使网络变得非常拥塞,因此各大ISP (互联网服务 提供商,如电信、网通等)通常都对P2P应用持反对态度。
  • 6.2 域名系统(DNS)
    • 是因特网使用的命名系统,用来把便于人们记忆的 具有特定含义的主机名(如www.cskaoyan.com) 转换为便于机器处理的IP地址。
    • DNS系统采用 客户/服务器模型,其协议运行在UDP之上,使用53号端口。
    • DNS分为3部分
      • 6.2.1 层次域名空间

        • 图6.4域名空间的树状结构
        • 因特网采用层次树状结构的命名方法。
        • 采用这种命名方法,任何一个连接到因特网的主机或 路由器,都有一个唯一的层次结构名称,即域名( Domain Name)
        • 域( Domain) 是名字空间中 一个可被管理的划分。
          • 域还可以划分为子域,而子域还可以继续划分为子域的子域,这样就形成 了顶级域、二级域、三级域等。
        • 个域名都由标号序列组 成,而各标号之间用点(“.”)隔开。
        • 注意
          1. 标号中的英文不区分大小写。
          2. 标号中除连字符(-) 外不能使用其他的标点符号。
          3. 每个标号不超过63个字符,多标号组成的完整域名最长不超过255个字符。
          4. 级别最低的域名写在最左边,级别最高的顶级域名写在最右边。
        • 顶级域名(Top Level Domain, TLD) 分为如下三大类
          1. 国家顶级域启( nTLD)
            • 如“.cn”表示中国,“.us”表示美国, “.uk”表示英国。
          2. 通用顶级域名( gTLD)
            • 常见的有“.com”( 公司)、".net"( 网络服务机构)、“.org”(非营利性组织)和".gov"( 国家或政府部门)等。
          3. 基础结构域名
            • 只有一个,即 arpa,用于反向域名解析,因此又称反向 域名。
      • 6.2.2 域名服务器

        • 概述
          • 因特网的域名系统被设计成一个联机分布式的数据库系统,并采用客户/服务器模型。

          • 域名到 IP地址的解析是由运行在域名服务器上的程序完成的,一个服务器所负责管辖的范围称为区(“域〃的一部分),各单位根据具体情况来划分自己管辖范围的区,但在一个区中的所有结点必须是能够连通的,每个区设置相应的权限域名服务器,用来保存该区中的所有主 机的域名到IP地址的映射。

          • 每个域名服务器不但能够进行一些域名到IP地址的解析,而且还必 须具有连向其他域名服务器的信息。当自己不能进行域名到IP地址的转换时,能够知道到什么地 方去找其他域名服务器。

          • 没有一台域名服务器具有因特网上所 有主机的映射,相反,该映射分布在所有的DNS ±o采用分布式设计的DNS,是一个在因特网 上实现分布式数据库的精彩范例。

        1. 根域名服务器
          • 是最高层次的域名服务器,所有的根域名服务器都知道所有的顶级域名服务器 的IP地址。
          • 根域名服务器也是最重要的域名服务器,不管是哪个本地域名服务器,若要对因特网 上任何一个域名进行解析,只要自己无法解析,就首先要求助于根域名服务器。
          • 根域名服务器用来管 辖顶级域(如-com),通常它并不直接把待查询的域名直接转换成IP地址,而是告诉本地域名服 务器下一步应当找哪个顶级域名服务器进行查询。
        2. 顶级域名服务器
          • 这些域名服务器负责管理在该顶级域名服务器注册的所有二级域名。
          • 收到DNS查询请求时, 就给出相应的回答
        3. 授权域名服务器
          • 二级及以下的域名服务器。
          • 每台主机(网站服务器的主机)都必须在授权域名服务器处登记。
          • 实际上,许多域名服务器都同时充当本地域名服务器和授权域名服务器。
          • 授权域名服务器总能将其管辖的主机名转换为该主机的IP地址。
        4. 本地域名服务器
      • 6.2.3 域名解析过程

  • 6.3 文件传输协议(FTP)
  • 6.4 电子邮件
  • 6.5 万维网(WWW)