计算机网络

第14讲 | HTTP协议:看个新闻原来这么麻烦

2019-06-26  本文已影响0人  carlclone

1 URL=统一资源定位符
2 HTTP1.1 默认开启keep-alive , 多次请求会复用tcp连接
3 http报文格式: GET URL HTTPVERSION cr lf
4 什么是cr什么是lf
5 HEADERNAME: HEADER CONTENT cr lf
6 cr lf后才是实体
7 图

image.png

8 PUT和POST PUT一般修改,POST一般创建
9 缓存相关的HEADER
10 用nginx拦截静态资源
11 Cache Control 控制缓存 , 客户端max-age判断 服务端资源缓存时间小于这个值的可以直接拿 , 为0则需要去应用拿
12 if-Modified-Since , 根据日期时分秒判断判断是否用缓存 , 304 not modified 的话直接用本地的
13 http协议应用层 , 所以应该是在浏览器里
14 tcp 通过stream二进制流的方式传送 , 是什么样的啊? stream二进制流
15 然后到了tcp层又把二进制流转成报文段发给服务器 , 那udp直接发的解析后的报文给应用层 , 是怎么用的?
16 IP层查看地址是否在同一个局域网 , 是就发ARP协议
17 ARP协议是干嘛的 , 通过IP查mac , 然后发出去
18 不在同一个局域网就发到网关 , 同样ARP获取网关的mac , 网关地址应该是写在系统里的
19 然后网关会取出第三层, 用路由协议找到下一条的路由mac , 封装好继续一层层过去
20 有哪些路由协议
21 最后就到目标ip的局域网网关 , 然后发送ARP得到目标的mac , 封装好发出去
22 一些HEADER : Retry-After , Content_Type
23 TCP会把HTTP的内容切成一个个小段发出去
24 HTTP2会压缩header , 维护索引表 , 只发送索引 1234
25 其他的HTTP2介绍 不打算深入 (头压缩,分帧,二进制编码,多路复用)
26 一个例子介绍HTTP2 , 一个页面 , css jpg js请求各一个 , http只能串行 , http2可以同时发多个
27 上面这个功能解决了http队首阻塞问题
28 http1.1的pipeline机制 , 多个tcp连接并行请求和响应 , http2只需要一条 , 减少tcp连接数 , 减缓服务器压力
29 QUIC协议 , 暂时跳过? QUIC是一个用UDP实现可靠性的案例
30 两道思考题

上一篇 下一篇

猜你喜欢

热点阅读