这两个协议比你想象中还要常见. 微软的SMB协议有两种风格的实现, 一个是在NetBIOS之上的TCP版本, 另一个是direct hosting的版本. NetBIOS over TCP 版本为实际上的SMB通讯使用端口137, 138, 和139. 而direct hosted 版本使用端口445.
除了这些端口之外, 两个版本的SMB协议都会给目的服务器发送一个初始的ICMP的echo request. 如果这个请求成功了, 但是请求不能使用端口137, 137, 139, or 445的话, 那么SMB协议就会经历多次的重试, 结果呢就是显示SharePoint Explorer View的时候会很慢. 这些SMB连接端口失败而引起delay是不可避免的, 而向其他协议发送的交互很可能会是成功的.
基于这个原因, 如果你在你的服务器上封掉了端口137, 138, 139, 或者 445端口的话, 那么你应该和block掉ICMP来提高Explorer View的性能.
SMB协议对于ICMP的使用, 被记录在文档KB article 832017中的, “Service overview and network port requirements for the Windows Server system” 的部分.
摘译自:
Understanding and Troubleshooting the SharePoint Explorer View
KB信息链接:
Service overview and network port requirements for the Windows Server system