Отворање споделена папка преку VPN и чекање додека списокот на папката лази е познато искуство, а првиот инстинкт е да се обвини пропусноста. Обично врската е речиси неискористена. Протоколот го поминува времето чекајќи одговори, а секое чекање чини целосен круг што локалната мрежа никогаш не го наплатувала. Поправете ја формата на работата и споделувањето повторно станува употребливо.

Далечната работна копија е со погрешна форма

SMB отвора датотеки, чита метаподатоци и потврдува во многу мали размени. Работна копија на контрола на верзии на поврзан диск претпоставува латентност на локален датотечен систем и чита многу мали датотеки. Десктоп база на податоци влече страници додека корисникот работи. Секое од овие го претвора доцнењето во множител, бидејќи трошокот расте со бројот на размени што ги прави операцијата; затоа тунел од 40 ms претвора неколку стотини операции во неколку секунди. Големината на товарот е речиси неважна во таа аритметика.

Трошокот за шифрирање е мал дел од тоа; загубата е полоша, бидејќи едно повторно испраќање плус урнат прозорец за заситување чини многу повеќе од вклучените бајти.

Бројте кругови пред мегабајтите

Измерете го доцнењето пред да купите капацитет. Еден ping ви кажува што плаќа секоја размена.

ping -c 10 fileserver.example.net

Резимето дава минимално, просечно и максимално време на круг, а расејувањето е важно колку и просекот. Помножете го просекот со бројот на размени што ги прави списокот на папката и споредете го со времето што навистина го гледате. Ако една голема датотека се пренесува брзо додека прелистувањето е бавно, ограничувањето се латентноста и бројот на барања. Додавањето десет пати поголем капацитет на врска што никогаш не се заситува не менува апсолутно ништо.

Преместете ја работата, не бајтите

Сменете каде се случува работата наместо да плаќате за поширока цевка. Служете го складиштето наместо да го монтирате и копирајте наеднаш со алатка што праќа само разлики.

rsync -av --info=progress2 ./project/ [email protected]:/srv/share/project/

Кога складиштето се служи, како што прави hgweb или далечен Git, клиентот работи на локален клон, па неговите повикувања на датотечниот систем никогаш не го преминуваат тунелот. rsync ги поминува двете страни и праќа изменети блокови, отстранувајќи го најголемиот дел од размените што ги плаќа наивна копија. Десктоп базата на податоци припаѓа на серверски мотор, а клиентот е сведен на интерфејс, или целиот клиент работи на внатрешен домаќин. Секоја опција го менува тоа на колкава латентност е изложен протоколот, и тоа е поентата.

Застојот при иста големина е симптом на MTU

Големите преноси што запираат по приближно исто количество податоци, додека ping и малите страници работат, укажуваат на големината на пакетот, а не на пропусноста.

ping -M do -s 1400 -c 3 fileserver.example.net

Успешен тест значи дека IP пакет од 1428 бајти поминува по патеката без фрагментација, бидејќи заглавјата на ICMP и IP додаваат 28 бајти. Неуспех со знамето за забрана на фрагментација укажува дека употребливата MTU на тунелот е помала отколку што претпоставува серверот. Сервер што испраќа бафери од 9000 бајти на патека од 1500 бајти присилува фрагментација или отфрлање, а откривањето на MTU на патеката може тивко да пропадне кога ICMP се филтрира. Намалете ја MTU на тунелот, вклучете mssfix во OpenVPN, или намалете ги баферите на серверот, потоа повторно пуштете го истиот пренос за потврда.

Измерете го јазот што е важен

Изведете ја истата операција на три начини каде политиката дозволува: локално, преку тунелот и по директен интернет пат. За секој запишете го времето на круг, брзината на еден голем тек и колку време трае список на папка или отворање на апликација. Споредбата на локалното извршување со извршувањето преку тунелот покажува кој трошок доминира. Копија што завршува бавно укажува на проблем со брзина или доцнење, додека копија што умира на постојана точка укажува на големина на пакет или уред што чува состојба на патеката.

Кога се влечат само првите мегабајти, гледајте автентикација и метаподатоци; кога сето лази, гледајте капацитет и загуба. Поправете ја соодветната причина и престанете да очекувате WAN врската да се однесува како кабел на локална мрежа.

Поврзани статии