Re: How did multi-node boards work?

"Marc Lewis" <[email protected]> Tue, 17 Apr 2024 17:18:54
Newsgroups alt.bbs.general
Organization FidoNet
Message-ID <[email protected]>
+ User FidoNet address: 1:396/45
Hello All.

<On 11Apr2024 22:19 Grant Taylor (1:396/4) wrote a message to All regarding Re:
How did multi-node boards work? >


 GT> On 4/3/24 20:47, Marc Lewis wrote:
> Hello All.

 GT> Hi Marc,

Greetings, Grant.

> Grant, I may have replied to this in the past, but somehow I have 
> lost track of that response, if it actually existed...

 GT> Thank you for the reply.  You did send something in late '20, but I
 GT> think it's better to be sure and it looks like this might be more 
 GT> detailed response.

> I can only refer to how my system under OS/2 does it. Each node of 
> the BBS (mu setup had 4 running simultaneously) is in it's own memory 
> space. I run a software called Maximus (the version specifically for 
> OS/2). The closest equivalent I can think of was when I was running 
> the DOS version under DesqView; each node ran independently, but 
> could actually "see" a user under the other node so a "Chat" could 
> take place between them.  I suppose to make it a little more clear, 
> there is ONE Maximus directory with each "node" having it's own user 
> "directory" e.g \Maximus
>                                               \0
>                                               \1
>                                               \2
> Where the user information is stored for who is on, and the "door" 
> information files for the various games and functions.

 GT> Are those three (sub)directories for the current connected user on
 GT> a  given node?  Or are they actual user directories; e.g. Mark &
 GT> Grant?  --    I'm going to assume the former unless / until you
 GT> correct me. 

When someone logs into the system via Telnet (or my local node) it's assigned
to a specific sub-directory in the \MAX directory relative to the order the
call was received in.  E.g., if I log into the system locally (not telnet) it's
automagically Node 0 and my user info appears in that subdirectory. The next
person that logs in via telnet will end up in either \1, \4, or \5. \2 is
dial-up. \3 is a special purpose one that is seldom used, though if I had
another available node in VModem, it would be used for that, but the license is
for 3 nodes. Of course VModem isn't utilised for dial-up.  

> The command file (BBS.CMD) that runs the whole thing is driven by the 
> front end. It's a lengthy file; if you'd like to see a copy just ask 
> and I'll post it in a reply message. It's been over 2 decades since 
> I wrote that .cmd file.  It came into being with the graduation from 
> DesqView to OS/2' it was done rather differently back then.

 GT> I'm getting the impression that each instance of the BBS is sort of
 GT> run  in isolation but can look in specific locations / directories
 GT> to see if  there is status from other instances that should be
 GT> integrated into what  the local instance is doing.

> Inasmuch as each node is on the same machine; each node can "see" 
> the other and who is on

 GT> What I'm not yet clear on is how users on separate nodes would chat
 GT> with  each other.  Do the nodes literally store the typed message
 GT> into a file  that the other node sees and presents to it's user in
 GT> a relatively real  time fashion?

It's all part of the Maximus program, where it can "see" the other users and
whether or not they are available for chat (not in an external program like a
game or editing a message.)  On the Main Menu there is a Who command that shows
(W)ho is on [one presses 'W' to get to that.] And yes, inter-node chat is in
real-time. I am sure that other BBS systems can do something similar.

[snip]

> I think I mentioned that the BBS program is in ONE directory with 
> a subdirectory for each "node" or caller. The program can "see" 
> that other "nodes" are in use by a certain group of indicator files, 
> making this type of chat system possible.

 GT> I think what I'm mentally struggling with is that chat, or (near)
 GT> real  time communications, that I'm used to is more than just two
 GT> users  appending statements to different files.  Though I can see
 GT> how  \Maximus\0\chat-with-1.txt and \Maximus\1\chat-with-0.txt
 GT> having lines  (appended?) of text could work.

I've not given too much thought to precisely how the system does real-time, but
with a system like OS/2 (and probably certain versions of Windows that are
genuine multi-tasking/multi-threaded it would be possible.)

> LANtastic was strictly peer-to-peer. More than likely, NetWare Lite / 
> Personal I believe was also strictly peer-to-peer.  Full-blown NetWare 
> was somewhat different.

 GT> Seems like the crux was that each node could access and update the
 GT> same  set of directories, probably independent of the underlying 
 GT> communications mechanism.

 GT> I suspect that extends to running multiple nodes at the same time
 GT> via  DesqView / OS/2 / Windows NT, etc.

> See my prior explanation.

 GT> Let me re-phrase.  Was there any communications between the nodes
 GT> that  wasn't based on files / directories in a common directory
 GT> structure? 

 GT> Did nodes initiate a network protocol based connection to each
 GT> other w/o  using file / directory structure?  E.g. did they open a
 GT> network socket  to each other?

On Maximus, everything is internal to the BBS program. It know precisely what
is available to whatever. There probably *are* some internal intra-node
"protocols", but, not being a programmer, I don't actually know how it is
accomplished... It just works. <grin>

Hopefully that sheds a tiny bit more light on my somewhat antiquated but still
operating BBS system.

Best regards,
Marc

.. To boldly go where no sane man has any business...
--
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ The FidoNet News Gate (Huntsville, AL - USA)        +
+ The views of this user are strictly his or her own. +
+++++++++++++++++++++++++++++++++++++++++++++++++++++++

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus