一、互联网五层模型

应用层 HTTP FTP //为应用软件提供了很多服务。构建于TCP协议之上。屏蔽网络传输相关细节
传输层 TCP UDP //提供可靠端到端服务。定义传输数据,如何分片,组装。
网络层 //在结点之间传输创建逻辑链路
数据链路层 //在通信的实体间建立数据链路链接,0101
物理层 //硬件设备,光缆,定义物理设备如何传输数据

二、HTTP协议发展史

0.9版本只有一个GET命令
没有HEADER等描述数据的信息
服务器发送完毕,就关闭TCP链接。【一个TCP链接,可以发送很多HTTP请求】
1.0版本增加命令
增加status code 和 header
多字符集支持,多部分发送,权限,缓存
1.1版本
持久链接,TCP链接,可以发送多个请求
pipeline
增加host和其它一些命令,本地物理服务器跑多个服务
2版本
所有数据以二进制传输
同一个链接发送多个请求,不再按照顺序
头信息压缩以及推送等提高效率的功能。
【请求html文本,浏览器解析,再请求css和js。版本2推送功能,请求html同时,将引用的css和js推送到客户端,并行的。】

三、HTTP的三次握手

http request ---- TCP connection --- 服务器
防止因网络延迟,服务器开启无用链接

      client  -->  [SYN]          Seq = x        -->  server
              <--  [SYN ACK]   Ack=x+1  Seq=y    <--
              -->  [ACK]          Ack=y+1  Seq=z  -->
四、URI、URL、RUN

--URI/统一资源标识符 Uniform Resource Identifier
用来标识互联网上的信息资源
--URL/统一资源定位器
ftp:// http:// ftp协议 http协议
http://host.com:80/path?query=string#hash
协议 ip 端口 路由 搜索字段 锚点
--URN/永久统一资源定位符
在资源移动之后还能被找到

五、报文

a 请求报文
b 响应报文

  HTTP方法
  用来定义对资源的操作 POST、GET、DELETE、UPDATE
  HTTP CODE
  定义服务器对请求的处理结果
  各个区间的CODE有各自的语义
100-199  操作持续进行
200-299  成功
300-399  传的对象有问题
400-499  发送的请求有问题,401没有认证
500-599  服务器出现错误






发小发
98 声望4 粉丝