Skip to content

(一)网络 App、DNS、FTP

1. 网络应用模型

1.1. 客户—服务器模式(C/S )

  • 客户(client)和服务器(server)都是指通信中所涉及的两个应用进程;

  • 客户服务器方式所描述的是进程之间服务和被服务的关系;

  • 客户是服务的请求方,服务器是服务的提供方

1.2. 对等模式(P2P,peer-to-peer)

  • 指两个主机在通信时,不区分服务请求方和服务提供方

  • 从本质上看仍然是使用客户—服务器模式,只是对等连接中的每一个主机既是客户又同时是服务器;

2. DNS 系统

2.1. 概念

  • DNS 系统域名到 ip 地址的解析系统;

  • 域名:即主机的名字;

  • 因特网采用层次结构的命名树作为主机的名字,并使用分布式的域名系统 DNS;

  • DNS 解析是由若干个域名服务器程序完成的;

  • 域名服务器程序在专设的结点上运行,运行该程序的机器称为域名服务器;

2.2. 层次域名空间

  • 因特网采用了层次树状结构的命名方法,任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名;

  • 结构:由标号序列构成,各标号之间由点号 . 隔开

    • 域名的级数从前到后依次提高,最后一个标号序列为顶级域名(三级 . 二级 . 顶级);

    • 例:www.pku.edu.cnwww 为主机名,pku 三级域名,edu 二级域名,cn 顶级域名;

  • 域名只是个逻辑概念,并不代表计算机所在的物理地点;

  • 域名 v.s. ip 地址

    • 域名:使用字符串,长度可变串,便于人来使用和记忆

    • ip 地址:32 位二进制数,定长,方便机器处理

  • 因特网的域名空间

    img_PlbVzt081E

    • 根域名:为了组织为树结构而假想的根,实际上并不存在;

2.3. 域名服务器

  • :一个域名服务器所负责管辖的(或有权限的)范围叫做区(zone)

    img_UYhUYKkW5J

    • 各单位根据具体情况来划分自已管辖范围的区,但在一个区中的所有节点必须是能够连通的;
  • 树形结构的 DNS 服务器

    img_aElQJg3dIR

    • 四种类型:1)域名服务器,2)顶级域名服务器,3)权限域名服务器,4)本地域名服务器;

    • 根域名服务器

      • 最重要的域名服务器;

      • 所有的根域名服务器都存有所有顶级域名服务器的地址

      • 任何本地域名服务器,在遇到自身无法解析的域名时,会首先查询根域名服务器(树状查询);

    • 顶级域名服务器

      • 负责管理在该服务器注册的所有二级域名

      • 收到 DNS 查询请求后,若有对应 ip 地址则直接给出,否则给出下一级的域名服务器地址

    • 权限域名服务器

      • 负责管理某个区的域名;

      • 收到 DNS 查询请求后,若自身不能给出,则同样给出下一个权限域名服务器的地址

    • 本地域名服务器(默认域名服务器)

      • DHCP 获取域名服务器地址时,为本地域名服务器的地址

      • 直接处理主机的 DNS 查询请求;

      • 实际操作中,权限域名服务器和本地域名服务器一般是等价的

      • 国内公共的域名服务器:114.114.114.114;

  • 域名服务的可靠性(备份)

    • DNS 域名服务器都把数据备份到多个域名服务器来保存,其中的一个是主域名服务器,其他的是辅助服务器

    • 当主域名服务器出故障时,辅助域名服务器可以保证 DNS 的查询工作不会中断

    • 备份操作

      • 定期备份:主服务器定期进行备份;

      • 数据一致性:只有主服务器能更新域名数据,辅助服务器不能更新;

2.4. 域名解析

  • 特点:一般是递归查询

  • 过程

    • 1)本地域名服务器首先响应主机的查询,若不能给出 ip 地址,则以 DNS 客户的身份,向其他根域名服器发送查询请求

    • 2)迭代查询:根域名服务器收到请求,要么给出 ip 地址,要么给出下一步应该查询的域名服务器地址,由本地服务器继续查询;

      img_ZdVTvJjaOq

    • 3)递归查询(较少用):和 2 类似,但是继续查询的操作由根服务器往下推进,本地域名服务器只需一次请求和一次应答

      img_kC3XbX7tZl

3. FTP

3.1. 概念

  • 文件传送协议FTP(File Transfer Protocol):是因特网上使用得最广泛的文件传送协议;

  • FTP 提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限;

  • FTP 隐藏了各计算机系统的细节,因而适合于在异构网络任意计算机之间传送文件;

3.2. 工作原理

  • 特点:1)只提供一些基本的文件传输服务,2)使用 TCP 提供可靠服务

  • 主要功能:减少或消除在不同操作系统下处理文件的不兼容性;

  • 工作模式:客户—服务器模式(C/S),一个 FTP 服务器进程可以服务多个 FTP 客户进程

  • FTP 使用的端口号

    • 端口 21服务器端用于接收客户端 FTP 请求;

    • 端口 20服务器端用于数据传输;

  • FTP 服务器进程

    • 1 个主进程:接收新的请求;

    • 若干从属进程:处理单个请求;

  • FTP 服务器主进程的工作过程

    • 1)打开端口 21,监听客户连接;

    • 2)若有请求,启动从属进程,处理 FTP 请求;

    • 从属进程处理请求完毕后即终止;

    • 主进程和从属进程为并发执行;

3.3. 控制连接和数据连接

img_9V75I5YYKp

  • 控制连接(TCP)

    • 整个 FTP 会话期间一直保持打开

    • 负责将客户的文件传输请求送给服务器端的控制进程;

    • 不传输文件;

  • 数据连接(TCP)

    • 连接客户和服务器的数据传输进程

    • 实际负责文件传输;

    • 文件传输完毕后即终止;