• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Verbindung durch Server?

sin777

Neues Mitglied
Hallo Community,

kann mir jemand in einfachen Worten verständlich machen, wieso mittels des HTTP-Protokolls(!) keine Verbindung vom Server initiiert werden kann, also wieso ein Server immer nur auf Anfragen eines Clients antworten kann? Diese Frage ist letztens bei einer Diskussion aufgekommen. Es wurde zwar viel geredet, aber eine richtige Antwort wusste keiner :) Ich freue mich über jede Antwort. (Ich hoffe ich habe in das richtige Forum gepostet)


Viele Grüße
 
Werbung:
War gleich mal das falsche Forum, denn dir geht es nicht um HTML sondern um Webserver, also Apache & Co.

Hast Du zu deiner Frage vlt. auch einen Anwendungsfall?
 
Oh, stimmt. Dieses Forum ist passender :)

Nun anstatt Techniken wie Comet zu verwenden stellt sich mir die Frage, warum man nicht einfach über eine HTTP-Anfrage den
Webbrowser benachrichtigen kann, dass bestimmte Daten vorhanden sind. Wieso ist das nicht möglich?
 
Werbung:
Hallo,

mal abgesehen davon, das du deine Frage schon näher definieren solltest (was versteht du z. B. in diesem Zusammenhang unter Server?) ist schon die Angabe

wieso mittels des HTTP-Protokolls(!) keine Verbindung vom Server initiiert werden kann,

falsch. Und für falsche Tatsachen kann es keine Erklärungen geben.

HTTP hat schlicht mit dem Verbindungsaufbau nichts zu tun und kann deshalb technisch gar keine Verbindung initiieren.

warum man nicht einfach über eine HTTP-Anfrage den Webbrowser benachrichtigen kann, dass bestimmte Daten vorhanden sind. Wieso ist das nicht möglich?

Und ich sehe grade, es geht mit unklaren Fragen weiter: Welchen Webbrowser? Was verstehst du unter benachrichtigen in diesem Zusammenhang?

Das Problem scheint in deinem Fall zu sein, das du mit dir unklaren Begriffen falsche Behauptungen aufstellst und dich dann wunderst, dafür keine Erklärung finden zu können.

Gruss

MrMurphy
 
Zuletzt bearbeitet:
Wieso ist die Aussage falsch? Es muss zunächst immer eine Verbindung aufgebaut werden und dies geschieht auch immer durch den Client. Meine Frage ist nun, wieso kann diese Verbindung nicht durch den den Server aufgebaut werden. Auf diese Weise könnte man beispielsweise ständiges clientseitiges Polling nach neuen Nachrichten bei einem Chat umgehen.
 
Hallo

Meine Frage ist nun, wieso kann diese Verbindung nicht durch den den Server aufgebaut werden.

Im ersten Beitrag war deine Frage

wieso mittels des HTTP-Protokolls(!) keine Verbindung vom Server initiiert werden kann

Weiterhin hast du noch immer nicht erklärt, was du in diesem Zusammenhang überhaupt mit Server meinst. Der Begriff Server hat mehrere Bedeutungen.

Überleg mal genau was du überhaupt wissen willst und formuliere die Frage dann eindeutig. Dann kann die auch sinnvoll beantwortet werden.

Gruss

MrMurphy
 
Werbung:
Wieso ist die Aussage falsch? Es muss zunächst immer eine Verbindung aufgebaut werden und dies geschieht auch immer durch den Client. Meine Frage ist nun, wieso kann diese Verbindung nicht durch den den Server aufgebaut werden. Auf diese Weise könnte man beispielsweise ständiges clientseitiges Polling nach neuen Nachrichten bei einem Chat umgehen.
Es gibt auch Serverseitiges polling, node.js kann dies z.B.
Aber, die grundsätzliche Verbindung muss immer durch den Client initiiert werden, woher soll der Server denn sonst seinen Client kennen?
Dann hat das auch mit last zu tun...
 
Ganz grundsätzlich kann alles was eine Netzwerkkarte hat eine Verbindung aufbauen, und dabei ist es egal von welcher Seite aus die Verbindung aufgebaut wird, selbst die Bezeichnung "Server" oder "Client" ist dabei völlig bedeutungslos, alles was du brauchst ist die Adresse (IP) zu der du eine Verbindung aufbauen willst.

Wenn du jetzt einen Schritt weiter denkst, stösst du auf das Problem, dass sich unter diesen Umständen sämtliche Hacker dieser Welt ohne Probleme zu jedem beliebigen Heim-PC verbinden können, denn egal welches Protokoll du für die Verbindung verwendest, es gibt beim Verbindungsaufbau keinerlei Sicherheitsüberprüfung.

Damit genau dies nicht passieren kann, verwenden die allermeisten User eine Firewall.
Die macht nichts Anderes als alle Anfragen zum Verbindungsaufbau zurückzuweisen.
So bleiben die Hacker draussen, aber gleichzeitig kannst du selber von aussen auch keine Verbindung mehr aufbauen.

Die kurze Antwort auf die Frage ist also:
Wenn du in deinem PC die Firewall deaktivierst, deinem Server die IP von deinem PC gibst und auf deinem PC eine HTTP-Software installierst, kannst du problemlos HTTP-Verbindungen von deinem Server zu deinem PC aufbauen, solltest dich aber darauf einstellen, dass du dir dann auch ein paar zig1000 Verbindungen von unerwünschten Gästen einhandelst.
 
Vielen Dank für deine ausführliche Antwort und deine Bemühungen Mark. Das ist wirklich toll und verständlich erklärt :)

Allen anderen auch danke für die Bemühungen und tut mir leid, wenn meine Frage etwas schwammig formuliert war.


Viele Grüße und ein schönes Wochenende
 
Werbung:
Zurück
Oben