套接字是一种在计算机上运行的程序之间或在不同计算机上运行的程序之间启用进程间通信的方法。通过网络套接字进行通信的程序通常依赖于使用 Internet 协议 (IP) 来发送和接收数据。
有许多不同类型的套接字。最常见的是:
-
流套接字:它使用传输控制协议 (TCP) 来封装和确保数据流的可靠传递。
-
数据报套接字:使用用户数据报协议 (UDP) 传输数据报,无需在系统之间建立持久连接。
-
Unix 域套接字:它使用本地文件来发送和接收数据,而不是网络接口和 IP 数据包。
-
原始套接字:允许应用程序创建和修改数据包,而不是依赖主机操作系统。
系统上每个基于 IP 的套接字都是唯一的,并由IP 地址、套接字使用的协议(TCP 或 UDP)和数字端口号的组合标识,端口号映射到使用操作系统的套接字。Unix 域套接字使用与套接字关联的本地文件来唯一标识它。
要了解有关套接字的更多信息,以及如何检查和排除它们,请阅读我们的 理解套接字教程。
有关如何在 Linux 系统上实现和使用套接字的深入说明,请访问socket(7) 手册页以及那里的相关手册页。