视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
关于http、https、http/2的知识
2020-11-27 15:28:32 责编:小采
文档


在学习http、https、http/2之前,先整理一下OSI网络模型、TCP/IP协议、TCP和UDP等内容。

一、简单回顾一下OSI七层网络模型

OSI是一个开放性的通信系统互连参考模型,是一个由国际标准化组织提出的的协议规范。模型由上往下是:

  • 应用层(OSI 的应用层协议包括文件的传输、访问及管理协议(FTAM) ,以及文件虚拟终端协议(VIP)和公用管理系统信息(CMIP))

  • 表示层(表示层供多种功能用于应用层数据编码和转化,以确保以一个系统应用层发送的信息 可以被另一个系统应用层识别)

  • 会话层(会话层建立、管理和终止表示层与实体之间的通信会话)

  • 传输层(传输层向高层提供可靠的端到端的网络数据流服务)

  • 网络层(网络层负责在源和终点之间建立连接)

  • 数据链路层(数据链路层通过物理网络链路供数据传输。不同的数据链路层定义了不同的网络和协议特征,其中包括物理编址、网络拓扑结构、错误校验、数据帧序列以及流控)

  • 物理层(物理层负责最后将信息编码成电流脉冲或其它信号用于网上传输)

  • 二、TCP/IP协议

    TCP/IP协议整合了TCP和IP等多种协议,处理计算机与网络之间的传输,它参考和整合了OSI网络模型。常见的的TCP/IP协议分为四层,由上往下是:

  • 应用层(应用层对应于 OSI 七层参考模型的应用层和表示层)

  • 传输层(传输层对应于 OSI 七层参考模型的传输层,它供两种端到端的通信服务)

  • 网间层(本层包含 IP 协议、RIP 协议(Routing Information Protocol,路由信息协议),负责数据的包装、寻址和路由。同时还包含网间控制报文协议(Internet Control Message Protocol,ICMP)用来供网络诊断信息)

  • 网络接口层(网络接口层包括用于协作IP数据在已有网络介质上传输的协议)

  • 三、TCP和UDP

    TCP(Transmission Control Protocol、传输控制协议)
    是一种面向连接的、可靠的、基于字节流的传输层通信协议。UDP(User Datagram Protocol、用户数据报协议)是一个简单的面向数据报的传输层协议。他们负责OSI网络模型中传输层的处理。

    TCP和UDP的简单对比:

    TCPUDP
    面向连接(三次握手、四次挥手)无连接
    资源占用较多资源占用减少
    保证数据顺序数据无顺序
    传输速度较慢传输速度快
    保证数据正确性容易丢包
    流模式报文模式

    四、HTTP

    http(超文本传输协议)是一种常用于应用层的协议,它是基于文本传输内容。

    八种请求方法

    get、post、head、put、delete、trace、options、connect。

    http请求信息结构

  • 请求行

  • 请求头

  • 空行

  • 其他消息

  • 状态码

  • 1xx消息——请求已被服务器接收,继续处理

  • 2xx成功——请求已成功被服务器接收、理解、并接受

  • 3xx重定向——需要后续操作才能完成这一请求

  • 4xx请求错误——请求含有词法错误或者无法被执行

  • 5xx服务器错误——服务器在处理某个正确请求时发生错误

  • 常见状态码200(请求成功)、302(重定向到些的url)、304(读取缓存)、404(没有找到文件或目录)、405(请求指定的方法错误)、500(服务器错误)、502(服务器无效响应)

    五、HTTPS

    https可以称为http安全版,主要是http下增加了SSL(安全套接层)或者TSL(传输层安全),在SSL或TSL在传输层对数据进行了加密处理。

    https特点:

  • 1、保证传输信息安全(经过加密)

  • 2、需要申请证书

  • 3、可以防止运营商劫持

  • 4、由于增加了安全层,所以访问速度有所减慢

  • 5、http网站可以访问https链接,https网站无法访问http链接(除了部分支持mixed-content的浏览器)

  • 六、SPDY

    spdy是谷歌开放开放的网络传输协议,它位于http和ssl层之间,可以加快访问速度。

    spdy的特点:

  • 1、可以降低延迟

  • 2、可以设置请求优先级

  • 3、header压缩

  • 4、基于https保障传输安全

  • 5、支持server push

  • 七、HTTP/2

    http/2(超文本传输协议第二版),他对http进行了一些升级改造,也参考了spdy相关的内容(可以称为spdy的演化版本)。

    http/2的特点:

  • 新的二进制格式

  • 多路复用

  • header压缩

  • 支持server push

  • http/2和spdy的区别:

  • http/2支持http传输、spdy只支持https

  • http/2和spdy的header压缩算法不同

  • 参考文章

    TCP和UDP的区别
    HTTP,HTTP2.0,SPDY,HTTPS你应该知道的一些事
    深入浅出-网络七层模型&&网络数据包

    下载本文
    显示全文
    专题