Skip to main content

Hva er en RPC-samtale i datanettverk?

Remote Procedure Calls (RPC) (April 2025)

Remote Procedure Calls (RPC) (April 2025)
Anonim

Et program på en datamaskin på et nettverk bruker et Remote Procedure Call for å gjøre en forespørsel om et program på en annen datamaskin på nettverket uten å vite nettverksdetaljer. RPC-protokollen er en nettverksprogrammeringsmodell for punkt-til-punkt-kommunikasjon innenfor eller mellom programvareapplikasjoner. En RPC er også kjent som et subrutineanrop eller et funksjonsanrop.

Hvordan RPC fungerer

I RPC, sender den sendte datamaskinen en forespørsel i form av en prosedyre, funksjon eller metodeanrop. RPC oversetter disse anropene inn i forespørsler og sender dem over nettverket til ønsket destinasjon. RPC-mottakeren behandler deretter forespørselen basert på prosessnavn og argumentliste, og sender et svar til avsenderen når den er fullført. RPC-applikasjoner implementerer vanligvis programvaremoduler kalt "proxyer" og "stubber" som formidler de eksterne samtalene og får dem til å vises til programmereren for å være det samme som lokale prosesssamtaler.

RPC-anropsprogrammer opererer vanligvis synkront, og venter på den eksterne prosedyren for å returnere et resultat. Bruk av lette tråder med samme adresse betyr imidlertid at flere RPCer kan forekomme samtidig. RPC inkorporerer timeout logikk for å håndtere nettverksfeil eller andre situasjoner der RPC ikke returnerer.

RPC Technologies

RPC har vært en felles programmeringsteknikk i Unix verden siden 1990-tallet. RPC-protokollen ble implementert i både Open Software Foundation's Distributed Computing Environment og Sun Microsystems Open Network Computing-biblioteker, som begge ble distribuert i stor utstrekning. Nyere eksempler på RPC-teknologier inkluderer Microsoft DCOM, Java RMI og XML-RPC og SOAP.