Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: [VB6] Nopea tiedoston lähetys/vastaanotto

Sivun loppuun

Kulma [12.02.2006 12:51:05]

#

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.

Gwaur [12.02.2006 13:03:29]

#

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ä.

tkarkkainen [12.02.2006 13:07:09]

#

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.

Meitsi [12.02.2006 13:17:26]

#

Ja suomessa koteihin myytävät "8 megan" netit ovat luultavasti ADSL:iä joissa upload-kaista on aina todella pieni, sekin vielä teoreettinen maksimi.

sooda [12.02.2006 13:26:08]

#

ADSL:n uppikaistan teoreettinen maksimi on muistaakseni yksi megabitti sekunnissa, eli noin sata kilotavua sekunnissa. Tuo 80k/s yltää melkein siihen.

Kulma [12.02.2006 13:52:11]

#

FTP:llä menee mulla jotain 400kt/s - 800kt/s.

Blaze [12.02.2006 13:54:15]

#

Huomaathan, että ADSL on epäsymmetrinen, ts. sisään tulee tuo 8mbit/s kun ulos menee vain 1mbit/s.

KeKimmo [12.02.2006 13:58:43]

#

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 ;)

Kulma [12.02.2006 13:58:44]

#

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/

Blaze [12.02.2006 14:06:42]

#

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.

Kulma [12.02.2006 15:17:10]

#

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.

sooda [12.02.2006 15:24:50]

#

Tuossa kb on englantia, kilobyte, eli kilotavu.

Kulma [12.02.2006 17:04:06]

#

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"?

Blaze [12.02.2006 17:17:09]

#

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ä.

Deewiant [12.02.2006 17:24:21]

#

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.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta