CA1243386A - Processing sequence calls in a distributed control switching system - Google Patents

Processing sequence calls in a distributed control switching system

Info

Publication number
CA1243386A
CA1243386A CA000501114A CA501114A CA1243386A CA 1243386 A CA1243386 A CA 1243386A CA 000501114 A CA000501114 A CA 000501114A CA 501114 A CA501114 A CA 501114A CA 1243386 A CA1243386 A CA 1243386A
Authority
CA
Canada
Prior art keywords
switching module
switching
call
module
port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
CA000501114A
Other languages
French (fr)
Inventor
Mahmood Ahmad
Gerald H. Thomas
Wayne L. Schreiner
Albert J. Sawyer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by American Telephone and Telegraph Co Inc filed Critical American Telephone and Telegraph Co Inc
Application granted granted Critical
Publication of CA1243386A publication Critical patent/CA1243386A/en
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0407Selecting arrangements for multiplex systems for time-division multiplexing using a stored programme control

Abstract

PROCESSING SEQUENCE CALLS IN A
DISTRIBUTED CONTROL SWITCHING SYSTEM

Abstract:
A distributed control switching system where the system control units cooperatively perform the terminating port determination function. The control unit associated with the terminating port stores sequence call data defining whether calls are to be completed to that terminating port or are to be forwarded to another directory number. Upon determining that a given call is a sequence call, the control unit associated with the original terminating port determines the terminating port defined by the second directory number and effects a reduction of the sequence call to a simple call between the originating port and the second terminating port. This is done either by transmitting a control message defining the originating and terminating ports to the control unit associated with the second terminating port or by returning the setup sequence to the control unit associated with the originating port which then frees any switching system resources previously allocated to the call and transmits the control message. In either case, the control unit associated with the second terminating port completes the call without knowing whether the call is a sequence call or a simple call completed to the original terminating port.

Description

33~

, PROCESSING SEQ~E~CE CALLS IN A
DISTRIBUTED CONTROL SWITCHING SYSTEM

Technieal Field This invention relates to distributed control switehing systems and, more partieularly, to the processin~
of sequence calls, e.g., forwarded calls or series-eompletion ealls, in sueh systems.
~aekground of the Invention Stored program controlled switching systems have traditionally included a central eomputer that eontrolled switching functions in response to a program stored in memory. ~lthough reeent switching systems have distributed the call processing funetion amonq a number of system eontrol units, many of the time-eonsuming tasks involved in eall setup are still typieally perEormed by a eentral eontrol. For example, in one known digital switehing system, the switehing Eunetion is distributed among a plurality of switching modules. Each switching module has a plurality of ports and provides connections among the lines and trunks connected to the ports of that module.
Calls involving lines or trunks eonneeted to diEferent modules are eomoleted throu~h a time-multiplexed switch that intereonnects the modules. Each switching module ineludes a eontrol unit that eontrols the switching function oE that module. The system also ineludes a central eontrol that eontrols the switehing funetion oE the time-nultiplexed switeh. Call handling in sueh systems requires the exeeution oE a number oE functions in adc]ition to establishing eonneetions. Although many of the real-time intensive tasks associated with calls, e.g., signal proeessing, are performed by the switehing module eontrol units, others, notably the cletermination oE the identity of the terminatinq port of the switehing system Eor eaeh eall, are perEormed hy the systern eentral eontrol. The terminating port determination funetion includes such steps as eall sereening, determininq whether a line or a trunk is ~\
1~ ,.
- 2 ~ 33~

required, translating dialed numbers into physic~l system addresses and hunting for idle members of trunk groups o~
multi-line hunt groups. These are time-consuming tasks which involve extensive database searching and data manipulation.
orle of the important advantages of a rnodular system of this type is that its capacity can be closely matched to the requirements of specific apPlications.
~lowever, as the system becomes larger and the number oE
switching modules increases, the performance by the system central control of the per-call tasks associated with the terminating port determination function, imposes an upper limit on the overall system call processing capacity.
In the known system, the features and advantages associated with stored program controlled switching are provided to small communities by locating remote switching modules up to 100 miles from a host system and connecting the remote switching modules to the switching modules of the host system via bidirectional transmission facilities.
Remote switching service is provided to communities requiring more lines than can be accommomdated by a single remote switching module, by providing a number of remote switching rnodules in a grouping referred to as a cluster.
The modules of the cluster are directly interconnected via bidirectional transmission facilities such that intracluster voice and data traffic can be directly conveyed between modules rather than being routed through the host system network. Control information can also be conveyed among the modules via the direct interconnections therebetween to allow the integrated, stancl-alone operation of the entire cluster.
In the normal mode of operation of the known system, the terminating ,~ort determination function is performed by the system central control for all calls including calls that both originate and terminate on the cluster o~ r~mo~ swi~ahlnq mo~ules. ~cwevc~, the performance of such function by the system central control
- 3 not only undesirably increases its processing load but, in addition, requires that the remote swltching moclules process calls in a different manner when in the stand-alone mode of operation.
One particularly siqnificant difficulty that is presented when the terminatin~ port determination function is performed by the cluster of relnote switching ~odules without the aid of the system central control, involves the handlinq oE sequence calls, e.g., Eorwarded calls or series completion calls. Because the control commullication among the remote switching modules in stand-alone operation is relatively slow, it is important to keep the number oE inter-module control mess3ges to a minimum in order that the time delay between the completion of dialing by the calling party and the subsequent setup of the call does not become e~cessive. Because sequence calls can become relatively complex, e.g., calls which are forwarded many times or calls that are forwarded either out of or into the cluster of remote swltching modules, the processing and inter-module control communication required for such calls can become excessively involved and time-consuming. In view of the foregoing, a recognized problem in the art is the difficulty in efficiently setting up sequence calls in a distributed control switching systein.
Summary of the Invention The aforementioned problem is solved and a technical a~vance is achieved in accordance with the principles of the invention in a distributed control switchiny system where sequence calls are always reducecl to simple calls such that the switching module connec~ed to the final terminatlng port can effect the completion of the ca]l without knowiny whether the call is a sequence call or a simple call beiny completed to the original terminatinq port.
~n exemplary method in accor-3ance with the inv~ntion ls u~e~ ln a i~w~t~hinc3 sy,~m lnalll~1ncJ ~ n~l~b4K
of swtiching modules each associated with a number of ports, and an inter-module connection arrangement that provides communica~ion channels among the switching modules Eor inter~module communication. A first switching module determines, based on a directory num'oer reeeived for a given call from an originating port associated wit~ the first switehing module, a first terminating port assoclated with a second switching module. The first switching module transmits a first rnessage to the seeond switehing module defining the given call and the first terminating port.
The second switching module responds by reading sequence call data for the first terminating port. When the sequenee eall data defines that calls are to be routed to a seeond direetory number, the seeond switching module determinesl based on that second directory number, a seconc~
terminating port assoeiated with a third switehing module.
~t this point the eall has been reduced to a simple eall between the originating port and the seeond terminatinq port. The seeond switehing module transmits a seeoncl message to the third switching module defining the given eall and the seeond terminating port. The third switching module responds by reading the sequenee eall data Eor the seeond terminating port. ~hen the sequenee eall data defines that ealls are to be eompleted to the second directory number, the third switehing module effeets an alloeation of a given one of the eommunieation ehannels between the first switehing module and the third switclling module~ to the given call. The third switching module eonneets the second terminating port to the given eommunieation channel and transmits a third message to the first switehing module defining the given eall ancl the given eommunieation ehannel. The Eirst switehin~ module then eonnects the originatinq ~ort to the given eommunieation ehannel.
If the seeond terminating ~ort is instead assoeiated with the first switehing module, the seeond mes~e 1~ ~r~nsmi~ d h~ck to the ~ swi~chin~ module.
The Eirst switehing module responds by reading the sequence ~ 3~

call data for the second terminating port. I~hen the secluence call data for the second terminating port de Eines that calls are to be cornpleted to the second directory number, the f irst switching module connects the originating 5 port and the second terminating port.
An exemplary switching system illustrating the present invention includes a number of ports, a number o E
switching modules each associated with a corresponding subset of the ports, and an inter-module connection 10 arrangement that provides communication channels amony the switching modules for inter-module communication. Facr switching module includes a processor and an associated memory storing seg,uence call data for each port of the associated subset of ports . The processor of a f irs t 15 switching module responds to a directory number received for a given call Erom an originating port assoicated with the f irst switching module, by determining a f irst terminating port associated with a second switching module.
The first switching module transmits a first message to the 20 second switchinq module defining the given call and the E irst term inating port O The processor of the second switching module responds to the Eirst message by readillg the sequence call data stored in the memory of the second module for the f irst terminating port. When the secluence 25 call data for the first terminating port defines that calls are to be routed to a second directory number, the processor of the seconcl switching module cletermines, basecl on th at se co nd d i re c tory n umbe r, a se co n l t e rm i n a t i ng por t associated with a third switchincJ module. The second 30 switching module transmits a second messac,le to the third switching module defining the given call and the second terminatiny port. The processor of the third switching module responds to the seeond message by read ing the se~uence call data stored in the memoey o~ the third module 35 Eor the seeond terminating port. The processor of the thi~d switching mod~tle e~ects an alloc~tion oE a q iven one of the communieation channels between the Eirst switchin3 module and the third switching module to the given call, when the sequence call data for the second terminatinq port defines that calls are to be completed to the second directory number.
Brief Descri~tion of the Drawing A more complete understandiny of the present invention tnay be obtained from a consideration of the following description when read in conjunction with the drawing in which:
F'IG. 1 is a generalized diagrarn of a distri.buted control switching system used to illustrate certain important principles of the present invention;
FIG. 2 is a diagram of a time division switching system that is referred to herein as System I and that is substantially the same as the system disclosed in ~. S.
Patent No. 4,322,8~3.
FIG. 3 is a more detailed dia~ram of a time-slot interchange unit and an associa-ted control unit utilized in System I;
FIG. 4 is a diagram of an interface unit included within each time-slot interchange unit which is utilized for communication with a time~multiplexed switch of System I;
FIG. 5 is a diagram of an interface unit of a time-multiplexed switch which is utilized for communication with a time-slot inte-rchange unit of System I;
FIG. 6 is a diagram of a data word format utilized in System I;
FIG. 7 is a functi.onal diagram used to illustrate an examplary call setup sequence in Systern I;
FIG. 8 is a state diagram for a routing proyrarn used in System I;
FIG. ~ through 13, when arran~ed in accordance with FIG. 57, present a flow chart for the routing proqrarn used in System I;
FIG. 1~ thrr.~ h 18 ,~eEinra a numb~r o~ me~gr~, data structures and data~ase relations usecl in System I;

~2~3~

FIG~ 19 through 21, when arranged in accordance with Fig. 22, present a diagram of a switching system referred to herein AS System II, which builds on Systel~ I
by integrating four individual, remote switching modules into the system;
FIG. 23 is a functional diagram illustrating a first exemplary call setup sequence used in System II;
F~IG. 24 is a state diagram for a routing prograrn used in System II;
E`IG. 25 throuclh 29, when arranged in accordance with FIG. 58, present a flow chart for the routing prograrn used in System II;
FIG. 30 and 3l illustrate second and third exemplary call setup sequences used in System II;
FIG. 32 defines certain messages, data structures and database relations used in System II;
E`IG. 33 through 35, when arranged in accordance with FIG. 36, present a diagram of a switching system, referred to herein as System III, which also has four, remote switching modules in the system as does System II, but rather than bein~ individual modules, the four renote modules in System III being interconnected in a grouping referred to herein as a cluster;
FIG. 37 through 39 illustrates exemplary call setup seauences involved in processing sequence calls in System III;
FIG. ~0 illustrates an exemplary call setup sequence in an alternative embodiment of System III;
FIG. 41 is a diagram of a switching system, referred to herein as System IV, that uses substantially the same harclware architecture as System I, but where the terminating port determination Eunction is done ~or all calls by the cooperative processing of only the switching modules;
FIG~ 42 is a diagram of certain modifications made to the flow chart of FIG. 25-29, to define the operation of the rou-ting program used in System IV;

3t3~

FIG. 43 through 47 are functional diagrams ol~
exemplary call setup sequences used in System IV;
FIG. 48 is a dia~ram of a switching system, referred to herein as System V, where the system central 5 control is completely relieved of the call processing function;
FIG. 49 is a diagram of an alternative control distribution unit used in System V;
FIG. 50, FIG. 51, and FIG. 52 throuc~h 54 arranged 10 in accordance with FIG. 55, present Elow enarts o~ programs used to effeet path hunting in System V; and FIG. 56 is a functional diaqram of an exemplary eall setup sequenee used in System V.
General Deseription FIG. 1 is a generalized diagra,n of a distributed control switching system used to illustrate eertain important principles of the present invention. The system ineludes a plurality of switching modules each associated with a eorresponding plurality oE ports, only modules 910, 20 920 and 930 being shown in ~IG. 1. The ports are connectible to analog or digital lines and trunks oE any of a number of well-known types. Each switching module, e.g., 910, provides communication channels among its associated ports e.g., 911 and 912 and between its associated E)orts 25 and an inter-module connection arrangement 940. Connection arranclement 940 provides communication channels between the switching modules Eor inter-module communication. Inter-module connection arrangement 9'10 may be implernented in a number of ways, for example using a time-multiplexec1 30 switch or using a number of bidirectional transmission facilities each directly interconnectin~ one pair of switchinq modules. Switehing modules 910, 920 and 930 are controlled l~y distributed contro:L units 917, 927 and 937 respectively included therein. The control units 917, 927 35 and 937 communieate via a control inEormation eommunication a~tan~ement ~not nhown in FI(;. 1) o~ any o~ a number ol 33~3~
g types, several of which are described in detail later herein. Each control uni~ includes a processor and an associated memory, for example control unit 917 includes processor 918 and memory 919. Processor 918 executes programs stored in memoy 919 to perfor~ its control functions. ~emory 919 also stores relevant data pertaining to the ports served by switching module 910. Such clata includes busy/idle status inEormation as well as sequence call tata defining whether calls to a given port should be completed to that port or be treatel as sequence calls to be completed to another terminating port. Memory 919 also stores directory number translation in-Eormation defining the mapping between ports and directory numbers. In the embodiment being described, the memory in each control unit stores the directory number translation information for all the ports connected to the three switching modules 910, 920 and 930. In they systems descrihed in the detailed description hereafter, the busy/idle status inEormation and the sequence call data are stored in a database relation referred to as the PORTSTATUS relation and the directory number translation information is stored in the DNTRAN
relation.
Two examples of sequence calls are forwarded calls, iOe., calls which are to be completed to a customer-provided number regardless o~ whether the first number isbusy or idle, and series completion calls which are to be completed to another number only when the Eirst number is busy.
Consider the ollowing example illustrating a method of processing sequence calls in accordance with the present invention~ Assume that a directory number is received by control unit 937 in switcning ,nodule 930, Erom one of ~ts associated ports, e.g., port 931. Processor 93 accesses the directory number translation ir1formation stored in memory 939 and determines that the received ~tL~ ory nuTn~er ~ 1n~ or~ ocL~ W~ wL~htn~
module 9~0. Control unit 937 transmits a first control ~33~3~

message, referred to herein as a generallzed route re~uest or RTGEN message, to control unit 927 defining the call and terminating port 921. Processor 928 resoonds by rear~ing the seauence call data for port 921 stored in memory 929~
Assume that such seauence call data defines that calls to port 921 are to be forwarded to a second directorY number.
Processor 928 then accesses the directory number translation information stored in memory 929 and determines that the second directory number defines port 911 associated with switching module 910. At this point the call has been reduced to a .simple call between originating port 931 and terminating port 911. Control unit 927 transmits a second ~.TGE~ message to control unit 917 defining the call and terminating port 911. This second RTGEN message is the same as the message that would be transmitted by control unit 937 for a simple call to port 911. Processor 918 responds therefore to the second RTGEN
-message in the same manner it would respond to a similar message for a simple call, by reading the sequence call data for port 911 stored in memory 919. Only when processor 918 determines that the call is to in fact be completed to port 911 does control unit 917 eEfect the allocation o~ a given communication channel of intermodule connection arrangement 940 to the call. Control unit 917 ~5 then controls the connection by switching module 910 oE
port 911 to the given channel of connection arrangement 940 and transmits a third control message, referre~ to herein as a setup completion (SET~PCOMP) mesage, to control unit 937 in the oriqinatinq switching module 930. In response, control unit 937 controls the connection by switching mo~ule 930 o~ port 931 to the given channel o:E connection arrangement 940.
Since sequence calls are always reduced to simple calls, the processing of calls that are forwarded mally times does not become increaslngly complex~ ~ similar scenarlo to that ~ust ~escrlbed al90 obtains when th~
memory in each control unit stores the directory number 2'~3W~

translation information for only a predetermined block or subset of ~irectory numbers but the memory also stores index data defining the location of the translation information when other directory numbers are received. In the systems described in the detailed description hereafter, the index data is stored in a database relation referred as the ~ODTRAN relation.
In an alternative method in accordance with the invention, as soon as control unit 937 determines tnat the directory number received from port 931 defines a port associated with switching module 920, an available communication channel of inter-module connection arrangement 9~0 between switching module 930 and switching module 920 is allocated to the call. ~hen control unit 927 learns that the call is a sequence call and is to he completed to a second directory number, the call setup sequence is returned to control unit 937 and the call is reduced to a simple call. ~hen control unit 937 determines that the second directory num~er defines a port associated with switching module 910, the previouslv allocated channel between switchin~ modules 930 and 920 is deallocated and instead a channel between switchin~ modules 930 and 910 is allocated. Again the message transmitted from control unit 937 to control unit 917 is the same as that for a simple call and control unit 917 eEfects the completion of the call to port 911.
In the detailed description which allows, two exemplary systems, reEerred to herein as Systems III and V, illustrate the processing of se~uence calls in a distributed control switchin~ system in accorclance witl- the present invention.

~;33~

Detailed Description -The following description relates to Eive time division switching systems, referred to herein as Systems I
through V, which vary in the degree to which the call processing function is distributed throughout the system.
System I is a time division switching system where the switching function is distributed to a plurality of switching modules each connected to a number oE lines and trunks~ Each switching module provides connection:, among the lines and trunks connected to that module. Calls involving lines or trunks connected to diEEerent modules are completed through a time-multiplexed switch that interconnects the modules. Each switching module includes a control unit that controls the switchin~ function of that module. The system also includes a central control that controls the switching function of the time-multiplexed switch. All calls within the system require the selection of what is referred to as a network time slot. For inter-module calls, the network time slot is used Eor transmission from one switching module, throug`n the time-multiplexed switch, to another switching module. For intra-module calls, the network time slot is used within the switching module to connect one line or trunk to another line or trunk. ([n the present embodiment, two network time slots are used for intra-module calls, one Eor each transmission direction.) Although the call processing function is distributed in System I in that the reaL-time intensive tasks associated with calls, e.g., sisnal processing, are performed by the switching module control units, the routing Eunction, defined herein as the Eunction of determining the terminating port, selecting the network time slot and setting up the time-multiplexed switch path if the call is an inter-module call, is centralized, being pe~formed by the system central control. System I
described herein is substantially the same as t'ne time division switching system disclosed in U. S. Patent No.
4,322,8~3.

B~

System II builds on System I by integrating four individual, remote switching modules into the system~
However, in System II the routing function is perEormed in a distributed manner by the remote switchin~ module control units and the system central control. The distribution is done in an efficient manner such that work done by one control entity, in particular time consuming database access tasks, need not be repeated by the next control entity.
System III also has four, remote switching modules in the system but rather than being individual modules, the four remote modules in System III are interconnected in a grouping referred to herein as a cluster. In System III
the routing function is again performed in a distributed manner. Systems II and III described herein are the same in many respects as the time division switching system including remote switching capability described in U~S.
Patent No. 4,550,404 which issued on October 29l 1985 to M.M. Chodrow et al. However, in the system of the V.S.
Patent No. 4~550l404l the routing function is not distributed but rather is performed centrally by the system central controlO
System III illustrates an efficient method of processing sequence calls, i.e.l forwarded calls or series-completion calls, in such a distributed-control switching system whereby sequence calls are always reduced to simple calls, i.e., calls involving only two ports.
System IV uses substantially the same hardware architecture as System I, but all of the call processing functions except selecting the networlc time slot and setting up the time-multiplexed swltch path for inter-module calls are .listributed to the switching modules rather than involving the system central control. In particular, the function o~ determinin~ the terminating port can be done for all calls by the cooper~tive processin~ of only the switch modules~

In System IV, the directory num~er translation function is done in a manner allowing flexibility in assigning directory numbers to subscriber sets but minimizing the magnitude of the storage facilities required in each switching module. Multi-port hunt groups naving members that span a number of switching rnodules are controlled in an efficient manner by assigning, for each multi-port group, one of the switching modules as the group controller for that multi-port group.
In System V, the remaining call processing functions of selecting the network time slot, also re~erred to herein as path hunting, and then setting up the time-multiplexed switch path accordingly Eor inter-module calls, are also distributed to the switching modules. In System V, the system central control is completely relieved of the call processing function, and performs only administrative and maintenance functions.
System I
The time division switching system of FIG. 2, referred to herein as System I, is used to interconnect subscriber sets such as subscriber sets 23 through 26 and trunks such as trunks ~3 through ~6 and includes a time-multiplexed s~itch 10 comprising a time-shared space division switch having 64 input terminals and 64 output terminals. Also included are 29 time-slot interchange units of which representative time-slot interchange units 11 and 12 are specifically shown. Each time-slot interchange unit 11 and 12 includes a bidirectional tirne-slot interchanger. Additionally, each time-slot interchange unit 11 and 12 is connected to two input terminals and two output terminals of tirne-multipLexed switch 10. In System I, time-slot interchange unit 11 is connected to two time-multiplexed switch input ter,ninals via time-multiplexed lines 13 and 1~ and to two outplJt terminals, via time-multiplexed lines 15 and 16.
In ~he de~criptlon whl~h eollows, the inr~ut and output terminals of time-rnultiplexed switch 10 are ~33~

referred to as input/output terminal pairs. This term is used since the source for data words to an input terminal of a given input/output terminal pair is also the destination for data words from the output terminal of that pair. As shown in FIG. 2, input/output terminal pair ~1 is associated with time-multiplexed lines 13 and 15. Each time-multiplexed line 13 through 16 conveys digital information in 125-microsecond frames each comprising 25 time separated channels. Accordinglv, each time-slot interchange unit transmits and receives up to 512 channels of digital information durin~ each 125-microsecond frame.
Each time-slot interchange unit is unicluely associated with a control unit of which control unit 17 is associated with time-slot interchange unit 11, and control unit 18 is associated with time-slot interchange unit 12. Additionally, each time-slot interchange unit is connected via individual time-multiplexed lines to a plurality of peripheral units of which line units 19 through 22 and trunk units 39 through 42 are shown in ~TG. 2. A time-slot interchange unit an1 its associated control Ul1it and peripheral units are collectively referred to herein as a switching module. Line units 19 and 2() and trunk units 39 and 40 are connected to time-slot interchange unit 11 in switc`ning module 201 and line units 21 and 22 and trunk units 41 and 42 are connected to time-slot interchange unit 12 in switching module 229.
Each of the line units is connected to a number of subscriber sets of which subscriber sets 23 through 26 are shown. ~he exact number of line units associated with each time~slot interchan~e unit and the exact number oE
subscriber sets associated with each llne unit is determined by the number of subscribers to be servecl an~-J
the calling rates of those subscribers. Each llne unit terminates the analog loop of the well-known type from a plurality oE subscriber sets, e.~., 23 through 26, and conv~ call Ln~o~m~i.on 1n~ 1ln~ ~nAlo~ np~h 0i~n~l~
into digital data words which are transmitted to its ~33~i associated time-slot interchange unit. ~urther, each line unit detects service requests from the subscriber sets and generates certain signaling information for those subscriber sets. The particular subscriber sets Lrom which speech samples are taken and encoded, and the particular time-multiplexed channels used to transmit the resulting code between the line unit and its associated time-slot interehange unit are determined by the control unit of the associated time-slot interchange unit.
The trunks units, e.g., 39 and 40, perform analogous functions for trunks such as detecting trunk seizures and controlling and detecting trunk signaling with other systems. The trunks can be either of the analog or digital type. One example of such a digital trunk is the T1 carrier system disclosed in U. S. Patent No. 4,059,731, on which 24 separate eornmunication channels are multiple~ed.
The relationship o~ subscriher sets, line units and time-slot interehange units is substantially the same for eaeh of sueh groups of intereonneeted units.
Aecording:ly, while the deseription whieh Eollows re:Late~
direetly to subscriber set 23, line unit 19 and time-slot interehange unit 11, it shows the relationships for all other groups of sueh units. Furthermore, an analogous 2~ relationship exists between trunks, trunk units and time-slot interehange units. Line unit 19 scans the lines connected to each subseriber set to deteet requests for serviee. When sueh a request is detected, line unit 19 transmits to control unit 17, a message indicatin~ the request and the identity oE the requesting subscriber set.
This message is transmitted to control unit 17 via a eommunication path 27. Control unit 17 performs the necessary translation based on the service requested, the identity of the requesting subscriber set and the available equipment, and transmits a message to line unit 19 via eo~munle~lon p~th ~ ~eElnin~ whleh Oe th~ pluralIty o time separated ehannels between line unit 19 and time-slot 3~

interchange unit 11 is to be used to transmit information from subscriber set 23 to time-slot interchange unit 11.
Based on this message, line unit 1~ encodes the analog information from subscriber set 23 into digital data words and transmits the resulting data words in the assigned channels. Line unit 19 also transmits in the assigne-l channel an indication of the DC state, i.e., open circuit, closed circuit, of the subscriber loop associated with subscriber set 23.
~fter a time separated channel between line unit 19 and time-slot interchange unit 11 is assigned to a given subscriber set, co~trol unit 17 detects signaling inEorma-tion from the subscriber set by sampling t~e information transmitted in the assiqned channel. Such sampling operations are performed via a communication path 28. Control unit 17 responds to the signaling information from the subscriber's channel, and to control messages from other control units, e.g., 18, and a central control unit 30, by controlling the time-slot interchange function of the time-slot intercnange unit 11. As previousl~ stated, each time-multiplexed line between a time-slot interchange unit and the time-multiplexed switch 10 has 256 channels each 125-microsecond frame.
These channels are assigned numerical designations frorn 1 to 256 in sequence as they occur. This sequence of channels recurs so that a given channel will be available every 125 microseconds. The time-slot interchange function takes the data words received from the line units and places them in channels on the time-multiplexed line between the time-slot interchange units and the time-multiplexecl switch 10 under the control oE control units 17 and 18.
Time-multiplexed switch 10 operates in recurring frames oE time slots where each 125-microsecond frame comprises 256 time slots. During each time slot, time-multiplexed swltch 1~ i5 capable Oe connecting data words received at any o its 6~ input terminals to any oE its 6 338~

output terminals in accordance with time-slot controL
information stored in a control memory 29. The configuration pattern of connections through time-multiplexed switch 10 repeats itself every 256 time slots and each time slot is assigned a numerical designation in sequence from 1 to 256. Accordingly, during a Eirst time slot TS 1 the inEormation in a channe] (l) on time-multiplexed line 13 may '~e switched by time-multiplexed switch 10 to an output terminal P6~ while during the next time slot TS ~ the next channel (2) on time-multiplexed line 13 may be switched to an output terminal P57. Time-slot control information is written into control memory 29 by central control 30 which generates this control information from control messages obtained from various control units, e~g., 17 and 1~.
Central control 30 and control units 17 and l~
exchange control messages utilizing selected channels called control channels of the time-multiplexed lines, e.g., 13 through 16, between the time-slot interchange urits and the time-multiplexed switch 10. Each control message comprises a plurality of control words and each control channel can transmit one control word per fcame of 25~ time separated channels. The same channel of the two time-multiplexed lines associated with a given input/output terminal pair is predefined to be a control channel.
Additionally, a given channel is used as a control channel for only one pair of time-multiplexed lines. For example, if channel 1 is used as a control channel on time-multiplexed line 13 and the associated time-multiplexed line 15, no other time-multiplexed line wi:Ll use channel l as a control channel. During each time slot having the same numerical designation as a control channel, time-multiplexed switch 10 connects the data word occupying that control channel to output terminal P6~ and connects input~rminal P6~ to the output terminal a~sociat~d with the above-mentioned control channel. The following is an 3~

example o~ the operation of system I when channel 1 is tl-e control channel for time-multiplexed lines 13 and 15, and channel 2 is the control channel for time-multiplexed lines 14 and 16. During time slot TS 1 inEormation from control memory 29 defines, among other connections, that the control word in channel 1 of time-multiplexed line l3 is connected to output terminal P64 and that the cont-rol word in channel l at input terminal P64 is connected to time-multiplexed line 15. Similarly, during time slot TS
2, information from control memory 2g defines that the control word in channel 2 of time-multiplexed line 14 is connected to output terminal P64 and that the control word in channel 2 at input terminal P64 is connected to time-multiplexed line 16. When operating in this manner, output terminal P64 receives from time-multiplexed switch 10 all control words in a channel having the same numerical designation in which they were transmitted to the time-multiplexed switch. Further, each control channel is connected to recei-~e control words Erom input terminal P6~
during the time slot having the same numerical designation as their associated control channel. Control words switched to output terminal P64 are transmitted to a control distribution unit 31 which temporaril~ stores them in a location associated with that control channel. The association of control channels with storage locations in control distribution unit 31 identifies the source oE the information stored.
Each control message from a time-slot interchange unit comprises a start cllaracter, a destination portion, a signaling information portion, and an end character. The destination portion uniquely defines the expected destination of the control message. Control distribution unit 31 interprets the destination portion oE each control message to determine the proper destination for the control message and retransmits the message to input termlnal P6~ of time-multiplexed switcll 10 in a channel havin~ the same numerical 3~

desi~nation as the control channel associated with the destination unit.
When operating as above described, time-slot interchange unit 11 transmits control messages to time-slot interchange unit 12 by transmitting control words ~1uring its recurrlng control channel to Eorm a control message having a destina-tion portion identifying time-slot interchange unit 12. Control distribution unit 31 accumulates the control words, interprets the destination portion, and retransmits the message to input terminal P64 during the channel having the same numerical designation as the control channel associated with time-slot interchange unit 12. A control message can also be transmitted to central control 30 by deining central control 30 in tne destination portion of the control message. When this occurs, control distribution unit 31 transmits the message to central control 30 via a communication link 32 rat~er than returning it to time-multiplexed switch 10.
Similarly, a message may be transmitted from central control 30 to one of the time-slot interchange units by transmitting to the control distribution unit 31 a control message having a destination portion defining the particular time-slot interchange unit. This transmission is also accomplished utilizing communication link 320 The operation of a particular embodiment of control distribution unit 31 is described in detail in the a~ove-cited U.S. Patent No. 4,322,843.
Each of the control units, e.g., 17 and 18, includes a memory 57 (FIG. 3) which stores the program ~or the control oE its associated control unit and data regarding the primary function of the control unit~ its associated time-slot interchange unit and its associate~
subscribers. The main processing entity o~ control unit 17 is a processor 66 (F~G~ 3) which operates in response to instructions stored in memory 57. Control unit 17 includes t~l l.nte~ace Qi~cu1~ 56 whlah ~GelveF~ in~tructions from processor Z6 via a bus 59 and in response thereto, 3~

communicates with the peripheral units, e.g., line units 19 and 20 and trunk uni~s 39 and 40, via communication path 27. Control unit 17 also includes a signal processor 65 and a digital service unit 67. Signal processor 65 reduces the real time load requirement of processor 66 by receiving and analyzing the signaling portion (bits A through G, FIG. 6) of each data word received by time-slot intecchange unit 11. Digital service unit 67 receives the data portion (FIG. 6) oE each data word received by time-slot interchange unit 11 to detect tone siynals from subscribers which h~ve been converted into PC~ signals. Digital service unit 67 is also used to transmit tones and signals in PCM fornat via a gate 51 to subscribers and via a gate 5~ to time-multiplexed switch 10. The operation of control interface circuit 56, signal processor G5 and digital service unit 67 as well as line unit 19 is described in detail in the above-cited U.S. Patent No. 4,322,843. An example oE trunk unit 39 includes the digital facility inter~ace described in the above-cite~
~. S. Patent No. 4,505,404 for use with Tl car~ier systems.
F.acn of the peripheral units transmits recurrinCJ
frames each comprising 32 or 64 digital channels of 16 bits each. This information is transmitted to a multiplex unit 60 (FIG. 3) within time-slot interchange unit 11.
Multiplex circuit 60 receives the output sil3nals Erom the peripheral units which signals are reformatted and transmitted on an output time-multiplexed line 62 having 512 channels Eor each 125-microsecond frame.
Similarly, a demultiplex circuit 61 receives 512 channels of 15 ~its each on a time-multiplexecl line 63 which channels are distributed in a predeterlllinec1 ~rran~3ement to the peripher~l units such as line unit 19. Further, multiplex unit 60 converts incoming channels oE
inEormation from serial to parallel forrn and demultiplexer 61 converts the in~ormation it recelves from parallel to seri~l form. The information transmitte-l in a :~'a~3~6 given channel on time-multiplexed line 62 is stored in a receive time-slot interchanger 50 ln a melnory location uniquely associated with that given channel.
The particular memory location into which a given data word is stored is defined by time-slot designation signals generated by time-slot counter 54.
Time-slot counter 54 generates a recurring sequence oE 512 time-slot designations at the rate oE one time-slot designation per time slot. The particular time-slot designation generated during the time slot in which a yiven data word is received defines the memory location within receive time~slot interchanger 50 which is to st~re that data word. Data words are also read from receive time-slot interchanger 50 at the rate of one data word per time slot. The memory address of the data word to be read from receive time-slot interchanger 50 during a yiven time slot is obtained by reading control RAM 55. Control RA~ 55 is read once per time slot at an address defined by the time-slot designation from time-slot counter 5~ and the ~uantity so read is transmitted to receive time-slot interchanger 50 as the read address for that time slot.
Data words read from receive time-slot interchan~er S0 are transmitted to time-multiplexed switch 10 via a time-multiplexed line 68, a gate 8, a time-rnultiplexed line 68' and an interface unit 69. Data words from time-multiplexed switch 10 are received by time-slot interchange unit 11 by interface unit 69, and are conveyed via a time-multiplexed line 70', a gate 9 and a time-multiplexed line 70 to transmit time-slot interchanger 53. For calls among the peripheral units connected to time-slot interchange unit 11, control RAM 55 effects the operation of gates 8 and 9 such that data words transmitted by receive tirne-slot interchanger 50 on time-multiplexed line 68 are conveyed via gates 8 and 9 and time-multiplexed line 70 to transmit time-slot interchanger 53. Transmit time-slot int~rchAnger $3 d~or~ ~ha incomlnc3 c1f~ta ~orcla in ~
location deeined by an address Erom control RAM 55. Data 3~
- ~.3 -words are read Erom transmit time-slot interchan(3er 53 at the address defined by the time-slot counter 5~. Data words so read are transmitted on time-multiplexed line 63 for transmission to a peripheral unit, e.g., line unit 19.
It should be noted that control RAM 55 may be implemente~
as a number of control memories each associated with a particular circuit, e.g., transmit time-slot interchanger 53. The particular configuration oE control memories is not important to the present description and may vary depending on timing and circuitry requirements within the time-slot interchange unit 11. The general principles of time-slot interchanye as perEormed b~ the receive time-slot interchanger 50, the control RAI~ 55, the time-slot counter 5~ and the transmit time-slot interchanger 53 are well known in the art and are not described in greater detail herein. One arrangement for reading and writing data words in time-slot memories is described in detail in U. S. Patent 4,035,5840 The primary mode of control inEormation exchange in System I presently being described comprises the transmission oE control messages from a source time-slot interchange uni-t through the time-multiplexed switch 10 and the control distribution unit 31 and back to the destination time-slot interchange unit. A secondary mode oE communication is also used whereby control information with regard to a given call is transmitted Erorn the source time-slot interchange unit to the destination time-slot interchange unit via the time~multiplexed switch 10 utilizing the time slot assigned Eor that call. The E-bit position of the data word in the call time slot is used for the secondary moc1e cornmunication. However, it can be seen that any or all of the signaling bits could be used in this secondary comrnunication mode. The E-bit serves the dual purposes Oe communication path continuity check an~ signal acknowledgment. The operation of E-bit accumulator ~8 and E-bit check circuit 192, which communicates with processor 66 via conductors 193, 19~, and 195 in performinc~

- 24 ~

these dual purposes is descri~ed in detail in the above-cited U.S. Patent No. ~,322,843.
The following is a description of the primary mode of communication between the various control entities of the switching system. Processor 66, in response to a complete dialed number, performs translations with re~ard to that dialed number and ~ormulates a control message for central control 30 (FIGo 2) so that an idle time slot for the call can be established through time-multiplexed switch 10. This control message is stored in melnory 57 by processor 66. A DMA unit 58 of a type well known in the art reads the control message at the rate of one control word per frame and transmits that word to a control word source register 80 (FIG. 4) in interface unit 63 for transmission on the time-multiplexed line to time-multiplexed switch 10. Si.milarly, control nessages are received from other control units and central control 30 at a control word destination register 92 (FIG. ~) in interface unit 69 and transmitted by D~A unit 5~ to the memory 57 where they are read by processor 66. InterEace unit 69, which is shown in detail in FIG~ 4, includes a multiplex/demultiplex circuit 75 and two link interfaces 78 and 79. Multiplex~demultiplex circuit 75 is connected to receive data words Erom the receive time-slot interchanger 50 via time-multiplexed line 68' and to transmit data words to transmit time-slot interchan~er 53 via time-multiplexed line 70'. Recall that both time-multiplexed lines 68' and 70' convey data words at the rate oE 512 channels per 125~microsecond frame.
Multiplex/demultiplex circuit 75 splits ~he information received on time-multiplexed line 6~' into two time multiplexed lines 76 and 77 by transmitting the data words in each even-numbered channel on time-multiplexed line 77 and by transmitting each odd-numbered channel on time multi-plexed line 76. Each of the time~multlplexed lines 76 and 77 thu~ convey~ lneormation at the rate ~f 256 channels per frame. Additionally, multiplex/~lemulti~lex~

:;~2~
~ 25 -circuit 75 combines the information on ~wo 25~-channel time-multiplexed lines 85 and 86 onto the 512-channel time-multiplexed line 70'. This combination occurs by alternatin~ly transmittin~ the data words from time-multiplexe~ lines 85 and 86 such that the data words frorntime-multiplexed line 35 are transmittecl in the odd-numbered channels of time-multiplexed line 70' while data words from time-multiplexed line 86 are transmitted in even-numbered channels. Time-rnultiplexed lines 76 and 85 are connected to link interEace 7~ and time-multiplexed lines 77 and 86 are connected to link interface 79. It should be noted that the time-slot interchange unit 11 operates on the basis of 512 time slots (channels) per frame while the link interfaces 78 and 79 and the time-multiplexed switch 10 operate on the basis of 256 timeslots (channels) per frame. Further, the channels of data words received from and transmitted to time-slot interchange unit 11 are in complete synchronism. That is, whenever a channel having a given numerical designation is received by link interface 78 from time-slot interchan~e unit 11, both link interfaces 7~ and 79 will be receivin~
and transmitting channels haviny the same numerical designation with respect to the time-slot interchange unit 11. In order to maintain synchronism after the split, all odd-numbered channels on time-multiplexed line 68' are delayed by multiplex/demultiplex circuit 75 so that t'ne odd-numbered channel and the immediately followin~ even-numbered channel are transmitted on a respective one oE
time-multiplexed lines 76 and 77 substantially simultaneously. Similarly, each data word from link interface 79 on time-multiplexed line 36 is delayed by multiplex/demultiplex circuit 75 such that it is transmitted on time-multiplexed line 70' immediately after the data word recei~Jed by multiplex/demultiplex circuit 75 substantially simultaneously therewith. In the course of the eollowing description, the time slot of a qiven data word refers to its time slot ~lith respect to link .3~3~

interfaces 78 and 79 and the time-multiplexed switch 10.
For example, data words from channels 1 and 2 of time-multiplexed line 68' are both associated with time slot I
of the linl~ interfaces 78 and 79 and the time-rnultiplexed switch 10. Each of the link interface units 78 and 7~ is uniquely associated with one input/output port pair of time-multiplexed switch 10.
Link interface 78 (FIG. ~) includes the receiver 82 which receives data words transmitted serially from time-multiplexed switch 10 via time-multiplexed line 15 and serially retransmits this information on a conductor 83. A clock recovery circuit 84 receives the incoming bit stream by connection to conductor 83 and recovers a 32.768-megahertz clock signal therefrom. This clock signal is used to provide timing for link interface circuit 78. For reasons to be described in greater detail later herein, the inEormation received on time-multiplexed line 15 is not necessarlly in channel synchronization with that transmitted on time-multiplexed line 13. In order to achieve cnannel synchronism between the data words on time-multiplexed lines 76 and 85, the incoming data words on conductor 83 are buffered in a random access memory circuit 87. The data words on conductor 83 are written into random access memory 87, at a location defined by a write address generator 88. Write address generator 88 receives a 2.048-megahert~ clock signal from the clock recovery circuit 84 and in response thereto generates a recurring sequence of 256 write addresses in syncnronism with the incoming data words on conductor 83. Data words are read from random access memory 87 for transmisslon to time-slot interchange unit 11 at locations defined b~ a read acldress generator 89 which generates a recurring sequence of 256 read addresses. The read addresses are-derived from information received from an ofEset circuit 90. Offset circuit 90 receives the write acldresses gener~a~ by the wr1te ad~re~ ~enQrat~ a~, an~l effectively subtracts a predetermined number there~rom.

33~

-~ The result of this subtraction is tnen transl1litted to read address generator 89. In this manner, read address generator 89 generates a sequence oE read addresses which is approximately one-fourth oE a frame (64 time slots) behind the addresses generated by the write address generator 88.
Link interfaces 78 and 79 of interface unit 69 operate in a master/slave mode to maintain channel synchronism. In the present embodiment, link inter~ace 78 is the master and continues to operate in the manner described above. The read address generator of link interface 79 is, however, driven by read addresses fro:n the read address generator 89 oE link interface 78.
It should be noted that, due to possible differences in the length of time-multiplexed lines 15 and 16, more or less than one-quarter frame oE infor~ation may separate the write addresses and read addresses utilized in link interface 19. This occurs since the data words transmitted on time-multiplexed lines 85 and 86 are in channel synchronism while no such synchronism is required on time-multiplexed lines 15 and 16.
The same channel is ~1sed in a given link interface to both transmit and receive control messages.
The particular channel used by a given link interface, e.g., link interface 78, to convey control messa~3es is preset and stored in a control channel register 81. Each read address generated by read address generator 89 is transmitted to a comparator 91 which compares that read address to the preset control channel designation stored in control channel register 81. When comparator 91 determines that the instant read address is identical to the control channel designation, it generates a gating signal which is transmitted to control word source register 80 ancl to a control word destination register 92. Control word destination register 92, in response to the gatin~ signal ~r~m ~m~ ,h~ Lne~rmat~Lon on ~lm~
multiplexed line 85. During that particular channel, the 3~

information on time-multiplexed line 85 cOTnpriSeS the contents of the control channel to be utilized by the control unit 17. By the operation of DMA unit 58, the contents of control word register 92 are transmitted to memory 57 before the next control channel. Similarly, control word source register 80 responds to the gating signal from comparator 91 by gating its contents out to time-multiplexed line 76, thus transmitting the control word. Control words are transmitted and received by link interface 79 in a substantially similar manner, however, the particular control channel designation associated with link interface 79 is different than that associated with link interface 78.
The read addresses generated by read address generator 89 are also transmitted to a frame sequence generator 93O Frame sequence generator 93 responds thereto by generating a ~nique sequence oE framing bits at the rate oE one bit per channel. During each channel, the bit generated by the fra,ne sequence generator 93 is transmitted to a frame insert circuit 94 which places tne framing bit into the G-bit location of the data word fron time-slot interchange unit 11. The data word including this Eraming bit is then transmitted via a parallel-serial register 95 and a driver circuit 96 to time-multiplexed line 13 which is connected to a unique input port of time-multiplexed switch 10. Each data word received by link interface 78 includes a framing bit which is generated and transmitted by the time-multiplexed switch 10. A frame checker 97 reads each framing bit of each data word Erom time-multiplexed switch 10 and determines iE the communicationbetween time-multiplexed switch 10 and itselE is still in synchronism, If synchronism exists, no corrections are made; however, if synchronism is found not to exist, reframing is accomplished by communication with the clock 5 recovery circuit 84 in a manner well known in the art.
rrh~ inp~ ~ncl ~ u~ ~erminal~ Oe ~ime-multiplexed switch 10 can be considered in pairs for both terminals are 33~

connected to the same link interface. Further, each pair of input and output terminals of the time-multiplexecl switch 10 is connected to a time-multiplexed switch lin~
interface of a type similar to lin~ inter~aces 78 and 79.
Link interface 78 is connected to a time-multiplexed switch link interface 100 (FIG. 5) including a receiver 101 wnich receives data words from time-multiplexed line 13 and transmits those data words to a serial-parallel register 102 via a time-multiplexed line 103. The bit stream from time-multiplexed line 103 is also applied to a clock recovery circuit 10~ and a Erame check circuit 105 which derive clock signals therefrom and determine i~ frame synchronism is present, respectively. Time-multiplexed switch link interface 100 further includes a write address generator 106 which generates a sequence of write addresses in response to signals from clock recovery circuit 104.
Each data word transmitted to serial-parallel register 102 is then written into a random access memory 107 at the address generated by write address generator 106.
Time-multiplexed switch 10 also includes a time-shared space division switch 108 which operates in fra,nes of 256 time slots of approximately 488 nanoseconds each to complete paths among its input and out~ut terminals.
Control in~ormation defining t'ne switching path between the input and output terminals to be connected durin~ each time slot is stored in control memory 29 (~-~G. 2) which is read each time slot to establish those connections. Recall that each time slot has a numerical designation ancl that during a given time slot t'ne data word channel having the same numerical designation is to be switched. Accordingly, all data words in a channel havin~ a given numerical designation must be transmitted to the time-shared space division switch 108 during their associated time slot to avoid inacc~lrate switching. To this end, time-multi~lexed 3S switch 10 includes a master clock circuit 109 for generating a recurrin~ sequence o 256 read acldresses which are transmitted to each random access memory of each time-3~

multiplexed switeh link interEaee substantially simultaneously. ~eeordinyly, random aecess memory 107 and the equivalent random aeeess memories ineluded in all other time-multiplexed switeh lin]c interfaees read a data word assoeiated with the same time slot at substantially the same time. The data words read Erom random aeeess rnemory 107 are transmitted to a para]lel-serial shift register 110 from whieh they are transmitted to tirne-sharec1 spaee division switeh 108.
All data words to be transmitted on time-multiplexed line 15 to link inter~ace 73 are reeeived ~rom the time-shar~d spaee division switch 108 on a eonductor 111 within one time slot of their transmission into time shared spaee division switch 108. Time-multiplexed switch link interfaee 100 includes a fralne sequence generator 112 which generates a sequenee of framing bits at the rate of one bit per time slot. The framing bits are transmitted to a frame insert eireuit l13 which plaees the frame bit in bit position G of each data word on conductor 111. Eaeh data word on eonduetor 111 is then transmitted via driver circuit 114 to link interface 78 via time-multiplexed line 15.
Centralized Routing In System I, the overall control func~ion is eooperatively accomplished by central control 30 and the control units in the switching modules, e.g., control unit 17 in switching module 201. For the purposes of the discussion whieh Eollows, control funetions performed by the switehing module eontrol units are described simply as being performed by the switehing modules. ~he overall proeessing task of the system is broken down into a number of major tasks ealled program proeesses. A process eomprises a eolleetion of proeeclures, eaeh performing some sub-tasX of the proeess. Assoeiated with a process is a bloek of memory ealled a proeess eontrol bloek which stores data applieable to the entire proeess, and a bloek o~
memory ealled a staek whieh stores data useful to the - 31 - ~2~3~

individual procedures of the process. Processes communicate with each other via messages. The same ty~e of message is used in communicating with another process in the same processor, or another process in a different processor.
In System I, processes are of t~o ty~es:
terminal processes and system processes. System processes remain in existence as long as the system is operational.
Terminal processes on the other hand remain in existence only for the duration of individual calls or service events such as diagnostic tests or service evaluation. For each call, two terminal processes are created--an originating terminal process in the switching module connected to the originating line or trunk and a terminating terminal process in the switching module connected to the terminating line or trunk. As an exa-,nple, consider that subscriber set 25 connected to switching module 229 has just gone off-hook. The ofE-hook state is detected by scanning within line unit ~1~ A call processing control system process 2001 (FI~. 7) within s~itching module 229 is informed cf such ofr-hook detection and, in response, creates an originating terminal process 2002. Originating terminal process 2002 is responsible for controlling the transmission o-E dial tone to subscriber set 25 and the subsequent reception of digits dialed from subscriber set 25. Originating terminal process 2002 analyzes the dialed digits to obtain values of four variables: PI, DI, DIGCNT
and TREAT. The variable PI is the preEix index deEining whether a prefix was dialed and iE so the preEix type, e.g., the 0~ prefix used for o~perator-assisted toll calls or the 1-~ preEix used for direct-dialed toll calls. The variable DI is the destination index which deEines one oE a number of possible destination categories for the call, e.g., based on the Eirst three digits (the nxx digits) of the seven-di~it directory number, the destination in~ex may define that the de~tlnation is a loeal lLne or i9 aecessible via one of a plurality of groups oE trunks 33~

connecting the present system to certain other switching systems. The variable DIGC~T simply defines the number of digits dialed. The variable TREAT deEines whether the dialed digits can be processed to complete a call or, as in the case where the calling party only partially dial~ the intended number, an appropriate announcement is to be transmitted to subscriber set 25. In addition, ori~inatin~
terminal process 2002 determines the value of a screen index SI, based on the characteristics of the originating line, e.g., whether it is a typical residential line or it is connected to a private branch exchange (PBX) or key system. Originating terminal process 2002 then formulates a route re~uest message RTREQ in a message buffer. As shown in FIG. 1~, the RTREQ message includes five fields:
PATHDES, RTGDATA, DIALGATA, GPI and TREAT. (As with other data structures, messages and relations referred to herein, the ~TREQ message may include additional Eields not important in understanding the present description.) The P~THDES field stores a path descriptor used to speci~y the path through the switching system to be used for the call. Such a path is completely described by specifying the originating peripheral time slot, the network time slot and the terminating peripheral time slot. The originating peripheral time slot is the particular one of the 512 time slots in which information from the originating line or trunk is received by receive time-slot interchanger 50 (FIG. 3) and in which information from transmit time-slot interchanyer 53 (FIG. 3) is transmitted to the originating line or trunk. Similarly, the terminating peripheral time slot is the one oE the 512 time slots that is used for communication with the terminating line or trunk. The network time slot is the selected commonly available time slot oE the 517 time ~lots t~ansmitted by the receive time-slot interchanger 50 in the origlnatin~ switching module and of the 512 time slots rec~ived ~y th~ t~n~mit t1mc~lot interahan~ 53 in the destination switching module. To establish the cornplete 3~

path, information must be stored in the control RAM 55 (FIG. 3) in both the originating and terminating switc`ning modules defining the mapping between peripheral time slot and network time slot to be accomplished by time-slot interchange. Intra-module calls are no-t transmitted through time-multiplexed switch 10. However, ~or inter-module calls, information is stored in control memory 29 defining tnat during the network time slot selected for a given call, ti~e-multiplexed switch 10 must provide a path from the originating switching module to the terminating switching module. In the present example, originating terminal process 2002 only knows the originating peripheral time slot for the call at this time. The remainder of the PATHDES field is left blank.
The RTGDATA field is used to store a number of variables used to implement certain call processing features not important to the understanding of the present description and not further described herein.
The RTGDATA field also stores a variable TER~TYP used subsequently to define the -type of termination for the call, i.e., whether a line, trunk or announcement termination. The DIALDATA field is used to store the variables PL, DI, SI, and DIGCNT determined by oriyinating terminal process 2002 as well as the received dialed digits. The GPI field is used to store the global port identity of the port connected to originating subscriber set 25. The point at which a given line or trunk is connected to the switching system o~ FIG. 2 is reEerred to herein as a port. (In the case of a multiple-channel digital facility, each channel is considered to be connected to a diEferent port.) Each port of the system has a unique global port identity. A number of announcement circuits included in digital service unit 67 (FIG. 3~ each also have unique global port identities. For ports connected to party lines, the GPI field also identiEies the individual pC~rtie~ on tho~ lines. In the RTREQ message, the GPI field defines the global 3~i port identity of the originatin~ port. The TREAT ~ield is used to store the ~rR~T variable determined by originatin~
terminal process 2002.
Once the RTREQ message has been EorMulated, it is transmitted by originating terminal process 2002 to a routing system process 2003 (FIG. 7) in central control 30.
Routing system process 2003 stores the RTRE~ messaye in a data structure referred to as a routing data block (RD~LK) 2101. Routing system process 2003 uses the information in the RTREQ messaqe to access a centralized database, in a manner descri~ed in detail herein, in order to determine the global port identity oE the terminating port. Routing system process 2003 also selects an available network time slot to be used for the call and, if the terminating port i5 connected to a different switching module than the originating port, writes information deEining the selected time slot into control memory 29. Routing system process 2003 then formulates depending on the value oE the T~RMTYP
variable, a line termination request (LNTREQ) message, a trunk termination request (TKT~EQ) message or an announcement termination request (~TREQ) message in a message bu~fer. As shown in FIG. 14, the LNTREQ messa-ge includes Eour fields: PAT~IDES, RTGDATA, FARPID and GPI.
The PATHDES and RTGDATA Eields were ~reviously described with respect to the RTR~Q message. ~]owever the network time slot as determined by routing systeln process 2003 is added into the PATHDES Eield. The FARPID field is use~ to store a process i~entiEier deEining the originating terminal process, in the present example, ork3inatin-3 terminal process 2002, as determined Erom the header oE the RTREQ message. The GPI Eield stores the qlobal port identity oE the terminating port as determined by routing system process 2003. When the terminating port is connected to a trunk or to an announcement circult, a TKTREQ message or an ANTREQ message is Eormulated. As shown in EIG. 14, the TKT~EQ message and the ~NTRE~ Inessage 3~1~

include the same fields as the LNTREQ message and, ln addition, the TKTREQ message includes a DIGDATA fielcl used to store the digits to be transmitted over the trunk to another switching system. Assume for the present example that the terminating port determined by routing systern process 2003 (FIG. 7) is connected to subscriber set 23.
The LNTREQ message formulated in the message buffer is transmitted by routing system process 2003 to a termination system process 2004 in switching module 201. In response, process 200~ reads a busy/idle map (also reEerred to later herein as the PORTSTATUS relation) stored in switching module 201 to determine whether subscriber set 23 is presently busy or idle. If subscriber set 23 is idle, process 2004 creates a terminating terminal process 2005 and forwards the information received in the LNTREQ message to process 2005 via a line termination (LNTERM) message (or, in a trunk termination (TKTERM) message or an announcement termination (ANTERM) message, if a TKTREQ
message or an ANTREQ message had been received).
Terminating terminal process 2005 effects the transmission of ringing voltage to subscriber set 23, and the transmission of an E-bit continuity signal, described in the above-cited U.S. Patent No. 4,322,843, and audible ringing tones to switching module 229. Terminating terminal process 2005 then transmits a setup complete (SET~PCOMP) control message to originating terminal process 2002 in switching module 229 including the now completed path descriptor PATHDES. In response, originating terminal process 2002 effects the transmission of the E--bit continuity signal to switching module 201. ~hen switching rnodule 201 receives the E-bit continuity signal Erom switching module 229, terminating terminal process 2005 determines the terminating peripheral time slot to be used to communicate with subscriber set 23 and writes in-formation in the control RAM 55 of switching module 201 deEining the mapping between the term1natlng perlph~
time slot and the network time slot. Similarly, when 3~

switching module 229 receives the E-bit continuity signal from switching module 201, originating terminal process 2002 determines the originating peripheral time slot to be used to communicate with subscriber set 25 and writes information in the control RAM 55 of switching module 229 defining the mapping between the origlnating peripi1eral time slot and the network time slot. The communication path between subscriber se-ts 25 and 23 has now been set up .
Recall that routing system process 2003 perEormed three basic functions in the deseribed example ---determining the terminating port and its global port identity, seleeting an available network time slot and, for inter-module ealls, setting up the path through time-multiplexed switch 10, i.e., writing information de~ining the seleeted time slot in control memory 29. A flow ehart of the routing program executed by routing system process 2003 in performing these funetions is shown in FIG. 9 through 13. A state diagram defining the operational states of routing system proeess 2003 is shown in FIG. 8.
In System I presently being deseribed, the single routing system proeess 2003 performs ~he funetions of terminating port determination and network time slot seleetion for all ealls within the system. Routing system process 2003 also perEorms the funetion o~ time multiplexed switeh 10 path setup for all inter-module ealls. Routing system process 2003 processes one eall at a time--i.e., it responds to each RTREQ messaye by executinc~ the routing pro-~ram to generate either a LNTREQ message, a TKTREQ messa(3e or an ANT~EQ message. As shown in FIG. 7, routing system process 2003 uses four data structures during program exec~ltion--a routing clata block (RD~K) 2101, a call ~low block (CF~L~) 2102, a yroup block (GRPBLK) 2103 and a termination block (TERMBLK) 2104. Routing system proeess 2003 also has 5 aeeess to a eentralized database eomprising 12 relations hr~u~h ~ b~ t~r hQ~ln, Relational databases are eonsiderec] to be a 3~

collection of relations, as described in C. J. Date, An Introduction to Database Systems, 3rd edition, A~(lison-~7esley, 1981. A relation can be considered as a rectangular table. Rows in the table are called tuples and columns are attributes having uniaue names. ~ named attribute in a specific tu~ple is reEerred to as an item. A
key is a subset oE attributes whose values are used to uniquely identify a tuple of the relation. A key is sai~
to be composite if it consists of more than one attribute.
Occasionally, a relation may have rnore than one candidate ]cey. In that case, one of the candidates is designated as the primary key of the relation. Each attribute can take on a specific set of values, called the domain of the attribute. An illustrative relation named PART is sho~ln in Table 1.

The Relation Part ~ N~- COLOR ~EIGHT CITY =

Pl Nut Green 13 Amsterdam P2 Bolt Red 18 Tel Aviv P3 Bolt Blue 18 Rome P4 Screw Blue 15 London P5 Cam Yellow 13 Paris P6 Cog BlacK L 20 Rome __ _. ____ _ _____ _ _ ~

The attribute P~ is the prilnary key oE the relation since specifying its value serves to uniquely identify a tuple of the relation. For example, specifying P#~4 identieie~ the ~uple ~P~I, Screw, Blue, 15, London).
The execution of the routing program (FIG. ~

3~

through 13) begins in the START state 3001 (FI~. 8) when a RTREQ message is received. During block 1010 (FIG. 9), the received RTREQ message is stored in the first two Eields--the HEADER field and the TEXT field--of the routing data block RDBLK (FIG. 15). The message header is analyzed and the process identity oE the originating terminal ?rocess is stored in the ORIGTPI field of RD~L~. The RTGSTATE field o~ the RDBLK defines the state in the state diagram oE FIG.
8 that the routing program is presently in. The RTGSTA'rE
field is updated to define the next state before each state transition occurs. The RICO~NT Eield is used in connection with trunk routing as described later herein.
Execution proceeds Eirst to block 1025 (FIG. 9) during which a number of program variables are initialized based on the RTREQ message, and then to decision block 1030 during which it is determined whether the variable TREAT as recei~ed in the RTREQ message defines a request for fixed routing, for example, routing to an announcement informing the originating subscriber that the number was only partially dialed. If the variable TREAT defines fixed routing, execution proceeds to block 1240 during which the FIXEDRT state 3002 (FIG. 8) is entered. One of the variables initialized is TERMT~'P which defines that the requested termination is an announcement circuit. The FIXEDRI relation (FIG. 16) is read using TR~A'r as the key to obtain a route index (RI) that will be subsequently used to find the global port identity of the appropriate announcement circuit. The tuple of the FIXEDRI relation clefined by the key TREAT is stored in the call Elow block CFBL~ (F~G. 15).
However, if the variable TRE~'r does not deEine fixed routing, execution proceeds from block 1030 to block 1040 during which the SCREEN state 3003 (FIG. 8) is entered. During bloclc 1050, the SCRNING relation (FIG. 16) is read using the variables DI, SI and PI as the composite key. The SCRNING relation includes the attributes Rl, L~OC
and ROUTETYPE. The RO~TETYPE attribute defines whether the 33~

terminating port is connected to a line or a trunk. In the case oE a line, the NOC attribute defines the normalized office code of the terl~inating port. The normalized oEfice code represents an encoding of the first three digits (nxx) of a seven-digit directory number. For example, the nxx numbers 355, 357 and 420 of a typical central office rnight be encoded as the normalized office codes 1, 2 and 3. When the RO~TETYPE attribute defines a trunk, the RI attribute defines a route lndex into the RO~TI~G relation (FIG. 16) which is subsequently read to obtain the number of a particular trunk group. The tuple read from the SCRNI~G
relation as defined by the composite key DI, S~ and PI, is stored in the CFBLK (FIG. 15).
Execution proceeds to decision block 1060 during which the ROUTETYPE attribute is examined to determine whether the requested termination is a line or a trunk. If the ROUTETYPE attribute defines a line, execution proceeds to block 1070 and the DNTRAN state 300~ (FIG. ~) is entered. The TERMTYP variable is set to define that the requested termination is a line. Recall that the digits dialed by the originating subscriber set were transmitted as part of the RTREQ message and that the normalized office code (NOC) was obtained by reading the SCRNING relation.
Directory numbers (DNs) stored by central control 30 Eor the purpose of directory number translation are not stored as seven-digit numbers but rather as five-digit numbers comprising the combination of the single-digit NOC with the last four dialed digits. The DN obtained by combinin~ the NOC rom the SCRNING relation wi~h the last Eour dialed digits received in the RTREQ message is used as a key to read the DNTRAN relation (FIG. 16). The DNTRAN relation includes a TERMCLASS attribute which defines whether the line definecl by the key is an individual line or is part of a multi-line hunt group, and the GPI attribute which defines the global port identity o the line. The tuple o the DNT~AN relation deElned by the key DN l~ stored in the CFBLK (FIG. 15) and execution proceeds to decision ~2~3~

block 1090.
During block 1090, a determination is made i~ased on the TERMCLASS attribute, of whether the deEined line is an individual line or is part of a multi-line hunt group.
When an individual line is indicated, the function o~
determining the terminating port has been completed and execution proceeds to block 1180 during which the GPI of the terminating port is stored in the TERMBLK (~I~. 15).
Mote that the GPI comprises two fields-- the ~ODULE field defining which oE the switching modules incluAes the terminating port and the PORT field defining a Q~rticular one of the ports on that switching module.
E~ecution proceeds to block 1190 and the INTEGRITY state 3012 (FIG. 8) is entered. Central control 30 periodically communicates with the control units of each of the switching modules to verify -their operational status and maintains such status information in a status table. During block 1190, the status table is read using the MODULE field stored in the TER~BLK, to verify that ~he processor in the defined switching module is operational.
In block 1200, the NWCONL~ state 3013 (FI~. 8) is entered.
During block 1200 an available network time slot is selected and, if the call is an inter-module call, the instructions defining the selected time slot are stored in control memory 29. In block 1210, the TER~TYP variable is used to determine whether a LNTREQ message, a TKTREQ
message or an ANTREQ message is to be Eormulated in the message buf~er. The appropriate message is then constructed during block 1220 using data in the Rl)BLK, CFBLK and TERMBLK data structures. Execution then proceeds to bloc]c 1230 during ~hich the messa~e stored in the message bufEer is transmitted to the control unit in ~he terminating switching module and the DONE state 301~ (L~IG.
3) is entered.
35Returning to decision block 1090, if the 't~C~ S ~ h~ ~hQn ~lnln~ an ln~llvidua1 1ine, instead defines a multi-line hunt group, execu~ion ~2~33~

proceeds from block 1090 to block 1100. A multi-line hunt group is a group of lînes which share the same directory number or set of directory numbers. In block 1100, the poRTGRorJp relation (FIG. 16) is read using as a key the GPI
obtained from the DNTRAN relation. The PORTGROUP relation includes the GRPNUM attribute which defines the nurnber of a multi-line hunt group and the MEMBER attribute which defines the particular mernber of a given group. The tuple read frorn the PORTGRO~P relation is stored in the G~P~L~
(FIG. 15), execution proceeds to block 1 l lO and the MLGPREHUNT st~te 3005 (FIG. 8) is entered. During block 1110, the MHG relation (FIG. 17) is read using the GRPNU~1 attribute as a key. The MHG relation includes the HTYP8 attribute which deEines one of a number of relations that store the dynamic busy/idle data for multi-line hunt groups, only the LNSTAT relation (FIG. 1~) beiny included in the present description -for illustration. The tuple read Erom the MHG relation is stored in the GRPBLK (FIG.
15). Given that the HTYPE attribute defines the LNSTAT
relation, execution proceeds to block 1120. During block 1120, the LNSTAT relation is read using the GRP~
attribute as a key. The LNSTAT relation includes the GMFLAG bit map defining the busy/idle status oE each member of the hunt group. Rather than storing the entire bit map, a pointer to that bit map is stored in the GRPBLK
(FIG. 15), execution proceeds to block 11~0 and the MLG~I~NT
state 3006 (FIG. 8) is entered. During block 11~0, an idle member oE the hunt group is selected. The GMFLAG bit map accessible via the stored pointer is used to determine idle members. The selection is made in accorclance with a predetermined hunt algorithm based on the ~]TYPE attribute.
Execution proceeds to block 1150 during which it is determined whether the hunting done during block 11~0 is successful in finding an idle hunt group MEM~ER. If no such MEMBRR is found, execution proceeds to block 1160, the ~r..~w~ 3007 ~ n~,ercc1 ~n~ khe call ~ails.
IE, however, an idle MEMBER is found, execution proceeds to block 1170 and the G~OUPPOR'~ relation (FIG. 16) is read using the idle MEMBER and the GKPNUM attribute as keys to obtain the GPI of the terminating port. The function oE
determining the terminating port has now been complete~-J and execution proceeds to block 1180 and proceeds through blocks 1190, 1200, 1210, 1220 and 1230 as described above.
Returning to the decision bloclc 1060 i~ the RO~TETYPE attribute, rather than defining a line, instead defines a trunk, execution proceeds from block 1060 to block 1250. The variable TERI~TYPE is set to deflne tnat the requested termination is a trunk if block 1250 is reached from block 1060. ~lock 1250 is also reached ~rom block 1240. In block 1250, the RTING state 3008 (FIG. 8) is entered, the RICOUNT variable in the RDBLK is incremented and execution proceeds to decision block 1260.
During block 1260 it is determined whether more than a fixed number, e.g~, four, route indices (RIs) have been tried to complete the call. IE so, execution proceeds to block 1270 and the call fails. ~lowever, if four or less RIs have been tried, execution proceeds to block 1280 during whlch the ROUTING relation (FIG. 16) is read using RI as a key. The RO~TING relation includes the GRPNUM
attribute which is the nu~ber of a particular trunk group, and the SECRI attribute which is a secondary route index to use in case the call cannot be completed to the defined trunk group. The tuple from the ROUTING relation is stored in the CFBLK (FIG. 15).
Execution proceeds to block 1290 and the TRKPREHUNT state 3009 (FIG. 8) is entered. The TRI~G
relation (FIG. 18) is read using GRP~ as a key. The TRKG
relation includes the HTYPE attribute which defines the type of hunting to be used for the group. The TRKG tuple read is stored in the GRPBLK (FIG. 15) and executio~
proceeds to decision block 1300 during which it is determined whether the HTYPE attribute defines a ~irst-in-~ir~t-out ~FIFO) group, a rotate ~roup o~ a Eorward/baclcward ~roup. In the present example, the hunt group is either a FIFO group in the case of one-way outgoing trunks, a rotate group in the case of announce!nent circuits, or a ~orward/backward ~roup in the case of two-way trunks~ In FIFO hunt groups, trunks are assigned in the order that they become idle. In rotate hunt groups, announcement circuits are assigned on a rotational basis so that their use is e~ually distributed. In forward/back-~ard hunt groups, a given switching system always hunts Eor an idle group member starting at the beginning oE ti-e group list while the switching system connected at their other end o~ the trunks, hunts ~or an idle group member starting at the end o~ the group list to reduce the likelihood oE
glare. If HTYPE defines a FIFO group or a rotate group, execution proceeds to block 1310 and the TRKHU~T
state 3010 (FIG. 8) is entered. The TKO~INER relation (FIG.
18) is first read to obtain the attribute QKEY which is then used as a key to read the TKQUE relation (FIG. l8).
The TKQUE relation includes the GPI attribute which defines the global port identity oE the idle gro~p member tc be used for the call. The TKQUE relation also includes the NIM attribute which defines the next idle member of the group to be used the next time the TKQUE relation is accessed. Pointers to the tuples from the TKOWNER relation and the TKQUE relation are stored in the GRPBLK (~IG. 15).
Returning to decision block 1300, if HTYP~
defines a forward/backward yroup, execution proceeds to block 1330 during which the TKSTAT relation (FIG. 18) is read using GRPNUM as a key. The ~KSTAT relation includes the GMFLAG bit map deEining the busy/idle status oE each member of the trunk group. Ratner than storing the entire bit map, a pointer to that bit map is stored in the GRPBLK
(FIG. 15), execution proceeds to block 1350 and the TRK~IU~T
state 3010 (FIG. 8) is entered. During block 1350~ an idle member o~ the trunk group is selected in accordance with the predetermined forward or backward algorithm using the GMFLAG bit map accessible via the stored pointer. rlsing GRPNUM and the selected idle MEMsER as a colnposite key, the 33~
- ~4 -
5~0~PPORT relation (FIG. 16) is read to determine the ~PI.
After the completion of either block 1350 or block 1310, exeeution proceeds to decision block 1370 during which it is determined whether the hunting done in blocks 1350 or 1310 was successful in finding an idle trunk group MZMBER. If no such ME~BER was founcl, execution proceeds to block 1380 and the TRKBUSY state 3011 (FIG. 8) is entered. The secondary route index (SECRI) read Erom the ROUTING relation is made the next route index (RI) and execution returns back to block 1250. ~lowever, if an idle MEMBER was found, the function oE determining the terminating port has been completed and execution procee.ls to bloek 1180 and proceeds through blocks 1190, 1200, 1210, 1220 and 1230 as described above.
System II
A time division switching system which includes a remote switching capability is shown in FIG. 19 through 21, when arranged in accordance with FIG. 22. The system, ~hich is referred to herein as System II, includes a host switching system 800 (FIG. 19 and 20) and four, individual remote switching modules 501, 502, 503 and 504 (FIG. 21).
~ost switching system 800 comprises the time division switching system of FIG. 2, as described above, and two host switching modules 301 and 302, module 301 being connected to input/output terminal pairs P59 and P60 of time-multiplexed switch 10 and module 302 being connected to input/output terminal pairs P61 and P62. In this embodiment, each remote switching module is connected to a host switching module via four bidirectional, digital transmission facilities such as the T1 carrier system disclosed in U. S. Patent No. 4,059,731. Specifically, host switching module 301 is connected to module 501 by transmission facilities 421 through 424 and to moclule 502 by transmission facilities 431 through 434 and host switching module 302 is eonneeted to module 503 by transmission facilities 441 through 444 and to rnoclule 50 by transmission facilities 451 through 454.

3~

Host switching module 301 includes a time-slot ( intercnange unit 311 and an associated control unit 317 which are substantially identical to time-slot interchange unit 11 and control unit 17, respectively. Time-slot interchange unit 311 transmits and receives information via two 256-channel time-multiplexed lines connected to input/output terminal pairs P59 and P60 of time-multiplexed switch 10. Control channel 59 at input/output terminal pair 59 and control channel 60 at input/output terminal pair P60 are used to convey control messaqes between control unit 317 and control distribution unit 31.
The digital facility interfaces 321 through 328 interfacing time-slot interchange unit 311 and the transmission facilities 421 through 424 and 431 ~hrough 43 are substantially identical. Digital facility interface 321 is described in detail in t'ne above-cited U.S. Patent No. 4,550,~04.
~lost swltching mo.lule 302, comprising time-slot interchange unit 312, control unit 31a and digital facility interfaces 331 throu~h 338, is substantially identical to module 301. Control unit 318 and control distribution unit 31 exchange control messages using control channel 61 at input/output terminal pair P61 and control channel o2 at in~ut/output terminal pair P62.
The four remote switchinc~ modules 501 through 504 are substantiall~ iclentical. Each remote switching module includes a facilities inter~ace unit which, in the present embodiment, interfaces with the ~our di~ital transmission facilities from a host swit module. For example, remote switching mo~1ule 501 (F`IG. 21) includes facilities intec~ace unit 505 wnich interfaces with facilities 421 through ~l24 frorn host switchin~ module 301. Facilities interEace unit 505 multiplexes and transrnits the inEormation received on the four transmission facilities connecte-1 thereto, in predetermil1ed channels on a pair of 256-channel time ~L2~
- ~6 -multiplexed lines 515 and 516 connected to a time-slot interchan~e unit 511 and appropriately demultiplexes and transmits information, received from time-slot interchange unit 511 on a pair of 256-channel time-multiplexed lines 513 and 514, in predetermined channels on the four transmission facilities. Facilities inter~ace unit 5~5 is descri~ed in detail in the above-cited U.S. Patent No.
4,550,404. Remote switching module 501 also includes a control unit 517 associated with time-slot lnterchange unit 511 and a plurality of peripheral units, e.g., line units 519 and 520 serving subscriber sets such as sets 52~
and 529 and trunk units 539 and 540 connected to trunks 543 and 544. The relationship of time-multiplexed lines 513 through 516, time-slot interchange unit 511, controlle~
unit 517, line units 519 and 520, subscriber sets 528 and 529, trunk units 539 and 540 and trunks 543 and 544 is substantially the same as that of time-multiplexed lines 13 through 16, time-slot interchange unit 11, control unit 17, line units 19 and 20 subscriber sets 23 and 24, trunk units 39 and 40 and trunks 43 and 44.
In the present embodiment, channel 1 on two of the four transmission facilities interconnecting a given remote switching module, e.g., 501, to host switching module 301 is established as a control channel.
Accordingly, there are eight control channels between the four remote switching modules 501 through 504 and control distribution unit 31. The four control channels received by time-slot interchange unit 311 from transmission facilities 421 through 424 and 431 through 434 are conveyed to time-multiplexed switch 10 in channels 63 an~-J h4 at input/output terminal pair P59 and channels 65 and 66 at input/output terminal pair P60. Similarly, the four control channels received Dy time-slot interchange unit 312 froln transmission facilities 441 through 4~lq and q5l through 454 are conveyed to time-multiplexed switch 10 in channels 67 and 68 A~ input/output tarmlnal ~alr P61 ~n~
channels 69 and 70 at input/outpot terminal pair P62.

~331~

Central control 30 writes the appropriate instructions into control memory 29 such t`nat channels 63 and 64 at input terminal P59, channels 65 and 66 at input terminal P60, channels 67 and 68 at input terminal P61 and channels 6 and 70 at inp~t terminal P61 are always transmitted via output terminal PS~ to control distribution unit 31 an~
such that channels 63 and 64 at input terminal P6~ are transmitted to output terminal P59, channels 65 and 66 at input terminal P64 are transmitted to output terminal P60, channels 67 and 68 at input terminal P64 are transmitted to output terminal P61 and channels 69 and 70 at input terminal P64 are trans~nitted to output terminal P62. In this embodiment, control distribution unit 31 must be able to accommodate 70 of the 256 possible control channels at input/output terminal pair P64 rather than only 58 as in the control distribution unit 31 of Syste~ I.
Although the primary mode of control comm~nication between the remote switching modules and the host switching modules is via the above-described control channels of time-multiplexed switch 10 and control distribution unit 31, control communication also occurs, in a manner described in the above-cited U.S. Patent No.
~,550,404,using what is reEerred to as the derived data link on the transmission facili~ies, e.g., 421 through ~2~. The derived data link is described in U. S. Patent ~,245,3~0.
Distributed Routinq -In contrast to System I where the routing ~unction is centrally perEormed by central control 30, in System II the routing function is distributed to the relnote switching modules 501 through 50~. Recall that in System I
only central control 30 has a routin~ system process, process 2003 (FIG. 7), and its associated data structures, RDBI.K 2101, CFBLK 2102, GRP~LK 2103 and T~R~1BLK 210~ and the centralized database comprising the FIXEDRI relation 2105, the SCRNING relation 2106, the DNTRAN relation 2107, the ROUTING relation ~108, the PORT5ROUP relation 2109, the GROUPPORT relation 2110, the MI~G relation 211, the 33~3~
- ~8 -LNSTAT relation 2112, the TRKG relation 2113, the T'~O~NER
relation 211~, the T~QUE relation 2115 and the TI~STAT
relation 2116. In System II, central control 30 similarly has a routing system process, process 3~03 (FIG. 23), and the associated data structures, RDBLK 3101, CFBLK 3102, GRPBLK 3103 and TERMBLK 3104 and the database comprising the FIXEDRI relation 3105, the SCR~ING relation 3106, the DNTRAN relation 3107, the R~UTI~G relation 3108, the PORTGRO~P reLation 3109, the GROUPPORT relation 3110, the ~HG relation 3111, the LNST~T relation 3112, the TR~G
relation 3113, the TKOWNER relation 3114, the TK~UE
relation 3115 and the T~STAT relation 3116. In addition however, each remote switching module has a routing system process and the associated data structures and database.
For example, remote switching module 501 has routing system process 3602 (FIG. 23), the associated data structures RDBLK 3201, CFBLK 3202, GRPBLK 3203 and TERMBLK 3204 and the database comprising the FIXSDRI relation 3205, the SCRNING relation 3206, the DNTRAN relation 3207, the ROUTING relation 3208, the PORTGROUP relation 3209, the GROUPPORT relation 3210, the M~IG relation 3211, the LNSTAT
relation 3212, the TRKG relation 3213, the TKOWNER relation 321~, the TKQUE relation 3215 and the TKSTAT relation 3216.
The remote switching modules 502, 503 and 504 each similarly has a routing system process and associated data structures and database. In System II, the RDBLK data structure includes a RTSEQ field and a SWREQ ~ield and the MHG and 'rRKG relations each include a MO~ULE EieLd as shown in FIG. 32 and described later herein. In the present embodiment, the FIXEDRI, SCRNING, ROUTING, MHC, and TRKG
relations are redundant between central control 30 and the relnote switching modules 501 through 50~. For each o~
those relations, all the pertinent data ~or the system is stored in central control 30 and in each of the remote switching modules 501 through 50~ as well. The DNTRA~
relation 3107 in central control 30 stores the ~irectory number translation information for all the lines connected ~3~

to the syste~n. ilowever the r)~TRAN relation in each o~ the remote switching modules, e.g., DNTRAN relation 3207 in remote switching module 501, stores the directory number translation information for only those lines connected to that remote switching module. Similarly, the PORTG~O~P
relation 3103 and the ~ROUPPORT relation 3110 in central control 30 store the group translation information for all of the switching system ports. The corresponding relations in each of the remote switching modules, e.g., PORTGRO~P
relation 3209 and GROUPPORT relation 3210 in remote switching module 501, store only suc'n information as needed Eor the ports on that remote switching module. The relations in each remote switching module that are used to store the dynamic ~usy/idle data for multi-port hunt groups i.e., in remote switching module 501, the LNSTAT relation 3212 for multi-line hunt groups and the TKO~I~ER relation 3214, the TXQUE relation 3215 and the TKSTAT relation 3216 for trunk groups, store such data for only those groups that have all of their lines or trunks connected to that remote switching module. The dynamic data Eor all other multi-port hunt groups in the system is stored in the LNST~T relation 3112, the TKOWNER relation 3114, the TKQUE
relation 3115, and the TKSTAT relation 3116 in central contro~ 30. The MODULE field in the MHG and TRKG relations (FIG. 32) defines or each multi-port hunt group, one of the remote switching modules 501 through 50~ or central control 30 as the location of the dynamic data eor that group.
All of the routing system processes, e.g., 3603 and 3602, e~ecute the same routing program, the flow chart for which is shown in FIG. 25 through 29. The state diagram associated with those routing system processes is shown in FIG. 24.
As a first e~ample consider that subscriber set 528 has just gone off-hook~ The off-hook state is detected by scanning within line unit S19. A call processing control system process 3601 (FIG. 23) within remote 33~6 switching module 501 is informed of such off-hook de-tection and, in response, creates an originating terminal process 3604. Originating terminal process 3604 is responsible for controllinq the transmission of dial tone to subscriber set 528 and the subsequent reception of digits dialed from subscriber set 528. Originating terminal process 360~
analyzes the dialed digits to obtain values of the ~refix index ~PI), destination index (DI), digit count (~IGCNT) and treatment (TREA'r) variables. Originating terminal process 3604 determines the value of the screen index (SI) based on the characteristics of the originating line.
Originating terminal process 3604 then formulates a route request message RTREQ in a message buffer. The RTREQ
message (FIG. 1~) has been previously described in the description of System I.
Once the RTREQ message has been formulated, it is transmitted by originating terminal process 360A to routing system process 3602 (FIG. 23) still within remote switching module 501. Routing system process 3602 stores the RTREQ message in RDBLK 3201. Routing systeln process 3602 uses the information in the RTREQ message to access its associated database. Assume t'nat the digits dialed erom subscriber set 523 in this example represent the directory number of subscriber set 529 also connecte~ to remote switching module 501. Accordingly, the D~TRAN
relation 3207 contains the necessary directory number translation information since the terminating port is on the same remote switching module as the originating port.
In that case, routing system process 3602 is able to complete the det~rmination of the terminating po~t.
Routing system process 3602 also selects a time slot commonly available between the receive time-slot interchanger and the transmit time-slot interchanger in time-slot interchange unit 511 to be used to connect tne 3S originating peripheral time slot to the terminating perlphera~ tlme 91~ outlng sy~t~m ~r~c~ 3602 ~hon eormulates depending on the value oE the TER~TYP variabLe, a line termination re~uest (LNTREQ) message, a trunk termination request (TKTREQ) message or an announcement termination request (ANTRRQ) message in a message buffer.
~ach of those messages is shown in FIG. 1~ and has been described hereinO In the present example a LNTREQ message i5 formulated. The PATHDES field of the LNTREQ message includes the definition of the selected call time slot between the receive time-slot interchanger and the transmit time-slot interchanyer. The LNTREQ message formulated in the message buffer is transmitted by routing system process 3602 to a termination system process 3606. In response, process 3606 reads the busy/idle map stored in remote switching module 501 to determine whether subscriber set 529 is presently busy or idle. If subscriber set 529 is idle, process 3606 creates a terminating -terminal process 3605 and forwards the information received in the LNTREQ
message to process 3605 via a line termination (LNTE~M) message (or, in a trunk termination (TKTERM) message or an announcement termination (ANTERM) message, i~ a TKTREQ
message or an ANTREQ message had been received).
Terminating terminal process 3605 effects the transmission of ringing voltage to subscriber set 529, and the transmission of audible ringing tones back to subscriber set 528. Terminating terminal process 3605 then transmits a SETUPCOMP message to originating terminal process 360 including the now completed path descriptor PAT~IDES.
Originating terminal process 360~ and terminating terminal process ~605 write information in the control ~AM in time-slot interchange unit 511 respectively defining the mapping between the originating peripheral time slot and the commonly available time slot selected by routin~ system process 3602 and the mapping between the terminating peripheral time slot and the selected commonly available time slot. The communication path between subscriber sets 528 and 529 has now been set up.
~ very slmila~ sc~nario t:o ~ha~ ~us~ de~c~ib~d with respect to FIG. 23 would also apply ~Eor calls to 33~

multi-port hunt groups controlled within remote switching module 501, i.e., groups of lines or trunks haviny all members connected to remote switching module 501.
As a second example, assume that the digits dialed by subscriber set 528 represent the directory number of subscriber set 529 as before, but that subscriber set 529 is part of a multi-line hunt group not control~ed by remote switching module 501 but instead controlled by central control 30. Call processing control system process 3601 (FIG. 30) is informed oE the off-hook detection as before and creates an originating terrninal process 3611. Originating terminal process 3611 then transmits a RTREQ message to routing system process 3602, which stores the received RTREQ message in RDBLK 3201.
Routing system process 3602 then executes its routing program (FIG. 25 throuyh 29~ ~hen program execution reaches the point that the LNSTAT relation 3212 is to be accessed, the dynamic data defining the busy/idle status of the multi-line hunt group including subscriber set 529 is not present. Therefore a generalized routing message RTGEN (FIG. 32) is formulated in the message bufEer. The RTGEN message includes the PATHDES, RTGDATA and ORIGr~PI
fields described before with respect to the RTREQ message.
The RTGEN message also includes a REQT~M field that defines the state of the routing program to be entered when routing is continued by the next processor and the value of the key required to read the next relation. The ~G~N
message further includes the RTCONTDA field which deEines values of a number of variables which have already been determined by routing system process 3602, for example variables stored in CFBLK 3202, in order that unnecessary 0rk is not repeated when routing is continued. In addition, the RTG~ message also includes an ORIGGPI field and a TERMGPI field which store the global port identities 5 of the originating port and the terminating port, iV~ g ~o~0 the T~M~PI ~eld cannok ~e killecl in until after the determination of the terminating port is 33~

completedO The RTGEN message is transmitted to routing system process 3603 in central control 30 which enters its routing program at the point defined by the REQT~RM field.
Informatio~ from the RTGEN message is stored in the appropriate Elelds in RDBLK 3101 and CFBLK 3102. Since the dynamic data defining the busy/idle status of the multi-line hunt group including subscriber set 529 is present in the LNSTAT relation 3112, routing system process 3603 is able to complete the determination of the terminating port.
Assume that subscriber set 23 connected to switching module 201 is a member of the same multi-line hunt group that subscriber set 529 is in and that subscriber set 23 is assigned to the call as a result of the hunting e~fected by routing system process 3603. Routing system process 3603 selects an available network time slot to be used for the call and, since the terminating port is connected to a different switching module than the originating port, writes information defining the selected time slot into control memory 29. Routing system process 3603 then transmits an RTGEN message, which includes the selected network time slot in its PATHDES field and which also includes a completed TERMGPI field, to a termination system process 3610 in switching module 201. In response, process 3610 reads a busy/idle map stored in switching module 201 to determine whether subscriber set 23 is presently busy or idle~ If subscriber set 23 is presently idle, process 3610 creates a terminating terminal process 3612 and forwards the information in the RTGEN message to process 3612 via a l.NTERM message. Terminating terminal process 3612 e:Efects the transmission of ringing voltage to subscriber set 23 and the transmission oE an E-bit continuity siynal and audible ringing tones to host switchlng module 301.
Terminating terminal process 3612 then transmits a SETUPCOMP message to originating terminal process 36l1 in remote switching module 501. In response, originatinq terminal process 3611 ef~ects the selection Oe a t.irne slot Eor the call on one of the transmission acilities ~1 ~J~33~
- 5~ -through 42~ (FIG. 20), e.g., 421, and also effects a control communication with host switching module 301 such that time-slot interchange unit 311 connects the selected call tlme slot on transmission facility 421 to the selected network time slot of time-multiplexed switch 10. Such control cornmunication with host switching module 301 is described in the above-cited Chodrow et al. application 493,683. Once the E-bit continuity signal Erom switching module 201 is received by remote switching module 501 via host switching module 301, originating terminal process 3611 writes information in the control RAM oE time-slot interchange unit 511 defining the mapping between the originating peripheral time slot and the selected call time slot on transmission facility 421. Similarly, once the E-bit continuity signal is received by switching module 201,terminating terminal process 3612 writes information in the control RAM 55 of time-slot interchange unit 11 defining the mapping between the terminating peripheral time slot and the network time slot. The communication path between subscriber sets 528 and 23 has now been set up .
A very similar scenario to that just described with respect to FIG. 30 would also apply to calls from remote switching module 501 to individual lines not connected to remote switching module 501 and also to calls to trunk groups not controlled by remote switching module 5~1.
As a third example~ consider that subscriber set 24 connected to switching module 201 has ~ust gone off-hook. Call processing control system process 3609(FIG. 31) is informed of the off-hook detection and, in response, creates an originating terminal process 3621.
Originating terminal process 3621 analyzes the digits dialed by subscriber set 24 to obtain values of PI, DI, DIGCNT and TREAT, and determines SI based on the ~haracteri~tics of ~he ori~inatin~ line. Note that switching module 201 does not have a routing system 3~

process. T~erefore, originating terminal process 3621 transmits a RTREQ message to routing system process 3603 in central control 30. Routing system process 3603 stores the RTREQ mess~ge in RDBLK 3101 and begins the execution of its routlny program (FIG. 25 through 29). ~ssume tha~ t~e digits dialed by subscriber set 2~ require the use oE a group of trunks all of which are connected to remote switching module 501, e.g., trunks 5~3 and 5~. Assume urther that the trunk group is a first-in-Eirst-out (FIFO) group. Since the group is controlled by remote switching module 501 rather than central control 30, the dynamic data defining the busy~idle status of the trunks in the trunk group is not present in the TKOWNER relation 311~ and the ~KQUE relation 3115 in central control 30. Therefore, when the execution of the routing program reaches the point that the TKOWNER relation 3114 and the TKQUE relation 3115 are to be accessed, a R~'GEN message is Eormulated since the required data is not available. q`he ~ODULR field of the TRKG relation 3113 de~ines that the dynamic data for the group is located in remote switching module 501. Routing system process 3603 selects the network time slot through time-multiplexed switch 10 to be used ~or the call and then transmits the RTGEN message to routing system process 3602 in remote switching module 501. Routing system process 3602 enters its routing program at the point defined by the REQTERM field in the R'rGEN message. Inormation from the RTGEN message is stored in the appropriate fields in RDBLK 3201 and ~FBLK 3202. Since the dynamic data defining the busy/idle status of the required trunk group is present in the TKOW~ER relation 321~ and the TKQ~E relation 3215 in remote switching module 501, routing system process 3602 is able to complete the determination of the terminating port.
~ssume that trunk 5~3 is assigned to the call as a result of the hunting efEected by routing system process 3602.
Routing system process 360~ then transmits a RTGEN message, including a completed ~ERMG~I field, to termination system process 3606. In response, process 3606 creates a ~;338~

terminating terminal process 3622 and forwards the inormation in the R~GEN message to process 3622 via a TKTERM message. Terminating terminal process 3622 determines the terminating peripheral time slot to be used for communication with trunk 543. Terminating terminal process 3622 effects a selection of the call time slot on one of the transmission facilities 421 through 424 (FIG.
20), e.g., 422, and also e~fects a control communication with host switching module 301 such that time-slot interchange unit 311 connects the selected call time slot on transmission facility 422 to the selected network time slot of time-multiplexed switch 10. Terminating terminal process 3622 effects the transmission of an E-bit continuity signal to switching module 201 via host switching module 301 and also transmits a SET~PCOMP message to originating terminal process 3621 in switching module 201. In response to the SET~PCOMP message, originating terminal process 3621 begins the transmission of an E-bit continuity signal back to remote switching module 501 via host switching module 301. In response to the E-bit continuity signals, the originating terminal process 3621 and the terminating terminal process 3622 write information in the respective control RAMs such that the originating peripheral time slot is mapped to the network time slot and the terminating peripheral time slot is mapped to the selected call time slot on transmission facility 422. The communication path between subscriber set 23 and trun~ 543 has now been completed.
h very similar scenario to that just described with respect to FIG. 31 would also apply to calls from switching module 201 to multi-line hunt groups controlled b~ remote switching module 501. Since the DNTRAN relation 3107 stored in central control 30 has the directory number translation information for all the lines of the system, the determination of the terminating port can be completed by rou~in~ ~y~tem proc~s 3603 in c~ntr~l cont~ol 30 ~or all calls from switching module 201 to individual lines.

33~

The routing program of FIG. ~5 through 29, which is stored in central control 30 and in each o the remote switching modules 501 through 504 as ~ell, is a modification o the routing program of FIG. 9 through 13 used for centralized routing in System I. Accordingly blocks o~ the flow charts where the same or similar functions are performed are identified by the sa~e number in both Elow charts. Similarly, the state diagram of FIG.
24, which includes one additional state and number of additional state transitions with respect to the state diagram of FIG. 8, has the corresponding states identified by the same number.
The routing program of FIG. 25 through 29 is described herein in terms of the required modifications of the routing program of FIG. 9 through 13~ The routing program of FIG. 25 through 29 is initiated from the START
state 3001 (FIG. 24) upon the receipt by a routing system process of either a RTREQ message or a RTGEN message.
During block 1010 (FIG. 25)/ the received message is stored in the RDBLK. The RTGSEQ f ield ( FIG . 32) of the RDBLK is used to define whether the present execution of the routing prograrn was in response to a RTREQ message or a RTGEN
message. E~ecution proceeds to decision block 1020 where a branch occurs depending on the type of received message.
If the received message was a RT~EQ message, execution proceeds in the same manner as previously described with respect to the routing program of FIG. 9 through 13, unless one oE the ~ccessed relations does not have the reqllested data present. Recall that the FIXEDRI, SCRNING, RO~TING, MHG and TRKG relations are redundant between central control 30 and the remote switching modules 501 through 504. Thereoret barring errors, attempted accesses oE
those relations should always be successful. However, the DNTRAN relation in central control 30 stores the directory number translation information for all the lines connected to the system, while the DNTRAM relation in each o~ ~he remote swltching modules 501 through 504 stores the 33~

directory number tran~lation information for only those lines connected to that remote switching module. ThereEore attempts to access the DNTRAN relation in a remote switching module will only be successful for the lines connected thereto. This is reflected in the flow chart by the addition of decision block 1080 during which it is determined whether the access of the DNTRAN relation attempted during block 1070 was successful. IE the needed data was not available, execution proceeds from decision block 1080 to a block 1400 and the SWITCH state 3015 (FIG.
24) is entered. During block 1400, a Sl,~REQ variable is stored in the RDBLK (FIG. 15) defining the program state of the state diagram of FIG. 24 to be entered by the next routing system process. When block 1400 is reached from decision block 1080, the stored SWREQ variable defines the DNTRAN state 3004 (FIG. 24) as the program state to be entered by the next routing system process. Execution then proceeds to block 1190 and the program moves from the SWI~CH state 3015 to the INTEGRITY state 3012 (FIG. 2~).
During block 1190, the next processor is determined. If the present processor is in a remote switching module, the next processor is always central control 30. I~ the present processor is central control 30, the MOD~LE field in the TERMBLK is used to determine the location of the next processor. The status table is checked to verify that the next processor is operational and execution proceeds to block 1200. During block 1200 the N~7CONN state 3013 is entered. In a remote switching module, if the terminating port has been determined without commul1icatincJ
with central control 30, the selection o~ the time slot commonly avallable between the receive time-slot interchanger and the transmi~ time-slot interchanger to be used to connect the originating peripheral time slot to the terminating peripheral time slot is mac3e during block 1200.
In central control 30, the commonly available network time slot ~or ~he call i~ s~l~q~od ~n~, ie ~h~ c~ n ln~
module call, information is written in control memory 29 to :~g~33~

set up the network path during block 1200. Execution proceeds to block 1210 and the type of message to be transmitted to the next processor is determined. The RTGSEQ field in the RDBLK is used to determine whether the present execution of the routing program resulted from the receipt of a RTREQ message or a RTGEN message. I~ the execution resulted from the receipt of a RTGEN message, then a RTGEN message is constructed. If the execution resulted from the receipt oE a RTREQ messa~e but a switch has occurred, again a RTGEN message is constructed. If no switch has occurred, then the TERMTYP variable in the RTGDATA field (stored as part of the TEXT field in the RDBLK) is used to determine whether a LNTREQ, TKTREQ, or ANTREQ message is constructed. E~ecution proceeds to block 1220 during which the appropriate message type is constructed using data in the RDBLK, CFBLK and TER~BLK and the message is stored in the message buffer. Execution then proceeds to block 1230, the message in the message buffer is transmitted, and execution concludes in the DONE
state 301~ (FIG. 24).
Recall that the relations in each remote switching module that are used to store the dynamic busy/idle data for multi-port hunt groups, i.e~, multi-line hunt groups or trunk groups, store such data for only those groups that have all of their lines or trunks connected to that remote switching module. Also recall that the dynamic data for all other multi-port hunt ~roups in the system is stored in central control 30. ~rhis means that the dynamic data Eor any given hunt group is only stored in one location. Therefore, while a failure in accessing the DNTRAN relation should only occur in a remote switching module, failures in accessin~ the LNSTAT, TKOWNER, TKQUE or T~STAT relations may occur either in a remote switching module or in central control 30. The possibility of a failure in accessing the LNSTAT relation i9 re~lected in the pro~ram ~low chart by including the decision bloc)c 1130 after block 1120 when access oE the >

~Z~33~

LNSTAT relation is attempted~ If the re~uested data from the LNSTAT relation is not available, execution proceeds from block 1130 to block 1390. During block 1390, the MODULE field which was obtained during block 1110 when the MHG relation (FIG. 32) was rea(~, is stored in the TERMBLK
and execution proceeds to block 1400. In block 1400, the SWITCH sta~e 3015 (FIG. 24) is entered and the S~REQ
variable defining the MLGPREHUNT state 3005 (FIG. 24) as the state to be entered by the next routing system process, is stored in the RDBLK. Execution then proceeds through blocks 1190, 1200, 1210, 1220 and 1230 and a RTGE~ message is constructed and transmitted as before.
Similarly, decision block 1320 is inserted aEter block 1310 where the attempted access oE the TKOWNER and TKQUE relations occurs, and decision block 1340 is inserted after block 1330 where the attempted access of the TKSTAT
relation occurs. Execution proceeds from either oE the decision blocks 1320 or 1340, via blocks 1390, 140Q, 1190, 1200, 121Q, 1220 and 1230 as before. In both cases, during block 1400, the SWREQ variable stored in the RD~LK defines the TRKPREHUNT state 3009 (FIG. 24) as the program state to be entered by the next routing system process.
What has just been described is the e~ecution of the routing program of FIG. 25 through 29 in response to the receipt of a RTREQ message. When a RTGEN message is received, execution proceeds from decision block 1020 to block 1410. During block 1410, the REQTERM field in the RTGEN message is usded to determine the program state in which execution is to begin. The REQTERM field also stores the value of the key to the first relation to be accessed.
The RTCONTDA field in the RTGEN message con~ains the values of other needed variables such that work already completed in one routing system process need not be repeated in the next routing system process. Such inEormation is subse~uently filled into the CFBLK. In the present embodiment, the REQTERM field deines the DNTR~N state 300~, the MLGPREHUNT state 3005 or the TRKPRE~UNT state ~33~

~ 3009 as the program state tc, be entered. As shown in the ( flow chart, execution proceeds from block 1410 to block 1070, block 1110 or block 1290 in accordance with the definition in the REQTER~ field.
It is be understood that although in System II, the routing function is distributed to only the remote switching modules, the concept o~ distributed routing can be extended by distributirlg the routing function in a similar manner to all of the system switching modules.
System III
A time division switching system referred to herein as System III, whieh represents a modification to System II in that the remote switehing modules 501, 502, 503 and 504 are interconnected in a grouping known as a cluster, is shown in FIG. 33 through 35, when arranged in aeeordance with FIG. 36. In System III, each pair of remote switching modules is interconnected by a digital, bidireetional transmission facility such as the above-mentioned T1 carrier system. Module 501 (FIG. 35) is connected by transmission facilities 425, 426 and 427 to modules 502, 503 and 504, respectively, module 502 is connected by transmission facilities 435 and 436 to modules 503 and 504, respectively, and modules 503 and 504 are interconnected by transmission Eacility 445. In System III, each facilities interface unit, e.g., 505, interfaces with seven transmission facilities.
As in System II, the primary mode of control communication between two remote switching modules is again via the time-rnultiplexed switch 10 control channels and control distribution unit 3l. ~lowever, since the cluster of remote switching modules operates as an integrated entity even in the stand-alone mode, control communication is also possible on the transmission ~acilities directly interconnecting the remote switching modules. Such control communication is described in detail in the above-cited U~S. Patent No. 4,550,404. As describ~d in that Patent, the control colml~unica~ion is achieved using 33~i one of the 24 channels on the directly interconnecting transmission facility or using the derived data link on that facility.
As was also true in System II, the routing Eunction in System III is distributed to the remote switching modules 501 through 504. Each remote switching module has a routiny system process,~its associated data structures RDBLK, CFBLK, GRPBLK and TER~BLK and database comprising the FIXEDRI, SCRNING, DNTRAN, ROUTING, PORTGROUP, GROUPPORT, MHG, LNSTAT, TRKG, TKOWNER, TKQ~E and T~STAT relations. All of the routing system processes execute the came routing program as in System II, the flow chart of the program being shown in FIG. 25 through 29.

The state diagram associated with those routing system processes is shown in FIG. 24. As in System II, the FIXEDRI, SCRNING, ROUTING, M~ and TRKG relations are redundant between central control 30 and the remote switching modules 501 through 504~ For each of those relations, all the pertinent data for the system is stored in central control 30 and in each of the remote switching rnodules 501 through 504 as well. Again the DNTRAN
relation in central control 30 stores the directory number transla~ion information for all the lines connected to the system. However, in contrast to System II where the DNTRAN
relation in each remote switching module stored the directory number translation information for only the lines connected to that remote switching module, in System III, the DNTR~N relation in each remote switching module stores the directory number translation inEormation for all the lines connected to the entire cluster oE remote switching modules 501 through 504. Thus for calls originating on a given remote switching module to an individual line connected to any remote switching module in the cluster, the function of determining the terminating port can be completed by the routiny system process in the given relnote ~wi~ching modul~ h~ ~O~TGROUP and GROUPPO~T ~ela~ion~
stored in the remote switching modules also store ~Z~L3~38~

information for all the ports on the cluster of remote switching modules. As in System II, the relations in each remote switching module that are used to store the dynamic busy/idle data for multi-port hunt groups~ i.e.l the LNSTAT
relation for multi-line hunt groups and the TKO~NEX, TKQ~E
and TKSTA~ relations for trunk groups, store such data for only those groups that have all of their lines or trunks connected to one remote switching module. Therefore, for a call originating on a first remote switching module to a multi-port group connected to a second remote switching module, the routing system process in the first remote switching module can execute its routing program up until the point that the dynamic data is accessed. A RTGEN
message (FIG. 32~ is then transmitted to the routing system process in tne second remote switching module which completes the determination of the terminating port.
Twenty-three of the channels or time slots on a given transmission facility between two remote switching modules, are used for calls between those modules. The 24th channel is used to convey the signaling bits for the other 23 channels. (In the present embodiment of System III, the derived data link on the transmission ~acility, rather than one of the 23 channels, is used for control communication in the stand-alone mode of operation.) Each of the two remote switching modules is the controller of 11 or 12 of the 23 time slots on the transmission facility therebetween. For example, remote switching module 501 is the controller of time slots 1 through 12 on transmission facility 435 and remote switching module 502 is the controller of time slots 13 through 23. Each remote switching module maintains a time slot status map defining the busy/idle status of each time slot on each transmission facility connected thereto. If remote switching module 501 is required to assign a time slot on transmission facility 435 to a call, it first determines whether one of the time ~ h~u~h 12 ~ ~v~ by ~ 0 ~lm~ ~lo~
status map. If one or more of the time slots 1 through 12 ~2~338~i is available, it assigns one to the call. However, if none is available, remote switching module 501 informs remote switching module 502 of the required assignment and module 502 reads its time slot status map to determine whether one of the time slots 13 through 23 is available. If one or more of the time slots 13 throuyh 23 is available, one of the available time slots is selected for the call. If none is available, remote switchiny modules 501 and 502 communicate with central control 30 to establish the call.
The call is completed via one of the transmission facilities ~1 through 424, one of the transmission facilities 431 through 434, and host switching module 301.
Further if the remote switching modules were connected to different host switching modules as, for example, remote switching module 501 connected to host switchin~ module 301 and remote switching module 503 connected to host switching module 302, the call would be completed using a network time slot of time-multiplexed switch 10.
Sequence calls are calls that are not completed to the original terminating port but instead are completed to another terminating port. In System III, sequence calls are provided in an efficient manner by reducing such calls to simple calls, i.e., calls involving only two ports, before the connection to the final terminating port is completed. This avoids the complexity that would otherwise result if the switching module serving the ultimate terminating port had to process the call diEEerently depending on whether the call is a sequence call or a simple call.
Two examples of sequence calls are forwarded calls, i.e., calls which are to be completed to a customer-provided number regardless of whether the first number is busy or idle, and series completion calls which are to be completed to another number only when the first number is busy. To minimize the number of inter-module control mes~ages, ~he call se~up sequ~nae usec1 ln 9y~tem III d~e~a the assignment of time slots on the transmission facilities ~33~

interconnecting remote switching modules until the final terminating port is determined. The remote switching module connected to that terminating port completes the call to the terminating port without being aware of whether the call is a simple call or a sequence call. The property which allows sequence calls to be recluced to simple calls is referred to herein as closure.
As a Eirst example o~ a sequence call in System III, consider that subscriber set 5~8 connected to remote switching module 503 dials the directory number oE
subscriber set 538 connected to remote switching module 502. In remote switching module 503 (FIG. 37), an originating terminal process 4003, which was created by a call processing control system process 4001 in response to the detection o~ off-hoo~ status, receives the dialed directory number. (For simplicity, remote switching module 504 and the transmission ~acilities connected to module 50~ are omitted in FIG. 37). Originating terminal process ~003 analyzes the dialed digits to obtaln values of the pre~ix index (PI), destination index (DI), digit count (DIGCNT) and treatment (TREAT) variables. Originating terminal process 4003 also determines the value of the screen index (SI), based on the characteristics of the originating line. Originating terminal process ~003 then formulates a route request message RTREQ in a message buffer. The RTREQ message (FIG. 14) has been previously described in the description of System I.
Once the RTREQ message has been Eormulated, it is transmitted to a routing system process ~002 within remote switching module 503. Routing system process 4002 stores the RTREQ message in its associated RDBLK. (Each routing system process has the associated data structures RDBLK, CFBLK, GRPBLK and TERMBLK ancl the database comprising the ~IXEDRI, SCRNING, DNTRAN, ROUTING, PORTGROUP, GRO~PPORT, MHG, LNSTAT, TRKG, TKOWNER, TKQUE and TKSTAT relations).
Routing system pro~ess ~002 uses the inEorma~lon in the RTREQ message to access its associa~ed clatabase. Since the 33~6 DNTRAN relation stored in remote switching module 503 includes the directory number translation information ~or all lines connected to the remote switching modules 501 through 504, routing system process 4002 is able to complete the determination of the global port identity (GPI) o~ the port connected to subscriber set 538. The MODULE field of the GPI defines that subscriber set 538 is connected to remote switching module 502. However, remote switching module 503 makes no call time slot assignment on transmission facility 435 connecting module 503 to module 502 at this time. Routing system process 4002 transmits a generalized routing request tRrGEN) message, described above and shown in FIG. 32 r to a termination system process 4005 in remote switching module 502. Process ~005 responds by accessing a PORTSTATUS relation shown in FIG. 32, using the GPI as a key. The PORTSTATUS relation includes the GPI
field, a BUSY/IDLE ~ield defining the busy/idle status of the port defined by the GPI field, a CF Eield that defines whether call forwarding is in ef~ect for that port and, iE
so, the direc-tory number to which calls must be forwarded, and a SC field that similarly defines whether calls are to be series-completed and the appropriate directory number.
The PORTSTATUS relation in a given remote switching module contains the pertinent data for all ports on that remote switching module. For the present example, assume that the tuple of the PORTSTATUS relation for the line connected to subscriber set 538 defines that call ~orwarding is in effect and that calls are to be forwarded to a directory number which, as will subse~uently be determined, is associated with subscriber set 528 connected to remote switching module 501. In response to reading the PORTS~AT~ relation, termination s~stem process ~005 creates a call forwarding terminal process 4007 and transmits a call forwarding (CF) message to process ~007.
The CF message includes all the information concerning the ori~ination o~ ths aall that was pra ent in ~he RT~EN
message received Erom routing system process 4002 in remote 33~6 switching module 503. In response to the CF message, call Eorwarding terminal process 4007 effects the transmission of a short-duration ringing voltage to subscriber set 53 to prod~ce what is referred to as a ping ring. The ping ring noti~ies anyone at su~scriber set 538 that an incoming call is being forwarded. Call Eorwarding terminal process 4007 then transmits a reroute (RERTE) message to a routiny system process 4006 in remote switching module 502~ At this point, the call has been reduced to a simple call.
Routing system process ~006 responds to the RERT}3 message in the same manner that it would to a RTREQ message and, since the terminating port is connected to one of the cluster of remote switching modules 501 through 504, routing system process ~006 completes the determination of the GPI of the terminating port connected to subscriber set 528. The MODULE field of the GPI defines remote switching module 501. Therefore routing system process 4006 transmits a RTGEN message to a termination system process 400~ in remote switching module 501. It is important to note that because of the closure property, the RTGEN message received by process ~008 contains the same information concerning the call origination that was present in the RTGEN message transmitted by routing system process 4002. ~herefore, the response of termination system process 400~ is the same whether the call is a simple call or a sequence call. Termination system process 4008 reads the PORTST~TUS relation (FIG. 32) and, in accordance with the present examp]e, determines that subscriber set 528 is presently idle. Process ~008 then creates a terminating terminal process ~010 and ~orwards the call information thereto in a LNTERM message (FIG. 1~) previously described herein. At this point, knowing the final terminating port for the call and also knowing that the originating port is connected to remote switching 3S mod~le 503, process ~010 reads the time slot status map to determine the busy/idle status of time slots 1 through 12 on transmission facility ~26 interconnecting remote - 68 - ~Z~3~

switching modules 501 and 503. Assuming that one the 12 time slots is a~ailable~ process 4010 makes the time slot assignment for the call. (The alternatives when none of the 12 time slots are available are discussed above.) The remainder of the call setup sequence is completed in the typical fashion, including the transmission oE a SETUPCOMP
message to originating terminal process 4003 in remote switching module 503 and the mapping of the originating peripheral time slot and the terminating peripheral time slot to the call time slot on transmission facility 426.
Note that only three messages between remote switching modules were required. Four messages would be required if the call setup sequence is returned to remote switching module 503 to deallocate a previously assigned call time slot after learning that call forwarding is in effect.
As a second example, assume that subscriber set 548 dials the directory number associated with subscriber set 538 as before, but that the appropriate tuple of the PORTSTATUS relation indicates that calls are to be series-completed to the directory number of subscriber set 23connected to switching module 201. The example is similar to the previous example including the creation of an originating terminal process 4021 (FIG. 38)~ the determination of the original terminating port by routing system process 4002 in remote switching module 503 and the transmission of the RTGEN message to the termination system process 4005 in remote s~itching moclule 502. However, in this case, process 4005 learns upon reading the PORTS~ATrJS
relation, that subscriber set 538 is presently busy and that calls to subscriber set 538 are to be series-completed to the directory number associated with subscriber set 23.
Process 4005 therefore creates a series-completlon terminal process 4022 and transmits a series-completion (SC) message including the origination information to process ~022. Process 4022 subse~uently forwards the origlnation ln~orma~ion ~n~ the serle~compl~tlon information to routing system process 4006 in a ~ERT~

33~

message. At this point, the call has been reduced to a simple call. Since the directory number translation information pertaining to subscriber set 23 is not present in the DNT~AN relation stored in remote switching module 502l the execution of the routing program (FIG. 25 throu~h 29) results in the transmission of a RTGEM messa~e because the attempted access of the DNTRAN relation fails. As has been described with respect to System II, the RT~EN message includes the REQTERM field that defines the state of the routing program to be entered when routing is continued by the next processor and the value of the key required to read the next relation. The RTGEN message further includes the RTCONTDA field which defines values of a number of variables which have already been determined by routing system process 4006 in order that unnecessary work is not repeated when routing is continued. The RTGEN message is transmitted to a routing system process 4004 in central control 30. Since the DNTRAN relation stored in central control 30 has the directory number translation information ~or all the lines of the system, routing system process 4004 completes the determination of the terminating port.
Since routing system process 4004 knows that the originating port is on remote switching module 503 connected to host switching module 302, and that the terminating port is on switching module 201, routing system process 4004 assigns the network time slot (through time-multiplexed switch 10 connecting switching module 201 and host switching module 302) to be used for the call and sets up the path accordingly. Routiny system process 4004 then transmits a RTGEN message including the updated PATHDES
field and the completed TERMGPI field, to a termination system process 4011 in switching module 201. Assumig that subscriber set 23 is presently idle, ~rocess 4011 creates a terminating termina] process ~02~ and transmlts a LNTERM
message thereto. The balance of the call setup sequence lnclufles ~h~ ~rRnsmisslon ~ UPCO~ ma~ag~ to originating terminal process 4021 in remote s~itching L33~

module 503, the mapping of the terminating peripheral time slot to the assigned network time slot of time-multiplexed switch 10, the assignment of a time slot for the call on one of the transmission facilities ~41 through 49~
interconnecting remote switching module 503 and host switching module 302, e.g., transmission facility 4~1, the mapping of the originating peripheral time slot to the call time slot on transmission facility 441 anc] the mapping of the call time slot on transmission facility 441 to the assigned network time slot of time-multiplexed switch 10.
As a third example, consider that subscriber set 548 connected to remote switching module 503 dials the directory number associated with subscriber set 23 connected to switching module 201. Further assume that the appropriate tuple of the PORTSTATUS relation stored in switching module 201 defines that call forwarding is in effect for subscriber set 23 and that calls are to be forwarded to the directory number associated with subscriber set 538 connected to remote switching module 5Q2~ An originating terminal process ~031 (FIG. 39) is created and a RTREQ message is transmitted thereby to routing system process 4002 in the above-described manner.
Since the DNTRAN relation stored by remote switching module 503 does not include the directory number translation information for subscriber set 23 r the attempted access of the DNTRAN relation when the routing program is executed by routing system process 4002 fails, and a RTGEN message is transmitted to routing system process 4004 in central control 30. Routing system process ~00~ completes the determination of the GPI of the terminating port connected to subscriber set 23. Routing system process ~004 also assigns a network time slot of time-mul-tiplexed switch 1 a between switching module 201 and host switching module 302 for the call and establishes the path. Routing system process 400~ then transmits a RTGEN message including the upclate~ PATHDES ~ield and the compl~ted TERMGPI ~ield to ~33~

terminat.ion system process 4011 in switching module 201.
In response, process 4011 reads the PORT.STATUS relation and determines that calls to subscriber set 23 are to be forwarded to the directory number associated with subscriber set 538. Process 4011 then creates a call forwarding terminal process 4032 and transmits a CF message thereto. Call Eorwarding terminal process 4032 e:Efects the transmission of the short duration ringing voltage to subscriber set 23 and then transmits a RERTE message back to routing system process 4004 in central control 30. ~n response to the RERTE message, routing system process 4004 deallocates the previously assigned network time slot, and completes the determination of the GPI oE the terminating port connected to subscriber set 538. At this point, the call has been reduced to a simple call. The MODULE field of the GPI defines that the terminating port is on remote sw.itching module 502. Knowing that the originating port is on remote switching module 501, routing system process 4004 does not assign a new network time slot for the call but transmits a RTGEN message including the completed T~R~IGPI
field to termination process 4005 in remote s~itching module 502. Process ~005 reads the PORTSTATUS relation to determine that subscriber set 538 is presently idle and then selects an available time slot of the time slots 1 through 12 on the transmission facility 435 interconnecting remote switching modules 502 and 503, as the call time slot. Process 4005 creates a terminating terminal process 4033 and transmits a LNTERM message thereto. ~he balance of the call setup sequence proceeds in the normal rnanner including the transmission of a SET~PCOMP messa~e to originating terrninal process 4031 in remote switching module 503, and the mapping of the originating peripheral time slot and the terminating peripheral time slot to the call time slot on transmission facility 435.
Since each remote switching module is able to complete the terminatlng port determination ~unction Eor calls to all individual lines connected to the cluster oE

~331~i modules 501 through 504, an originating remote switching module could, ~fter determining a terminatin~ remote switching module, immediately select and allocate the call channel on the interconnecting transmission facility. This is done in an alternative embodiment o~ System III. Once the terminatiny remote switching module determines that the call is a sequence call, however, the setup se~uence is returned to the originating remote switching module so that the previously allocated call channel can be deallocated in order to reduee the eall to a simple eall.
As an example of a sequence call in the alternative embodiment of System III, consider that subseriber set 548 conneeted to remote switehing module 503 dials the direetory number of subseriber set 538 connected to remote switehing module 502. In remote switching module 503 (FIG~ ~0), an originating terminal process 4043, which was created by a eall processing eontrol system process ~001 in response to the detection o~ o~f-hook status, reeeives the dialed direetory number. Originating terminal proeess 4043 analyzes the dialed digits to obtain values of PI, DI, DIGCNT and TRE~T. Originating terminal process 4043 also determines the value of SI based on the eharaeteristics of the originating line. Originating terminal proeess 4043 then transmits a RTRE~ message to routing system process 4002.
Routing system process 4002 uses the information in the RTREQ message to aecess its associatecl database.
Since the DNTRAN relation stored in remote switching module 503 includes the direetory number translation information for all lines eonnected to the remote switehing modules 501 through 504, routinc~ system process 4002 is able to eomplete the determination of the GPI of the port eonnected to subseriber set 538. The MODULE Eield of the GPI defines that subscriber set 538 is conneeted to remote switching module 502. ~outing system proeess 4002 then determines whether one o~ the channel~ 13 through 23 on trAnsmission facility 435 intereonnecting modules 503 arlc1 502 is ~2~3~

available. For the present example, assume that channel 13 is available and is selected by process 4002. Routing system process 4002 transmits a RTGEN message (including the selected channel l3) to a termination syste,n process 4005 is remote switching module 502. Process 4005 responds by accessing the PORTSTATUS relation using the GPI as a key. Assume that the tuple of the PORTSTATUS relation for the line connected to subscriber set 538 defines that call forwarding is in effect and that calls are to be forwarded to a directory number which, as will subsequently be determined, is associated with subscriber set 528 connected to remote switching module 501. In response to reading the PORTSTATUS relation, termination system process ~005 creates a call forwarding terminal process 4047 and transmits a call forwarding (CF) message to process 4047.
In response to the CF message, call Eorwarding terminal process 4047 effects the transmission of a short-duration ringing voltage to subscriber set 538 to produce the ping ring. Call ~orwarding terminal process 4047 then transmits a RERTE message to routing system process 4002 in remote switching module 503. Routing system process 4002 completes the determination of the GPI of the terminating port connected to subscriber set 528. The MODULE field of the GPI defines remote switching module 501. Routing system process 4002 then deallocates the previously allocated call channel 13 of transmission facility 435. At this point the call has been reduced to a simple call.
Routing system process ~002 next determines whether one o~
the channels 13 through 23 is available on transmission facility ~26 lnterconnecting modules 503 and 501. Assume that channel 18 is available and is selected and allocated to the call by routing system process 4002. Routing system process 4002 transmits a RTG~N message (including the the selected call channel 18) to termination system process ~008 in remote switching module 501. It is important to not0 ~hat the ~TGE~ mess~ge rece~ved by proce~s ~00 contains the same informati.on concerning the call ~Z,L~33B,~

origination that was present in the RTGEN message received by termination system process ~005. The balance o-E the call setup sequence proceeds in the same manner as in the previous example described with reference to FIG. 37.
System IV
System IV (FIG. 41) uses substantially the same hardware architecture as System I (FIG. 2) previously described herein. However, in Sys-tem IV all of the call processing functions except selecting the network time slot and setting up the time-multiplexed switch 10 path Eor in-ter-mod~le calls are distributed to the switching modules rather than involving the system central control. In particular, the function of determining the terminating port can be done for all calls by the cooperative processing of only the switching modules. Therefore central control 30' in System IV can be implemented as a relatively inexpensive processor because of the substantial reduction in the processing load that it must handle when compared with the central ccntrol 30 of System I even though both systems comprise 29 switching rnodules.
Alternatively, the same processor could be used in a system including many more switching modules.
In System IV, each of the switching modules 201 through 229 has a routing system process, its associated data structures RDBLK, CFBLK, GRPBLK and TERMBLK and database comprising the FIXEDRI, SCRNIN~, DNT~AN, XOUTING, PORTGROUP, GROUPPORT, MHG, LNSTAT, TRKG, TKOWNER, TKQUE and TKSTAT relations. Each switching module also has a MODTRAN relation (FIG. 32). All of the routing system processes execute the same routing program, which program i9 modified with respect to the program of Systems II and III (the flow chart of which is shown in FIG. 25 through 29). The modifications are shown in FIG. 42 and are described later herein. The state diagram associated with those routing 5y5tem processes iS the same as the state diagram ~ F~G. 2~ ex~ept th~t ~he ~WCO~M ~tate 3013 13 not needed. Central control 30' does not have a routing 33~

system process but rather a path hunt system process responsible only for the selection of the network time slot and the establishmen~ of the tlme-multiplexed switch 10 path for inter-module calls.
Directory Number Translation -The FIXEDRI, SCRNIN~, RO~TING, PORTGRO~P, GROUPPORT, MHG and TRKG relations are redundant in each of the switching modules 201 through 229. Each of those relations stores the pertinent data for the entire system.
The DNTRA~l relation varies among the switching modules.
For example, the DNTRAN relation in switching module 201 stores the directory number translation information for all lines connected to switchiny module 201 and in addition for a set of 1800 DNs from 10000 through 1l799. (Reca].l that the first digit of the DN is the NOC and the last four digits of the DN are the last four dialed digits.) The DNTRAN relation in switching module 202 stores the directory number translation information for all lines connected to switching module 202 and for a set of 1800 DNs from 11800 through 13599~ Similarly, the DNTRAN relation in each of the other switching modules stores the directory number translation information for all lines connected to that switching module and in addition for a set of 1800 DNs as defined in Table 2.

33~

__ SWITCHING MODULE nxx DN

209 3S7 25~00-27199 210 357 27200~2899g O ~ ~

224 491 55~00-57199 228 ~93 63600-65399 229 ~93 65400-67199 _ _ _ _ Of course, there is no re~uiremen~ that an equal nul~ber of DNs be associated with each switching module. The assignment of 1800 DNs per switching module in the present system is only for purposes of illustration. Furthermore, although in general sùbscriber sets connected to a given swl~chlng module neea no~ be res~rlcted to a p~rticular set of 1800 DNs, maximizing the intersection between the set of ~33~3~

1800 DNs and the set of DNs assigned to the subscriber sets connected to that switching module is desirable. ~he MODTRAN relation (FIG. 32), which is redundant in each switching module and which includes the NOCD4D3 attribute and the MODULE attribute, is used to locate the switching module storing the directory number translation information for originations where the needed information is not present in the originating switching module. The contents of the MODTRAN relation for the present example are summarized in Table 3.

3~

_ I
MODTRAN

536-553 2~3 572-5~9 225 The NOCD4D3 attribute represents the combination of a NOC
and the thousands digit D4 and the hundreds digits ~3 of the dialed number. For example, since switching module 201 ~o~ h~ oo~ry numbe~ n~la~ion ineo~m~ n ~or D~S
1000 through 11799, the MODTRAN relation defines that Eor 3~

originations where the NOCD~D3 value is from 100 through 117, the necessary directory number translation inEormation is in switching module 201. (Note that if the association of DNs to switching modules were done by thousands groups, the NOC plus only the thousands digit D4 woulcl be sufficient to define the location of the information.) The distribution of the dynamic data Eor multi-port hunt groups, i.e., the LNSTAT, TKOWNER, TKQUE and TKST~T
relations, is described later herein.
The modifications to the flow chart of FIG. 25 through 29 that are required for System IV are shown in FIG. 42. A block 1085 is inserted between decision block 1080 and block 1400. Recall that in block 1070, the DNTRAN
relation is read using the DN as the key and then in decision block 1080 a determination is made of whether the requested data is available in the DNTRAN relation. ~s shown in FIG. 42, if the requested data is not available as determined in block 1080, execution proceeds to block 1085.
During block 1085, the MODTRAN relation (FIG. 32) is read using the MOCD4D3 attribute as the key to obtain the ~ODULE
field which defines the switching module where the necessary data is stored~ The MODULE field is stored in the TERMBLK and execution proceeds to block 1400. In block 1400, the SWITCH state 3014 (FIG. 24) is entered and the variable SWREQ is stored in the RD~T,K defining the D~lTRAN
state 3004 as the program state to be entered by the next routing system process. Execution proceeds to bloclc 1190 during which the next processor is determined. If the function of determining the terminatincJ port has been completed, the next processor is always central control 30'. However, if the terminating port has not been determined yet, the next processor is in the switching module defined by the MOD~LE field in the TER~L~. The operational status of the next processor is then verified and execution proceeds to block 1210 during which the type oP me~age ~o b~ ~ran~ml~ad l~ d~erminud. I~ th~ nex~
processor is in one of the switching modules, a RTGEN

33~36 message (FIG. 32~, previously dessribed herein, is constructed. If the next processor is central control 30', a path request (PR) message (FIG. 32) is constructed. The PR message is used to request central control 30' to select a network time slot for the call and, if the call is an inter-module call, to set up the time-multiplexed switch 10 path. The PR message includes the same fields as the RTGEN
message except the REQTERM and RTCONTDA fields are not required in the PR message. Execution then proceeds to block 1220, the appropriate message is constructed using data in RDBLK, CFBLK and TERMBLK, and the message is transmitted.
As a first example of call setup in System IV, consider that subscriber set 25 connected to switching module 229 has just gone off-hook. The off-hook state is detected by scanning within line unit 21. A call processing control system process 5001 (FIG. 43) within switching module 229 is informed of the off-hook detection and, in response, creates an originating terminal process 5008. Originating terminal process 5008 is responsible for controlling the transmission of dial tone to subscriber set ~5 and the subsequent reception of digits dialed from subscriber set 25. Assume for the present example that the number 355-2289 is dialed. Originating terminal process 5008 analyzes the dialed digits to obtain values of the prefix index (PI), destination index (DI), digit count (DIGCNT) and treatment ( TRE~T ) variables. Originating terminal process 5008 determines the value of the screen index (SI) based on the characteristics of the originating line. Originating terminal proces~ 5008 then formulates a route request message RTREQ (FIG. 14) in a message buffer.
Once the RTREQ message has been formulated, it is transmitted by originating terminal process 5008 to routing system process 5002 (FIG. 42) still within switching module 229. Routing system process 5002 stores the RTRE~ message in its associated RDBLK. Routlng system proce~s 5002 then sequentially accesses its associated database in accordance with the routing program (FIG. 25 through 29 modified as in FIG. ~2). Since the nxx digits 355 are encoded as a NOC
of 1 in the present example, the dialed number 355-2289 is represented as the DN 12289. The directory number translation information for the DN 12289 is not present in the DNTRAN relation in switching module 229. Therefore when the DNTRAN relation is accessed during the execution of the routing pro~ram usin~ the DN 12289 as the key, the access fails. The MODTRAN relation (FIG. 32) is read using the NOCD4D3 of 122 as the key to obtain the identity oE the switching module that does store the necessary direc~ory number translation information. In accordance with the present example, it is determined that the information is stored in switching module 202 (see l'able 3). Routing system process 5002 formulates a generalized routing (RTGEN) message (FIG. 32) including a REQTER~ field that defines the DNT~AN state 3004 (FIG. 2~) as the program state to ~e entered by the next routing system process and the DN 12289 to ~e used as the key to access the DNTRAN
r2lation. Routing system process 5002 then transmits the RTGEN message to routing system process 5004 in switching module 202.
In response to the REQT~R~ ,ield of the RTGEN
message, routing system process 500~ begins the execution of its routing program in the DNTRAN state 300~ (FIG. 24).
The DNTRAN relation is accessed using the DN 12289 as the key. This time the necessary inEormation is present, as was indicated by the ~ODTRAN relation read in switching module 229. Assume for the present example that the DN
12289 is translated to the global port identity oE the port of switching moclule 201 that is connected to subscriber set 23. Since routiny system process 500~ has completed the determination of the terminating port for the call, process 500~ Eormulates a path request (PR) message (FIG. 32) including an ORIGGPI field defining the switching module 229 port connected to subscriber set 25 and a ~ERMGPI field defining the switching module 201 port connect to 33~3~

subscriber set 23. Process 5004 transmits the PR messa~e to a path hunt system process 5007 in central control 30'.
Central control 30' stores a network map defining the busy/idle status of all the time-slots of all the time-multiplexed lines between the switching modules 201 through 229 and time-multiplexed switch 10. Recall that there are two, 256-time-slot time-multiplexed line pairs between each switching module and time-multiplexed switch 10.
Accordingly there are 512 time slots available between a given switching module and time-multiplexed switch 10 Path hunt system process 5007 in central control 30' responds to the PR message by select a commonl~ available time slot between switching module 229 and switching module 201. Path hunt system process 5007 also writes information defining the selected network time slot into control memory 29. Process 5007 then transmits a LNTREQ message (FIG.
14) including the defined network time slot in its PATHDES
field, to termination system process 5005 in switching mod~le 201.
In response to the LNTREQ message, termination system process 50~5 reads the PORTSTATU~ relation (FIG. 32) stored in switching module 201 to determine whet~er subscriber set 23 is presently busy or idle. If subscriber set 23 is idle, process 5005 creates a terminating terminal process 5009 and forwards the information received in the LNTREQ message to process 5009 via a LNTER~ message.
Terminating terminal process 5009 effects the transmission of ringing voltage to subscriber set 23, and the transmission of an E-bit continuity signal and audible ringing tones to switching module 229. Terminating terminal process 5009 then transmits a setup complete (S~T~PCOMP) message to originating terminal process 500~ in switching module 229 including the completed path descriptor PATHDES. In response, originating terminal process 50~ effects the transmission of the E-bit continuity signal to switching module 201. When switching module 201 receives the ~-bit continuity signal ~, 33~

from switching module 229, terminating terminal process 5009 determines the terminating peripheral time slot to be used to communicate with subscriber set 23 and writes information in the control RAM 55 of switching module 201 defining the mapping between the terminating peripheral time slot and the network time slot. Similarly, when switching module 229 receives the E-bit continuity signal from switching moc3ule 201, originating terminal process 5008 determines the originating peripheral time slot to be used to communicate with subscriber set 25 and writes information in the control RAM 55 of switching module 229 defining the mapping between the origin~ting peripheral time slot and the network time slot. The communication path between subscriber sets 25 and 23 has now been set up.
As a second example, consider that the number ~93-5433 is dialed from subscriber set 25 connected to switching module 2290 Originating terminal process 5018 (FIG. 44), which was create~ by call processing control system process 5001 after being informed of the detection OL the off-hook state; receives the dialed digits and then transmits a RTREQ message to rc,uting system process 5002.
In response, routing system process 5002 executes its routing program. In this case, as is desirable, the D~
65433 is assigned to a terminating subscriber set, e.g., subscriber set 26, connected to the same switching module, module 229, in which the directory number translation information for that DN 65433 is stored (see Table 2).
Therefore the access of the DNTRAN relation during the execution of the routing program is successful and the determlnation of the terminating port is completed by routing system process 5002. Routing system process 5002 then transmits a PR message (FIG. 32) to path hunt system process 5007 in central control 30'~ Since both the ORIGGPI field and the ~ERklGPI field of the PR message ~ln~ ~wl~hing modul~ ~2~ h hun~ ~y~m p~o~ 5007 selects two available networ]c time slots to be used to ~2'133~36 connect the receive time-slot interchanger 50 to the transmit time-slot interchanger 53 within switching module 229. One network time slot is used for each transmission direction. Since the call is an intra-module call, no time-multiplexed switch 10 path is needed. Therefore, process 5007 does not write information into control memory 29. Process 5007 transmits a LNTREQ message including the selected network time slot in the PATHDES field, to termination system process 5010. The balance of the call setup sequence including the creation of a terminating terminal process 5019, the transmission of a LNTERM message from process 5001 to process 5019, the transmission of a SETUPCOMP message from process 5019 to originating terminal process 5018, and the writing of the control RAM 55 in switching module 229 to define the mapping of originating and terminating peripheral time slots to the network time slot proceeds in the above-described manner.
As a third example, consider that the number ~93-5552 is dialed from subscriber set 25 connected to switching module 229. Since the directory number translation in~ormation for the DN 65552 is stored in the DNTRAN relation of switching module 229 (see Table 2~, routing system process 5002 (FIG. 45~ is able to complete the determination of the terminating port. Assume ~or this example, that the DN 655S2 is assigned to subscriber set 23 connected to switching module 201. Routing system process 5002 transmits a P~ message including the completed TERMGPI
field to path hunt system process 5007 in central control 30'. In response, process 5007 selects a commonly available network time slot between switching modules 229 and 201 and establishes the path by writing in control memory 29. The balance of the call setup sequence to connect subscriber sets 25 and 23 is completed in the above-described manner.
As a fourth example, consider that the number 355-1S66 i~ dialefl ~rom subscriber set 25 conn~cted switching module 229. Since the directory number ,~

3~

translation in~ormation for the DN 11566 is not stored in the DNTRAN relation of switching module 229 (see Table 2), routing system process 5002 (FIG. 46) is unable to complete the determination of the terminating port. When, during the execution of the routing program, the access of the DNTRAN relation fails, the MODTRAN relation is read to determine the location of the needed directory number translation information using a NOCD4D3 of 115 as the key.
In accordance with this example, it is determined that the needed in~ormation is stored in switching module 201 (see Table 3). Accordingly a RTGEN message including the REQTERM ~ield defining the DNTRAN state 300~ (FIG. 2~) and the DN 11566 as the key to the DNTRAN relation is formulated. Routing system process 5002 transmits the ~TGEN message to routing system process 5006 in switching module 201.
Routing system process 5006 enters its routing program in the DNTRAN state 3004. The access oE the DNTRAN
relation using the DN 11566 is successful as expected based on the reading o~ the ~ODTR~N relation in switching module 229. Assume ~or this example that the DN 11566 is assigned to subscriber set 23 connected to switching module 201.
~gain, this example represents a desirable assignment since the directory number translation information for the DN
11566 is stored in the same switching module, module 201, that the subscriber set assigned the DN 11566 is connected to. Since routing system process 5006 is able to complete the determination of the terminating port, process 500~
transmits a PR message to path hunt system process 5007 in central control 30'. In response, process sno7 selects a commonly available network time slot between switching modules 201 and 229 and sets up the time-multiplexed switch 10 path. Proc~ss 5007 then transmits a LNTREQ message to termination system process 5005 in switching module 201 and the balance of the call setup sequence proceeds in the above-des~rlbed manne~ to connect ~ub~criber sets 23 and 25.

~L~3~3~

Although not indicated in FIG. 32, the MODTRAN
relation includes as attributes two secondary locations of the directory number translation information, which secondary locations are to be used in the event that the switching module defined by the MOD~LE attribute is not operational. The directory number translation information for a given group of 1800 DNS is stored in the DNTRA~
relations oE three switching modules, one designated as primary and two designated as secondary. When the INTEGRITY state 3012 (FIG. 24) is entered during block 1190 (FIG. 42) and it is determined that the processor in the switching module designated as primary is not operational, the RTGEN message is instead transmitted to an operational processor in one of the switching modules designated as secondary.
In the embodiment of System IV being described, the DNTRAN relation in each of the switching modules stores the directory number translation information for all lines connected to that switching module and in addition for a set oE 1800 DNs as de~ined in Table 2. In an alternative embodiment, the DNTRAN relation in each of the switching modules stores the directory number translation information ~or only the set of 1800 DNs but not for any lines of that switching module that are assigned directory numbers outside the predetermined set of 1800 DNs. Rather than reading the MODTRAN relation only after a failure in reading the DNTRAN relation, rather the MODTR~N relation is read and no attempt is made to read the DNTRA~1 relation unless the MODTRAN relation indicates that the directory number translation is present. Otherwise routing is continued in the switching module defined by the MODTRAN
relation.
Controlling Multi Port Hunt Groups Recall that in System I, the control of all multi-port hunt groups, i.e., multi-line hunt groups and trunk group~, wa~ locate~ excluslvel~ in central control 30. Also recall that in Systems II and III, the control ~L~3 function for certain multi-port hunt groups was dis~ributed to the remote switching modules 501 through 50~. Howe~er such control function was distributed only for those multi-port hunt groups having all members connected to one remote switching module. The control o~ multi-port hunt groups having members spanning two or more modules still resided in central control 30. In system IV presently being described, the control of all multi-port hunt groups is distributed to the switching modules 201 through 229. Each multi-port hunt group is assigned one o-f the switching modules 201 through 229 as its group controller. In the present embodiment, certain rules are followed in making the assignments. For multi-port hunt groups having all members connected to one switching module, the assiynment of the group controller is made to that switching module.
For multi port hunt groups having members spanning two or more modules~ the mo~ule having the most group ~embers connected thereto is assigned as the group controller. If all modules connected to the members oE a group are connected to the same number of members, then one of the modules is arbitrarily selected as the group controller.
In addition, the pilot DN, iOe., the DN used by subscribers to call a multi~line hunt group, is assigned to a group member connected to the yroup controller. Although the use of these assignment rules results in certain efEiciencies concerning the number of inter-module control messages in System IV, other rules could clearly be used including a purely arbitrary assignment. The important criterion is that each group is assigned a controller.
The dynamic data defining the busy/idle status o~
multi-port hunt groups, i~e., the LNSTAT relation Eor multi-line nunt groups and the TKOWNER, TKQUE and TKS'rAT
relations Eor trunk groups, is stored hy the group controllers. Consider the exemplary groups shown in Table 4.

~Z~33~

Table of Multi-port Hunt Groups GROUP GROUP CONTROLLER
__. __ Multi-line Hunt Group A SM 201 (all members on S~ 201) 1 0 _ Multi-line Hunt Group B SM 202 (2 members on SM 201 12 members on SM 202 (2 members on SM 229) Multi-line Hunt Group C SM 208 (1 member on each SM 201-229) __ Trunk Group A SM 201 tall members on SM 201) _ _._____ Trunk Group B SM 202 t16 members on SM 201 32 members on SM 202) _ _. _ _ _ ~

Multi~line hunt ~rou~ ~ ha~ all membe~ conneated to switching module 201. Therefore switching module 201 is ~33~G
~ 89 -designated as the group controller of group A and the LNST~T relation for group A is stored in switching module 201. Multi-line hunt group B has two members connected to switching module 201, 12 members connected to switching module 202 and two members connected to switching module 229. Switching module 202 is designated as the group controller of group B and the LNSTAT relation ~or group B is stored in switching module 202. ~ulti-line hunt group C has one member connected to each oE the switching modules 201 through 229. Switching module 208 is arbitrarily designated as the group controller o~ group C
and the LNSTAT relation Eor group C is stored in switching module 208. Trunk group A is a first-in-first-out (FI~O) group having all members connected to switching module 201.
Switching module 201 is designated as the group controller and the TKOWNER and TKQUE relations for trunk group A are stored in switching module 201. Trunk group B is a forward/backward group having 16 members connected to switching module 201 and 32 members connected to switching module 202. Switching module 202 is designated as the group controller and the TKSTAT relation for trunk group B
is stored in switching module 202.
All calls to multi-port hunt groups that originate from a switching module other than the group controller require the transmission of a control message to the group controller. The group controller performs the specified hunt algorithm using the dynamic busy/idle data for the group and assigns an idle group member to the call if one is available. The group controller immediatedly marks the assigned member busy. The group controller then transmits a control message to the switching module connected to the assigned member to complete the setup to that member. When the asslgned member again becomes available, a control message is transmitted back to the group controller so that the assisned member can be marked o As a Eirst example of call setup involving such ~Z~338~i - multi-port hunt groups, consider that the number 355-1g22 is dialed at subscriber set 25 connected to switching module 229 and that 355-1922 is the pilot directory number of multi-line hunt group B having two members connected to switching module 201, 12 members connected to switching module 202 and two members connected to switching module 229 (see Tables 2 and 4). The attempted access of the DNTRAN relation by routing system process 5002 (FIG.
43) in switching module 229 using the DN 11922 Eails. The MODTRAN relation (FIG. 32) is read using the NOCD4D3 of 119 as the key to determine that the needed directory number translation information is stored in switching module 202 (see Table 3). Routing system process 5002 formulates a RTGEN message including the REQTERM field defining the ~NTRAN state 3004 (FIG. 24) as the program state to be entered by the next routing system process and the D~ 11922 as the key to be used in accessing the DNTRAN relation.
Routing system process 5002 then transmits the RTGEN
messaye to routing system process 5004 in switching module 202.
In response to the RTGEN message, routing system process 5004 enters its routing program in the DNTR~i~ state 3004 and reads the DNTRAN relation with the DN 11922 as the key. In accordance with the above-mentioned assignment rules, the directory number translation information for the pilot DN 11922 is stored in switching module 202 and defines the global port identity of a switching module 202 port connected to one of the Group ~ members. Accordingly, the access of the DNTRAN relation in switching module 202 is successful. The TERMCLASS attribute of the retrieved DNTRAN tuple defines that the DNTRAN 11922 is assigned to a multi-line hunt group rather than to an individual line.
The PORTGROUP and ~HG relations are subsequently read by routing system process 5004 in accordance with its routing program. The MODULE attribute of the MHG tuple defines that switching mod~l~ 202 is the designated group controller. Then the dynamic data defining the busy/idle 33~6 - status of all the members of multi-line hunt gro~lp B, which dynamic data is stored in the LNSTAT relation, is read.
Since s~itching module 202 is the controller of the group, the access of the LNSTAT relation is successful and an idle group member is assigned to the call in accordance with the predeEined hunt algorithm. The member is immediately marked as busy. In accordance with the present example, assume that subscriber set 23 connected to switching module 201 is a member of multi-line hunt group B and that subscriber set 23 is assigned to the call. Since routing system process 5004 has completed the determination of the terminating port, process 5004 transmits a PR message to path hunt system process 5007 in central control 30'.
Based on the ORIGGPI and TERMGPI fields of the PR
message, path hunt system process 5007 selects a commonly available network time slot between switching modules 229 and 201 for the call and writes the information defining the selected network time slot in control memory 29 to set up the time-multiplexed swi~ch 10 path. Path hunt system process 5007 then transmits a LNTREQ message including the defined network time slot in the PA~HDES Eield, to termination system process 5005 in switching module 201 and the remainder of the call setup sequence proceeds in the above-described mannerO When subscriber set 23 returns to on-hook, terminating terminal process 5009 is informed and transmits a control message to a call processing control system process (not shown) in group controller switchiny module 202 so that the dynamic data for the group can be updated.
As a second example of call setup involving multiport hunt groups, assume that the pilot directory number 355-1922 of multi-line hunt group H is again dialed from subscriber set 25 connected to switching module 229.
The directory number translation information for the DN
11922 is not present in the DNTRAN relation of swi~-ching module 229 (see Table 2). Therefore, when r~uting ~ystem process 5002 (FIG. 47) executes its routing progcam, the 33~6 - access of the DNTRAN relation with the DN 11922 fails. The MODTRAN relation is then read with a NOCD4D3 of 119 as a key. It is thereby determined that switching module 202 stores the needed directory number translation inEormation ~see Table 3~. Routing system process 5002 formulates a ~TGEN message including a REQTERM ield defining the DNrRAN
state 3004 as the program state to be entered by the next routing system process and the DN 11922 as the key to be used to read the DNTRAN relation. Routing system process 5002 transmits the RTGEN message to routing system process 500~ in switching module 202.
In response to the RTGEN message, routing system process 5004 begins the execution of its routing program in the DNTRAN state 3004. The access of the DNTRAN relation using the DN 11922 as the key is successful as expected basr-~d on the reading of the MODTRAN relation in switching module 229. The TERMCLASS attribute of the retrieved DNTRAN tuple defines that the DNTRAN 11922 is assi~3ned to a multi-line hunt group rather than to an individual line.
The PORGROUP and MHG relations are subsequently read by routing system process 5004 in accordance with its routing program. The MODUL~ attribute of the MHG tuple defines that switching module 202 is the designated group controller. Then the dynamic data defining the busy/idle status of all the members oE multi-line hunt group ~, which dynamic data is stored in the LNSTAT relation, is read.
Since switching module 202 is the controller of the group, the access of the LNST~T relation is successEul and an idle group member is assigned to the call in accordance with the predefined hunt algorithm. The member is immediately marked as busy. In accordance with this second example, assume that subscriber set 26 connected to switching module 229 is a member of multi-line hunt group B and that subscriber set 26 is assigned to the call. Since routing system process 5004 was able to complete the deterinination Oe the termina~ing por~, process S00~ tr~nr~mit~ a PR
mes~age to path hunt system process 5007. Since both the -~2~3~i - 93 ~

ORIGGPI field and the TER~GPI field of the PR message define switching module 229, no time-multiplexed switch 10 path is required. Path hunt system process 5007 selects an available network time slot to be used to connect receive time-slot interchanger 50 to transmit time-slot interchanger 53 within switching module 229 and transmits a LNTREQ message including the network time slot in its PATHDES field, to termination system process 5010. The balance of the call setup sequence proceeds in the above-described manner.
Although not shown in FIG. 32, the MHG and TRNGrelations also deEine one of the switching modules as a "shadow" group controller for each multi-port hunt group.
The shadow group controller also maintains the dynamic data for the hunt group, i.e., it is informed via messages from the group co~troller of all busy/idle status changes. In the event that the group controller is not operational, hunting ~or the group is efEected by the shadow group controller.
System V
System V (FIG. 48) uses substantially the same hardware arc'nitecture as System I ~FIG. 2) described previously herein. However, System V includes an alternative control distribution unit 31'. ~ecall that central control 30 controlled time-multiplexed switch 10 in System I by writing instructions in control Inellory 29 via a communication path 49. In System V (YIG. 48), central control 30'' as well as each oE the switching modules 201 through 229 can control time-multiplexed switch 10 by transmitting a control message to control distribution unit 31', and control distribution unit 31' responding by writing instructions via a control and diagnostic access link 9049 into control memory 29. Since the time-multiplexed switch 10 path hunt and setup ~unctions are moved in System V rom central control 30'' to the ~witching mo~ule~ 201 through 22~, it i~ do~ir~lbl~
tnat the switching modules 201 through 229 are able to 33~Çi - ~4 -control time~multiple~ed ~witch 10 without involvlng central control 30" .
The processor used to l~plement central control 30'' ln Syite~ ~ represents a ~urther coat re~ction over the proce~sor of central cont~ol 30' ln system I~ (FIG.
41). Slnce central control 30'' ln Syqte~ V is comple~ely relieved of the per-call pro~e~ing ta~ks involved ln satting up calls, ~he reliability requirement~ lmpo ed on thAt proce660r are signif~cantly reduced because th~ system can continue to operate to switch telephone call~ even during a complete fallure of central control 30" .
Control Di~tributiOn Unit 31 .
Control dlatributlon unlt 31' re~eive~ control in$ormation from the switchlng module~ 201 through 2~g, vi~
a time-multiplexed line 1$0 connected to outpu~ termln~l P64 of t~me~multiplexed swltch 10. Control distribution unit 31' transmlt2 control informatlon to the switching module~ 201 ~hrvugh 229, on ~ time-multlplexed llne 151 connected to inp~t termln~l ~64 o~ ti~e-~ultlplexed swl~ch 10. ~ithin control distributlon unlt 31', the tlme-multiplexed lines 150 ~n~ 151 are coupled to ~ llnk in~erface 9001 ~FIG. 4g) which ia ~u~ ntially idan~lcal to link interface 78 (PIG. 4) ~eqcribed above wlth re~pect to System I, exc~p~ that the circ~lt~ u~e~ to extrac~ ~nd in~er~ control word~ in link lnterface 78 a~e not ~equired in lin~ interface 9001. Time-multlplexed lines 150 and 151 each have 256 channel~ or time ~lots. However, ln the present ~mbodlment, only SB con~rol ch~nnels are required, two control channel~ to e~ch of the swltching modules 201 through ~29. Link interface 9001 per~orms a qignal conversion functlon and tran~mlts the ln~orm~tlon recelved on tlme-multlplexed line 150 from tlme-multiplexed swltch 10, to a mes~age interface 9003. Lln~ interface 9001 al~o ~e~eive~ informAtion fro~ mes~age interface 90~3 for tran~mlssion on ti~-multlplexed llne 151 to tlme~
multipl~xed swltch 10. Mes~age interface 9003 dlstributes the ContrOl informatlon received by control di~tribution ~.

3~

unit 31' from time-multiplexed switch 10, to three communities of peripheral ~?rocessors, one community comprising four module message processors 9201 through 9204, a second community connprising four module message 5 processors 9301 through 9304, and a third community comprising a foundation peripheral controller 9101.
Message interface 9003 also multiplexes control information from the communities, for transmission to time-multiplexed switch 10. The communities communicate with messa~e 10 interface 9003 via 32-channel serial message interfaces buses 9110, 9210 and 9310. Each module message processor is associated with up to eight of the switching modules 201 through 229 and communicates with its associated s~itching modules via a predetermined link-level protocol, e.g., the 15 HDLC protocol. Foundation peripheral controller 9101 is used to control the operation of a number of the elements oE control distribution unit 31 ' but in particular is used to write information via a control and diagnostic access link 9110, to be stored by control memory 29 to define 20 time-multiplexed switch 10 paths. The control instructions transmitted by foundation peripheral controller 9110 to message interface 9003, are written into control ~nemory 29 via control and diagnostic access link 9049.
A peripheral interface controller 9500 effects a 25 packet switching function by controlling the transfer of information among the com~ur~ ie.; oE peripheral processors and central control 30''. Peripheral interface controller 9500, which operates in accordance ~ith instructions stored in a microcontrol store 9501, communicates with the 30 communities of peripheral processors via an I/O
microprocessor interface 9502. Intecface 9502 is coupled to the communities via community data/address buses 9100, 9200 and 9300. By writing source and destination addresses on an address bus 9503 to I/O microprocessor 35 inter~ace 9502, peripheral inter~ace con~roller 9500 can e~eect the transEer of control in~orma~ion ~rom one of the module message processors, e.g., 9301, to another module ~L~33~3~

message processor or to Eoundation peripheral controller 9101. Such transfer oE control information can be dorle without involving central control 30''. Peripheral interface controller 9500 can similarly eEEect the tcan,Eer 5 of control information from module message processor 9301 to a 16-bit data bus 9504, which information is subsequently conveyed to central control 30''. By writing source and destination addresses on an address bus 9503' to a bus interface cont~oller 9505, peripheral interface controller 9500 can efEect the transfer of control inEormation received by bus interface controller 9505 from central control 30'', to the communities of perip'neral processors via data bus 9504 and I/0 microprocessor interface 9502. Central control 30'' communicates with control distribution unit 31' via a dual serial channel 32.
selector 9507 receives the information from central control 30 " via channel 32 and also receives information fro~n a standby central control (not shown) via a second dual serial channel 32'~ Selector 9507 selects channel 32 or channel 32' depending on whether central control 30' or the standby central control is presently controllin~3 systefn operation. Selector 9507 converts the information received from central control 30'' or the standby central control from serial to parallel format and transmits the converted information on a 32-bit parallel bus 9506 to bus interface controller 9505. Bus interface controller 9S05 acts as buEEer between the 32-bit selector 9507 and the 16-bit peripheral interface controller 9500. Bus interface controller 9505 includes a 16-word by 32-bit FIP0 (not shown) which is segmented into two 16-bit fields for access by perip'neral interface controller 9500.
Distributed Path Hunt Recall that there are 512 time slots or channels between a given switching module, e.g., module 201 (FIG. 48), and time-multiplexed switch 10. Each of the two pa1rs o time-multipl~K~d line~ between swi~ching module 201 and time-multiplexed switch I0, i.e., lines 13 and 15 33~3~

connected to input/output por~ pair P1 and lines 14 and 16 connected to input/output port pair P2, has 256 channels thereon. For the purposes of the discussion which follows the 512 channels between a given switching module and time-multiplexed switch 10 are reEerred to as c'nannels TS1through ~S512. Time-multiplexed switch l0 can connect each of the channels from a given switching module to the corresponding channels on any of the other switching modules. For example, time-multiplexed switch can connect TS1 Erom switching module 201 to TS1 o~ any oE the switching modules 202 through 229, TS2 from switching module 201 to TS2 of any of the switchiny modules 202 through 229, etc. Rather than central control 30'' maintaining a global view o all the channels to and from time-multiplexed switch 10 and selecting the network time slots used for calls as in Systems I through IV, in System V no such global view is maintained. Rather, each switching ,nodule stores a TIMESLOT relation de~ining the status oE each of the channe's TS1 through TS512 from that switching module to time-multiplexed switch 10, and the t~o switching modules involved in each inter-module call negotiate to select the network time slot to be used ~or t`nat call. Once the network time slot is selected, one of the switching modules transmits a CONNECT order via control distribution unit 31' to control memory 29 without involving central control 30''.
The terminating port determination Eunction is performed in System V in the same manner as in System IV
previously described. Once the terminating terminal process is created in the terminating switching module, that terminal process transmits a path request (PR) message to a path hunt system process now located in the switching mo(1ule. A Elow chart of the program executed by the path hunt system process in response to the PR messa-]e is shown in FIG. 50. The PR message is received during block 6010.
Execution proceeds ~o deci~lon block 6020 ~]urlng which a determination is made of whether or not the call is an ~3~

( inter-module call based on whether the terminating and originating switching modules defined in the PR message are the same or different switching modules. If the call is not an inter-module call, execution proceeds to block 6030. The TIMESLOT relation stored by the switching module is accessed and an available one of the channels TSl through TS512 is selected and marked busy as the network time slot for the call. Even though no path is required through time-multiplexed switch 10, the selected network time slot is used to connect the receive time-slot interchanger to the transmit time-slot interchanger within the switching module. If, on the other hand, the call is an inter-module call, execution proceeds from decision block 6020 to block 6040. In block 6040, a path hunt request (PHR) message is formulated which defines by means of a field comprising 64 octets, the availability of the 512 channels TSl through TS512 between that switching module and time-multiplexed switch 10. (The PHR message defines as unavailable both busy channels, i.e., channels being used for established calls, as well as any channels that are reserved as part of candidate sets for unresolved calls. Such reservation of channels is discussed later herein). Execution proceeds from block 6040 to block 6050 and the formulated PHR message is transmitted to the path hunt system process in the originating switching module.
A flow chart of the program executed by a path hunt system process in a given switching module in response to a PHR message is shown in FIG. 51. The PHR message is received during block 6110 and execution proceeds to block 6120. The TIMESLOT relation is accessed and a candidate set of time slots is selected for the call. Each time slot in the candidate set must meet the following criteria: 1) the time slot is defined as available in the TIMESLOT
relation of the given switching module, and 2) the time slot is defined as available in the PHR message from the other switching module involved in the inter-module call.
In the embodiment being described, the size of the 99 ~ 3~6 candidate set is predetermined and com?rises, for example, ( ~our time slots. In block 6130 the candidate set of time slots is reserved so that the time slots will not be selected by the given switching module as part of any other candidate set until this particular call is resolved or at least until freed from the candidate set. It is important to note that the time slots reserved in block 6130 can be selected as the network time slots for other calls between other switchlng modules and the given switching module The reservation in block 6130 only means that the reserved time slots will not be selected by the given switching module as part of another candidate set until they are freed from this candidate set. Execution proceeds from block 6130 to block 6140 during which one of the four time slots of the candidate set is selected as the first choice (FC) time slot. Then in block 6150, a candidate set (CS) message is formulated defining the four time slots of the candidate set as well as which of the four time slots is the FC time slot. The formulated CS message is transmitted during block 6160 to the path hunt system process in the other switching module.
The flow chart of the program executed by the path hunt system process of a given switching module in response to a CS message is shown in FIG. 52 through 54.
The CS message is received during block 6210 and execution proceeds to block 6215 during which the candidate set of time slots is reserved so that the time slots are not selected by the given switching module as part of candidate sets for other calls. Execution proceeds from block 6215 to block 6240 and the TIMESLOT relation in the given switching module is accessed to determine whether any of the four time slots of the candidate set are busy, i.e., whether any of the four time slots has already been selected as the network time slot for another call. Any such busy time slots are removed from consideration in the candidate set and execution proceeds to decision block 6250. During block 6250 a determination is made of whether i .

33~3~

the FC time slot defined by the received CS message is ( marked bu.sy in the TIM~SLOT relation of the given switching module. If the FC time slot is busy, of course, it cannot be selected as the network time slot for this call and execution proceeds to block 6310. If the FC time slot is not busy, execution proceeds to decision block 6260 and a determination is made of whether the FC time slot has already been designated as the FC time slot for another unresolved call between the given switching module and another switching module. If it has not, execution proceeds to block 6270 and the FC time slot is marked as busy and the other time slots of the candidate set are marked as available in the TIMESLOT relation. Then in block 6280 a CONNECT message and a path hunt completion (PHC) message are formulated defining the FC time slot as the network time slot selected for the call. During block 6280 the CONNECT message is transmitted to control memory 29 which defines in response to the CONNECT message that time-multiplexed switch 10 will provide a communication path between the two switching modules during the selected network time s]ot. Also during block 6280, the PHC message is transmitted to the terminating terminal process, which upon learning the network time slot selected for the call, can complete the call setup in the same manner as described 2~ above with respect to System IV.
If, on the other hand, the cdetermination is made in decision block 6260 that the FC time slot has already been designated as the FC time slot for another unresolved call, execution instead proceeds to block 6300 and the FC
time slot is removed from the candidate set and is added to a list stored in the mernory of the given switching module and referred to as a collision list. The collision list comprises a list of time slots of the candidate set that were designated as the FC time slot but were not selected as the network tlme slot because they had been designatecl as the FC time slot for other unresolved calls at nearly the same time. Whether the FC time slot was determined to ~33~

be busy in block 6250 or was found to have been desiynated ( as the FC time slot for another unresolved call in block 6260, the same result obtains--namely, the FC time slot is not selected as the network time slot for this call and execution proceeds to decision block 6310. In decision block 6310, a determination is made of whether the candidate set has now become empty. If the candidate set is not ernpty, execution proceeds to block 6340 and one of the remaining time slots of the candidate set is selected as the new FC time slot. In block 6350, a candidate set reduction (CSR) message is formulated defining the new FC
time slot and any time slots removed from the candidate set during block 6240 of this execution of the program. The formulated CSR message is transmitted to the path hunt system process in the other switching module during block 6360.
However, if it is determined during decision block 6310 that the candidate set has become empty, execution instead proceeds to decision block 6370. ~ is a stored variable that indicates the number of times that the candidate set has become empty for a given call. In decision block 6370 it is determined whether the candidate set has become empty a predetermined number of times, e.g., three times. If so, execution proceeds to block 6430 and the call fails. However/ if the candidate set has become empty less than three times, execution proceeds to decision block 63~0 during which it is determined whether the collision list is also empty. If the collision list is empty, execution again proceeds to block 6430 and the call fails. However, if the collision list is not empty, execution proceeds to block 6390 during which the collision list becomes the new candidate set for the call. During block 6400 the collision list is then cleared and during block 6410 the variable N is incremented. Blocks 6340, 6350 and 6360 are then executed as described above and a CSR message is transmitted to the path h~lnt system process in the other switching module.

3~3~

The path hunt system process in a given switching ( module responds to a CSR message by executing the same program shown in FIG. 52 through 54. The CSR message is received in block 6220 and then during block 6230, the time slots removed as busy by the other switching module, which time slots are defined in the CSR message, are freed for subsequent inclusion in candidate sets selected by the given switching module. Execution then proceeds to block 6240 and continues in the same manner described above with respect to the CS message.
It should be noted that the network time slot selection for any given call may be made either by the terminating switching module or by the originating switching module. If the selection is made in the terminating switching module, the CONNECT message is transmitted by the path hunt system process in that module to control memory 29 and the path hunt completion tPHC) message is transmitted by the path hunt system process to the terminating terminal process. In the present embodiment, if the selection is made in the originating switching module the path hunt system process in the originating switching module transmits a PHC message to the path hunt system process in the terminating switching module. The path hunt system process in the terminating switching module then proceeds in the same manner as if it has made the network time slot selection. When the originating switching module learns that a network time slot has been selected for the call, the other members of the candidate set are then marked as available to be included in another candidate set selected by that originating switching module.
As a first example of call setup in System V, the example illustrated in FIG. 43 with respect to System IV is revisited. Assume that the number 355-2289 is dialed at subscriber set 25 connected to switching module 229. The initial steps leading up to the determination of the terminating port are the same as in the System IV example.

3~

An originating terminal process 7008 (EIG. 56) is created which transmits a RTREQ message to routing system process 7002. Process 7002 is unable to complete the determination of the terminating port but by reading the MODTRAN relation (FIG. 32) determines that the needed directory number translation information is stored in switching module 202.
Process 7002 then transmits a RTG-N message to routing system process 7004 in switching module 202, which determines that the terminating port is connected to subscriber set 23 of switching module 201. Process 7004, instead of transmitting a message to central control 30 as in System IV, transmits a RTGEN message to termination system process 7005 in switching module 201. Process 7005 determines that subscriber set 23 is idle, creates a terminating terminal process 7009 and transmits a LNTERM
message to process 7009. In response, process 7009 transmits a path request (PR) message to a path hunt system process 7013 within switching module 201. Path hunt system process 7013 determines based on ORIGGPI and TERMGPI fields in the PR message that the call is an inter-module call.
Therefore process 7013 accesses its TIMESLOT relation and ~ormulates a path hunt request (PHR) message defining the availability of the 512 channels TSl through TS512 between switching module 201 and time-multiplexed switch 10.
Assume for the present example that 78 of those channels are available, i.e., not busy or reserved. Process 7013 then transmits the PHR rnessage to a path hunt system process 7011 in originating switching module 229. Process 7011 accesses its TIMESLOT relation to determine which of the 7~ available channels defined by the PHR message, have corresponding channels between switching moclule 229 and time-multiplexecl switch 10 that are also available. Assume for this example that there are 49 such channels. Path hunt system process 7011 selects and reserves four of the 49 channels as the candidate set for the call, for example channels TS14, TS99, TS349 and TS41n. Path hunt system process 7011 also selects one of the four channels, ~or 3~

example channel ~rs99, as the first choice (~C) time slot.
( Path hunt system process 7011 then formulates a candidate set (CS) message defining the candidate set and the FC time slot and transmits the CS message to path hunt system 5 process 7013 in terminating switching module 201. Process 7013 accesses its TIMESLOT relation to determine whether TS99 is busy and if not, whether it has been designated as the FC time slot for another unresolved call. Assume for this example, that TS99 is not busy and has not been 10 designated as the FC time slot for any other call. Process 7013 marks TS99 as busy and TS14, TS349 and TS410 as available in its TIMESLOT relation and formulates a CONNECT
message for control rnemory 29 which defines that time-multiplexed switch 10 is to connect switching module 201 15 and switching module 229 during a particular time slot associated with TS99. (Recall that time-multiplexed switch 10 operates on the basis of 256 time slots but is connected to a given switching module by two time-multiplexed line pairs. Therefore each time slot of time-multiplexed 20 switch 10 is associated with two of the channels TSl through TS512). Process 7013 also formulates a path hunt completion (PHC) message defining the selected channel TS99. Process 7013 then transmits the CO~NECT messaye (not shown in FIG. 56) to control memory 29 and transmits the 25 PHC message to terminating terminal process 7009. Process 7009 responds by transmitting a SETUPCOMP message to originating terminal process 7008 defining the selected network time slot. Process 7008 accesses the TIMESLOT
relation to mark TS99 as busy and to free the remaining time slots of the candidate set, i.e., TSl~, TS349 and TS410, such that those time slots are a9ain eligible for selection by path hunt system process 7011 as part of a candidate set. The balance of the call setup sequence proceeds in the same manner as in System IV such that communication between subscriber sets ~5 and 23 is established.
As a second example, consider the following ~3~
- 10~ -variation on the previous example. When the CS message ( defining the candidate set cornprising TS14, TS99, TS349 and TS410, and defining TS99 as the ~C time slot, is received by path hunt system process 7013 in switching module 201, it is determined that TS99 between switching module 201 and time-multiplexed switch 10 has become busy. In other words TS99 has been selected for another call after the PHR
message was transmitted to switching module 229. Process 7013 removes TS99 from the candidate set and selects TS14 as the new FC time slot. Process 7013 then transmits a candidate set reduction (CSR) message (not shown in FIG. 56) to path hunt system process 7011 defining that TS99 should be freed in switching module 201 for selection in a candidate set for another call and defining that TS14 is the new FC tirne slot. Assume however that although TS14 is not yet busy, switching module 229 has just received a CS message from some other switching module, for example, switching module 208, and in response has chosen TS14 as a new FC time slot. This event is termed a collision. For the purposes of the call being described between modules 229 and 201, TS14 is put on what is referred to as a collision list. Path hunt system process 7011 selects a new FC time slot, for example TS410 and transmits to path hunt system process 7013, a CSR message (not shown) defining FC time slot TS410 and defining that TS14 should be removed from the candidate set and added to the collision list. Suppose, for example, that both TS410 and TS349 have just become busy in switching module 201. Since the candidate set has become empty, process 7013 uses the collision list, which in this example comprises only TS14, as the new candidate set. The collision list is then cleared. Process 7013 transmits a CSR message (not shown) including the defined FC time slot TS14 to process 7011 in switching module 229. Assume that TS14 has just become available in switching module 229. Process 7011 then selects TS14 as the network time slot for the call and transmits a path hunt completion (PHC) message (not shown) ~L2~33~

to process 7013 including the selected network time slot.
( The balance of the call setup proceeds as before.
Sequence calls are processed in System V in the same manner described above with respect to System III.
Path hunting is not initiated until the final terminating port has been determined and the call ha.s been reduced to a simple call.
The directory number translation function and the multi-port hunt group control function are both performed in System V in the same manner described above with respect to System IV.
Eirst Alternative Embodiment of System V
In the embodiment of System V just described, each switching module can be contemporaneously negotiating with a number of other switching modules for paths for multiple calls. In a first alternative embodiment of System V, each switching module is involved in hunting for a path for only one call at a time. In the first alternative embodiment, once the terminating switching module transmits a path hunt request for a given call defining the idle channels between that switching module and time-multiplexed switch 10, it transmits no more path hunt requests until the network time slot for the given call has been selected. The terminating switching module also defers responding to any incoming path hunt requests until the network time slot ~or the given call has been selected. The originating switching module can therefore select any of the idle channels defined by the path hunt request for the given call and be assured that the selected channel is still idle from the terminating switching module. Once the channel is selected for the call, the originating switching module informs the terminating switching module of the selected channel and the terminating switching module is then free to respond to incoming path hunt requests and to transmit a path hunt request for the next call. If the terminating switching module is not informed of a selected channel for a call 33~
-- 1 o, '-within a predetermined time afte~ transmitting a path hunt request, it first responds to any incoming path hunt requests that have been received from other switching modules and then retransmits the previous path hunt request, modified of course to reflect any change in the status of the channels.
Second Alternative Embodiment of System V
In a second alternative embodiment of System V, the 512 channels TSl through TS512 are divided into four groups: Group l comprising channels TSl through TSl28, Group 2 comprising channels TSl29 through TS256, Group 3 comprising channels TS257 through TS384 and Group 4 comprising channels TS385 through TS512. The second alternative embodiment is similar to the first alternative embodiment except that a given switching module can be hunting for paths for four calls contemporaneously--one for each group of channels. In this second alternative embodiment, each path hunt request only defines idle channels from one of the groups. Once a terminating switching module has transmitted a path hunt request for a given call defining for example, the idle Group 1 channels between the terminating switching module and time-multiplexed 10, it transmits no more path hunt requests defining Group 1 channels until the network time slot for the given call has been selected. The terminating switching module also defers responding to incoming path hunt requests defining Group 1 channels until the network time slot for the given call has been selected. Thus the originating switching module can select any of the idle Group l channels defined by the path hunt request for the given call and be assured that the selected channel is still idle from the terminating switching module. The hunting for paths is effected independently within each of the other groups in a similar manner.
It ls to be understood that the above-described switching systems are merely illustrative of the principles of the present invention and that other ~z~
- 10~ -( embodiments may be devised by those skilled in the art without departing from the spirit and scope of the invention.

~, , ~

Claims (25)

Claims:
1. In a switching system having a plurality of ports, said switching system comprising a plurality of switching modules each associated with a corresponding subset of said ports and inter-module connection means for providing communication channels among said switching modules for inter-module communication, each of said switching modules comprising means for determining based on directory numbers, terminating ones of said plurality of ports for calls, means for storing sequence call data for each port of the associated subset of said ports, and means for allocating said communication channels of said inter-module connection means to calls, a call processing method comprising a first one of said switching modules determining, based on a directory number received for a given call from an originating port associated with said first switching module, a first terminating port associated with a second one of said switching modules, said first switching module transmitting a first message to said second switching module defining said given call and said first terminating port, said second switching module reading the sequence call data for said first terminating port, said second switching module determining based on a second directory number, when said sequence call data for said first terminating port defines that calls are to be routed to said second directory number, a second terminating port associated with a third one of said switching modules, said second switching module transmitting a second message to said third switching module defining said given call and said second terminating port, said third switching module reading the sequence call data for said second terminating port and said third switching module effecting an allocation of a given one of said communication channels between said first switching module and said third switching module to said given call, when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number.
2. A method in accordance with claim 1 further comprising said third switching module connecting said second terminating port to said given communication channel, said third switching module transmitting a third message to said first switching module defining said given call and said given communication channel and said first switching module connecting said originating port to said given communication channel.
3. A method in accordance with claim 1 wherein said effecting step further comprises said third switching module allocating as said given communication channel, an available one of a first plurality of said communication channels between said first switching module and said third switching module unless all of said first plurality of communication channels are busy, said third switching module transmitting a third message to said first switching module defining said given call when all of said first plurality of communication channels are busy and said first switching module allocating as said given communication channel, an available one of a second plurality of said communication channels between said first switching module and said third switching module.
4. A method in accordance with claim 1 wherein said effecting step further comprises said first and third switching modules communicating to select said given channel.
5. In a switching system having a plurality of ports, said switching system comprising a plurality of switching modules each associated with a corresponding subset of said ports, each of said switching modules comprising means for determining based on directory numbers, terminating ones of said plurality of ports for calls, and means for storing sequence call data for each port of the associated subset of said ports, a call processing method comprising a first one of said switching modules determining, based on a directory number received for a given call from an originating port associated with said first switching module, a first terminating port associated with a second one of said switching modules, said first switching module transmitting a first message to said second switching module defining said given call and said first terminating port, said second switching module reading the sequence call data for said first terminating port, said second switching module determining based on a second directory number, when said sequence call data for said first terminating port defines that calls are to be routed to said second directory number, a second terminating port associated with said first switching module, said second switching module transmitting a second message to said first switching module defining said given call and said second terminating port, said first switching module reading the sequence call data for said second terminating port and said first switching module connecting said originating port and said second terminating port, when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number.
6. In a switching system having a plurality of ports defined by an associated plurality of directory numbers, said switching system having a plurality of switching modules each associated with a corresponding subset of said ports and inter-module connection means for providing communication channels among said switching modules for inter-module communication, each of said switching modules storing translation data defining, for each of a subset of said plurality of directory numbers, the one of said plurality of ports defined by said each of said subset of directory numbers, storing index data defining, for each of said plurality of directory numbers, one of said switching modules that stores the translation data for said each of said plurality of directory numbers, and storing sequence call data for each of the subset of said ports associated with said each switching module, a call processing method comprising a first one of said switching modules receiving a first directory number for a call from an originating one of its associated subset of said ports, said first switching module accessing its index data and determining that the translation data for said first directory number is stored by a second one of said switching modules, said first switching module transmitting a first message to said second switching module defining said call and said first directory number, said second switching module accessing its translation data and determining that said first directory number defines a first terminating one of said ports associated with said second switching module, said second switching module reading the sequence call data for said first terminating port, when said sequence call data for said first terminating port defines that calls are to be completed to a second directory number, said second switching module accessing its index data and determining that the translation data for said second directory number is stored by a third one of said switching module, said second switching module transmitting a second message to said third switching module defining said call and said second directory number, said third switching module accessing its translation data and determining that said second directory number defines a second terminating port associated with said third switching module, said third switching module reading the sequence call data for said second terminating port and when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number, said third switching module effecting an allocation of a given one of said communication channels between said first switching module and said third switching module to said call.
7. A method in accordance with claim 6 further comprising said third switching module connecting said second terminating port to said given communication channel, said third switching module transmitting a third message to said first switching module defining said given call and said given communication channel and said first switching module connecting said originating port to said given communication channel.
8. A method in accordance with claim 6 wherein said effecting step further comprises said third switching module allocating as said given communication channel, an available one of a first plurality; of said communication channels between said first switching module and said third switching module unless all of said first plurality of communication channels are busy, said third switching module transmitting a third message to said first switching module defining said given call when all of said first plurality of communication channels are busy and said first switching module allocating as said given communication channel, an available one of a second plurality of said communication channels between said first switching module and said third switching module.
9. A method in accordance with claim 6 wherein said effecting step further comprises said first and third switching modules communicating to select said given channel.
10. In a switching system having a plurality of ports defined by an associated plurality of directory numbers, said switching system comprising a plurality of switching modules each associated with a corresponding subset of said ports, each of said switching modules storing translation data defining, for each of a subset of said plurality; of directory numbers, the one of said plurality of ports defined by said each of said subset of directory numbers, storing index data defining, for each of said plurality of directory numbers, one of said switching modules that stores the translation data for said each of said plurality; of directory numbers, and storing sequence call data for each of the subset of said ports associated with said each switching module, a call processing method comprising a first one of said switching modules receiving a first directory number for a call from an originating one of its associated subset of said ports, said first switching module accessing its index data and determining that the translation data for said first directory number is stored by a second one of said switching modules, said first switching module transmitting a first message to said second switching module defining said call and said first directory number, said second switching module accessing its translation data and determining that said first directory number defines a first terminating one of said ports associated with said second switching module, said second switching module reading the sequence call data for said first terminating port, when said sequence call data for said first terminating port defines that calls are to be completed to a second directory number, said second switching module accessing its index data and determining that the translation data for said second directory number is stored by said first switching module, said second switching module transmitting a second message to said first switching module defining said call and said second directory number, said first switching module accessing its translation data and determining that said second directory number defines a second terminating one of said ports associated with said first switching module, said first switching module reading the sequence call data for said second terminating port and when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number, said first switching module connecting said originating port and said second terminating port.
11. In a switching system having a plurality of ports defined by an associated plurality of directory numbers, said switching system comprising a plurality of switching modules each associated with a corresponding subset of said ports, and inter-module connection means for providing communication channels among said switching modules for inter-module communication, each of said switching modules storing translation data defining, for each of a subset of said plurality of directory numbers, the one of said plurality of ports defined by said each of said subset of directory numbers, storing index data defining, for each of said plurality; of directory numbers, one of said switching modules that stores the translation data for said each of said plurality of directory numbers, and storing sequence call data for each of the subset of said ports associated with said each of said plurality of directory numbers, and storing sequence call data for each of the subset of said ports associated with said each switching module, a call processing method comprising a first one of said switching modules receiving a first directory number for a call from an originating one of its associated subset of said ports, said first switching module accessing its index data and determining that the translation data for said first directory number is stored by a second one of said switching modules, said first switching module transmitting a first message to said second switching module defining said originating port and said first directory number, said second switching module accessing its translation data and determining that said first directory number defines a first terminating one of said ports associated with a third one of said switching modules, said second switching module transmitting a second message to said third switching module defining said originating port and said first terminating port, said third switching module reading the sequence call data for said first terminating port, when said sequence call data for said first terminating port defines that calls are to be completed to a second directory number, said third switching module accessing its index data and determining that the translation data for said second directory number is stored by a fourth one of said switching modules, said third switching module transmitting a third message to said fourth switching module defining said originating port and said second directory number, said fourth switching module accessing its translation data and determining that said second directory number defines a second terminating one of said ports associated with a fifth one of said switching modules, said fourth switching module transmitting a fourth message to said fifth switching module defining said originating port and said second terminating port, said fifth switching module reading the sequence call data for said second terminating port and when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number, said fifth switching module effecting an allocation of a given one of said communication channels between said first switching module and said fifth switching module to said call.
12. A method in accordance with claim 11 further comprising said fifth switching module connecting said second terminating port to said given communication channel, said fifth switching module transmitting a fifth message to said first switching module defining said originating port and said given communication channel and said first switching module connecting said originating port to said given communication channel.
13. A method in accordance with claim 11 wherein said effecting step further comprises said fifth switching module allocating as said given communication channel, an available one of a first plurality of said communication channels between said first switching module and said fifth switching module unless all of said first plurality of communication channels are busy, said fifth switching moduling transmitting a fifth message to said first switching module defining said call when all of said first plurality of communication channels are busy and said first switching module allocating as said given communication channel, an available one of a second plurality of said communication channels between said first switching module and said fifth switching module.
14. A method in accordance with claim 11 wherein said effecting step further comprises said first and fifth switching modules communicating to select said given channel.
15. In a switching system for selectively interconnecting a plurality of switching modules each associated with a corresponding subset of said ports and inter-module connection means, each of said switching modules comprising switching means providing communication channels among its associated subset of said ports and said inter-module connection means, and control means for controlling the establishment of communication channels by said switching means, said inter-module connection means comprising means for providing communication channels among the switching means of said switching modules for inter-module communication, said control means of said each switching module further comprising means for effecting the establishment of communication channels by said inter-module connection means from said switching means of said each switching module to the switching means of other ones of said switching modules and means for storing sequence call data for each of the subset of said ports associated with said each switching module, a method of processing a call to a first one of said directory numbers from an originating one of said switching modules comprising determining, by the control means of said originating switching module, a first terminating one of said switching modules associated with the one of said ports defined by said first directory number, transmitting, by the control means of said first terminating switching module, to the control means of said second terminating switching module, a second message defining said call and said originating switching module, reading, by the control means of said second terminating switching module, the sequence call data for said port defined by said second directory number to determine whether said call is to be completed to said second directory number and effecting, by the control means of said second terminating switching module, the establishment by said inter-module connection means of a given one of said communication channels from the switching means of said second terminating switching module to the switching means of said originating switching module, upon determining that said call is to be completed to said second directory number.
16. In a switching system for selectively interconnecting a plurality of ports, said switching system comprising a plurality of switching modules each associated with a corresponding subset of said ports and inter-module connection means for providing communication channels among said switching modules for inter-module communication, each of said switching modules comprising means for determining based on directory numbers, terminating one of said plurality of ports for calls, means for storing sequence call data for each of the subset of said ports associated with said each switching module and means for allocating said communication channels of said inter-module connection means to calls, a method of processing a given call from an originating port to a first directory number comprising determining, by one of said switching modules, a first terminating port defined by said first directory number, reading, by one of said switching modules with which said first terminating port is associated, the sequence call data for said first terminating port, determining, by one of said switching modules when said sequence call data for said first terminating port defines that calls are to be routed to a second directory number, a second terminating port defined by said secondary directory number, reading, by the one of said switching modules with which said second terminating port is associated, the sequence call data for said second terminating port and allocating, by one of said switching modules when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number, one of said communication channels of said inter-module connection means between the one of said switching modules with which said originating port is associated and the one of said switching modules with which said second terminating port is associated, is said given call.
17. A switching system comprising a plurality of ports, a plurality of switching modules each associated with a corresponding subset of said ports and inter-module connection means for providing communication channels among said switching modules for inter-module communication;
wherein each of said switching modules comprises means for storing sequence call data for each port of the associated subset of said ports;
wherein a first one of said switching modules further comprises means responsive to a directory number received for a given call from an originating port associated with said first switching module, for determining a first terminating port associated with a second one of said switching modules and means for transmitting a first message to said second switching module defining said given call and said first terminating port;
wherein second switching module further comprises means responsive to said first message for reading the sequence call data for said first terminating port, means for determining based on a second directory number, when said sequence call data for said first terminating port defines that calls are to be routed to said second directory number, a second terminating port associated with a third one of said switching modules and means for transmitting a second message to said third switching module defining said given call and said second terminating port;
and wherein said third switching module further comprises means responsive to said second message for reading the sequence call data for said second terminating port and means for effecting an allocation of a given one of said communication channels between said first switching module and said third switching module to said given call, when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number.
18. A switching system comprising a plurality of ports and a plurality of switching modules each associated with a corresponding subset of said ports and each comprising means for storing sequence call data for each port of the associated subset of said ports;
wherein a first one of said switching modules further comprises means responsive to a directory number received for a given call from an originating port associated with said first switching module, for determining a first terminating port associated with a second one of said switching modules and means for transmitting a first message to said second switching module defining said given call and said first terminating port;
wherein said second switching module further comprises means responsive to said first message for reading the sequence call data for said first terminating port, means for determining based on a second directory number, when said sequence call data for said first terminating port defines that calls are to be routed to said second directory number, a second terminating port associated with said first switching module and means for transmitting a second message to said first switching module defining said given call and said second terminating port;
and wherein said first switching module further comprises means responsive to said second message for reading the sequence call data for said second terminating port and means for connecting said originating port and said terminating port, when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number.
19. In a switching system having a plurality of ports, said switching system comprising a plurality of switching modules each associated with A corresponding subset of said ports and inter-module connection means for providing communication channels among said switching modules for inter-module communication, each of said switching modules comprising means for determining based on directory numbers, terminating ones of said plurality of ports for calls, means for storing sequence call data for each port of the associated subset of said ports, and means for allocating said communication channels of said inter-module connection means to calls, a call processing method comprising a first one of said switching modules determining, based on a directory number received for a given call from an originating port associated with said first switching module, a first terminating port associated with a second one of said switching modules, said first switching module allocating a given one of said communication channels between said first switching module and said second switching module to said given call, said first switching module transmitting a first message to said second switching module defining said given call and said first terminating port, said second switching module reading the sequence call data for said first terminating port, said second switching module transmitting, when said sequence call data for said first terminating port defines that calls are to be routed to a second directory number, a second message to said first switching module defining said given call and said second directory number, said first switching module determining, based on said second directory number, a second terminating port associated with a third one of said switching modules, said first switching module deallocating said given communication channel between said first switching module and said second switching module, said first switching module allocating a given one of said communication channels between said first switching module and said third switching module to said given call, said first switching module transmitting a third message to said third switching module defining said given call and said second terminating port, said third switching module reading the sequence call data for said second terminating port and said third switching module connecting said second terminating port to said given communication channel between said first switching module and said third switching module, when said sequence call data for said second terminating port defines that calls fire to be completed to said secondary directory number.
20. A method in accordance with claim 19 further comprising said third switching module transmitting a fourth message to said first switching module defining said given call and said first switching module connecting said originating port to said given communication channel between said first switching module and said third switching module.
21. In a switching system having A plurality of ports, said switching system comprising a plurality of switching modules each associated with a corresponding subset of said ports and intermodule connection means for providing communication channels among said switching modules for inter-module communication, each of said switching modules comprising means for determining based on directory numbers, terminating ones of said plurality of ports for calls, means for storing sequence call data for each port of the associated subset of said ports, and means for allocating said communication channels of said inter-module connection means to calls, a call processing method comprising a first one of said switching modules determining, based on a directory number received for a given call from an originating port associated with said first switching module, a first terminating port associated with a second one of said switching modules, said first switching module allocating a given one of said communication channels between said first switching module and said second switching module to said given call, said first switching module transmitting a first message to said second switching module defining said given call and first terminating port, said second switching module reading the sequence call data for said first terminating port, said second switching module transmitting, when said sequence call data for said first terminating port defines that calls are to be routed to a second directory number, a second message to said first switching module defining said given call and said second directory number, said first switching module determining, based on said second directory number, a second terminating port associated with said first switching module, said first switching module deallocating said given communication channel between said first switching module and said second switching module, said first switching module connecting said originating port and said second terminating port, when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number.
22. In a switching system having a plurality of ports defined by an associated plurality; of directory numbers, said switching system comprising a plurality of switching modules each associated with a corresponding subset of said ports and inter-module connection means for providing communication channels among said switching modules for inter-module communication, each of said switching modules storing translation data defining, for each of a subset of said plurality of directory numbers, the one of said plurality of ports defined by said each of said subset of directory numbers, storing index data defining, for each of said plurality of directory numbers, the one of said switching modules that stores the translation data for said each of said plurality of directory numbers, and storing sequence call data for each of the subset of said ports associated with said each switching module, a call processing method comprising a first one of said switching modules reading its index data and determining that the translation data for a directory number received for a given call from an originating port associated with said first switching module, is stored by a second one of said switching modules, said first switching module allocating a given one of said communication channels between said first switching module and said second switching module to said given call, said first switching module transmitting a first message to said second switching module defining said received directory number, said second switching module reading its translation data and determining that said received directory number defines a first terminating port associated with said second switching module, said second switching module reading the sequence call data for said first terminating port, when said sequence call data for said first terminating port defines that calls are to be completed to a second directory number, said second switching module transmitting a second message to said first switching module defining said given call and said second directory number, said first switching module reading its index data and determining that the translation data for said second directory number is stored by a third one of said switching modules, said first switching module deallocating said given communication channel between said first switching module and said second switching module, said first switching module allocating a given one of said communication channels between said first switching module and said third switching module to said given call, said first switching module transmitting a third message to said third switching module defining said given call and said second directory number, said third switching module reading its translation data and determining that said second directory number defines a second terminating port associated with said third switching module, said third switching module reading the sequence call data for said second terminating port and when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number, said third switching module connecting said second terminating port to said given communication channel between said first switching module and said third switching module.
23. A method in accordance with claim 22 further comprising said third switching module transmitting a fourth message to said first switching module defining said given call and said first switching module connecting said originating port to said given communication channel between said first switching module and said third switching module.
24. A switching system comprising a plurality of ports, a plurality of switching modules each associated with a corresponding subset of said ports and inter-module connection means for providing communication channels among said switching modules for inter-module communication, each of said switching modules comprising memory means for storing sequence call data for each port of the associated subset of said ports;
wherein a first one of said switching modules further comprises means responsive to a directory number received for a given call from an originating port associated with said first switching module, for determining a first terminating port associated with A second one of said switching modules, means for allocating a given one of said communication channels between said first switching module and said second switching module to said given call and means for transmitting a first message to said second switching module defining said given call and said first terminating port;
wherein said second switching module further comprises means responsive to said first message for reading the sequence call data for said first terminating port and means for transmitting, when said sequence call data for said first terminating port defines that calls are to be routed to a second directory number, a second message to said first switching module defining said given call and said second directory number;
wherein said determining means of said first switching module is further responsive to said second message defining said second directory number, for determining, based on said second directory number, a second terminating port associated with a third one of said switching modules;
wherein said first switching module further comprises means for deallocating said given communication channel between said first switching module and said second switching module;
wherein said allocating means of said first switching module is further responsive to said determination of said second terminating port, for allocating a given one of said communication channels between said first switching module and said third switching module to said given call;
wherein said transmitting means of said first switching module is responsive to said determination of said second terminating port, for transmitting a third message to said third switching module defining said given call and said second terminating port; and wherein said third switching module further comprises means responsive to said third message for reading the sequence call data for said second terminating port and means for connecting said second terminating port to said given communication channel between said first switching module and said third switching module, when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number.
25. A switching system comprising a plurality of ports, a plurality of switching modules each associated with a corresponding subset of said ports and inter-module connection means for providing communication channels among said switching modules for inter-module communication;
each of said switching modules comprising memory means for storing sequence call data for each port of the associated subset of said ports;
wherein a first one of said switching modules further comprises means responsive to a directory number received for a given call from an originating port associated with said first switching module, for determining a first terminating port associate with a second one of said switching modules, means for allocating a given one of said communication channels between said first switching module and said second switching module to said given call and means for transmitting a first message to said second switching module defining said given call and said first terminating port;
wherein said second switching module further comprises means responsive to said first message for reading the sequence call data for said first terminating port and means for transmitting, when said sequence call data for said first terminating port defines that calls are to be routed to a second directory number, a second message to said first switching module defining said given call and said second directory number;
wherein said determining means of said first switching module is further responsive to said second message defining said second directory number, for determining, based on said second directory number, a second terminating port associated with said first switching module;
wherein said first switching module further comprises means for deallocating said given communication channel between said first switching module and said second switching module, means for reading the sequence call data for said second terminating port and means for connecting said originating port and said second terminating port, when said sequence call data for said second terminating port defines that calls are to be completed to said second directory number.
CA000501114A 1985-02-07 1986-02-05 Processing sequence calls in a distributed control switching system Expired CA1243386A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US699,464 1985-02-07
US06/699,464 US4686701A (en) 1985-02-07 1985-02-07 Processing sequence calls in a distributed control switching system

Publications (1)

Publication Number Publication Date
CA1243386A true CA1243386A (en) 1988-10-18

Family

ID=24809452

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000501114A Expired CA1243386A (en) 1985-02-07 1986-02-05 Processing sequence calls in a distributed control switching system

Country Status (8)

Country Link
US (1) US4686701A (en)
EP (1) EP0214179B1 (en)
JP (1) JP2723217B2 (en)
KR (1) KR950002763B1 (en)
CN (1) CN1014201B (en)
CA (1) CA1243386A (en)
DE (1) DE3672350D1 (en)
WO (1) WO1986004740A2 (en)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4694487A (en) 1985-02-07 1987-09-15 American Telephone And Telegraph Company, At&T Bell Laboratories Controlling multi-fort hunt groups in a distributed control switching system
US4683584A (en) 1985-02-07 1987-07-28 American Telephone And Telegraph Company, At&T Bell Laboratories Directory number translation in a distributed control switching system
US4644528A (en) 1985-02-07 1987-02-17 At&T Bell Laboratories Terminating port determination in a distributed control switching system using a distributed database
US7058062B2 (en) * 1986-09-16 2006-06-06 Hitachi, Ltd. Packet switching system having self-routing switches
US5043979A (en) 1986-09-16 1991-08-27 Hitachi, Ltd. Time-division channel arrangement
US6005867A (en) * 1986-09-16 1999-12-21 Hitachi, Ltd. Time-division channel arrangement
US4827499A (en) * 1987-06-12 1989-05-02 American Telephone And Telegraph Company At&T Bell Laboratories Call control of a distributed processing communications switching system
DE69230905T2 (en) * 1991-06-28 2000-08-17 Ericsson Telefon Ab L M USER MODULES IN TELECOMMUNICATION SYSTEMS
US6181703B1 (en) 1995-09-08 2001-01-30 Sprint Communications Company L. P. System for managing telecommunications
US6031840A (en) * 1995-12-07 2000-02-29 Sprint Communications Co. L.P. Telecommunications system
CZ286974B6 (en) * 1994-05-05 2000-08-16 Sprint Communications Co Method and apparatus for control of signaling processing system
US6631133B1 (en) 1994-05-05 2003-10-07 Sprint Communications Company L.P. Broadband telecommunications system
US6430195B1 (en) * 1994-05-05 2002-08-06 Sprint Communications Company L.P. Broadband telecommunications system interface
US5920562A (en) * 1996-11-22 1999-07-06 Sprint Communications Co. L.P. Systems and methods for providing enhanced services for telecommunication call
US5926482A (en) * 1994-05-05 1999-07-20 Sprint Communications Co. L.P. Telecommunications apparatus, system, and method with an enhanced signal transfer point
US5991301A (en) * 1994-05-05 1999-11-23 Sprint Communications Co. L.P. Broadband telecommunications system
US5642396A (en) * 1995-05-10 1997-06-24 Mci Corporation Release cause table for failed calls in SS7/ISDN Networks
US6667982B2 (en) * 1996-11-22 2003-12-23 Sprint Communications Company, L.P. Broadband telecommunications system interface
US6115380A (en) * 1996-11-22 2000-09-05 Sprint Communications Co., L.P. Broadband telecommunications system
US6002689A (en) * 1996-11-22 1999-12-14 Sprint Communications Co. L.P. System and method for interfacing a local communication device
AU718960B2 (en) * 1996-11-22 2000-05-04 Sprint Communications Company, L.P. System and method for transporting a call in a telecommunication network
US6137800A (en) * 1997-05-09 2000-10-24 Sprint Communications Company, L. P. System and method for connecting a call
US6178170B1 (en) 1997-05-13 2001-01-23 Sprint Communications Company, L. P. System and method for transporting a call
US6888820B1 (en) * 1998-02-20 2005-05-03 Sprint Communications Company L.P. System and method for treating a call for call processing
US6714217B2 (en) 1998-12-18 2004-03-30 Sprint Communication Company, L.P. System and method for providing a graphical user interface to, for building, and/or for monitoring a telecommunication network
US6888833B1 (en) * 1998-12-22 2005-05-03 Sprint Communications Company L.P. System and method for processing call signaling
US7079530B1 (en) 1999-02-25 2006-07-18 Sprint Communications Company L.P. System and method for caching toll free number information
US7103068B1 (en) 1999-05-04 2006-09-05 Sprint Communication Company L.P. System and method for configuring bandwidth transmission rates for call connections
US6895088B1 (en) * 1999-05-21 2005-05-17 Sprint Communications Company L.P. System and method for controlling a call processing system
US6816497B1 (en) * 1999-11-05 2004-11-09 Sprint Communications Company, L.P. System and method for processing a call
US6704314B1 (en) 1999-12-15 2004-03-09 Sprint Communications Company, L.P. Method and apparatus to control cell substitution
US6823057B1 (en) * 2000-06-30 2004-11-23 Verizon Network Services Inc. Methods and apparatus for notifying subscriber's of forwarded calls
US20060056399A1 (en) * 2003-08-06 2006-03-16 Christie Joseph M Telecommunication tandem system for circuit-based traffic
US8069251B2 (en) * 2007-06-01 2011-11-29 Adobe Systems Incorporated System and/or method for client-driven server load distribution
JP5603375B2 (en) * 2012-05-18 2014-10-08 Necプラットフォームズ株式会社 Terminal connection system and method, virtual time division switch, and virtual time division switch program

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE756180A (en) * 1969-09-19 1971-02-15 Western Electric Co COMMUNICATIONS SWITCHING CENTER
US3860761A (en) * 1973-06-14 1975-01-14 Bell Telephone Labor Inc Digital progressively controlled switching system
US4256926A (en) * 1976-10-21 1981-03-17 Wescom Switching, Inc. Microprocessor control complex for a telecommunication switching system
US4259549A (en) * 1976-10-21 1981-03-31 Wescom Switching, Inc. Dialed number to function translator for telecommunications switching system control complex
US4317962A (en) * 1977-03-02 1982-03-02 International Telephone And Telegraph Corporation Distributed control for digital switching system
DE2810245C2 (en) * 1978-03-09 1983-12-29 Siemens AG, 1000 Berlin und 8000 München Arrangement for the processing of functional sequences in a telephone system, in particular a telephone branch exchange, with a central control device and with data memories that can and cannot be changed individually for each connection
DE2837883C2 (en) * 1978-08-30 1983-09-08 Siemens AG, 1000 Berlin und 8000 München Method for call forwarding when a called subscriber station does not report in a centrally controlled telephone exchange system, in particular in a centrally controlled telephone exchange
JPS5616355A (en) * 1979-07-20 1981-02-17 Kokusai Denshin Denwa Co Ltd <Kdd> Dispersion-type switchboard
US4322843A (en) * 1979-12-26 1982-03-30 Bell Telephone Laboratories, Incorporated Control information communication arrangement for a time division switching system
US4340776A (en) * 1980-10-29 1982-07-20 Siemens Corporation Modular telecommunication system
US4442321A (en) * 1981-06-08 1984-04-10 Rockwell International Corporation Transparent dialing between interconnected telecommunication switching systems
US4400587A (en) * 1981-08-25 1983-08-23 Rockwell International Corporation Overflow and diversion to a foreign switch
US4527012B1 (en) * 1983-01-31 1994-12-13 Redcom Laboraties Inc Communications switching system with modular switching communicatons peripheral and host computer
US4583218A (en) * 1983-05-11 1986-04-15 At&T Bell Laboratories Control communication in a switching system having clustered remote switching modules

Also Published As

Publication number Publication date
DE3672350D1 (en) 1990-08-02
US4686701A (en) 1987-08-11
WO1986004740A3 (en) 1986-09-25
KR950002763B1 (en) 1995-03-24
EP0214179A1 (en) 1987-03-18
WO1986004740A2 (en) 1986-08-14
CN1014201B (en) 1991-10-02
EP0214179B1 (en) 1990-06-27
CN86101287A (en) 1986-10-22
KR870700201A (en) 1987-03-14
JP2723217B2 (en) 1998-03-09
JPS62501742A (en) 1987-07-09

Similar Documents

Publication Publication Date Title
CA1243386A (en) Processing sequence calls in a distributed control switching system
CA1243760A (en) Path hunting in a distributed control switching system
CA1250937A (en) Directory number translation in a distributed control switching system
EP0214178B1 (en) Controlling multi-port hunt groups in a distributed control switching system
CA1270958A (en) Resource allocation in distributed control systems
US4720854A (en) Architecture for distributed control telecommunication systems
CA1251546A (en) Terminating port determination in a distributed control switching system using a distributed database
CA1253600A (en) Controlling multi-port hunt groups in a distributed control switching system
USRE28337E (en) Telephone switching system with programmed auxiliary control for providing special services
CA1075384A (en) Conferencing arrangement for use in a pcm system
US3172956A (en) Time division switching system for telephone system utilizing time-slot interchange
CA1331398C (en) Communication channel ownership arrangement
WO1991000678A1 (en) Method of throughconnecting wideband connections in a digital time switch module between subscribers, and a device for carrying out the method
US6950509B2 (en) Method for determining a free connecting line in a switching center having a number of subscriber access units
KR20010002006A (en) Method for processing global centrex function by reallocated centrex station number in exchange system

Legal Events

Date Code Title Description
MKEX Expiry