socket函数是一种可用于根据指定的地址族、数据类型和协议来分配一个
套接口的描述字及其所用的资源的函数。
socket()函数用于根据指定的地址族、数据类型和协议来分配一个
套接口的描述字及其所用的资源。如果协议protocol未指定(等于0),则使用缺省的连接方式。
SOCK_DGRAM 支持无连接的、不可靠的和使用固定大小(通常很小)缓冲区的
数据报服务,为Internet地址族使用UDP。
SOCK_STREAM类型的
套接口为全双向的
字节流。对于流类套接口,在接收或发送数据前必需处于已连接状态。用
connect()调用建立与另一套接口的连接,连接成功后,即可用
send()和recv()传送数据。当会话结束后,调用close()。
带外数据根据规定用send()和recv()来接收。
实现SOCK_STREAM类型套接口的通讯协议保证数据不会丢失也不会重复。如果终端协议有缓冲区空间,且数据不能在一定时间成功发送,则认为连接中断,其后续的调用也将以WSAETIMEOUT错误返回。
SOCK_DGRAM类型套接口允许使用
sendto()和recvfrom()从任意端口发送或接收数据报。如果这样一个
套接口用
connect()与一个指定端口连接,则可用
send()和recv()与该端口进行数据报的发送与接收。