后端工程师,老师教的七层网络模型你用在了哪里?(一)

1. 简单的请求处理过程

用一幅图简单描述一下用户发送请求、服务器接收并处理请求直至返回最终结果的过程。

后端工程师,老师教的七层网络模型你用在了哪里?(一)当客户端向Web服务器发送一个请求后,服务器收到HTTP请求,如果是静态网站,则会直接返回对应的请求文件。


如果是动态语言的网站,HTTP服务器会将请求经过处理后转给对应的动态语言程序处理,例如Java、C#、Go、PHP和Python等,这些程序根据用户发过来的请求,进行处理后返回结果给HTTP服务器,HTTP服务器再讲结果处理并返回给用户。


这里用到的就是我们熟悉的HTTP协议,再看下OSI七层模型。


2. 回顾一下OSI七层模型

开放式系统互联通信参考模型,即Open System Interconnection Reference Model,缩写为 OSI, 是一种概念模型,由国际标准化组织提出,一个试图使各种计算机在世界范围内互连为网络的标准框架。

后端工程师,老师教的七层网络模型你用在了哪里?(一)

**注意:**常见的光纤、同轴电缆、双绞线、Rj45接口等传输介质也被称为传输媒体。**但传输媒体并不是在物理层,**而是在物理层的下一层,因为物理层是模型的第一层,所以也称传输媒体为第0层。在传输媒体中传输的是信号,但传输媒体并不知道所传输的信号代表的是什么意思。物理层则因为规定了电气特性,因此能够识别所传输的比特流,这是考试经常出现的问题之一。

下图所示为数据DATA从发送端到达接收端的中间处理过程:

后端工程师,老师教的七层网络模型你用在了哪里?(一)

当发送端需要发送数据(DATA)该接收端时,发送端大概流程:


用户操作应用层的应用,产生的发送数据通过应用层的接口进入应用层。

从应用层开始,逐级对DATA进行包装,加上对应层的报头,例如图中的AH、PH、SH、TH、NH等。

表示层并不“关心”应用层的数据格式,而是把整个应用层递交的数据报看成是一个整体进行封装,即加上表示层的报头(PH),然后递交到会话层。

数据链路层除了要添加报头DH外,还会添加一个报尾DT还, 最终的一帧数据。

接收端:


接收端相当于是对发送过程的逆向,逐级抽丝剥茧,去掉各种报头报尾,最终回到接收端的应用层。

应用层对接收到的报文进行处理。

感觉HTTP协议和这个七层模型都是用于网络传输,那么二者有什么关系呢?这就必须要说一下TCP/IP协议。


上一篇:sqlserver2012 安装教程及使用方法


下一篇:mysql datetime与timestamp区别