Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > df754e4e6f7f5fc8ab9d6ed8559f3e3d > files > 59

bacula-docs-5.0.3-19.fc16.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

<!--Converted with LaTeX2HTML 2008 (1.71)
original version by:  Nikos Drakos, CBLU, University of Leeds
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>General Daemon Protocol</TITLE>
<META NAME="description" CONTENT="General Daemon Protocol">
<META NAME="keywords" CONTENT="developers">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">

<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">

<LINK REL="STYLESHEET" HREF="developers.css">

<LINK REL="next" HREF="Protocol_Used_Between_Direc.html">
<LINK REL="previous" HREF="Low_Level_Network_Protocol.html">
<LINK REL="up" HREF="Daemon_Protocol.html">
<LINK REL="next" HREF="Protocol_Used_Between_Direc.html">
</HEAD>

<BODY >
<!--Navigation Panel-->
<A NAME="tex2html838"
  HREF="Protocol_Used_Between_Direc.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
<A NAME="tex2html832"
  HREF="Daemon_Protocol.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
<A NAME="tex2html826"
  HREF="Low_Level_Network_Protocol.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
<A NAME="tex2html834"
  HREF="Contents.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
<A NAME="tex2html836"
  HREF="GNU_Free_Documentation_Lice.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
<BR>
<B> Next:</B> <A NAME="tex2html839"
  HREF="Protocol_Used_Between_Direc.html">The Protocol Used Between</A>
<B> Up:</B> <A NAME="tex2html833"
  HREF="Daemon_Protocol.html">Daemon Protocol</A>
<B> Previous:</B> <A NAME="tex2html827"
  HREF="Low_Level_Network_Protocol.html">Low Level Network Protocol</A>
 &nbsp; <B>  <A NAME="tex2html835"
  HREF="Contents.html">Contents</A></B> 
 &nbsp; <B>  <A NAME="tex2html837"
  HREF="GNU_Free_Documentation_Lice.html">Index</A></B> 
<BR>
<BR>
<!--End of Navigation Panel-->

<H1><A NAME="SECTION00630000000000000000"></A>
<A NAME="1844"></A>
<A NAME="1845"></A>
<BR>
General Daemon Protocol
</H1>

<P>
In general, all the daemons follow the following global rules. There may be
exceptions depending on the specific case. Normally, one daemon will be
sending commands to another daemon (specifically, the Director to the Storage
daemon and the Director to the File daemon). 

<P>

<UL>
<LI>Commands are always ASCII commands that are  upper/lower case dependent
   as well as space sensitive.  
</LI>
<LI>All binary data is converted into ASCII (either with printf statements
   or  using base64 encoding).  
</LI>
<LI>All responses to commands sent are always  prefixed with a return
   numeric code where codes in the 1000's are  reserved for the Director, the
   2000's are reserved for the  File daemon, and the 3000's are reserved for the
Storage daemon.  
</LI>
<LI>Any response that is not prefixed with a numeric  code is a command (or
   subcommand if you like) coming  from the other end. For example, while the
   Director is  corresponding with the Storage daemon, the Storage daemon  can
request Catalog services from the Director. This  convention permits each side
to send commands to the  other daemon while simultaneously responding to
commands.  
</LI>
<LI>Any response that is of zero length, depending on the context,  either
   terminates the data stream being sent or terminates command mode  prior to
   closing the connection. 
</LI>
<LI>Any response that is of negative length is a special sign that  normally
   requires a response. For example, during data transfer from the  File daemon
   to the Storage daemon, normally the File daemon  sends continuously without
intervening reads. However, periodically,  the File daemon will send a packet
of length -1 indicating that  the current data stream is complete and that the
Storage  daemon should respond to the packet with an OK, ABORT JOB,  PAUSE,
etc. This permits the File daemon to efficiently send  data while at the same
time occasionally ``polling''  the Storage daemon for his status or any
special requests.  

<P>
Currently, these negative lengths are specific to the daemon, but  shortly,
the range 0 to -999 will be standard daemon wide signals,  while -1000 to
-1999 will be for Director user, -2000 to -2999  for the File daemon, and
-3000 to -3999 for the Storage  daemon. 
</LI>
</UL>

<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html838"
  HREF="Protocol_Used_Between_Direc.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
<A NAME="tex2html832"
  HREF="Daemon_Protocol.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
<A NAME="tex2html826"
  HREF="Low_Level_Network_Protocol.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
<A NAME="tex2html834"
  HREF="Contents.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
<A NAME="tex2html836"
  HREF="GNU_Free_Documentation_Lice.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
<BR>
<B> Next:</B> <A NAME="tex2html839"
  HREF="Protocol_Used_Between_Direc.html">The Protocol Used Between</A>
<B> Up:</B> <A NAME="tex2html833"
  HREF="Daemon_Protocol.html">Daemon Protocol</A>
<B> Previous:</B> <A NAME="tex2html827"
  HREF="Low_Level_Network_Protocol.html">Low Level Network Protocol</A>
 &nbsp; <B>  <A NAME="tex2html835"
  HREF="Contents.html">Contents</A></B> 
 &nbsp; <B>  <A NAME="tex2html837"
  HREF="GNU_Free_Documentation_Lice.html">Index</A></B> 
<!--End of Navigation Panel-->
<ADDRESS>

2012-01-24
</ADDRESS>
</BODY>
</HTML>