INTRO(5)                                                 INTRO(5)

     Name
          intro - Introduction to Op, the Box Protocol.

     Synopsis
          #include <op.h>

     Description
          Plan B uses the Op protocol, described in this section, to
          operate on boxes.

          The procotol is based on RPCs used to operate on remote
          boxes. Each RPC has a request message and a reply
          messagethere is also a generic status reply message that
          can be used for requests that do not need to return data to
          the caller and also to report error conditions while pro-
          cessing requests.

          The kernel uses a procedural interface for Op; it calls pro-
          cedures for each request defined in Op.  The implementation
          of such procedures for remote boxes is in charge of
          sending/receiving messages.

          All requests are self-contained, and correspond almost one
          to one with system calls. Although some requests have a cor-
          responding reply message defined, all of them may be replied
          by a status(5) message to notify any error condition to the
          request sender.

          Op requests refer to boxes. A box is identified by the
          server address, and by the box selector (i.e. name) used by
          the server to name the box; both are strings.

          The synopsis sections in the following pages show the fields
          of the messages involved. The format for binary numbers is
          that of 386 machines. Strings are null terminated. All mes-
          sages start with an OpHdr structure, with a magic number, a
          serial request number, and an operation id. Manual pages
          show just the symbolic name for the request. All messages
          carry also authentication information, that is not shown in
          the following pages.  For a detailed description of the mes-
          sage format, you can refer to the header file op.h that con-
          tains the detailed declaration for the OpMsg data structure
          that describes Op messages.

     Source
          /src/b/port/rbox.c and /src/b/port/op.c

     See also
          intro(1)

     INTRO(5)                                                 INTRO(5)

          Plan B: Boxes for network resources.  Francisco J Balles-
          teros.

          The Box: A replacement for files.  Francisco J Ballesteros
          and Sergio Arevalo. HotOS-VII.

          intro(1).

     Bugs
          Many, this section is not different and the protocols is
          young.