Moikka,
Mieltäni on kaivertanut muutama epäselvä asia jo jonkin aikaa eikä googlekaan osaa kertoa kun hakusanoja ei keksi. Varmasti joku kouluja käynyt osaa tämän selittää tuosta noin vain :) Voi olla myös että selityksestäni on vaikea saada selvää, mutta koetetaan..
Miten palveluntarjoajan on mahdollista rajoittaa netin "nopeutta"?
Jos ajatellaan nettiä junana, pingi on se kuinka kauan junalta kestää kulkea asemalta toiselle eli tämähän on varsinainen nopeus, vasteaika. Ja nämä paljon mainostetut "megat" eli megabittiä sekuntissa on tavallaan vaunuja siinä junassa että kuinka paljon mahtuu tavaraa kyytiin kerralla.
Jos määre on aina tuo megaa sekuntissa eli sekunti niin miten se sekunti voi sisältää enemmän tai vähemmän dataa? Rajoitetaanko siirtokapasiteettiä esimerkiksi "sulkemalla" ja "avaamalla" kaistaa useita kertoja sen sekuntin sisällä jolloin todellinen kapasiteetti sitten määräytyy sen tahdin mukaan?
Voin olla ihan hakoteilla asiasta enkä loukkaannu jos joku laittaa lmgtfy linkin "internet for dummies" mutta jos tätä aihetta vähän pystytään avaamaan.
Internetin junissa on pelkkiä vetureita. Eli yhdessä paketissa on tyypillisesti max 1500 tavua dataa. Eli sanotaanko että jos sun nettiliittymän nopeus on 100 Mbps, mutta rajattu 8 Mbps nopeuteen, niin silloin (keinotekoinen) nopeuden rajoitus hoituisi niin, että aina kun x tavun paketti on laitettu piuhaan, niin odotetaan x µs ennen kuin laitetaan seuraava paketti matkaan.
Kannattaa huomata, että jos piuha on liian ohut, niin myös latenssi kasvaa. Eli jos paketit joutuu odottelemaan matkalla, niin ne ei mene siinä ajassa minkä saat pingillä. Huomaat tämän helposti jos pingaat jotain osoitetta ja sitten pistät vaikka 10 isoa tietoa imuroitumaan yhtäaikaisesti ja laitat pingin uudelleen käyntiin. Olettaen että operaattori ei aja ICMP-paketteja (pingin käyttämä protokolla) korkeammalla prioriteetilla kuin muuta liikennettä, niin niiden pitäisi hidastua ja jopa jäädä välillä tulematta perille.
Sitten toinen juttu on vähemmän keinotekoinen rajoitus, eli datan nopeus piuhassa, ilmatiellä tms. Jos vaikka käytössä on ihan alkuperäinen ADSL, jolla ei ole mitenkään mahdollista saada yli 8 megan nopeutta, niin sinne linjalle ei vaan yksinkertaisesti pysty työntämään enemmän kuin 8 bittiä yhdessä mikrosekunnissa.
Yksinkertaistettuna voisi ajatella että yhtä pakettia kaadetaan sinne "putkeen" niin kauan että se on hulahtanut kokonaan ja sitten aletaan kaataa seuraavana jonossa olevaa pakettia. Jos jonossa on maksimimäärä paketteja odottamassa (jono on täynnä), niin sitten uusia netistä tulevia paketteja ei oteta vastaan vaan ne heitetään "roskikseen".
Huomaat tämän myös siinä, että isommilla paketeilla PING on suurempi (ellei sitten linjasi ole bps:ltään hirmu nopea suhteessa muuhun latenssiin). Eli vaikkapa 256 kbps linjalla voisi 32 tavun ping -paketti mennä 30ms, mutta 1312 tavun ping-paketissa kestäisikin 110 ms, koska paketilla kestää kumpaankin suuntaan 40ms enemmän päästä läpi "putkestasi".
Toisaalta jos vielä palataan juna-analogiaan, niin mikäli Helsinki-Rovaniemi välillä saa ajaa 200km/h ja Rovaniemi-Rovajärvi välillä 20km/h ja laitetaan 1000 km pituinen juna matkaan, niin junan etupään päästessä Rovaniemelle alkaa koko juna kulkea koko matkalla vain 20km/h nopeudella.
Yksi aika olennainen asia on, että tieto ei mene suoraan lähdekoneelta kohdekoneelle vaan kiertää useiden palvelinten kautta, kotia lähinnä tietenkin palveluntarjoajan palvelimen kautta. Niinpä monellakin taholla matkan varrella on mahdollisuus rajoittaa nopeutta eli heittää liiat paketit pois. Tällainen rajoitus onnistuu kotikonstein esimerkiksi Linuxin palomuurilla.
No niin tämähän selvensi asiaa jo paljon.
Kiitoksia! Täytyy kattella jos tulee vielä lisäkysymyksiä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.