cFos can bundle two to four B channels in one connection to boost transfer rates, irrespective of what [PRO] CAPI or ISDN boards are used. Every cFos user can 'channel bundle' with any other cFos user (and ZyXEL Elite 2864I Terminal adaptor). This is even possible when users own completely different ISDN cards as long as they are capable of running more than one B channel simultaneously with the "data transfer" service. Most TELES and AVM boards (not the old A1 boards though) satisfy this requirement, as does ELSA from CAPI 1.43 onward. However, the Stollmann Tina DS and Tina D do not meet this requirement (but Tina DD does), as one of their two B channels is reserved exclusively for the A/B adaptor.
cFos Channel Bundling (CCB) is not a protocol but a mode of operation.
As such, it can be used with X.75 and any other packet-oriented protocol.
This assumes that you have cFos loaded on more than one port for
instance, in multiport mode (i.e., either several ports have been opened with
"-c" parameters or different device names have been activated).
If cFos is supposed to support only a single port, the "-aX"
parameter will activate so-called "auxiliary ports." These are then
used by cFos internally but cannot be accessed by external commands
(like those transmitted by a specific application). The "X"
parameter specifies which controller (ISDN board) is used to run the corresponding
B channel.
Assuming appropriate CAPI support, cFos can thus perform channel
bundling on several ISDN boards at the same time.
Examples:
This method is flexible enough to allow cFos Channel Bundling and
multiport mode to be used in any number of combinations:
Besides the main port used for connection, cFos will give preference
to auxiliary ports; only if no more auxiliary ports are available will cFos
select other main ports.
When a main port that is currently bundled with another port is accessed,
the cFos Modem Emulator will return an "OK"
to all modem commands. This could, for instance, happen when DesqView is
running two mailer tasks at once. If one of those uses both channels, the
cFos Modem Emulator will respond "OK" to the
other task without actually executing any command. Thus, the mailer
"knows" the port is "still there."
Active and passive connection in CCB mode do not differ from connecting with
a single channel especially with respect to choosing transfer protocols.
Auxiliary ports have the same modem profile as the corresponding main port with
exception of the 'Controller Byte' (register S40). This is determined by the value
entered for the "-a" parameter.
Defining the number of channels (max. 4) to be used for CCB is done with the
"AT&Bn" modem command, while channels are actually
opened with the "ATD <number>" command.
If more channels are entered in "AT&Bn" than cFos
installed during startup, "ERROR" will be returned.
However, if there are in principle sufficient channels, yet some are being used
for other purposes, CCB will still be performed but only on those channels
currently available.
The same is basically true for incoming calls. cFos will check whether
there is already a connection for a certain caller ID including EAZ/SI/AddSI
and will switch to bundle mode if neccessary. In other words, if you
call cFos twice using the same caller ID/EAZ, CCB is initiated
automatically. What this also means is that CCB on incoming calls does require
transmission of one's caller ID!
It should also be noted that there are no special "CONNECT" messages for CCB, as cFos has yet to receive any information on the number of bundled channels at the time it transmits the "CONNECT" message. This is especially true when using transfer-dependent opening and closing of channels, so-called Dynamic Channel Bundling (see below).
In addition, it is possible to perform CCB for different call numbers on several S0 busses.
cFos Dynamic Channel Bundling makes it possible to open and close B
channels [PRO] as needed. If data throughput drops below a predefined level,
one or more B channels will be closed, thus saving you additional charges. By
the same token, an additional channel will be opened automatically once data
transfer volume exceeds a predefined threshold (see below).
To get the most out of your online charges, channels will only be closed shortly
before the current unit expires.
As for static Channel Bundling, the maximum number of B channels is specified
with the "AT&Bn" modem command. Static Channel Bundling
is selected by "AT&M0" (default), while dynamic CCB
is chosen with the "AT&M1" command.
During dynamic bundling, cFos opens a single channel at first using
the "ATD" command and adds more channels as needed.
The following registers will allow you to configure cFos Dynamic
Channel Bundling for maximum data transfer at minimum cost:
We recommend you leave at least 1000 cps between the entries in both registers. Note also that cFos has a 'CPS-O-METER' in its status line, which lets you monitor average transfer within the last 8 seconds.
The following cFos modem registers should be used for fine-tuning:
| S79=0 | all |
| S79=1 | no further aux. ports (i.e., disable incoming CCB) |
| S79=2 | two channels |
| S79=3 | three channels |
| etc. |
For outgoing calls, time and charge limits can also be set. Main and auxiliary ports can be configured separately by using registers S60 to S63:
Of course, time and charge limits can be set irrespective of whether you wish to use channel bundling or not. As they function independently, you may configure both time and charge limits. The default for all settings is 0 (i.e., all limits are disabled).
Note also that when a main port is closed, the corresponding auxiliary ports are closed as well.
Assume you are a mailbox user. Following login, you want to have all new files
displayed to you. Then, you mark all those you would like to download. In that case,
you should use the following initialization for cFos:
"AT &B2 &M1 S64=5000 S65=7000"
This means that files will be marked using one channel but downloaded on two
channels (=> when more bandwidth is needed), thereby reaching transfer rates
of up to 16000 cps!