亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        SMB協(xié)議故障排除技術(shù)方法研究

        2025-03-22 00:00:00倪雨松
        信息系統(tǒng)工程 2025年3期

        摘要:隨著信息技術(shù)的快速發(fā)展,網(wǎng)絡(luò)共享和文件傳輸已成為日常工作中不可或缺的一部分。服務(wù)器消息塊(Server Message Block)協(xié)議作為微軟Windows操作系統(tǒng)中廣泛使用的網(wǎng)絡(luò)文件共享協(xié)議,其穩(wěn)定性對企業(yè)運營至關(guān)重要。旨在通過對服務(wù)器消息塊協(xié)議在實際應(yīng)用中遇到的各類故障進行系統(tǒng)性分析,提供一套全面的故障排除方法和解決方案,以幫助信息技術(shù)專業(yè)人員快速定位并解決問題,保障網(wǎng)絡(luò)環(huán)境的高效運行。

        關(guān)鍵詞:服務(wù)器消息塊;文件傳輸協(xié)議;網(wǎng)絡(luò)故障

        一、前言

        服務(wù)器消息塊(SMB)通信協(xié)議是微軟(Microsoft)和英特爾(Intel)在1987年制定的協(xié)議,主要是作為Microsoft網(wǎng)絡(luò)的通信協(xié)議[1]。SMB協(xié)議的目的是通過TCP/IP在兩個系統(tǒng)之間啟用遠(yuǎn)程文件系統(tǒng)訪問。SMB是一個遵循客戶機服務(wù)器模式的協(xié)議,SMB服務(wù)器負(fù)責(zé)通過網(wǎng)絡(luò)提供可用的共享資源給SMB客戶機,服務(wù)器和客戶機之間通過TCP/IP協(xié)議進行連接[2]。一旦服務(wù)器和客戶機之間建立了一個連接,客戶機就可以通過向服務(wù)器發(fā)送命令完成共享操作,如讀、寫、檢索等。原始版本SMB1的帶寬效率低下,并且缺乏足夠的安全性[3]。后續(xù)的SMB版本通過內(nèi)置加密、SMB多通道和SMB直通等功能解決了這些問題[4]。

        SMB協(xié)議在企業(yè)網(wǎng)絡(luò)中的應(yīng)用極為廣泛,同時也面臨著各種故障和性能問題的挑戰(zhàn)。SMB協(xié)議導(dǎo)致的網(wǎng)絡(luò)故障通常表現(xiàn)為無法訪問共享文件、連接超時、認(rèn)證失敗等問題。一般出現(xiàn)這類故障時,要確保系統(tǒng)文件更新。與SMB相關(guān)的系統(tǒng)文件包括客戶端與服務(wù)器端兩部分,在客戶端%windir%\system32\Drivers下的二進制文件有RDBSS.sys、MRXSMB.sys、MRXSMB10.sys、MRXSMB20.sys、MUP.sys等。在SMB服務(wù)器端%windir%\system32\Drivers下的二進制文件有SRVNET.sys、SRV.sys、SRV2.sys、SMBdirect.sys等,其文件體系結(jié)構(gòu)如圖1所示[4]。

        SMB客戶端和SMB服務(wù)器都有詳細(xì)的事件日志結(jié)構(gòu),收集事件日志以幫助查找問題的根本原因。

        二、連接性問題

        目前,SMB采用傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議和端口445,在客戶端與服務(wù)器通信之前需要三次握手,TCP協(xié)議管理數(shù)據(jù)傳輸。如果出現(xiàn)TCP 3-way handshake失敗,通常是由于防火墻設(shè)置不當(dāng)導(dǎo)致的流量阻塞。解決此問題需要檢查本地和基礎(chǔ)設(shè)施中的防火墻設(shè)置,確保TCP端口445的流量未被阻止。此外,還需確認(rèn)SMB服務(wù)是否在監(jiān)聽端口445,并檢查Windows防火墻是否屏蔽了445端口。

        對于TCP SYN數(shù)據(jù)包到達SMB服務(wù)器,但SMB服務(wù)器不返回TCP SYN-ACK數(shù)據(jù)包的情況,使用netstat和Get-NetTcpConnection命令檢查端口監(jiān)聽狀態(tài),在TCP端口445上有一個監(jiān)聽器應(yīng)該由SYSTEM進程擁有,確?!胺?wù)器服務(wù)(Server service)”已啟動并運行。獲取場景追蹤,并查找WFP(Windows Filtering Platform)丟棄SMB流量(TCP端口445),或者如果啟用了Windows防火墻,則啟用防火墻日志記錄并查看是否記錄了丟棄,獲取WFP捕獲并查看哪個規(guī)則/程序正在丟棄流量。對于TCP SYN流量從未到達SMB服務(wù)器,必須調(diào)查網(wǎng)絡(luò)路徑上的設(shè)備,可以分析每個設(shè)備上捕獲的網(wǎng)絡(luò)跟蹤,以確定哪個設(shè)備正在阻止流量。

        三、協(xié)商失敗

        SMB3.0提高了SMB協(xié)議的性能、安全性、管理、備份和可用性。這些功能包括SMB直接、SMB多通道、SMB加密、遠(yuǎn)程卷影復(fù)制服務(wù)支持和客戶端訪問的透明故障轉(zhuǎn)移[5]。SMB服務(wù)器從SMB客戶端接收SMB NEGOTIATE請求。連接超時并在60秒后重置,大約200微秒后可能會出現(xiàn)ACK消息。

        協(xié)商失敗可能由SMB版本不匹配或客戶端不支持SMB over NetBIOS引起。解決此問題需要檢查客戶端和服務(wù)器之間的SMB版本兼容性,并確保網(wǎng)絡(luò)配置正確。根據(jù)表1可以看到不同Windows版本最高可以協(xié)商出來的SMB協(xié)議[6]。

        四、會話設(shè)置失敗

        故障現(xiàn)象為SMB服務(wù)器從SMB客戶端接收SMB SESSION_SETUP請求,但無法響應(yīng)。會話設(shè)置失敗通常涉及Kerberos認(rèn)證問題,當(dāng)SMB服務(wù)器從客戶端接收SMB SESSION_SETUP請求時,如果使用Kerberos進行身份驗證,可能會因為Kerberos流量在TCP端口88上出現(xiàn)問題而導(dǎo)致會話設(shè)置失敗[7]。可以查看Kerberos流量,確保在獲取令牌時沒有錯誤。

        在SMB SESSION_SETUP請求中的安全Blob可能沒有發(fā)送正確的憑據(jù),會導(dǎo)致會話設(shè)置失敗,檢查安全Blob以確認(rèn)發(fā)送了正確的憑據(jù)。此外,還需確保服務(wù)器有SPN記錄,并且在通過CNAME DNS記錄訪問時,SMB簽名正常工作。如果在UNC路徑中使用了服務(wù)器的FQDN或NetBIOS名稱,則應(yīng)使用Kerberos進行身份驗證。在協(xié)商響應(yīng)之后,將嘗試獲取服務(wù)器CIFS SPN的Kerberos票證。查看TCP端口88上的Kerberos流量,確保在獲取令牌時沒有Kerberos錯誤[4]。此外,進行以下檢查:

        查看SMB SESSION_SETUP請求中的安全Blob,確保發(fā)送了正確的憑據(jù);

        嘗試禁用SMB服務(wù)器名稱強化 (SmbServerName HardeningLevel = 0);

        確保SMB服務(wù)器在通過CNAME DNS記錄訪問時具有SPN;

        確保SMB簽名正常工作,對于較舊的非Windows操作系統(tǒng)設(shè)備尤其重要。

        五、樹連接失敗

        SMB樹連接失敗通常是由于網(wǎng)絡(luò)問題、權(quán)限設(shè)置錯誤或配置不當(dāng)?shù)仍蛞鸬摹=鉀Q此問題需要檢查共享是否存在于服務(wù)器上,并確認(rèn)磁盤和文件夾對共享是可訪問的,同時確保憑據(jù)具有共享和NTFS訪問權(quán)限。

        檢查網(wǎng)絡(luò)連接,確保網(wǎng)絡(luò)連接正常,特別是SMB客戶端和服務(wù)器之間的連接??梢試L試ping服務(wù)器IP地址或域名來測試網(wǎng)絡(luò)連通性。檢查SMB版本,確保SMB客戶端和服務(wù)器支持的版本兼容。如果電視、NAS或其他設(shè)備支持的SMB版本較低,可能需要調(diào)整設(shè)備的SMB版本設(shè)置。檢查共享路徑,確保指定的共享路徑存在且正確。如果路徑中包含中文或其他特殊字符,可能會導(dǎo)致連接失敗。嘗試使用英文路徑和避免使用特殊字符[8]。

        調(diào)整安全設(shè)置,確保SMB服務(wù)器名稱強化設(shè)置正確,可以嘗試禁用SMB服務(wù)器名稱強化(SmbServerNameHardeningLevel = 0)[8]。查看日志文件,檢查SMB客戶端和服務(wù)器端的日志文件,查找具體的錯誤信息,以幫助確定是客戶端問題還是服務(wù)器端問題。更新和補丁,確保SMB客戶端和服務(wù)器都是最新版本,并且安裝了所有必要的補丁。

        六、其他改善SMB協(xié)議傳輸速度的方法

        (一)大文件復(fù)制速度慢

        1.嘗試使用微軟在Windows內(nèi)置的無緩沖輸入輸出(IO)的方式進行文件復(fù)制(使用 xcopy /J 或 robocopy /J 命令)。

        2.確保接收端縮放(Receive Side Scaling - RSS)配置正確。RSS 是一種用于提高網(wǎng)絡(luò)性能的技術(shù),主要應(yīng)用于多處理器系統(tǒng)中的網(wǎng)絡(luò)接收處理。其核心原理是允許網(wǎng)絡(luò)適配器將接收到的網(wǎng)絡(luò)數(shù)據(jù)包分發(fā)到多個處理器核心上進行處理,而不是只由一個核心來處理所有數(shù)據(jù)包。

        3.測試硬盤存儲速度,因為SMB協(xié)議傳輸速度首先會受計算機本地存儲速度限制。在測試過程中如果發(fā)現(xiàn)文件復(fù)制有時一開始速度很快,隨后傳輸速度變慢。那么:

        ① 這種情況通常發(fā)生在初始復(fù)制是在緩存或緩沖中進行的,要么在內(nèi)存中,要么在磁盤陣列(RAID)控制器的內(nèi)存緩存中。當(dāng)緩存耗盡時,就會迫使數(shù)據(jù)直接寫入磁盤(Write-Through),而這會更慢。

        ② 使用Windows自帶的性能監(jiān)視器(Performance Monitor),查看存儲性能是否會隨時間下降,機器本身存儲瓶頸導(dǎo)致的SMB傳輸速度變慢。

        ③ 使用 RAMMap (SysInternals 工具)查看內(nèi)存中 “映射文件” 的使用量是否因可用內(nèi)存耗盡而停止增長[9]。

        4.在網(wǎng)絡(luò)日志抓包中查找是否存在數(shù)據(jù)包丟失的情況,因為網(wǎng)絡(luò)丟包可能會導(dǎo)致 TCP 擁塞控制機制進行限流。

        5.在SMB3 或更高版本的情況下,確保 SMB 多通道已啟用且正常工作。所謂多通道,就是在 Windows 系統(tǒng)中,當(dāng)進行 SMB 文件傳輸時,系統(tǒng)能夠自動檢測到多個可用的網(wǎng)絡(luò)適配器,并利用這些網(wǎng)絡(luò)適配器同時建立多個網(wǎng)絡(luò)連接來傳輸數(shù)據(jù),從而實現(xiàn)帶寬聚合和容錯功能。

        6.如果SMB 客戶端遇到的問題,在 SMB 中啟用更大的最大傳輸單元 (MTU,Maximum Transmission Unit),將注冊表中的 EnableLargeMtu 設(shè)置為 1。MTU指的是網(wǎng)絡(luò)中一個數(shù)據(jù)幀或數(shù)據(jù)包能夠攜帶的最大數(shù)據(jù)量。一般情況下,以太網(wǎng)的默認(rèn) MTU 值是 1500 字節(jié)。若使用更大的 MTU 值,每次傳輸?shù)臄?shù)據(jù)量就會增多,這樣可以減少數(shù)據(jù)傳輸時的封裝開銷,進而提高傳輸效率。

        7.還是在SMB 客戶端遇到問題的情況下,禁用帶寬限制,將注冊表中的 EnableBandwidthThrottling 設(shè)置為禁用狀態(tài)時(設(shè)置為 0),系統(tǒng)就不會對 SMB 客戶端的網(wǎng)絡(luò)帶寬使用進行限制。單個或多個 SMB 連接就可以占用大部分的網(wǎng)絡(luò)帶寬。

        (二)小文件復(fù)制速度慢

        “大量小文件”定義為數(shù)百、數(shù)千甚至數(shù)百萬個小于 1 MB 的文件。 SMB協(xié)議傳輸速度慢的情況最常出現(xiàn)在存在大量小文件的時候。在一定程度上,這是預(yù)期的并且眾所周知的現(xiàn)象[10]。SMB 協(xié)議必須執(zhí)行多個協(xié)議步驟才能創(chuàng)建文件,文件創(chuàng)建在性能方面是一項 “代價高昂的操作”。在傳輸任何數(shù)據(jù)之前,SMB 必須執(zhí)行多個協(xié)議操作來創(chuàng)建文件。文件系統(tǒng)本身在創(chuàng)建文件時也會有額外的性能損耗。小文件復(fù)制會反復(fù)受到這種損耗的影響。使用單線程復(fù)制時,每個文件的數(shù)據(jù)量不足以讓網(wǎng)絡(luò)傳輸足夠的數(shù)據(jù)來維持高網(wǎng)絡(luò)速度,因為創(chuàng)建文件所花費的時間比傳輸文件數(shù)據(jù)的時間更多。出現(xiàn)此問題的原因是,在僅傳輸少量數(shù)據(jù)負(fù)載后,就必須暫停數(shù)據(jù)傳輸以執(zhí)行文件創(chuàng)建。然而,單個大文件只有一次文件創(chuàng)建損耗,然后可以傳輸足夠的數(shù)據(jù)以達到網(wǎng)絡(luò)峰值速度。

        提升通過SMB協(xié)議傳輸“大量小文件”的方式有三種。

        1.使用Robocopy 命令來幫助傳輸。Robocopy 是 Windows 系統(tǒng)內(nèi)置的傳輸工具,其中的 “/MT” 參數(shù)可開啟多線程文件復(fù)制功能。多線程開啟后,可以顯著改善SMB協(xié)議的傳輸速度。

        2.采用文件壓縮方式,即將小文件壓縮成大的文件,像常見的.zip、.7z、.rar、等格式,然后直接通過SMB傳輸大文件。

        3.還可以選用其他支持多線程文件復(fù)制的第三方的文件復(fù)制工具。

        七、結(jié)語

        SMB協(xié)議的故障排除是一個復(fù)雜的過程,涉及多個層面的檢查和配置。通過對連接性、協(xié)商、會話設(shè)置、樹連接和網(wǎng)絡(luò)適配器配置等問題的系統(tǒng)性分析和解決,可以顯著提高網(wǎng)絡(luò)共享的性能和穩(wěn)定性。隨著技術(shù)的不斷發(fā)展,各類新的網(wǎng)絡(luò)故障和挑戰(zhàn)也將持續(xù)出現(xiàn)。因此,持續(xù)的監(jiān)控和優(yōu)化是確保SMB協(xié)議高效運行的關(guān)鍵。

        參考文獻

        [1]周后兵.網(wǎng)絡(luò)數(shù)據(jù)包攔截與操縱技術(shù)的研究與應(yīng)用[D].成都:電子科技大學(xué),2007.

        [2]何偉,呂彬,周向軍.一種提高SMB協(xié)議代理文件下載性能的方法[J].計算機安全,2011(01):27-29.

        [3]齊寓.基于SMB協(xié)議的文件安全傳輸技術(shù)研究[D].哈爾濱:哈爾濱工程大學(xué),2015.

        [4]Elizabeth Ross, Deland Han. Advanced Troubleshooting Server Message Block (SMB)[EB/OL]. [2025-02-15].https://learn.microsoft.com/en-us/windows-server/storage/file-server/troubleshoot/troubleshooting-smb.

        [5]Padre Pedro, Han Liang. New SMB File Server 3.0 Features - Windows Server[EB/OL].2023-12-26[2025-02-15].https://learn.microsoft.com/en-us/troubleshoot/windows-server/high-availability/smb-3-file-server-features.

        [6]Jason Gerend. Overview of File Sharing Using the SMB 3 Protocol in Windows Server[EB/OL]. 2023-01-26[2025-02-15].https://learn.microsoft.com/en-us/windows-server/storage/file-server/file-server-smb-overview.

        [7]Han Liang," Anna Li. Negotiate, Session Setup, and Tree Connect Failures - Windows Server[EB/OL]. 2023-12-26[2025-02-15]. https://learn.microsoft.com/en-us/troubleshoot/windows-server/networking/negotiate-session-setup-tree-connect-fails.

        [8]Han Liang," Anna Li. Guidance for Troubleshooting SMB - Windows Server[EB/OL]. 2024-03-16[2024-12-15]. https://learn.microsoft.com/en-us/troubleshoot/windows-server/networking/troubleshoot-smb-guidance?source=recommendations.

        [9]Dhurata Jahiu, Alex Mihaiuc, and Mark Russinovich. RAMMap v1.61[EB/OL]. Learn.microsoft.com, 2022-07-20[2025-03-11]. https://learn.microsoft.com/en-us/sysinternals/downloads/rammap.

        [10]Han Liang, Anna Li, and Simonx Xu. Slow SMB files transfer speed[EB/OL].Learn.microsoft.com, 2025-2-14[2025-03-11]. https://learn.microsoft.com/en-us/troubleshoot/windows-server/networking/slow-smb-file-transfer.

        作者單位:保時捷工程技術(shù)研發(fā)(上海)有限公司

        責(zé)任編輯:王穎振 楊惠娟

        午夜精品人妻中字字幕| 色偷偷亚洲第一成人综合网址| 麻豆果冻传媒在线观看| 国产久热精品无码激情| 婷婷五月综合激情| 波多野结衣在线播放一区| 人妻少妇喷水意淫诱惑| 风韵人妻丰满熟妇老熟| 欧美午夜理伦三级在线观看| 情人伊人久久综合亚洲| 国产乱理伦片在线观看| 热久久这里只有| 国产一区二区三区蜜桃av| 国产熟人精品一区二区| 国产喷水1区2区3区咪咪爱av| 北条麻妃毛片在线视频| 一区二区三区中文字幕有码| 国产av一区二区三区天美| 高清日韩av在线免费观看| 国产成人a在线观看视频免费| 人妻忍着娇喘被中进中出视频| 国产人成亚洲第一网站在线播放 | 上海熟女av黑人在线播放| 亚洲精品www久久久| 91在线在线啪永久地址| 亚洲人成网站18男男| 亚洲无av高清一区不卡| 草草影院ccyy国产日本欧美 | 亚洲日韩欧美国产另类综合| 尤物网址在线观看| 人人妻人人澡人人爽人人精品 | 久久少妇呻吟视频久久久| 少妇被粗大猛进进出出男女片 | 男男受被攻做哭娇喘声视频| 国产天堂网站麻豆| 亚洲乱码中文字幕综合| 人妻少妇被粗大爽视频| 欧美性猛交xxxx三人| 日韩人妻无码免费视频一区二区三区| 日韩欧美一区二区三区中文精品| 亚洲福利第一页在线观看|