Vertraging internet met Peer-to-Peer programma's
referentie Z169C
Veel gebruikers klagen over de snelheid en stabiliteit van hun internet-verkeer bij het gebruik van een peer-to-peer programma als Bittorrent, KaZaa, Emule of verwant programma. Dit document geeft aan wat een waarschijnlijke oorzaak van het probleem kan zijn en wat er mogelijk aan kan worden gedaan. Niet in alle gevallen is een perfecte oplossing mogelijk, vaak betekent het oplossen van het probleem het kiezen tussen twee kwaden.
De oorzaak van het probleem
De oorzaak van het probleem is te vinden in de manier waarop de meeste peer-to-peer programma's werken en de beperkingen van het gebruik van een router. Dit is te illustreren aan de hand van een voorbeeld:

Een router verbindt twee netwerken met elkaar: het netwerk in het pand of huis en het grote netwerk van het internet. Bovenstaande afbeelding laat sterk vereenvoudigd zien wat er in een router gebeurt bij het opzetten van de verbinding: de computer (links) zoekt contact via het internet met een "server" (het uitroepteken aan de andere kant). Één zo'n verbinding (de blauwe streep van links naar rechts) wordt een "NAT sessie" genoemd. De router er tussenin houdt bij dat die ene computer een verbinding heeft met die ene server. Daarvoor gebruikt de router een apart stukje geheugen, genaamd de "NAT tabel".
In het voorbeeld aangegeven met een 
Als een andere computer in hetzelfde netwerk ook het Internet op wil, houdt de router dit bij in zijn NAT tabel:

Hierboven is te zien wat er dan gebeurt.
Een Peer-to-Peer programma zoals Emule of Bittorrent probeert met zo veel mogelijk andere computers (servers) tegelijk een verbinding op te bouwen om overal (stukjes van) bestanden vandaan te halen. Voor iedere verbinding moet de router apart bijhouden dat de verbinding bestaat en welke computer ermee verbonden is, ook al wordt de verbinding op dat specifieke moment niet gebruikt voor gegevensoverdracht. Daarom loopt de router pas na verloop van tijd "vol".

Op een gegeven moment is de NAT tabel "vol" en loopt de router vast. Het enige wat dan nog werkt, is het uit- en weer aanzetten van de router. U "leegt" hiermee namelijk het deel van het geheugen van de router waar de NAT tabel in staat. Het probleem is hiermee niet opgelost, maar zal even niet optreden tot de NAT tabel weer vol is
Meer (technische) achtergrond kunt u vinden onder de link:
Routers: debuggen van langzaam en vertragend internet.
Mogelijke oplossingen
De oorzaak ligt hem in een combinatie van hardware en een bepaalde vorm van computergebruik.
Mogelijke oplossingen zijn:
- Aantal Peer-to-Peer gebruikers beperken.
Gebruik op niet meer dan één computer in hetzelfde netwerk een Peer-to-Peer programma, anders wordt de router van twee kanten tegelijk "volgestouwd" en zal er sneller een probleem optreden.
- Een zwaardere router nemen.
Met name oudere routers (van voor 2004) zijn nooit bedoeld voor gebruik met peer-to-peer programma's. Deze waren in die tijd nog niet zo populair, dus hebben deze routers een vrij krap bemeten NAT-tabel en lopen daardoor gemakkelijk vast. Nieuwere en "zwaardere" routers hebben meer geheugen voor NAT sessies, dus dit kan een oplossing voor het probleem zijn. Maar het is nooit een garantie.
- Routerdeel uitzetten.
Indien men beschikt over een ADSL router en er maar een enkele computer met de router verbonden is, kan men de router-functie uitzetten. Hierdoor is ook de beperking van het aantal NAT sessies verdwenen, maar het brengt wat extra beperkingen met zich mee voor andere functies van de router. Zo werkt dit niet met KPN aansluitingen en worden onder meer telefonie over internet (VoiP) en firewall mogelijkheden van de router onmogelijk. Meer hierover kan worden gevonden onder de links:
'Bridge mode (nieuwere modellen)' of '
Bridge mode (oudere modellen)'.
- Andere Peer-to-Peer programma's.
Probeer eens een ander Peer-to-Peer programma of verander de instellingen van het programma zodat het zich wat bescheidener opstelt.
- Verandering aantal NAT sessies in de router.
Het is mogelijk om een ZyXEL ADSL router zo in te stellen dat hij iedere computer (client) een bepaald maximaal aantal NAT-sessies kan geven, tot aan het maximum dat het type aan kan. Dit is een instelling die niet altijd zomaar toegankelijk is, hiervoor moet echt ingegrepen worden in de gevorderde instellingen van het apparaat, met een aparte toegang welke Telnet wordt genoemd. De juiste procedure om Telnet te gebruiken wordt uitgelegd onder de link:
Telnet.
Handel verder als volgt:
- Log in via Telnet.
- Ga in het hoofdmenu naar 24
.
- In het menu "system maintenance" tikt u 8
.
Hierna ontstaat onder in het scherm een cursor die er zo uitziet: RAS>
- Tik hier sys edit autoexec.net
.
U ziet de regel verschijnen:
"
EDIT cmd: q(uit) x(save & exit) i(insert after) d(elete) r(eplace) n(ext)".
- Tik in i en druk vervolgens op de spatiebalk.
- Tik hier in de tekst ip nat session 256 gevolgd door
. Dit gaat uit van 256 als gewenst aantal, vervang het desgewenst door een ander getal. Gebruik nooit meer dan het maximum van het apparaat. Welk getal het beste werkt, hangt af van het model, de firmware en de situatie in het netwerk .
- Tik x om op te slaan, druk op
(de escape--toets) tot u weer in het hoofdmenu bent en kiest dan voor 99 om telnet te verlaten.
- Zet het apparaat even uit- en weer aan.
Wat is nu een geschikt aantal NAT sessies voor dit commando? 256? 1024?
Dat is afhankelijk van het aantal gebruikers in het netwerk en hun internetgedrag.
- Bij een relatief laag aantal wordt de NAT tabel in meerdere gelijke stukken gedeeld en zal een gebruiker van Peer-to-Peer programma's snel tegen de limiet aanlopen, waarbij het internet-verkeer voor hem of haar vertraagt. Maar er is geen kans dat die ene gebruiker de andere wegdrukt, want ieder heeft een redelijk aantal sessies voor zich gereserveerd.
- Bij een relatief hoog aantal treedt de vertraging van Peer-to-Peer programma's minder snel op. Maar het kan wel voorkomen dat het Peer-to-Peer programma op een bepaald moment alle andere gebruikers "wegdrukt", waardoor deze het internet vrijwel niet kunnen benaderen.
Het is dus een zaak van uitproberen.
Relevante links:
Bridge mode (nieuwere modellen) of
Bridge mode (oudere modellen)
Configuratie MAC OS
Configuratie Windows
Routers: debuggen van langzaam en vertragend internet
Telnet