Overview

  • What is the V Kernel?

    • OS structured around message-based IPC for diskless workstations and large file servers.
    • V Kernel is
      • a message-oriented kernel
      • used in an eviroment of diskless workstations connected by a high-speed local network to a set of file servers.
  • What does V-kernel IPC do?

    • process executes a Send to a server process
    • server completes execution of a Receive to receive the message
    • server executes a Reply to respond with a reply message back to the client.
    • We refer to this sequence as a message exchange.
    • The receiver may execute one or more MoveTo or MoveFrom data transfer operations between the time the message is received and the time the reply message is sent.
  • Advantage

    • lower hardware cost per workstation
    • simpler maintenance and economies of scale with shared file servers.
    • little or no memory or processing overhead on the workstation for file system and disk handling
    • fewer problem with replication, consistency and distribution of files.
  • Disadvantages

    • overhead of preforming all file access over the network
    • use streaming protocols to minimize the effect of network latency on performance (sequential file access is common)
  • Demonstrate

    • that diskless workstations do not suffer significant penalty for remote access (remote file is ok)
    • the general V Kernel IPC message primitives perform as well as a specialized file access protocol

V-Kernel IPC

  • All IPC in the V Kernel is based upon a generic message-based interface.
    • It was a message-based single machine time-sharing system.
    • V Kernel extends it to a distributed os environment.
  • Paper address the concerns that V Kernel-style IPC might not be suited for network environment
  • pid: process identifier
  • all message are a fixed 32 bytes in length
  • No buffering & queueing problem, move directly from source address space into the NIC, and directly from the NIC to the destination address space
  • MoveTo and MoveFrom for transferring a large amount of data (between remote processes)

IPC Discussion

  • Characteristics
    • Synchronous request/response messages
      • [ ] Sender need to wait for receiver to reply, not ack.
      • Only need one buffer for the message(out-of-date)
    • Small, fixed size messages
      • Reduce queuing, buffering, used for control
    • Separate data transfer facility
      • efficient transfer of large amount of data
  • What is it about V Kernel IPC that makes it appear inefficient at first blush?
  • Why would it appear inefficient?
    • Short messages make inefficient use of large packet size
      • Need large packets to get max performance of the network
    • Synchronous communication prevents overlap of net I/O and computation
    • Separate data transfer from control messages increase number of network operations
      • First control message, then data
      • Introduce 2 new calls

Overhead of remote operations

  • First, they make remote operations efficient. How?
    • implemented everything in kernel
    • Use raw Ethernet frames; no protocol processing
    • TCP/IP use akc + package number, retransmit
    • [ ] V-Kernel does not use TCP/IP, could rely on the reply, could do ack at the end of file, do not ack at every packet, more efficient
  • Sync req/resp used to build reliable datagrams on top of unreliable frames
  • No per-packet acknowledgements for file page-level transfer

Network Penalty

  • The performance evaluation starts by determining the network penalty.
  • What is the network penalty and why do they measure it?
    • minimum time to transfer a datagram from one workstation to another
    • includes processor time to transfer the datagram to the interface, time for the interface to transmit to network, transmission time on network
    • measures the overhead of interposing the network into a local communication; separate network from kernel primitives.

Kernel Primitives

  • Measure some of the V Kernel message primitives. They conclude that remote access adds a minimal penalty
  • Only adds a small delay relative to overall delay

Page Access

  • Three file access times

    • Random
    • Sequential
    • program loading
  • They conclude that random remote file access adds a minimum penalty. Why?

    • same argument as kernel primitives
    • network penalty is 4ms, disk is 20ms, only 20% more than local.
  • They then conclude that generic V IPC adds minimum overhead over a specialized file access protocol.

Open Discussion

Why does local disk access today seem much faster than remote disk access?

Lose connection to network sometimes

Given contemporary performance ratios of processors, disk and networks, is the V Kernel design more relevant or less relevant?

results matching ""

    No results matching ""