initial checkin of 34c3 talk on BBSs
|
@ -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
|
|
@ -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
|
After Width: | Height: | Size: 98 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 6.5 KiB |
After Width: | Height: | Size: 216 KiB |
After Width: | Height: | Size: 178 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 682 KiB |
After Width: | Height: | Size: 83 KiB |
After Width: | Height: | Size: 85 KiB |
After Width: | Height: | Size: 80 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 52 KiB |
|
@ -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"]
|
||||
}
|
After Width: | Height: | Size: 154 KiB |
After Width: | Height: | Size: 57 KiB |
After Width: | Height: | Size: 41 KiB |