什么是套接字?
套接字是一对进程的2个端点。 比如客户端访问服务端, 客户端需要一个端点,服务端需要一个端点。套接字一般是由“ip+端口构成”
套接字的地址结构?
struct sockaddr_in {
unit16_t sin_family;
unit16_t sin_port;
struct in_addr sin_addr;
unsigned char sin_zero\[8\];
}
套接字接口的函数和他们是怎么运行的?
-
socket()函数。 创建一个套接字描述符sockfd. 客户端, 服务端
-
connect()。 将sockfd建立与服务器的连接。 客户端
-
bind()。 将sockfd与对应的进程绑定。 服务端
-
listen(). 将sockfd从主动变为被动,监听是否有从客户端过来的连接。 服务端
-
accept(). 建立从客户端过来的连接,和等待中的连接,返回一个已连接描述符。 这个已连接描述符用来和客户端通信。服务端