# Networking FreeDOS - History of DOS networking

## Why MS DOS came without a network

      The IBM Personal Computer (PC) was introduced on August 12th, 1981 as
      an answer to the Apple II, that challenged IBM's market with office
      software like VisiCalc and WordStar. The operating system (OS) for
      the PC had to be done in an extremely short period of time, after
      Digital Research (DR) had blown the opportunity to license their
      "Control Program for Micros" (CP/M) to IBM.
      The young software company Microsoft, originally only supposed to
      provide language interpreters and compilers as BASIC and Fortran,
      stepped in. Microsoft agreed to come up with an OS prototype, similar
      to CP/M, in just three months. They bought and adapted Seattle
      Computer's "Quick and Dirty OS" (QDOS) to meet IBM's expectations.
      Version 1.0 of the "Microsoft Disk Operating System" (MS DOS, also
      sold as "PC DOS" by IBM) had 4.000 lines of code. Networking was none
      of its capabilities and other tasks may have been far more important:
      The first DOS did not even know how to handle hard disks. Microsoft
      was also busy working on the applications that should become the
      corner stones of its success: "Multiplan"/"Excel" and "Word".
      Networking features seemed to have been postponed to the successor of
      DOS, OS/2, which was officially announced by Microsoft and IBM in 1985
      (and released in 1987). In the meantime Microsoft provided XENIX, a
      UNIX variant which was available for the IBM PC since 1983.
      This left a time frame for others. There were two approaches for DOS
      networking, which can be called the "PC centric" and the "UNIX centric"
      approach (http://www.sju.edu/~jhodgson/netw/kw_hwk4.html).
        * The "PC centric" approach means a way to network a group of PCs in
          order to share files and resources (f.i. printers).
        * The "UNIX centric" approach means to develop DOS versions of the
          standard UNIX network programs and to use them to access or to
          provide UNIX-like services in LAN or internet (which, in the end,
          came down to file and resource sharing as well).

#### [Main menu] [top] [PC centric] [Unix centric] [End of DOS networking] [Picking up pieces]

## "PC centric" approach

      Novell NetWare

      In 1985 Novell, a former hardware manufacture of CP/M systems, released
      its product "NetWare 86" (v 1.5) for the PC. A version for the AT
      followed with "NetWare 286" (v 2.0) in 1986.
      Novell networked computers according to the client/server model:
      Clients running MS DOS and some memory resident (TSR) Novell software
      were able to "log in" to a server that ran "Novell NetWare Server".
      This server was a machine designated to manage the network and
      control access to shared devices, such as disk drives and printers.
      Once connected the clients could "map" a volume on the server to a
      driveletter in DOS and then use it like a local drive. They also were
      able to use printers connected to the server.
      Client and server communicated over Novell's "Internetwork Packet Ex-
      change/Sequenced Packet Exchange" (IPX/SPX protocol)
      The driver architecture was called "Open Datalink Interface" (ODI).
      NetWare established a dominant position in the market until the middle
      of the nineties.

      LAN MANAGER

      (Picture of the LAN manager)

      In 1983, separately from Novell, IBM and the californian company Sytek
      Inc. (bought by Hughes http://www.hughes.com/ in 1989) developed the
      networking protocol NetBIOS.
      It was designated for small LAN installations of up to 72-80 devices.
      In 1985 IBM produced an emulator of NetBIOS, called NetBEUI (NetBIOS
      Extended User Interface) which supported up to 260 devices.
      1985 Microsoft introduced its own implementation of NetBIOS, called MS-
      Net. It was not widely used. In 1987 the company released "Microsoft
      LAN Manager" 1.0 - its first serious competition for Novell Netware.
      Just like Novell Netware Microsoft's LAN Manager implemented a client/
      server architecture:
        * The server ran OS/2 as operating system and LAN Manager as server
          software.
        * The client ran DOS, OS/2 or Macintosh as OS and used a client
          software like "LAN Manager client" or "MS client" for the connection
          to the server.
      With the "Server Message Block" (SMB) protocol merged into LAN Manager
      since 1991, Microsoft networks became able to do peer-to-peer-
      networking as well. This was used by Windows for Workgroups 3.11,
      released in 1993. The mechanism is known to Windows users as "Windows
      share", "network neighbourhood" or "Workgroup".

      (Picture of Workgroup Add-on for MS-DOS)

      In October 1993 Microsoft released a tool called "Microsoft Workgroup
      Add-On for MS-DOS" which allowed to have the same peer-to-peer
      networking possibilities in DOS. While the tool itself is not sold
      any longer, most of its functionality is still available by usage of
      "MS client" and a special update called "WG1049" (see: MS client).
      Microsoft's networking software came with an own network driver model
      called "Network Driver Interface Specification" (NDIS) that the company
      had developed with 3Com.
      LAN Manager didn't beat its competitor Novell Netware. Beneath the
      disadvantage of being second in the market, this may also have been
      caused by the fact that you had to install the OS/2 operating system on
      the server. OS/2 was unpopular among customers. Since 1993 "Microsoft
      Windows NT Advanced Server (v3.1)" was used instead on the server side.
      In August 1995 the introduction (and positive reception) of "Windows 95"
      put an end to DOS networking activities. This Windows version had an
      own TCP/IP stack already built-in and came with SMB peer-to-peer
      networking - so many third-party solutions were unnecessary.

#### [Main menu] [top] (PC centric) [Unix centric] [End of DOS networking] [Picking up pieces]

## "Unix centric" approach

      Experiments to get TCP/IP running on the PC began shortly after
      IBM introduced it. The first people who worked on it were Dave Clark,
      Jerry Saltzer and freshman student John Romkey (http://www.romkey.com/)
      at the Lab for Computer Science of the Massachusetts Institute of
      Technology (MIT). In 1981 they started a research project with the
      purpose "to see if TCP/IP could run on something as small as an IBM PC",
      as Romkey recalls (http://www.drizzle.com/~aboba/internaut/pc-ip.html).

      PC-IP (PC/IP)

      The outcome was named "PC-IP", a small TCP/IP implementation that was
      linked into a few applications like finger, whois and netwatch. PC-IP
      was released with its source into the public domain. Drew Perkins from
      Carnegie Mellon University (CMU) and Dan Lanciani from Harvard Uni-
      versity improved the code further. PC-IP still can be found in the web
      (http://members.aol.com/Karima4483/pcip/) or
      (ftp://ftp.kuzbass.ru/pub/networks/tcpip/tool/pcip.zip).

      PC-TCP (PC/TCP)

      (Icons of PC/TCP applications)

      The success of PC-IP inspired Romkey and friends to take the CMU version
      of the code and develop it into a proprietary product: "PC/TCP", which
      they sold through their company "FTP Software, Inc.", founded in 1986
      (http://en.wikipedia.org/wiki/FTP_Software).
      The name was chosen after the popular 'File Transfer Protocol': PC/TCP
      included one of the first applications for FTP services on the PC.

      Packet Drivers

      Along with PC/TCP, FTP Software Inc. developed the "Packet Driver
      Specification", (http://www.crynwr.com/packet_driver.html) the first
      multiprotocol driver specification for PC network interface cards. On
      12 Dec 1988 this specification was released as an open standard, for
      anyone to implement.
      Packet drivers proved useful to hardware vendors and software developers
      alike. Most of the public-domain or shareware TCP/IP applications have
      been written to interface with packet drivers only.
      Many packet drivers were written or managed by Russ Nelson at Clarkson
      University, who became known as the "Packet Driver King" - a story, he
      describes at his website (http://russnelson.com/bio.html). Nelson still
      distributes these drivers as Free Software through the site of his
      company "Crynwr" (http://www.crynwr.com/) (which was named after the
      welsh word for "Quaker", his religious belief). Learn more about Crynwr
      here. One cause for the success of FTP Software's PC/TCP was this open
      packet driver interface, which made it easy to develop drivers and
      applications. When other driver interfaces like ODI and NDIS appeared
      on the scene, PC/TCP included converters: With a tool called ODIPKT.COM
      ODI drivers became usable as packet drivers, a tool called DIS_PKT.GUP
      did the same for NDIS drivers.
      PC/TCP also came with an external TCP/IP Kernel called ETHDRV.EXE that
      allowed other programmers to call network functions within their
      applications without programming them themselves. All these features and
      an application suite that allowed DOS computers to access or provide
      TCP/IP services such as news, e-mail, ftp, Telnet or network storage
      (PC/TCP even included a NFS client called InterDrive) made FTP Software
      Inc. market leader for DOS TCP/IP software.
      PC/TCP was installed on over 10 million DOS machines worldwide. In the
      middle of the nineties FTP Software Inc. had more than 700 employees
      (see here for more info http://www.answers.com/topic/ftp-software?cat
      =biz-fin).

      Software by universities and hobbyists

      PC-IP and its successor PC/TCP may have been the first or most
      successful TCP/IP Kernels for DOS but they were not the only ones.

      KA9Q

      Second after the early PC-IP kernel was the "KA9Q Network Operating
      System" (NOS, see: http://www.ka9q.net/code/ka9qnos/) by Phil Karn in
      1985. Karn, an engineer from Baltimore, Maryland had created it for
      CP/M two years before and then ported it to DOS. It also was one of
      the first TCP/IP applications for DOS that used FTP Software's packet
      driver specification. KA9Q simultaneously acted as an Internet client,
      a server and an IP packet router. The program was specialized for
      amateur packet radio, but also could be used f.i. as ftp- or webserver.
      KA9Q attracted many contributors. As Karn describes: "It was the Linux
      of its day" (http://www.ka9q.net/code/ka9qnos/).
      In 2002 KA9Q became free software (GNU GPL). Its descendants, JNOS
      (http://www.langelaar.net/projects/jnos2/) and EZ-NOS2
      (http://eznos.knevel.info/index.php) (see also
      http://www.hippy.freeserve.co.uk/eznos.htm and
      http://www.dossolutions.pwp.blueyonder.co.uk/eznos.htm)
      are still actively maintained.

      NCSA Telnet

      Based on the Packet Driver Specification several universities wrote
      TCP/IP applications and utilities for DOS PCs. In 1986 the "National
      Center for Supercomputing Applications" (NCSA) at the University of
      Illinois released "Telnet" (ftp://ftp.uu.net/.vol/1/applic/NCSA_Telnet/
      PC/tel2308b.zip) - a client for UNIX Telnet services which could act
      as FTP and rcp server as well. It was accompanied by TCP/IP tools like
      finger, whois and lpr. NCSA Telnet came with its own TCP/IP Kernel,
      which was already built-in into the applications. The software was
      developed until 1995 (v2.308) and released with source (ftp://ftp.uu.
      net/.vol/1/applic/NCSA_Telnet/PC/tel2308s.zip) into the public domain.

      CUTCP

      The Clarkson University in Potsdam, New York took version 2.2 of NCSA
      Telnet and modified it. They called their version CUTE or CUTCP.
      Eventually Rutgers University, New Jersey took over the maintenance and
      published the latest release in July 1993 (ftp://ftp.cc.umanitoba.ca/
      software/pc_network/cutcp-b.zip). In difference to NCSA Telnet, CUTCP
      supported the IBM-3270 emulation and was technically improved. It also
      became public domain.

       Others

      (Picture of MINUET Version 1.0 Beta 18A)

      Other developments at universities that should be mentioned are "Kermit",
      (http://www.columbia.edu/kermit/) a terminal emulation for DOS written
      at the Columbia University, New York and the University of Minnesota's
      "Minnesota InterNet Users Essential Tool" ("MINUET" http://www.fdisk.com/
      doslynx/minuet/), a packet driver based suite of TCP/IP applications.
      Minuet provided a mouse driven graphical interface that integrated client
      applications as E-mail, Gopher, Telnet, Usenet News, a web browser and
      FTP. Minuet is a good example for the unfortunate design of DOS software
      licenses in this era. In difference to the GNU General Public License
      (GPL) that became a standard in the GNU/Linux world, licenses for DOS
      software written at Universities and by hobbyists were mostly homebrewed.
      The Minuet license f. i. allowed free usage for the University of
      Minnesota faculty, staff and students. All others were expected to pay
      50$ after 15 days evaluation. Distribution was allowed for non-commercial
      reasons only.
      While these shareware licenses may have worked fifteen years ago, today
      they are more like a death certificate for the software: The software is
      not sold or officially distributed any longer. While you may still find
      someone to pay the shareware fee of 50$ to, it is unlikely he will give
      you any support or updates. So the cost may exceed what the software is
      worth today, after its market disappeared and the original developers
      lost interest. More important: Without source it is of no use for other
      programmers - so development is put to an end by the license. And to
      disallow any "commercial distribution" has the effect, that the places,
      where f.i. Minuet can be found, are mostly changing, unreliable and
      random. Thanks to some developers, essential networking software for DOS
      with their corresponding sourcecode are in the public domain or Free
      Software. This enables users and developers alike to still write and
      use TCP/IP applications for DOS.
      These important pieces of software include:
        * Free versions of packet driver converters for today's more common
          ODI and NDIS drivers: ODIPKT.COM, written by Dan Lanciani (Harvard
          University) allows to use ODI drivers as packet drivers, DIS_PKT9.DOS
          by Prof. Joe R. Doupnik (Utah State University) and Dan Lanciani does
          the same with NDIS drivers.
        * "WatTCP", a popular free TCP/IP Kernel library written 1990 - 1992 by
          Erick Engelke from Canadian Waterloo University and its successor
          Watt-32 by Gisle Vanem (Norway). These libraries enable programmers
          to include TCP/IP functions into their applications without having
          to reinvent the wheel.
        * "Trumpet TCP driver (NTCPDRV)" from 1992, a free external
          TCP/IP Kernel created by Australian programmer Peter Tattam (also
          well known for his Trumpet Winsock).
      We will learn more about this software a bit further in this document.

      Proprietary software

      Beneath FTP Software Inc.'s PC/TCP a lot of other commercial applications
      could be found on the market for DOS TCP/IP networking software ten or
      fifteen years ago.
      Up to 30 TCP/IP packages (ftp://ftp.cac.psu.edu/pub/dos/info/tcpip.
      packages) for DOS were available in the middle of the nineties, inclu-
      ding IBM "TCP/IP for DOS", NetManage "Chameleon", Sun "PC-NFS", Novell
      "LAN WorkPlace", Frontier Technologies "SuperTCP" or Artisoft
      "LANtastic" - a networking system that was nearly as popular in the
      first half of the nineties as the market leader of the time, Novell.
      A comparison of their features can be found here (http://img.cmpnet.com/
      nc/820/graphics/tcpip.pdf). Read also the corresponding article in the
      "Network Computing" magazine (http://www.networkcomputing.com/820/
      820buyers.html).

#### [Main menu] [top] [PC centric] (Unix centric) [End of DOS networking] [Picking up pieces]

## The end of DOS networking

      We have to keep in mind, that all this development of TCP/IP software
      for DOS happened in a relatively short period of time. The IBM PC
      didn't have any networking capabilities when it was released in 1981.
      Whoever worked with UNIX machines at this time regarded the PC as toy.
      But networking became a serious option, when the stronger PC AT (i286)
      came out in 1984 and in 1986, when Compaq released the first PC with
      an i386 processor.
      This window of opportunity began to close with the introduction of
      Windows NT in 1993 and was shut by Windows 95 in August 1995, which
      had an own TCP/IP Kernel already built-in and included the Point-
      to-Point Protocol (PPP), a dialer and SMB peer-to-peer networking.
      This was a blow for commercial networking software, including Novell
      NetWare.
      FTP Software Inc. was bought out 1998 by former competitor NetManage
      for a price that was only slightly higher than the amount of money
      in FTP software's bank account (see here for more info http://www.
      apocalypse.org/pub/ftp-alumni/archives/ftp-alumni.9806). Today it's
      gone, of course. In 2007 the market of DOS networking software is
      abandoned. Most commercial solutions are not available any more. Their
      manufacturers changed owners or markets or simply ceased to exist. And
      whoever worked at the "UNIX centric" approach 10 years ago may today
      perhaps be found working on GNU/Linux solutions.
      Read more about the history of TCP/IP networking on DOS computers in
      Steven Baker's article "Net Worth - Desktop TCP/IP At Middle Age"
      (http://web.archive.org/web/20070314043508/http://www.ece.ubc.ca/
      ~gillies/9802net.html).

#### [Main menu] [top] [PC centric] [Unix centric] (End of DOS networking) [Picking up pieces]

## Picking up the pieces

      Networking DOS in the 21st century means mostly to take what's left of
      the era of DOS networking from the middle of the eighties until the
      middle of the nineties. Some Novell and Microsoft tools can still be
      legally downloaded and used. And TCP/IP solutions by universities
      and hobbyists that were released into the public domain, as shareware
      and even as postcardware, are still around, although most of it cannot
      be found any more at their original locations.
      But it is more than that. A few projects are still alive: The graphical
      DOS browser Arachne is actively developed again by a group of program-
      mers after it was released under the GNU GPL. Also SSH2DOS, Watt-32
      and the KA9Q successors EZ-NOS2 and JNOS2 are still maintained and de-
      veloped. Even a new DOS TCP/IP software has been written recently.

#### [Main menu] [top] [PC centric] [Unix centric] [End of DOS networking] (Picking up pieces)

      Copyright © 2007 Ulrich Hansen, Mainz (Germany), modified 2010
      by W.Spiegl.
      For more information see here.

      Permission is granted to copy, distribute and/or modify this document
      under the terms of the GNU Free Documentation License, Version 1.1 or
      any later version published by the Free Software Foundation.
      A copy of the license is included in the section entitled
      "GNU Free Documentation License"