Daten per netzwerk versenden ?
Übersicht

HelgeBetreff: Daten per netzwerk versenden ? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hi @ all,
Ich müste dringend wissen wie man Daten per Lan (mit blitz3d) versendet , geht das überhaubt ?? gröse so ca.2-10GB wenn nich wie geht das denn dann ? thx |
||
![]() |
PowerProgrammer |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das geht natürlich!
-> Beginners Corner WriteByte etc. in der OH angucken. Edit: Aber so große Dateien dauern unheimlich lange. Wenn Übertragungsfehler egal sind, UPD nutzen, das ist schneller. |
||
- Zuletzt bearbeitet von PowerProgrammer am Sa, Jun 10, 2006 12:28, insgesamt einmal bearbeitet
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
natürlich geht das...dazu musst einen client und einen server proggen...
server: createtcpServer oder so.. und accepttcpstream oder so... client:opentcpstream und dann ne datei auslessen und zeilen/byteweise versenden...und auf der andren seite wieder zusammenflicken |
||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
Helge |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
den server und den client hab ich schon nur wenn ich versuch was zu übertragen macht der fehler das rar archiv is dann nur noch salat
(übertragungsvehler sin tödlich bei nem rar archiv) wie funtzt das upd |
||
Ich brauche HiLfe (bei nem prog) oder Helfe auch gerne |
![]() |
PowerProgrammer |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bei TCP wird alles mehrfach gesendet, sodass allles gaaanz sicher ankommt. Dadurch ist es langsam. Bei UDP wird alles einmal gesendetz, und wenn es verloren geht, dann ist es weg und wird nicht wieder gesendet => langsamer
Zeig mal deinen bisherigen Quelltext. Ich würde das alles per Bytes machen, nicht per Lines oder so. |
||
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
und vllt alles in banks speichern was kommt... | ||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
PowerProgrammer |
![]() Antworten mit Zitat ![]() |
---|---|---|
Warum in Banks? Ich würds direkt in eine Datei packen...
Ist die Enddatei bei dir genauso groß, wie die Quelldatei? Ich würde zuerst mal testen, Textdateien zu übertragen. So kannst du nämlich sehen, ob das Ergebnis einigermaßen mit der Quelldatei zusammenhängt. Wenn du nämlich ReadLine oder so nutzt, kann es sein, das die ganzen ASCII-Steuerzeichen die RAR-DAteien zerstören. Aber trotzdem: Wir können dir nur helfen, wenn wir den Code sehen... |
||
Helge |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
server
bb code : svrGame=CreateTCPServer(8080) If svrGame<>0 Then Print "Server started successfully." Else Print "Server failed to start." End End If datax=WriteFile ("get.rar") While Not KeyHit(1) strStream=AcceptTCPStream(svrGame) If strStream Then Print ReadByte(strStream) get=ReadByte(strStream) WriteByte datax,get Delay 2000 Else End If Wend End bb code ende client: bb code: svrGame=CreateTCPServer(8080) If svrGame<>0 Then Print "Server started successfully." Else Print "Server failed to start." End End If datax=WriteFile ("get.rar") While Not KeyHit(1) strStream=AcceptTCPStream(svrGame) If strStream Then Print ReadByte(strStream) get=ReadByte(strStream) WriteByte datax,get Delay 2000 Else End If Wend End bb code ende |
||
Ich brauche HiLfe (bei nem prog) oder Helfe auch gerne |
![]() |
PowerProgrammer |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sry, das ist jetzt leider etwas Off-Topic:
![]() ![]() ![]() ![]() ![]() Code: Else
???
End If ![]() |
||
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Und benutz blos nicht WriteByte für so große Dateien!
Da BB bei jedem WriteByte den TCP-Overhead von 24KB mitsendet, sendest du bei 3KB in wirklichkeit 3*24=72GB. Die einzige Möglichkeit, dies zu umgehen ist der Befehl WriteBytes und die Banks, denn dort werden so wenig Header wie möglich gesendet. |
||
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
BORNtobeNAMELESS hat Folgendes geschrieben: Da BB bei jedem WriteByte den TCP-Overhead von 24KB mitsendet, sendest du bei 3KB in wirklichkeit 3*24=72GB.
Das mag ich arg bezweifeln! Im Normalfall sollte der Nagle-Alogrithmus im Hintergrund aufgerufen werden (also nicht Aufgabe des BB-Programmierers), der genau sowas verhindert. MfG D2006 |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
![]() |
MaTrixCruiser |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also.. das mit den Banks ist so ne sachen, die kapier ich noch nicht ganz....
Hab daher zwei fragen. 1. ist das schneller? und 2. Wie kann ich die datenübertragungsrate ermitteln bei writebyte? |
||
Amd 64 3200+ (939 winchester)
nvidea 6600gt (PCI-E) 1024 ddr400 200GB HDD S |
Helge |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also ich soll alles was ich sende in ne bank schreiben und dann senden aber wie ??
...... aähhh per tcp client ich kann so nur max 5 bytes senden danach disconnectet der client und kackt ab !!! kann mir mal jemand n code schreiben der so ungefähr auf meinem basiert von dem ich lehrnen kann !! wie geht das mit dem nagle algorytmus pls pls pls pls |
||
Ich brauche HiLfe (bei nem prog) oder Helfe auch gerne |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group