samba – 持久文件句柄,弹性文件句柄和持久文件句柄之间的区别

前端之家收集整理的这篇文章主要介绍了samba – 持久文件句柄,弹性文件句柄和持久文件句柄之间的区别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在CIFS / SMB协议中,我看到有3种类型的文件句柄:持久,弹性和持久性.它们之间有什么区别?

解决方法

>耐用手柄是SMB 2.0的一部分
>弹性手柄是SMB 2.1的一部分
>持久句柄是SMB 2.2的一部分,现在称为SMB3

我对以下内容的主要参考是:

https://wiki.samba.org/index.php/SMB3_kernel_status

虽然这最初是针对Samba3的,但它有更多细节:

https://wiki.samba.org/index.php/Samba3/SMB2

持久的文件句柄允许连接到SMB服务器以避免短暂的网络中断 – 在打开过程终止时,不一定要清除持久的句柄.当客户端尝试重新连接时,如果oplock(/ lease)仍然存在,它将重新连接到该文件.

但是如果另一个客户端尝试打开该文件,则oplock / lease将被破坏,并且第一个客户端无法重新连接.

即使oplock / lease被破坏,也会保留弹性文件句柄,但坦率地说,我无法遵循其工作原理的所有技术细节.下面的参考之一说Durable和Resilient之间的区别在于如何创建句柄 – Durable by a create context call and Resilient by an IOCTL.(我不能遵循的主要内容是锁序列和重放是如何适应这一点的,但它看起来并不像是关键的耐用和弹性之间的区别.)

对于Persistent句柄,我无法想出更好的东西than this Samba doc:

Persistent file handles are a like durable file handles with strong guarantees. They are requested with the durable v2 create request blob with the persistent flag set to true. The server only grants persistent handles on shares that are marked CA (continuously available).

据我所知,这些尚未在Samba中实现,但目标是支持群集和连续可用性,so it’s being worked on.

猜你在找的Linux相关文章