Remote procedure call

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Remote procedure call (RPC, vzdálené volání procedur) je v informatice technologie dovolující programu vykonat kód na jiném místě, než je umístěn volající program. Příkladem budiž provedení složitějšího matematického výpočtu výkonnějším počítačem, dostupným skrze síť.

Postup

# Proběhne zabalení identifikátoru procedury a vstupních parametrů do formy vhodné pro přenos. (Jedná se o tzv marshalling. +more) # Balíček se odešle. # Entita určená k vykonání procedury balíček rozbalí a seznámí se s jeho obsahem. (Jde o tzv. unmarshalling. ) # Dojde k provedení procedury. # Proběhne další zabalení, tentokrát výstupu procedury. # Data se odešlou zpět volající entitě. # Dojde k rozbalení. # Proběhne předání nadřazenému podprogramu.

Výhody

Odlehčení vlastní aplikace o danou (v principu velmi komplikovanou) proceduru. * Abstrahovaní od implementace procedury (volající entitu zajímá jen výsledek, zbytek je tzv. +more černá skříňka). * Možnost „půjčit si“ výpočetní výkon jiného stroje.

Nevýhody

Potřeba bezchybné funkčnosti entity, jež je k vykonání procedury určena, a konektivity s ní. * Nemožnost používání globálních proměnných a předávání ukazatelů (v jiném stroji nemají smysl; adresní prostor je totiž jiný).

Standardy

Tři základní RPC standardy jsou: * ONC (Open Network Computing); * DCE (Distributed Computing Environment); * Microsoft COM/DCOM „standard“.

Historie

První popis RPC spadá do roku 1976, do normy RFC 707. * První, kdo RPC využíval, byla firma Xerox. +more Stalo se tak pod jménem Kurýr (v angl. originálu Courier), a to v roce 1981. * První masové využití přišlo se systémem Unix. Šlo o ON RPC. * Počítačový červ Blaster využíval exploitu této technologie.

Související články

XML-RPC * Java RMI

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top