HOWTO setup a BID server network


The BID server is a middleware product used to transport information based on eMail from a sender to a receiver using the already available eMail server infrastructure. The basic eMail setup is done by the UNIX support and not part of this document. The BID software is an add-on to the already available UNIX eMail server used for sending and receiving eMails. The advantage of an eMail server is the ability to temporary store eMails locally if the receiver is not available or if the network is down. This feature is called an asynchronous transfer and make's the sender independent from the receiver. A basic eMail communication is a sequence of eMail hubs sending and receiving tasks up to the final target eMail server. The BID server is able to work as a single stand-alone server on a single eMail host or the BID server is installed on every eMail server (this mean on every UNIX host able to send out and receive eMails including the hubs)

a standalone BID server

A standalone BID server is installed on a single UNIX host using a single eMail server.

This setup is preferred if:

  1. the information volume is low (< 10 eMails per second)
  2. the BID server processing plugins are easy and fast
  3. the network is fast and the traffic is only local
  4. every sending application is able to resend data if the local network is not available (data loss protection)
  5. no load balancing is required
The setup looks like this:

  HOST1     HOST2    HOST3    ...   HOSTn           <-- sending/receiving eMails
  =====     =====    =====          =====
    |         |        |              |
    -----------------------------------             <-- network transport
              BID server                            <-- processing eMails

a peer2peer BID server network cluster

A peer2peer BID server network cluster is installed on every host able to send and receive eMails. As basic goal for this setup is to do the processing of information as most as possible on the sender host to keep the load local and to avoid a single point of failure in a centralized network.

This setup is preferred if:

  1. the information volume is high (>= 10 eMails per second)
  2. complex BID server plugin processing is required
  3. wide area transfers are used (as bigger a network is and more components are used in sequence as bigger is the potential risk of a network downtime)
  4. strong data loss protection (data is send only to the local eMail server, and this eMail server will manage the transport even if the receiver is temporary not available)
  5. using advanced features of the BID server

The setup looks like this:

    HOST1+BID1 --- HOST2+BID2
    ==========     ==========
        |      \ /      |
        |       X       |
        |      / \      |
    ==========     ==========
    HOST3+BID3 --- HOSTn+BIDn
Every host is sending, receiving and processing eMails. This setup has the requirement to keep the plugins in sync on every host. It is best practice to use a unique BID account on every host and to define a single BID server for developing the plugins. If a plugin is ready for shipping the update of the hosts will be done using scp or rsync from the development host to the target hosts. It is not required to restart the server or to restart the eMail server for updating any part of the BID server, just copy the software to the right place and you will be fine.
Generated on Thu Sep 13 21:19:10 2007 for bid by  doxygen 1.5.0