United States Patent4713806
Oberlander , ; et al.December 15, 1987

Title

Communication system control arrangement

Abstract

In a multiservices digital network (FIG. 1), comprising separate narrowband switch (607) and wideband switches (505, 606), the network control complex (612) includes a program-controlled call processing arrangement (800) that is program-independent of a resource management arrangement (803) and of the physical network. The call processing arrangement views the network as comprising logical channels and logical call paths interconnecting logical channels. It does not distinguish between narrowband and wideband communications; it responds to subscriber (102) messages requesting subscriber functions for both narrowband and wideband communications by directing the resource management arrangement to establish and dismantle logical call paths and to create and destroy logical and physical connections between the logical channels and the logical call paths. The resource management arrangement distinguishes between narrowband and wideband communications; it responds to the directions by allocating and deallocating either narrowband or wideband network physical resources, as appropriate, for physical channels and physical call paths corresponding to the logical channels and the logical call paths, and directs either wideband switch controllers (507, 610) or narrowband switch controller (611), as appropriate, in creating and destroying the requested logical and physical connections between the channel and call path resources. The call processing arrangement is thus made independent of network physical resources, while the resource management arrangement is made independent of subscriber functions.


Inventors:Oberlander; Lewis B. (Buffalo Grove, IL), Spicer; David A.  (Batavia, IL), Straubs; Ralph V.  (Naperville, IL)
Assignee:American Telephone and Telegraph Company, AT&T Bell Laboratories (Murray Hill, NJ)
Appl. No.:840458
Filed:March 14, 1986

Current U.S. Class:370/358 902/39 
Current International Class:H04Q 11/04 (20060101)
Field of Search:370/58,60 379/88,89,94,269,284

U.S. Patent Documents
4228536October 1980Gueldenpfennig et al.
4256926March 1981Pitroda et al.
4322843March 1982Beuscher et al.
4442321April 1984Stehman
4475156October 1984Federico et al.
4567589January 1986Lecomte et al.
Other References
E H. Hafer et al., "A Virtual Switching Machine for the 5ESS.TM. Switching System", IEEE Global Telecommunications Conference (Globecom 1984), Record, vol. 1, pp. 6.1[6].1-5 (11-1984). .
T. Madej et al., "Controlling the Network of the 5ESS Switching System", IEEE Global Telecommunications Conference (Globecom 1984), Record, vol. 1, pp. 6.2.1-5 (11-1984). .
J. M. Griffiths, "ISDN Network Terminating Equipment", IEEE Transactions on Communications, vol. COM-30, No. 9 (9-1982), pp. 2137-2142..~
Primary Examiner: Masinick; Michael A.
Assistant Examiner: Chin; Wellington
Attorney, Agent or Firm:Volejnicek; David

Claims


What is claimed is:
1. A control arrangement for a communication switching system having first and second communication networks configurable independently from each other separately to provide first and second communications, respectively, for terminal logical channels of the system, the system further including first and second network control means for configuring the first and the second networks, respectively, in response to receipt of requirements signals, the control arrangement comprising:
first program controlled means cooperative with both the first and the second network control means and operable in response to receipt of requirements signals and associated signals indicating the first communications for generating requirements signals for controlling the operation of the first network control means to configure the first network into at least one of (a) physical communication channels corresponding to the logical channels, and (b) physical communication paths betweenthe physical channels and corresponding to logical communication paths, and being further operable in response to receipt of requirements signals and associated signals indicating the second communications for generating requirements signals for controlling the operation of the second network control means to configure the second network into at least one of (a) physical communication channels corresponding to the logical channels, and (b) physical communication paths between the physical channels and corresponding to logical communication paths; and
second program controlled means independent in program from the first program controlled means and operable in response to receipt of call signals and associated signals indicating either one of the first and the second communications for any one of the logical channels for processing call information to generate, both independently of and for association with the first or the second communication indicating signals, the requirements signals for controlling the operation of the first program controlled means to establish the logical communication paths between the one logical channel and another at least one logical channel, independently of both the first and the second networks and the first and the second network control means.

2. A control arrangement for a communication switching system having first and second physical resources configurable independently from each other separately to provide first and second communications, respectively, for terminal logical channels of the system, the first physical resources including a first switch having a plurality of ports connected to physical channels for corresponding to terminal logical channels, and the second physical resources including a second switch having a plurality of ports and a third switch having a plurality of ports some connected to ports of the second switch and others connected to portions of physical channels corresponding to terminal logical channels, the system further including a first controller responsive to receipt of requirements signals for configuring the first switch into switch paths between selected first switch ports, and a second and a third controller each responsive to receipt of requirements signals for configuring the second and the third switch, respectively, into switch paths between selected ports of the second and the third switch, respectively, the control arrangement comprising:
first program controlled means cooperative with the first, the second, and the third controllers and operable in response to receipt of requirements signals and associated signals indicating the first communications for (a) selecting ports of the first switch for physical communication paths corresponding to logical communication paths and (b) generating independently of the first switch requirements signals for controlling the operation of the first controller to establish switch paths through the first switch between the selected ports of the first switch, and further operable in response to receipt of requirements signals and associated signals indicating the second communications for (a) selecting ports of the second switch and of the third switch for physical communications paths corresponding to logical communication paths and for physical communication channels corresponding to the logical channels, respectively, and (b) generating independently of the second and the third switches first and second requirements signals for controlling the operation of the second and the third controller, respectively, to establish switch paths through the second and the third switch, respectively, between the selected ports of the second switch and of the third switch, respectively; and
second program controlled means independent in program from the first program controlled means and operable in response to receipt of call signals and associated signals indicating either one of the first and the second communications for any one of the logical channels for processing call information to generate, both independently of and for association with the first or the second communication indicating signals, the requirements signals for controlling the operation of the first program controlled means to establish the logical communication paths between the one logical channel and another at least one logical channel, independently of both the first and the second physical resources and the first, the second, and the third controllers.

3. A control arrangement for a communication switching system having first and second physical resources configurable independently from each other separately to provide first and second communications, respectively, for terminal logical channels of the system, the system further including first and second resource control means for configuring the first and the second resources, respectively, in response to receipt of requirement signals, the control arrangement comprising:
first program controlled means cooperative with both the first and the second resource control means and operable in response to receipt of requirements signals and associated signals indicating the first communications for both (a) allocating the first resources for at least one of (i) physical communication channels corresponding to the logical channels, and (ii) physical communication paths between the physical channels corresponding to logical communication paths, and (b) generating requirements signals for controlling the operation of the first resource control means to establish logical and physical connections between the allocated first physical resources, and further operable in response to receipt of requirements signals and associated signals indicating the second communications for both (a) allocating the second physical resources for at least one of (i) physical communication channels corresponding to the logical channels, and (ii) physical communication paths between the physical channels corresponding to logical communciation paths, and (b) generating requirements signals for controlling the operation of the second resource control means to establish logical and physical connections between the allocated second physical resources; and
second program controlled means independent in program from the first program controlled means and operable in response to receipt of call signals and associated signals indicating either one of the first and the second communications for any one of the logical channels for processing call information to generate, both independently of and for association with the first or the second communication indicating signals, the requirements signals for controlling the operation of the first program controlled means to both establish and control the logical communciation paths between the one logical channel and another at least one logical channel, independently of both the first and the second physical resources and the first and the second resource control means.

4. The arrangement of claim 3 for a system having first physical resources including a first switch having a plurality of ports connected to physical channels corresponding to terminal logical channels, and further having second physical resources including a second switch having a plurality of ports and a third switch having a plurality of ports some connected to ports of the second switch and others connected to portions of physical channels corresponding to terminal logical channels, the system further including a first controller for configuring the first switch into switch paths between selected first switch ports, and a second and a third controller for configuring the second and the third switch, respectively, into switch paths between selected ports of the second and the third switch, respectively, wherein
the first means are operable in response to receipt from the second program controlled means of the requirements signals and the associated signals indicating the first communications for both (a) allocating first switch ports to the logical paths and (b) generating independently of the first switch requirements signals for controlling the operation of the first resource control means to establish connections between the allocated first switch ports, and are further operable in response to receipt from the second program controlled means of the requirements signals and the associated signals indicating the second communications for both (a) allocating third switch ports for the physical channels corresponding to the logical channels and allocating second switch ports for the physical paths corresponding to the logical paths and (b) generating independently of the second and the third switch requirements signals for controlling the operation of the second and the third resource control means to establish logical and physical connections between the allocated second switch ports and between the allocated third switch ports, respectively.

5. A control arrangement for a communication switching system having narrowband and wideband physical resources configurable independently from each other each separately to provide narrowband and wideband communications, respectively, for terminal logical channels of the system, the system further including narrowband and wideband resource control means for configuring the narrowband and the wideband resources, respectively, in response to receipt of requirements signals, the control arrangement comprising
program controlled resource management means cooperative with both the narrowband and the wideband resource control means and operable in response to receipt of requirements signals and associated signals indicating narrowband communications for processing narrowband resource information both (a) to allocate narrowband physical resources for at least one of (i) physical communication channels corresponding to the logical channels and (ii) physical communication paths between the physical channels and corresponding to logical call paths, to establish the logical channels and call paths, and (b) to generate requirements signals for controlling the operation of the narrowband resource control means to establish connections between allocated narrowband physical resources for control of the logical call paths, and further operable in response to receipt of requirements signals and associated signals indicating wideband communications for processing wideband resource information both (a) to allocate wideband physical resources for at least one of (i) physical communication channels corresponding to the logical channels and (ii) physical communication paths between the physical channels and corresponding to logical call paths, to establish the logical channels and call paths, and to (b) generate requirements signals for controlling the generation of the wideband resource control means to establish connections between allocated wideband physical resources for control of the logical call paths; and
program controlled call processing means independent in program from the resource management means and operable in response to receipt of call signals and associated signals indicating either one of the narrowband and the wideband communications for any one of the logical channels for processing call information to generate, both independently of and for association with the narrowband or the wideband indicating signals, the requirements signals for controlling the operation of the resource management means to both establish and control the logical call paths between the one logical channel and another at least one logical channel, independently of both the narrowband and the wideband physical resources and the narrowband and the wideband resource control means.

6. The arrangement of claim 5 wherein
the call processing means generate, both independently of and for association with the band-indicating signals, requirements signals for controlling the operation of the resource management means to both (a) establish the logical call paths, and (b) establish logical and physical connections between the logical call paths and the logical channels for controlling the logical call paths; and wherein
the resource management means are operable in response to receipt from the call processing means of the requirements signals and the associated narrowband or wideband indicating signals for processing narrowband or wideband resource information, respectively, (a) to establish resource management logical structures for the logical channels and the logical call paths to establish the logical channels and call paths, (b) to allocate narrowband or wideband physical resources, respectively, to the logical channel structures for physical channels and to the logical call path structures for physical call paths between the physical channels, to establish the logical connections, and (c) to generate requirements signals for controlling the operation of the narrowband or the wideband resource control means, respectively, to establish connections between the resources allocated to the structures for establishment of the physical connections.

7. The arrangement of claim 6 for a system having narrowband resources including a narrowband switch having a plurality of ports for interconnection by switch paths internal to the narrowband switch, a plurality of physical channels connected to ports of the narrowband switch, and further having wideband resources including a first wideband switch having a plurality of ports for interconnection by switch paths internal to the first wideband switch and a second wideband switch having a plurality of ports for interconnection by switch paths internal to the second wideband switch, some second switch ports connected to ports of the first wideband switch and others connected to portions of physical channels, the system further including a narrowband switch controller for configuring the narrowband switch into switch paths between selected narrowband switch ports, and a first and a second wideband switch controller for configuring the first and the second wideband switch, respectively, into switch paths between selected ports of the first and the second wideband switch, respectively, wherein
the resource management means are operable in response to receipt from the call processing means of the requirements signals and associated signals indicating narrowband communications for processing narrowband resource information (a) to establish the logical channel and logical path structures, (b) to allocate the physical channels to the logical channel structures and to allocate the first switch ports to the logical path structures, and (c) to generate requirements signals for controlling the operation of the narrowband switch controller to establish switch paths to the first switch ports allocated to the established structures for establishment of physical connections, and are further operable in response to receipt from the call processing means of the requirements signals and associated signals indicating wideband communications for processing wideband resource information (a) to establish the logical channel and logical path structures, (b) to allocate the second wideband switch ports to the logical channel structures and to allocate the first wideband switch ports to the logical path structures, and (c) to generate requirements signals for controlling the operation of the first and the second wideband controller to establish switch paths to the first and the second wideband switch ports, respectively, allocated to the established structures for establishment of physical connections.

8. The arrangement of claim 6 for a system having pre-established physical paths corresponding to logical paths leading to certain ones of the logical channels, wherein
the resource management means are operable in response to receipt from the call processing means of the requirements signals and associated signals indicating narrowband or wideband communications between one of the certain logical channels and another at least one logical channel for processing narrowband or wideband resource information, respectively, (a) to establish the logical channel structures for establishment of the logical channels, (b) to allocate narrowband or wideband physical resources for physical channels connecting to the pre-established physical call paths for establishment of logical connections, and (c) to generate requirements signals for controlling the operation of the narrowband or the wideband resource control means, respectively, to establish connections between the resources allocated to the channel structures and the pre-established paths for establishment of physical connections, and are further operable in response to receipt from the call processing means of requirements signals and associated signals indicating the narrowband or the wideband communications, respectively, between channels other than the certain logical channels for processing narrowband or wideband resource information, respectively, (a) to establish the logical structures for the logical channels and the logical call paths for establishment of the logical channels and call paths, (b) to allocate the narrowband or the wideband physical resources, respectively, to the logical channel structures for physical channels and to the logical call path structures for physical call paths between the physical channels, for establishment of the logical connections, and (c) to generate requirements signals for controlling the operation of the narrowband or the wideband resource control means, respectively, to establish connections between the resources allocated to the structures for establishment of the physical connections.

9. The arrangement of claim 5 wherein
the call processing means comprise
first and second process means for controlling a calling and a called end of a call, respectively, each process means operable in response to receipt of call signals and associated signals indicating either one of narrowband and wideband communications, for processing call information to generate, both independently of and for association with the narrowband and the wideband indicative signals, requirements signals for controlling the operation of the resource management means to both establish and control a logical call path to the logical channel at its end of the call, and
means responsive to receipt of the call signals for creating the first and the second process means for the call; and wherein
the resource management means are operable in response to receipt from the first and the second process means of the requirements signals and associated signals indicating the narrowband or the wideband communications, for processing narrowband or wideband resource respectively, both (a) to allocate the narrowband or wideband physical resources, respectively, for at least one of (i) physical channels corresponding to the logical channels and (ii) physical call paths leading to the physical channels and corresponding to the logical call paths, for establishment thereof and (b) to generate requirements signals for controlling the operation of the narrowband or the wideband resource control means, respectively, to establish connections between the physical resources allocated to the logical call paths for control of the logical call paths.

10. The arrangement of claim 9 wherein
the call processing means further comprise third process means for controlling a logical conference by coupling logical call paths of a plurality of call ends to a logical channel, the third process means operable in response to receipt of call signals and associated signals indicating narrowband or wideband communications for processing call information to generate, both independently of and for association with the narrowband or the wideband indicating signals, respectively, requirements signals for controlling the operation of the resource management means to both establish and control logical conference paths between the logical channel and the coupled logical call paths; wherein
the process creating means are further responsive to receipt of the call signals for creating the third process means for the conference; and wherein
the resource management means are further operable in response to receipt from the third process means of the requirements signals and associated signals indicating the narrowband or the wideband communications for processing narrowband or wideband resource information, respectively, both (a) to allocate the narrowband or the wideband physical resources, respectively, for physical conference paths between the physical call paths and the physical channel and corresponding to the logical conference paths for establishment thereof and (b) to generate requirements signals for controlling the operation of the narrowband or the wideband resource control means, respectively, to establish connections between the physical resources allocated to the logical conference paths for control of the conference paths.

11. The arrangement of claim 10 wherein
the first, second, and third process means of the call processing means each generate requirements signals for controlling the operation of the resource management means both (a) to establish logical paths, and (b) to establish logical and physical connections between the logical paths and the logical channels for controlling the logical paths; and wherein
the resource management means are operable in response to receipt from the first, second, and third process means of the requirements signals and associated signals indicating narrowband or wideband communications, for processing narrowband or wideband resource information, respectively, (a) to establish resource management logical structures for the logical channels and the logical call and conference paths for establishment of the logical channels and paths, (b) to allocate narrowband or wideband physical resources, respectively, to the logical channel path structures for physical channels and to the logical call and conference path structures for physical call and conference paths, respectively, for establishment of the logical connections, and (c) to generate requirements signals for controlling the operation of the narrowband or the wideband resource control means, respectively, to establish connections between the resources allocated to the respective structures for establishment of the physical connections.

12. The arrangement of claim 9 wherein
the first and the second process means of the call processing means each generate, both independently of and for association with the band-indicating signals, requirements signals for controlling the operation of the resource management means both (a) to establish logical call paths, and (b) to establish logical and physical connections between the logical call paths and the logical channels for controlling the logical call paths; and wherein
the resource management means are operable in response to receipt from the first and the second process means of the requirements signals and the associated narrowband or wideband indicating signals for processing narrowband or wideband resource information, respectively, (a) to establish resource management logical structures for the logical channels and the logical call paths for establishment of the logical channels and call paths, (b) to allocate narrowband or wideband physical resources, respectively, to the logical channel structures for physical channels and to logical call path structures for physical call paths, for establishment of the logical connections, and (c) to generate requirements signals for controlling the operation of the narrowband or the wideband resource control means, respectively, to establish connections between the resources allocated to the respective structures for establishment of the physical connections.

13. The arrangement of claim 12 wherein
the call processing means further comprise
third process means for controlling a plurality of calls, operable in response to receipt of call signals and associated signals indicating narrowband or wideband communications for calls to certain ones of the logical channels for processing call information to generate, both independently of and for association with the narrowband or the wideband indicating signals, requirements signals for controlling the operation of the resource management means to control logical call paths between the one logical channel and the certain logical channels; and wherein
the first and second process means are operable in response to receipt of call signals for calls to other than the certain logical channels.

14. The arrangement of claim 13 for a system having pre-established physical paths corresponding to logical paths leading to the certain ones of the logical channels, wherein
the third process means generate, both independently of and for association with the band-indicating signals, requirements signals for controlling the operation of the resource management means to establish connections between the logical call paths and the one logical channel thereby to control the logical call paths; and wherein
the resource management means are operable in response to receipt from the third process means of the requirements signals and the associated narrowband or wideband indicating signals for processing narrowband or wideband resource information, respectively, (a) to establish the logical channel structures for establishment of the logical channels, (b) to allocate the narrowband or wideband physical resources, respectively, for physical channels connecting to the pre-established physical call paths for establishment of logical connections to control the logical call paths, and (c) to generate requirements signals for controlling the operation of the narrowband or the wideband resource control means, respectively, to establish connections of the resources allocated to the logical channel structures with the pre-established paths for establishment of physical connections to control the logical call paths.

15. A control arrangement for a communication switching system having narrowband and wideband physical resources configurable independently from each other separately to provide narrowband and wideband communications, respectively, for terminal lo9ical channels of the system and having pre-established wideband physical paths corresponding to logical paths to certain ones of the terminal logical channels, the system further including narrowband and wideband resource control means for configuring the narrowband and the wideband resources, respectively, in response to receipt of requirements signals, the control arrangement comprising:
a program controlled resource management system and a program controlled call processing system independent in program from each other;
the call processing system comprising
first process means for controlling a plurality of calls, operable in response to receipt of call signals and associated signals indicating either one of the narrowband and the wideband communications for any one of the logical channels for calls to any of the certain logical channels, for processing call information to generate, both independently of and for association with the narrowband and the wideband indicating signals, requirements signals for controlling a logical call path between the one logical channel and one of the certain logical channels independently of the wideband and the narrowband physical resources and the narrowband and the wideband resource control means,
second and third process means for controlling a calling and a called end of a call, respectively, each second and third process means operable in response to receipt of call signals and associated signals indicating either one of the narrowband and the wideband communications for any one of the logical channels for calls to any other than the certain logical channels, for processing call information to generate requirements signals for both establishing and controlling a logical call path to the logical channel at its end of the call independently of the narrowband and the wideband physical resources and the narrowband and the wideband resource control means,
fourth process means for controlling a logical conference by coupling logical call paths of a plurality of call ends to a logical channel, the fourth process means operable in response to receipt of call signals and associated signals indicating either one of the narrowband and the wideband communications for any one of the logical channels, for processing call information to generate, both independently of and for association with the narrowband or the wideband indicating signals, respectively, requirements signals for both establishing and controlling logical conference paths between the logical channel and the coupled logical call paths independently of the narrowband and the wideband physical resources and the narrowband and the wideband resource control means, and
means responsive to receipt of the call signals for creating the second, third, and fourth process means for each call to any other than the certain logical channels and for each conference, respectively; and
the resource management system comprising
first management means cooperative with both the narrowband and the wideband resource control means and operable in response to receipt of the requirements signals and associated signals indicating narrowband communications from the first process means, for processing narrowband resource information (a) to establish logical channel structures for establishment of the logical channels, (b) to allocate narrowband physical resources for physical channels connecting to the pre-established physical call paths for establishment of logical connections between the logical channels and the logical call paths to control the logical call paths, and (c) to generate requirements signals for controlling the operation of the narrowband resource control means to establish connections between the narrowband resources allocated to the logical channel structures for establishment of physical connections between the logical channels and the logical call paths to control the logical call paths, and further being operable in response to receipt of the requirements signals and associated signals indicating wideband communications from the first process means, for processing wideband resource information (a) to establish logical channel structures for establishment of the logical channels, (b) to allocate wideband physical resources for physical channels connecting to the pre-established physical call paths for establishment of logical connections between the logical channels and the logical call paths to control the logical call paths, and (c) to generate requirements signals for controlling the operation of the wideband resource control means to establish connections between the wideband resources allocated to the logical channel structures for establishment of physical connections between the logical channels and the logical call paths to control the logical call paths, and
second management means cooperative with both the narrowband and the wideband resource control means and operable in response to receipt of the requirements signals and associated signals indicating narrowband communications from the second, third, and fourth process means, for processing narrowband resource information (a) to establish resource management logical structures for the logical channels, logical call paths, and logical conference paths for establishment of the logical channels and call and conference call paths, (b) to allocate narrowband physical resources to the logical channel, call path, and conference path structures for physical channels, for physical call paths to the physical channels, and for physical conference paths between physical channels and call paths corresponding to coupled logical call paths, respectively, for establishment of logical connections between the logical channels and logical paths to control the logical paths, and (c) to generate requirements signals for controlling the operation of the narrowband resource control means to establish connections between the narrowband resources allocated to the logical structures for establishment of physical connections between the logical channels and logical paths to control the logical paths, and further being operable in response to receipt of the requirements signals and associated signals indicating wideband communications from the second, third, and fourth process means, for processing wideband resource information (a) to establish resource management logical structures for the logical channels, logical call paths, and logical conference paths for establishment thereof, (b) to allocate wideband physical resources to the logical channel, call path, and conference path structures for physical channels, for physical call paths to the physical channels, and for physical conference paths between physical channels and call paths corresponding to coupled logical call paths, respectively, for establishment of logical connections between the logical channels and logical paths to control the logical paths, and (c) to generate requirements signals for controlling the operation of the wideband resource control means to establish connections between the wideband resources allocated to the logical structures for establishment of physical connections between the logical channels and logical paths to control the logical paths.

16. The arrangement of claim 15 wherein
the call processing system first, second, third, and fourth process means generate requirements signals for establishing the logical and the physical connections for controlling the logical paths.

17. The arrangement of claim 15 for a system wherein narrowband resources include a narrowband switch having a plurality of ports for interconnection by switch paths internal to the narrowband switch and a plurality of physical narrowband channels corresponding to terminal logical channels and connected to ports of the narrowband switch, and wherein wideband resources include a first wideband switch having a plurality of ports for interconnection by switch paths internal to the first wideband switch and a second wideband switch having a plurality of ports for interconnection by switch paths internal to the second wideband switch, some second switch ports connected to ports of the first switch and others connected to physical wideband channels corresponding to terminal physical channels, the system further including a narrowband controller for configuring the narrowband switch into switch paths between selected narrowband switch ports, and a first and a second wideband switch controller for configuring the first and the second wideband switch, respectively, into switch paths between selected ports of the first and the second wideband switch, respectively, wherein
the first management means are operable in response to receipt of the requirements signals from the first process means and associated signals indicating wideband communications for processing wideband resource information (a) to allocate physical wideband channels and ports of the second wideband switch to the logical channel structures for establishment of the logical connections and (b) to generate requirements signals for controlling the operation of the second wideband switch controller to establish switch paths through the second wideband switch between the allocated ports and the pre-established paths for establishment of the physical connections; and wherein
the second management means are operable in response to receipt of the requirements signals from the second, third, and fourth process means and associated signals indicating of narrowband communications for processing narrowband resource information (a) to allocate physical narrowband channels to the logical channel structures and to allocate ports of the narrowband switch to the logical call path and conference path structures for establishment of the logical connections, and (b) to generate requirements signals for controlling the operation of the narrowband switch controller to establish switch paths through the narrowband switch between the allocated ports of calling and called end logical call path structures and between the allocated ports of logical conference path structures for establishment of the physical connections, and are further operable in response to receipt of the requirements signals from the second and the third process means and associated signals indicating wideband communications for processing wideband resource information (a)(i) to allocate physical wideband channels and ports of the second wideband switch to the logical channel structures and generate requirements signals for controlling the operation of the second wideband switch controller to establish switch paths through the second wideband switch between the allocated physical channels and ports and (a)(ii) to allocate ports of the first wideband switch to the logical call path structures, for establishment of the logical connections, and (b) to generate requirements signals for controlling the operation of the first wideband switch controller to establish switch paths through the first wideband switch between the allocated ports of calling and called end logical path structures for establishment of the physical connections.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS

The subject matter disclosed in this patent application relates to subject matter disclosed in application of H. R. Lehman et al. entitled "Digital Communication Network Architecture for Providing Universal Information Services", Ser. No.
809,196, filed on Dec. 13, 1985, and in application of L. B. Oberlander et al. entitled "Communication System Control Arrangement", Ser. No.480,959, filed on even date herewith, both of which related applications are assigned to the same assignee as this application.

TECHNICAL FIELD

The invention relates to the call processing and resource management portions of a communication system control arrangement, and particularly relates to the structure and cooperation of these two portions to provide to system subscribers an expandable variety of communication services through a variety of system structures.

BACKGROUND OF THE INVENTION

The control arrangement of a communication system is the intelligence that acts, generally in response to stimuli such as subscriber requests, to determine the configuration of system resources that is necessary to provide subscribers with desired communication services.

Control arrangements are typically designed to provide a predefined set of communication services within a predefined hardware system. This has the unfortunate consequence that addition of new features to the service capabilities of the control arrangements, or porting of the arrangement from one type of system hardware architecture to another, typically necessitate significant changes to, and often a radical redesign of, the whole control arrangement. For example, the traditional design of control software of a telephone electronic switching system typically requires that major modifications be made to the code of both high level functions (e.g., the call processing subsystem, which determines what to do) and low level functions (e.g., the resource management subsystem, which determines how to do it) either when the control software is being ported from one kind of telephone switching system architecture to another, or when new system fabrics and associated features are being added to the software. This, of course, limits the usefulness, cost effectiveness, and portability of the control software.

The above-described characteristics are disadvantageous to control apparatuses of conventional communication systems; they become even more so to control apparatuses of integrated services digital networks (ISDNs). Such networks seek to provide subscribers with many types of voice, data and, in some instances, video, communication services in integrated form, i.e., via a common network and a common interface to the subscribers. These networks tend to be very complex, and their control apparatuses reflect this complexity. Hence, introduction of modifications to the control apparatuses is itself a complex, difficult, time-consuming, and expensive task. Yet the evolution of ISDN technology is young and their architectures are often changing. Also, the services and service features sought to be provided by the ISDNs are progressively expanding. These changes almost invariably require that modifications be made to the network control arrangements to accommodate these changes. But the traditional design of control arrangements typically fails to localize the necessary modifications, and rather makes their extent pervasive. For example, system hardware architecture changes typically require modifications not only to the resource management portion of the control arrangement which manipulates system hardware in order to provide needed communication connections, but also the call processing portion which determines what connections need to be made. Similarly, subscriber feature additions typically require modifications not only of the callprocessing portion, but of the resource management portion as well. But to have to redesign both of these functional portions of network control with each change in network hardware architecture or subscriber features is overly burdensome.

These considerations have led the art to seek to partition control software arrangements into call processing and resource management subsystems in a manner wherein the call processing subsystem operates on a logical abstraction of the physical communication system (also referred to as a virtual machine), and wherein the resource management subsystem translates and maps control functions requested by call processing for the virtual machine into control functions for the actual physical system. The call processing subsystem has thus been made largely independent of various physical implementations of the communication system, the difference being hidden therefrom by the resource management subsystem. As a result, changes in the system physical implementation have come to require changes in the resource management software, but generally not in the call processing software.

A consequence of this approach is that each different physical system implementation generally has a resource management subsystem associated therewith that is different from the resource management subsystems of other physical implementations. This may pose no difficulty in conventional communication systems that provide all communication services via a common communication fabric, such as telephony electronic switching systems that provide both voice and data communications through the same communication switching fabric over the same communication channels. However, certain communication systems that seek to provide integrated voice, data, and video services provide voice and low-speed data services via one communication fabric and provide video and highspeed data services via a completely separate communication fabric.

Such systems essentially comprise two different parallel physical fabrics, and the art's above-described approach to control arrangement design suggests a separate resource management subsystem for each of these fabrics. This approach has the unfortunate consequence, however, that the call processing systems must be made aware of the existence of the two fabrics, and must determine for each call the fabric that will provide or is providing that call so that call processing control function requests for that call may be sent to the appropriate fabric's resource management subsystem. As a result, the call processing subsystem is no longer independent of the system physical configuration, but must be made aware thereof at least to the extent of knowing how many fabrics there are, what the differences between them are, and what the service requirements of each call type are, so that call processing may determine which fabric is appropriate for each call. The desirable quality of call processing's portability across many different system structures and across an expandable variety of services--which quality depends upon the independence of the call processing subsystem from the physical communication system--is, to a degree, destroyed.

SUMMARY OF THE INVENTION

This invention is directed to solving these and other disadvantages of the prior art. The invention concerns a control arrangement for a communication switching system that has first and second--illustratively narrowband and wideband, respectively--physical resources configurable independently from each other each separately to provide first and second communications, respectively, for terminal logical channels of the system. The system further includes first and second resource control arrangements for configuring the first and the second resources, respectively, in response to receipt of requirements signals.

For purposes of this application, "narrowband" and "wideband" are defined in terms of unidirectional channel bandwidth. A narrowband channel is one having a bandwidth of up to and including 64 Kbps, and a wideband channel is one having a bandwidth exceeding 64 Kbps. Typically, a narrowband channel has a bandwidth of 64 Kbps or integral sub-multiples thereof, i.e., 32 Kbps, 16 Kbps, 8 Kbps, or 4 Kbps. Also typically, a wideband channel has a bandwidth of in excess of about 1.5 Mbps, as services requiring lesser bandwidth than 1.5 Mbps can generally be provided by a plurality of narrowband channels used together. Furthermore, a wideband channel typically has a bandwidth extending into the tens, and preferably hundreds, of Mbps, in order to provide video services such as high-quality interaction video transmissions, over a single wideband channel.

According to the invention, the system's control arrangement comprises two program controlled entities, a first one of which responds to commands from the second one to generate requirements signals for both of the resource control arrangements to configure system physical resources, and the second one of which is program independent from the first one and deals only with logical resources so as to be independent of the system first and second physical resources and resource control arrangements. This system control arrangement allows different communication services, such as narrowband and wideband services, to be provided by the network via separate and different communication handling fabrics without the second program controlled entity having to take this fact into consideration.

According to an illustrative embodiment of the invention, in a multiservices digital network comprising separate narrowband and wideband switches, a network control complex includes a program-controlled call processing arrangement that is program-independent of a resource management arrangement and of the physical network. The call processing arrangement views the network as comprising logical channels, and logical call paths interconnecting logical channels. It does not distinguish between narrowband and wideband communications; it responds to subscriber messages requesting subscriber functions for both narrowband and wideband communications by directing the resource management arrangement to establish and dismantle logical call paths, and to create and destroy logical and physical connections between the logical channels and the logical call paths. The resource management arrangement distinguishes between narrowband and wideband communications; it responds to the directions from the call processing arrangement by allocating and deallocating either narrowband or wideband network physical resources, as appropriate, for physical channels corresponding to the logical channels and for physical call paths corresponding to the logical call paths, and directs either wideband switch controllers or a narrowband switch controller, as appropriate, in creating and destroying the requested logical and physical connections between the channel and call path resources. The division of the network resources into narrowband and wideband resources and the presence of separate controllers for each is thus hidden from the call processing arrangement by the resource management arrangement. Logical channels and call paths are abstract units independent of physical resources which implement them, while physical channels and call paths are collections of one or more physical resources that implement the logical channels and call paths. Correspondingly, logical connections are associations between logical or physical entities whose only existence may be in a database, while physical connections are actual physical couplings between physical entities.

Returning to a consideration of the basic invention, the second program controlled entity is operable in response to receipt of call signals for either wideband or narrowband communications for any one of the logical channels. It processes call information to generate requirements signals for establishing logical communication paths between the one logical channel and at least one other logical channel. The received call signals have associated signals that indicate either one of the wideband and the narrowband communications. But the second program controlled entity effectively ignores the band-indicating signals, and generates the requirements signals independently of the band-indicating signals. It merely associates the band-indicating signals with the requirements signals and sends both of them to the first program controlled means. The second program controlled entity deals only with logical channels and paths in order to accomplish its functions independently of both the narrowband and wideband resources and of the resource control arrangements.

The first program controlled entity cooperates with both the first and the second resource control arrangement. It is operable in response to receipt from the second program controlled entity of the requirements signals and the associated band-indicating signals. It responds to an indication of narrowband communications by generating requirements signals for controlling the operation of the first resource control arrangement to configure first physical resources into either one or both of (a) physical communication channels corresponding to the logical channels and (b) physical communication paths between the physical channels corresponding to the logical communication paths. And it is further operable in response to indication of the wideband communications by generating requirements signals for controlling the operation of the second resource control arrangement to configure second physical resources into either one or both of (a) physical communication channels corresponding to the logical channels and (b) physical communication paths between the physical channels corresponding to the logical communication paths.

The first program controlled entity is the only one of the two entities to deal with the system resources and the separation thereof into wideband and narrowband, so it absorbs modifications that must be made to the control arrangement as a consequence of system hardware changes. Significantly, it hides from the second program controlled entity division of the system into the wideband and narrowband resources, the presence or absence of more than one band of resources, and additions to or deletions from the system of additional kinds of resources. Since the second program controlled entity deals only with the logical channels and paths, which are not affected by system hardware changes, or by the presence in or absence from the system of various communication handling fabrics, the second program controlled entity is likewise not affected by these changes. And the modifications to the one entity that result from these changes do not affect the second entity, because the two entities are program-independent. Hence, changes to the control arrangement that result from system hardware changes and from additions or deletions of fabrics are advantageously localized to only the first of the two entities of the control arrangement. This simplifies adaptation of the control arrangement to new system hardware structures, and allows at least the second program controlled entity to be ported from system to system without modifications being made thereto.

Furthermore, the resource control arrangements hide the structure of system hardware resources from the first program controlled entity. This makes the first program controlled entity independent of the resource structure, and therefore usable with resources of different structures without modification. By way of an illustrative example, the communication system's narrowband physical resources include a narrowband switch that has a plurality of ports connected to physical channels corresponding to terminal logical channels, and the resource control arrangement comprises a narrowband switch controller. The first program controlled entity is a resource management arrangement that is operable in response to receipt from the second program controlled entity of requirements signals and associated signals indicating narrowband communications by selecting narrowband switch ports for the logical paths and generating requirements signals for establishing switch paths between the selected ports independently of the narrowband switch. The narrowband switch controller then responds to receipt of the requirements signals from the first program controlled entity by configuring the narrowband switch into switch paths between the selected ports. The first program controlled entity is thus made independent of the internal structure and configuration of the narrowband switch.

Further by way of an illustrative embodiment of the invention, the communication system's wideband physical resources include a first wideband switch that has a plurality of ports, and a second wideband switch that also has a plurality of ports, some of which are connected to ports of the first wideband switch and others of which are connected to portions of physical channels corresponding to terminal logical channels. In such a system, the resource control arrangement comprises two wideband switch controllers. The first program controlled entity responds to receipt from the second program controlled entity of requirements signals and associated signals indicating wideband communications by selecting ports of the first wideband switch for the logical paths and selecting ports of the second wideband switch for the logical channels, and also by generating first and second requirements signals for controlling the operation of different ones of the two wideband switch controllers to establish first and second switch paths, respectively, between the selected ports of the first and of the second wideband switch, respectively, independently of the switches. One of the two wideband switch controllers responds to receipt of the first requirements signals by configuring the first wideband switch into switch paths between the selected first wideband switch ports. And the other of the two controllers responds to receipt of the second wideband requirements signals by configuring the second wideband switch into switch paths between the selected second wideband switch ports.

Returning to a consideration of the basic invention, preferably the second program controlled entity is operable in response to receipt of call signals and associated band-indicating signals, and processes call information to generate requirements signals for controlling the operation of the first program controlled entity not only to establish logical paths but also to control the logical paths independently of system physical resources and the resource control arrangements. The first program controlled entity in turn responds to receipt of the requirements signals and associated bandindicating signals by allocating the indicated physical resources to the physical channels and paths in order to establish them, and by generating requirement signals for controlling the operation of the indicated resource control arrangement to establish logical and physical connections between the allocated physical resources in order to control the logical paths. The control of call paths implements subscriber call functions. The expression of various subscriber functions all in terms of logical and physical connections makes the first call processing entity easily adapted to providing new and different subscriber functions, because the "building blocks" of the new functions--the logical and physical connections--are the same as for the old functions. Furthermore, the second entity preferably also generates requirements signals for establishing logical and physical connections between the logical channels and call paths for the purpose of controlling the calls. The second program controlled entity thus translates subscriber functions into requests for logical and physical connections, to make the first program controlled entity independent of subscriber functions. Implementation of new features for subscribers and provision of new subscriber message therefor thus requires that changes be made only to the second program controlled entity, but not to the first program controlled entity. This greatly simplifies provision of new functions in communication systems.

In the illustrative examples, described above, where the system resources include switches, where the resource control arrangements comprise switch controllers for configuring the switches into switchpaths, and where the first program controlled entity selects switchports for logical paths and generates requirements signals for establishing switchpaths between the selected ports, the first program controlled entity further generates requirements signals for establishing connections between the selected ports independently of the switches, and the switch controllers further respond to these signals by configuring the switches to interconnect and disconnect the selected ports. The independence of the first program controlled entity from switch structure is thus maintained even for call control.

In an illustrative embodiment of a communication switching system that has narrowband and wideband physical resources configurable independently from each other each separately to provide narrowband and wideband communications, respectively, for terminal logical channels thereof--for example, an integrated services digital network--and that further includes narrowband and wideband resource control means for configuring the narrowband and the wideband resources, respectively, in response to receipt of requirements signals, the system's control arrangement comprises a program controlled resource management arrangement, and a separate program controlled call processing arrangement independent in program from the resource management arrangement and independent of the narrowband and the wideband physical resources and the resource control means. The call processing arrangement is operable in response to receipt of call signals and associated signals indicating either one of the narrowband and the wideband communications for any one of the logical channels and processes call information to generate, both independently of and for association with the narrowband and the wideband indicating signals, requirements signals for both establishing and controlling logical call paths between the one logical channel and another at least one logical channel independently of both the physical resources and their control means. The resource management arrangement is cooperative with both the narrowband and the wideband resource control means. It is operable in response to receipt of the requirements signals and associated signals indicating narrowband or wideband communications by processing narrowband or wideband resource information, respectively, both (a) to allocate narrowband or wideband physical resources, respectively, for either one or both of physical communication channels corresponding to the logical channels, and for physical communication paths between the channels corresponding to the logical call paths, for establishment of the logical channels and paths, and (b) to generate requirements signals for controlling the operation of the narrowband or the wideband, respectively, resource control means to establish connections between the allocated physical resources, for control of the logical call paths. Preferably, the call processing arrangement defines the requirements signals for controlling the operation of the resource management arrangement to both establish the logical call paths, and establish logical and physical connections between the logical call paths and the logical channels for controlling the logical call paths. The resource management arrangement is then operable in response to receipt of the requirements signals and the associated band-indicating signals by processing the corresponding resource information (a) to establish resource management logical structures for the logical channels and the logical call paths for establishment of the logical channels and paths, (b) to allocate physical resources to the logical channel structures for physical channels and to the logical call path structures for physical call paths between the physical channels, for establishment of the logical connections, and (c) to generate requirements signals for controlling the operation of the allocated resource's corresponding control arrangement to establish connections between the resources allocated to the structures, for establishment of the physical connections.

If the just-described system has pre-established physical paths corresponding to logical paths to certain ones of the logical channels, such as to broadcast service sources, the resource management arrangement is operable in response to receipt of requirements signals and the associated band-indicating signals for logical call paths between one of the certain logical channels and another at least one logical channel by processing the corresponding resource information (a) to establish logical channel structures for establishment of the logical channels, (b) to allocate physical resources for physical channels connecting to the pre-established physical call paths, for establishment of logical connections, and (c) to generate requirements signals for controlling the operation of the allocated resources' corresponding resource control arrangement to establish connections between the resources allocated to the channel structures and the preestablished paths, for establishment of physical connections. The resource management arrangement is further operable in response to receipt of requirements signals for logical call paths between channels other than the certain logical channels in the manner described previously. In this way, the system allows certain services, such as program broadcast services, to be provided to subscribers quickly and efficiently.

These and other advantages and features of the present invention will become apparent from the following description of an illustrative embodiment of the invention, taken together with the drawing. BRIEF DESCRIPTION OF THE DRAWING

FIG. 1 is a block diagram of the architecture of a communication network that embodies an illustrative example of the invention;

FIG. 2 is, a block diagram of a remote node and a local central node of FIG. 1;

FIG. 3 shows logical structure of a model of the network of FIG. l,that the network presents to the terminal equipment of network subscribers;

FIG. 4 is a block diagram of software structure of the control complex of the local central node of FIG. 2;

FIG. 5 is a block diagram of architecture of the call processing and resource management subsystems of the software of FIG. 4;

FIG. 6 is a high level flow diagram of operation of the message router of FIG. 5;

FIG. 7 is a block diagram of a terminal process point-to-point call processing of FIG. 5;

FIG. 8 is a logical diagram of interactions of a call terminal process of FIG. 7 with other network entities;

FIG. 9 is a logical diagram of interactions of a conference terminal proocess of FIG. 7 with other network entities;

FIG. 10 is a state diagram of association class of a call terminal process of FIG. 7;

FIG. 11 is a state diagram of call connect status of a call terminal process of FIG. 7;

FIG. 12 is a state diagram of call connect status of a conference terminal process of FIG. 7;

FIG. 13 is a state diagram of far end call status of a terminal process of FIG. 7;

FIG. 14 is a state diagram of far end conference status of a terminal process of FIG. 7;

FIG. 15 is a block diagram of a call register of a call terminal process of FIG. 7;

FIG. 16 is a block diagram of a conference register of a conference terminal process of FIG. 7;

FIG. 17 is a block diagram of a process that executes functions of proxy vendor call processing of FIG. 5;

FIG. 18 is a logical diagram of interactions of proxy vendor functions of the process of FIG. 17 with other network entities;

FIG. 19 is a state diagram of call status of the proxy vendor functions of the process of FIG. 17;

FIG. 20 is a state diagram of stability status of the proxy vendor functions of the process of FIG. 17;

FIG. 21 is a block diagram of a call register of the proxy vendor f,unctions of the process of FIG. 17;

FIG. 22 is a block diagram of structures of point-to-point resource management of FIG. 5 involved in a point-to-point call;

FIG. 23 is a block diagram of structures of point-to-point resource management of FIG. 5 involved in a conference;

FIG. 24 is a block diagram of a lower path structure of FIGS. 22 and 23;

FIG. 25 is a block diagram of a call upper path structure of FIGS. 22 and 23;

FIG. 26 is a block diagram of a conference upper path structure of FIG. 23;

FIG. 27 is a state diagram of local status of an upper path structure of FIGS. 25 and 26;

FIG. 28 is a state diagram of remote status of an upper path structure of FIG. 25;

FIG. 29 is a block diagram of structures of proxy vendor resource management of FIG. 5 involved in a proxy vendor call; and

FIG. 30 is a block diagram of a proxy vendor structure of FIG. 29.

DETAILED DESCRIPTION

TABEL OF CONTENT

Hardware Architecture--Network Overview (FIG. 1)

Hardware Architecture--Remote and Central Nodes (FIG. 2)

Call Processing Model--Overview (FIG. 3)

Control Architecture--Subscriber to Central Node Signaling Interface (Appendix A)

Control Software--Subscriber Interface

Control Software--Node Control Complex (FIG. 4)

Operating System

Database Management

Resource Management

Call Processing

Maintenance and Administration

Call Processing Architecture (FIG. 5)

Message Router (FIG. 6)

Point-to-Point Call Processing

Terminal Process (FIGS. 7-9)

Process States (FIGS. 10-16)

Proxy Vendor Call Processing

Proxy Vendor Process

(FIGS. 17 and 18)

Process States (FIGS. 19-21)

Reset and Initialization

Resource Management Architecture

Overview (FIG. 5; Appendix B)

Point-to-Point Resource Management

(FIGS. 22 and 23)

Lower Path Structure (FIG. 24)

Upper Path Structure

(FIGS. 25-28)

Interface to Call Processing (Appendix C)

- Proxy Vendor Resource Management

(FIG. 29)

Lower Path Structure (FIG. 24)

Proxy Vendor Structure (FIG. 30)

Interface to Call Processing

Switch Control Interface (Appendix D)

HARDWARE ARCHITECTURE--NETWORK OVERVIEW (FIG. 1)

The illustrative control arrangement described herein is for use in a switching center of a communication system. A suitable communication system is, for example, the switched integrated wideband and narrowband multiservices digital network described in the patent application of H. R. Lehman, W. P. Lidinsky, H. E. Mussman, D. A. Spicer, and D. Vlack, entitled "Digital Communication Network Architecture for Providing Universal Information Services", Ser. No. 809,196, filed Dec. 13, 1985, and assigned to the same assignee as this application.

Shown in FIG. 1 and briefly described, that network provides all types of voice, data, and video services to subscribers. The network comprises a plurality of central node service areas 100, 101, each of which comprises a plurality of subscribers 102 served by a local central switching node 110. Subscriber interfaces 400 located at the subscribers' premises provide an interface between the network and the subscribers' terminal equipment (not shown). A central node 110 communicates with subscriber interfaces 400 through remote nodes 103, each of which interfaces a group of subscribers 102 to the central node 110. Local central nodes 110 are interconnected for communication by trunk facilities, either directly or via one or more toll nodes 111.

All communications in the network are transported on optical fibers: distribution fibers 105 interconnect a subscriber interface 400 with a remote node 103, feeder fibers 107 and a control bus extension 106 interconnect a remote node with a local central node, and trunk communication and interoffice signaling fibers 112 and 117, respectively, interconnect local central nodes with each other and with toll central nodes.

The fibers 105, 107, and 112 carry communication channels of two types: narrowband and wideband. For purposes of this application, "narrowband" and "wideband" are defined in terms of unidirectional (i.e., simplex) channel bandwidth. Hence, two channels of opposite direction are required to establish a bidirectional (for example, a duplex) communication path. A narrowband channel is one having a bandwidth of up to and including 64 Kbps, and a wideband channel is one having a bandwidth exceeding 64 Kbps. Typically, a narrowband channel has a bandwidth of 64 Kbps or integral submultiples thereof, i.e., 32 Kbps, 16 Kbps, 8 Kbps, or 4 Kbps. Also typically, a wideband channel has a bandwidth of in excess of about 1.5 Mbps, as services requiring lesser bandwidth than 1.5 Mbps can generally be provided by a plurality of narrowband channels used together. Furthermore, a wideband channel typically has a bandwidth extending into the tens, and preferably hundreds, of Mbps, in order to provide video services such as high-quality interaction video transmissions, over a single wideband channel.

Each subscriber is provided with a plurality (typically 32) of narrowband channels and one or more wideband channels in each direction. Narrowband channels typically carry voice and data communications. The narrowband channels are time-division multiplexed at subscriber premises into a single multiplexed channel. Wideband channels typically carry high-speed data and video communications.

In each direction of communication flow, one of the narrowband channels of each subscriber is dedicated to carrying signaling messages between the subscriber and the local central node. The signaling messages are used for establishing communication services on any and all of the subscriber's channels.

HARDWARE ARCHITECTURE--REMOTE AND CENTRAL NODES (FIG. 2)

Wideband and narrowband channels are handled by separate fabrics in the network. As shown in FIG. 2, each remote node 103 has a wideband digital switch 505 for establishing point-to-point and point-to-multipoint connections between wideband channels of feeder fibers 107 and wideband channels of distribution fibers 105. Each remote node 103 also has a narrowband multiplexer and demultiplexer 506 for combining multiplexed channels of distribution fibers 105 into highly-multiplexed channels of feeder fibers 107, and for separating highly-multiplexed channels of feeder fibers 107 into multiplexed channels of distribution fibers 105. A central node 110 has a wideband digital switch 606 for establishing point-to-point and point-to-multipoint connections between wideband channels of feeder fibers 107, and also between wideband channels of feeder fibers 107 and trunk fibers 112, and a narrowband digital switch 607 for establishing point-to-point and point-to-multipoint connections between narrowband channels of the highly-multiplexed channels of the feeder fibers 107, and also between narrowband channels of highly-multiplexed channels of feeder fibers 107 and trunk fibers 112.

Communications in the network are established in the network under central node control. The central node 110 includes for this purpose a control complex 612 which embodies the illustrative control arrangement of this application. The control complex 612 controls all switches, both within the central node 110 and within the remote nodes 103. Each switch 505, 606, and 607 has its own controller 507, 610, and 611, respectively, which receives control directives from the control complex and carries them out. For this purpose, the switch controllers 507, 610, and 611 are interconnected with the control complex 612 by a high-speed control communication bus 116 and extensions 106 thereof.

The network also provides communication connections between subscribers and other communication systems or communication sources, such as data transport networks, telephone networks, and video service vendors. These connections are established at the local central node, via an "external" interface 603. The connections are established through cooperation between the control complex 112 and the external interface 603. For this purpose, the external interface 603 is also coupled to the high-speed communication bus and communicates thereacross with the control complex 612.

The control complex 612 is illustratively implemented as a multiprocessor computer system. Processors 202-205 that make up the multiprocessor computer system are connected to, and communicate with each other via, the high speed bus 116. The bus
116 also enables the processors 202-205 to communicate with other parts of the described network, particularly with controllers 507, 610, and 611 of the switches of the central and remote nodes, and with the control complexes of other central nodes.

The principal functions of the control complex 612 are divided among the processors 202-205. The processors 205, 202, and 203-204 have principal responsibility for different functions, and each processor acts to support the other processors in their assigned functions while concentrating its efforts on performing its own principal functions. The processors 203-204 have responsibility for like functions, but for different subscribers 102.

The processors 202-205 include a plurality of remote module processors (RMPs) 203-204. The principal functions of the remote module processors 203-204 are call processing and, in support thereof, resource management. Each remote module processor 203-204 is dedicated to serving all of the call processing needs of subscribers 102 subtending one or more remote nodes 103. In order to perform the required call processing functions, a remote module processor 203-204 "owns" and controls the remote node or nodes subtended by its subscribers 102, the distribution channels connecting the subscribers 102 to the remote node or nodes 103, the feeder channels connecting the remote node or nodes 103 to the central node 110, and the central node wideband and narrowband switch 606 and 607 ports that serve those feeder channels.

Processors 202-205 also include an external interface processor (XIP) 202. Processor 202 is dedicated to establishing communication connections between central node 110 and other central nodes of the network as well as with other communication systems, such as the telephone or data transport networks. Hence, its principal functions are likewise call processing and, in support thereof, resource management. Processor 202 "owns" and controls trunks connecting central node 110 with other central nodes of the network, the central node wideband and narrowband switch 606 and 607 ports that serve these trunks, and the external interface 603 interfaces to other communication systems.

Finally, processors 202-205 include an administrative processor (AP) 205. Its principal functions are administration and maintenance: billing, measurements, network management, service evaluation, control complex program updates, and hardware and software integrity. For the performance of these functions, administrative processor 205 relies on cooperation with the other processors 202-204, which supply it with information and respond to its commands.

Often, two or more small central nodes, i.e., each serving a relatively small number of subscribers 102, share use of a single administrative processor 205. In such case, administrative processor 205 is located in one of the central nodes and is connected to buses 116 of the other nodes by bus extensions 106.

CALL PROCESSING MODEL--OVERVIEW (FIG. 3)

The central node control complex 612 is structured to view the network as a set of heterogeneous communication resources that provide connectivity among subscribers. The control of such a network involves: (1) routing and processing of calls, (2) management of shared network communication resources, and (3) billing, administrative, and maintenance functions.

So as not to impose a limited predefined set of services on subscribers, and to allow for future provision of as-yet unforeseen services, control complex 612 manipulates the network in such a way as to provide to subscriber interfaces 400
capability components out of which services can be built. In particular, control complex 612 provides a set of communication resources from which subscribers 102 can fashion services. Subscribers 102 develop whatever services, terminals, and human interfaces they feel are appropriate for their intended applications. They then acquire and control those network communication resources that they feel are necessary to interface their services to the network. A subscriber 102 acquires and controls these resources via signaling messages sent from its subscriber interface 400 over the narrowband signaling channel to control complex 612. Unlike stimulus-oriented signaling that requires several disjoint actions to invoke a feature, message-oriented signaling allows a complete service request to be contained in a single message.

The network provides subscribers 102 with a standard signaling interface--a set of signaling messages and associated parameters--through which they control their connectivity to other subscribers 102. From the point of view of subscriber interfaces 400, the network is one monolithic unit. The internal structure of the network is not visible to subscriber interfaces 400, and hence to subscribers' terminal equipment. In particular, subscriber interfaces 400 are not aware of the functional partitioning between a central node 110 and subtending remote nodes 103, and of the partitioning of nodes 103 and 110 into wideband and narrowband fabrics.

The view of the network that control complex 612 provides to subscribers 102 is graphically illustrated in FIG. 3. There are two kinds of network resources that a subscriber 102 can request and manipulate: calls (301-303) and conferences (304). Signaling messages passed between a subscriber interface 400 and control complex 612 constitute a dialogue about the creation, control, and destruction of calls and conferences. A call is a single-medium communication path between two points, such as a call (301) between two subscribers 102 (subscriber A and subscriber B). In this context, the word "medium" refers to the form of information (for example, narrowband voice, narrowband data, wideband data, or wideband video), and not to the transmission medium, which is always an optical fiber in this illustrative embodiment. Types of calls are either one-way (i.e., simplex incoming to the subscriber or simplex outgoing from the subscriber, requiring use of one channel) or two-way (i.e., duplex, requiring use of two channels). Call are established over, and carried by, subscribers' distribution channels (310). A conference (304) is a logical connector in the network that combines two or more calls (302, 303) into a larger, more complex structure. Each call participating in a conference connects to a port (311) of the conference. The connected calls have a common participant (subscriber A) who is the "owner" of the conference. A conference is connected by the calls to subscribers and/or to other conferences. Types of conferences are also one-way (simplex, requiring a single channel connection to each participating subscriber) or two-way (duplex, requiring both an upstream and a downstream channel connection to each subscriber, not shown). A simplex conference is a multicast, such as a broadcast or a narrowcast. A conference is also described by a count, which is the number of calls that the network guarantees may be combined by the conference. As the need arises, new conference types may be defined and added to the network.

Calls and conferences are assigned identifiers (CALLID or CONFID, respectively) from a common name space. More precisely, identifiers are assigned to the ends of a call rather than to the call itself--the two subscribers at opposite ends of a call refer to the call by independently chosen and usually different identifiers. A call or conference identifier is unique only with respect to the calls and conferences in which a single subscriber participates--two different subscribers may simultaneously use the same identifier to name different, unrelated calls.

The identifiers are used in all messages that refer to the calls or conferences, whether the message is sent by a subscriber interface or the control complex. When a call or conference is logically "created" by request of a subscriber interface
400, the subscriber interface allocates the identifier. When logically "created" by action of control complex 612, the control complex allocates the identifier. The most significant bit in each identifier is reserved to indicate the direction from which the identifier was allocated. Thus, identifiers of calls and conferences originated by a particular subscriber and identifiers of calls and conferences for which that subscriber is a destination are allocated from disjoint sets.

Each subscriber 112 has a fixed set of channels connecting it to the network--distribution channels 310 carried by the distribution fibers 105. A call may be connected to a channel, associated with a channel, or disassociated. If a call is connected to a channel, a physical connection exists and information can flow over the channel between the subscriber and the called party. One or more calls may be associated with a particular channel but not connected to it, in which case only a "logical" connection (association) exists and no information can flow over the channel. However, the subscriber is guaranteed the resources to maintain the connection up to central node 110. A call is disassociated if it is neither connected nor associated with a channel. Hence, to communicate via a call, a subscriber's interface 400 must arrange for the call to become associated with, and then connected to, one or more of the subscriber's channels (perhaps indirectly, via a conference). A channel may be restricted with respect to medium and/or direction. Often, a call might be associated with more than one of a subscriber's channels-for example, a duplex video call requires two wideband channels, one for input and one for output.

To use a conference (304), subscriber interface 400 of the owner (subscriber A) of the conference must request that control complex 612 associate and connect the conference with one or more of the subscriber's channels (310), in the same way as for a call. Calls (302, 303) to the other participants (subscribers B and C) of the conference are then associated with and connected to ports (311) on the conference, in much the same way in which calls are associated with and connected to channels.

For each combination of medium and direction, there is a default channel. Incoming calls are initially associated with the default channel or channels appropriate for the medium and direction of the call. Channel defaults are also applied in contexts in which the subscriber has requested association of a call or conference, but has neglected to say or imply with what. Illustratively, the default channels are the same for all subscribers. An alternative is to allow each subscriber to have different default channels; the default channels in that case are part of the subscriber's profile, stored in a database.

Calls and conferences are owned by one of their participating subscribers. The owner of a call or conference pays for it. Only the owner of a conference may address control requests to it. Conference participants other than the owner are made aware, via signaling messages, of its existence and the identity of its owner, but do not have detailed information about its structure (such as the identities of other non-owner participants, or even the number of participants). Nonowner participants of a conference do not have identifiers for the conference. However, each has an identifier for the call that connects it with the conference.

CONTROL ARCHITECTURE--SUBSCRIBER TO CENTRAL NODE SIGNALING INTERFACE (APPENDIX A)

As was mentioned previously, the central control complex and the subscriber interfaces interact by sending signaling messages to each other. Message signaling simplifies call processing of this network in comparison with standard telephony call processing. Since a message request from a subscriber contains complete information about that request, less interaction is needed between call processing and the subscriber interface to determine exactly what the subscriber wants. Also, since the message is complete, there is a decrease in the amount of state information that is needed to provide a context for interpreting and processing a request. Call processing software of the control complex does not have to determine the meaning of a subscriber's request based on internal state information retained as a result of previous interactions. However, it is still a function of call processing to determine if subscribers should be allowed to have access to the requested services.

The signaling messages provide functions to set up, hold, transfer, and clear calls and conferences. Subscriber interfaces send messages to the network in order to request that some action be taken on behalf of the associated subscriber. The control complex sends messages to subscriber interfaces to notify them of some event. Each message has a message type and a list of message parameter values. The message type specifies the general meaning of the message. This general meaning is made specific by the parameter values. The list of required parameter values depends on the message type. A suitable list of message types and parameters is defined by Recommendation I.451 formulated by the CCITT as part of the the Integrated Services Digital Network (ISDN) standard.

An alternative message set is presented in Appendix A and summarized below. The messages of the set are grouped according to the following categories:

1. Basic Call Operations

a. SETUP--Initiates (originates) a call from a subscriber's channel or channels.

b. INCOMING--Notifies the destination subscriber interface of an incoming call.

c. REORIG--Reoriginates a current call to a new destination.

d. ALERTED--Notifies the destination's central node that the destination (for example, the destination human subscriber) is being alerted.

e. ACCEPT--Requests the central node to associate a call with a channel or channels and connect the call thereto.

f. CLEAR--Requests the central node to tear down (end-to-end) a call.

g. STATUS--Report from the central node on the current state of a call.

2. Hold and Disassociate

a. HOLD--Places a call on hold, while retaining the channel or conference bridge association.

b. DISASSOCIATE--Disassociates a call from its channel or conference bridge.

3. Transfer

a. TRANSFER--Transfers a call to a new destination.

4. Conferences

a. CREATE CONF--Requests resources for a conference. (Requests that a conference bridge be inserted into a call path.)

b. MODIFY CONF--Requests a change in the amount of resources allocated for a conference.

c. ADD CALL--Adds (originates) a new party to a conference.

5. Initialization Messages

a. RESET NET--Notification from the central node that all calls for this subscriber have been cleared.

b. RESET CUST--Request to the central node that all calls for this subscriber be cleared.

6. Errors

a. ERROR--Notification of an illegal or undecipherable request.

For each message type, there is a list of parameters determined by that message type. Possible parameters are:

BILLING--Special billing specification (e.g., collect, credit card).

CALLID--Call identifier.

CARRIER--Specific carrier selection.

CHAN--Subscriber's logical channel number identifying a channel between a subscriber interface and a remote node. For DUPLEX calls, this is a pair of numbers giving the incoming and outgoing channel numbers.

CID--A call or conference identifier in a context where either is appropriate.

CONFID--Conference identifier.

COUNT--Indication of the number of participants (other than the conference owner) that may be connected in a conference. (This parameter does not impose a hard limit. If specified, the SETUP, CREATE CONF, and MODIFY CONF messages will preallocate resources for the specified number of participants, failing if these resources are not available. In SETUP and CREATE CONF, COUNT is used in cases where there is some knowledge of the eventual size of the conference, and where the conference should not be set up at all unless it can grow to this size.)

DIR--Direction of call (DUPLEX, SIMPLEX-IN, or SIMPLEX-OUT).

DN--Directory number.

ERROR--Code indicating why a subscriber request is considered to be an error.

FAILURE--Code indicating why a legal subscriber request could not be honored.

MED--Medium; a characteristic describing the user information being transmitted and received. Standardized values for this characteristic identify such media as "voice", "video", "interactive data", and "circuit-switched data." This characteristic indicates such attributes as the quality of the connection desired (e.g., to discriminate between possible voice encoding schemes), whether loss insertion should be done, and whether satellite delays are acceptable.

OPI--Optional parameters indicator. This parameter indicates which of the allowable optional parameters actually appear in the message.

REASON--Code indicating reason for termination.

RESET--Code indicating whether a reset message is a request or an acknowledgement.

STATUS--A field indicating the new status of a call or conference, and/or a status transition in a call or conference.

SUB--Subaddress (applied to a DN). The subaddress identifies a particular station, such as a telephone behind a PBX or a terminal or computer on a local area network.

TYPE--Indicates the type of incoming call (SIMPLE CALL, CONFERENCE, or TRANSFER).

USERINFO--User-supplied information of end-to-end significance only (such as the caller's name or a password).

XFERS--An abbreviated transfer history of an end of a call, specifying (at least) the DN of the original destination and of the last party to transfer. If the communication has never been transferred, XFERS is null.

CONTROL SOFTWARE--SUBSCRIBER INTERFACE

Subscriber interface 400 software is functionally divided into a call processing subsystem and a peripheral control subsystem. The functions provided by the call processing subsystem include responding to signaling messages received from the network, interfacing to subscriber terminal equipment, and responding to subscriber service requests.

The function of the peripheral control subsystem is to insulate the call processing subsystem from the details of the hardware of the subscriber interface. The peripheral control subsystem comprises device handlers, each of which provides a software interface to peripherals that are included in the subscriber terminal equipment, and a message handler that provides an interface to the narrowband signaling channel. The primary functions of the message handler include placing messages sent to it from the call processing subsystem into proper form for transmission to the central node control complex 612, and routing of messages received from the central node control complex 612 to appropriate subscriber interface software.

CONTROL SOFTWARE--NODE CONTROL COMPLEX (FIG. 4)

The central node control complex 612 software, which performs the functions necessary to provide multimedia connectivity among subscribers 102, is functionally divided into five subsystems. These are graphically shown in FIG. 4. The main subsystems are call processing (CP) 800 and maintenance and administration (M&A) 801, which together make up an application software layer 200. Subsystems provided in support of application software layer 200 are database management (DBM) 802 and resource management (RM) 803, which together make up a resources software layer 201. Resources layer 201 manages resources that are unique to the application. Further provided in support of application software layer 200, and also in support of resources layer 201, is a distributed operating system (OS) 804. The purpose of operating system 804 is to manage low-level resources that are independent of the application. Functionally, these subsystems parallel similar subsystems of telephony distributed electronic switching systems.

Because control complex 612 is implemented in a multiprocessor (202-205), the central node control complex software shown in FIG. 4 is distributed among processors 202-205. Each processor 202-204 typically includes a portion of each of the subsystems 800-804; consequently, FIG. 4 may also be considered to represent the control software present in each of the processors 202-204. The processor 205 is different in that it does not include call processing and resource management subsystems
800 and 803. Communications between the distributed pieces of software are provided across bus 116 by an inter-process communications facility of operating system 804.

As may be expected, distribution of application layer 200 subsystems 800-801 over processors 202-205 is not equal but follows the function of each processor. Thus, for example, each of the processors 202-204 typically includes little of the maintenance and administration software 801, while administrative processor 205 includes most of the software 801 but none of the call processing software 800.

OPERATING SYSTEM

Operating system 804 is a distributed switching operating system, for example a version of the operating system of the telephony 5ESS.TM. switching system of AT&T Technologies, Inc. Operating system 804 provides a process environment for the other switching software subsystems. Operating system 804 provides three fundamental services to the other subsystems: process control, whereby a process can create and destroy other processes, wait on certain conditions to be satisfied, etc.; process communications, whereby any process can send messages to any other process; and timing, whereby a process can request that it be notified after a certain amount of time has elapsed. For the purpose of providing these services, operating system 804
manages the following low-level resources: processor real-time, process stack allocation/deallocation, memory management, and interprocess communication.

Operating system 804 provides services to the other subsystems through an interface of subroutine primitives. For the most part, services are implemented internally in each processor, with the exception of process communications between communicating processes that do not reside in the same processor 202-205. In this case, operating system 804 uses facilities of high-speed bus 116 to send messages between the portions of the operating system which reside in the processors in which the processes reside. These portions route the messages from the originating process to the intended destination process.

Insulating applications software layer 200 from knowledge of where (i.e., on which processor) certain software entities are located is accomplished by defining process identifiers in such a manner that the range of identifiers spans all processors. A single field within a process identifier, the "processor i.d." field, allows the destination processor to be directly addressed (as opposed to having to broadcast to all processors). Each processor has a version of a "send message" routine which checks whether the process identified by the process i.d. resides on this processor. If not, the message is sent out over high-speed bus 116. It is picked up therefrom by the destination processor. All processors have a message handler which checks for incoming messages and forwards them to the appropriate processes.

In order to insulate application software layer 200 from knowledge of absolute process i.d.'s for long-lived "system" processes, a special set of process i.d.'s is defined such that each special i.d. uniquely identifies one of these processes. Upon receipt of an interprocess message (either internal or external) the operating system 804 checks if the destination process i.d. is one of these special i.d.'s. If so, the operating system 804 translates the special i.d. into an actual process i.d. and then delivers the message to that process.

DATABASE MANAGEMENT

Unlike operating system 804, resources software layer 201 manages resources that are unique to the application. These resources can be broadly described as data resources, which are owned and managed by database management subsystem 802, and communication resources, which are owned and managed by resource management subsystem 803.

Though operating system 804 is responsible for memory management, it neither knows nor cares what information is stored in memory. This responsibility falls to database management subsystem 802. Subsystem 802 is responsible for the access, update, and integrity of data within control complex 612.

Database management subsystem 802 manages data about subscribers, network resources, and network resource usage, for use by the other network software subsystems. In particular, database management subsystem 802 manages data needed to map between each subscriber's directory number and its corresponding physical address on the appropriate remote node. Database management subsystem 802 also manages data describing the service capabilities of each subscriber. It further manages a representation of the current network configuration. This includes the current operational status of the various hardware components; this data is needed to allow the network to route around defective or otherwise unavailable components. Database management subsystem 802 also manages data about network resource usage, in the form of a transaction log containing information on when network resources were allocated and deallocated and showing which subscriber is to be billed for the resource usage. And finally, as a service to vendors of broadcast services, database management subsystem 802 maintains access right and usage information concerning broadcast services that may be initiated, i.e., called up, by subscribers.

For most of its clients, database management subsystem 802 provides an interface of subroutine primitives to access or update information. Also included in subsystem 802 are human interfaces for use by craft personnel to access and update system information.

Integrity of data is ensured by audits that compare stored data against physical information, where possible, or against other redundant information. Audits are scheduled to run periodically. In addition, certain audits may be invoked from a maintenance terminal by craft personnel.

RESOURCE MANAGEMENT

Resource management subsystem 803 manages the various physical resources of the network. Its responsibility is to insulate application software layer 200 from knowledge of the physical switching resources. In providing this function, resource management subsystem 803 routes calls, allocates communication paths, keeps track of the states of these paths, instructs switch controllers to make desired connections, routes messages between processes, and allows application software in one central node to communicate with application software in another central node.

Resource management subsystem 803 provides call processing subsystem 800 with a common interface to all switching units, thereby allowing call processing subsystem 800 not to be burdened with the operational details thereof. The interface comprises a set of primitives implemented as subroutine calls. This set of primitives is described further below and in Appendix C.

CALL PROCESSING

Application software layer 200 adapts the network hardware and software to providing particular services. Layer 200 comprises call processing subsystem 800, which provides network capabilities for which subscribers pay, and maintenance and administration subsystem 801, which supports call processing.

Call processing subsystem 800 is responsible for the establishment, management, and termination of subscriber calls, which are the smallest unit of connectivity between subscribers that are controllable by the subscribers. Call processing subsystem 800 handles requests from subscribers for communication services and collects the raw data needed by maintenance and administration subsystem 801 to produce subscriber bills.

Communication service requests are received from subscribers via the standard signaling interface with the subscriber interfaces. This interface is defined by the message set described above and in Appendix A.

Call processing subsystem 800 provides services to subscribers by calling primitives of resources software layer 201 and, in cases where there would be no value added by going through layer 201, by directly using primitives provided by operating system 804.

MAINTENANCE AND ADMINISTRATION

Maintenance and administration subsystem 801 supports call processing. The maintenance portion of subsystem 801 controls maintenance capabilities provided for fault detection and recovery, so as to safeguard the integrity of the network. Specific responsibilities in this arena include: initialization, fault detection, reconfiguration, and diagnosis of suspected faulty equipment. With regard to fault detection, maintenance and administration subsystem 801 provides subroutines for use by call processing subsystem 800 in reporting faults detected during normal processing. From these reported events, maintenance and administration subsystem 801 determines when a suspected faulty hardware unit should be taken out of service. Out-of-service equipment is then scheduled for diagnosis. Maintenance and administration subsystem 801 also schedules routine maintenance functions, including test calls (via loopback logic located at subscriber interfaces) and software audits. Maintenance and administration subsystem 801 is also responsible for communicating with central node craft personnel for manual invocation of maintenance functions.

The administration portion of maintenance and administration subsystem 801 provides billing, measurements, network management, service evaluation, and program update functions. The administration portion is also responsible for interfacing to regional support systems, and for interfacing to communication service vendors for update and retrieval of subscriber authorization and usage data stored in database management subsystem 802.

CALL PROCESSING ARCHITECTURE (FIG. 5)

Having examined the general characteristics and structure of the central node control complex and the software subsystems thereof, consider now the internal characteristics of call processing and resource management subsystems 800 and 803, and their interface with each other.

An illustrative implementation of call processing and resource management subsystems 800 and 803 is shown in FIG. 5. Subsystem 800 comprises two call processing structures: one for point-to-point and conference communications, referred to as point-to-point call processing 8001, and the other for communication vendor (for example, video channel provider) broadcast communications, referred to as proxy vendor call processing 8002. The existence of, and differences between, the two call processing structures are invisible to subscriber interfaces, and hence to subscriber terminal equipment.

MESSAGE ROUTER (FIG. 6)

An element of call processing that interacts with both structures 8001 and 8002 is a message router 8000. Message router 8000 is the first call processing component to process any message that is addressed to any part of call processing from a subscriber interface. A high-level flow diagram of the operation of the message router 8000 is shown in FIG. 6. The primary task of message router 8000 is to relay messages from subscriber interfaces to appropriate call processing structures, translating call and conference identifiers used by subscriber interfaces into process identifiers used by call processing. As shown in blocks 620-622 and 625, message router 8000 relays a received message either to point-to-point call processing 8001
or to proxy vendor call processing 8002, depending upon the call medium and direction and the destination directory number. As shown in blocks 623-624, message router 8000 creates a process to handle a new call or conference when a subscriber interface requests origination of a new point-to-point call or conference.

SETUP, CREATE CONF, and ADD CALL messages (which request origination of a new point-to-point call or conference or of a proxy vendor call) are handled by message router 8000 as follows:

1. The destination directory number, call medium (e.g., VIDEO, VOICE, or DATA) and call direction (SIMPLEX-IN, SIMPLEX-OUT or DUPLEX) are checked against a table of available proxy vendor services.

2. If the requested call does not match any of the available proxy vendor services, the call is treated as a point-to-point call. Use is made of the process control service provided by the operating system 804 to create a new call and/or conference terminal process and initialize it with information extracted from the received message. The CID used by the subscriber interface to name this call or conference is associated in a database with an identifier of the terminal process (TPID). The message is in error if the CID is found to be already in use. 3. If the requested call does match a proxy vendor service, the call is treated as a proxy vendor call. The originating subscriber's access rights to the service are checked in the database. Assuming that the subscriber has access to the service, the call identifier is associated with a proxy vendor call register in the database, and proxy vendor call processing 8002 is notified to set up the call.

Other subscriber messages referencing a call are handled by message router 8000 as follows:

1. The call or conference identifier is looked up in the database. If it is not found, the message is in error.

2. If the call or conference identifier is associated with a terminal process identifier, then the call or conference identifier names a point-to-point call or conference. The message is forwarded to the terminal process.

3. If the call identifier is associated with a proxy vendor call register, then the call identifier names a proxy vendor call. Proxy vendor call processing 8002 is notified to process the message, which is passed as an argument.

POINT-TO-POINT CALL PROCESSING

Point-to-point call processing 8001 is organized as a collection of terminal processes (650, 660, 670; see FIG. 7) which handle subscriber service requests. It is implemented in a one-process-per-subscriber-per-call form. Each message is processed by a terminal process as a transaction. A transaction is any element of data, control, signal, event, or change of state that causes, triggers, or initiates some action or sequence of actions. Each terminal process serves just one subscriber, and handles just one call or conference for that subscriber. In other words, a call terminal process carries out the processing functions for a given end of a call: there are two terminal processes per call, one for each subscriber's end of the call, whether or not the call is part of a conference. In addition, each conference is managed by a single conference terminal process. A conference logically connects the owner of the conference to the other conference participants. All the terminal processes that serve a given subscriber reside in the remote module processor 202-204 (see FIG. 2) that serves that subscriber. A conference terminal process resides in the processor 203-204 that serves the owner of the conference, along with the call terminal processes that manage the conference owner's ends of the calls that are a part of the conference. Terminal processes are created and destroyed as needed--that is, as calls and conferences are set up, transferred, or cleared. Thus, a subscriber who currently