tcp/ip协议包含哪几层经常是面试常考点,下面我就来详解4大tcp/ip协议层@mikechen
tcp/ip协议主要包含四层:分布式应用层、传输层、网络层、网络接口层。
如下图所示:
1:应用层
应用层是TCP/IP协议的第一层,是直接为应用进程提供服务的。
应用层不关心数据是如何传输的,就和我们寄快递的时候只需要把包裹交给快递员,我们不关心包裹是如何运输的。
应用层包含了各种应用协议,例如HTTP、FTP、SMTP、DNS等。
最接近用户的一层,包括各种应用程序和服务,用户通过应用程序与网络交互。
2.传输层
传输层负责端到端的通信,确保数据的可靠性和有序性。
传输层是为应用层提供网络支持的,在传输层有两个传输协议,分别是TCP和UDP。
TCP(Transmission Control Protocol):
- 可靠性: TCP提供可靠的数据传输,确保数据在发送和接收之间不会丢失、重复或失序。
- 面向连接: TCP是一种面向连接的协议,通信前需要建立连接,这个连接的建立和断开过程涉及到三次握手和四次挥手。
- 有序性: TCP保证数据包按照发送的顺序到达接收端,因此接收端会按照正确的顺序重组数据。
- 流控制和拥塞控制: TCP具有流控制和拥塞控制机制,可以根据接收端的处理能力和网络状况来控制发送数据的速率,以防止网络拥塞。
- 适用场景: TCP适用于对数据可靠性要求较高的应用,如文件传输、电子邮件、Web浏览等。
UDP(User Datagram Protocol):
- 不可靠性: UDP提供不可靠的数据传输,不保证数据的可靠性和有序性,数据包可以在传输过程中丢失、重复或失序。
- 无连接性: UDP是一种无连接的协议,不需要建立连接和断开连接的过程,通信双方只需要知道对方的IP地址和端口号即可开始通信。
- 低延迟: 由于不需要建立连接和进行复杂的错误处理,UDP具有较低的通信延迟,适用于实时性要求较高的应用。
- 适用场景: UDP适用于需要快速传输数据、对延迟要求较高的应用,如音频和视频流传输、在线游戏、DNS查询等。
3.网络层
网络层在TCP/IP协议中的位于第三层,负责将数据从一个设备发送到另一个设备。
网络层最常用的是IP协议(Internet Protocol),IP协议会将传输层的报文作为数据部分,再加上IP数据包组装成IP报文。
我们以经典的 IP 协议为例。
- 规定网络地址的协议叫ip协议,它定义的地址称之为ip地址,它规定网络地址由32位2进制表示。
- 范围0.0.0.0-255.255.255.255
- 一个ip地址通常写成四段十进制数,例:172.16.10.1
IP地址分类:
IP地址根据网络ID的不同分为5种类型,A类地址、B类地址、C类地址、D类地址和E类地址。
- A类IP地址 地址范围从1.0.0.0 到126.0.0.0
- B类IP地址 地址范围从128.0.0.0到191.255.255.255
- C类IP地址 范围从192.0.0.0到223.255.255.255
- D类地址用于多点广播(Multicast)
4.网络接口层
网络接口层,也称为链路层或物理层。
网络接口层负责处理与物理介质,例如:以太网、Wi-Fi、光纤等的通信。
将数据帧从一台计算机传输到另一台计算机,通常使用MAC地址来标识设备。
这四个层级构成了TCP/IP协议栈,每个层级都有不同的功能和责任。