RPC-Remote Procedure Call

Protokol RPC olakšava komunikaciju između umreženih računara

Program na jednom računaru na mreži koristi poziv za daljinski postupak da bi zahtevao program na drugom računaru na mreži bez poznavanja detalja mreže. RPC protokol je mrežni programski model za komunikaciju od tačke do tačke unutar ili između softverskih aplikacija. RPC je poznat i kao poziv podprograma ili funkcijski poziv.

Kako RPC radi

U RPC-u, slanje računara pravi zahtev u obliku postupka, funkcije ili poziva. RPC prevodi ove pozive u zahteve i šalje ih preko mreže do željenog odredišta. Primalac RPC tada obrađuje zahtev baziran na nazivu procedure i listi argumenata i šalje odgovor pošiljatelju kada je završen. RPC aplikacije obično primenjuju softverske module nazvane "proxies" i "stubs" koje brokiraju daljinske pozive i čine ih programerom da budu isti kao lokalni pozivi poziva.

Aplikacije za pozivanje RPC obično rade sinhrono, čekajući da daljinski postupak vrati rezultat. Međutim, korišćenje lakih niti sa istom adresom znači da se više RPC-a može pojaviti istovremeno. RPC uključuje logičku tajmt za obradu mrežnih kvarova ili drugih situacija u kojima se RPCs ne vraćaju.

RPC Technologies

RPC je uobičajena tehnika programiranja u Unixovom svetu od devedesetih. Protokol RPC-a je implementiran u okviru distribuiranog računarskog okruženja Open Software Foundation i Sun Microsystems Open Network Computing biblioteke, od kojih su oba bila široko raspoređena. Noviji primjeri RPC tehnologija uključuju Microsoft DCOM, Java RMI i XML-RPC i SOAP.