TCP/IP 协议族
-
分层管理:
应用层:决定向用户提供应用服务时通信的活动,HTTP协议、FTP协议和DNS协议都位于应用层。
传输层:传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输
网络层:用来处理在网络上流动的数据包
数据链路层:用来处理连接网络的硬件部分 -
通信传输流
发送端从应用层往下走,接收端从链路层往上走。
举例:
首先用户在使用客户端时在应用层发送一个请求想要看某个页面或需要某个数据;接着传输层(TCP协议)把从应用层收到的HTTP请求报文进行分割,并在分割的各个报文打上标记序号和端口号转发给网络层;在网络层(IP协议)增加作为通信目的地的MAC地址(使用ARP协议根据通信方的ip地址反查出对应的MAC地址)后转发给链路层。
接收端在链路层接收到数据后,按序往上层发送,一直到应用层才算真正接收到发送端的请求。
在发送端,每经过一层则会打上一层该层所属的首部信息
在接收端,每经过一层则会消除一层对应的首部信息 -
IP协议
IP协议的作用是把各种数据包传送给接收端。
想要保证确实的传送给接收端,需要两个重要的地址:IP地址和MAC地址
IP间的通信依赖MAC地址
通过ARP协议根据IP地址反查出对应的MAC地址 -
TCP协议
TCP位于传输层,为了方便传输会将大块数据进行分割,并且能够确认数据最终是否送达到对方。
三次握手
第一次握手:发送端首先发送一个带有SYN标志的数据包给接收端
第二次握手:接收端收到后,会向发送端发送带有SYN/ACK标志的数据包
第三次握手:发送端收到后,传回一个带有ACK标志的数据包,握手结束
若握手过程中某个阶段莫名中断,TCP协议会再以相同顺序发送相同的数据包
DNS负责域名解析
它提供域名到IP地址之间的解析服务,也提供从IP地址逆向查询域名的服务。