Zwei Remote-Anwendungsprozesse kann vor allem in zwei verschiedenen Moden kommunizieren:
peer zu peer Die beiden Remote-Prozesse sind Ausführung auf dem gleichen Niveau , und ihnen auszutauschen Daten mitHilfe einigen freigegebenen Ressource.
Client-Server: Eine Remote-Prozess fungiert als Client und fordert eine Ressource aus einer anderen Anwendung Prozess, der als Server.
In der Client-Server-Modell, jeder Prozess kann als Server oder Client agieren. Es ist nicht die Art der Maschine, der Größe der Maschine, oder dessen Rechenleistung, die es Server macht; Es ist die Fähigkeit der dien Anforderung, die eine Maschine ein Server ist.
Ein System kann als Server und Client gleichzeitig wirken. Das heißt, dass ein Prozess als Server handeln und eine andere ist als Client fungiert. Dies kann auch passieren, dass beide Client und Server-Prozesse befinden sich auf der gleichen Maschine.
Zwei prozess in Client-Server-Modell kann auf verschiedene Weise interagieren:
Buchsen
Remoteprozeduraufruf (RPC)
In diesem Paradigma der Prozess, der als Server öffnet einen Socket mit einem bekannten (oder Client bekannt) -Port und wartet, bis ein Client-Anforderung. Der zweite Prozess handeln als Client öffnet auch eine Steckdose, aber anstatt zu warten, für eine eingehende Anforderung, die Wünsche ersten "der Client-Prozesse".
Wenn die Anforderung an den Server erreicht, wird es serviert. Es kann entweder eine gemeinsame Nutzung von Informationen und Ressourcen-Anforderung.
Dies ist ein Mechanismus, bei dem ein Prozess interagiert mit anderen mittels Prozeduraufrufe. Ein Prozess (Client) ruft die Prozedur auf Remote-Host liegen. Der Prozess auf Remote-Host soll Server sein. Beide Prozesse werden zugeteilt Stubs. Diese Kommunikation geschieht auf folgende Weise:
Der Client-Prozess ruft die Client-Stub. Es übergibt alle Parameter im Zusammenhang mit lokalen programmieren zu.
Alle Parameter werden dann verpackt (rangiert) und ein Systemaufruf wird, sie an andere Seite des Netzes zu senden.
Kernel sendet die Daten über das Netzwerk und das andere Ende erhält er.
Der Remote-Host übergibt Daten an den Server-Stub, wo es entpackten ist.
Die Parameter werden an die Prozedur übergeben, und das Verfahren wird dann ausgeführt.
Das Ergebnis wird gesendet zurück zu den Client in der gleichen Weise.