POSIX (Portable Operating System Interface) 是一个面向操作系统的标准接口,它定义了一套通用的 API 规范,使得应用程序可以在不同的操作系统上运行而无需进行大量的修改。在 POSIX 标准中,也定义了一系列网络编程相关的 API 接口,下面是常用的一些 POSIX 网络 API:
socket():创建一个新的套接字并返回其文件描述符。
bind():将套接字绑定到指定地址和端口号上。
listen():将套接字设置为监听状态,等待连接请求。
accept():等待客户端连接请求,并返回一个新的套接字文件描述符以供后续通信使用。
connect():与远程主机建立连接。
send()/recv():发送/接收数据。
close():关闭套接字连接。
select()/poll(): 多路复用IO模型,通过非阻塞方式同时监控多个socket的状态变化(是否有数据可读或者可写)。
setsockopt()/getsockopt(): 设置和获取socket选项,如重复利用端口、超时时间等参数配置
这些函数构成了一个完整的网络编程框架。使用这些函数可以实现基本的 TCP/IP 网络通信功能。同时,在 POSIX 中还提供了许多其他类型的网络 API 接口,例如 DNS 解析、Unix 域套接字等。