真正“搞”懂HTTP协议02之空间穿梭( 二 )


然后就是第二层,也就是网络层 。IP协议就在这一层,到了这一层 , 我们就可以通过IP地址来识别目标主机,进行主机级别的目标识别了 。
继续,是第三层,也就是传输层 。最为大家所熟知的TCP和UDP就在这一层,负责建立传输通道 。
最后,就是我们的重中之重,第四层,也就是应用层,我们的HTTP就在这一层,由于前面几层的基础做的非常好,所以,在这一层除了HTTP协议负责传输超文本以外,还有超多的协议 , 比如我们稍微熟悉一点的HTTPS、DNS、POP、FTP等等等等,好多好多 , 我们暂时了解一下就可以了 。
OK , DoD我们就先这样 。继续,长路漫漫,唯贱作伴 。
七层网络模型(OSI模型)这个东西 , 有点孩子没娘说来话长,我尽量长话短说 。OSI模型是一种概念模型,也即开放式系统互联模型 。由国际标准化组织提出 , 一个试图使各种计算机在世界范围内互连为网络的标准框架 。定义于ISO/IEC 7498-1 。
为啥已经有了四层还有个七层呢?只有四层不行么?主要是因为当时除了TCP/IP协议以外,还有很多其它协议,整个互联网很混乱,有一种群雄逐鹿的感觉 。所以这个时候国际化标准组织就大吼一声,我是秦始皇,我要一统天下,你们都按照我的标准来 。
但是,理想是美好的,可惜我不是秦始皇,所以一统天下的局面并没有按照原本设想的那样 , 于是秦始皇又不得不说,该模型仅供参考 。
至于为什么一统天下的局面没有出现 , 导致我们现在还要多学一个模型,嗯~其实是因为设备僵化 。啥意思呢,就是实际中已经很多网络都按照DoD来用了,而且用的很好,不可能换成你的,代价太大 。
那这OSI模型有啥意义呢?又没一统天下 , 实际上也没咋用,那说它干啥 。其实它有一个很重要的意义,对!就是参考 。OSI模型补足了DoD模型只有纯软件以外的部分,并且形成了规范和标准,并且准确的规定了各层可以使用数字来编号 。
故事说完了 , 我们来看看OSI这七层都是哪七层吧,虽然仅供参考,我们也得知道知道 。

真正“搞”懂HTTP协议02之空间穿梭

文章插图
我们看图说话噢,上面花里胡哨的那三层就是多出来的三层,第一层是物理层,第五层是会话层,第六层是表示层 。嗯 , 解释解释 。
物理层也就是我们互连网络传输中所使用到的各种物理设备,比如集线器,中继器,网卡啥的这些 。
会话层呢 , 负责在数据传输中设置和维护计算机网络中两台计算机之间的通信连接 。说人话就是会话层负责在维护网络中的连接状态,也就是保持会话和同步 。比如视频的图片和声音的同步 。
表示层则会把数据转换成双方都可以理解的可以兼容的格式 。
DoD模型和OSI模型的对比,则是这样的:
真正“搞”懂HTTP协议02之空间穿梭

文章插图
很好理解,我就不多说了 。
二、空间穿梭现在,我们大致了解了互联网络模型是什么样的,接下来 , 我们来实际的看一看,一个数据包到底是如何在这些模型中穿梭的 。
一种思路是从最底层也就是物理层说起,层层向上递进,这是从最小化网络的场景来聊互联网络协议 。另外一种方式就是从应用层,层层向下,这种角度就是以最小数据包的场景 , 我们下面就采用这种视角来窥一窥一个数据包在网络中的流转 。
第五层/应用层:不只是超文本传输协议应用层是离我们最近的一层,这一层往往由安装在系统上的应用程序来处理,这一层的协议有好多好多 , 也是在整个互联网模型中所拥有最多协议的一层 。
应用层协议包括我们所熟悉的HTTP、HTTPS、HTTP2、QUIC等,以及DNS、HTTPDNS、SSH,还有还有比如:
  1. FTP(文件传输协议:是一个用于在计算机网络上在客户端和服务器之间进行文件传输的应用层协议)
  2. NFS(分布式文件系统:力求客户端主机可以访问服务器端文件)
  3. DHCP(动态主机设置协议:主要用于内部网或网络服务供应商自动分配IP地址给用户或者集中管理)
  4. RPC(远程过程调用:该协议允许运行于一台计算机的程序调用另一个地址空间--通常为一个开放网络的一台计算机)的子程序)
  5. XMPP(可扩展消息与存在协议:是一种以XML为基础的开放式即时通信协议)
  6. SNTP(简单网络时间协议:主要用来同步因特网中的计算机时钟)

    推荐阅读