Windows 98 includes both a protected-mode DLC driver (Dlc.vxd), which supports 32-bit and 16-bit DLC applications, and a real-mode DLC driver (Msdlc.exe), which supports only 16-bit applications. Microsoft DLC is used primarily to access IBM mainframe computers and Hewlett-Packard network-ready printers. Microsoft recommends that you use the protected-mode driver in most cases. However, some 16-bit DLC applications will work only with the real-mode DLC driver. For more information about applications that require the 16-bit DLC, see "Using 32-bit DLC for Connectivity" later in this chapter.
The following sections how to use 32-bit, protected-mode DLC protocol and the 16-bit, real-mode DLC protocol.
The 32-bit DLC protocol provides connection and communication with mainframe computers using DLC. With the 32-bit Data Link Control (DLC) protocol, you can establish multiple connections to different IBM host and AS/400 computers over the same network token-ring, FDDI, or Ethernet adapter. Host terminal emulation programs use the 32-bit DLC to communicate directly with host computers. The 32-bit DLC protocol also allows multiple 32-bit applications to use the same network adapter at the same time to connect to different host computers.
You can also use the 32-bit DLC protocol to provide connectivity to local area printers connected directly to the network. For example, you can use the DLC protocol to print to a printer that uses an adapter to connect directly to the network rather than to a port on a print server. The DLC protocol must be installed and running on the print server for the printer. The protocol does not need to be installed on the computers that send print jobs to the print server. To take advantage of the DLC protocol device driver, you must create a network printer in the printers folder by using a third-party utility such as Hewlett Packard’s Jet Administration Utility.
The 32-bit DLC protocol software supports the following 32-bit and 16-bit DLC programs:
Microsoft recommends that in most cases you use the 32-bit DLC protocol rather than the 16-bit DLC protocol or IBM’s LAN Support drivers, because it supports both 32-bit applications and most 16-bit applications, provides better performance, and can access protected memory.
However, the 32-bit DLC protocol does not support certain 16-bit DLC applications. Some 16-bit DLC applications load TSRs to check the existence of DLC before Windows 98 loads. If you need to run any of those applications, you may want to use the 16-bit DLC protocol. For more information about the 16-bit programs the 32-bit DLC protocol does not support, see "Running 16-bit Applications" later in this chapter. The 32-bit DLC protocol also does not support 32-bit programs created to run under OS/2.
Client for Microsoft Networks does not use the 32-bit DLC protocol to communicate with the Microsoft network. Also, the 32-bit DLC protocol does not have a NetBIOS interface. 32-bit terminal emulation programs usually call the protected-mode DLC protocol by loading a TSR that acts as an interface to the DLC protocol. A 16-bit terminal emulation program can call the 32-bit DLC protocol by using the Int 0x5C (NetBIOS) interrupt vector. The 32-bit DLC protocol can coexist with other protocols, and it conforms to the network driver interface specification (NDIS) 3.1 and later.
Windows 98 supports the Ethernet multivendor standard DIX 2.
The following sections describe how to install the Microsoft 32-bit DLC protocol and how to configure it with Novell NetWare ODI drivers and IBM LAN Support.
For information about the architecture of Microsoft DLC, see Chapter 29, "Windows 98 Network Architecture."
Before you install the 32-bit DLC protocol, you must perform the following tasks:
To install the 32-bit DLC protocol
Windows 98 Setup removes any previous configuration settings for 16-bit Microsoft DLC, and adds an entry in the Autoexec.bat file for Dlchlp.exe, the file that supports 16-bit DLC programs. If no 16-bit DLC programs are used, you can save real-mode and 32-bit DLC protected-mode memory by disabling 16-bit support. For more information about disabling 16-bit support, see "Disabling 16-bit Support" later in this chapter.
Windows 98 setup also associates a unique CCB adapter number to the adapter that is bound to the DLC protocol.
For information about changing the CCB adapter number, see "Configuring the 32-bit DLC Protocol" later in this chapter.
For information about using multiple CCB adapter numbers, see "Adding a Second Network Adapter" later in this chapter. After you have installed the 32-bit DLC protocol, you can verify that the protocol is bound to the adapter by using the following procedure.
To verify bindings
Note
You cannot check the bindings by clicking the 32-bit DLC protocol, because only clients and services can be bound to protocols.
After you have installed the 32-bit DLC protocol, you can configure adapter settings and settings for the 32-bit DLC protocol.
For information about configuring adapter settings, see Chapter 15, "Network Adapters and Protocols."
This section covers the following topics:
This section describes the 32-bit DLC settings you can manually configure.
Note
In most cases, you do not need to change the default values. However, if you are loading multiple terminal emulation sessions, you might want to increase values for SAPs and link stations.
To configure 32-bit DLC settings
Table 15.11 shows the default settings you can change. Applications can also change these settings.
Table 15.11 DLC configuration settings
32-bit DLC parameter | Description | Range | Default |
---|---|---|---|
CCB Adapter Num (equivalent to LANA-number in NCB) | Specifies a unique number used by 32-bit DLC to identify each instance of a driver that is associated with a network card. 1 | 1-15 | 0 |
Ethernet DIX | Sets the frame format. For 802.3 Ethernet format, set the value to 0. For Ethernet DIX 2.0 (Ethertype 0x80D5) format, set the value to 1 (enable). (Ethernet DIX frames have an extra type field.) | 0- 1 (Boolean) |
0 |
Max Grp Member | Specifies the maximum number of SAPs that can belong to each Group SAP. | 1- 127 | 0 |
Max Grp SAPs | Specifies the maximum number of Group SAPs that can be opened simultaneously. | 1- 126 | 0 |
Max Links | Indicates the number of link stations that can be opened simultaneously. 2 | 1- 255 | 20 |
Max SAPs | Indicates a service access point. 3 | 1- 255 | 3 |
Maximum Adapters | Indicates the maximum number of network adapter cards you can have in your computer. | 1- 16 | 4 |
Maximum Frame Size | Indicates the maximum size of a frame that can be sent across the network. The maximum value of this setting depends on the network type.4 | 96-17960 bytes |
4464 |
Maximum Users | Indicates the maximum number of logical adapters that can be open at the same time. Typically, each 32-bit program opens a logical adapter of its own. | 1-40 | 5 |
NDIS Pkt Descriptors | Specifies the number of packets that the adapter driver can store in its packet buffer before sending them to the network. | 24-128 | 24 |
Support CCB1 | If this setting is set to 1, 16-bit programs that use CCB1 are supported. If it is set to 0, only 32-bit DLC programs are supported. 5 | 0-1 (Boolean) |
1 |
Swap Addr Bits | When DLC is bound to an Ethernet or token-ring driver, set this parameter to 1 (enable) to turn on address bit-swapping. | 0- 1 (Boolean) |
1 |
Timer T1 (1) | Sets the retransmission-timer "short tick" value. This timer determines the delay (in units of 40 milliseconds) before retransmitting a link-level frame if no acknowledgment is received. 6 | 1- 255 | 5 |
Timer T1 (2) | Sets the retransmission-timer "long tick" value. This timer determines the delay (in units of 40 milliseconds) before retransmitting a link-level frame if no acknowledgment is received. | 1- 255 | 25 |
Timer T2 (1) | Sets the delayed-acknowledgment timer "short tick" value. This timer determines the delay (in units of 40 milliseconds) before acknowledging a received frame when the receive window has not been reached. | 1- 255 | 1 |
Timer T2 (2) | Sets the delayed-acknowledgment timer "long tick" value. This timer determines the delay (in units of 40 milliseconds) before acknowledging a received frame when the receive window has not been reached. | 1- 255 | 10 |
Timer Ti (1) | Sets the inactivity-timer "short tick" value (in units of 40 milliseconds). This timer determines how often DLC checks an inactive link to see whether it is still operational. | 1- 255 | 25 |
Timer Ti (2) | Sets the inactivity-timer "long tick" value (in units of 40 milliseconds). This timer determines how often DLC checks an inactive link to see whether it is still operational. | 1- 255 | 125 |
Trace Mask | Indicates the default mask setting used by the Trcdlc.exe command-line utility. 7 | – | – |
1 For more information about setting the CCB number for an alternate or secondary network card, see "Adding a Second Network Adapter" later in this chapter. 2 For more information about link stations, see "Determining Links and SAPs Settings" later in this chapter. 3 For a description of SAPs, see the IBM Local Area Network Technical Reference. For more information about SAPs, see "Determining Links and SAPs Settings" later in this chapter. 4 For example, token ring networks can support frame sizes of up to 4 kilobits per second (Kbps), whereas Ethernet networks can support frame sizes of less than 2 Kbps. For more information about the maximum frame size, see your network documentation. 5 For more information about CCB1, see "Disabling 16-bit Support" later in this chapter. 6 For more information about timer settings, see "Configuring Timer Settings" later in this chapter. 7 For more information about Trdlc.exe, see "Installing the 32-bit DLC Protocol" earlier in this chapter. |
Table 15.12 shows 16-bit DLC protocol settings that are still available with the 32-bit DLC protocol. Note that the names have changed.
Table 15.12 Available 16-bit DLC protocol settings
16-bit DLC | 32-bit DLC |
---|---|
Swap | Swap Addr Bits |
UseDIX | Ethernet DIX |
SAPs | Max SAPs |
Stations | Max Links |
Each program requires a certain number of Service Access Points (SAPs) and link stations. Because each SAP or link station takes up memory, you should provide just enough for your program to run.
If you do not know the number of SAPs and link stations your program requires, and you want to minimize the memory your terminal emulation programs use, start with large values and gradually reduce them until the program no longer works.
The Microsoft 32-bit DLC protocol uses defaults of 5 SAPs and 20 link stations. This should be sufficient for most programs. If needed, you can increase the number of SAPs and link stations. For more information about configuring 32-bit DLC settings, see "Configuring Settings" earlier in this chapter.
For information about which SAP and link station settings to use with your DLC programs, see the documentation for those programs.
The Microsoft DLC protocol uses three timers:
Each timer has a "short tick" rate and a "long tick" rate that individual commands use to determine timer values. A command such as Dlc.Open.Sap specifies a timer value with a number range of 1 through 10 units of milliseconds.
For example:
(number selected) * (short-tick value) * 40 milliseconds
(number selected - 5) * (long-tick value) * 40 milliseconds
Some network programs adjust these timer entries automatically. The Dlc.Open.Adapter command overrides the default value.
If you add a second DLC32-compatible network adapter to your computer, a new copy of the 32-bit DLC protocol is created and automatically bound to your secondary network adapter. When you restart your computer, the CCB adapter number setting for that copy of the 32-bit DLC protocol automatically changes to a unique number.
Note
If you remove your primary network adapter, the CCB adapter number for the second adapter does not change.
If your users will use only 32-bit network programs, you can disable support for 16-bit programs. This speeds up network access and saves real-mode and protected-mode memory.
To disable 16-bit support
Caution
Do not manually remove Dlchlp.exe from your Autoexec.bat file.
The 32-bit DLC protocol cannot be upgraded over IBM LAN Support. If you are adding the 32-bit DLC protocol to a computer that used IBM LAN Support, you must first remove the IBM DLC protocol from the Network option in Control Panel, then add the Microsoft 32-bit DLC protocol. Otherwise, you may not be able to connect to your host, and the Windows 98 computer could stop responding.
Note
Before upgrading over IBM LAN Support, record the parameters for the DXM driver line(s) so that you can configure the equivalent Microsoft 32-bit DLC protocol settings. If you are using an NDIS configuration with IBM LAN Support, you should also record the parameters for your Protocol.ini file.
Windows 98 Setup does not migrate the IBM LAN Support program settings will to the Microsoft 32-bit DLC protocol. You will need to make sure that the settings for the Microsoft 32-bit DLC properties correlate to the prior settings for IBM LAN Support. Table 15.13 shows how to convert the Xmit_swap setting in Dxme0mod.sys to the Swap Addr Bits and Ethernet DIX settings for the 32-bit DLC protocol.
Table 15.13 IBM LAN Support program settings
Xmit_swap setting in Dxme0mod.sys | Swap Addr Bits setting | Ethernet DIX setting |
---|---|---|
0 | 1 | 0 |
1 | 1 | 1 |
2 | 0 | 0 |
3 | 0 | 1 |
Note
You can configure the alternate adapter by using the CCB Adapter Num setting. For more information about the CCB Adapter Num setting, see "Adding a Second Network Adapter" earlier in this chapter.
If you are running 32-bit Microsoft DLC with 16-bit applications that use DLC, you will need to update your Autoexec.bat file. Make sure that Net.exe is loaded before Dlchlp.exe.
Applications that require a terminate-and-stay-resident (TSR) program to connect to a host computer before starting Windows 98 will not work with the Microsoft 32-bit DLC protocol stack. The following applications require TSRs:
Contact your vendor for updated information about these applications.
Table 15.14 describes the files included with the 32-bit DLC protocol.
Table 15.14 32-bit DLC files
File name | Description |
---|---|
Netdlc32.inf | The Windows 98 device information file, which provides settings used by Windows 98 setup to install DLC. |
Dlc.vxd | The Windows 98 device driver for DLC. |
Dlcapi.dll | The DLL file that supports 32-bit DLC programs. |
Dlcndi.dll | A DLL file used by Windows 98 setup for custom installations. |
Trcdlc.exe | A command-line trace utility for viewing DLC commands that are running 32-bit calls. This utility helps developers troubleshoot 32-bit DLC programs. |
Dlchlp.exe | A TSR that allows 32-bit DLC to also support 16-bit DLC programs. This file is loaded in the Autoexec.bat file, but is not required if you do not need support for 16-bit DLC programs. |
Note
If you do not need support for 16-bit DLC programs, do not remove Dlchlp.exe from your Autoexec.bat file manually. Instead, disable support for 16-bit DLC programs by using the Support CCB1 setting.
The 16-bit DLC protocol provides connection and communication with mainframe computers using DLC. To provide connection and communication, the DLC protocol must be installed on the client computer that is running Windows 98. The Microsoft DLC protocol works with either token-ring or Ethernet network adapter drivers.
Microsoft DLC is also used to provide connectivity to local area printers connected directly to the network. For example, DLC can be used for printing to a printer such as an HP LaserJet 4Si that uses an HP JetDirect network adapter to connect directly to the network (rather than to a port on a print server). The DLC protocol must be installed and running on the print server for the printer. Computers sending print jobs to a print server for a DLC network printer do not need the DLC protocol — only the print server requires DLC. To take advantage of the DLC protocol device driver, you must create a network printer in the Printers folder.
In addition to the 16-bit DLC protocol, Windows 98 includes a 32-bit DLC protocol. In most cases, Microsoft recommends that you use the 32-bit DLC protocol. It provides better performance and can access protected memory. However, certain applications require Microsoft’s 16-bit DLC because they require a TSR program to connect to a host computer before starting Windows 98. For more information about these applications, see "Running 16-bit applications" earlier in this chapter.
The following sections describe how to install the Microsoft DLC protocol and how to configure it with Novell NetWare ODI drivers and IBM LAN Support.
This section describes how to install the real-mode NDIS 2 Microsoft DLC protocol to bind with an NDIS 2 network adapter driver. This is an NDIS 2 protocol that, when installed, is bound to an NDIS 2 network adapter driver. The Windows 98 protected-mode protocols use the Ndis2sup.vxd module to coexist with and run over the real-mode NDIS 2 network adapter drivers.
When you install Windows 98, Windows 98 Setup detects whether the computer already has the Microsoft DLC protocol installed; if so, Setup migrates the protocol and its settings to Windows 98. Otherwise, you can add Microsoft DLC as a protocol after Windows 98 is installed.
Note
You must install the version of Microsoft DLC provided with Windows 98. You cannot use the Microsoft DLC INF file from Windows for Workgroups 3.x to install this protocol; Windows 98 uses a new INF file format.
You can also install Microsoft DLC using setup scripts, as described in Appendix D, "Msbatch.inf Parameters for Setup Scripts."
To install the Microsoft DLC protocol on a computer running Windows 98
The properties in Table 15.15 are set by default for real-mode Microsoft DLC. You can use the Network option in Control Panel to change these default values, or to set values for other parameters that you might use, in the Advanced properties for Microsoft DLC protocol.
Table 15.15 DLC properties
Value | Description | ||||
---|---|---|---|---|---|
Saps | Indicates the number of SAPs that can be opened simultaneously. The range for SAPs is 1 to 255 inclusive. The default is 3. For a description of SAPs, see the IBM Local Area Network Technical Reference. |
||||
Stations | Indicates the number of link stations that can be opened simultaneously. The range for stations is 1 to 255 inclusive. The default is 20. Each application requires a certain number of SAPs and stations. Because each SAP or station takes up memory, you should provide only enough for your application to run. |
||||
Swap | Turns on address bit-swapping when it is enabled and Microsoft DLC is bound to an Ethernet driver. The default is 1 (enabled). | ||||
Usedix | Sets the frame format. By default, this value is 0 (disabled), which is the correct value for 802.3 Ethernet format. Set this value to 1 for Ethernet DIX 2.0 (Ethertype 0x80D5) format. Ethernet DIX frames have an extra type-field. |
The default values for SWAP and UseDIX are appropriate for most token-ring LAN environments. If the computer has an Ethernet adapter, then you should set the correct values for these parameters in the Advanced properties for Microsoft DLC. If you previously used the IBM Dxme0mod.sys driver, use Table 15.16 to map the Xmit_swap parameter to set values for the two Microsoft DLC parameters.
Table 15.16 Mapping Xmit_swap parameters
Dxme0mod.sys xmit_swap | Microsoft DLC parameters | ||||
---|---|---|---|---|---|
0 | swap=1 usedix=0 |
||||
1 | swap=1 usedix=1 |
||||
2 | swap=0 usedix=0 |
||||
3 | swap=0 usedix=1 |
Table 15.17 shows some typical settings in Autoexec.bat and Protocol.ini for Microsoft DLC with an Intel EtherExpress PRO LAN NDIS 2 network adapter driver on an Ethernet network. Notice that the [msdlc$] section is added automatically by Windows 98 when the protocol is installed.
Table 15.17 Sample configuration file settings for Microsoft DLC with NDIS 2 adapters
File name | Required settings |
---|---|
autoexec.bat | net init |
protocol.ini | [netbeui$]
|
[data]
|
For computers that are running Microsoft DLC with ODI drivers using the Novell-supplied Odinsup.exe file, Windows 98 Setup installs over this configuration and leaves entries for ODINSUP and MSDLC in Autoexec.bat. Microsoft does not provide direct support for Microsoft DLC used with Odinsup.exe.
If you must run a real-mode network redirector or TSR (Netx.exe, Vlm.exe, and so on), you need to configure Microsoft DLC by binding the Microsoft DLC protocol to an ODI network adapter driver. Otherwise, install Microsoft DLC over NDIS 2 with the protected-mode Microsoft Client for NetWare Networks. For information about these configurations, see "Architecture for DLC" in Chapter 29, "Windows 98 Network Architecture."
Table 15.18 shows settings used to configure Microsoft DLC with ODI drivers.
Note
This manual editing of Protocol.ini will remove "Microsoft DLC" from the Network Configuration dialog. The usage of Odinsup.exe prevents Windows 98 from correctly identifying the "Microsoft DLC" as being used by the Ethernet adapter and therefore will not be displayed even though the protocol will still function.
Table 15.18 Configuration file settings for real-mode Microsoft DLC with ODI drivers
File name | Required settings | ||||
---|---|---|---|---|---|
autoexec.bat | lsl;Novell-supplied component mlid_driver.com;Novell-supplied component |
||||
net.cfg | Protocol ODINSUP |
||||
protocol.ini | [protman$]
|
If you are using DLC support supplied by IBM to connect to host computers, Windows 98 Setup can detect IBM DLC; it leaves the installation intact and configures Windows 98 to run over that configuration. Although support for IBM DLC can be installed using the Network option in Control Panel, the required components must be provided by your network vendor.
This section describes two typical IBM LAN Support configurations, using Dxmc0mod.sys and Dxme0mod.sys.
Dxmc0mod.sys, the monolithic IBM DLC driver.
For this configuration, Windows 98 Setup does one of two things:
Table 15.19 shows a sample configuration for IBM Dxmc0mod.sys with Microsoft Client for NetWare Networks.
Table 15.19 Example of configuration settings for Dxmc0mod.sys with ODI drivers
File name | Required settings | ||||
---|---|---|---|---|---|
autoexec.bat | lsl ; Novell-supplied component |
||||
config.sys | device= path\dxmaood.sys ;IBM-supplied component path\dxmcomod.sys ;IBM-supplied component |
Dxme0mod.sys, the NDIS driver for IBM DLC.
For this configuration, Windows 98 Setup does one of three things:
Table 15.20 shows a sample configuration for IBM Dxme0mod.sys with Client for Microsoft Networks using an NDIS 2 adapter driver. The same basic kinds of settings are used for a computer running Microsoft Client for NetWare Networks with an NDIS 2 adapter driver.
Table 15.20 Example of settings for Dxmce0mod.sys with Client for Microsoft Networks
File name | Required settings | ||||
---|---|---|---|---|---|
autoexec.bat | net start netbind |
||||
config.sys | device=c:\windows\protman.dos /i:c:\windows |
||||
protocol.ini | [protman$]
|