TCP/IP模型
TCP/IP模型是互联网的基础,它是一系列网络协议的总称。这些协议可以划分为四层,分别为链路层、网络层、传输层和应用层。
- 链路层:负责封装和解封装IP报文,发送和接受ARP/RARP报文等。
- 网络层:负责路由以及把分组报文发送给目标网络或主机。
- 传输层:负责对报文进行分组和重组,并以TCP或UDP协议格式封装报文。
- 应用层:负责向用户提供应用程序,比如HTTP、FTP、Telnet、DNS、SMTP等。
UDP
- 面向无连接
- 有单播,多播,广播的功能
- UDP是面向报文的
- 无拥塞控制,不可靠性。
- 首部开销小,传输数据报文时是很高效的。
UDP首部只有8个字节,比TCP的20个字节首部要短。
2字节源端口 2字节目标端口 2字节长度(用户数据报长度) 2字节检验和
在计算检验和时,要在UDP用户数据包之间增加12个字节的伪首部,只是在计算检验和时,临时添加在UDP用户数据报前面,得到一个临时得UDP用户数据报。IP数据报得检验和只检验IP数据报得首部,UDP得检验和是把首部和数据一起都检验。
TCP
- 面向连接的
- 每一条TCP连接都只能两个端点,即点对点:连接端点叫做套接字或者插口=(ip地址:端口号)
- 面向字节流
- TCP提供可靠的
- 提供全双工通信
拓展:http基于tcp/ip dns基于udp