TCP/IP是互联网相关的各类协议族的总称。HTTP协议属于其中的一个协议。
TCP/TP的分层管理
TCP/IP协议族分为4层:
-
应用层
作用:决定了向用户提供应用服务时通信的活动
内容:预存了各类通用的应用服务:- FTP(File Transfer Protocal,文件传输协议)
- DNS(Domain Namin System,域名系统)
- HTTP(超文本传输协议)
-
传输层
作用:对上层应用层,提供处理网络连接中的两台计算机之间的数据传输
内容:包含两个性质不同的协议- TCP(Transmission Control Protocol,传输控制协议)
- UDP(User Data Protocol,用户数据报协议)
-
网络层(网络互联层)
作用:处理网络上流动的数据包。数据包是网络传输中最小的数据单位,该层规定了怎样选择一条传输路线来传递数据包。 -
数据链路层(数据链路层,网络接口层)
作用:处理链接网络的硬件部分。
内容:包括控制操作系统、硬件的设备驱动、NIC(Network Interface Card,网络适配器,及网卡)、光纤等物理可见部分。
TCP/TP通信传输流
分层传输数据
传输过程说明:
- 客户端在应用层(HTTP协议)发出了一个查看Web页面的HTTP请求
- 传输层(TCP协议)把应用层处收到的数据(HTTP请求报文)进行分割,在每个报文上打上标记序号和端口号,增加TCP首部,转发给网络层
- 网络层(IP协议)增加传输目的的MAC地址,增加IP首部,转发给链路层
- 数据链路层增加以太网首部,发送给服务器
- 服务器在链路层接收到数据,按序往上层发送,每经过一层去除上对应首部,到应用层,接收到客户端的HTTP请求。
在每一层包装数据信息的过程叫做封装。
IP协议
IP(Internet Protocol,网际协议)位于网络层,所有使用网络的系统都会用到网际协议
作用
把各种数据包传输给对方。
要保证传输正确,需要IP地址和MAC地址(Media Access Control Address)
IP地址:指明节点被分配的地址,可变换
MAC地址:网卡所属的固定地址,基本不会更改
使用ARP协议+MAC地址进行通信
网络传输中,通信的双方在同一局域网(LAN)的情况很少,通常是经过多台计算机和网络设备中转通信。
ARP协议(Address Resolution Protocol):用来解析地址的协议,根据通信方的IP地址可以反查其MAC地址。
TCP协议
TCP协议位于传输层,提供可靠的字节流服务,字节流服务(Byte Stream Service)就是将大块数据分割层以报文段(segment)为单位的数据包进行管理。TCP协议为了更容易传输大数据才分割数据,并且能够确认数据是否送达。
判断数据是否送达的三次握手(three-way handshaking)策略
握手过程使用了两个标志:
- SYN(synchronize)
- ACK(acknowledgement)
握手过程:
- 发送方发送一个带SYN标志的数据包
- 接收端回传一个带有SYN/ACK标志的数据包表示确认
- 发送端回传一个ACK标志的数据包,表示握手结束
DNS协议
DNS(Domain Name System)位于应用层,提供域名到IP地址的解析服务,DNS协议提供通过域名查找IP地址,或者你逆向反查服务。















网友评论