06. januar 2001 - 18:39Der er
10 kommentarer og 1 løsning
Loadbalacing/traffic Shaping
Oki.. til ALLE jer Linux/Unix guru\'er derude, jeg vil meget gerne have noget information om Loadbalacing på to netkort.
Problemstillingen i dette er, jeg gerne vil have nogle Faq\'s, som fortæller om det og nogle FAQ\'s som fortæller hvordan man gør både teoretisk og fysisk, hvis man kan sige det.
Anvendelse : Jeg vil gerne koble to ADSL\'er på en computer, som så bruges til router for resten af netværket. Det der skal ske er at hvis 1 fra netværket downloader eller uploader, så skal computeren vælge den ADSL forbindelse der er mindst brugt. Det gør ikke noget, hvis der skal bruges mere end 1 netkort.
Umiddelbart er det meget svært at gøre noget sådant uden en tilsvarende loadbalancing \"dims\" i den anden ende. Det nærmeste du kommer er at bruge en proxy (squid) og lade den om det, men det bliver ikke godt.
Beaviz >> Snakker du om at koble ADSL\'erne sammen, så de kører ligesom ISDN på 2 kanaler, så jeg får dobbelt ydelse, så ved jeg godt dette ikk er godt.. I så fald er det ikke det jeg mente..
Hvis du på den anden side mener at Det er svært at få fat i et program, som holder øje med load på hver netkort, hvis vi siger at hver ADSL får deres eget netkort, og så router traffikken igennem hver af dem..
det betyder at hvis der sidder en bruger og downer med lad os sige MAX på den ene ADSL, så sikre computeren at en anden bruger bliver sat over på en anden ADSL forbindelse, så han også får en god ydelse.
Jeg kan sagtens sige til computeren at den IP skal routes igennem det netkort og omvendt.. dog vil jeg gerne have det skal ske lidt mere automatisk..
Ellers må jeg tage mig til takke for at jeg kan sige at hvis der kommer noget igennem på den port, så skal den første ADSL bruges ellers skal den anden bruges.
:) Det der er problemet når du kun sidder i den ene ende, er som du også selv antyder, at du umuligt kan forudsige hvad der kommer fra den anden ende, og hvornår/hvor hurtigt. Derfor er squid proxyen den eneste løsning, og den er imho ringe.
Husk, at når du fordeler routerne, giver det en bedre fordeling, hvis du \"vender maskerne om. Umiddelbart ville man dele load\'en mellem de to linier ved at sende 0.0.0.0/128.0.0.0 ud på det ene netkort og 128.0.0.0/128.0.0.0 ud på det andet. Problemet med dette er, at mange hosts ligger hos de samme få store udbydere, indenfor det samme adresserum. En bedre load opnås derfor ved at bruge routerne 0.0.0.0/0.0.0.1 og 0.0.0.1/0.0.0.1. Derved bliver det sidste bit, der afgør fordelingen, istedet for første. Vær dog også lige opmærksom på at sende de to udbyderes adresser ud via det relevante interface. Hvis dine udbydere er f.eks. TDK og WorldOnline, er der ingen mening i at sende TDK trafik ud på WorldOnline forbindelsen og omvendt.
Du kan lave en mere ægte loadsharing ved at have et script kørende, der holder øje med belastningen af de to netkort og ændrer på routningen, hvis det ene bliver væsentligt mere belastet end det andet. Det kræver dog, at du kun har eet public ip-adresserum, eller er sikker på, at begge linier accepterer trafik fra begge adresserum. Hvis det er to separate udbydere for hver af linierne bør de ikke acceptere indgående trafik (dvs FRA dig), der ikke kommer fra dit adresserum. Hvis der sker adressekonvertering undervejs (NAT), er det en endnu mere speget affære. Så bliver du nødt til at holde øje med tcp-sessioner, udp strømme osv. For at sige det kort: \"Adr badr\"
svindler: du er jo GENIAL, mht 0.0.0.0/0.0.0.1 - 0.0.0.1/0.0.0.1 fordelingen! Du er en skat, det har jeg aldrig tænkt på før, men self! Genialt!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.