Programmieren - alles kontrollieren 4.941 Themen, 20.715 Beiträge

Wer hat Erfahrung in TCP-Sockets unter Windows?

PaoloP / 2 Antworten / Baumansicht Nickles

Hallo


Ich quäle mich gerade ein wenig durch die Socketprogrammierung unter
Windows mit WinsockControl. Ich klicke gerade durch die Online-Hilfe und habe dazu aber noch ein paar Fragen.


Also ich baue eine Client-Server Verbundung mit TCP.


Solange einer der beiden Rechner dem anderen etwas schickt kann der andere ja wohl nichts zurück schicken sondern wartet erst bis der andere fertig hat oder?


Soweit ich weiss gibt es bei bei Netzwerkverbindungen einen Up- und einen Downstream.
Macht es irgendeinen Sinn 2 Socketverbindungen aufzubauen die 1. zum schicken von Daten und 2. Verbindung zum empfangen. Ich könnte mir vorstellen das ich da was an Geschwindigkeit rausholen kann oder ist meine Annahme falsch ?


Gott zum Gruss 


  

Jedes mal wenn jemand "Cloud" sagt, verliert ein Engel seine Flügel.
bei Antwort benachrichtigen
IDE-ATAPI PaoloP „Wer hat Erfahrung in TCP-Sockets unter Windows?“
Optionen

Hi !

"Solange einer der beiden Rechner dem anderen etwas schickt kann der andere ja wohl nichts zurück schicken sondern wartet erst bis der andere fertig hat oder?"

Wenn man es genau nimmt (Hardwaretechnisch), stimmt deine Aussage.
Allerdings brauchst du dich beim Programmieren nicht darum zu kümmern, die Regelung des Datenflusses samt Pufferung der Daten findet auf einer viel niedrigeren Ebene statt, unter der Winsock-api. Du kannst also programmtechnisch gleichzeitig senden und empfangen (in z.B. 2 Threads).


"Macht es irgendeinen Sinn 2 Socketverbindungen aufzubauen die 1. zum schicken von Daten und 2. Verbindung zum empfangen."

Nein, gute Idee, macht leider keinen Sinn. Über die Netzwerkleitung kann sowieso nur ein Datenpacket zur gleichen Zeit verschickt werden. Auch wenn du zwei verschiedene Verbindungen mit zwei unterschiedlichen Ports benutzt, die Daten werden immer nur nacheinander auf die Leitung gelegt.

Hoffe deine Fragen richtig verstanden zu haben, sonst meld dich einfach wieder,

Grüße und schönes Wochenende,
IDE-ATAPI

bei Antwort benachrichtigen
ralfglauberman PaoloP „Wer hat Erfahrung in TCP-Sockets unter Windows?“
Optionen

Nun ja, etwas Sinn macht das schon, du holst damit zwar keinen Speed raus, kannst aber oftmals dadurch deinen Quellcode einfacher und übersichtlicher gestalten. Ich hab mal ein Prog geschrieben, bei denen zwei Rechner Befehle über eine Verbindung ausgetauscht haben (konnte man zum Testen auch mit Telnet machen), die nötigen Binärdaten(Dateien) hab ich über die zweite Verbindung geschickt.

Ralf

bei Antwort benachrichtigen