CreateYourVPN Academy
Kurs: hvordan alt fungerer

Ruter og lastbalansering

Hva en rute er i CreateYourVPN, hvordan du oppretter én på et minutt, hvorfor tomme ruter er nyttige, og hvordan systemet fordeler brukere mellom servere.

En rute er broen mellom infrastrukturen din og det brukeren ser. Du administrerer servere og inbounds, mens brukeren ser en kort liste med «servere» i appen sin — og hver oppføring i den listen er faktisk en rute.

En rute = én linje i brukerens app

En rute er en gruppe inbounds under ett navn i klientens abonnement. Regelen er enkel:

Én ikke-tom rute = én oppføring i brukerens serverliste.

En rute kan romme én enkelt inbound — eller ti av dem fordelt på forskjellige servere. Brukeren ser aldri dette: de velger «🇺🇸 USA», og hvilken spesifikk server de havner på, avgjøres av lastbalansereren — mer om det nedenfor.

Navnet brukeren ser, er navnet på den valgte inbounden: gi inboundene dine tydelige navn («🇺🇸 New York», «🇺🇸 Dallas»), så er det nøyaktig det brukeren vil se.

Når du kobler til din første server, oppretter systemet automatisk en standardrute og legger den første inbounden i den — derfor fungerer alt rett ut av boksen uten en eneste innstilling. Ruter kommer inn i bildet når du vil ha mer: flere land, en dedikert «streaming»-rute, og så videre.

Opprette en rute

På klyngesiden, i seksjonen «Ruter», klikker du «Ny rute». Veiviseren har tre seksjoner:

  1. Slik ser klienter denne ruten — navnet (f.eks. 🇺🇸 USA) og et flagg. Dette er rutens «skilt».
  2. Lastbalanseringsalgoritme — «Minst belastet etter trafikk» (standard) eller «Round-robin». Forskjellen forklares nedenfor.
  3. Inbounds i pool — hvilke inbounds som tilhører ruten. Denne seksjonen er valgfri: du kan opprette en tom rute og fylle den senere ved å dra og slippe.

En inbound kan bare tilhøre én rute. Hvis du velger en inbound som allerede er tatt av en annen rute, flyttes den til den nye. Slik garanterer systemet at trafikken til hvert inngangspunkt styres av nøyaktig ett sett med regler.

Topologidiagrammet: ruter på et blunk

På klyngesiden vises rutene i et levende diagram: servere med sine inbounds til venstre, ruteboksene til høyre. Inbounds kan dras med musen: ta tak i en inbound, slipp den i en annen rute — ferdig. Det finnes også en sone kalt «Ikke tilknyttet» — slipp en inbound der for å koble den fra alle ruter.

Selve ruteboksene kan også omorganiseres (med draholdet eller pilene) — det er ren visuell rekkefølge for din egen bekvemmelighet.

Tomme ruter

En rute uten en eneste inbound tegnes med stiplet kant og har ingen «rørforbindelse» til distribusjonspunktet — et hint om at brukerne ikke kan se den. Tomme ruter er praktiske plassholdere: opprett «🇯🇵 Japan» på forhånd, og når en japansk server dukker opp, drar du en inbound inn — ruten våkner til liv.

Den motsatte situasjonen fremheves også: har du inbounds utenfor enhver rute, varsler panelet deg — «inbound(er) er ikke i noen rute — klientene kan ikke se dem ennå».

Lastbalansering: hvem havner på hvilken server

Når en bruker ber om en tilkobling, velger systemet for hver rute én inbound fra poolen — i sanntid, basert på ferske servermålinger (de samme som i leksjon 3). Det finnes to algoritmer:

«Minst belastet etter trafikk» (standard)

Systemet ser på hvor mye ledig båndbredde per bruker hver server har igjen: den tar kanalkapasiteten, trekker fra gjeldende trafikk, og deler på antall tilkoblede brukere. Serveren med størst slingringsmonn vinner. Det er rettferdig balansering «etter reell belastning»: en svak, mettet server får ikke nye brukere, selv om den formelt sett har færre personer på seg.

Systemet estimerer kanalkapasiteten på egen hånd — ut fra observerte topper i ekte trafikk (en topp «avkjøles» gradvis hvis serveren ikke har vært belastet på en stund).

«Round-robin»

En enkel regel: en ny bruker går til serveren som akkurat nå har færrest personer — justert for serverens koeffisient. Koeffisienten er en vekt: en server med koeffisient 2.0 behandles som «dobbelt så romslig» og vil motta omtrent dobbelt så mange brukere som en nabo med 1.0. Dette lar deg fordele belastningen rettferdig mellom maskiner av forskjellig størrelse.

Hvis en server i poolen ikke har et kapasitetsanslag ennå (si at serveren er helt ny og ikke har sett noen trafikktopper), faller ruten elegant tilbake på round-robin — slik at avgjørelser alltid tas på data som faktisk finnes.

Når rebalansering skjer

Konstant — og automatisk. Servervalget beregnes på nytt ved hver forespørsel med ferske målinger: hvis belastningen skifter, begynner nye brukere å havne på ledigere servere. Samtidig prøver systemet å holde på det samme valget for en gitt bruker når forholdene er like, slik at «serveren» deres ikke hopper frem og tilbake.

Og enda et sikkerhetsnett: servere som overvåkingen anser som utilgjengelige, ekskluderes fra utvelgelsen — mer om det i leksjon 7.

Nøkkelpunkter

  • En rute er «skiltet» for en gruppe inbounds; en ikke-tom rute = en linje i brukerens app.
  • Én inbound tilhører bare én rute. En inbound utenfor enhver rute er usynlig for klienter.
  • Tomme ruter er en helt normal plassholder: en stiplet boks, skjult for brukerne.
  • To algoritmer: etter ledig båndbredde (smart, standard) og round-robin med vekter.
  • Balansering skjer i sanntid: beregnes på nytt ved hver tilkobling basert på gjeldende målinger.

Neste steg

On this page