《图解HTTP》之TCP/IP的分层管理

Web使用一种名为HTTP(HyperText Transfer Protocol )超文本传输协议(超文本转移协议)作为规范,完成客户端到服务端等一系列操作;

有必要了解一下TCP/IP协议族:应用层、传输层、网络层和数据链路层。

应用层:FTP(File Transfer Protocol,文件传输协议)和DNS(Domain Name System,域名系统)服务就是其中两类。HTTP协议也处于该层。

传输层:传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输。在传输层有两个不同性质的协议:TCP(Transmission Control Protocol,传输控制协议)和UDP(User Data Protocol,用户数据报协议)

网络层(又名网络互联层):网络层用来处理网络上流动的数据包。数据包是网络传输的最小数据单位。该层规定了 通过怎样的路径(所谓的传输路线)到达对方计算机,并把数据包传输给对方。与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项中选择一条传输路线。

链路层(又名数据链路层,网络接口层):用来处理连接网络的硬件部分。包括控制操作系统、硬件的设备驱动、NIC(Network Interface Card,网络适配器,即网卡),即光纤等物理可见部分(还包括连接器的一切传输媒介)。硬件上的范畴均在链路层的作用范围之内。

利用TCP/IP协议族进行网络通信时

image.png

例如,首先作为发送端的客户端在应用层(Http协议)发送一个想看某个Web页面的Http请求。
接着,为了传输方便,在传输层(TCP协议)把从应用层收到的数据(HTTP请求报文)进行分割,并在各个报文上打上标记序号及端口号后转发给网络层。
在网络层(IP协议),增加作为通信目的地的MAC地址后转发给链路层。这样一来,发往网络的通信请求就准备齐全了。
接收端的服务器在链路层接收到数据,按序往上层发送。

image.png

你可能感兴趣的:(《图解HTTP》之TCP/IP的分层管理)