From: rcq@FTP.COM (Bob Quinn)
Newsgroups: comp.protocols.tcp-ip.ibmpc
Subject: Re: Need help on TCPIP programming
Date: 11 Jan 93 21:21:08 GMT
Reply-To: rcq@ftp.com
Distribution: world
Organization: The Internet

Hello Mac!

>     May someone give me some instructions on TCPIP networking program. 
>   For example, if I want to write TCPIP package (NCSA Telnet, WATTCP),
>   netnews reader, Gopher client, etc., based on packet driver on my PC
>   running MSDOS or OS/2, what books, documents, information, etc., can
>   I get? I have got the source code of NCSA telnet and I want to find
>   some documentation and books for this kind of programming. 

I have attached a biblography that might help.  Some books deal
with specific high-level API's, some with background info and
some with the general Inter-Process communications paradigms
that can be applied to any network API.  The latter would be
most helpful, in conjunction with the Packet Driver Specifica-
tion itself, in assisting you to create an application that uses
the PD API.

>     I know nothing about modem and RS232 programming. May someone give
>   me some directions on books and source that I should read? Is it 
>   possible to emulate MODEM or RS232 communication on Ethernet? That is,
>   if there are two programs that can communicate on two machines via
>   RS232 or null modem, is it possible to write a RS232 emulator based
>   on packet driver so that the messages between the two programs are
>   transferred via ethernet? Of course the source codes of the two programs
>   need no modification, the binary code even need no re-compilation.
>   Is there such a package already available?

There are some BIOS INT 14H re-directors around, which will let
a program written to use a serial port be redirected to use a
network protocol stack through a network interface card.  These
are not ideal for a few reasons (I wouldn't call the following a
comprehensive list, by any means):

    1) they deal with data serially, whereas most network API's
       can handle data "by the buffer-load", in parellel so to speak.

    2) The serial port paradigm does not include the concept of a
       "virtual circuit" or "connection", so to use a connection
       oriented protocol you'd need a "shell" around the redirector
       to initiate and terminate the connection.

    3) Because serial ports don't have network addresses also, re-
       redirectors need a "shell" of sorts to allow network access.

Besides these reasons, some serial communications programs access
the hardware (UART) itself, for speed.  The idea -among others-
behind to packet driver and other standard hardware driver interfaces
(e.g. NDIS and ODI) is to make the hardware (low-level) intracacies
invisible, taken care of.

>     Thanks in advance.
>   ------------------------------------------------------------------------------
>   Mac Su-Cheong (MSC)       | Computer Science Division, |          __o
>   msc@eembox.ncku.edu.tw    | Department of E.E.,        |         -\<,
>   nckus089@twnmoe10.bitnet  | National Cheng Kung Univ., |        O/ O
>   msc@snoopy.ncku.edu.tw    | Tainan, Taiwan, R.O.C.     | Hey....I am the wind!

Hope it helps,
--
 Bob Quinn                                             rcq@ftp.com
 FTP Software, Inc.                                No. Andover, MA

Bloomer, John; _Power Programming with RPC_
               O'Reilly & Associates, Inc., 1991
               ISBN: 0-937175-77-3
    A digested form of the SUN RPC documentation from SUN Systems, Inc.
    Very readable, with many examples; highly recommended for anyone doing
    RPC programming.

Cole, Gerald D.; _Computer Networking for Systems Programmers_
               John Wiley and Sons, 1990
               ISBN: 0-471-51057-2
    A comprehensive survey of networking protocols spanning the lowest
    (driver level) to highest (application level).  It makes a good ``quick 
    reference'' book, very readable but not in-depth.

Comer, Douglas; _Internetworking with TCP/IP Volume I_
               Prentice Hall, 1991
               ISBN: 0-13-468505-9
    A thorough introduction and analysis of the TCP/IP protocol suite
    with a good orientation to the RFC's (Requests for Comments) that
    contain the definitive specifications for the TCP/IP network, transport
    and application protocols.

Comer, Douglas/Stevens, David L.; _Internetworking with TCP/IP Volume II_
               Prentice Hall, 1991
               ISBN: 0-13-472242-6
    In-depth analysis of the TCP/IP protocols and their implementation
    (protocols explored: ARP, IP, TCP, UDP, ICMP, RIP, SNMP)

Comer, Douglas/Stevens, David L.; _Internetworking with TCP/IP Volume III_
               Prentice Hall, 1993
               ISBN: 0-13-474222-2
    Thorough exploration of client/server application design and
    implementation using Berkeley Software Distribution Sockets
    and eXternal Data Representation (XDR) with ONC RPC.

Rose, Marshall T.; _The Simple Book: An Introduction to Management of
                    TCP/IP-based Internets_
               Prentice Hall, 1991
               ISBN: 0-13-812611-9
    Essential reference for anyone using SNMP (Simple Network Management
    Protocol).  

Schwaderer, David W.; _C Programmer's Guide to NetBIOS_
               Howard W. Sams & Co., 1988 
               ISBN: 0-672-22638-3
    A clear explanation of what NetBIOS is and what it is not.  The first
    sections are for those who need a working knowledge of what NetBIOS
    does and conceptually how it works.  This book illustrates programming
    techniques using the NetBIOS network API.  It can be useful as a 
    reference if you are debugging a program that uses NetBIOS.

Stallings, William; _Handbook to Computer-Communications Standards Vol 2,3_
               Howard W. Sams & Co., 1987
               ISBN (vol 2):0-672-22698-7; (vol 3): 0-672-22666-9
    Volume II describes various physical and link-layer (lowest level)
    standards (for example, IEEE 802.2, 802.3, 802.4, 802.5) in considerable
    detail, although not in as much detail as an IEEE document.  Great for
    network managers.
 
    Volume III explains TCP/IP (DOD) standards.  Great for intuitive and
    in-depth analyses of TCP/IP applications. 

Stevens, W. Richard; _UNIX Network Programming_
               Prentice Hall, 1990
               ISBN: 0-13-949876-1
    This is an essential text for anyone developing network applications,
    and especially for those using the Berkeley Sockets API!  It covers 
    the various inter-process communication paradigms, then concentrates
    on UNIX networking application development using sockets.  It documents
    sockets functions and provides many examples, including BSD r (remote)
    utilities, such as rsh.  It discusses undocumented protocols and
    debugging techniques.  It also touches on peripheral topics like SNA and 
    NetBIOS, and the details of line disciplines.  Very highly recommended.

Tanenbaum, Andrew S.; _Computer Networks_
               Prentice Hall, 1989
               ISBN: 0-13-162959-X
    A comprehensive survey of networking protocols that explores each 
    of the well-known protocols in the seven layers of the OSI Network 
    Reference Model.  More emphasis on low-level (OSI level 3, the 
    network layer and below).  It discusses the TCP/IP protocols and other
    protocol suites.  


Newsgroups: comp.protocols.tcp-ip.ibmpc