Remote procedure call

Remote Procedure Call (RPC) er en populær netværksprotokol, der implementerer client/server paradigmet.

For alternative betydninger, se RPC.
OSI-modellen med kendte protokoller.
De anvendes bl.a. på datanettene:
Fastnet og trådløst: WAN (f.eks. internettet), MAN, LAN, PAN.
Kun trådløst: IPN, WMAN, WLAN, WPAN (f.eks. Bluetooth).
LagLagnavnIP bårne/relaterede (har RFC)
7ProgramHTTP, SMTP, POP3, IMAP, FTP, DNS, DHCP...
6PræsentationAFP...
5SessionRPC, NetBIOS...
4TransportTCP, UDP, RTP...
3NetværkIP: (IPv4, IPv6), ICMP, IGMP, ARP...
2DatalinkEthernet, HDLC, V.42bis, V.42(LAPM), V.44...
1FysiskV.34, V.90, ADSL, 802.11 Wi-Fi, WiMAX...

RPC forløber således:

  1. Et system (klienten) kalder et system på en anden maskine (serveren) for at få udført en ønsket procedure. Sammen med kaldet overføres evt. parametre til proceduren.
  2. Serveren behandler forespørgslen og returnerer et svar.
  3. Klienten modtager svaret.

RPC implementeres ofte med synkrone kald, hvor klienten venter indtil serveren returnerer svaret, men kan også implementeres asynkront, hvor klienten foretager sig noget andet i tidsrummet mellem den sender forespørgslen og modtager svaret.

RPC-kald kan ske i en transaktionskontekst, hvor en fejl på enten klienten eller serveren, tilbageruller ændringer evt. på både klient og server.

Eksempler på protokoller, der kan bruges til RPC er:

  • SOAP (Web service) (understøtter ikke umidddelbart transaktioner)
  • CORBA. (understøtter transaktioner)
  • MQ (understøtter ikke umiddelbart transaktioner i RPC)
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.