ISPA Version 3.0.5, a Packet-Driver for ISDN-API 1.1. Herbert Hanewinkel, March 1995 ISPA is Shareware. ISPA, as it is provided, is a demo version. To make use of the full functionality of ISPA you have to register ISPA. The basic registration fee for a single user version of ISPA is DM 30,- for private users and DM 50,- for commercial and institutional users. Please read the file "ispa.reg" for details. As long as you have NOT registered ISPA you may test ISPA using a ? in place of the registration code. In this case ISPA will stop forwarding data after 10 min. Disclaimer The program and this documentation is Copyright (C) 1993-1995 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. 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. If you are a distributor of ISDN products and would like to sell registered versions of this software with printed hardcopy 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 ISPA is an ethernet-type (class=1) packet-driver for IP-Routing or remote Ethernet bridging over ISDN. ISPA communicates with the ISDN card using the ISDN API 1.1 specification (a standard defined by German ISDN card manufacturers and the German Telekom). Because of this, ISPA is completely hardware independent and has successfully been tested with many active and passive ISDN cards. ISPA 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. ISPA can communicate at least with the following commercial systems: Ascend Routers, Biodata ISDN Router, Cisco Routers, INS/CLS Banzai ISDN Router, netCS ISDN Router, RzK SLIP Bridge, SGI Indy ISDN 1.0, Spyder Routers, SunLink ISDN 1.0. ISPA was initialy developed for use with PCROUTE as a cheap Ethernet-ISDN Router. However, it is more and more used to connect a standalone PC system to the Internet using ISDN. ISPA has succesfully been tested with a wide range of commercial, shareware and public domain TCP/IP packages e.g. Ftp PCTCP, Sun PC-NFS, Novell LanWorkPlace and PDTEHER, WATTCP based IP programs, NCSA & CU -Telnet/ftp, UMN gopher & popmail, Trumpet WINSOCK, XFS. ISPA was written for use with ISDN BRI PC cards. I myself have used ISPA only with Teles.S0 cards, one of the cheapest ISDN cards in Germany, and tested ISPA successfully with NCP cards. But I got responses from users of ISPA that it will work at least with the following other ISDN cards: AVM A1 & B1, Diehl SCOM & SoTec, miro, NCP p16 & a, NICCY 1000 PC, mbp Solis. (Check the *.comment files if you are looking for details on a specific environment). The current version of ISPA supports two independent active connections at a time. Alternativly a connection can use both B-channels for loadsharing. ISPA can be loaded more than once, if more than two simultanous connections to different sites are desired. Loadsharing can be configured as static or dynamic (bandwith on demand). Dynamic loadsharing can be used concurrently with a second independent connection. Installation To load ISPA run ispa.exe with the following arguments: (Parameters in [] are optional) ispa Reg.-Code PacketInterrupt [ConfigFile] "Reg.-code" is your personal registration code you will receive after registrating ISPA. As long as you have NOT registered ISPA you may test ISPA using a ? in place of the registration code. In this case ISPA will stop forwarding data after 10 min. "PacketInterrupt" defines the software interrupt for the Packet Driver application. The value has to be in the range from 0x60 to 0x80. "ConfigFile" specifies the name of the ISPA configuration file. If the name is not given, it defaults to "ISPA.INI". Read the section "The configuration file" below for setting up an ISPA configuration file. ISDN number format and related features of ISPA PBX's sometimes require a special key-code for dialing out. If this prefix is not displayed on incoming calls, Dialback and CLI will normally fail. To solve this problem ISPA supports an outgoing call prefix, which is not checked on incoming calls. The prefix can be specified in front of each ISDN number separated by a comma. Digits, which should not be used in an outgoing call, but have to be present for CLI can be marked by a decimal point from the common part of the number. Examples: 089.345678 will dial 345678 and will match incoming calls from 089345678. 0,30.123456 will dial 0123456 and will match incoming calls from 30123456. 00,123456789 will dial 00123456789 and will match incoming calls from 123456789. Subaddresses (available only in Euro ISDN, E-DSS1) can be appended to a number by separating them with a /. Only digits are supported in a subaddress. The total length of number + subaddress is limited to 26 characters. A SPV connection (available only in German ISDN, 1TR6) is set up by appending an "s" to the end of the ISDN-number. An incoming SPV request is accepted only if the "s" is specified. The CAPI standard doesn't define a standard setup for PVC's. Teles, Berlin supports PVC's (Digitale Festverbindungen D64s) using a pseudo ISDNnumber "tap" and selecting one of the B-channels. ISPA supports this feature of the Teles CAPI implementation and allows the selection of a PVC with the specification "1tap" or "2tap", depending on the desired channel, for the ISDNnumber. The configuration file The configuration file consists of the following formal parts: [global options] [translation entry for incoming calls from numbers not specified] [translation entries for incoming and outgoing calls] The first section is optional, but there has to be at least one of the two types of translation entries. The global options control ISPA's overall behaviour. Global options can be specified on one or more lines. The second and third part consist of translation entries to map IP-addresses to ISDN-numbers and to select peer specific parameters for these entries. The translation entries in the configuration file have two functionalities: - they act as a translation table for IP routing on outgoing calls by mapping the IP-address of the peer to an ISDNnumber. - they are used for calling line identification (CLI) on incoming calls. Incoming connections will be accepted only from ISDN-numbers specifed in the configuration file. To disable CLI and allow incoming calls from any number, the first translation entry has to contain a '*' in the common part of ISDNnumber field. For incoming calls from ISDNnumbers not otherwise specified, the parameters of this entry will be used. The translation entries in the file have to be in the following format: ip-address ISDNnumber [ISDNnumber2] [options] [# comment] "ip-address" defines the IP-address of the peer. "ISDNnumber" defines the ISDN-number of the peer. "ISDNnumber2" defines a second ISDN-number, when used with loadsharing. "options" define the protocol, timeout, ... for this link. If the same IP-address appears more than once in the configuration file, ISPA will try all corresponding ISDN numbers until a connection can be established. Attention: If the first entry in the configuration file selects an ethernet bridging protocol, the use of the configuration file as a translation table for outgoing calls is disabled. All outgoing calls will be set up to the first entry. Further entries will be used only for CLI of incoming calls. ISPA can operate only in routing or bridging mode. You can not mix entries with routing and bridging protocols in the configuration file. ISPA supports IP-address based routing (as it is implemented in pcroute) as well as interface based routing of IP packets. For IP-applications not supporting IP-address based routing or in case of simple point-to-point configurations, a single translation entry for outgoing calls may be specified with an IP-address of 0.0.0.0. In this case no further translation entries for outgoing calls are allowed and all IP packets (unicast and broadcast) sent from the application are forwarded to the ISDN peer. For translation entries having a non zero IP-address only unicast IP packets routed via this IP-gateway are forwarded to the corresponding ISDN peer. In this case the IP-address has to match the (or one of the) IP-gateway address(es) in your IP-configuration of your application software. Up to 64 translation entries can be specified in the configuration file. Loadsharing entries to two different ISDN numbers allocate two entries. ISPA global options: -c n selects the ISDN controller (card), n specifies the controller number. default: 0 -i vector specifies the software interrupt for communication with the ISDN-API software. default: 0xf1 -o if ISPA's automatic selection of the video-RAM fails, this option can be used to force screen output to the monochrome video-RAM at B000:0. -e EAZ|index German ISDN (1TR6) allows to specify 1 digit subaddress(EAZ). This option defines the EAZ used by ISPA to listen for incoming calls. The EAZ will be appended to the basic local address on outgoing calls. EAZ's range from 1 to 9. In 1TR6 EAZ 0 means accept all EAZ's. For EuroISDN this option defines an index in the range 0 to 9. If your EuroISDN BRI supports MSN's (multiple subscriber numbers) this option defines an index into a table of local addresses defined during installiation of your ISDN-API 1.1 software. The address defined for this index will be used as the local address on outgoing calls und will match incoming calls. default: 2 -k sleep specifies the setup time in seconds. ISPA will wait "sleep" seconds for a connection to come up. If the connection does not reach the active state during this time, ISPA resets the channel. default: 5 seconds -z days[e] forces an automatic restart of the PC after "days"-days, as soon as the system becomes idle. "days" should be in the range from 1 to 2761. Appending an "e" to the number of days enables automatic restart of the PC if ISPA receives an error from the ISDN API 1.1 software. Specifying "0e" enables only reboot on errors. default: disabled -q suppresses any message output on the screen. -v ISPA tries to allocate buffers for the CAPI in upper memory (UMB). This option disables this feature and ISPA will use conventional memory for the CAPI buffers. -r lop-ip,my-ip[,interval] remote logging on a unix host with a syslogd. Using ISPA with IP-router software this option can be used to log all connection related messages on a unix host with a berkeley syslogd. "log-ip" defines the IP address of the unix host. "my-ip" defines the source IP address of syslog messages sent by ISPA (a packet driver can not automatically retrieve this information from the router). If "interval" is specified and a connection is up, a syslog message will be sent every "interval"-seconds. "interval" should be a multiple of 8, otherwise it is internally rounded up to the next multiple of 8. Syslog-messages are sent with the characteristics "local0.info". -w Display activity, state and charge information in the upper right corner of the screen. /0_\0_A_nnn |||||||| | |||||||| accumulated charge units |||||||State of channel 2 ||||||State of channel 1 |||||incoming data rate on channel 2 in kB/sec, averaged over 8 seconds ||||incoming data rate on channel 1 in kB/sec, averaged over 8 seconds |||incoming data, rotates for every received packet ||outgoing datarate on channel 2 in kBytes/sec, averaged over 8 seconds |outgoing datarate on channel 1 in kBytes/sec, averaged over 8 seconds outgoing data, rotates for every transmitted packet Status: _ = free, D = D-channel up, C = B-channel requested, B = B-channel up, A = connection set up, (additional information for PPP: L = lcp configuration requested, I = lcp up, pap/ipcp configuration requested, P = PPP connection up.) -u Limits ISPA to one active connection at a time. This will reduce ISPA's memory requirement by 20kB. Selecting loadsharing (-m) overrides this option. -j low[,high] defines an ethernet type range for ethernet bridging. Ethernet packets with type values outside the selected range are discarded. This filter applies to all bridging protocols. "low" defines the lower boundary. default: 0 "high" defines the upper boundary. default: 0xffff ISPA supported protocols: (only one protocol can used for one peer) -f dlci[i] Frame-relay protocol. "dlci" specifies the data link connection identifier. Appending an "i" to the dlci switches encapsulation from "early" style to IETF format as described in RFC 1294 (but without fragmentation support, a data size of 1500 is assumed). -p Point-to-Point protocol using default ppp-parameters. Of the possible upper layer protocols, only IP is supported at this time. From the PPP configuration options PPP PAP is supported in both directions. With the -n option a id/password combination can be specified for each remote site. With the -g option a local id/password can be defined for each peer. ISPA accepts the following PPP options from the remote site: - LCP MRU requests with values greater or equal to 1500. - IPCP IP-ADDRESS requests. The received ip-address can be retrieved from an IP application program via RARP. Additional options for use with PPP. These options have to be specified after the protocol selection option. -n id,password Id/password combination for the remote PPP site. The authentication string is send only, if the remote site requests Password authentication during PPP option negotiation. -g id,password Defines a local id/password combination. Incoming PPP connections are accepted only if the remote site sends this id,password combination. -h type other HDLC based protocols type = 0, IP-Data, no header type = 1, IP-Data, X.75 unnumbered information frame (UI) header type = 2, Cisco style HDLC header type = 3, Ethernet bridging type = 4, remote test loop, incoming data is echoed. -l type LAPB (X.75) based protocols (caller=DCE, window=7, mod 8) type = 0, IP-Data, no header, type = 1, multi-X.75 (called LAPB encapsulation an ACC routers or multi-LAPB encapsulation on Cisco routers) type = 2, SLIP type = 3, Ethernet bridging type = 4, remote test loop, incoming data is echoed. type = 5, SLIP (same as 2) type = 6, Ethernet bridging using SLIP encapsulation (SLX) -s baudrate SLIP protocol with V.110 bitrate adjustment. "baudrate" defines the desired transfer rate. baudrate = 9, 9600 baud, async, 8 bit, no parity, 1 stop bit baudrate = 19, 19200 baud, async, 8 bit, no parity, 1 stop bit baudrate = 38, 38400 baud, async, 8 bit, no parity, 1 stop bit Additional options for use with SLIP protocol (X.75 or V.110 based). The option has to be specified after the protocol selection option. -n string1,string2,... A sequence of strings to send for SLIP login. To adapt to the different kinds of login sequences used by SLIP servers, ISPA uses a wait/send sequence for highest flexibility. ISPA sends a string after having not received data from the peer for more than 2 seconds. Each string will be automatically terminated by a RETURN. This way an empty string field will send a single RETURN. Special characters can be included in the string by escaping with \ and specifing the ascii code of the character (e.g. \32 will insert a space). The ascii code may be terminated by a . if required. Additionally \, will insert a comma, otherwise used for separating strings, a \. will insert a literal . after an ascii code and \\ will insert a single \. ISPA shows all characters received and will switch to SLIP mode after sending the last string. The total length of the string sequence is limited to 44 characters. -y baudrate SLX (Ethernet bridging using SLIP encapsulation) protocol with V.110 bitrate adjustment. "baudrate" defines the desired transfer rate. baudrate = 9, 9600 baud, async, 8 bit, no parity, 1 stop bit baudrate = 19, 19200 baud, async, 8 bit, no parity, 1 stop bit baudrate = 38, 38400 baud, async, 8 bit, no parity, 1 stop bit default: -h0 Other translation entry options: The following options can be specified for each ISDN-number entry in the configuration file: -t max-idle[,min-idle] an idle connection will be disconnected after "max-idle"-seconds. Setting "max-idle" to zero disables shutdown of idle connections. Specifing a "min-idle" value lower than "max-idle", an outgoing (charged) connection will be hold at least "min-idle" seconds, it will be closed down shortly before the next charge unit is execeeded or max-idle expires. The time of one charge unit is calculated from the first two units received. max-idle may be used to specify the length of the first charge-unit. default: max-idle: 300 seconds, min-idle: disabled -m high[,low] static or dynamic loadsharing over both s0-channels. "high" = 0, static loadsharing, the caller will always try to activate both channels. "high" <> 0, dynamic loadsharing, if the load is higher than 6000 Bytes/sec for "high"-seconds, the system will activate the second channel. After "down"-seconds of a load lower than 6000 Bytes/sec the second channel will be closed down. If "down" is not specified, the "max-idle" Timeout will be used (see option -t). A -m option has to be specified on both ends of a link. However, only the caller of the first channel will activate the second channel. The values for "high" and "low" should be multiples of 8, otherwise they will be rounded up to next multiple of 8. To set up loadsharing to different target ISDN numbers, a second ISDN number can be specified in a translation entry. -d flags Specifies ISPA's mode of operation and various flags: The "flags" parameter is interpreted as a 16 Bit value with the following meaning: Bit 0-2: Operation mode: mode = 0, outgoing calls are disabled. mode = 1, incoming and outgoing calls are allowed. mode = 2, an outgoing call is dropped after sending the connect request and the system waits for a call back. mode = 3, incoming calls are rejected but trigger an outgoing call to the received ISDN-number. mode = 4, incoming calls are disabled. Bit 3-7: unused Bit 8: Don't reset disconnect timer on received packets. Bit 9: Don't reset disconnect timer on sending broadcast packets. Bit 10: Send broadcast packets over this link. Bit 11: Operate as an IP-address provider for PPP. (If this is a PPP link and the IP-address of this entry isn't zero, tell the peer which IP-address he has to use.) default: 1, incoming and outgoing calls enabled -a service (specific to German ISDN, however the API software should map the values to corresponding EuroISDN codes) additional service indicator and service indicator selection. The high byte of the argument "service" redefines the service indicator the low-byte defines the additional service indicator. Some ISDN equipment (e.g. Elink TA) use the additinal service indicator field to selcted a predefined mode/protocol of operation. However there is no standard for this field. ISPA sets "service" to 0x700 with the following exceptions: service = 0x7c5: -s 9, -y 9 service = 0x7c7: -s 19, -y 19 service = 0x740: -s 38, -y 38 The option allows to override the default value with your own value. (To override the protocol specific default, the value has to be positioned after the protocol option on the line.) To use the ISDN service "X.21 Services" in German national 1TR6 ISDN use a "service" value of "0x30c". -------------- Deinstallation ISPA can be unloaded using ISPACF.EXE or TERMIN.EXE from the Clarkson/Crynwr Packet Driver collection. ----------- Controlling The utility program ISPACF.EXE allows you to: - manually set up a connection - manually terminate all connections - to check the parameter table - to display/set the IP-address for PPP IP-address negotiation - to read out the connection statistics - to reset the connection statistics - to unload ISPA from memory -------------- Other features 1. Dynamic IP address assignment ISPA supports dynamic IP address assignment by a remote system via RARP and the PPP IPCP IP-ADDRESS negotiation: - (Make sure that your peer supports the PPP IPCP IP-ADDRESS option.) - Configure your IP software for use with RARP. - Use ispacf -d [] to manually set up a connection. - (Check the received IP address with ispacf -i .) - Start your IP software. 2. Ascend Routers use the PPP IPCP IP-ADDRESS negotiation for remote system identification. They don't support asking for an IP-address using PPP IPCP IP-ADDRESS negotiation(as described above). For Ascend Routers ISPA has to provide the correct IP-address to the peer. To accomplish this you can set the IP-address to the desired value using ispacf -i 3. ISPA can operate as an IP address provider for PPP connections. This feature can be enabled on a peer basis using a flag of the -d option. ------------------------------- Restrictions in current version 1. Option parsing is far away from being perfect. It is possible to specify conflicting options. Don't specify more than one protocol option per line (translation entry). 2. The current version does NOT support more than one active SLIP or SLX connection at a time. For this reason you can NOT use loadsharing with SLIP or SLX. Also you can NOT have one active SLIP/SLX connection and another connection (using another protocol) at the same time. Unpredictable results will occur. I recommend to use SLIP/SLX only with the -u option. ------------------------ Ethernet characteristics ISPA works as an ethernet type Packet Driver. The ethernet address of ISPA is defined as: 00-00-0xFB-0xAA-00-. (Thanks to RzK, Asbach, Germany for using numbers from their official 00-00-0xFB range.) "pkt-int" is replaced by the software interrupt number in the range 0x60 to 0x80 used for accessing ISPA. With PKTADDR.EXE from the Clarkson/Crynwr Packet Driver collection the ethernet address can be changed to any other desired value. Changing the ethernet address may be required when connecting two ISPA's with direct applications using an ethernet bridging protocol. It is not neccessary when using ISPA with PCBRIDGE. -------- Examples 1. a simple point-to-point configuration to connect a standalone PC to an IP provider. Local IP address 141.61.224.5. The IP Provider has a nameserver with address 141.61.1.32. The connections uses PPP protocol and the PC has to identify itself using the the id "guest" and password "gast". Because the IP address in the ISPA configuration file is specified as 0.0.0.0 ALL packets will be send to the peer 0815712345. This way NO gateway IP address is required in the IP configuration. ispa ? 0x60 ispa.ini: -u # only only one active channel -w # activity display 0.0.0.0 089987654 -p -nguest,gast -t60 # only incoming, timeout 60 sec And the IP configuration of the PC in format of wattcp.cfg my_ip=141.61.224.5 netmask=255.255.255.0 # netmask nameserver=141.61.1.32 # nameserver nameserver=141.61.1.23 # alt nameserver domainslist="biochem.mpg.de" 2. ISPA set up in a multipoint configuration as a dial-in server with no outgoing connections. All connections are logged with the remote logging feature in the syslog file of host 141.61.1.32. The syslog messages will appear as coming from 141.61.224.1. The protocol for incoming calls from unknown numbers is PPP with identification "guest" and passwort "gast". The net 141.61 is connected to the Internet via 141.61.1.1. The ISPA and PCROUTE configuration will allow the PC of example 1. to dial in as an unknown ISDN peer and connect to the Internet. ISPA can handle two active connections, but only one unknown peer at a time. ispa ? 0x60 ispa.ini: -r141.61.1.32,141.61.224.1 # remote logging on 141.61.1.32 -e4 # local EAZ 4 141.61.224.5 * -p -gguest, gast -t30 # no CLI, protocol PPP 141.61.224.2 0815712345 -d0 -t60 # incoming from 0815712345 141.61.224.3 08912345 -h1 -d0 -t60 # incoming from 08912345 141.61.224.4 08923456 -l1 -d0 -t60 # incoming from 08923456 and the corresponding pcroute configuration: Interface 1 (Ethernet): 141.61.1.200 255.255.255.0 Interface 2 (ISDN) : 141.61.224.1 255.255.255.0 Routes: Net: 0.0.0.0 Gateway: 141.61.1.1 3. ISPA in point-to-point configuration with dynamic Loadsharing. The second link will be established after 10 seconds of a load higher than 6000 Bytes/sec and will be closed after 20 seconds of a load lower than 6000 Bytes/sec. ispa ? 0x60 ispa.ini: -e4 -w 0.0.0.0 0815712345 -h2 -m10,20 -t90 4. ISPA in multipoint configuration. For incoming calls from unkown numbers the -h1 protocol will be used. ispa ? 0x60 ip2isdn ip2isdn(ISPA configuration file): -e4 -w # global options 2.0.0.6 * -h1 -t60 # other incoming calls 2.0.0.1 089.89512300 -f100i -t200,30 # ietf frame-relay 2.0.0.2 089.89512301 -h2 -t20,5 -m8,30 # cisco-hdlc, loadsharing 2.0.0.3 0033,815711111 -d0 -t40 # hdlc, only incoming 2.0.0.5 0,4518789123 -p -t60,10 # PPP ------- Support The latest version of ISPA is available on ftp.biochem.mpg.de. 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. -------- Warranty There is absolutely NO WARRANTY, expressed or implied with this software. If you choose to use this software, you assume all risk. ----------------------- Appendix A: Error codes The error codes from ISPA are the same as defined in the ISDN-API 1.1 specification: 2001 incorrect controller 2002 incorrect PLCI 2003 incorrect NCCI 2004 incorrect type 3101 B-channel incorrectly coded 3102 Info-mask incorrectly coded 3103 Serviced EAZ-mask incorrectly coded 3104 Serviced SI mask incorrectly coded 3105 B-channel protocol, level 2 incorrect 3106 DLPD incorrect 3107 B-channel protocol, level 3 incorrect 3108 NCPD incorrect 3109 NCPI incorrect 310A Flags incorrectly coded 3201 Controller error 3202 Conflict between registrations, check SI mask and EAZ 3203 Function not supported 3204 PLCI not active 3205 NCCI not active 3206 B-channel protocol, level 2 not supported 3207 Changeover of B-channel protocol, level 2 in this state not possible 3208 B-channel protocol, level 3 not supported 3209 Changeover of B-channel protocol, level 3 in this state not possible 320A Unsupported parameters in DLPD 320B Unsupported parameters in NCPD 320C Unsupported parameters in NCPI 320D data length not supported 3301 Error on setup of D-channel, level 1 3302 Error on setup of D-channel, level 2 3303 Error on setup of B-channel, level 1 3304 Error on setup of B-channel, level 2 3305 Abort D-channel, level 1 3306 Abort D-channel, level 2 3307 Abort D-channel, level 3 3308 Abort B-channel, level 1 3309 Abort B-channel, level 2 330A Abort B-channel, level 3 330B B-channel connection, level 2 reestablished 330C B-channel connection, level 3 reestablished 34xx Abort by network, low order 8 Bit contain the cause value according 1TR6, the MSB is used to signal an error, but is not set by all ISDN-API 1.1 implementations. Cause-table according to 1TR6 (don't know what you will get with EuroISDN) 00 normale Ausloesung (0 = lokal, 3400 = durch die Gegenstelle) normal termination (0 = local, 3400 = from the network) 83 Dienst ist nicht verfuegbar oder nicht beantragt Service not available 8A kein B-Kanal auf lokaler Anschlussleitung verfuegbar all B-channels are busy on the local line 91 angefordertes Dienstmerkmal wurde abgelehnt, weil eigener oder ferner Anschluss keine Berechtigung besitzt ?? a0 abgehende Rufe wegen eingerichteter Sperre nicht moeglich outgoing calls blocked a2 Verbindung nicht moeglich wegen negativen GBG-Vergleich Closed-user-group refused connection a3 angegebene GBG (geschlossene Benutzergruppe) unbekannt specified closed-user-group unknown a5 Kommunikationsbeziehung als SPV nicht freigegeben SPV not enabled for this number b5 Verbindung nicht aufbaubar wegen falscher Zieladresse, Dienste oder Dienstmerkmale ?? b8 Rufnummer des gerufenen Teilnehmers hat sich geaendert number of called station has changed b9 ferne DEE nicht betriebsbereit remote station not ready ba Ruf wurde von keiner Datenstation beantwortet no station responding bb gerufene Datenstation besetzt called station busy bb Gerufener Teilnehmer hat Sperre gegen ankommende Rufe oder angeforderter Dienst vom gerufenen Teilnehmer nicht beantragt ?? be Ruf wurde von gerufener Datenstation abgewiesen Call was rejected by called station da Verbindung von ferner Datenstation ausgeloest oder abgelehnt Connection was terminated or rejected by called station f0 Im aktuellen Verbindundsstand keine Dienstmerkmalanforderung moeglich ?? f1 Ausloesung wegen Fehler bei der gerufenen Station Disconneted due to an error at the remote station