Remote Procedure Call - Operating Systems | CMSC 412, Study notes of Operating Systems

22 Material Type: Notes; Professor: Hollingsworth; Class: Operating Systems; Subject: Computer Science; University: University of Maryland; Term: Unknown 1989;

Typology: Study notes

Pre 2010

Uploaded on 02/13/2009

koofers-user-wzk-1
koofers-user-wzk-1 🇺🇸

4

(1)

10 documents

1 / 9

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
CMSC 412 - S96 (lect 22) copyri
g
ht 1996 Jeffrey K. Hollin
g
sworth
Announcements
Reading Chapter 17 (skip 17.6.1 and 17.6.4)
problems: 17.1, 17.3, 17.4
pf3
pf4
pf5
pf8
pf9

Partial preview of the text

Download Remote Procedure Call - Operating Systems | CMSC 412 and more Study notes Operating Systems in PDF only on Docsity!

copyright 1996 Jeffrey K. Hollingsworth

Announcements

l^

Reading Chapter 17 (skip 17.6.1 and 17.6.4)– problems: 17.1, 17.3, 17.

copyright 1996 Jeffrey K. Hollingsworth

Remote Procedure Calls

l^

Provide a way to access remotes services

l^

Look like “normal” procedure calls

l^

Issues:– binding functions to services

  • can use static binding (like kernel trap #’s)• can use a nameserver
    • data format
      • different machine may have different formats• translation is called

marshalling

  • pick a common way to encode info (e.g. XDR)– always send in this common format
    • failures
      • what if a host dies while and RPC is active?

copyright 1996 Jeffrey K. Hollingsworth

RPC Generators

l^

Given a list of functions to make into RPC

l^

Generate the code for:– RPC stubs (for clients to call)

  • marshalling code for each parameter• utility routines to marshal structures/records• code to send messages and wait for responces
    • Server code
      • case statement for each RPC type• un-marshal parameters• call local routine
        • detecting errors– checking version numbers between client/server

copyright 1996 Jeffrey K. Hollingsworth

Failures

l^

Fail Stop– system either produces the correct answer or no answer– hard to know “what” failed

  • local network card• network link• remote network card• remote system• remote software

l^

Byzantine Failure– systems can “lie” and produce wrong answers

  • a message shows up but some of the data is wrong
    • can use check sums to detect this failure mode
      • does not deal with malicious failure
        • considered a “hard” problem

copyright 1996 Jeffrey K. Hollingsworth

DFS Performance Issues

l^

“normal” filesystem issues– disk parameters: seeks time, rotational latency– filesystem time: directory structure, fat/inodes

l^

distributed system issues– network:

  • latency (time for small requests)• bandwidth (time to move entire disk blocks)
    • coordination
      • time to access servers
        • namespace server– fileserver

copyright 1996 Jeffrey K. Hollingsworth

Caching

l^

To improve performance, cache DFS information– goal: improve response times for overall DFS

l^

Local Cache– memory cache

  • data is stored in memory of local system
    • disk cache
      • data is stored on the disk of the local system

l^

Server Cache– memory

  • can put lots of memory here so most “popular” files are in memory