socket的一些问题

1. socket 常用TCP, UDP.
2. UDP 不需要listern, 就可以连接。
3. TCP使用recv(), send() routine, UDP使用recvfrom(), sendto() routine。
4. 两者可以使用select() routine,TCP在listen() 后使用,UDP在bind()后使用。
5. TIME_WAIT用于关闭socket连接时出现,那一端主动关闭,那一端就会主动出现,如果在server端关闭,server端通常1-4分钟不能重新建立连接。如果连接很多,都同时关闭,在server端出现大量的TIME_WAIT,建议修改程序,从Client端关闭。
6. 针对第5点通常1-4分钟不能重新建立连接,可以使用
int rc=1;
setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (char*)&rc, sizeof(rc));
进行调整。
其它的想到再继续

你可能感兴趣的:(server,socket,tcp)