Miten saan tehtyä nopean tiedoston lähetys syteemin, joka toimii IP-osoitteilla?
Tein sellasen winsockilla, mutta 8 megan netillä meni max. 80kt/s. =(
Millä tavalla FTP toimii? Sehän on erittäin nopea.
Kahdeksan megabitin netti ei tarkoita kahdeksan megatavun sekuntivauhtia. Ensinnäkin, tavu on isompi kuin bitti. Yleensä tavu on kahdeksan bittiä, eli jo siitä nopeus tippuu yhteen megatavuun sekunnissa. Toiseksi, TCP/IP-protokollassa kahden peerin (keksikää parempi sana) välillä liikkuu muutakin kuin vain sitä, mitä halutaan siirtää. Kaikki tieto liikkuu eräänlaisina paketteina, joissa on vain osa koko tiedosta (paitsi jos tiedon voi mytistää siihen yhteen pakettiin). Paketin saatuaan vastaanottajan pitää lähettää lähettäjälle kuittauspaketti, jolloin lähettäjä tietää, onko paketti mennyt perille. Jos kuittausta ei tule, yritetään uudestaan. Jos 8 megan netillä siis liikkuu "vain" 80 kilotavua (ilmeisesti ulospäin), mikään ei ole rikki tai vialla, vaan kaikki toimii vallan mainiosti.
TCP:lle on kuittauspaketiton vaihtoehto, UDP, mutta koska siinä ei liiku kuittauspaketteja, se on epäluotettavampi, sillä lähettäjä ei voi tietää, onko paketti mennyt perille ja vielä oikeassa järjestyksessä.
Ja jos tämä siirto tehtiin kahden kotiliittymän välillä, niin on äärimmäisen epätodennäköistä että lähetysnopeus olisi 8Mbit/s.
Ja suomessa koteihin myytävät "8 megan" netit ovat luultavasti ADSL:iä joissa upload-kaista on aina todella pieni, sekin vielä teoreettinen maksimi.
ADSL:n uppikaistan teoreettinen maksimi on muistaakseni yksi megabitti sekunnissa, eli noin sata kilotavua sekunnissa. Tuo 80k/s yltää melkein siihen.
FTP:llä menee mulla jotain 400kt/s - 800kt/s.
Huomaathan, että ADSL on epäsymmetrinen, ts. sisään tulee tuo 8mbit/s kun ulos menee vain 1mbit/s.
ADSL-boksini kirjoitti:
832 Kbps Upstream, 8064 Kbps Downstream
Tuohan siis tarkoittaa, että latausnopeus on sellainen 800 kt/s ja lähetysnopeus noin 80 kt/s. Ainakin tätä liittymää on tietääkseni mainostettu 8/1-nopeuksisena. Ilmeisesti pyöristävät siis vähän yläkanttiin ;)
Niin mutta miksi mun ohjelmalla menee vain 80kb/s kun pitäisi mennä 1mbit/s?
Sain testissä (Washington DC serverillä):
-Dowload speed: 3254kbps
-Upload speed: 636kbps
Mutta kaikki testit näyttää vähän erillailla.
Testi on täällä http://www.speakeasy.net/speedtest/
832 kilobittiä sekunnissa on 104 kilotavua sekunnissa. Ja ainakaan ykskään liittymä, joka mulla on ollu ei oo yltäny teoreettiseen maksimiinsa. 80 kilotavua sekunnissa on siis varsin hyvin.
Blaze kirjoitti:
832 kilobittiä sekunnissa on 104 kilotavua sekunnissa. Ja ainakaan ykskään liittymä, joka mulla on ollu ei oo yltäny teoreettiseen maksimiinsa. 80 kilotavua sekunnissa on siis varsin hyvin.
Niin mutta se on 80Kb/s ei kt/s.
Tuossa kb on englantia, kilobyte, eli kilotavu.
Ai. ok.
Sen mun tiedostonlähetys ohjelman saa tästä:
http://www.jrantala.com/FFT.zip
Screenshotti vanhasta versiosta, jossa "Speed" näkyy väärin (clientissä erillailla kuin serverissä) toi on avattu samalta koneelta eli toi nopeus on vaan kuinka nopeasti ohjelma kopioi tiedoston. =P:
http://www.jrantala.com/FFT.PNG
Jos ihmettelette miksi annan IP-osoitteeni näkyä kuvassa, mulla se vaihtuu joka toinen päivä.
Pitääkö toi "KB/s" lukea niin vai "kb/s"?
Kulma kirjoitti:
Jos ihmettelette miksi annan IP-osoitteeni näkyä kuvassa, mulla se vaihtuu joka toinen päivä.
Ai, onks IP joku oikeen salassapidettäväki asia? o_O
Kulma kirjoitti:
Pitääkö toi "KB/s" lukea niin vai "kb/s"?
Koo on aina pienellä, iso bee on tavuja (bytes, kaheksan bittiä) ja pieni bee bittejä (bits). Yleensä siirtonopeudet ilmoitetaan tavuina, paitsi yhteyksien nopeuksissa, joissa ne on bittejä.
Ja kyllä, käytäntö on sekava. Jos on tärkeetä, että kaikille tulee selväks, kummasta yksiköstä on kyse, kannattaa jättää lyhentämättä ja puhua suoraan tavuista ja biteistä.
Blaze kirjoitti:
iso bee on tavuja (bytes, kaheksan bittiä) ja pieni bee bittejä (bits).
Mielipidekysymys. Vaihtoehdot ovat:
Tavu = B, bitti = b.
Tavu = B, bitti = bit.
Tavu = b, bitti = bit.
Itse suosin viimeisintä, ettei tule turhaa konfliktia belin kanssa. Kuitenkin ensinmainittu on yleisin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.