• 4 HTTP的“四层”和“七层”


    1 四层:TCP/IP 网络分层模型

    四层是指TCP/IP 网络分层模型。

    1. 第一层:“链接层”(link layer),负责在以太网、WiFi 这样的底层网络上发送原始数据包,工作在网卡这个层次,使用 MAC 地址来标记网络上的设备,所以有时候也叫 MAC 层。

    2. 第二层:“网际层”或者“网络互连层”(internet layer),IP 协议就处在这一层。

      • 因为 IP 协议定义了“IP 地址”的概念,所以就可以在“链接层”的基础上,用 IP 地址取代 MAC 地址,把许许多多的局域网、广域网连接成一个虚拟的巨大网络,在这个网络里找设备时只要把 IP 地址再“翻译”成 MAC 地址就可以了。
    3. 第三层:“传输层”(transport layer),这个层次协议的职责是保证数据在 IP 地址标记的两点之间“可靠”地传输,是 TCP 协议工作的层次,另外还有它的一个“小伙伴”UDP。

      • TCP 是一个有状态的协议,需要先与对方建立连接然后才能发送数据,而且保证数据不丢失不重复;TCP 的数据是连续的“字节流”,有先后顺序。
      • UDP 是一个无状态的协议,不用事先建立连接就可以任意发送数据,但不保证数据一定会发到对方;UDP 是分散的小数据包,是顺序发,乱序收。
    4. 第四层叫“应用层”(application layer),由于下面的三层把基础打得非常好,所以在这一层就“百花齐放”了,有各种面向具体应用的协议。例如 Telnet、SSH、FTP、SMTP 等等,当然还有我们的 HTTP。

    5. 数据包

      • MAC 层的传输单位是帧(frame),IP 层的传输单位是包(packet),TCP 层的传输单位是段(segment),HTTP 的传输单位则是消息或报文(message)。
      • 但这些名词并没有什么本质的区分,可以统称为数据包。

    2 七层:OSI网络分层模型

    OSI全称为 开放式系统互联通信参考模型(Open System Interconnection Reference Model)`。
    image

    1. OSI 模型的优点

      • TCP/IP 是纯软件的栈,没有网络应有的最根基的电缆、网卡等物理设备的位置,OSI补上了这个缺失
      • OSI 为每一层标注了明确的编号(第一张图是我自己为了区分标的,模型上没有),最底层为第一层,最上层为第七层。
    2. 两个分层模型的映射关系

      • 第一层,物理层,TCP/IP 无对应
      • 第二层,数据链路层,对应 TCP/IP 的链路层
      • 第三层,网络层,对应 TCP/IP 的网际层
      • 第四层,传输层,对应 TCP/IP 的传输层
      • 第五、六、七层,统一对应到 TCP/IP 的应用层
    3. 四层负载均衡指什么?

      • 指工作在应用层上,基于 TCP/IP 协议的特性,例如 IP 地址,端口号等实现对后端服务器的负载均衡。
    4. 七层负载均衡指什么?

      • 指工作在应用层上,看到的是 HTTP 协议,解析HTTP 报文里的 URI、主机名、资源类型等数据,再用适当的策略转发给后端服务器。

    3 TCP/IP 协议栈的工作方式

    逐层打包再拆包,实现数据传输,但是细节不可见
    image

  • 相关阅读:
    IT资产管理系统SQL版
    反转单词(C#实现)
    删除数组中重复的元素(C#实现)
    最大子数组之和(C#实现)
    判断是否是三角形
    如何解决SSAS + SSRS + WSS3.0 之间的Windows 集成验证问题
    关于SharpDevelop
    规划一个SharePoint的解决方案
    Scalability Design
    合作意味着分享
  • 原文地址:https://www.cnblogs.com/hqq2019-10/p/14693329.html
Copyright © 2020-2023  润新知