İki Windows maşını arasında fayl köçürməsi hər ikisi eyni VPN-ə qoşulana qədər sürətlidir, sonra isə çökür, halbuki həmin cütlük üzrə buraxılış testi hələ də xətt sürətinə yaxın nəticə verir. Bu fərq diaqnozun özüdür: əlaqə yaxşıdır və köçürmənin özü üçün nə isə daha pis yol seçir. O nə isə adətən SMB3 çoxkanallılığıdır və o, məhz bunun üçün dizayn edildiyi işi görür. Əlavə kanalı tənlikdən çıxarın və köçürmə fiziki əlaqəyə qayıdır.

Simptom ən yavaş kanalını gözləyir

Çoxkanallılıq bir SMB sessiyasına bir neçə TCP bağlantısı işlətməyə imkan verir: müştəri ilə server arasındakı hər uyğun ünvan cütü üçün bir bağlantı. Hər iki maşın həm yerli şəbəkədə, həm də eyni tuneldə olduqda Windows yerli şəbəkə ünvanlarını və tunel ünvanlarını cütləşdirə və hər iki cütü yararlı sayır. Nəticədə sessiyada fiziki əlaqənin ehtiyac duyduğundan çox kanal olur və onlardan biri qat-qat yavaşdır.

Bu, uğursuzluq deyil. Sadəcə gözləyir, çünki sessiya öz ən yavaş kanalından tez bitə bilməz.

Buna görə buraxılış testi sağlam görünə bilər, halbuki köçürmə sürünür: tək axınlı ölçmə bir yolu seçə bilər, köçürmə isə iki yol arasında bölünmüşdü. Hər hansı adapter parametrini dəyişməzdən əvvəl kanallar siyahısını oxuyun və onu köçürmə hələ işləyərkən oxuyun, çünki boş sessiya heç nə göstərmir. Qeyd etdiyiniz şey hər kanalın arxasındakı interfeysi adlandırmalıdır, sadəcə nəticənin nə qədər yavaş hiss olunduğunu yox.

İkinci kanalın mövcud olduğunu təsdiqləyin

İki cmdlet bu suala birbaşa cavab verir. Bağlantılar siyahısı istifadə olunan kanalları, sessiya xülasəsi isə bağlantının özünü göstərir. Yavaş köçürmə zamanı hər ikisini işə salın.

Get-SmbMultichannelConnection
Get-SmbConnection

Eyni server üçün seçilmiş kimi işarələnmiş birdən çox sətir axtarın, sonra şübhəli sətirdəki müştəri ünvanını həll edin. Əgər bu ünvan tunel adapterinə aiddirsə, ikinci yol realdır və təsdiqlənib. Əgər bütün sətirlər fiziki interfeysə aiddirsə, çoxkanallılıq sizin probleminiz deyil və köçürmə əlaqəsiz bir səbəbdən yavaşdır. Bu təsdiqi əvvəlcə edin, çünki təmir kifayət qədər müdaxiləcidir və bir dəqiqəlik sübuta layiqdir.

Get-NetIPAddress -IPAddress 10.20.30.44

Buradakı ünvanlar nümunədir. Onları öz çıxışınızın bildirdiyi ilə əvəz edin, çünki ünvanı bloqdan köçürmək işləyən əmri çaşdırıcı xəta mesajına çevirməyin yoludur.

Tuneli SMB-dən çıxarın, sonra yenidən ölçün

Çoxkanallılığı söndürmək diaqnozu təsdiqləməyin ən sürətli yoludur və geri qaytarıla bilər. Müştəri parametrini köçürməni edən maşında, server parametrini isə paylaşımı saxlayan maşında tətbiq edin, çünki tərəflərdən yalnız biri əlavə kanalı canlı saxlaya bilər. Dəyişiklik mövcud deyil, yeni bağlantılara aiddir, ona görə açıq sessiya onu keçirir. Bir şey ölçməzdən əvvəl hər iki maşını yenidən başladın və ya heç olmasa paylaşıma açılan bütün tutacaqları bağlayın.

Set-SmbClientConfiguration -EnableMultiChannel $false -Force
Set-SmbServerConfiguration -EnableMultiChannel $false -Force

Yeni vəziyyəti təsdiqləyin, sonra serverin indi müştərilərə nə elan etdiyinə baxın.

Get-SmbClientConfiguration | Select-Object EnableMultiChannel
Get-SmbServerNetworkInterface | Format-List *

Tunel interfeysi o elan olunan siyahıdan çıxmalıdır. Əgər çıxmırsa, parametr səhv uc nöqtəyə düşüb və ya köhnə sessiya hələ açıqdır. Əgər fayl paylaşımı sadəcə tuneldən istifadə etməməlidirsə, server komponentini həmin adapterdən ayırın, bu tuneli hər digər xidmət üçün yararlı saxlayır.

Get-NetAdapterBinding -Name "OpenVPN Data Channel Offload"
Disable-NetAdapterBinding -Name "OpenVPN Data Channel Offload" -ComponentID ms_server

Kanalları silməyi iddia etmədən yerli şəbəkə yolunu üstün tutun

İnterfeys metrikası Windows-a yeni bağlantılar üçün hansı yolu üstün tutacağını deyir. O, çoxkanallılığın artıq açmağa qərar verdiyi kanalı silmir. Tunelin metrikasını qaldırmaq yenə də dəyərlidir, çünki əlaqəsiz trafiki yavaş yoldan uzaq saxlayır və üstün tutulan marşrutu proqnozlaşdırıla bilən edir, amma bu filtr deyil, yumşaq bir təkan.

Get-NetIPInterface | Sort-Object InterfaceMetric | Select-Object InterfaceAlias, InterfaceMetric
Set-NetIPInterface -InterfaceAlias "OpenVPN Data Channel Offload" -AutomaticMetric Disabled -InterfaceMetric 1000

Ləqəbi yazmaq əvəzinə həmin çıxışdan köçürün, çünki bəzi quraşdırmalar adapter adını lokallaşdırır və ingilis sətri uyğun gəlməyəcək.

Sonra hər iki rəqəmi yenidən ölçün: fayl köçürməsini və həmin cütlük üzrə buraxılış testini. Əgər buraxılış testi heç vaxt yavaş olmadığı halda köçürmə bərpa olunursa, səbəb çoxkanallılıq idi və dayana bilərsiniz. Əgər hər ikisi çökürsə, tunel darboğazdır və çoxkanallılıq onu yalnız gücləndirdi. Əgər hər iki yol düzgün göründüyü halda köçürmə yavaş qalırsa, qalan problem paylaşımda, yaddaşda və ya filtr sürücüsündədir və bu başqa bir araşdırmadır.

Əlaqəli məqalələr