码迷,mamicode.com
首页 > Web开发 > 详细

HTTP协议

时间:2019-08-16 00:32:10      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:方式   ebs   解密   location   http   byte   效率   agent   dns   

应用层: ftp和dns服务等,http协议。面向用户,给用户提供应用服务通信

传输层:tcp和udp协议

网络层:ip寻址,icmp,igmp等

链路层:物理链接,硬件设备

 

dns服务,解析域名地址成ip地址

tcp协议,字节流服务,切割数据为小的报文段。采用三次握手可靠服务,使用SYN和ack标志,确保数据可达性。

ip协议,又叫网际协议,确保传输目的地准确。通过arp协议解析ip地址为对端的mac地址,设备的mac地址是唯一的。每台设备都只知道邻近设备地址,无法确认数据的最终流向

 

uri,用某个协议(http,ftp)表示的资源定位标识符

url,表示资源所处位置,是uri的子集

 

http是无状态协议,不对之前对请求和响应进行管理

keep-alive 持久化链接,默认的http请求和相应就代表一个tcp的周期结束,需要反复握手。持久化连接,除非有一端主动断开连接,否则tcp在多次请求期间,只会进行一次握手过程

管线化 同时发送多个请求,以及接收请求等

 

编码提升传输效率,对传输内容进行压缩

gzip compress

 

传输大块数据时,采用分割传输技术

transfer-encoding chunked

 

range:获取部分数据,返回206的部分报文,或者返回200的全部报文

accept 用户接收的数据类型

accept-charset 用户接收的数据字符集

accept-encoding 用户接收数据使用的编码 gzip compress

accept-language  用户接收的数据语言

Content-Type 报文的数据类型

cache-control: no-cache no-store 控制资源的缓存行为

connection: keep-alive、close 长连接 \upgrade 不进行代理转发,查看是否有新协议版本

Authorization: 用户的认证信息

If-Match: 字段值和ETag值匹配。服务器接受请求

If-None-Match: 字段值和ETag值不匹配。服务器接受请求

If-Modified-since: 返回指定时间点后更新的资源,如果在指定日期之前更新,则不接受请求

If-UnModified-since: 返回指定时间点后未进行更新的资源,如果在指定日期之前更新,则接受请求

If-Range: 指定的ETag值或者指定的日期和资源的ETag值或日期一致,则接收Range范围请求,否则返回全部资源

User-Agent: 用户信息代理信息

 

Accept-Ranges: 可处理的Range请求,返回对应的bytes,如果Range不可处理,返回none

ETag: 告诉用户资源的最新标识

Location: 返回3xx时,告诉用户的一个重定向资源

Server: 返回服务器的信息

Allow: 资源支持的请求方法

Content-Encoding: 资源的编码方式gzip compress

Content-Language: 资源的语言

Content-Length: 返回数据的大小

Content-MD5: 返回数据md5后的值

Content-Range: bytes 5001-10000/10000 返回数据的范围和数据大小

Content-Type 报文的数据类型

Expires: 资源的有效期

Last-Modified: 资源最近修改时间

Set-Cookie: 缓存数据

Cookie: 请求带的缓存数据

Upgrade: websocket 使用websocket协议进行通信,配合使用connection: Upgrade

 

status code

200 ok

204 当前请求成功。但内容一致,不进行更新

206 range请求,返回Content-range指定范围

301 302 303 重定向

304 if-modified/if-none-match/if-range/if-unmodified-since请求头,返回改请求头条件不满足

400 错误的请求,request无法解析

401 认证不通过,需要重新授权

403 禁止访问资源

404 资源没找到

501 服务器错误

503 服务器停机维护

 

https:

  采用非对称加密和对称加密两种方式。

  服务器去证书机构请求颁发证书,并上传服务器端的公钥,证书机构用自身机构的私钥对服务器端的公钥进行签名放到证书中。客户端收到证书后,使用系统中存有的公钥对证书上的服务器端公钥进行签名验证,和证书中的签名一致,说明验证通过。浏览器中经常会植入常用证书机关的公钥。在拿到服务器端端公钥后,生成一个随机数,可以看成以后通信的对称加密的密钥,发给服务器端,服务器端用自身的私钥进行解密,这样双方就有了对称加密的密钥。

HTTP协议

标签:方式   ebs   解密   location   http   byte   效率   agent   dns   

原文地址:https://www.cnblogs.com/diyigechengxu/p/11343433.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!