C/C++教程

UDP/TCP HTTP/HTTPS

本文主要是介绍UDP/TCP HTTP/HTTPS,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

7层网络协议

在这里插入图片描述

TCP

  1. 有连接
  2. 数据正确性

UDP

  1. ping命令
  2. 无连接
  3. 程序简单
  4. 不安全 丢包
  5. 无序 效率高

HTTP pipelining

  1. 默认情况下http协议中每个传输层连接只能承载一个http请求和响应,然后结束
  2. HTTP管线化是将多个HTTP要求(request)整批提交的技术
    1. 而在传送过程中不需先等待服务端的回应
    2. 仅HTTP/1.1支持此技术(HTTP/1.0不支持)
    3. 只有GET和HEAD请求可以进行管线化,而POST则有所限制
    4. 浏览器默认不启动管线机制,因为对方(服务器)不一定支持HTTP/1.1版本的协议
    5. 减少网络IO的读写

HTTP 和 HTTPS

HTTP

  1. HyperText Transfer Protocol:超文本传输协议
  2. 明文
  3. tcp三次握手
    1. 两次握手可以吗
      1. 三次刚好 两次数据不可靠
        在这里插入图片描述
  4. tcp4次挥手
    1. 三次挥手不可以吗
      1. 因为tcp是全双工通信的,每个方向单独断开,每个方向2次,所以4次

在这里插入图片描述

HTTPS

  1. 利用 SSL/TLS 来加密数据包
  2. CA证书
  3. 请求流程如下
    在这里插入图片描述
这篇关于UDP/TCP HTTP/HTTPS的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!