深入理解网络编程:从 UDP 到文件传输
1. 网络编程基础与 Berkeley 套接字接口
网络编程为应用开发者提供了访问网络功能、信息和通信的途径,而 Berkeley 套接字接口则是其中的标准方法。在开始具体的网络编程之前,我们需要了解一些基本概念:
- 套接字和套接字描述符 :套接字是网络通信的端点,而套接字描述符则是用于标识套接字的整数。
- 主动套接字和被动套接字 :主动套接字通常由客户端创建,用于发起连接;被动套接字则由服务器创建,用于监听连接请求。
- 包含文件 :为了使用套接字接口,我们需要在程序中包含特定的文件,如 <sys/types.h> 、 <sys/socket.h> 、 <netdb.h> 等。
- 常量和结构 :主要的套接字接口函数使用了一些常量和结构,如 sockaddr_in 结构,用于存储网络地址信息。
在服务器应用中,我们需要完成套接字的创建、绑定、监听、接受连接和写入数据等操作;在客户端应用中,则需要完成套接字的创建、连接和读取数据等操作。此外,还有一些辅助函数可以帮助我们处理整数字节转换、结构操作和套接字选项。
2. 用户数据报协议(UDP)概述
在之前的示例中,我们使用的是基于流式套接字的 TCP 协议。而 UDP 是另一种可选的协议,也称为数据报套接字。UDP 具有以
超级会员免费看
订阅专栏 解锁全文

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



