面试中问到了ping命令,ping命令位于那一层?我说应用层。面试官持怀疑态度。
Ping基于ICMP协议实现,位于网络层。
分层协议
TCP\IP协议栈中,应用层协议有:
- Telnet
- FTP
- SMTP
- HTTP
- HTTPS
传输层协议主要有:
- UDP
- TCP
网络层(IP层)协议主要有:
- IP协议
- ICMP协议 **ping command**
- IGMP协议
数据链路层(以太网层)主要协议有:
- ARP协议
- RARP协议
MSS
Maximum Segment Size,就是TCP提交给IP层的最大分段大小,不包含TCP Header、TCP Option,只包含TCP Payload(有效载荷)。MSS限制了应用层最大发送字节数。如果底层物理单元接口 MTU=1500Byte,则MSS = 1500 - 20(IP Header)-20(TCP Header)= 1460 Byte。
如果应用层需要发送2000 Byte数据,那么需要两个Segment才可以完成发送。
第一个Segment=1460 Byte
第二个Segment=540 Byte
MTU
Maximum Transmit Unit,物理接口(数据链路层、以太网层)提供给其上层(通常是网络层),一次性最大传输数据的大小。已普遍使用的以太网为例,缺省MTU=1500Byte,这是以太网对于IP层的限制。
如果IP层有<=1500 byte 需要发送,只需要一个IP包就可以完成发送任务
如果IP层有> 1500 byte 数据需要发送,需要分片才能完成发送
这些分片有一个共同点,即IP Header ID相同
RTT
Round-Trip Time:往返时延。是指数据从客户端到服务器往返所花的时间。这个里现实生活比较近。
客户端到服务器,从服务器再回到客户端
参考:
TCP/IP协议族分层详解