Unix 网络编程

通用套接字地址结构:sockaddr,几种具体实现为sockaddr_in和sockaddr_in6

表示和数值之间的转换:inet_ntop/inet_pton "213.0.99.98" <-> 0x626300d5

服务器:socket->bind->listen->accept------------>read->write------>read->close

                                                        |                    |                        |

客户机:socket------------------->connect->write----------->read->close

服务器启动时没有任何报文主动发送出来。当server调用accept之后,将阻塞并等待client连接。当client调用connect进行连接时,client主动发起三次握手。当client/server向socket描述符写数据时,发送一个PUSH报文。当client调用close关闭套接字描述符时,发送四次挥手。

如果子进程先于父进程退出,而父进程又没有调用wait/waitpid,则子进程会成为僵死进程。僵死进程的一个问题是占用的系统资源没有被及时清理。可以通过wait系列函数或者处理SIGCHLD来清理僵死进程。



猜你喜欢

转载自blog.csdn.net/zhshuai1/article/details/79342651