Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Brian » Thu, 14 Nov 1996 04:00:00



I am looking for the best Reliability/Performance/Price (in that order)
OS for handling a large number of SLIP/PPP connections (Don't want
a terminal server - this is a wierd application).

Also, I am seeking suggested configurations (CPU, RAM, DISK, etc) for a
system capable of handling up to 1000 connections (possibly more) at a time.

I have seen various messages while trying to find this information, and
would appreciate the insight of the comp.unix.* community on which platform
works most reliabily and which ones to steer clear of, how much RAM needed
per user, and other important issues such as this.

Thanks Muchly for your input!

        - Brian G.

--
Jesus Saves, and passes to Moses, who shoots and SCORES!

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Doug Siebe » Thu, 14 Nov 1996 04:00:00



>I am looking for the best Reliability/Performance/Price (in that order)
>OS for handling a large number of SLIP/PPP connections (Don't want
>a terminal server - this is a wierd application).
>Also, I am seeking suggested configurations (CPU, RAM, DISK, etc) for a
>system capable of handling up to 1000 connections (possibly more) at a time.

Just finding a Unix machine capable of handling 1000 simultaneous serial
connections will be a really hard.  1000 TCP/IP connections is easy, but
serial is going to require a lot of external hardware, and I'll bet it is
very expensive, and requires a very high end system to be expandable enough.
Maybe you can do it with PCs, they probably have cards that'll do maybe 8
serial connections per card, so a few _dozen_ PCs could do this.  Do you
really want to manage a few dozen PCs in this way?  I wouldn't.

You will do a LOT better getting enough terminal servers to handle 1000
connections and then a separate Unix box or boxes of whatever type you like
to handle the "weird application" of which you speak.

--
Douglas Siebert                Director of Computing Facilities

Ack!  My reality check just bounced!!

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Thor Lancelot Sim » Thu, 14 Nov 1996 04:00:00





>>I am looking for the best Reliability/Performance/Price (in that order)
>>OS for handling a large number of SLIP/PPP connections (Don't want
>>a terminal server - this is a wierd application).

>>Also, I am seeking suggested configurations (CPU, RAM, DISK, etc) for a
>>system capable of handling up to 1000 connections (possibly more) at a time.

>Just finding a Unix machine capable of handling 1000 simultaneous serial
>connections will be a really hard.  1000 TCP/IP connections is easy, but
>serial is going to require a lot of external hardware, and I'll bet it is
>very expensive, and requires a very high end system to be expandable enough.
>Maybe you can do it with PCs, they probably have cards that'll do maybe 8
>serial connections per card, so a few _dozen_ PCs could do this.  Do you
>really want to manage a few dozen PCs in this way?  I wouldn't.

There are a number of ISA and PCI-bus intelligent serial cards which will
handle either 16 or 32 serial ports per card.  If you shop around, you might
even find one that uses the Cirrus Logic chipset which can do PPP in the UART
and DMA TCP/IP packets into memory for you.

Load a PC up with such cards, and you're at at least 100 ports per system.
What, do you think that PCs only have one slot?

Quote:>You will do a LOT better getting enough terminal servers to handle 1000
>connections and then a separate Unix box or boxes of whatever type you like
>to handle the "weird application" of which you speak.

Maybe.  If you can do it all in one piece, why spend the dough on the terminal
servers?  The real question is how many serial ports he can put in a PC before
the thing has such a tremendous interrupt load that it can't get anything else
done.

--

  There's nothing like rancid bear fat to keep you happy.       -Perry Metzger

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Phil Hutchins » Fri, 15 Nov 1996 04:00:00






>>>I am looking for the best Reliability/Performance/Price (in that order)
>>>OS for handling a large number of SLIP/PPP connections (Don't want
>>>a terminal server - this is a wierd application).

>>>Also, I am seeking suggested configurations (CPU, RAM, DISK, etc) for a
>>>system capable of handling up to 1000 connections (possibly more) at a time.

>>Just finding a Unix machine capable of handling 1000 simultaneous serial
>>connections will be a really hard.  1000 TCP/IP connections is easy, but
>>serial is going to require a lot of external hardware, and I'll bet it is
>>very expensive, and requires a very high end system to be expandable enough.
> ... blah blah blah ...

Central Data's terminal servers interface to Unix ( and probably NT by now )
via the scsi bus and their serial ports are accessed via standard device
files on the Unix system.  We use Central Data's terminal servers in a
console consolidation, automation and remote access product.


WWW:  http://www.cd.com

Phil

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Brian Some » Sat, 16 Nov 1996 04:00:00




: Maybe.  If you can do it all in one piece, why spend the dough on the terminal
: servers?  The real question is how many serial ports he can put in a PC before
: the thing has such a tremendous interrupt load that it can't get anything else
: done.

I suspect this is why briang suggested the terminal server idea (despite
the original poster saying he didn't want to use one) in the first place.
Even if you have one IRQ for 16 ports, you're only really looking at 80
direct serial connections per pc.

It would be better to have something like a terminal server translating your
traffic to something more "expandable" like network traffic.

--

      <http://www.awfulhak.demon.co.uk/>
Don't _EVER_ lose your sense of humour....
.

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Curt Samps » Sun, 17 Nov 1996 04:00:00




>: The real question is how many serial ports he can put in a PC before
>: the thing has such a tremendous interrupt load that it can't get anything
>: else done.
>...
>Even if you have one IRQ for 16 ports, you're only really looking at 80
>direct serial connections per pc.

Putting hundreds of serial ports on a PC is not a problem. There
are various manufacturers out there making single-board products
that will handle well over a hundred serial ports, and you can
easily put several of these boards in a system. However, a thousand
on a single PC is likely pushing it a bit.

Interrupts are not a problem when you have this many serial ports,
since there are none: you poll.

I've personally seen a 486/66 handle about 70 serial ports at 14.4
with no problem, and a Pentium handle 150 at 28.8 with no problem.
These were running SCO Unix with Digiboards and a custom bulletin-board
application.

But still, before you go ahead with something like this, you should
keep in mind the fact that this applicaton was eventually moved to
terminal servers too.

cjs
--

Internet Portal Services, Inc.  
Vancouver, BC   (604) 257-9400          De gustibus, aut bene aut nihil.

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Matt Dill » Sun, 17 Nov 1996 04:00:00




:>
:>>: The real question is how many serial ports he can put in a PC before
:>>: the thing has such a tremendous interrupt load that it can't get anything
:>>: else done.
:>>...
:>>Even if you have one IRQ for 16 ports, you're only really looking at 80
:>>direct serial connections per pc.
:>
:>Putting hundreds of serial ports on a PC is not a problem. There
:>are various manufacturers out there making single-board products
:>that will handle well over a hundred serial ports, and you can
:>easily put several of these boards in a system. However, a thousand
:>on a single PC is likely pushing it a bit.
:>
:>Interrupts are not a problem when you have this many serial ports,
:>since there are none: you poll.
:>
:>I've personally seen a 486/66 handle about 70 serial ports at 14.4
:>with no problem, and a Pentium handle 150 at 28.8 with no problem.
:>These were running SCO Unix with Digiboards and a custom bulletin-board
:>application.
:>
:>But still, before you go ahead with something like this, you should
:>keep in mind the fact that this applicaton was eventually moved to
:>terminal servers too.
:>
:>cjs
:>--

:>Internet Portal Services, Inc.    
:>Vancouver, BC   (604) 257-9400             De gustibus, aut bene aut nihil.

    Nobody polls serial ports except old Mac software that didn't know
    any better.

    Modern multi-port serial cards will do hardware handshaking themselves
    and use FIFOs.  A PC would generally have no problem handling a hundred
    ports.  A pentium could probably run PPP with three or four hundred
    (at 115.2Kbps) before it gets saturated, assuming you dedicated it
    entirely to the task.

                                                -Matt

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Thor Lancelot Sim » Sun, 17 Nov 1996 04:00:00






>: Maybe.  If you can do it all in one piece, why spend the dough on the terminal
>: servers?  The real question is how many serial ports he can put in a PC before
>: the thing has such a tremendous interrupt load that it can't get anything else
>: done.

>I suspect this is why briang suggested the terminal server idea (despite
>the original poster saying he didn't want to use one) in the first place.
>Even if you have one IRQ for 16 ports, you're only really looking at 80
>direct serial connections per pc.

This is not what "interrupt load" means.  Go read some code, or at least some
theory.

Curt pointed out that much of the larger multi-port serial-port hardware for
PCs is polled.  I'm interested in the impact of this on throughput on those
serial ports; Curt, can you tell me more?

I still think those Cirrus PPP-UARTS are way cool; I wish someone would build
cards for PCs that used them, other than the Cirrus demonstrator.  I've got
programming specs, too.
--

  There's nothing like rancid bear fat to keep you happy.       -Perry Metzger

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Thor Lancelot Sim » Sun, 17 Nov 1996 04:00:00








>:..
>:>
>:>Curt pointed out that much of the larger multi-port serial-port hardware for
>:>PCs is polled.  I'm interested in the impact of this on throughput on those
>:>serial ports; Curt, can you tell me more?

>    They are (or should) still be interrupts, but possibly fixed-period
>    interrupts.  i.e. one interrupt per millisecond if data is present...
>    or something like that.  This isn't really polled, but it does allow
>    486/pentium caches to work better in terms of taking the load.

Well, that's going to work about like a DMA-completion interrupt on a serial
port that does DMA, I'd think, except that the CPU doesn't have to move the
data.  The kind of purely polled serial port interface I've seen once before
worked with a tight loop that serviced all of the serial ports on the machine:
turn off hardware flow control, wait a very short interval, read some data,
turn on flow control, go to the next port.  You do get a guarantee that you
won't get more data than you can handle, this way, depending how much CPU time
you are willing to spend spinning through the loop.  I seem to remember that
they finally had to do this on certain DEC terminal servers to handle all of
the ports running at 38400 without losing data.

You do get a guarantee that you won't lose data, but the problem is that
throughput on each port drops as you add more ports, and drops further as you
give the machine other tasks to do.  For a terminal server, you can get away
with this by ensuring that you have "enough" CPU, but I still am far from in
love with this design -- or any similar polled design.  Note that serial port
hardware that automatically frobs the flow control line when its FIFO hits a
trigger point is essentially a refinement of this technique, but I still
wouldn't want to run it totally interruptless, and I'd still think that you'd
do better with DMA.

--

  There's nothing like rancid bear fat to keep you happy.       -Perry Metzger

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Curt Samps » Sun, 17 Nov 1996 04:00:00




>    Nobody polls serial ports except old Mac software that didn't know
>    any better.

>    Modern multi-port serial cards will do hardware handshaking themselves
>    and use FIFOs.

And how does the data get out of the FIFOs? You've got it: polling.
No interrupts are generated.

cjs
--

Internet Portal Services, Inc.  
Vancouver, BC   (604) 257-9400          De gustibus, aut bene aut nihil.

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Curt Samps » Sun, 17 Nov 1996 04:00:00




Quote:>Curt pointed out that much of the larger multi-port serial-port hardware for
>PCs is polled.  I'm interested in the impact of this on throughput on those
>serial ports; Curt, can you tell me more?

As far as I know, thoughput is just fine. I don't know all the
details of the Digiboards and whatnot, but I assume they work pretty
much like the ones they used to use on the VAX. Each port has an
input silo, and all of the handshaking and whatnot is taken care
of by the board. Every few milliseconds or so you wander by and
grab all of the data that's come in for all of the serial ports,
and drop it up into the appropriate tty queues. Your latency is
whatever your polling period is, so basically you decide what
tradeoff you want to make between CPU usage and latency. Output is
dead easy, you just write the biggest chunks you have (generally
up to a kilobyte) into the output silo and wait for it to get sent.

Quote:>I still think those Cirrus PPP-UARTS are way cool; I wish someone would build
>cards for PCs that used them, other than the Cirrus demonstrator.  I've got
>programming specs, too.

Well, I can't see any reason you couldn't make these intelligent
serial boards just a bit more intelligent and teach them about SLIP
and PPP framing. Then for ports you know you're running SLIP or
PPP on, you delay the copy until you've got a full packet available
in the silo.

cjs
--

Internet Portal Services, Inc.  
Vancouver, BC   (604) 257-9400          De gustibus, aut bene aut nihil.

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Matt Dill » Mon, 18 Nov 1996 04:00:00





:..
:>
:>Curt pointed out that much of the larger multi-port serial-port hardware for
:>PCs is polled.  I'm interested in the impact of this on throughput on those
:>serial ports; Curt, can you tell me more?

    They are (or should) still be interrupts, but possibly fixed-period
    interrupts.  i.e. one interrupt per millisecond if data is present...
    or something like that.  This isn't really polled, but it does allow
    486/pentium caches to work better in terms of taking the load.

                                        -Matt

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Matt Dill » Mon, 18 Nov 1996 04:00:00




:>
:>>    Nobody polls serial ports except old Mac software that didn't know
:>>    any better.
:>>
:>>    Modern multi-port serial cards will do hardware handshaking themselves
:>>    and use FIFOs.
:>
:>And how does the data get out of the FIFOs? You've got it: polling.
:>No interrupts are generated.
:>
:>cjs
:>--

:>Internet Portal Services, Inc.    
:>Vancouver, BC   (604) 257-9400             De gustibus, aut bene aut nihil.

    Let me get this straight.. you believe that since there is a FIFO
    involved that the only way to get the data out is by polling ?

    Leave the hardware explanations to hardware engineers... you obviously
    aren't one.

                                                -Matt

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Matt Dill » Mon, 18 Nov 1996 04:00:00








:>>:..
:>>:>
:>>:>Curt pointed out that much of the larger multi-port serial-port hardware for
:>>:>PCs is polled.  I'm interested in the impact of this on throughput on those
:>>:>serial ports; Curt, can you tell me more?
:>>
:>>    They are (or should) still be interrupts, but possibly fixed-period
:>>    interrupts.  i.e. one interrupt per millisecond if data is present...
:>>    or something like that.  This isn't really polled, but it does allow
:>>    486/pentium caches to work better in terms of taking the load.
:>
:>Well, that's going to work about like a DMA-completion interrupt on a serial
:>port that does DMA, I'd think, except that the CPU doesn't have to move the
:>data.  The kind of purely polled serial port interface I've seen once before
:>worked with a tight loop that serviced all of the serial ports on the machine:
:>turn off hardware flow control, wait a very short interval, read some data,
:>turn on flow control, go to the next port.  You do get a guarantee that you
:>won't get more data than you can handle, this way, depending how much CPU time
:>you are willing to spend spinning through the loop.  I seem to remember that
:>they finally had to do this on certain DEC terminal servers to handle all of
:>the ports running at 38400 without losing data.
:>
:>You do get a guarantee that you won't lose data, but the problem is that
:>throughput on each port drops as you add more ports, and drops further as you
:>give the machine other tasks to do.  For a terminal server, you can get away
:>with this by ensuring that you have "enough" CPU, but I still am far from in
:>love with this design -- or any similar polled design.  Note that serial port
:>hardware that automatically frobs the flow control line when its FIFO hits a
:>trigger point is essentially a refinement of this technique, but I still
:>wouldn't want to run it totally interruptless, and I'd still think that you'd
:>do better with DMA.
:>
:>--

:>
:>  There's nothing like rancid bear fat to keep you happy.  -Perry Metzger

    On a pentium class machine, DMA would yield at least a 5:1 improvement
    in cpu efficiency, mainly because the cpu doesn't stall doing the I/O
    reads individually.  With DMA, the data is already in memory, and the
    cpu can snarf it up at memory speeds rather then I/O speeds, and most
    pentium chipsets decouple the PCI/ISA DMA from main memory bus (i.e.
    no stall).

    The standard way to do serial I/O in this fashion is to have a idle
    timer... if you are DMA'ing in blocks of 256 bytes, and 200 bytes come
    in, the idle timer times out after X ticks to close out the DMA.  Most
    FIFO-based serial chips like the signetics series chips use the same
    trick, but make it transparent.  So even though you are getting
    character rates of, say, 11.5 KBytes/sec, you only get one interrupt
    every X characters rather then an interrupt for each character.  However,
    you still pay the instruction-stall overhead if you are read data from
    the I/O board with the cpu (FIFO or not), whereas you do not pay the
    stall overhead with DMA.  

    On a 200 MHz pentium, stalls are *very* costly... if a typical
    I/O read from an ISA card takes 1uS, you just stalled a single
    instruction for 200 cycles!  Thus, you can probably do 5 to 50 times
    the number of serial ports with a PCI+DMA or ISA+DMA solution then you
    could ever do with a ISA+READ-ON-INTERRUPT solution.  This is probably
    part of the impetus to going to SCSI device based multi-port serial
    devices... SCSI controllers are almost always DMA based.

                                                -Matt

 
 
 

Best Unix for SLIP/PPP Server- Best Reliability/Cost?

Post by Matt Dill » Mon, 18 Nov 1996 04:00:00





:>
:>>Curt pointed out that much of the larger multi-port serial-port hardware for
:>>PCs is polled.  I'm interested in the impact of this on throughput on those
:>>serial ports; Curt, can you tell me more?
:>
:>As far as I know, thoughput is just fine. I don't know all the
:>details of the Digiboards and whatnot, but I assume they work pretty
:>much like the ones they used to use on the VAX. Each port has an
:...
:>
:>>I still think those Cirrus PPP-UARTS are way cool; I wish someone would build
:>>cards for PCs that used them, other than the Cirrus demonstrator.  I've got
:>>programming specs, too.
:>
:>Well, I can't see any reason you couldn't make these intelligent
:>serial boards just a bit more intelligent and teach them about SLIP
:>and PPP framing. Then for ports you know you're running SLIP or
:>PPP on, you delay the copy until you've got a full packet available
:>in the silo.
:>
:>cjs
:>--

:>Internet Portal Services, Inc.    
:>Vancouver, BC   (604) 257-9400             De gustibus, aut bene aut nihil.

    It's probably overkill, but 68302's (motorola) make GREAT serial ports.
    Not only can you run async to 600 Kbps or better on all three ports, but
    you can program the ports to recognize SLIP/PPP/other escaped packets,
    plus the ports do DMA, plus you have a 68000 cpu to play with to
    do further smart processing.  There are some real cheap versions of
    the '302 available now, some as low as $12 -- or $4 per port.

    In general, the only reason multi-port turnkey (black box) solutions
    are more expensive then PC solutions is that it's a seller's market.
    It actually costs a whole lot less to make a black box with a whole
    slew of serial ports and an ethernet interface then it is to run them
    on a PC.

                                                -Matt

 
 
 

1. Best/Easiest/Most cost efficient OS for internet server?

I am connecting the public school system I work for to the internet through a
56K leased line, I plan on using a Pentium 100 w/ 32 Meg RAM and 4Gb HD (about
as much hardware as we can afford).  The rest of our system is DOS/Windows
machines on ethernet with Novell Netware fileservers.  I have minimal UNIX
experience and zero Windows-NT experience (quite a bit of WFWg experience).  
I've been told NT or Linux would be the best to handle email and eventually web
pages, we have no plans to support usenet on site at this time (unless we can
block out specific groups).

I don't mean to start a war, but I am interested in the pros and cons of each
OS, particularly in ease of setup, hardware support, stability, and
expandability.

Thanks in advance,
DeWain Molter

PS. Any guess how much more hardware I would need to support usenet if we
blocked the most popular binary groups?

2. More on popper

3. Best server? Was: What is the best newsreader?

4. parallel TCP streams increasing total throughput?

5. SLIP/PPP/??? - Are they secure, which is best?

6. Monitoring TCP/IP daemonns and system resources on Linux systems via snmp

7. Multi-Serial IO Boards- Which best for PPP/SLIP

8. Mail Forwarding

9. The best MTU for slip/ppp

10. TIAs vs PPP & SLIP Best of Both?

11. Best PCI 10/100 Mbps NIC in terms of reliability and stability (for Linux, of course)

12. Best Low Cost System to Run Linux

13. What is the best low cost PCI SCSI card+external tape backup combo?