SMB(*nix平台和Win NT4.0又称CIFS)协议是Windows平台标准文件共享协议。Linux平台通过samba来支持。SMB最新版本v3.0,在v2.0基础上针对WAN和分布式有改进。详细内容如下:

透明故障切换:

SMB3.0提供故障切换功能,在一台服务器故障情况下,客户端请求可以平滑切换到另外一台服务器,可以实现0宕机时间,切换过程少量IO会有延迟。该功能要求SMB服务器是一个集群,客户端和服务器都采用SMB3.0,共享开启“Continuous Availability”。SMB3.0以前协议客户可以正常访问SMB3.0共享,但是不支持透明故障切换功能。

切换过程示意图如下:

分布式支持:

SMB3.0可以将多台服务器组建成为一个集群,集群里面所有节点对客户端提供文件共享服务。在集群节点故障情况下,共享可以实现0宕机时间;并且可以快速故障恢复。

SMB2.0客户端可以正常访问SMB3.0集群,但是不支持故障切换;SMB1.0客户端不支持。

架构示意图如下:

RDMA支持:

SMB3.0支持RDMA功能,客户端和服务器都需要使用支持RDMA功能适配器(iWARP、RoCE、Infiniband)。RDMA功能可以使SMB共享可以获得更高带宽和更低延迟,有效减轻CPU I/O处理负载。结合SMB多通道功能可以实现负载均衡和故障切换功能。

SMB3.0以前客户端可以访问SMB3.0基于RDMA的共享,但不支持RDMA功能。RDMA架构示意图如下:

SMB多通道(Multichannel):

如果SMB客户端或者服务器拥有两块以上网卡,SMB多通道技术可以自动侦测使用多有网络路径,可以合并使用所有网卡带宽,SMB多通道技术可以结合多核处理器的RSS(RSS可以将IO请求均衡分发到不同处理器核心)技术。SMB多通道可以利用操作系统现有网卡绑定技术,但是不依赖。如果一种一块网卡故障,SMB多通道可以自动进行故障切换。

SMB3.0以前客户端无法使用SMB多通道技术,SMB多通道架构示意图如下:

SMB目录租约:

SMB3.0可以将共享的元数据信息缓存在客户端,客户端元数据请求直接从本地读取,这样可以提高查询性能,减少客户端与服务器之间延迟。目录缓存一致性通过租约实现(类似于DNS租约管理机制)。如果目录元数据有更新,服务器主动通知客户端更新。该功能要求SMB3.0客户端:

SMB加密功能:

SMB3.0自身提供端-端数据加密功能,可以在保证数据在复杂网络环境中的安全性。加密功能不需要依赖IPSec、PKI和特定硬件,使用AES CCM 128位加密算法。

VSS服务

VSS全称volume shadowcopy service,是微软为Windows操作系统提供的一个快照机制。SMB3.0共享提供VSS支持,主要服务于备份需求。VSS的影子拷贝由SMB3.0服务器提供,在不影响现有卷访问情况下,备份客户端可以通过影子拷贝完成备份过程,应用主机不参与备份数据传输过程,可以降低应用主机的负载。SMB3.0的VSS支持,原理跟RDMA基本相似。

SMB3.0 VSS架构示意图如下:

==================================================================================

SMB(Server Message Block)通信协议是微软(Microsoft)和英特尔(Intel)在1987年制定的协议,主要是作为Microsoft网络的通讯协议。SMB 是在会话层(session layer)和表示层(presentation layer)以及小部分应用层(application layer)的协议。SMB使用了NetBIOS的应用程序接口 (Application Program Interface,简称API)。另外,它是一个开放性的协议,允许了协议扩展——使得它变得更大而且复杂;大约有65个最上层的作业,而每个作业都超过120个函数,甚至Windows NT也没有全部支持到,最近微软又把 SMB 改名为 CIFS(Common Internet File System),并且加入了许多新的特色。

SMB3.0新特性

  • SMB透明故障转移:让管理员可执行群集文件服务器中节点的硬件或软件维护,且不会中断将数据存储在这些文件共享上的服务器应用程序。此外,如果群集节点出现硬件或软件故障,SMB 客户端将以透明方式重新连接到其他群集节点,且不会中断将数据存储在这些文件共享上的服务器应用程序。即客户端能够持续、稳定的对远程文件服务器进行通讯,用户不会感受到单点服务器故障所带来的性能影响(不兼容SMB1.0或SMB2.x)。
  • SMB横向扩展:可构建横向扩展文件服务器(Scale-Out File Server),在使用群集共享卷(CSV)版本2时,管理员可以通过文件服务器群集中所有节点,创建可供同时访问含直接I/O的数据文件的文件共享。这可更好地利用文件服务器客户端的网络带宽和负载平衡,以及优化服务器应用程序的性能。
  • SMB多通道:如果在SMB3.0客户端及服务器之间提供多条路径,则支持网络带宽和网络容错的聚合,提升了网络可用性及文件服务器的稳定性,并让服务器应用程序可以充分利用可用网络带宽,以及在发生网络故障时快速恢复。
  • SMB直接访问(SMB over Remote Direct Memory Access[RDMA]):支持使用具有RDMA功能且可全速运行的网络适配器,其中延迟非常低且CPU利用率极少。对于Hyper-V或Microsoft SQL Server等实现工作负载,这让远程服务器如同本地存储一般。
  • 用于服务器应用程序的性能计数器:全新 SMB 性能计数器提供有关吞吐量、延迟和 I/O/秒 (IOPS) 的按共享列出的详细信息,从而让管理员可以分析用于存储数据的 SMB 3.0 文件共享的性能。这些计数器专为将文件存储在远程文件共享上的服务器应用程序而设计,如 Hyper-V 和 SQL Server。
  • 性能优化:SMB 3.0 客户端和 SMB 3.0 服务器均已针对小型随机读/写 I/O 优化,这种 I/O 在 SQL Server OLTP 等服务器应用程序中很常见。此外,默认情况下打开大型最大传输单元 (MTU),这将大幅提高大型连续传输性能,如 SQL Server 数据仓库、数据库备份或还原、部署或复制虚拟硬盘。
  • SMB加密:提供SMB数据的端对端加密并防止数据在未受信任网络中遭受窃听。无需新部署成本,且无需Internet协议安全性(IPsec)、专用硬件或WAN加速器。它可按共享配置,也可针对整个文件服务器配置,并且可针对数据遍历未受信任网络的各种方案启动。
  • 为SMB文件共享所提供的VSS:
  • SMB目录租用:缩短分支机构的应用程序响应时间。使用目录租用后,缩短了从客户端到服务器的往返时间,因为是从保留时间较长的目录缓存中检索元数据。缓存一致性得到保持,因为在服务器上的目录信息更改时将通知客户端。适用于主文件夹(读/写,无共享)和 发布(只读,带共享)。
  • SMB PowerShell:借助于全新的SMB Windows PowerShell cmdlet,管理员可以从命令行以端对端方式管理文件服务器上的文件共享。

微软SMB 3.0文件共享协议新特性介绍相关推荐

  1. Blazor 0.5.0 升级及新特性介绍

    前言 喜大普奔, Blazor 0.5.0 在我刷了好几遍 Github (表示功不可没)以后,终于在 2018年7月25日发布了! [Blazor 0.5.0 Announce] (https:// ...

  2. 通过SCVMM分配SMB 3.0 文件共享

    1.创建SMB群集共享,赋予Hyper-V主机. Hyper-V群集名称.Hyper-V管理员.Hyper-V服务账户完全控制权限 2.VMM提供程序导入 文件服务器(运行方式账户要对文件服务器群集的 ...

  3. 大数据哔哔集20210106 - Hadoop3.0有哪些新特性

    [大数据哔哔集]是小编发起的每日大数据圈子最前沿.高频.有难度的面试题目以及资讯等. 精简版总结 1.JDK版本的最低依赖从1.7变成了1.82.HDFS支持Erasure Encoding3.Tim ...

  4. hadoop3.0新特性介绍

    hadoop3.0新特性介绍 1. 基于jdk1.8(最低版本要求) 2. mr采用基于内存的计算,提升性能(快spark 10倍) 3. hdfs 通过最近black块计算,加快数据获取速度(块大小 ...

  5. android studio viewo,android studio 3.6.0 绑定视图新特性的方法

    Android studio 3.6.0 绑定视图使用方法 1.确保你的 build gradle 最低为3.6.0 dependencies { classpath 'com.android.too ...

  6. 一起谈.NET技术,NHibernate 3.0.0.Alpha1 发布及新特性介绍

    发布 刚刚NHibernate的Leader--Fabio Maulo发布了NHibernate 3.0.0.Alpha1版本,这是NHibernate 3.0.0的第一个公开测试版本. 下载地址 你 ...

  7. HALCON: HALCON 20.11.0.0 Progress主要新特性

    HALCON: HALCON 20.11.0.0 Progress主要新特性 改进了基于形状的匹配 在HALCON 20.11中,对基于形状匹配的核心技术进行了改进,尤其是针对低对比度和高噪声的场景. ...

  8. 蚂蚁金服 SOFAArk 0.6.0 新特性介绍 | 模块化开发容器...

    SOFAStack Scalable Open Financial Architecture Stack 是蚂蚁金服自主研发的金融级分布式架构,包含了构建金融级云原生架构所需的各个组件,是在金融场景里 ...

  9. Spring Boot3.0正式发布及新特性解读

    Spring Boot 3.0 正式发布 同时发布更新的还有 2.7.x 和 2.6.x 两条版本线,Spring Boot 是我见过的发版最守时的技术框架之一. Spring Boot 3.0 现已 ...

最新文章

  1. 学霸学长如何第一时间收到接口报错?不用测试妹子再质疑你是不是接口挂了
  2. C#在线获取歌词(转)
  3. sublime linux下无法输入中文
  4. 一根网线有这么多“花样”,你知道吗?
  5. java erlang_Java开发人员的Erlang
  6. angular4获得焦点事件_Angular 4 文本框自动获取焦点二
  7. 我想变得富有的10个理由
  8. 使用Spring-hadoop小结
  9. 对没有标记为安全的activex控件进行初始化和脚本运行_RASP攻防 —— RASP安全应用与局限性浅析...
  10. python 目录下的文件_用python把文件夹下的所有文件包括文件夹里面的文件都拷贝到同一个目录下...
  11. MFC设置对话框背景色及控件颜色
  12. 快捷指令_iOS快捷指令中心,太实用啦
  13. Elasticsearch(一) ES之简介、倒排索引介绍以及 elasticsearch、kibana安装
  14. 往AWS上传文件[超快]
  15. SVN太旧,要更新问题
  16. Ubuntu16.04下安装、配置Sublime运行环境
  17. c++ string substr_【函数分享】PHP函数substr ()分享(2020929)
  18. 二次无约束二值优化模型(The Quadratic Unconstrained Binary Optimization(QUBO) model)
  19. 小米android点击,自动点击器小米版
  20. 行政区域村级划分数据库_两区划定数据库规范(试行)

热门文章

  1. mysql触发器作用及用法
  2. vscode调试代码方法
  3. vscode调试php
  4. 突发奇想的代码,根据出生日期查年龄哈哈
  5. java decode函数用法_decode函数的几种用法
  6. Elasticsearch的UNASSIGNED未分配解决方案
  7. 并查集-算法详解及例题(最小生成树问题)
  8. 海量数据同步首选 SeaTunnel Zeta 引擎正式发布!
  9. WEB前端入门知识及要点大全
  10. 哔哩哔哩电脑版怎么缓存视频?