RPC-Remote Call Call

Το πρωτόκολλο RPC διευκολύνει την επικοινωνία μεταξύ δικτυωμένων υπολογιστών

Ένα πρόγραμμα σε έναν υπολογιστή σε ένα δίκτυο χρησιμοποιεί μια κλήση απομακρυσμένης διαδικασίας για να κάνει μια αίτηση ενός προγράμματος σε άλλον υπολογιστή στο δίκτυο χωρίς να γνωρίζει τα στοιχεία του δικτύου. Το πρωτόκολλο RPC είναι ένα μοντέλο προγραμματισμού δικτύου για επικοινωνία από σημείο σε σημείο εντός ή μεταξύ εφαρμογών λογισμικού. Ένα RPC είναι επίσης γνωστό ως κλήση υπορουτίνας ή κλήση λειτουργίας.

Πώς λειτουργεί το RPC

Στο RPC, ο υπολογιστής αποστολής υποβάλλει ένα αίτημα με τη μορφή μιας διαδικασίας, μιας λειτουργίας ή μιας κλήσης μεθόδου. Το RPC μεταφράζει αυτές τις κλήσεις σε αιτήματα και τις στέλνει μέσω του δικτύου στον προορισμό. Ο παραλήπτης RPC στη συνέχεια επεξεργάζεται το αίτημα βάσει του ονόματος διαδικασίας και της λίστας παραμέτρων και αποστέλλει μια απάντηση στον αποστολέα όταν ολοκληρωθεί. Οι εφαρμογές RPC τυπικά εφαρμόζουν λειτουργικές μονάδες λογισμικού που ονομάζονται "proxy" και "stubs" που διεκπεραιώνουν τις απομακρυσμένες κλήσεις και τις κάνουν να εμφανίζονται στον προγραμματιστή για να είναι οι ίδιες με τις κλήσεις τοπικής διαδικασίας.

Οι εφαρμογές κλήσης RPC συνήθως λειτουργούν συγχρόνως, περιμένοντας την απομακρυσμένη διαδικασία να επιστρέψει ένα αποτέλεσμα. Ωστόσο, η χρήση ελαφρών κλωστών με την ίδια διεύθυνση σημαίνει ότι μπορούν να προκύψουν ταυτόχρονα πολλαπλά RPC. Το RPC ενσωματώνει λογική χρονικής υπέρβασης για να χειριστεί αποτυχίες δικτύου ή άλλες καταστάσεις στις οποίες τα RPCs δεν επιστρέφουν.

RPC Technologies

Το RPC υπήρξε μια κοινή τεχνική προγραμματισμού στον κόσμο Unix από τη δεκαετία του '90. Το πρωτόκολλο RPC εφαρμόστηκε τόσο σε περιβάλλοντα Distributed Computing Environment του Open Software Foundation όσο και σε βιβλιοθήκες Open Network Computing της Sun Microsystems, οι οποίες αναπτύχθηκαν ευρέως. Τα πιο πρόσφατα παραδείγματα τεχνολογιών RPC περιλαμβάνουν τα Microsoft DCOM, Java RMI και XML-RPC και SOAP.