应用层
应用层
  原理
    传输层提供服务
      TCP
        可靠、面向连接
      UDP
        不可靠、尽力而为
    体系架构
      Client-Server
      P2P
        非结构化P2P
        结构化P2P（一致性哈希）
      混合模式
    服务要求
      可靠性、带宽、延时、安全
  应用层协议
    HTTP
      TCP、无状态stateless
      报文
        请求报文
          请求行、请求头、空白行、请求体
        响应报文
          状态码和状态描述
      cookie
      缓存 cache
        conditional GET
      持久连接
        非持久
        持久
          有无Pipeline
    FTP
      TCP
    Mail
      发送
        SMTP
          TCP
      接受
        POP3（无状态）
          不能修改远程目录
        IMAP（有状态）
          可以修改远程目录
        HTTP
    DNS
      作用
        4条
      分层NS实现的分布式数据库
        先查local
          查到
          查不到
            root-TLD-权威
        recursive
        iterative
      主机能查询分布式数据库的协议
        RR
        报文
          UDP:53
    bittorrent
      torrent,chunk,tracker
        TCP
      向谁要
        稀缺有限
      给谁发
        tit for tat
          每10s选发送速率最高4位
          每30s随机选择一位
    CDN
      content distribution network
    SSL
      Secure Sockets Layer 安全套接层
  Socket API 编程