CANDI Version 1.3 a Windows NDIS-2 Driver for Common-ISDN-API 2.0 DLL-Interface

Herbert Hanewinkel, Okt. 1996
heha@biochem.mpg.de

CANDI is Shareware

CANDI, as it is provided, is a demo version. To make use of the full capabilities of CANDI you have to register CANDI. The basic registration fee for a single user license of CANDI is DM 70,. Please read the file CANDI.TXT for details.
As long as you have NOT registered CANDI you may test CANDI for 30 days without a registration code. In this case CANDI will stop forwarding data 20 min after startup.

Disclaimer

The program and this documentation is
Copyright (C) 1995,1996 by Herbert Hanewinkel,
All Rights Reserved.

It is provided as shareware with the following limitations:
This program is copyrighted and it is not in the public domain. It may not be distributed for profit or included in any CD-ROM or diskette software collection without permission. This applies in particular to commercial PD libraries. The program is not to be resold or distributed for sale with other programs which are for sale without my express written permission.
There is no warranty or claim of fitness or reliability. The program is distributed AS IS, and as such the author shall NOT be held liable for any loss of data, down time, loss of revenue or any other direct or indirect damage or claims caused by this program.
Manufacturers and distributors of ISDN products may distribute unregistered versions of this software a long with their ISDN products under the condition, that the customers are informed, that they have to register the software. If you want to sell registered versions of this software with printed hard copy manuals, please contact me. You may not bundle or otherwise distribute this software with any other software without my express written permission (i.e., on the same diskettes as part of a commercial package, compressed along with other software, etc.).

Overview

CANDI is a (realmode) NDIS-2 Driver for IP-Routing or remote Ethernet bridging over ISDN. CANDI communicates with the ISDN card using the Common ISDN API 2.0 specification (a standard defined by German ISDN card manufacturers and the German Telekom). Because of this, CANDI is completely hardware independent and has successfully been tested with many active or passive ISDN cards.
CANDI was developed for Internet access over ISDN from WfW 3.11 and MSTCP-32. CANDI has successfully been tested with Win95. CANDI is also known to work with other NDIS based TCP/IP packages for DOS and Windows, e.g. ChameleonNFS.
CANDI can be used with standard DOS CAPI 2.0 software or VxD implemenations of the CAPI 2.0 software. Using a VxD CAPI implementation, CANDI is available only under Windows but it frees a lot of DOS memory otherwise used by the CAPI software.
CANDI supports a large set of protocols for communication with other vendors ISDN routers or servers. Among these protocols are: LAPB, Frame-Relay, PPP, SLIP, Cisco-HDLC.
Some protocols conserve the protocol type over point-to-point lines (multi-LAPB, Frame-Relay, Cisco-HDLC). These protocols are able to handle multiprotocol routing. For PPP only IP support is implemented at the network configuration layer.

CANDI can communicate at least with the following commercial systems:
Ascend Routers, AVM MPR 3.0, Biodata ISDN Router, Cisco Routers, Conet S2M Router, INS/CLS Banzai ISDN Router, netCS ISDN Router, RzK SLIP Bridge, SGI Indy ISDN 1.0, Spyder Routers, SunLink ISDN 1.0, SunLink ISDN 1.0.2.
CANDI was written for use with ISDN BRI PC cards. CANDI was developed and implemented on a NCP /P16 card from NCP engineering GmbH, Nuernberg.
The current version of CANDI supports two independent active connections at a time. Alternativly a connection can use both B-channels for loadsharing. CANDI can be loaded more than once, if more than two simultaneous connections to different sites are desired. Loadsharing can be configured as static or dynamic (bandwidth on demand). Dynamic loadsharing can be used concurrently with a second independent connection.
Loadsharing over two channels is implemented using simple round robin scheduling, because IP doesn't require the original packet sequence. This is completely hardware independent and supported by many router systems. It works the same way as Cisco implements loadsharing over to X.21 interfaces. With this kind of loadsharing it is possible to get a performance of up to 13kBytes/s.

Availability

The latest version of CANDI is available on www.biochem.mpg.de/~heha or via ftp from:ftp.biochem.mpg.de in directory /pc/isdn.

Installation

  1. To use CANDI you have to set up a configuration file with your ISDN configuration as described in the configuration guide. The default name for the configuration file is CANDI.INI.
  2. Install the NDIS-2 Driver module CINDI.DOS in your NDIS environment (see below).
  3. Run CANDI.EXE after starting your CAPI-2.0 software.

Installation in a NDIS-1 environment

CANDI's NDIS driver module is a NDIS-2 compliant MAC driver. Multiple protocol modules can bind to CANDI. To include CANDI in your NDIS configuration:

  1. Unpack the CANDI software into a directory, e.g.: C:\CANDI
  2. In the CANDI directory create a CANDI.INI file with the desired ISDN configuration.
  3. Set-up an entry for CINDI in the NDIS PROTOCOL.INI file

[CINDI]
Drivername=CINDI.DOS

4. The protocol module you want to bind to CINDI should reference the CINDI MAC driver section with a "BINDINGS" entry of the form:
BINDINGS=CINDI

5. Check also that the device PROTMAN.DOS is loaded in CONFIG.SYS.

6. Reboot your system.

7. Start CANDI.EXE under Windows

Installation in WfW 3.11 (NDIS-2/3 environment)

  1. Unpack the CANDI software into a directory, e.g.: C:\CANDI
  2. In the CANDI directory create a CANDI.INI file with the desired ISDN configuration.
  3. Use Netsetup to install CANDI.

Select "Add adapter"
Select "OEM provided adapter" in directory C:\CANDI
Add the TCP/IP Protocol and remove all other protocols from the adapter. The MS-TCP32 software is not part of the standard WfW distribution, but it is freely available from Microsoft.
Configure the TCP/IP parameters.

4. After rebooting start a DOS-shell inside Windows and run "IPCONFIG". It should display your TCP/IP parameters.

5. Start CANDI.EXE under Windows

An example of a user installation you will find here.

Installation in Windows95 (NDIS-2/3 environment

Installation in Windows95 is equivalent to installation in WfW.

  1. Unpack the CANDI software into a directory, e.g.: C:\CANDI
  2. In the CANDI directory create a CANDI.INI file with the desired ISDN configuration.
  3. Use Network to install the NDIS module as a new network card.
  4. Bind the TCP/IP protocol to the NDIS module and configure the TCP/IP parameters.
  5. Reboot Windows95.
  6. Start CANDI under Windows.

A detailed example you will find here.

Attention:

The NETBIOS based WfW 3.11 peer-to-peer network can operate on different transport protocols (NETBEUI, DECnet, TCP/IP). After installing MS-TCP32, WfW and Win95 send broadcast messages also over TCP/IP to look-up other nodes. If you don't disable broadcast's in CANDI, this will trigger an ISDN connection every time a broadcast packet is sent. You can disable broadcasts in CANDI by either specifying a dedicated ip-address (not 0.0.0.0) for the ISDN peer or enabling the k-option for this link. Using the k-option, broadcasts will not keep the line up and will not trigger a new connection, but the peer-to-peer network capabilities are available over ISDN after opening a connection.

Installation for ChameleonNFS

  1. Unpack the CANDI software into a directory, e.g.: C:\CANDI
  2. In the CANDI directory create a CANDI.INI file with the desired ISDN configuration.
  3. Start the program "Custom".
  4. Select a new interface of type "Ethernet".
  5. Select hardware and vendor "Other".
  6. Enter:

Section name: CINDI
Driver name: CINDI
File: C:\CANDI\CINDI.DOS

7. Continue with configuration from "Custom".

8. Custom creates a PROTOCOL.INI file.

9. Reboot and check your configuration.

10.Start CANDI under Windows

Monitoring

1.CANDI displays the state of an ISDN connection on its status page and on the icon:
_ = free,
D = D-channel up,
C = B-channel requested,
B = B-channel up,
A = active, ISDN connection up,
additional information for PPP:
L = LCP configuration up,
I = PAP/CHAP configuration up, IPCP configuration started,
P = PPP connection up

2.Menus

File
Setup starts the Notepad with your configuration file. You have to restart the program to load a modified configuration file into memory.
Register prompts for the licence key and your name, company. The personal information in the name field must be at least 12 characters long. To activate a licence key you have to restart the program. After restart check the info menu to know if the licence information was accepted.
Save Buffer saves the screen contents to a file. If the file exists the contents is appended to the file.
Exit terminates the program

View
Status selects the status page for display.
Configuration displays the active configuration.
Log dislays a connnection and optionally trace log.

Trace
Use the trace only for debugging NOT in normal operation.

CAPI Messages logs all messages exchanged with the CAPI software (except data transfer)
PPP Setup allows to trace the setup of a PPP connection. PPP data packets are not logged.
Application Interface logs information related to the upper layer interface (packet or NDIS)

Control
Connect manually connect to a IP destination. In case of PPP with authentication the program prompts for authentication information. The initial setting of the repeated dial request option depends on the Preferences configuration.
Disconnect disconnects all active ISDN connections or terminates a repeated dial reuqest.
Reset Statitstics resets all counters.
AutoDial enable or disabes the auto dial feature.
Preferences defines the initial program settings. Selectable are the language of menus and messages, the cost per unit and currency value and the initial setting of the repeated dial option. All settings are saved in a file ISDNMON.INI.
The program beeps on connect and disconnect. If the "Play Sound" option is checked, the program will play the .WAV files assigned to "ISDNup" on connect and "ISDNdown" on disconnect.

The "Save Log" option will automatically save the log pages on program exit (only for registered users).

If "Show Up Time" is selected the icon or taskbar title will show the connect time.

Help
Info displays program version information.

Options

CANDI.EXE can be started with the following optional command line arguments:

You can enter arguments for a Windows program via the Properties entry of the Programmanager.

CANDI [Flags ConfigFile]

Flags the argument is currently ignored for compatibility with previous versions.
ConfigFile specifies the name of the CANDI configuration file. If the name is not given, it defaults to "CANDI.INI". The configuration file is a readable text file. How to set up a configuration file and a complete reference of all configuration options is described in the configuration guide.

Ethernet characteristics

CANDI works as an ethernet type NDIS-2 Driver. The ethernet address of CANDI is defined as: 00-00-0xFB-0xAA-00-01. (Thanks to RzK, Asbach, Germany for using numbers from their official 00-00-0xFB range.)
The ethernet address of CANDI is settable by software via the NDIS interface. This way the ethernet address can be changed to any other desired value.
Changing the ethernet address may be required when connecting two CANDI's with direct applications using an ethernet bridging protocol.

Support

The latest version of CANDI is available on www.biochem.mpg.de/~heha or via ftp from:ftp.biochem.mpg.de in directory /pc/isdn.

Warranty

Please mail comments, questions, problems to heha@biochem.mpg.de. I can not guarantee any level of technical support, or for any length of time. In general, I will give priority to registered users.
There is absolutely NO WARRANTY, expressed or implied with this software. If you choose to use this software, you assume all risk.