Entwickler-Ecke
Internet / Netzwerk - Konzeptfrage: Kommunikation ohne Server
Hidden - Sa 10.05.08 10:48
Titel: Konzeptfrage: Kommunikation ohne Server
Hi,
| Hierauf bitte höchstens als PM antworten, nicht hier posten: |
Ein Hauptgrund, aus dem ich momentan ein eigenes Schachprogramm schreibe ist, dass ich keine Software gefunden habe, mit der sich zusätzlich über das Internet spielen lässt. Sicher, man kann in Foren spielen. Aber das ist etwas anderes. Man hat nicht das gewohnte Design, etc... |
Jetzt möchte ich die Internet-Variante implementieren und überlege dabei zwischen zwei Konzepten(ein eigener Server, über den alles läuft, ist mir dann doch etwas zu groß XD):
- Zum Hinzufügen von Kontakten wird ein Schlüsselwort eingegeben. Aus diesem Schlüsselwort wird dann eine temporäre Internetadresse/seite erzeugt, von der beide Spieler die IP des andern(verschlüsselt?) bekommen und unter dem Kontaktnamen abspeichern.
- Ich nutze das Fensterhandle eines Chat-Programmes und nutze einen solchen Server für die Kommunikation.
Das zweite Konzept finde ich etwas unsauber, das erste :? .
Hier soll nun nur grundlegend geklärt werden, welches Konzept zu wählen wäre(weitere Vorschläge erwünscht).
Vielen Dank schonmal,
delfiphan - Sa 10.05.08 12:01
- Eigenen Server kaufen musst du dir ja nicht unbedingt. Die Kommunikation kann ja auch indirekt über php-Aufrufe geschehen und gratis-php-Server sollten zu finden sein.
- Für jede Aktion ein php-Aufruf
- Polling um Aktion des Partners abzufragen
Wenn die Skriptlaufzeit unbeschränkt ist, könntest du dir das Polling sogar sparen.
- Du könntest die Sache über einen IRC-Server machen.
- Direkte TCP/IP Verbindung mit IP-Adressen geht natürlich auch, dann hast du aber Probleme, wenn beide hinter einem NAT sind. Einen Server zu haben ist immer universeller.
- Du suchst einen gratis Tomcatserver und implementierst den Server in Java
BenBE - Sa 10.05.08 12:21
Es bliebe alternativ auch noch die Möglichkeit über DHT eine Client-Verwaltung zu machen und einen beliebigen Teilnehmer des Netzes als Entry-Point zu nehmen. Wenn Du dabei einen Server abstellst, der als bekannte Einsprungpunkt dient, ist sogar das Joinen zum Netzwerk recht einfach.
Wenn Du nun eine Partie eröffnest, dann suchen sich die beiden Spieler über das P2P-Netz und können auch über dieses Nachrichten austauschen ...
Für die NAT-Problematik wäre aber u.U. auch STUN interessant ...
Hidden - Sa 10.05.08 13:10
Hi,
Also ich habe in der Richtung noch nie etwas gemacht :D . Habe mich mal bei
http://www.funpic.de/ angemeldet.
Nach kurzer Überlegung wäre vielleicht sowieso deshalb ein Server besser, weil dann auch ein Spieler einen Zug machen könnte und der andere kann den dann schon sehen, wenn er das Programm das nächste mal startet.
Ich müsste ja dort jetzt ein Array anlegen, in dem ich den letzten Zug und, von wem der Zug stammt, abspeichere. Auf die Tabelle sollte von Außen natürlich kein Zugriff möglich sein, daher muss dort ein Programm laufen, das den Zugriff kapselt, eine ID nimmt, prüft, und den Zug an der entsprechenden Stelle ins Array einträgt, bzw. austrägt.
Das nur, damit ihr wisst, was ich brauche und demnach sagen könnt, womit ich mich beschäftigen sollte.
php höre ich jetzt ehrlichgesagt, abgesehen von der Sparte, dich ich hier im Forum gesehen habe, auch das erste Mal und weiß garnicht, ob das der richtige Begriff ist(den habe ich auf funpic gelesen).
Wenn ihr mir das so bestätigen könnt, mache ich ein neues Topic in der php-Sparte auf.
Besten Dank soweit,
Hidden - Sa 10.05.08 17:01
*push*
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!