网络编程基础与实践:从套接字到嵌入式Web服务器
1. 网络套接字基础
网络套接字(Network Sockets)是一种服务标识符,由“点分十进制”的互联网地址(如192.168.1.11)和协议端口号组成。客户端使用这个名称来访问服务。
服务器端的工作流程如下:
1. 使用 listen() 服务创建一个连接队列。
2. 使用 accept() 服务等待客户端的连接请求。当成功接收到连接请求时, accept() 返回一个新的套接字,用于该连接的数据传输。
3. 服务器使用标准的 read() 和 write() 调用进行数据传输,使用套接字描述符的方式与文件描述符相同。
4. 当交易完成后,关闭新创建的套接字。
服务器可以生成一个新的进程或线程来处理连接,同时继续等待其他客户端请求,从而实现同时为多个客户端服务。
客户端的工作流程如下:
1. 创建一个套接字,并将其命名为与服务器公开广告的名称相匹配。
2. 尝试使用 connect() 连接到服务器。
3. 如果连接请求成功,客户端使用套接字描述符通过 read() 和 write() 调用进行数据传输。
4. 当交易完成后,客户端关闭套接字。
下面是服务器和客户端的流程对比表格:
| 服务器操作 | 客户端操作 |
| — | — |
|
超级会员免费看
订阅专栏 解锁全文
956

被折叠的 条评论
为什么被折叠?



