Autor Beitrag
Marco D.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2750

Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
BeitragVerfasst: Do 08.12.05 21:46 
Könnt ihr mir mal erklären, wie das Prinzip des Netzwerkspiels funktiniert? Ich meine, wenn ich 'Ein Spiel hosten' will (Zitat aus Blobby Volley) dann muss ich keinen Port angeben. Woher weiß denn der Client, der nach einem Server sucht, wo der Server wartet? Probiert er alle Ports durch oder wie macht er das? Meiner Meinung nach, lässt sich das nur über die Angabe des Ports realisieren. Dann müssten sich beide Teilnehmer eben über die Portnummer verständigen.
Auch weiß ich nicht wie es geht, dass der Client alle verfgbaren Spiele auflistet.
Hoffe, jemadn kennt sich da aus und hat selbst schon mal sowas gemacht und kann dann aus eigener Erfahrung reden wie man ein Netzwerkspiel realisiert.

KOLLER

_________________
Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
Ironwulf
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 733
Erhaltene Danke: 2



BeitragVerfasst: Do 08.12.05 21:57 
Naja, man kann doch den port fets in der exe einstelln z.b. bei der tcp, dxplay, komponente, ich behaupte sogar fast das das bei allen komponenten einstellbar ist die irgendwie was min netzwerk zutun haben
Marco D. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2750

Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
BeitragVerfasst: Fr 09.12.05 15:38 
Das is ja klar.
Aber wenn mehrere Spieler in einem Netzwerk spielen, dann werden doch mehrere Ports benötigt, da ja pro port nur ein Server möglich ist.

_________________
Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
Grendel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 443

Gentoo Linux, MacOS X, Win 2000
D5 Ent, D7 Ent, Lazarus, Anjuta, MonoDevelop
BeitragVerfasst: Fr 09.12.05 15:43 
user profile iconKoller hat folgendes geschrieben:
Das is ja klar.
Aber wenn mehrere Spieler in einem Netzwerk spielen, dann werden doch mehrere Ports benötigt, da ja pro port nur ein Server möglich ist.

Nein, jeder Client braucht nur einen Port (man kann auch mit mehreren arbeiten ist aber nicht nötig) über den er eine Verbindung zum Server-Port herstellt. Und ein Server kann auf einem Port durchaus mehrere Clients "bedienen".

Bis neulich ...
Marco D. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2750

Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
BeitragVerfasst: Fr 09.12.05 15:54 
Das stimmt ja auch wieder.

Nur was passiert wenn 2 Mann zur gleichen Zeit 'Ein Spiel hosten'? Werden dann nicht 2 Server aktiviert? Zum Beispiel zwei Serversockets?

_________________
Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
Grendel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 443

Gentoo Linux, MacOS X, Win 2000
D5 Ent, D7 Ent, Lazarus, Anjuta, MonoDevelop
BeitragVerfasst: Fr 09.12.05 15:58 
user profile iconKoller hat folgendes geschrieben:
Nur was passiert wenn 2 Mann zur gleichen Zeit 'Ein Spiel hosten'? Werden dann nicht 2 Server aktiviert? Zum Beispiel zwei Serversockets?

Klar, dann werden 2 Server aktiviert. Nur, da wohl kaum 2 Mann zur gleichen Zeit auf der gleichen Maschine den gleichen Server starten ist das doch kein Problem. Und wenn die Server auf unterschiedlichen Rechnern laufen ist es erst recht kein Problem, da die Kombination aus IP + Port eindeutig ist.

Oder hab ich dein Problem nicht richtig verstanden?!

edit: Es ist nicht möglich (d.h. es ist eigentlich schon möglich aber selten sinnvoll. Siehe: SO_REUSEADDR), daß auf ein und derselben Maschine zwei Server auf der Selben IP und dem selben Port lauschen. Der Versuch den zweiten Server zu starten wird dann beim "bind()" fehlschlagen, da der Port eben schon belegt ist.

Bis neulich ...
Marco D. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2750

Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
BeitragVerfasst: Fr 09.12.05 16:08 
Ich meine zum Beispiel in unserer Schule im Computerkabinett wird viel Blobby Volley gespielt. Auch vernetzt.


:gruebel: Kann man denn in einem Netzwerk auf verschiedenen Rechnern auf dem gleichen Port einen Server eröffnen? (z.B. Serversocket)

_________________
Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
Ironwulf
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 733
Erhaltene Danke: 2



BeitragVerfasst: Fr 09.12.05 16:13 
jop, ich hab zwar ewig nimmer blobbey volley gepsielt und auch noch nie im netzwerk aber ich geh mal davon aus, das man auch dort als client noch die ip des servers eingeben muss und somit kann es dann nicht zu konfliketen kommen
Grendel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 443

Gentoo Linux, MacOS X, Win 2000
D5 Ent, D7 Ent, Lazarus, Anjuta, MonoDevelop
BeitragVerfasst: Fr 09.12.05 16:34 
user profile iconKoller hat folgendes geschrieben:
:gruebel: Kann man denn in einem Netzwerk auf verschiedenen Rechnern auf dem gleichen Port einen Server eröffnen? (z.B. Serversocket)

Ja, definitiv. Interessant ist nur die Kombination aus IP + Port. Diese muss eindeutig sein. Und, wie Ironwulf schon schrieb, muss der Client zum Verbinden eben nicht nur den Port des Servers sondern auch dessen IP kennen.

Bis neulich ...