ZHCAB52 April 2021 TM4C1292NCPDT , TM4C1292NCZAD , TM4C1294KCPDT , TM4C1294NCPDT , TM4C1294NCZAD , TM4C1299KCZAD , TM4C1299NCZAD , TM4C129DNCPDT , TM4C129DNCZAD , TM4C129EKCPDT , TM4C129ENCPDT , TM4C129ENCZAD , TM4C129LNCZAD , TM4C129XKCZAD , TM4C129XNCZAD
表 1-1 列出了典型的 BSD 套接字 API。图 1-3 显示使用 BSD 套接字 API 的 TCP 客户端-服务器通信的简化流程图。图 1-4 显示了 UDP 通信的 API 使用情况。
功能类别 | API | 说明 |
---|---|---|
套接字连接 | socket | 创建某个类型的新套接字,由整数标识,并为其分配系统资源。 |
bind | 通常用于服务器端,将套接字与套接字地址结构(即指定的本地 IP 地址和端口号)关联起来。 | |
listen | 用于服务器端,使绑定的 TCP 套接字进入监听状态。 | |
accept | 用于服务器端。它接受接收到的从远程客户端创建新 TCP 连接的传入尝试,并创建与此连接的套接字地址对相关联的新套接字。 | |
connect | 用于客户端,为套接字分配空闲的本地端口号。对于 TCP 套接字,它会导致尝试建立新的 TCP 连接。 | |
接收数据 | recv | 用于接收数据。通常仅用于已连接的套接字。 |
recvfrom | 用于接收数据。可能用于在套接字上接收数据,无论它是否面向连接。 | |
发送数据 | send | 用于发送数据。通常用于 TCP SOCK_STREAM 已连接的套接字。 |
sendto | 用于发送数据。通常用于 UDP SOCK_DGRAM 未连接的数据报套接字。 | |
I/O 多路复用 | poll | 用于检查一组套接字中某个套接字的状态。可以测试该集合以查看是否可以写入、读取任何套接字或是否发生错误。 |
select | 用于挂起,等待提供的套接字列表中一个或多个套接字准备好读取、准备好写入,或者是因为存在错误。 | |
关闭连接 | close | 关闭 TCP 连接。 |
套接字选项 | setsocketopt | 用于为指定的套接字设置特定的套接字选项。 |
getsockopt | 用于检索指定套接字的特定套接字选项的当前值。 |