VPN үлкен жүктеулер кезінде үзіледі: алдымен кезекті оқыңыз
Қаныққан шығыс кезегі басқару трафигін де, қолданбаларды да кешіктіреді. Бос және жүктелген күйдегі әрекетті салыстырыңыз, содан кейін бір нәрсені өзгертіп, сынақты қайталаңыз.
Туннель күні бойы тұрақты, содан кейін үлкен жүктеу басталғанда үзіледі. Интерактивті сұраныстар бірінші тоқтайды, клиент уақыт біткенін хабарлайды, ал тасымалдау аяқталғанда байланыс қайтады. Бұл сурет қашықтағы сервердің істемей қалғанын емес, кезек пен өңдеуді көрсетеді, өйткені серверге уақытында жауап беру мүмкіндігі ешқашан берілмеді. Міндет — мұны бақыланатын жүктеме астында қайталап, дұрыс есептегіштерді оқу.
Әр іске қосуға бір айнымалыны өзгертіп, соңғы нүктені тұрақты ұстаңыз.
Қайталанатын жүктеме салыстыруын құрыңыз
Байланыс бос кезде базалық сызықты жазып алыңыз: барып-қайту уақыты, бірнеше қолданба сұранысы және туннельдің өз оқиғалар журналы. Содан кейін белгілі өлшемдегі жүктеуді бастап, ол жүріп жатқанда дәл сол өлшемдерді қайталаңыз. Соңғы нүктені, клиентті және сынақ мақсатын өзгеріссіз ұстаңыз, өйткені олардың екеуін бірге өзгерту сізге ештеңе айтпайды.
Қай оқиға бірінші пайда болатынына назар аударыңыз. Кез келген қатеден бұрын өсетін барып-қайту уақыты кезекті білдіреді; тұрақты кідіріспен қатаң уақыт бітуі басқа нәрсені, мысалы кілттерді жаңартуды немесе шот бойынша әрекетті білдіреді. Екі бейне әртүрлі келесі қадамдарға әкеледі. Бірдеңені өзгерту алдында бақылауды жазып қойыңыз.
Шығысты уақыт белгілерімен сақтаңыз, сонда жүктелген және бос іске қосуларды жол бойынша салыстыруға болады.
Жылдамдықты емес, кезекті оқыңыз
Тұтынушы байланыстары пакеттерді провайдердің жабдығында буферлейді, ал толы шығыс кезегі туннельді тірі ұстап тұратын кішкентай басқару пакеттерін қоса, барлығын кешіктіреді. Жоғары сан көрсететін жылдамдық сынағы бұл кідіріс туралы аз айтады, сондықтан бос байланыстағы сынақ өтеді, ал қаныққан байланыс сәтсіз аяқталады.
ping -c 20 -i 0.2 203.0.113.10 mtr -rwc 20 203.0.113.10 tc -s qdisc show dev eth0 ss -ti dst 203.0.113.10 nstat -az | grep -E 'Retrans|Timeout'
Жүктеме кезіндегі кідіріс сандарын бос күйдегілермен салыстырыңыз. Пакет жоғалтусыз ондаған миллисекундтан жүздікке дейінгі секіріс кезек; тұрақты кідіріспен жоғалту басқа ақауға меңзейді.
Құрылғыны және басқару жолын тексеріңіз
Шифрлау мен қайта жіберу процессор уақытын алады, ал шағын маршрутизатор немесе қызумен шектелген ноутбук бос емес кезде пакеттерді тастауы мүмкін. Бір процестің пайызын емес, жалпы жүктемені қадағалаңыз, өйткені ядродағы қайта жіберу мен үзілістерді өңдеу адамдар әдетте қарайтын жерде көрінбейді.
uptime mpstat -P ALL 1 3 dmesg | grep -i -E 'thermal|throttl' journalctl -u openvpn-server@server --since '10 min ago' | tail -20
Клиенттің уақыт бітуі жоспарланған кілт жаңартуымен немесе сессия саясатының оқиғасымен де сәйкес келуі мүмкін. Оқиғалар реті үшін тек қолданбаның қате хабарламасын емес, клиенттің өз журналын оқыңыз.
Бір нәрсені өзгертіп, қайталаңыз
Платформа қолдайтын жерде жүктеу жылдамдығын шектеңіз немесе жаппай трафикті интерактивті трафиктен төмен жіктеңіз, сонда кезек ешқашан толмайды. Содан кейін сол жұмыс жүктемесін қайталап, бұрынғыдай сол үш санды салыстырыңыз. Жылдамдық сынағын жақсартып, бірақ уақыт бітуін қалдыратын өзгеріс ештеңені түзеткен жоқ.
Барлық жерде уақыт шектеулерін көтеру және шифрлауды әлсірету — симптомды қай шекараның істен шыққанын анықтамай жоятын екі өзгеріс. Екеуі де жөндеу емес. Екеуі де істен шығуды кейінірек, оны телу қиынырақ жерге жылжытады.
Жаңа сұранысты және пайдаланушы шынымен сүйенетін қайта қосылу әрекетін сынаумен аяқтаңыз. Шағымды туғызған жүктеме астындағы тұрақтылық — жазып қоюға тұрарлық жалғыз нәтиже.