CIFS:通用 Internet 文件系统 (Common Internet File System)

2024-02-13 07:38

本文主要是介绍CIFS:通用 Internet 文件系统 (Common Internet File System),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

CIFS:通用 Internet 文件系统 (Common Internet File System)

通用网际文件系统(CIFS)是微软服务器消息块协议(SMB)的增强版本,是计算机用户在企业内部网和因特网上共享文件的标准方法。CIFS 通过定义一种与应用程序在本地磁盘和网络文件服务器上共享数据的方式相兼容的远程文件访问协议使之能够在因特网上进行协作。CIFS 在 TCP/IP 上运行,利用因特网上的全球域名服务系统(DNS)增强其可扩展性,同时为因特网上普遍存在的慢速拨号连接优化。CIFS 利用重定向包可以通过网络发送至远端设备,而重定向器也利用 CIFS 向本地计算机的协议栈发出请求。

CIFS 提供如下关键特点:

  • 文件访问的完整性:CIFS 支持一套通用的文件操作:打开、关闭、读,写以及搜索。CIFS 也支持文件和记录的锁定和解锁。CIFS 允许多个客户端访问和更新同一个文件,它通过提供文件共享和文件锁定功能来避免发生冲突。
  • 为慢速链接优化:CIFS 已被优化过,使之能在慢速拨号线路上良好运行,结果就是为使用调制解调器访问因特网的用户提供了改善的性能。
  • 安全性:CIFS 服务器既支持匿名传输,也支持对于指定文件的安全的、需要验证的访问。同时,也易于管理文件和目录的安全策略。
  • 高性能和可扩展性:CIFS 服务器和操作系统高度集成,为最大化系统性能而优化。CIFS 支持 Windows 95 之后的所有微软平台。它也支持其它流行的操作系统,如 UNIX、VMS、Macintosh 、IBM LAN server等。
  • 使用统一码(Unicode)文件名:文件名可以使用任何字符集,而不局限于为英语或西欧语言设计的字符集。
  • 全局文件名:用户不必挂载远程文件系统也能直接查阅到全局有效名称,而不是只有本地意义的那些名称。

协议结构

CIFS 和 SMB 定义了许多客户端和服务器端的命令和消息。这些命令和消息大致可分为如下几类:

  • 连接建立消息:包括开始或结束一个到服务器上共享资源的重定向连接的命令。
  • 命名空间和文件处理消息:重定向器利用这个消息获得对服务器上文件的访问并对其进行读写操作。
  • 打印消息:重定向器利用此消息向服务器上的打印队列发送数据和获得打印队列的状态信息
  • 其它消息:重定向器利用这些消息向邮槽和命名管道写入信息。

相关协议:SMB、HTTP、FTP、DNS

组织来源:CIFS属于微软公司的一种私有协议。

这篇关于CIFS:通用 Internet 文件系统 (Common Internet File System)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/704909

相关文章

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre

使用Java实现通用树形结构构建工具类

《使用Java实现通用树形结构构建工具类》这篇文章主要为大家详细介绍了如何使用Java实现通用树形结构构建工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录完整代码一、设计思想与核心功能二、核心实现原理1. 数据结构准备阶段2. 循环依赖检测算法3. 树形结构构建4. 搜索子

Linux中的缓冲区和文件系统详解

《Linux中的缓冲区和文件系统详解》:本文主要介绍Linux中的缓冲区和文件系统方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、FILE结构1、fd2、缓冲区二、文件系统1、固态硬盘2、逻辑地址LBA(一)数据块 Data blocks(二)inode表

Java实现将byte[]转换为File对象

《Java实现将byte[]转换为File对象》这篇文章将通过一个简单的例子为大家演示Java如何实现byte[]转换为File对象,并将其上传到外部服务器,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言1. 问题背景2. 环境准备3. 实现步骤3.1 从 URL 获取图片字节数据3.2 将字节数组

解决JavaWeb-file.isDirectory()遇到的坑问题

《解决JavaWeb-file.isDirectory()遇到的坑问题》JavaWeb开发中,使用`file.isDirectory()`判断路径是否为文件夹时,需要特别注意:该方法只能判断已存在的文... 目录Jahttp://www.chinasem.cnvaWeb-file.isDirectory()遇

Oracle数据库如何切换登录用户(system和sys)

《Oracle数据库如何切换登录用户(system和sys)》文章介绍了如何使用SQL*Plus工具登录Oracle数据库的system用户,包括打开登录入口、输入用户名和口令、以及切换到sys用户的... 目录打开登录入口登录system用户总结打开登录入口win+R打开运行对话框,输php入:sqlp

VMWare报错“指定的文件不是虚拟磁盘“或“The file specified is not a virtual disk”问题

《VMWare报错“指定的文件不是虚拟磁盘“或“Thefilespecifiedisnotavirtualdisk”问题》文章描述了如何修复VMware虚拟机中出现的“指定的文件不是虚拟... 目录VMWare报错“指定的文件不是虚拟磁盘“或“The file specified is not a virt

Golang使用minio替代文件系统的实战教程

《Golang使用minio替代文件系统的实战教程》本文讨论项目开发中直接文件系统的限制或不足,接着介绍Minio对象存储的优势,同时给出Golang的实际示例代码,包括初始化客户端、读取minio对... 目录文件系统 vs Minio文件系统不足:对象存储:miniogolang连接Minio配置Min

详解Python中通用工具类与异常处理

《详解Python中通用工具类与异常处理》在Python开发中,编写可重用的工具类和通用的异常处理机制是提高代码质量和开发效率的关键,本文将介绍如何将特定的异常类改写为更通用的ValidationEx... 目录1. 通用异常类:ValidationException2. 通用工具类:Utils3. 示例文

提示:Decompiled.class file,bytecode version如何解决

《提示:Decompiled.classfile,bytecodeversion如何解决》在处理Decompiled.classfile和bytecodeversion问题时,通过修改Maven配... 目录问题原因总结问题1、提示:Decompiled .class file,China编程 bytecode