基础tcp/ip网络模型有几层
1.0为什么要有 TCP/IP 网络模型
同一台设备上的进程间通信,多种方式,管道、消息队列、共享内存、信号等方式而。
不同设备上的进程间通信,就需要网络通信,而设备是多样性的,所以要兼容多种多样的设备,就协商出了一套通用的网络协议。
网络协议是分层的,每一层都有各自的作用和职责。
1.1应用层
最上层的,我们能直接接触到的就是应用层(Application Layer),我们电脑或手机使用的应用软件都是在应用层实现。应用层只需要专注于为用户提供应用功能,比如 HTTP、FTP、Telnet、DNS、SMTP等。不管数据怎么传输,就跟寄快递拿给快递员一样。
1.2 传输层
1.应用层的数据包会传给传输层,传输层(Transport Layer)是为应用层提供网络支持的。
2.两个传输协议,分别是 TCP(传输控制协议(Transmission Control Protocol)) 和 UDP。大部分应用使用的正是 TCP 传输层协议,比如 HTTP 应用层协议。
3.应用需要传输的数据可能会非常大,传输层的数据包大小超过 MSS(TCP 最大报文段长度) ,就要将数据包分块,这样即使中途有一个分块丢失或损坏了,只需要重新发送这一个分块,而不用重新发送整个数据包。在 TCP 协议中,我们把每个分块称为一个 TCP 段(TCP Segment)。
网络接口层的传输单位是帧(frame),IP 层的传输单位是包(packet),TCP 层的传输单位是段(segment),HTTP 的传输单位则是消息或报文(message)。但这些名词并没有什么本质的区分,可以统称为数据包。