1. 报文
  2. 作用:在网络应用程序及它们的应用层协议存留的地方
  3. DNS(Domain Name System)
    1. 提供的服务
      1. 识别主机的两种方式:主机名或者IP地址
      2. DNS的主要任务:提供主机名到IP地址转换的目录服务(将主机名转化为IP地址)
    2. DNS协议是应用层协议,运行在UDP上,使用53号端口
    3. DNS服务器
      1. 种类
        1. 根DNS服务器(只是具有13个IP地址)
        2. 顶级域(DNS)服务器(TTL)
        3. 权威DNS服务器
          1. DNS记录类型可以是A(address)记录,NS记录(name server),MX(mail),CNAME等
        4. 本地DNS服务器
      2. 种类
      3. 查询
        1. 递归查询:从客户端到本地DNS服务器
        2. 迭代查询:DNS服务器之间的交互查询
    4. DNS缓存
      1. 描述:DNS返回了正确的IP之后,系统就会将这个结果临时储存起来。并且它会为缓存设定一个失效时间 (例如N小时),在这N小时之内,当你再次访问这个网站时,系统就会直接从你电脑本地的DNS缓存中把结果交还给你,而不必再去询问DNS服务器,变相“加速”了网址的解析。
  4. 协议和协议原理
    1. 体系结构
      1. C/S 结构
      2. P2P结构
    2. 进程套接字(API)向网络发送报文和从网络 接收报文
    3. 根据应用程序的服务要求选择运输层协议:
      1. 可靠数据传输
      2. 吞吐量
        1. 可用吞吐量:发送进程能够向接受进程交付比特的速率
      3. 定时
      4. 安全性
    4. HTTP(HyperText Transfer Protocol)
      1. URL地址的组成:存放对象的服务器主机名和对象的路径名
      2. HTTP使用TC作为它的支撑运输协议(而不是在UDP上运行)
      3. 是一个 无状态协议(stateless protocol)
      4. 非持续连接和持续连接的HTTP
        1. 非持续连接
          1. 每个请求/响应对经一个TCP连接发送
        2. 持续连接
          1. 所有请求/响应对经相同的TCP连接发送
      5. HTTP报文的通用格式
        1. 请求报文
        2. 响应报文
    5. FTP(File Transfer Protocol)
      1. HTTP和FTP共同点
        1. 都使用TCP连接
      2. FTP不同于HTTP的特点
        1. 使用两个并行TCP连接(分别是控制连接和数据连接)传输文件
          1. 控制连接:用于在两个主机间传输控制信息(例如用户标识、口令等) (带外(out of band)传输控制信息)
          2. 而HTTP带内(in-band)传输控制信息
          3. 数据连接:用于实际发送一个文件
    6. SMTP(Simple Mail Transfer Protocol)
      1. 使用TCP连接
      2. 它是因特网电子邮件应用的核心,一般不适用中间邮件服务器发送邮件
      3. HTTP和SMTP对比
        1. 当进行文件传输时,持续的HTTP和SMTP都有使用持续连接
        2. 不同
          1. HTTP是一个pull Protocol,而SMTP是一个push Protocol
          2. SMTP要求报文使用7比特ASCII码,而HTTP没有这种限制
          3. HTTP把每个对象封装到自己的HTTP响应报文中,而SMTP把所有报文对象放在一个报文中
    7. 邮件访问协议: 用于将邮件服务器上的报文传送给用户本地PC
      1. POP3(post office protocol)
        1. 建立TCP连接后,POP3按照三个阶段开始工作: authorization、事务处理、更新
          1. authorization:用户代理以明文形式发送username和password以鉴别用户
          2. 事务处理:用户代理取回报文,还可以进行其他操作
          3. 更新:结束POP3会话,同时邮件服务器会删除被标记为删除的报文
      2. IMAP(internet mail access protocol)
        1. 作用:为用户提供创建远程文件夹并为报文指派文件夹的方法,以实现从任何一台机器都能对所有报文进行访问
        2. 相比于POP3不同的特点
          1. 维护了IMAP会话的用户状态信息
          2. 具有允许用户代理获取报文组件的命令
      3. HTTP
        1. 基于web的电子邮件在浏览器和邮件服务器之间传送时使用HTTP