图解HTTP(一)

2017-08-16  本文已影响10人  投降又不会赢

图解HTTP第一章

TCP/IP的分层管理

TCP/IP协议族按照层次分别分为以下四层

应用层决定了向用户提供应用服务时通信的活动,TCP/IP协议族内预存了各类通用的应用服务,比如FTP(文件传输协议) DNS(域名系统)服务 就是其中两类。 HTTP协议也处于该层。

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

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

用来处理连接网络的硬件部分。包括控制操作系统、硬件的设备驱动、NIC(网络适配器,即网卡)、及光纤等物理可见部分。硬件上的范畴均在链路层的作用范围内。

HTTP发送请求的流程

客户端再应用层发出一个想看某个Web界面的HTTP请求。

接着,为了传输方便,在传输层(TCP协议)把从应用层出收到的数据(HTTP请求报文)进行分割,并在各个报文上打上标记序号及端口号后转发给网络层。

网络层(IP协议),增加作为通信目的地的MAC地址后转发给链路层。这样一来,发往网络的通信请求就准备齐全了。

接收端的服务器在链路层接收到数据之后,按序往上层发送,一直到应用层,当传输到应用层,才能算真正的接收到由客户端发送过来的HTTP请求。

发送端在层与层之间传输数据的时候,每经过一层,必定会被打上一个该层所属的首部信息。反之接收层在层与层传输数据时,每经过一层时会把对应的首部消去。

这种把数据信息包装起来的做法称为封装(encapsulate)

1.4 IP TCP DNS

IP是一种协议
IP协议的作用是把各种数据包传送给对方。
但是要确保准确的传送给对方,需要很多种条件,其中最重要的是IP地址MAC地址。
IP地址指明了节点被分配到的地址。
MAC地址 指的是网络所属的固定地址。

我的理解: 通过IP确定在某个范围,通过MAC地址确定哪台电脑

IP间的通讯一般需要多个中转站才能进行通讯。
在进行中转时,会利用下一站中转设备的MAC地址来搜索出下一个中转目标。这时会采用ARP协议
ARP(地址解析协议)是一种用以解析地址的协议。根据通信方的IP地址就可以反查出对应的MAC地址

在到达通信目标前的中转过程中,那些计算机和路由器等网络设备只能获悉很粗略的传输路线。这种机制成为路由选择。
跟快递分发机制有些类似,送到某个区域的集散中心,在由集散中心分配到合适的集散中心知道到达发送目的地。

路由选择

1.4.2 确保可靠性的TCP

TCP协议 为了更容易传送大数据会把数据分割以报文为单位的数据包,而且TCP协议能够确认数据最终是否送达到对方。

发送端首先发送一个带SYN标志的数据包给对方,接收端接受到之后回传一个带有SYN/ACK标志的数据包以示传达确认信息,最后发送端再回传一个ACK标志的数据包,代表握手成功。
若在握手过程中失败,TCP协议会再次以相同的顺序发送相同的数据包。

三次握手

1.5负责域名解析的DNS服务

DNS协议 是通过域名查找IP地址,通过IP地址反查域名服务

DNS解析

1.6 HTTP DNS TCP IP的交互流程

HTTP TCP IP交互流程
上一篇下一篇

猜你喜欢

热点阅读