Back to Table of Contents

## [14.0] - Multinode Configuration (v2 Only)

    Synchronet Version 2.x runs under DOS v3.0 or greater and SHARE (or NetWare).
    A DOS process is required for each node on a Synchronet system (unless
    running Synchronet for OS/2). You can run multiple nodes on one cpu with DOS
    multitaskers such as DESQview, Windows, or OS/2 or you can run one node per CPU
    and let the CPU's share the same data on a common hard disk via Local Area
    Network (LAN).

## [14.1] - LAN Method

    Using one CPU per node is by far the fastest way to run multiple Synchronet
    nodes. Since SBBS4DOS runs in 8086 real mode, any IBM PC can run Synchronet
    with sufficient speed. The minimum equipment necessary for each node would be a
    power supply, motherboard, at least 450k free memory, a network interface card
    (NIC), floppy drive and controller (or just a boot PROM for the NIC), and a
    modem. Some BIOS's require a video controller and/or a keyboard as well, but
    they are not necessary for the execution of Synchronet.

    To link these computers together, you will need some form of networking
    software. DOS based networks (Lantastic, NetWare Lite, CBIS Network O/S,
    MainLAN etc.) are the cheapest and don't require a dedicated CPU as a file
    server, but they lack the speed of a dedicated file server and network
    operating system. The most popular Network Operating System (NOS) is Novell
    NetWare. The disk performance on a dedicated NetWare file server is often
    preferable over a local hard disk (especially on XT's) due to NetWare's high
    speed file system and dedicated memory for intelligent disk caching. Synchronet
    will run on any NOS that allows multiple CPU's running DOS to access data on a
    common disk.

## [14.2] - Multitasker Method

    Any program that allows the simultaneous execution of multiple DOS programs
    should be able to run multiple SBBS4DOS nodes per CPU. To reliably and
    efficiently run multiple DOS sessions on one CPU, you will probably need an
    80386 CPU (the faster, the better), and at least 2 megabytes of memory
    (the more, the better). Different multitaskers will have different hardware
    requirements, but the common denominator seems to be an 80386 and extended
    or expanded memory.

    IMPORTANT NOTE: When multitasking using Windows or OS/2, it is suggested that
    		you have a minimum 80486/33mhz CPU with a minimum of 8 mega-
    		bytes of memory. This is due to the requirements of the
    		operating environment, not the requirements of Synchronet.

    You will need a separate IRQ line and UART I/O address for each COM port in
    the computer. It is recommended that you use high speed, buffered 16550A UARTs
    rather than the non-buffered 16450 UARTs which some I/O cards use. If you wish
    Synchronet to always use BIOS calls for screen output, you need to include the
    B parameter on the SBBS command line. Normally, Synchronet uses direct video
    for block text which can conflict with some multitaskers that manage a split
    screen for multiple DOS sessions.

    Generally, the faster the machine, the more nodes you can run. But how many
    for what kind of performance is not an easy question to answer. It depends
    heavily on the multitasking software, modem speed, and hardware I/O. Under any
    configuration, expect some amount of performance degradation when running
    multiple nodes per CPU.

## [14.3] - Is it Safe?

    Many Sysops will worry how reliable the system is with multiple simultaneous
    users. Rest assured that Synchronet was designed from the ground up for
    multiple simultaneous users. Data integrity and system fault tolerance is never
    sacrificed when adding nodes to a Synchronet system.

    Users can post on the same sub-board, e-mail the same user, download the same
    file, run the same external program, perform virtually any system function
    simultaneously. Note: External programs must support multiple simultaneous
    users if the program has been configured for multi-user access from Synchronet.

    Considerations and precautions have been taken where user data is concerned
    to allow changes to the real-time database to take place immediately - even if
    the user is online on a node other than the one that performed the data update.
    Any security, configuration, or statistics changes made remotely will take
    effect immediately.

    The transfer section disallows simultaneous uploading of the same filename to
    the same directory and prevents a file that is currently open (being downloaded
    or just added to a user's batch download queue) from being moved, removed, or
    edited while allowing simultaneous downloads.

    As a general rule, no data files or records are allowed exact simultaneous
    access if one of the nodes will modify the data. Simultaneous read only access
    is allowed. Collisions (simultaneous write access requested of a file by two
    or more nodes) are logged along with the retry count. There is a retry maximum
    count (or time-out) that will deny access to the requesting node and log a
    critical error for that node. This situation should not occur, but provisions
    are made for it in case of hardware failure of a node with a file or record
    open with write access.

## [14.4] - Multinode: DESQview

    How many nodes?

    The answer to this question depends on the speed of your machine. Here is
    a table to estimate the maximum number of nodes you should run on any given
    machine under DESQview:

    CPU	Nodes
    386-16	1
    386-25	2
    386-33	3
    386-40	4
    486-25	5
    486-33	8
    486-50	10

    	Note: You can run more than the suggested number of nodes, but
    	      performance will decrease with each additional node.

    How much memory?

    You will need roughly 500k of available expanded memory for each node. When
    running multiple nodes, a disk cache is required. Around 1 to 2 MB should be
    used in most situations. Here is another table of estimated total system memory
    required in megabytes (assuming a 1MB disk cache is used):

    Nodes	MB of RAM
    2	3
    3	4
    4	4
    5	5
    6	5
    7	6
    8	6
    9	7
    10	7

    To save memory for each node, you can reduce the "Maximum program memory size"
    to something like 450k or so. If you get memory allocation errors when
    running SBBS, you'll need to increase this number. You can raise it beyond 640k
    and actually get more than 640k free in some situations. This number is the
    amount that DESQview will give this node if it can, or if not possible, as much
    as it can. The "Memory Size" parameter is the minimum amount the program will
    require.

    If you have VGA, you may want to change the Video mode to 80x50 or 80x60 with
    the "Rearrange" menu, and change the "Window Positions" under DVSETUP
    (advanced) and/or the "Window Position" information for the each SBBS node
    under "Change a Program Advanced Options". This way you can display multiple
    80x25 windows simultaneously.

    Don't forget to have a batch file execute DVANSI.COM before running Synchronet
    if you have external programs that access the COM port themselves and use DOS
    for output. Example: Trade Wars uses the BIOS for output so DVANSI is not
    required. Global War uses DOS for output and uses the COM port directly, so
    DVANSI is required.

    You must have "Close on exit" to [N] if you are going to execute SBBS from
    a batch file that executes other programs before SBBS. Here is an example
    batch file which will run dvansi, then Synchronet, and closes the window after
    exiting Synchronet. This example file is called SBBSDV.BAT:

    ---------------------------------[ Begin ]-------------------------------------
    @echo off
    c:\dv\dvansi
    c:\sbbs\exec\sbbs %1 %2 %3 %4 %5
    if errorlevel 1 pause
    exit
    ---------------------------------[  End  ]-------------------------------------

    This batch file (SBBSDV.BAT is just an example name), can be used to execute
    any of the Synchronet nodes, because the "Directory" parameter determines which
    node is going to run. You would have to change the "Program" parameter to
    "C:\BAT\SBBSDV.BAT" if you created SBBSDV.BAT in the C:\BAT directory.

    Start-up Scripts
    ~~~~~~~~~~~~~~~~
    If you want your nodes to be automatically loaded up when running DESQview,
    see "Learning Scripts" and "Start-up Scripts" in your DESQview manual.

    Here is an example script (in text format) that loads two Synchronet nodes
    (assuming the Open Menu keys are S1 and S2):

    DESQVIEW.TXT:

    ---------------------------------[ Begin ]-------------------------------------
    {Learn {Alt-\} "!startup"}
    {DESQ}os1
    {DESQ}os2
    {Finish}
    ---------------------------------[  End  ]-------------------------------------

    Here is an example script (in text format) that uses the Big DOS program to
    load two Synchronet nodes:

    DESQVIEW.TXT:

    ---------------------------------[ Begin ]-------------------------------------
    {Learn {Alt-\} "!startup"}
    {DESQ}obd
    dvansi{Enter}
    cd \sbbs\node1{Enter}
    sbbs{Enter}
    {DESQ}obd
    dvansi{Enter}
    cd \sbbs\node2{Enter}
    sbbs{Enter}
    {Finish}
    ---------------------------------[  End  ]-------------------------------------

    To use this script, you MUST modify the Big DOS program parameters to match
    the program setup examples given at the top of this chapter.

    To use either script, you must first convert it to DESQVIEW.DVS by running the
    DESQview CONVSCR program.

    IMPORTANT: When running under DESQView you will be required to load DOS's SHARE
    	   program.  Be sure that you do NOT load SHARE into high memory (or
    	   allow any memory managers to do so)!

## [14.5] - Multinode: OS/2

    System Requirements
    -------------------
    The OS/2 operating environment requires a faster CPU and more system memory
    (compared to DESQview) to run efficiently. Because of this, there are greater
    system requirements for running SBBS4DOS using OS/2. First, the number of
    nodes which can be run on a given CPU is approximately one half of the number
    which can be run on an equivalent CPU using DESQview. Next, it is recommended
    that an 80486 CPU of 33mhz (or greater), with 8 megabytes of memory (or more)
    be used.

    The default OS/2 communications driver is not sufficient for high speed modem
    communications, it is recommended that you replace the default drivers with
    a third party driver (such as SIO by Ray Gwinn). It is also recommended that
    you have buffered 16550 UARTs on your I/O cards rather than the non-buffered
    16450 UARTs.

    You cannot use a standard DOS FOSSIL driver with OS/2. If you require the use
    of a FOSSIL driver, you must use a FOSSIL driver which has been written for use
    with OS/2 (such as VX00).

    See the contacts reference appendix for contacting Ray Gwinn, author of SIO
    and VX00 serial communications drivers for OS/2.

    When running Synchronet under OS/2, be sure that you do NOT use any additional
    timeslice programs such as TAME or OS2SPEED.

    You should have the Win/OS2 time slice API option set to 'Yes' for all nodes
    running in an OS/2 DOS session (in each node's toggle options).

    Following are example settings for OS/2, you will find these settings by
    clicking on the DOS Settings box for the DOS window. Settings which are not
    listed should be left as default. You must run each node in its own DOS
    session, consult your OS/2 user guide for more information on running multiple
    DOS sessions.

    DOS Settings
    ~~~~~~~~~~~~
    COM_DIRECT_ACCESS		ON
    COM_HOLD			ON
    COM_SELECT			ALL
    DOS_BREAK			OFF
    DOS_BACKGROUND_EXECUTION	ON
    IDLE_SECONDS			0
    IDLE_SENSITIVITY		100
    HW_TIMER			ON
    INT_DURING_IO			ON

## [14.6] - Multinode: Windows 3.x

    System Requirements
    -------------------
    The Windows operating environment requires a faster CPU and more system memory
    (compared to DESQview) to run efficiently. Because of this, there are greater
    system requirements for running Synchronet using Windows. First, the number of
    nodes which can be run on a given CPU is approximately one half of the number
    which can be run on an equivalent CPU using DESQview. Next, it is recommended
    that an 80486 CPU of 33mhz (or greater), with 8 megabytes of memory (or more)
    be used.

    Following are example settings for Windows. Settings which are not listed
    should be left as default. A setting with (check) next to it means the box
    for that setting should be marked, and (no check) means the setting should
    not be marked.

    386 Enhanced Mode Settings
    ~~~~~~~~~~~~~~~~~~~~~~~~~~
    All com ports should be set to Never Warn.

    Set the Minimum Timeslice to 15.

    Exclusive in Foreground (no check).

    PIF Settings
    ~~~~~~~~~~~~
    Program Filename	: SBBS.BAT
    Startup Directory	: C:\SBBS\NODE1 (modify as required)
    Video Memory		: (Text should be checked)

    Memory Requirements
    	KB Required	: 450
    	KB Desired	: 640

    *EMS Memory
    	KB Required	: 360
    	KB Limit	: 1024

    *XMS Memory
    	KB Required	: 360
    	KB Limit	: 1024

    *NOTE: EMS and/or XMS memory will need to have a value if you wish to allow
           Synchronet to swap using either of these.

    Display Usage
    	Windowed	: (check)

    Execution
    	Background	: (check)

    PIF Settings - Advanced Options
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Multitasking Options
    	Background Priority	: 70
    	Foreground Priority	: 70
    	Detect Idle Time	: (no check)

    Memory Options
    	EMS Memory Locked	: (check)
    	XMS Memory Locked	: (no check)
    	Uses High Memory Area	: (no check)
    	Lock Application Memory : (check)

    Display Options
    	Emulate Text Mode	: (check)
    	(all remaining options) : (no check)

    Other Options
    	Allow Close When Active : (check)

    IMPORTANT: These are settings to get you started!  Different machines and
    configurations require different settings, and it may take some trial and
    error with different memory and timeslice settings to get everything working
    as you desire.	Also note that the default windows communications driver
    probably will NOT be sufficient for high speed modems, and you will probably
    want to purchase a third party communications driver that can handle higher
    baud rates under windows. When running windows, be sure to load SHARE before
    you run windows!

## [14.7] - Multinode: Windows 9x

    System Requirements
    -------------------
    The Windows 95 operating environment requires a faster CPU and more system
    memory (compared to DESQview) to run efficiently. Because of this, there are
    greater system requirements for running Synchronet using Windows 95.  You
    should follow the recommendations included with Windows 95 for your system and
    memory requirements, we recommend a minimum 80486 CPU of 33mhz with at least 8
    megabytes of memory.

    Basically Windows 95 straight out of the box will run Synchronet without any
    problems.  Following is some information to help you get Synchronet set up
    under Windows 95 and to help get it running a little more efficiently.

    First we want to set up an ICON for each of the Synchronet nodes you plan to
    run under Windows 95.  The following steps will guide you through adding one:

    1) From Windows 95 Explorer go to the directory of the node you are setting up,
       (e.g. for node 1 this would normally be C:\SBBS\NODE1).

    2) On the right side of Explorer you'll see SBBS.BAT, click on it with your
       RIGHT mouse button.

    3) Go to NEW and click on SHORTCUT.

    4) Click on BROWSE, find the SBBS.BAT file in the sub-directory for this node
       and DOUBLE CLICK on it.

    5) Click on NEXT.

    6) Click on CHOOSE ICON and select the ICON you wish to use for this node.

    7) Click FINISH.

    That's all there is to creating an ICON (shortcut) for Synchronet.  Do this for
    each of your Synchronet nodes.	Now there are a couple of settings you'll want
    to change for better efficiency:

    1) For each node set the IDLE SENSITIVITY to it's lowest (all the way to the
       left-hand side).

    2) In SCFG under each node, set the toggle option 'Windows/OS2 Time Slice API'
       to 'YES'.

## [14.8] - Multinode: LAN

    Most of the information necessary for setting up your nodes on a LAN will be
    provided by the documentation for your Network Operating System. All that
    Synchronet requires is that each node have access to the SAME drive for
    data storage. ALL Synchronet directories must be accessible by ALL nodes as
    the SAME drive letter (if multiple drives are in use). If one drive is used
    for all BBS data, then simply remove all drive letters from the configured
    paths in SCFG (and each workstation can use different drive letters if
    necessary).

    You may mix the LAN multinode method with the multitasker method to get more
    than one node on each workstation.

    NOTE: When using Netware 3.x or 4.x you should create a SHELL.CFG or NET.CFG in
          the directory where your workstation loads your network files.  In the
          SHELL.CFG or NET.CFG file you should have the line: SHARE=OFF.  You will
          also need to load the SHARE program that comes with DOS. Most other
          networks also require that you use the SHARE program that is included
          with DOS.

    *** IMPORTANT ***

    Do not give ANY of the files associated with Synchronet a sharable file
    attribute. Synchronet uses file and record locking to handle multiple
    simultaneous file access requests and maintain data integrity. "Flagging"
    a file "sharable" overrides these locking methods and will cause Synchronet
    to corrupt your data in a multinode system.

Back to Top

Copyright © 2000 by Rob Swindell
Synchronet BBS Software (Synchronet) Version 3 is comprised of several documentation,
library, executable, and source code files, all of which are covered by the
GNU General Public License with the exception of the following portions covered by
the GNU Lesser General Public License: SMBLIB and XSDK.
Synchronet Version 2 (for DOS and OS/2) and its source code was released to the
Public Domain by Digital Dynamics in 1997 and remains Public Domain software today.
Synchronet Version 3 is not Public Domain software.

Rob Swindell
PO Box 501
Yorba Linda, CA 92885
http://www.synchro.net

For the complete Copyright Information please read the Copyright Documentation .