8

HTTP01

http的番外篇

HTTP协议是属于TCP/IP协议族中的一支,那么先得说下TCP/IP协议。

TCP/IP协议是网络双方需要通信的一个基础,这一协议族主要包含四个 层面:应用层,传输层,网络层 ,数据链路层。应用层内的协议主要是为用户提供服务的,例如FTP,DNS服务,当然HTTP协议也属于这一层;传输层内的协议是提供给两台计算机之间通信的,主要有TCP协议和UDP协议,这一层主要定义了,怎样处理数据以便于传输;网络层内的协议主要是负责将,数据传输通过合适的路径出书给对方;数据链路层主要是负责硬件层面的连接,比如NIC等等。

以HTTP进行举例说明,当用户从客户端发出一个请求时,先通过HTTP协议发出一个HTTP请求,然后在传输层将这个请求数据进行打包分割,然后在网络层(IP协议)将目的地的MAC地址增加在其中,传输给链路层。接收端在接受到数据时,以此相反的方向向上传输。

IP协议

IP协议的作用是将各种数据传送给对方,要保证对方能接受到数据,需要特定的限制条件,比如限定IP地址,MAC地址。在多台计算机之间进行通信进行中转时,需要通过MAC地址来搜索下一个目标,此时需要通过ARP协议,用IP地址解析出对方的MAC地址。

TCP协议

TCP协议位于传输层,是为了更好的传输数据。为了保证能够准确的传输给对方,TCP协议采用 three-way handshaking 策略,在数据传输到达时发送 SYN 标志,然后返回一个SYN/ACK 标志,最后在传给对方一个ACK标志。

DNS协议

HTTP02