HTTP--网络协议分层,http历史(二)

网络协议分层

只关心应用层里的http和传输层里的tcp

  1. 物理层:主要作用是定义物理设备如何传输数据
  2. 数据链路层:在通信的实体间建立数据链路连接
  3. 网络层:为数据在结点之间传输创建逻辑链路
  4. 传输层:向用户提供可靠的端到端(End-to-End)的服务,传输层向高层屏蔽了下层数据通信的细节
  5. 为应用软件提供了很多服务,构建于TCP塄之上,屏蔽网络传输相关细节

clipboard.png

http历史

http0.9

  1. 只有一个命令GET
  2. 没有header等描述数据的信息
  3. 服务器发送完毕,就关闭TCP连接

http1.0

  1. 增加了status,code和header
  2. 多字符集支,多部分发送,权限,缓存

http1.1

  1. 持久连接
  2. pipeline
  3. 增加host和其它一些命令

http2

  1. 所有数据以二进制传输
  2. 同一个连接里面发送多个请求不再需要按照顺序来
  3. 头信息压缩以及推送等提高效率的功能

http,tcp之间的关系

建立了tcp连接之后,http(用户就可以给服务器发送请求和服务器就可以响应了),可以多个http同时进行
clipboard.png

三次握手

clipboard.png

http报文

请求报文的起始行

http方法

  1. 用来定义对资源的操作
  2. 常用的有GET,POST,
  3. 从定义上讲各自的语义

clipboard.png

请求报文的起始行

  1. 定义服务器对请求的处理结果
  2. 各个 区间的code有各自的语义
  3. 好的http服务可以通过code判断结果

最简单的服务器

const http = require('http');
http.createServer(function (req, res) {
    console.log(req.url);
    res.end("hello world")
}).listen(8888)
console.log('server start at port 8888')

clipboard.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值