套接字(socket)原语:用于客户-服务器模式,通过系统功能调用来实现。 主要原语有: SOCKET服务原语:用于建立发方通信端点,返回一个整数用作为标识。 BIND服务原语:用于给新建立的通信端点赋予一个地址。 CONNECT服务原语:在面向连接的TCP服务中用于在本地端点和远地端点间建立一条连接,在无连接的UDP服务中是把对方地址存储下来。 LISTEN服务原语:服务器为请求连接的客户分配请求连接队列空间,并指定队列长度(一般为5)。 ACCEPT服务原语:由服务器执行,等待连接请求的到来,请求到达后,服务器创建一个新连接端点,并将该端点的标识符返给请求端,接着产生一个进程为该连接服务,然后再去等待新的连接。 SEND服务原语:进行发送数据。 RECV服务原语:进行接收数据。 CLOSE服务原语:用于释放连接,双方都使用CIOSE原语后,连接即释放。 例如,在面向连接的服务中: 1.建立连接阶段: 服务器顺序执行:SOCKET-BIND-LISTEN-ACCEPT 客户顺序执行:SOCKET-BIND-CONNECT 2.数据传输阶段:双方用SEND和RECV原语进行发送和接收数据。 3.释放连接阶段:双方用CLOSE原语后释放连接。 |