通信协议是一套标准化的规则与约定,规定数据如何在网络中的设备或系统之间交换。它明确了数据格式、传输方式、错误检测与纠正流程,以及实现可靠通信所需的其他要素。这些协议确保设备之间能够互相理解、有效通信,从而让信息在网络上顺畅交换。

有哪些常见的通信协议?
最流行的网络通信协议包括:
- TCP/IP(传输控制协议/网际协议):互联网通信的基础协议套件,负责数据传输与路由。例如用于网页浏览的 HTTP、用于电子邮件的 SMTP。
- HTTP(超文本传输协议):用于在互联网上传输网页及相关文件,规范 Web 客户端与服务器之间的请求-响应周期。如今看来有些老旧过时,但仍是许多现代协议的骨干。
- HTTP/3(超文本传输协议第 3 版):超文本传输协议(HTTP)的最新版本,而 HTTP 是万维网上数据通信的基础协议。相较此前的 HTTP/1.1 和 HTTP/2,它是一次重大演进。
- HTTPS(安全超文本传输协议):HTTP 的安全版本,在传输过程中对数据加密,常用于 Web 上的安全数据与交易,例如网上银行和电子商务。现代 Web 的标准协议。
- SSL/TLS(安全套接层/传输层安全):一种加密协议,为互联网通信提供安全保障。通常用于加密客户端(如 Web 浏览器)与服务器之间的敏感数据传输,例如登录凭证、信用卡信息及其他个人信息。PubNub 支持 TLS 1.2+。
- UDP(用户数据报协议):一种运行在 IP 协议套件传输层的网络协议。它旨在提供一种轻量、低开销的方式,在网络中发送数据报(即数据块)。
- ICMP(网际控制报文协议):一种对网络资产盘点管理至关重要的网络层协议,主要用于 IP 网络中的错误消息和运行信息。它通过发送关于目的地不可达、网络拥塞或丢包等问题的消息,帮助诊断网络故障。ICMP 常见于 “ping" 和 “traceroute" 这类工具中,用于测试连通性、测量响应时间。与 TCP 或 UDP 不同,ICMP 不用于数据传输,而是通过向源端通报潜在网络问题来支撑网络健康。
- QUIC(快速 UDP 互联网连接):由 Google 开发的一种传输层网络协议。它旨在通过降低时延、提供更好的拥塞控制,提升面向连接的 Web 应用性能。
- FTP(文件传输协议):便于在网络中的客户端与服务器之间传输文件。它允许用户远程上传、下载和管理文件。
- SMTP(简单邮件传输协议):用于在服务器之间发送电子邮件。它定义了邮件消息如何在互联网上传输和投递。
- SNMP(简单网络管理协议):广泛用于监控和管理路由器、交换机、服务器、打印机等网络设备。SNMP 使网络管理员能够采集 Web 设备信息,并监控其性能、配置和健康状况。
- XMPP(可扩展消息与在线状态协议):一种用于即时消息(IM)、在线状态信息和实时应用的开源协议。XMPP 属于 Jabber 技术及 XMPP.org 家族。
- POP3(邮局协议第 3 版):用于从服务器上收取电子邮件。它允许用户把邮件下载到本地设备以便离线访问。
- IMAP(互联网消息访问协议):与 POP3 类似,IMAP 用于访问和管理存储在服务器上的邮件消息。它让用户能够跨多台设备整理、搜索和同步邮件。
- DNS(域名系统):把域名转换为 IP 地址,让用户可以用人类可读的地址访问网站。DNS 是浏览互联网的基础。
- MCP(消息控制协议):一种轻量、双向的协议,用于分布式系统中的实时命令与数据交换。适用场景:IoT 遥测、微服务编排、多人游戏后端。由 PubNub API 文档支持。
关键特性:TLS 加密;传输无关(TCP、WebSockets 等);头部 + 载荷格式(元数据 + 二进制/文本);ACK/NACK 流控以实现可靠投递;支持心跳以保持连接存活、拥塞感知重试、会话恢复。 - SSH(安全外壳):一种用于通过网络安全远程访问计算机或服务器的协议。它为安全的命令行操作、文件传输和隧道服务提供加密通信通道。
- 蓝牙:一种用于电子设备之间短距离数据交换的无线通信协议。蓝牙让智能手机、笔记本电脑、IoT 设备等能够互相连接与通信,用于文件共享、音频串流、设备控制等任务。
- NTP(网络时间协议):一种网络协议,用于把网络中计算机的时钟同步到一个精确时间源。
- WebTransport:一种协议框架,专为 Web 上低时延、双向通信而设计。
- SysLog:一种较老的 Web 标准,用于在计算机网络中记录系统消息。它使网络设备、操作系统和应用能够生成关于自身活动、错误和状态的消息,并发送到集中式日志服务器或采集器。
- PPTP(点对点隧道协议):一种实现虚拟专用网络(VPN)的方法,由微软联合其他技术公司开发。PPTP 可在远程用户与私有网络之间(通常经由互联网)建立安全加密的连接(隧道)。
- IPsec(网际协议安全):一套为 IP 通信提供安全性的标准。它通过加密 IP 数据包,确保参与对等方(如主机、路由器、网关)之间的数据机密性、完整性和真实性。IPsec 可用于保护 VPN、站点到站点连接,甚至客户端与服务器之间的通信。
- UART(通用异步收发器):一种用于设备之间的串行通信协议。与依赖时钟信号的同步方式不同,UART 使用预定义的波特率来同步通信。数据一次传输一位,以起始位开始,随后是数据位(每个字符通常 7 或 8 位)、可选的奇偶校验位(用于查错),以及停止位。两台设备必须使用相同的波特率才能准确传输数据。
- RCS(富通信服务):一种高级消息协议,通过引入富媒体、已读回执、输入状态提示和端到端加密(部分实现中)来增强传统 SMS/MMS 功能。它是作为 GSMA 通用配置文件(Universal Profile)的一部分开发的。
- I2C(集成电路总线):一种同步串行通信标准,用于把外设连接到微控制器或片上系统。它允许多个设备在单条总线上通信,使用两根线:数据线(SDA,串行数据线)和时钟线(SCL,串行时钟线)。总线上的设备各自有独立地址,支持主从和多主配置。I2C 支持的通信速率从每秒几百比特(标准模式)到每秒几兆比特(高速模式)不等,不同速率的设备可通过时钟拉伸(clock stretching)轻松共存。
- H.323:国际电信联盟(ITU)制定的一套标准,用于分组交换网络(如互联网)上的多媒体通信。它涵盖音频、视频和数据会议的标准,使不同厂商的设备之间能够互操作。H.323 包含终端、网关、网守和多点控制单元(MCU)等组件,以支持 VoIP 和视频会议等服务。
- HLS(HTTP 实时流):由 Apple 开发,用于在互联网上串流音频和视频。它把流切成小的、基于 HTTP 的文件分片,并用播放列表文件(M3U8)指引播放器找到这些分片。HLS 支持自适应码率串流,根据网络状况调整流质量以保证播放流畅。凭借其可靠性和跨各类设备与平台(如 Netflix 和 Instagram)的兼容性,HLS 被广泛使用。
- WebRTC(Web 实时通信):一种开源协议,可直接在 Web 浏览器和移动应用中实现实时通信能力。它提供 API,让开发者能够构建具备实时音频、视频和数据串流能力的应用。Google Meet、Microsoft Teams 和 Zoom 都在使用。
- CoAP(受限应用协议):一种专门的 Web 传输标准,面向受限节点和网络设计,例如 IoT 环境中的那些。它运行在 UDP 之上,支持 GET、POST、PUT、DELETE 等方法。CoAP 针对低功耗、低内存设备做了优化,通过可靠性机制和简洁的 RESTful 交互实现高效的机器对机器通信。
- SDP(会话描述协议):用于描述多媒体通信会话。在 WebRTC 中,SDP 在对等方之间交换媒体能力信息(编解码器、格式、网络信息)的协商信令过程中使用。
- STUN(NAT 会话穿透实用工具):一种网络协议,用于帮助位于网络地址转换器(NAT)和防火墙之后的设备之间进行通信。NAT 常用于家庭和办公网络,让多台设备共享一个公网 IP。但 NAT 往往会遮蔽内部 IP 地址,从而使设备之间的直接通信变得复杂。
- DTLS(数据报传输层安全):一种为基于数据报的应用(例如使用 UDP 的应用)提供安全性的协议。DTLS 基于传输层安全(TLS)协议,而 TLS 用于保护 TCP 这类面向连接协议上的通信。
- RTP(实时传输协议):一种用于在 IP 网络(如互联网)上投递音频和视频的网络协议。RTP 旨在为实时数据提供端到端投递服务,这对视频会议、VoIP 和直播等应用至关重要。
- [已过时] RTMP(实时消息传输协议):一种专有的、基于 TCP 的协议,用于向支持 Flash 的设备串流直播视频、音频和数据。最初由 Macromedia 开发,后被 Adobe 收购。由于 Flash 的衰落以及基于 HTTP 的 HLS、DASH 等新一代串流协议的兴起,RTMP 被认为已经过时。
这些协议在现代通信的各个层面都扮演着关键角色,从网页浏览、电子邮件往来到文件传输和设备互联。
通信协议的分类
通信协议可以依据多种标准来分类,比如其应用层、所提供服务的类型,或它们在 OSI(开放系统互连)模型中的运行层级。
按应用层分类
邮件协议
- SMTP(简单邮件传输协议):用于发送邮件。
- IMAP(互联网消息访问协议):用于收取邮件。
- POP3(邮局协议第 3 版):用于收取邮件。
Web 协议
- HTTP(超文本传输协议):用于访问网页。
- HTTPS(安全超文本传输协议):HTTP 的安全版本。
- ICMP(网际控制报文协议):用于错误消息和运行状态更新。
- WebTransport
文件传输协议
- FTP(文件传输协议)与 SFTP(安全文件传输协议):用于传输文件。
- TFTP(简单文件传输协议):FTP 的简化版本。
远程访问协议
- SSH(安全外壳):安全的远程登录方式。
- Telnet:不安全的远程登录方式。
流媒体协议
- HLS(HTTP 实时流):Apple 的自适应码率串流协议。
- DASH(基于 HTTP 的动态自适应串流):自适应串流的国际标准。
- RTMP(实时消息传输协议):用于直播。
- RTSP(实时流协议):用于建立和控制媒体会话。
- WebRTC(Web 实时通信):实现音视频点对点通信的有效方案。
- SRT(安全可靠传输):针对不可预测网络优化的串流方案。
按传输层分类
TCP/IP 套件
- TCP(传输控制协议):面向连接的协议。
- UDP(用户数据报协议):无连接协议。
- IP(网际协议):负责寻址与路由。
面向连接的协议
- TCP:确保数据可靠、有序地投递。
- SCTP(流控制传输协议):支持多宿主与多流。
无连接协议
- UDP:提供低时延、可容忍丢包的连接。
按网络层分类
IP 协议
- IPv4(网际协议第 4 版):IP 的第四个版本。
- IPv6(网际协议第 6 版):IPv4 的后继者,拥有更大的地址空间。
路由协议
- BGP(边界网关协议):管理数据包在互联网上的路由方式。
- OSPF(开放最短路径优先):用于较大型自治系统内部的路由。
- RIP(路由信息协议):面向小型网络的简化路由。
按数据链路层分类
以太网协议
- Ethernet(以太网):有线局域网的标准。
- Wi-Fi(无线保真):一种无线电波技术,让设备在局域网(LAN)内无线接入互联网。
点对点协议
- PPP(点对点协议):用于两个网络节点之间的直接通信。
- HDLC(高级数据链路控制):一种面向比特、代码透明的同步数据链路层协议。
按表示层和会话层分类
会话协议
- NetBIOS(网络基本输入/输出系统):提供与 OSI 模型会话层相关的服务。
- PPTP(点对点隧道协议):用于实现虚拟专用网络。
表示协议
- TLS(传输层安全):提供安全通信。
- SSL(安全套接层):TLS 的前身,用于安全通信。
专用协议
VoIP 协议
- SIP(会话发起协议):发起、维持和终止实时会话。
- H.323:用于语音、视频和数据会议的一套协议。
IoT 协议
- MQTT(消息队列遥测传输):面向小型传感器和移动设备的轻量协议。
- CoAP(受限应用协议):专为资源受限的 IoT 设备控制而设计。
常见问题
什么是通信协议?
通信协议是一套标准化的规则与约定,用于在网络中的设备或系统之间交换数据。它定义了数据格式和传输方式,以确保通信有效。
有哪些常见的通信协议?
常见通信协议包括用于互联网通信的 TCP/IP、用于网页的 HTTP、用于安全数据传输的 HTTPS,以及用于文件传输的 FTP。每种协议在网络通信中都承担特定用途。
HTTP 与 HTTPS 有何区别?
HTTP 用于在互联网上传输网页,而 HTTPS 是它的安全版本,会在传输过程中对数据加密。HTTPS 对于在线保护敏感信息至关重要。
TCP/IP 在网络通信中扮演什么角色?
TCP/IP 是互联网通信的基础协议套件,负责数据传输。它确保数据在网络中可靠、有序地投递,构成互联网连接的骨干。
通信协议如何分类?
通信协议可以按应用层、传输层、网络层和数据链路层来分类。每种分类对应网络通信的不同方面,例如邮件、文件传输和串流。
为什么 DNS 在通信协议中很重要?
DNS 把域名转换为 IP 地址,让用户可以用人类可读的地址访问网站。它对于高效浏览互联网、把用户连接到正确的 Web 资源至关重要。




