TCP
TCP是面向连接的传输控制协议,其主要特点如下:
- TCP是面向连接的运输层协议,应用程序在使用TCP之前必须先建立连接,数据传输之后必须释放连接。
- TCP提供可靠的交付服务,通过TCP连接传送的数据无差错、不丢失、不重复、并且按序到达。TCP的可靠传输是由应答确认,超时重传机制保证,通过滑动窗口进行流量控制。
- 每一条TCP连接只能有两个端点,也就是说TCP连接是一对一的。TCP连接的端点叫做套接字。
- TCP提供全双工通信,它允许通信双方的应用进程在任何时候都能发送数据。
- 面向字节流,TCP中的“流”指的是流入到进程或从进程流出的字节序列。
UDP
UDP是无连接的用户数据报协议,其主要特点如下:
- UDP是无连接的,发送数据之前不需要建立连接。
- UDP使用尽最大努力交付,不保证可靠交付。
- UDP是面向报文的,UDP对应用层交下来的报文,添加首部后直接就交付给网络层。
- UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送率降低。这对于某些实时应用是很重要的。
- UDP支持一对一、一对多、多对一和多对多的交互通信 UDP的首部开销小,只有8个字节。
TLS/SSL
传输层安全性协议(Transport Layer Security,缩写:TLS)及其前身安全套接层(Secure Sockets Layer,缩写:SSL)是一种安全协议,目的是为互联网通信提供安全及数据完整性保障。
TLS协议采用主从式架构模型,用于在两个应用程序间透过网络创建起安全的连线,防止在交换数据时受到窃听及篡改。
TLS协议的特点如下:
- TLS协议的优势是与高层的应用层协议(如HTTP、FTP、Telnet等)无耦合。应用层协议能透明地运行在TLS协议之上,由TLS协议进行创建加密信道需要的协商和认证。
- 应用层协议传送的数据在通过TLS协议时都会被加密,从而保证通信的私密性。
基于TCP/UDP协议的应用层协议
- 基于TCP的应用层协议有:HTTP、FTP、SMTP、TELNET、SSH。
- 基于UDP的应用层协议:DNS、DHCP、TFTP(简单文件传输协议)、SNMP(简单网络管理协议)。