Korta perioder av hög paketförlust samt vid nerladdning i lite högre hastigheter

Permalänk
Medlem

Korta perioder av hög paketförlust samt vid nerladdning i lite högre hastigheter

Hej!

Jag har under en längre tid upplevt en del småbekymmer med paketförluster för inkommande trafik här hemma. Jag har Ownit som leverantör (1000/1000) i deras egna nät och skulle jag få tippa har det pågått i alla fall under hela detta år. Det påverkar inte daglig användning särskilt mycket vilket är anledningen till varför jag inte tagit tag i det tidigare men det är tillräckligt för att vara irriterande.

Jag använder en Debian-server med två nätverkskort som router och det är även där som mätningarna nedanför är ifrån.

För att sammafatta det hela så ser jag paketförlust mellan min utrustning och min ISPs vid dessa tillfällen:
- Korta perioder (runt 10-15 minuter) av runt 10% packetloss. Ibland lite lägre, ibland högre. Detta händer inte särskilt ofta men när det väl händer brukar det vara en gång per dag och ske under eftermiddagen eller kvällen. Vissa veckor har det nästan skett dagligen, andra veckor inte alls.
- Vid nerladdning i "högre" hastigheter. Ett exempel är att ladda ner spel från Steam. Runt 10% precis som ovan.

Jag ser också konstanta paketförluster över lång tid (verkar också vara eftermiddagar/kvällar) som sträcker sig mellan 0,5% till 2%. Knappt märkbart vid vanlig användning dock.

Så vid dessa fall så ser jag packet loss (enligt mtr) på all inkommande trafik mellan min router och min internetleverantörs utrustning. Detta påverkar inte bara ICMP (vilket vet jag kan nerprioriteras ibland) utan all trafik, både IPv6 och IPv4, TCP/UDP osv. När förlusten är högre så påverkas den vanliga användningen negativt och man ser typiska problem som långsam DNS-uppslagning, allmänt surfande och livestreams stannar upp och buffrar konstant. Sitter man och skjuter i datorspel så blinkar packet loss-ikoner för fullt och det märks att saker och ting inte registreras. Jag tillhandahåller också en TeamSpeak-server här hemma på servern/routern och folk låter som robotar när detta väl sker.

Jag har satt upp SmokePing på servern för att enklare grafa upp hur det kan se ut. Här är ett exempel på en spontan förlust som pågick under 15-20 minuter. Här är ett annat exempel på lite lägre förluster men under längre tid, mtr (både v4/v6) under samma period.

Här är ett exempel på en wget från tele2s speedtest-server med en mtr körandes under samma tid. Annat exempel på nerladdning från Steam som är låst till 50MB/s. Observera att alla dessa exempel är gjorda mitt i natten där normala människor vanligtvis sover. Nerladdningen är märklig och det verkar variera lite beroende på tjänst och möjligtvis vad man laddar ner. Inte sett något mönster. Laddar jag ner ifrån Ownits speedtest-server så är inte förlusten lika hög som exempel. Jag är ingen expert på iperf men detta test mot en publik iperf-server bör bekräfta att det även påverkar andra protokoll än ICMP. Det undre testet är gjort samtidigt som jag laddar ner en fil från tele2s server.

För att utesluta att problemet är lokalt så har jag testat med en annan server "direkt in i väggen" samt med flera olika kablar. Den enda gemensamma nämnaren är Debian. Jag kan också köra iperf fullt i båda riktningarna mellan servern och en lokal dator utan några som helst förluster eller problem. Ser heller inga droppade paket på inkommande trafik på det externa nätverkskortet i Linux. Jag upplever heller inga problem med trafik utåt.

Jag är mest nyfiken om andra har upplevt liknande bekymmer med Ownit eller har idéer på vad det kan bero på. Finns det något mer jag kan pröva? Jag har sett några trådar där folk haft liknande problem men där har det varit högre upp i nätverket och dessa människor har också suttit i stadsnät. Kontaktade Ownits support via mail för cirka tre veckor sedan men inte fått något svar än. Till deras försvar nämnde jag att detta inte är prioriterat på något sätt.

/Daniel

EDIT några månader senare: Det visade sig vara kapacitetsproblem i deras nät och problemet löste sig efter ett underhåll/uppgradering.

Permalänk
Medlem

Disclaimer: Min kunskap om ping/traceroute/mtr är högst teoretisk, jag har aldrig kollat på källkoden.

Min hypotes: Routern närmast dig är kass/överbelastad och slänger paket på väg åt ditt håll (inkommande). Övriga internet funkar på det hela taget fint.

Motivering: Oavsett vilket protokoll du anger för mtr så kommer verktyget vara beroende av ICMP Time Exceeded-meddelanden som kommer tillbaka. För varje router i routen till slutdestinationen skickar mtr ett IP-paket med Time-to-Live anpassat för den routern. mtr kollar om just den routern svarar med Time Exceeded och visar dig resultatet per router.

Om routern närmast dig slänger slumpmässiga inkommande (ICMP Time Exceeded-)paket så borde resultatet (över tid) bli att mtr visar lika mycket packet loss för alla routrar i routen. Vilket är precis vad mtr gör för dig.

Om det är utgående paket som slängs så hade mtr visat exakt samma sak, men det känns ju osannolikt på grund av iperf-resultatet. Man kan gissa att iperf-resultatet är bättre med avseende på packet loss om du inte kör reverse.

Att köra mtr mot 1.1.1.1 och samtidigt ladda ner från något helt annat ställe... jag ser inte vad man skulle kunna dra för slutsatser av det.

Permalänk
Medlem

Tack för svaret. Min teori var belastningsproblem (i och med att saker och ting verkar vara värre när folk är hemma) men det förklarar inte nerladdningarna mitt i natten tycker jag. Och jag vet inte vad resultatet av dessa brukar vara, är packet loss vanligt eller är det snarare så att man ser en begränsad bandbredd istället? Här är en "omvänd mtr" från en kompis dator under en period med ~10% packet loss där sista hoppet som är så vackert censurerat är min externa adress. Det känns som detta kanske stärker din teori en aning. Och precis som du säger så ser jag inga problem med utgående trafik. Här är ett iperf-exempel (TCP) där jag skickar data mot Ownits egna iperf-server. Tyvärr fungerar inte tester åt andra hållet där deras server skickar data till mig.

Skrivet av KAD:

Att köra mtr mot 1.1.1.1 och samtidigt ladda ner från något helt annat ställe... jag ser inte vad man skulle kunna dra för slutsatser av det.

Tanken var bara att pinga någon slumpad host för att påvisa hög packetloss sker vid nerladdning. Det var inte djupare än så.