Dec 262017
 
Information on getting HSLink to work with WWIV.
File HSL4WWIV.ZIP from The Programmer’s Corner in
Category BBS Files
Information on getting HSLink to work with WWIV.
File Name File Size Zip Size Zip Type
HSWWIV.TXT 12409 4265 deflated

Download File HSL4WWIV.ZIP Here

Contents of the HSWWIV.TXT file



OPTIMIZING HS/LINK FOR WWIV 4.21

After talking at length with Sam Smith, the author of HS/Link, I
think I have the proper setups to make HS/Link work reliably with PC Pursuit. I
also found out a couple of other things that really speed HS/Link up for
regular transfers.

The first part of this document defines some terms that are used in
the rest of this discussion. The second part discusses ways of setting up
HS/Link to optimize normal WWIV BBS connections. The third part describes the
problems involved using HS/Link on WWIV with PC Pursuit, and how they can be
taken care of. Part 4 deals with optimizing HS/Link for use with your terminal
program, and part 5 deals with how to do Bi-Directional uploads and downloads.


Part 1 - Definitions:

BLOCK :
HS/Link sends data in packets (blocks). Normally each block contains a
unique sequence number and checksum info to aid in data verification and
error detection and recovery.

BLOCK SIZE (-s) :
Size of each block in bytes.

CONFIGURATION FILE :
An ASCII file that is used to set HS/Link's options. This file can be
created with HSCONFIG, or with your editor. The default configuration file
is HSLINK.CFG. This is the file that HS/Link looks for if no other is
specified on the command line. To specify another configuration file start
your command line as follows: "HSLINK [email protected]". Don't type the quotes.
The filename is the name of the alternate configuration file you want
HS/Link to use. This MUST be the FIRST option on the command line.

CURRENT HS/LINK VERSION :
Be sure to use the LATEST release of HS/Link. While the current version is
always compatible with older versions, you will not get the benefit of the
latest enhancements and fixes if you are using an old version. At the time
of this writing, the latest RELEASE version is 1.12.

DOWNLOAD DIRECTORY (-U) :
This option controls the destination directory for incoming files. By
default, HS/Link will put incoming files into the "current" directory.
This is where WWIV is expecting to find them. The BBS will move the files
to where they belong, so the -U option should NOT be used for the BBS. It
may however be used in conjunction with a caller's terminal program. For
Example, -UC:\TEMP in the caller's HSLINK.CFG file would place the
incoming files in his TEMP directory on drive C:.

FORCE REMOTE TO USE LOCAL OPTIONS (-!)
This option causes the remote (called) end to use some of the options
specified by the calling end. This does NOT affect any of the options
having to do with security, such as the upload path, or the overwrite
option. It does affect block size (-s), xon/xoff (-hx), and windows (-w).

HARDWARE HANDSHAKING - CTS/RTS (default) :
A means of flow control where the modem asserts the CTS (clear to send)
line when it is able to receive data from the computer. If it's buffer
fills up, it drops the CTS line. In the same way, the computer asserts the
RTS (request to send) line when it is able to receive data from the modem,
and drops it if it is busy. This scheme is used by High Speed modems that
can operate with a port speed that is higher than the connect speed.

SLOW HANDSHAKE (-hs) :
Sends Xoff or lowers RTS during disk I/O. This causes the computer to
signal the modem not to send any data during disk I/O. It is available for
systems with slow disk access. It may help if you get frequent CRC errors
of COM overruns on clean lines.

WINDOW (-w) :
The number of blocks HS/Link will send before stopping and waiting for an
acknowledgment (ACK)

XON/XOFF (default) :
A software method of telling the other end to suspend/restart
sending data. It is not generally necessary for error correcting modems,
but no harm is done by leaving it enabled. (Do not disable this if Slow
Handshaking (-hs) is required by your system)


Part 2 - Optimizing HS/Link for WWIV BBSs that do NOT make NET calls via

PCP

If you operate a WWIV BBS that does NOT make NET callouts via PCP, then
the following HSLINK.CFG file settings and INIT settings should be optimum for
you.

HSLINK.CFG - use HSCONFIG or wordprocessor to create

-A /* don't send ACKs */ << don't type the >>
-S4096 /* sets 4k blocks */ << comments >>
-W0 /* do not wait for ACK /*

INIT settings for HS/Link

Description : HS/Link
Xfer OK code : 0
Require MNP/LAPM : N
Receive command line:
HSLINK -P%2 -E%4 -U%3
Send command line:
HSLINK -P%2 -E%4 %3
Receive batch command line:
HSLINK -P%2 -E%4 -U%3
Send batch command line:
HSLINK -P%2 -E%4 @%3
Bi-directional transfer command line:
HSLINK -P%2 -E%4 [email protected] @%3


Part 3 - Optimizing HS/Link for WWIV BBSs that make NET calls via PC

Pursuit

OK, now for the problem with PCP. Being a timeshare net, it does not
transmit data continuously, especially during busy times. There may be delays
in data transmission. If the HS/Link default block size of 1024, or 4096 is
used, and the default window of 8 is in effect, HS/link will send 8 of these
blocks before stopping for an acknowledgment. If PCP is busy, this may be more
data than it can "swallow" in one gulp. Once PCP gets behind, it may have
problems recovering, in which case the data may or may not get thru. Even if it
does, the ACK may not get back to the sending end, in which case HS/Link waits
for it's internal timeout, before trying again. Often PCP cannot recover at
all, and HS/Link will finally about the transfer.

This problem can be resolved by using smaller blocks, and smaller
windows. A setting of 512 or smaller for the block size is recommended, and a
window of 4 should work fine. This will give PCP smaller blocks of data, and
HS/Link will stop more often to check that the data has been received.

This sounds easy to implement, but there is one problem with WWIV
that we have to overcome. We are able to set the command line that HS/Link uses
for regular BBS callers by using the INIT program, BUT we have no way of
controlling the command line that the NETWORK uses for it's callouts. This
means we are stuck using the same configuration for both our NET calls and our
regular callers.

There is a workaround that will do the job for those systems that
make NET callouts via PCP, but still want their regular callers to get the best
speed out of HS/Link. We can set the options we want to use for NET callouts in
the HSLINK.CFG file, since that is the one HS/Link looks for by default. Then
we can create another configuration file to use when a regular caller activates
HS/Link. We can specify that alternate configuration file on the HS/Link
command lines in INIT. If you called your alternate config file BBS_CALL.CFG,
and it was in your C:\WWIV directory, then your HS/Link setup in INIT should
look like this:

Description : HS/Link
Xfer OK code : 0
Require MNP/LAPM : N
Receive command line:
HSLINK [email protected]:\WWIV\BBS_CALL.CFG -P%2 -E%4 -U%3
Send command line:
HSLINK [email protected]:\WWIV\BBS_CALL.CFG -P%2 -E%4 %3
Receive batch command line:
HSLINK [email protected]:\WWIV\BBS_CALL.CFG -P%2 -E%4 -U%3
Send batch command line:
HSLINK [email protected]:\WWIV\BBS_CALL.CFG -P%2 -E%4 @%3
Bi-directional transfer command line:
HSLINK [email protected]:\WWIV\BBS_CALL.CFG -P%2 -E%4 [email protected] @%3

Your default HS/Link config file that will be used for the NET
callouts should look like the following. It should be named HSLINK.CFG, and
should be in the same directory as HS/Link. This is the optimum setup for use
with PCP:

-! /* force remote to use these settings */
-S512 /* use 512 byte blocks */
-W4 /* wait for ACK after every 4 blocks */

Your alternate config file for use with regular callers should look
like this, and the name should match what you specified in INIT on the HS/Link
command line (ie. BBS_CALL.CFG), and should also be in the same directory as
HS/Link.

-A /* don't send ACKs */
-S4096 /* sets 4k blocks */
-W0 /* do not wait for ACK /*

These should provide optimum setup for those WWIV BBS systems that
callout via PCP and want the best for their non PCP callers. Regular PCP
callers should configure their terminal programs to use a setup like the
HSLINK.CFG mentioned in part 4.


Part 4 - HS/Link and your terminal program

The calling party has the responsibility of determining the best
HS/Link configuration options for his/her particular situation (PCP, Non PCP,
etc). You should configure HS/Link for your terminal program, and include at
least the following options in the .CFG file. Be sure to include the (-!) to
force the remote to also use your preferences.

If you are calling via PCP, then your HS/Link config file should look
like the following one. You should also use PCP's default handshaking:

-! /* force remote to use these settings */
-S512 /* use 512 byte blocks */
-W4 /* wait for ACK after every 4 blocks */
-UC:\temp /* set this to the directory you want your downloads to go in /*

If you use "direct" connections ( regular lines), then your HS/Link
config file should look like this:

-! /* force remote to use these settings */
-A /* don't send ACKs */
-S4096 /* sets 4k blocks */
-W0 /* do not wait for ACK /*
-UC:\temp /* set this to the directory you want your downloads to go in /*

In the event that you do both PCP and Non PCP calls, you can give one
of these files a different name (ie NON_PCP.CFG), and then on the HS/Link
command line for your Non PCP calls, include the following as the FIRST option:

[email protected]_PCP.CFG

Be sure to include the pathname. ie @C:\TELEX\NON_PCP.CFG


Part 5 - Bi-Directional file transfers

For bi-directional transfers to work properly, You must NOT have a
"Download Directory" set in the HSLINK.CFG file for the BBS ! This is the
option that begins with a -U. If you want uploads to go to the Sysop directory,
you should set that option in INIT. It is ok for the caller to have the -U
option set for his terminal program.

Here is the procedure for doing bi-directional file transfers:

Select (D)ownload
Enter the file name you want to receive
Select "Batch" as the protocol
Repeat for additional files

Select (U)pload
Enter the file name and description of the file to be uploaded
Select "Batch" as the protocol
Repeat for additional files

Type X or B to bring up the "Batch" transfer menu
Select B from the menu << this is important. D or U will NOT work >>
Select HS/Link as the protocol
Start your HS/Link UPLOAD << HS/Link will take care of the downloads >>


I hope this takes some of the mystery out of HS/Link operation. Sam
Smith (HS/Link author) has looked this over, and it has his blessings. If you
have any problems, or discover something I have overlooked, or described
incorrectly, PLEASE notify me as soon as possible. I will attempt to update
this document as new information becomes available.



Lance Halle [email protected]
MOON VALLEY TRIANGLE Phoenix, Az. 602-942-9228 24 hrs
WWIVnet 602 A.C. [GSA ASV]

07/11/92


 December 26, 2017  Add comments

Leave a Reply