Übertragungsgeschwindigkeit zu langsam bei TCP_IP mit winsocks!!!
-
Hi @ all
folgendes Problem ich hab ein Programm geschrieben, mit dem man über das Netzwerk sachen verschicken kann und empfangen!!
jetzt hab ich nur das Problem, dass ich über das Internet mit max 5 kb verschicken kann, obwohl ich dsl hab!!! woran könnte das liegen?
hier noch n bisschen quellcodewhile(1) { if(!ReadFile(ReadH,&buf,1000,&gelesen,NULL)) { Application->MessageBox("Konnte nicht von der Datei lesen",0,16); } send(s,buf, gelesen,0); //checkt rc=recv(s, empfangen,2,0); bufe[rc]='\0'; if(rc==0 || rc==SOCKET_ERROR||String(empfangen)!="y") { closesocket(s); CloseHandle(ReadH); return 2; } } //das war der uploader while(1) { Src=recv(Sclient, Sbufe,1000,0); WriteFile(WriteH,&Sbufe,Src,&geschrieben,NULL); FUBertragen->totalempfangen=FUBertragen->totalempfangen+geschrieben; send(Sclient,"y",2,0); }//und das der Downloader!natürlich etwas gekürzt! Hab ein paar ifs rausgelassen, die checken, ob jetzt der schluss kommt vom file oder net!
Freue mich über jede Antwort!!! Vllt muss ja nur irgendeine komprimierung aktivieren, nur keine ahnung wie und ob das geht!!
Schon mal DankeStephan
-
Hallo
wenn du schon den BCB verwendest, warum benutzt du nicht gleich die BCB-Komponenten für TCP-Verbindungen wie TClientSocket/TServerSocket?
ansonsten gehört die Frage ins C++ Forum.Mal eine einfache Frage zum Überpüfen : Du hast einen DSL-Anschlkuß, aber hat der Empfänger auch Breitband?
Du hast ja geschrieben, über Netzwerk, vielleicht hast du ja das ja mal im LAN getestet und dort volle Geschwindigkeit gehabt. Dann wäre ja die Internet-Verbindung das NadelöhrDeweitern benutze zum Posten vom Code bitte die C++ Tags beim Erstellen des Post.
bis bald
akari
-
also ich hab leider nur den BCB 1 x_X und bei dem gibt es noch net TClient und co...
Ja ich hab es auch schonmal über das netzwerkgetestet, da bin auf so ungefähr 10000KB gekommen(100mbit netzwerk). Aber wenn ich über das Internet übertrage, ist mein Programm einfach zu langsam:
also das beispiel da oben, war über mein DSL von einem Computer zum anderen!
Ich hab auch schonmal von einem, der ISDN hatte was gezogen, und konnte da auch nur mit 3KB übertragen,obwohl der nichts anderes laufen gehabt hat!
Oder wie machen das normalerweise die anderen Filesharing Tools mit Dateienübertragen! Haben die auch so eine Abfrage, ob der Client die Datei auch bekommen hat? Vllt liegt es ja daran, aber die kann ich ja auch net draußen lassen, weil sonst weiss ich ja net, ob er die datei bekommen hat oder net! ODER?
Danke für die schnelle Antwort