|
|
|
| United States Patent | 6005846 |
| Link to this page | http://www.wikipatents.com/6005846.html |
| Inventor(s) | Best; Reginald P. (Somerset, NJ); Brennan; Daniel M. (Hillsdale, NJ); Chen; Cheng T. (Holmdel, NJ) |
| Abstract | Apparatus for an improved ISDN terminal adapter (5) and accompanying
methods for use therein. The adapter provides automatic ISDN switch
detection, automatic SPID configuration, baud rate unblocking and
automatic data compression. Specifically, the adapter automatically
detects a type of ISDN switch (480) to which the adapter is connected by
analyzing D-channel initialization messages which are received by the
adapter from the switch as well as specific responses to ISDN messages
sent by the adapter. The switch type value is then used, during SPID
determination, in conjunction with a telephone area code of the user, to
access an internal database (435) of predefined SPID formats, referenced
in terms of particular telephone service areas and switch types, to access
the possible SPID format(s) for the ISDN switch. Firmware (460) executing
within the adapter, in conjunction with software executing within the DTE,
forms one of more SPID(s) appropriate for the switch, queries the switch
with each of these SPIDs to select and verify a correct SPID from those
formed, and, if necessary, further refine and update the switch type
previously determined. |
|
|
|
Title Information  |
|
|
|
|
|
|
| Publication Date |
December 21, 1999 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
| Add a new US reference: |
| | Reference | Relevancy | Comments | Reference | Relevancy | Comments | 5838907 Hansen 709/220 Nov,1998 |      Your vote accepted [0 after 0 votes] | | 5748628 Ericson 370/384 May,1998 |      Your vote accepted [0 after 0 votes] | | 5715241 Glass, III 370/252 Feb,1998 |      Your vote accepted [0 after 0 votes] | | 5708778 Monot 709/228 Jan,1998 |      Your vote accepted [0 after 0 votes] | | 5708663 Wright 370/524 Jan,1998 |      Your vote accepted [0 after 0 votes] | | 5703942 Pinard 379/201.05 Dec,1997 |      Your vote accepted [0 after 0 votes] | | 5598411 Matsukawa 370/352 Jan,1997 |      Your vote accepted [0 after 0 votes] | | 5583917 Jonsson 455/461 Dec,1996 |      Your vote accepted [0 after 0 votes] | | 5519703 Chauffour 370/468 May,1996 |      Your vote accepted [0 after 0 votes] | | 5506845 Kamishima 370/465 Apr,1996 |      Your vote accepted [0 after 0 votes] | | 5341418 Yoshida 379/399.02 Aug,1994 |      Your vote accepted [0 after 0 votes] | | 5319700 Mano 379/93.06 Jun,1994 |      Your vote accepted [0 after 0 votes] | | 5315595 Allouis 370/421 May,1994 |      Your vote accepted [0 after 0 votes] | | 5278822 Yashiki 370/235 Jan,1994 |      Your vote accepted [0 after 0 votes] | | 5150402 Yamada 379/93.06 Sep,1992 |      Your vote accepted [0 after 0 votes] | | | | | |
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
|
|
|
| Market Size |
|
Estimate the gross annual revenues of the relevant market
sector:
|
| | |
| |
|
|
| Market Share |
|
Estimate the percentage of the relevant market sector this invention will capture:
|
| | |
| |
|
|
| Reasonable Royalty |
|
What percentage of gross sales should the inventor or assignee be paid?
|
| | |
| |
|
|
|
Public's "Guesstimation" of Royalty Value
|
| Market Size | N/A | [No votes] | | x | Market Share | N/A | [No votes] | | x | Reasonable Royalty | N/A | [No votes] |
| | N/A | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
Market Review  |
|
|
Technical Review  |
|
|
Claims  |
|
|
We claim:
1. Communications apparatus for connecting to an integrated services digital network (ISDN) switch, the apparatus having data circuit terminating equipment (DCE) and data terminal
equipment (DTE), wherein the DTE is to be connected through the DCE to the switch, the apparatus comprising:
a database containing stored service profile identifier (SPID) formats, wherein, for each of a plurality of telephone area codes, each area code being associated with a corresponding pre-defined geographic calling region, the database specifies a
corresponding SPID format for each one of a plurality of different ISDN switches that services said each area code so as to define a plurality of SPID formats;
a processor;
a memory for storing executable instructions therein; and
communication circuitry, connected to and controlled by the processor, for establishing therethrough an ISDN connection between the ISDN switch and the DCE;
wherein, in response to the stored instructions, the processor:
(a) accesses, from the database and in response to a given area code associated with a first directory telephone number for an ISDN line in the connection, a first corresponding SPID format associated with the given area code as a selected SPID
format;
(b) forms an ISDN SPID, in response to the first directory number, having the selected SPID format;
(c) applies the ISDN SPID, through the connection, to the switch;
(d) determines, based on a response to the ISDN SPID produced by the switch, whether the ISDN SPID is correct or not for the switch; and
(e) if the ISDN SPID is incorrect:
(e1) accesses, from the database and in response to the given area code, a next successive one of the plurality of SPID formats, associated with the given area code, as the selected SPID format; and
(e2) repeats operations (b)-(e) until all of the plurality of SPID formats, in the database and associated with the given area code, have been exhausted or one of a resulting plurality of ISDN SPIDs produced from the plurality of ISDN SPID
formats is ultimately determined to be correct.
2. In communications apparatus for connecting to an integrated services digital network (ISDN) switch, the apparatus comprises data circuit terminating equipment (DCE) and data terminal equipment (DTE), wherein the DTE is to be connected through
the DCE to the switch, the apparatus also having: a database containing stored service profile identifier (SPID) formats, wherein, for each of a plurality of telephone area codes, each area code being associated with a corresponding pre-defined
geographic calling region, the database specifies a corresponding SPID format for each one of a plurality of different ISDN switches that services said each area code so as to define a plurality of SPID formats; a processor; a memory for storing
executable instructions therein; and communication circuitry, connected to and controlled by the processor, for establishing therethrough an ISDN connection between the ISDN switch and the DCE; a method comprising the steps of:
(a) accessing, from the database and in response to a given area code associated with a first directory telephone number for an ISDN line in the connection, a first corresponding SPID format associated with the given area code as a selected SPID
format;
(b) forming an ISDN SPID, in response to the first directory number, having the selected SPID format;
(c) applying the ISDN SPID, through the connection, to the switch;
(d) determining, based on a response to the ISDN SPID produced by the switch, whether the ISDN SPID is correct or not for the switch; and
(e) if the ISDN SPID is incorrect:
(e1) accessing, from the database and in response to the given area code, a next successive one of the plurality of SPID formats, associated with the given area code, as the selected SPID format; and
(e2) repeating steps (b)-(e) until all of the plurality of SPID formats, in the database and associated with the given area code, have been exhausted or one of a resulting plurality of ISDN SPIDs produced from the plurality of ISDN SPID formats
is ultimately determined to be correct.
3. The apparatus in claim 1 wherein, if the ISDN SPID is correct, the processor, in response to the stored instructions, forms, using the SPID format of the correct ISDN SPID, an ISDN SPID for a second directory telephone number associated with
a second ISDN line in the ISDN connection, said ISDN SPID for the second line containing the second directory telephone number.
4. The apparatus in claim 3 wherein the processor, in response to the executable instructions:
determines that the ISDN SPID is valid based on a success message received from the switch, in response to the ISDN SPID applied thereto; or
if no such success message is received from the switch, sends a dummy message to the switch and receives therefrom an acknowledgment message in response to the dummy message sent thereto.
5. The apparatus in claim 4 wherein the dummy message is particular to a specific switch type and the processor, in response to the stored instructions, updates the switch type, as stored in the memory, to reflect said specific switch type if
the acknowledgment message is received from the switch in response to the dummy message sent thereto.
6. The apparatus in claim 3 wherein the processor, in response to the executable instructions, prompts a user to enter the first directory telephone number of the first ISDN line and obtains, in response to a user entry, the first directory
telephone number.
7. The apparatus in claim 1 wherein the processor is comprised of first and second separate processors and the memory is comprised of first and second memories; and wherein the DTE comprises the first processor and the first memory, the first
memory storing executable instructions therein for the first processor; and the DCE comprises the second processor, the communications circuitry and the second memory, the second memory storing executable instructions for the second processor and the
communications circuitry being connected to and controlled by the second processor.
8. The apparatus in claim 7 wherein the first processor, in response to the executable instructions in the first memory:
(f) accesses, in response to the given area code associated with the first directory telephone number, the first corresponding SPID format from the database, as the selected SPID format; and
(g) forms the ISDN SPID, for the first ISDN line, having the selected SPID format; and
wherein the second processor, in response to the stored instructions in the second memory:
(h) applies the ISDN SPID, over the ISDN connection, to the switch; and
(i) determines, based on a response to the ISDN SPID produced by the switch, whether the ISDN SPID for the first ISDN line is correct or not.
9. The apparatus in claim 8 wherein the first processor, in response to the executable instructions, prompts the user to enter the first directory telephone number of the first ISDN line and obtains, in response to a user entry, the first
directory telephone number.
10. The apparatus in claim 8 wherein the second processor, in response to the executable instructions in the second memory:
(j) sends a message to the first processor specifying whether the ISDN SPID for the first ISDN line is correct or not, such that:
if the ISDN SPID for the first ISDN line is not correct, the first processor:
(k) repeats operations (f)-(g) above but for the next successive one of the plurality of SPID formats associated with the area code of the directory telephone number in order to generate the ISDN SPID having the next successive one of the
plurality of SPID formats for the first ISDN line; and, in response thereto, the second processor repeats operations (h)-(i) above for the ISDN SPID for the first ISDN line; or
if the ISDN SPID for the first ISDN line is correct, the first processor:
(l) forms the ISDN SPID for the second ISDN line, having the selected SPID format of the correct ISDN SPID for the first line, but containing the second directory telephone number; and, in response thereto, the second processor repeats
operations (h)-(i) for the ISDN SPID for the second ISDN line.
11. The apparatus in claim 10 wherein the first processor, in response to the executable instructions, prompts the user to enter the second directory telephone number for the second ISDN line and obtains, in response to a user entry, the second
directory telephone number.
12. The apparatus in claim 10 wherein the first processor, in response to the message, repeats operations (f)-(g) above for the next successive one of the plurality of SPID formats associated with the area code of the directory telephone number
so as to yield each successive ISDN SPID; and said second processor repeats operations (h)-(i) above for said each successive ISDN SPID.
13. The apparatus in claim 1 wherein the processor, in response to the executable instructions, accesses the corresponding SPID format from the database in response to the area code associated with the first directory telephone number and a type
of the ISDN switch.
14. The apparatus in claim 13 wherein the processor, in response to the executable instructions, analyzes a message issued by the ISDN switch to the DCE during an initialization phase of an ISDN connection being established between said DCE and
the ISDN switch so as to detect a specific type of the ISDN switch.
15. The apparatus in claim 14 wherein the processor, in response to the executable instructions:
determines whether the issued message is one of a plurality of different predefined kinds of D-channel ISDN messages; and
if said issued message is one of said different kinds, defines the switch type based on the kind of the issued message; and
if said issued message is not one of said different kinds, sets the switch type to a default switch type.
16. The apparatus in claim 15 wherein the processor in response to the executable instructions, further defines the switch type based on whether a predefined field in the issued message matches a predetermined value for the field.
17. The apparatus in claim 16 wherein said different kinds comprise: a D-channel ISDN setup message, a D-channel ISDN management information message (MIM) or a D-channel ISDN information message.
18. The apparatus in claim 17 wherein the predefined field for the MIM is first two octets of the MIM, and a call reference value is the predefined field for a received D-channel setup message.
19. The apparatus in claim 18 wherein the predetermined value for the call reference value is "0x7F" (hex) and for the first two octets are "0x00" and "0xF7", respectively.
20. The apparatus in claim 19 wherein the processor, in response to the executable instructions:
sets the switch type to a first predefined type if the issued message is a D-channel ISDN setup message and the call reference value associated with the setup message has the value "0x7F" (hex);
sets the switch type to a second predefined type if the issued message is a D-channel information message;
sets the switch type to a third predefined type if the issued message is a D-channel ISDN MIM and the first two octets of the MIM are "0x00" and "0xF7" (hex); or
otherwise, sets the switch type to the default switch type.
21. The apparatus in claim 20 wherein the first, second, third and default switch types are "5E custom PPP", "5E NI-1", "5E multipoint", and "NI-1", respectively.
22. The method in claim 2 further comprising the step of, if the ISDN SPID is correct, forming, using the SPID format of the correct ISDN SPID, an ISDN SPID for a second directory telephone number associated with a second ISDN line in the ISDN
connection, said ISDN SPID for the second line containing the second directory telephone number.
23. The method in claim 22 further comprising the steps of:
determining that the ISDN SPID is valid based on a success message received from the switch in response to the ISDN SPID applied thereto; or
if no such success message is received from the switch:
sending a dummy message to the switch; and
receiving from the switch an acknowledgment message in response to the dummy message sent thereto.
24. The method in claim 23 wherein the dummy message is particular to a specific switch type, and the method further comprises the step of updating the switch type, as stored in the memory, to reflect said specific switch type if the
acknowledgment message is received from the switch in response to the dummy message sent thereto.
25. The method in claim 2 further comprising the steps of: prompting a user to enter the first directory telephone number of the first ISDN line; and
obtaining, in response to a user entry, the first directory telephone number.
26. The method in claim 2 further comprising the steps of in a first processor situated in the DTE:
(f) accessing, in response to the given area code associated with the first directory telephone number, the first corresponding SPID format from the database, as the selected SPID format; and
(g) forming the ISDN SPID, for the first ISDN line, having the selected SPID format; and
in a second processor situated in the DCE:
(h) applying the ISDN SPID, over the ISDN connection, to the switch; and
(i) determining, based on a response to the ISDN SPID produced by the switch, whether the ISDN SPID for the first ISDN line is correct or not.
27. The method in claim 26 further comprising the step, in the first processor, of prompting the user to enter the first directory telephone number of the first ISDN line and obtains, in response to a user entry, the first directory telephone
number.
28. The method in claim 26 further comprising the steps, in the second processor, of:
(j) sending a message to the first processor specifying whether the ISDN SPID for the first ISDN line is correct or not, such that:
if the ISDN SPID for the first ISDN line is not correct, the first processor:
(k) repeats steps (f)-(g) above but for the next successive one of the plurality of SPID formats associated with the area code of the directory telephone number in order to generate a next successive ISDN SPID having the next successive one of
the plurality of SPID formats for the first ISDN line; and, in response thereto, the second processor repeats operations (h)-(i) above for the ISDN SPID for the first ISDN line; or
if the ISDN SPID for the first ISDN line is correct, the first processor:
(l) forms the ISDN SPID for the second ISDN line, having the selected SPID format of the correct ISDN SPID for the first line, but containing the second directory telephone number; and, in response thereto, the second processor repeats steps
(h)-(i) for the ISDN SPID for the second ISDN line.
29. The method in claim 28 further comprising the steps, in the first processor, of:
prompting the user to enter the second directory telephone number for the second ISDN line; and
obtaining, in response to a user entry, the second directory telephone number.
30. The method in claim 28 further comprising the step, in the first processor, of repeating steps (f)-(g) above for the next successive one of the plurality of SPID formats associated with the area code of the directory telephone number so as
to yield each successive ISDN SPID; and the step, in said second processor, of repeating steps (h)-(i) above for said each successive ISDN SPID.
31. The method in claim 2 further comprising the step of accessing the corresponding SPID format from the database in response to the area code associated with the first directory telephone number and a type of the ISDN switch.
32. The method in claim 31 further comprising the step of analyzing a message issued by the ISDN switch to the DCE during an initialization phase of an ISDN connection being established between said DCE and the ISDN switch so as to detect a
specific type of the ISDN switch.
33. The method in claim 32 further comprising the steps of:
determining whether the issued message is one of a plurality of different predefined kinds of D-channel ISDN messages; and
if said issued message is one of said different kinds, defining the switch type based on the kind of the issued message; and
if said issued message is not one of said different kinds, setting the switch type to a default switch type.
34. The method in claim 33 comprising the step of further defining the switch type based on whether a predefined field in the issued message matches a predetermined value for the field.
35. The method in claim 34 wherein said different kinds comprise: a D-channel ISDN setup message, a D-channel ISDN management information message (MIM) or a D-channel ISDN information message.
36. The method in claim 35 wherein the predefined field for the MIM is first two octets of the MIM, and a call reference value is the predefined field for a received D-channel setup message.
37. The method in claim 36 wherein the predetermined value for the call reference value is "0x7F" (hex) and for the first two octets are "0x00" and "0xF7", respectively.
38. The method in claim 37 further comprising the steps of:
setting the switch type to a first predefined type if the issued message is a D-channel ISDN setup message and the call reference value associated with the setup message has the value "0x7F" (hex);
setting the switch type to a second predefined type if the issued message is a D-channel information message;
setting the switch type to a third predefined type if the issued message is a D-channel ISDN MIM and the first two octets of the MIM are "0x00" and "0xF7" (hex); or
otherwise, setting the switch type to the default switch type.
39. The method in claim 37 wherein the first, second, third and default switch types are "5E custom PPP", "5E NI-1", "5E multipoint", and "NI-1", respectively. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
BACKGROUND OF THE
DISCLOSURE
1. Field of the Invention
The invention relates to apparatus for an improved ISDN terminal adapter, commonly and loosely referred to as an "ISDN modem", and accompanying methods for use therein. Specifically, to simplify and facilitate installation and provide economical
use, the inventive terminal adapter provides automatic ISDN switch detection, automatic SPID (service profile identification) configuration, baud rate unblocking and automatic data compression.
2. Description of the Prior Art
In recent years, a number of domestic and foreign telephone companies have begun offering integrated service digital network (ISDN) services to their customers. ISDN provides an integrated voice and data network that offers both increased
bandwidth and significant flexibility over traditional analog telephone services. Inasmuch as subscriber charges for ISDN access are decreasing--with the decrease being rather noticeable for some telephone companies, demand for ISDN service and
equipment is rising appreciably. Demand is particularly strong and growing for those subscribers who seek cost-effective high speed access to the Internet.
In particular, a basic rate (so-called "2B+D" service) ISDN interface provides higher speed bandwidth than both traditional analog, modem-based dial-up access modalities and comparably priced switched digital services. Each so-called B
("bearer") channel, which carries subscriber voice and/or data, provides 64 Kbits/second of bandwidth; while a D ("data") channel, which carries signaling and control information, provides 16 Kbits/second of bandwidth. For the bandwidth delivered, an
ISDN line is significantly less expensive than a private leased line that supplies the same bandwidth across the three channels. Furthermore, ISDN, being a digital end-to-end service, provides digital transmission channels that tend to be more accurate
and reliable, from the standpoint of error rates and dropped connections, than are conventional analog connections. In addition, ISDN service provides rapid connect times which, in turn, provide faster support for those LAN (local area network)
protocols that require relatively short latency across WAN (wide area network) connections.
Starting a few years ago, various networking and communications equipment manufacturers have been offering relatively inexpensive ISDN terminal adapters, more commonly and rather loosely referred to as "ISDN modems" (though these adapters do not
contain a traditional analog modulator-demodulator as occurs in a conventional analog modem), for subscriber end-use. Such a terminal adapter, also generically referred to as "data circuit terminating equipment" (DCE), once connected to an ISDN
connection and a serial port on a subscriber's personal computer (PC), permits that subscriber to connect his(her) computer to, e.g., an Internet service provider and communicate at speeds approximately two to four times greater than a conventional
analog modem. The computer so connected becomes so-called "data terminal equipment" (DTE). While the availability of these terminal adapters is clearly not the sole cause underlying the growth in ISDN usage, it, when combined with decreasing rates for
ISDN service, is certainly a large and growing factor.
Ideally, an ISDN terminal adapter should be as easy for a subscriber to install and use as is a conventional analog modem. However, in practice and for various reasons, installing a conventional ISDN terminal adapter is rather tedious,
frustrating and time consuming.
First, user difficulties arise due to differences in so-called "SPID" formats across different ISDN switches. While, for the most part, ISDN service is quite uniform across the entire United States, slight differences do exist as to how this
service is implemented among various telephone companies. In particular, a small number of ISDN switch manufacturers currently exist which supply such switches to telephone companies in the United States. These manufacturers currently include Northern
Telecom, Ltd., Siemens Corporation and Lucent Technologies, Inc. Northern Telecom and Siemens currently offer one ISDN switch each (carrying product designations "DMS 100" and "EWSD", respectively)--each being a so-called "NI-1" type (referring to
"National ISDN 1") switch and will be so referred to hereinafter. The Northern DMS 100 switch is available in two versions, i.e., an NI-1 version and a custom version--those versions differing only in their software. Lucent Technologies currently
offers three different ISDN switches (a "5E Custom Multi-point", "5E NI-1" and "5E Custom Point-to-point"), though all implemented on a common 5ESS hardware platform (these switches differing in their generics, i.e., software). At present, there are
implementational differences in the United States among ISDN switches currently in service; though no such differences exist in Europe. Consequently, while these switches are generally compatible with each other, idiosyncratic differences do exist among
the various switches that complicate installation and use of an ISDN terminal adapter. Specifically, while each switch requires each specific DCE that is to be connected to the switch to be electronically identified by a corresponding SPID (service
profile identifier) assigned to it by a local telephone company, the format of the SPID varies from one switch type to another. A SPID established for use with one type of ISDN switch will not likely function with another type of ISDN switch; thus,
completely preventing any ISDN calls from being established through the latter switch. Moreover, when an ISDN line is ordered from the local telephone company, a SPID is established for that line and, then, generally, entered manually, as data, into a
database on the ISDN switch at the company to provision the service.
Establishing and entering a SPID into a telephone company database is a rather laborious process, and one, for telephone company personnel, that has proven to be a recurring source of errors. Oftentimes, these errors are not detected during data
entry. While installing and, specifically, configuring a conventional ISDN terminal adapter for use with an ISDN line, an ISDN subscriber must manually enter a SPID provided by his(her) telephone company for that line into the terminal adapter. During
call setup, the adapter transmits its SPID to the switch in order to identify itself to the switch. A significant probability exists that this SPID will be incorrect. Hence, it is the subscriber, during installing his(her) ISDN terminal adapter, who
often experiences first-hand the effect of an incorrect SPID. Since the vast majority of subscribers have no knowledge of ISDN control messages, let alone the particular type of ISDN switch to which (s)he is connected and its corresponding SPID format,
many subscribers quickly discover that their ISDN terminal adapters will not function, for reasons that are not immediately apparent to or resolvable by them, and hence can become very frustrated and rather irritated. Such subscribers can and often do
expend considerable time and effort in telephone conversations with customer service representatives of the local telephone company and/or their terminal adapter manufacturers in an effort to locate and cure the problem--a SPID error. As a result,
conventional ISDN terminal adapters have acquired a reputation, at least in the United States and Canada, as being quite time-consuming to install and properly configure. To complicate matters, the same difficulties arise if the subscriber merely moves
the ISDN terminal adapter to a different location, i.e., one served by a switch that requires a different SPID format.
Second, while conventional ISDN terminal adapters provide a so-called "autobaud" capability, baud rate "blocking" can occur which causes user difficulties. Many ISDN terminal adapters are externally connected to a personal computer through a
serial port provided by the computer. Circuitry used to implement this port, specifically the UART (universal asynchronous receiver transmitter) used therein, supports a wide range of serial data speeds up to approximately 230 Kbaud/second. The speed
at which a serial port will communicate is typically defined by a user who selects one of a number of speed settings provided by a serial port driver within an operating system, such as the "Windows 95" or "Windows NT" operating system which is currently
available from Microsoft Corporation of Redmond, Wash. (which also owns the trademarks "Windows 95" and "Windows NT"). For proper serial communication, both the serial port on the personal computer and the terminal adapter itself must be configured to
communicate at the same speed. Generally, the serial port of the terminal adapter is set to a factory default value which permits a so-called "autobaud" operation to occur on power-up of the adapter. During autobaud operation, the terminal adapter will
sample the incoming serial data stream at least six times faster than its data rate to determine the baud rate of the stream. Once the rate is determined, the terminal adapter will set its serial data rate to match that of the stream. Owing to design
choices, an ISDN terminal adapter generally does not have a processor that is sufficiently powerful to sample, let alone accurately, an incoming bit stream at six times 230 Kbaud/sec (approximately 1.38 Mbaud/sec). Consequently, conventional ISDN
terminal adapters only provide autobaud capability to approximately 115 Kbaud/second. Therefore, in order for a subscriber to use the 230 Kbaud/sec speed, that subscriber must first establish communication between the personal computer and the adapter
at a lower speed, i.e., 115 Kbaud/sec or below, and then manually issue a well-known "AT" command from the computer to the adapter to manually set and lock the speed of the adapter at 230 Kbaud/second. The terminal adapter retains this setting within
its non-volatile memory to appropriately set its speed during subsequent power-on initialization. Thereafter, the subscriber changes the speed setting in his(her) serial port communication driver to 230 Kbaud/second, hence matching that of the adapter.
Ser. communication can then occur between the personal computer and the terminal adapter at a maximum rate of 230 Kbaud/second. Unfortunately, a serious problem occurs if the subscriber decides to move the terminal adapter to a different computer.
Since the adapter is locked to communicate at only 230 Kbaud/second and will not "autobaud", then, if the serial port driver on that computer is set to any speed other then 230 Kbaud/second or simply cannot support a speed of 230 Kbaud/sec--regardless of
its setting, the terminal adapter and the computer will simply not communicate with each other; i.e., communication is "blocked" by the baud rate difference. A user of a conventional terminal adapter generally has no idea that baud rate "blocking" is
occurring and hence becomes quite frustrated. Generally speaking, baud rate "blocking" can occur at any other baud rate, i.e., less than 230 Kbaud/sec, whenever the baud rate of the terminal adapter is set and locked to one speed while the serial port
of the PC to which the adapter is connected is set to a different baud rate.
Therefore, a need exists in the art for an ISDN terminal adapter that significantly simplifies and expedites its installation and configuration. Preferably, such a adapter should automatically detect the type of ISDN switch to which the adapter
is connected and adjust its operation to assure compatibility with that switch. In addition, such an adapter should detect when a condition of baud rate blocking likely occurs, regardless of the baud rate to which the terminal adapter is set, and
automatically change its operation to terminate the condition. Advantageously, such an adapter will not only substantially eliminate a burden heretofore shouldered by an ISDN subscriber but also, by doing so, might increase the overall demand for ISDN
service.
SUMMARY OF THE INVENTION
The present invention overcomes the deficiencies in the art and satisfies this need by providing an ISDN terminal adapter which provides automatic ISDN switch detection, automatic SPID (service profile identification) configuration, baud rate
unblocking and automatic data compression.
In accordance with our invention and as to automatic switch detection and SPID configuration, our inventive terminal adapter automatically detects the switch type by analyzing D-channel ISDN initialization messages received from the switch as
well as, where appropriate, responses, in terms of D-channel ISDN messages, received from the switch to specific ISDN messages sent by the adapter, and sets the switch type accordingly. The switch type value is then used, during SPID determination, in
conjunction with the directory telephone number of the user, to access an internal database, specifically a table, of predefined SPID formats, referenced in terms of particular telephone service areas and switch types, to access the possible SPID
format(s) for the ISDN switch to which the adapter is likely connected.
Our inventive terminal adapter forms a SPID through interaction among the user; the DTE, such as a personal computer (PC); the terminal adapter and the ISDN switch. In essence, firmware executing within the terminal adapter, in conjunction with
software executing within the PC, forms one of more SPID(s) appropriate for the ISDN switch to which the adapter is connected, queries the switch with each of these SPIDs to select and verify a correct SPID from those formed, and, if necessary, further
refines and updates the switch type previously determined.
Furthermore, with respect to baud rate unblocking, our inventive terminal adapter detects instances of baud rate mismatch, through excessive communication errors for a known, e.g., user, input, and forces the adapter to relinquish its fixed speed
setting and automatically return to autobaud operation. As a result, the adapter is then able to match its serial communication speed with that of the DTE, e.g., the PC connected thereto, and hence establish accurate asynchronous serial communication
therewith.
As a feature, our invention also automatically provides B-channel data compression in the event the DTE, e.g., the PC, is unwilling or unable to do so, thereby advantageously and transparently providing a user with the benefits of faster
communication speeds and lower telecommunications charges potentially available therethrough. Specifically, our inventive terminal adapter monitors negotiation, over an ISDN line, of the compression control protocol (CCP) between the DTE and its local
peer. If the negotiations reveal that the near-end DTE, e.g., the PC, will not undertake compression, then the terminal adapter will then automatically negotiate the protocol and thereafter, for the duration of a call, perform compression and
decompression in lieu of the DTE. Such intervention by the terminal adapter is substantially, if not totally, transparent to both the user and the DTE. If a similar terminal adapter is situated on the far-end of the ISDN connection, then advantageously
the far-end adapter can likewise negotiate the protocol, with its local peer and automatically perform B-channel data compression and decompression in lieu of the far-end DTE.
BRIEF DESCRIPTION OF THE DRAWINGS
The teachings of the present invention can be readily understood by considering the following detailed description in conjunction with the accompanying drawings, in which:
FIG. 1 depicts a block diagram of ISDN terminal adapter 5 which incorporates the present invention;
FIG. 2 diagrammatically depicts various high-level software processes and hardware resources in terminal adapter 5 shown in FIG. 1;
FIG. 3 graphically depicts interaction between various high-level software processes and hardware resources that are employed in terminal adapter 5 for illustratively connecting and handling both ISDN and analog calls;
FIG. 4A depicts service profile identifier (SPID) formats;
FIG. 4B depicts a typical interconnection of the inventive terminal adapter with data terminal equipment (DTE), illustratively a personal computer, and an ISDN switch;
FIG. 4C diagrammatically depicts the interaction which occurs between terminal adapter 5 and ISDN switch 480, as shown in FIG. 4B, for switch identification; and that which occurs among personal computer 430, terminal adapter 5 and ISDN switch
480, as shown in FIG. 4B, to form a proper SPID therefor;
FIG. 5 depicts a flowchart of S50 Test process 500 which is performed within Q.931 process 233 shown in FIG. 2;
FIG. 6 depicts a flowchart of Switch Detect routine 600 which is executed within process 500 shown in FIG. 5;
FIG. 7 depicts the correct alignment of the drawing sheets for FIGS. 7A and 7B;
FIGS. 7A and 7B collectively depict a flowchart of Automatic Switch Detection routine 700 that is executed as part of Switch Detect routine 600;
FIG. 8 depicts the correct alignment of the drawing sheets for FIGS. 8A, 8B and 8C;
FIGS. 8A-8C collectively depict a flowchart of SPID Wizard routine 800, one portion of which executes within terminal adapter 5 and another portion of which executes within the DTE connected to the adapter;
FIG. 9 depicts a flowchart of Baud Rate Unblocking process 900 that executes within terminal adapter 5;
FIG. 10 depicts a flowchart of UART Event Interrupt Service routine 1000 that executes in conjunction with Baud Rate Unblocking routine 900;
FIG. 11 depicts an illustrative connection through inventive terminal adapter 5 between its corresponding DTE (PC 430) and its PPP peer (router 380), which components thereamong negotiate a compression control protocol (CCP) so as to perform data
compression;
FIG. 12 depicts the correct alignment of the drawing sheets for FIGS. 12A and 12B;
FIGS. 12A and 12B collectively depict a flowchart of Compression Control Process 1200 that executes within terminal adapter 5 shown in, e.g., FIGS. 1 and 11; and
FIG. 13 depicts a flowchart of CCP Negotiation process 1300 that is executed by Compression Control process 1200 shown in FIGS. 12A and 12B.
To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to various figures.
DETAILED DESCRIPTION
After considering the following description, those skilled in the art will clearly realize that the teachings of our present invention can be readily utilized in substantially any ISDN data circuit terminating equipment (DCE) which interfaces an
ISDN line to data terminal equipment (DTE). The ISDN line can be, e.g., a basic rate (2B+D) interface or a primary rate (23B+D or 30B+D) interface. Inasmuch as the present invention is particularly, though certainly not exclusively, suited for use in
an ISDN terminal adapter, as DCE, that connects a personal computer (PC), as DTE, to an basic ISDN line, then, to simplify the following discussion, we will discuss our invention in that context. Clearly, af | | |