05. juli 2006 - 22:12Der er
4 kommentarer og 2 løsninger
download vs. upload max hastighed
Lad os sige at man har en 20 mbit linie ned og 1mbit op. Hvor meget får du rent faktisk igennem den linie? Hvis du bruger TCP, vil uploadhastigheden så ikke sætte en begrænsning for hvor meget du kan hente?
Jeg hentyder til TCPs 3-way-handshake m.m. som jo gør at du hele tiden uploader, når du downloader. 20 mbit kræver en hel del upload.
Det har selvfølgelig ingen betydning hvis du kun bruger UDP :)
Nogen der har nogle gode facts/links mht. upload/download-ratios for TCP?
Det er klart at uploadhastigheden har betydning, men hvor meget den er er svært at sige. Selve handshaket kræver ikke ret mange ressourcer og der handshakes jo kun ved overførslens start, hvorefter pakkerne kommer ned uden yderligere handskake. Der er altså nogle parametre der har betydning for hvor meget upload betyder:
Er forbindelsen dårlig/ustabil, vil mange pakker skulle genfremsendes, det kræver besked tilbage og derfor upload.
Mange små pakker kræver mange handshake, hvorfor upload får mere betydning. En download af en 500 Mb fil på en god forbindelse kan tepretisk gøres med et handshake og en taire down, mens 500 stk 1 Mb downloads vil kræve 500 stk handshakes og 500 taire down.
Emnet er vandskeligt at behandle da der ermange ting at tage højde for. Den bedste måde er at teste ved normal brug i praksis.Hvis din upload maxer ud under download ofte, så har du bruge for mere upload ellers ikke
> mens 500 stk 1 Mb downloads vil kræve 500 stk handshakes og 500 taire down. Det kommer an på implementationen af programmet. Masser af programmer holder forbindelse åben og bruger den til en fil mere. Det gælder også fx browsere. I TCP regi er en 1 MB fil ikke en pakke. Pakker er langt mindre (nogle få KB).
Det der betyder mest er at der for hver pakke sendes besked tilbage om at den er modtaget. Sådan noget kan man i øvrigt også sagtens bygge oven på UDP, så der skal du ikke tro dig alt for sikker(!)
schwarz84>Det er fuldstændig korrekt, spørgsmålet er om den oplysning tjener til at gøre problematikken mere tydelig eller bare mudre det endnu mere til. Når man skal forklare forhold er man oftest nødt til at forenkle. Du kunne jo også have inddraget UDP og ICMP hvis vi skal gøre det rigtig teknisk og uforståeligt
Antagelse: Vi taler om hastigheden ved download én stor fil i én TCP-forbindelse.
I denne sammenhæng betyder TCPs 3-way-handshake ingenting. Det der betyder noget er de ACK-pakker som TCP skal sende retur - de bruger af din upload båndbredde.
Vi kan regne lidt naivt på det: En typisk download vil benytte IP-pakker på 1500bytes (som er standard MTU på ethernet). Med 20bytes IP-header og 20bytes TCP-header giver det 1460bytes data pr. pakke. Når TCP skal sende en ACK-pakke, vil den sende en pakke uden data, dvs. 20bytes IP-header og 20bytes TCP-header, ialt 40 bytes.
Det giver en ratio på 1:36,5 Da din internetforbindelse er 1:20 burde det fungere fint.
Hertil kommer optimeringer på TCP. Mange implementationer sender f.eks. kun en ACK-pakke for hver anden eller hver tredje modtagne pakke. Det forbedrer din ratio meget.
Der burde altså ikke være problemer...
Som nævnt er dette kun en meget naiv beregning, der er en masse detaljer i TCP, som jeg ikke har taget med her.
Tak for svar og kommentarer gutter - Jeg har endnu ikke kunne prøve problematikken i praksis, men får en 10/1 linie i løbet af et par uger, så kan det være jeg kan smide en opfølgende kommentar.
Selvom der ikke er et reelt svar synes jeg det er et interessant emne, som er ret svært at finde noget om på nettet - nu er der da lidt mere ;)
Jeg har nu en 10/1 forbindelse og uden beviser, eksempler eller noget som helst - har jeg lagt mærke til at download/upload-forholdet er på cirka 5%, d.v.s. der går cirka 5 kbyte per 100 kbyte download... Fra den 1. har jeg en 20/1 forbindelse (Fullrate opgraderede deres kunder), som så burde ligge lige på grænsen - Det skal testes :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.