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