下图演示了 Windows 下网络 I/O作的过程。
在 windows网络 i/o作
当应用程序调用文件 I/O 函数以访问远程计算机上的文件时,会发生以下事件:
- I/O 请求被本地计算机上的 网络重定向程序(也称为重定向程序)截获。 在上图中,应用程序与客户端重定向程序之间的实心箭头描述了这一点。
- 重定向程序构造包含有关请求的所有信息的数据包,并将其发送到文件所在的服务器。 上图中显示了客户端重定向程序与服务器重定向程序之间的实心箭头。
- 服务器上的重定向程序从客户端接收数据包,对 I/O 请求所需的文件的访问权限进行身份验证,如果经过身份验证,则代表客户端执行请求。 否则,它会向客户端上的重定向程序返回错误代码。 上图中显示了服务器重定向器与文件之间的曲线实心箭头。
- 执行请求后,服务器上的重定向程序会将 I/O 请求产生的任何数据以及成功通知发送到客户端上的重定向程序。 在上图中,由服务器和客户端重定向程序之间的虚线箭头来描述这一点。
- 客户端上的重定向程序从服务器接收数据包,并将数据包中的数据连同成功通知一起传递到应用程序。 在上图中,由客户端重定向程序与应用程序之间的虚线箭头来描述这一点。
Windows 可以使用各种网络协议来执行网络 I/O作,包括 Microsoft SMB 协议和 CIFS 协议概述 和 NFS。
在本部分中
| 主题 | 描述 |
|---|---|
| 本地和网络 I/O 差异 |
本地 I/O 与 Windows 上的网络 I/O 之间的差异。 |
|
网络重定向程序 |
描述网络重定向程序的功能。 |