initial checkin of 34c3 talk on BBSs

This commit is contained in:
Harald Welte 2017-12-27 12:47:20 +01:00
parent 8100f49759
commit a0ab9dea57
20 changed files with 6579 additions and 0 deletions

View File

@ -0,0 +1,4 @@
all: bbs_early_internet.html
bbs_early_internet.html: bbs_early_internet.adoc bbs_early_internet.css images/*
asciidoc -a stylesheet=$(PWD)/bbs_early_internet.css bbs_early_internet.adoc

View File

@ -0,0 +1,346 @@
BBSs and Early Internet Access in Germany
=========================================
:author: Harald Welte <laforge@gnumonks.org>
:copyright: 2017 by Harald Welte (License: CC-BY-SA)
:backend: slidy
:max-width: 45em
== Circuit Switched Telephony
* Telephony from 1876 until ~ 1988
* Analog voice circuit 300-3000 Hz
* Dial-up connection between A and B party
* Copper wires physically switched at intermediate telephone exchange
* Voice signal possibly amplified in the path
== Hardware
* Telephone
* Copper wire
* Telephone Exchange
== Accoustic Coupler
* First devices to transmit bits as audible tones over telephone
* User manually dialled phone number like voice call
* After call was established, both sides put receiver into coupler
image:images/accoustic_coupler.jpg[width="50%"]
== Modems
Automatization of the accoustic coupler
* Avoid speaker/micrphone path
* directly generate/receive tones on phone line
* directly dial the phone number / answer the line
image:images/Modems.jpg[width="50%",float="right"]
== Modem Speeds / Standards
[width="50%",options="header"]
|======
|Standard|Rate (bps)|Year created
|V.21 |300 |1962*
|V.22 |1200 |1980*
|V.22bis |2400 |1984*
|V.32 |9600 |1984*
|V.32bis |14400 |1991
|V.32ter |19200 |1993
|V.34 |28000 |1994
|V.34bis |33600 |1996
|V.90 |56000 |1998
|======
== BBSs
What's a BBS?
* Computer with Modem accepting incoming calls
* offering interactive service to users who dial in
== Content
* bulletin boards / message boards
* live chat with sysop (or other users in multi-line BBS)
* multi-user games (text based!)
* file areas / downloads
* ASCII / ANSI artwork
image:images/dosbox-telemate-login.png[width="50%"]
== Technology/Software
* Both sides: Computer + Modem
* BBS Side
** BBS Software
** often extended by "doors" (external programs, think of CGI for web)
* User Side
** Terminal Program (e.g. TELIX, Telemate for DOS)
image:images/telemate.jpg[width="50%"]
== The "BBS Protocol Stack"
In the spirit of protocol stack diagrams...
image:images/bbs-protocol_stack.svg[width="80%"]
== Curiosity: Vector Graphics
* BBSs were typically all Text, mostly ANSI CP437 charset
* RIP (Remote Imaging Protocol) / RIPscrip introduced vector graphics
** RIPscrip introduced in 1992 (by TeleGrafix)
*** Commands like ``!|w00001B0M10'' to draw vector graphics over Modem
** RIPterm as terminal program for EGA (640x350)
image:images/Nouveau.png[]
== Isolated BBSs
To participate in bulletin/message boards
* Users log in at different times
* BBS is busy while a user is logged in
* Multiple modems / phone lines is one (expensive) option to scale
* Time limit per User (minutes/day) often used
== Points / Offline Messages
* Users don't read/write interactively during active modem call
* Messages get written offline and compressed/batched during short call
Advantages:
* lower cost (shorter phone calls, metered!)
* shorter connection per user
* BBS can scale to more users this way
image:images/xpmenu.gif[width="60%"]
== BBS networks (store + forward)
Idea: Replicate bulletin / message boards between independent BBSs, for
* scalability in number of users
* scalability in geographic scope
** most users will prefer least-expensive local calls to long-distance
* efficient transport over long distance due to routing/forwarding of compressed batches
== BBS network technology (examples)
* FIDO (Netmail + Echomail)
** Othernets like TrekNet, GerNet using same FTN technology
* Z-Netz (Mail + News)
** T-Netz, CL-Netz
* UUCP (Usenet Mail + News)
** Often only way to access "Internet" before IP access was available
* MausNet - Münster Apple User Service
** used by up to 120 BBSs in DE / AT / CH
== Example: FIDOnet
* Starts in 1984 with two BBSs
* Initial limit of 250 nodes reached in 1985
* Hierarchic, Regoinal routing/Adressing introduced in 1986
** Nodelist defines all nodes of the network + hierarchy
* Addresses like "Harald Welte @ 2:2490/1343"
* Up to 39,000 nodes in 1996, estimated 2 Million users world-wide
== Example: Z-Netz
* Started as Zerberus-Netz implemented in Zerberus Software
* Later renamed to Z-Netz as the ZConnect protocol was implemented in other software
** Standards defined based on perceived complexity of RFCs and Usenet/UUCP
* CrossPoint (DOS) most popular point software for ZConnect
* Addresses like H.WELTE@SILVER, later H.WELTE@SILVER.zer
== Example: UseNet
* Established in 1980 in the US
* Uses UUCP (Unix-to-Unix-Copy) as transport mechanism over Modmes
** UUCP was created in the 1970ies and used to copy files, including Internet Mal
* Usenet News format (RFC850) designed very similar to Internet Mail (RFC822)
* Hierarchy of News Groups that gets replicated / flooded accross the network
* Routing defined in route maps
== Curiosity: Floppy Poll/Point
* Not everyone had a phone line in the 1990ies
** particularly Eastern Germany had big lack of phone lines
* Some people thus exchanged daily floppies in evenlopes and mailed them as postal letters
* Messages arrived about one day later, but with 1-2 days latency even inside the dial-up store-and-forward network, it hardly matters
image:images/floppy-disk-1219954_640.png[width="30%"]
== Internet
Early ways to access Internet:
* Mail/News via UUCP (as stated earlier)
* Dial-Up Modem to a TTY of a Unix machine connected to TCP/IP
** Often workstations at universities. You could then run FTP, IRC, telnet, Gopher on the test console
* ftp-mailers
** a FTP client running on a remote machine, whose input/output is used by e-mail
** you send a mail with "ftp ftp.sun.com" and "ls"
** hours or days later you get the list of files
** you respond with cd / get / ...
** hours later you get the file as batch of UUencoded mails
== Internet with SLIP
* if you had dial-up access to a Unix box
* you could run SLIP on both sides, transporting IP over the modem line
** IP. At home. In your apartment !!1!
* later superseded by PPP (auto-configuration, authentication, compression, ...)
== ISDN
* Digital Circuit-Switched Telephony Network
** Transport of Digital Voice (PCM) audio and transparent digital data
* Germany
** 1989 put in operation
** Until 1993 German 1TR6 system
** From 1994 European E-DSS1
** Hugely popularized from 1995 by subsidies
== ISDN Terminal Adapter
* ISDN is an all-digital network
* No modulator / demodulator required
* Instead, so-called _terminal adapter_
* Speeds: 64000 (single B-channel) or 128000 (both B-channels)
* V.110 as adaptation to do async serial over sync ISDN (1988)
image:images/isdn.jpg[width="50%"]
== How to get Internet Access?
* Hard to access in early/mid 1990ies outside of academia
* Almost no commercial ISPs (XLink, EUnet) - and very expensive
* Grass-Roots groups of enthusiasts established themselves
* Kommunikationsnetz Franken e.V. (KNF, franken.de) one of them
** dial-up UUCP and shortly later IP for personal, non-commercial users
** POPs in Nürnberg, Fürth, Erlangen, Forchheim, Würzburg, Regensburg, ...
** Every user got 6 static IP addresses routed to wherever he dialed in (OSPF!)
** served ~ 800 users / members at peak
== Individual Network (IN) e.V.
* Umbrella Association established in 1992
** Goal to help regional member associations with negotiating framework contracts
** Actual technical access via WiN/DFN, XLink, EUnet
** Regional Member Associations include Oche, Augusta, Escape, IN-Berlin, Hanse, INKA, Toppoint, muc.de, IN-Passau, ThurNet, MAUS, CL-Net and many more
** IN members served more than 300,000 users at one point
** Dissolved in 2000, when
*** commercial ISPs were widespread, and
*** remaining IN member organizations could get decend connectivity with IN e.V.
== Internet
With packet-switched TCP-IP
* you just needed to dial one number
* and then access systems world-wide
This brought new purpose to leased lines
== Analog Leased Lines
* Telephone operator permanently interconnects wires at exchange
* No signaling (dialtone/ringtone etc)
* Requires modems with special capabilities
** ATA without an incoming ring first
** ATD without a dialtone first
* In Germany: "Analog G" of Post/Telekom
** I finally could afford one in 1998
** 900 DM installation cost
* 180 DM per month (60 DM per hop)
== hub-nbg.franken.de, 1998
image:images/pict3_Lg.jpg[]
== ISDN Leased Lines "SPV"
* Not really a leased line
* Basically only "flat rate calls" to one specific (fixed) destination
* Available in national 1TR6 only
== Abusing Analog Lines, Part 1
* ICU-T
** inverse of ISDN NTBA
** ISDN BRI (2x64k + 16k) over 12km of telephone line
* Special ISDN routers without signaling to use even 16k D-channel for data!
Easy upgrade to get performance of a leased ISDN line out of an Analog-G
== Leased Lines at KNF, 1997/1998
[graphviz]
----
include::images/knf-leased_lines.dot[]
----
== hub-fue.franken.de, undated
image:images/hub-fue-03_Lg.jpg[]
== hub-fue.franken.de, undated
image:images/hub-fue-04_Lg.jpg[]
== Abusing Analog Lines, Part 2
When the first DSL modems became availale in the US
* we imported some Ascend DSLpipe
* with some fimrwares, they could be used back-to-back (without DSLAM)
* suddenly we could get speeds of 2.3 MBps over analog lines
** if they were not too long
** if they didn't have in-line inductors
* soon less expensive alternatives came up Pairgain (2000)
image:images/ascend.jpg[width="50%"]
== From Online Bistro to Internet Cafe
* Falken's Maze was an _Online Bistro_ established in the 1990ies
** I became a regular around 1994
* initially had four DOS PCs, each with a Modem, dedicated phone line and a call charge meter
** you could go there, eat + drink and use the PCs to log into BBSs
* quickly became preferred meeting point of various nerds, BBS users, SYSOP meetings, etc.
* PCs were networked with 10base2 and NetWare (DOOM!)
* people started to dial into CompuServe, AOL, etc.
* Internet became more popular, Falken's Maze started subsidiary in Nuernberg
** ISDN SPV was used as Internet uplink
== Conclusions
* The first decade[s] of wide-area electronics communications was powered by a community of enthusiasts
* BBS community / culture is a distinct sub-culture. Different norms than HAM radio, Hackers, Free Software, but lots of overlap
== Further Reading
* http://telnetbbsguide.com/
** list of active telnet BBSs
* http://qodem.sourceforge.net/
** FOSS multi-platform terminal program
* http://artscene.textfiles.com/ansi/
** Archive of ANSI Artwork
* http://www.filegate.net/nodelist/
** FIDO nodelist of 2017
== EOF
End of File

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 682 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@ -0,0 +1,32 @@
#!graphviz
digraph G {
hub_er [label="hub-er\nErlangen", shape="box"]
hub_fo [label="hub-fo\nForchheim", shape="box"]
hub_fue [label="hub-fue\nFuerth", shape="box"]
hub_lau [label="hub-lau\nLauf", shape="box"]
hub_bai [label="hub-bai\nBaiersdorf", shape="box"]
hub_nbg [label="hub-nbg\nNuernberg", shape="box"]
uni_er [label="Uni Erlangen"]
uni_nbg [label="Uni Erlangen\nBuilding in Nuernberg"]
chaplin [shape="box"]
sunbeam [label="sunbeam\n(Harald Welte)"]
hub_er -> chaplin [label="128k"]
hub_fo -> chaplin [label="64k"]
hub_fue -> chaplin [label="64k"]
hub_lau -> chaplin [label="64k"]
hub_bai -> chaplin [label="33k6"]
chaplin -> uni_er [label="Ethernet"]
uni_nbg -> uni_er [label="X.21"]
hub_nbg -> uni_nbg [label="128k"]
sunbeam -> hub_nbg [label="33k6"]
user1 -> hub_nbg [label="33k6"]
user2 -> hub_nbg [label="33k6"]
user3 -> hub_fue [label="33k6"]
user4 -> hub_fue [label="33k6"]
user5 -> hub_er [label="33k6"]
user6 -> hub_er [label="33k6"]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB