• 2006-11-16

    第二章 重定向器 - [多线程程序设计]

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://xingzhesun.blogbus.com/logs/3846743.html

    windows使应用程序能通过操作系统内建的文件系统服务在网络上通信。“网络操作系统”。若应用程序希望访问本地系统中的文件,需要依赖操作系统来满足
    I/O请求。我们称之为本地I/O。例如,在一个应用程序打开或关闭文件时, 需要由操作系统来决定如何访问包含了制定文件内容的一个设备。找到设备后,
    I/O请求会被转发给一个本地设备驱动程序。通过网络来访问一个设备也是同样。然而,IO请求必须通过网络会被转发给对应的远程设备。我们称之为
    “IO重定向(IO redirection)”.
    如何将普通的IO请求重定向到远程设备。
    通用命名规范 Universal Naming Convention UNC
    多UNC提供者(Multiple UNC Provider)MUP
    2.1 通用命名规范
    它最大的特点是不必制定或引用一个已映射到远程文件系统的本地驱动器字母。“与驱动器字母无关”。它的格式:
    \\[服务器]\[共享名]\[路径]
    2.2MUP
    网络提供者Network Provider,其实就是一种服务,可通过网络硬件访问位于一台远程计算机上的资源(如文件和打印机)。网络
    提供者如“Microsoft网络用户”。还有例如Novell公司的Novell Client v3.10 for Windows 95/98.
    MUP的基本任务是决定具体由哪个网络提供者来满足一个UNC请求。为作出这个决定,MUP需将请求中提到的UNC名字发给已经安装好的每一个提供者
    (以并行方式)。若某个网络提供这表明自己能够提供UNC名字牵涉到的那一种服务,MUP便会将请求中剩余的部分发给他。如果有多个提供者都表示能够服务一个UNC
    请求,MUP便会根据优先级挑选最恰当的一个提供者。
    2.3网络提供者
    网络提供者只是一种服务,通过网络硬件来访问位于远程计算机上的共享资源,比如文件和打印机。这正是网络操作系统的一种核心功能。网络
    提供者具备最主要的功能之一便是将本地磁盘标识符如(E)重定向至远程机器上的一个磁盘目录。
    2.4重定向器简介
    重定向器由网络提供者展示给用于接收和处理远程IO服务请求的操作系统。要做到这一点他需要格式化服务请求消息,再将其发给远程计算机的
    重定向器服务器服务。远程机器的重定向器服务器收到这个请求之后,会发出本地IO请求的方式,来满足这一请求。
    MSNP提供了一个特殊的重定向器,可直接与网络传输层和NetBIOS打交道,以便在客户机与服务器之间建立通信。
    2.5服务器消息块
    SMB:包含三个基本组件:命令代码、命令特有的和用户数据。
    SMB协议采用非常简单的“客户机请求/服务器相应”传输模型。MSNP重定向器创建一个SMB结合时,需要再命令代码字段中指定一个
    特定的请求。若命令要求的是发送数据,比如写指令,数据便会随结构一道传送出去。随后,SMB结构会通过一种想TCP/IP这样的传输协议传给一个远程工作站的服务器服务。
    远程工作站的服务器服务会对收到的客户机请求进行处理,然后将一个SMB相应数据结构传回客户机。
    WINS:windows互联网命名服务器。
    NBTstat-n 查看本机已经注册的NetBIOS名字列表。
    windows最有特色的一个网络提供者称为“microsoft网络用户”,以前叫做“Microsoft网络提供者(MSNP)”
    2.6 安全问题
    本地的安全。访问权限:读、写、执行。windows NT和windows2000是通过安全描述符和访问令牌来实现安全的。


    收藏到:Del.icio.us