ID Number: Q61652
2.00 2.10
OS/2
Summary:
Listed below are questions and answers involving technical and
performance information pertaining to OS/2 LAN Manager versions 2.0
and 2.1.
Note: The following statements are true for OS/2 LAN Manager versions
2.0 and 2.1. This does not mean that future implementations will not
change in the future.
More Information:
1. Q. What is the mapping between named pipes in OS/2 LAN Manager 2.0
on a network, and connection oriented services in the NetBIOS
and underlying protocol layer?
A. All of the OS/2 LAN Manager services (including named pipes) are
provided by using a ring 0 NetBIOS interface. Please note that
the ring 3 NetBIOS interface is provided by OS/2 LAN Manager.
2. Q. If you have a single named pipe, how many connections can you
have to it across the network? Can multiple client machines
share the same named pipe on one server?
A. A single instance of a named pipe can hold one client. However,
you can make numerous instances of the same pipe name, to which
you can connect an equal number of clients. The maximum number
of instances that can be obtained from a named pipe is
determined by the first DosMakeNmPipe() call (a value of 0xFF
means unlimited).
Please note that the system will most likely run out of
resources (memory) if you attempt to make more pipes than it can
handle. Also, depending on the implementation, various server
settings may increase net performance if your server is intended
to provide pipe I/O to many instances.
3. Q. If you are using multiple instances of a named pipe on the OS/2
server to connect to multiple MS-DOS clients, does each instance of
the named pipe use a connection in the NetBIOS? Or does OS/2 LAN
Manager 2.0 handle multiplexing/demultiplexing of data through
one NetBIOS connection?
A. The OS/2 LAN Manager server requires one NetBIOS session for
each unique client (VC). If you have four workstations, each
with two pipes open to one server, the server requires four
NetBIOS sessions (one for each workstation). All workstation I/O
(named pipes, redirected file/print I/O, and so on.) is multiplexed
on one session.
4. Q. If you are running applications on an OS/2 server using named
pipes to MS-DOS clients, and also running applications on an
OS/2 server and other MS-DOS clients using NetBIOS, what
resources are used in NetBIOS and the underlying protocol
layers? For example, if an application is accessing NetBIOS
directly, how will it affect OS/2 LAN Manager's ability to use
named pipes?
A. If you use up all of the NetBIOS resources from underneath the
MS-DOS redirector, it will stop functioning until the application
releases some of the resources. The OS/2 redirector will control
how many network control blocks (NCBs) can be submitted from
application processes. There are settings in LANMAN.INI that
control how many resources must be guaranteed.
Taking NCBs away from OS/2 LAN Manager merely lowers the amount
of concurrent net activity that can be performed. This should
not be a problem unless you have an NCB (or LSN) hungry
application, or are stressing your OS/2 LAN Manager
workstation/server. If this is the case, the LANMAN.INI and
PROTOCOL.INI values should be set to provide OS/2 LAN Manager
with the required number of resources to satisfy the demand.
5. Q. Is there a way to determine the number of free connections left
or available?
A. Yes, this can be done by using the NETBIOS STATUS (33H {wait} /
B3H {return} NCB. Please refer to the "IBM Local Area Network
Technical Reference" manual, or "Inside NetBIOS" by Haugdahl for
more information.
6. What kinds of resources (that is, threads, locked in memory, and so
on) does OS/2 LAN Manager 2.0 use when a connection is made to a
named pipe from across the network?
Connection Resources
---------- ---------
Workstation The same resources that are used by any other
remote file handle.
Server The same resources that are used by any other
remote file handle, plus the overhead for a local
pipe (remote named pipe overhead is the same as if
it was a local named pipe on the server).
7. Q. What are the advantages of using message stream pipes as opposed
to byte stream pipes? For example, when transferring 4K messages
between the client and server via Ethernet, what are the
performance and resource penalties of using message streams,
instead of a byte stream?
A. Message stream pipes are slightly slower than byte stream pipes.
The performance between message-mode and character-mode named
pipes will not differ drastically unless you take advantage of
DosTransactNmPipe(), or are using small stream I/O. If this is
the case, the difference between the message or byte mode
performance will be apparent.
8. Q. By using a message stream to keep the message from being
fragmented, are there any additional memory or performance
penalties that I will incur as opposed to using byte stream
named pipes?
A. There is an overhead of a couple of bytes per write done into
the pipe to keep track of the message size.
Please note that the extra bytes typically will not make a
difference in performance. The best way to increase performance
is to cut down the number of packets that hit the wire (thus,
reading 100 bytes will be much faster than reading ten 10-byte
packets from a file).
Additional reference words: 2.00 2.10