Kopiranje datoteke između dva Windows računara je brzo dok se oba ne pridruže istom VPN-u, a tada se sruši, iako test propusnosti preko istog para još uvijek prijavljuje skoro punu brzinu linije. Ta razlika je dijagnoza: veza je u redu i nešto bira lošiji put za samo prenošenje. To nešto je obično SMB3 višekanalnost, koja radi tačno ono za šta je napravljena. Izvadite dodatni kanal iz jednačine i kopija se vraća na fizičku vezu.

Simptom čeka svoj najsporiji kanal

Višekanalnost dozvoljava jednoj SMB sesiji da koristi nekoliko TCP veza, po jednu za svaki odgovarajući par adresa između klijenta i servera. Kad su oba računara na LAN-u i na istom tunelu, Windows može upariti LAN adrese i adrese tunela i oba para smatrati upotrebljivim. Sesija na kraju ima više kanala nego što fizičkoj vezi treba, a jedan od njih je mnogo sporiji.

To ne pada. Ono čeka, jer sesija ne može završiti brže od svog najsporijeg kanala.

Zato test propusnosti može izgledati ispravno dok kopija puže: mjerenje jednog toka može odabrati jedan put, a prenošenje je bilo raspoređeno na dva. Pročitajte listu kanala prije nego promijenite bilo koju postavku adaptera, i čitajte je dok kopija još traje, jer neaktivna sesija ne pokazuje ništa. Ono što zapišete treba imenovati interfejs iza svakog kanala, a ne samo koliko je rezultat bio spor.

Potvrdite da drugi kanal postoji

Dvije cmdlet naredbe odgovaraju na pitanje direktno. Lista veza pokazuje kanale u upotrebi, a sažetak sesije pokazuje samu vezu. Pokrenite obje tokom spore kopije.

Get-SmbMultichannelConnection
Get-SmbConnection

Tražite više od jednog reda označenog kao odabran za isti server, zatim razriješite adresu klijenta u sumnjivom redu. Ako ta adresa pripada adapteru tunela, drugi put je stvaran i potvrđen. Ako svaki red pripada fizičkom interfejsu, višekanalnost nije vaš problem i kopija je spora iz nepovezanog razloga. Uradite tu potvrdu prvo, jer je popravka dovoljno ometajuća da zaslužuje minutu dokaza.

Get-NetIPAddress -IPAddress 10.20.30.44

Adrese ovdje su zamjenske. Zamijenite ih onim što prijavljuje vaš vlastiti izlaz, jer kopiranje adrese s bloga je način na koji radna naredba postaje zbunjujuća poruka o grešci.

Izvadite tunel iz SMB-a, pa mjerite ponovo

Isključivanje višekanalnosti najbrži je način da potvrdite dijagnozu, i reverzibilno je. Primijenite klijentsku postavku na računaru koji kopira, a serversku na računaru koji hostuje dijeljeni resurs, jer bilo koja strana sama može održati dodatni kanal živim. Promjena važi za nove veze, a ne za postojeće, pa otvorena sesija je preživi. Ponovo pokrenite oba računara ili barem zatvorite svaki handle prema dijeljenom resursu prije nego bilo šta mjerite.

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

Potvrdite novo stanje, pa pogledajte šta server sada oglašava klijentima.

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

Interfejs tunela treba ispasti s te oglašene liste. Ako ne ispadne, postavka je sletjela na pogrešan kraj ili je stara sesija još otvorena. Ako dijeljenje datoteka jednostavno ne smije koristiti tunel, umjesto toga odvežite serversku komponentu s tog adaptera, što tunel ostavlja upotrebljivim za svaku drugu uslugu.

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

Preferirajte LAN put bez pretvaranja da briše kanale

Metrika interfejsa govori Windowsu koji put preferirati za nove veze. Ona ne uklanja kanal koji je višekanalnost već odlučila otvoriti. Podizanje metrike tunela ipak se isplati, jer drži nepovezani saobraćaj dalje od sporog puta i čini preferiranu rutu predvidljivom, ali to je guranje, a ne filter.

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

Kopirajte alias iz tog izlaza umjesto da ga kucate, jer neke instalacije lokalizuju naziv adaptera i engleski niz se neće poklopiti.

Zatim ponovo izmjerite oba broja: kopiranje datoteke i test propusnosti preko istog para. Ako se kopija oporavi dok test propusnosti nikad nije bio spor, višekanalnost je bila uzrok i možete stati. Ako se oba sruše, tunel je usko grlo i višekanalnost ga je samo pojačala. Ako kopija ostane spora dok oba puta izgledaju ispravno, preostali problem živi u dijeljenom resursu, pohrani ili drajveru filtera, što je druga istraga.

Povezani članci