|Publication number||USRE43361 E1|
|Application number||US 10/054,245|
|Publication date||May 8, 2012|
|Filing date||Jan 24, 2002|
|Priority date||Dec 29, 1995|
|Also published as||US6041109, WO1997024885A1|
|Publication number||054245, 10054245, US RE43361 E1, US RE43361E1, US-E1-RE43361, USRE43361 E1, USRE43361E1|
|Inventors||Douglas R. Cardy, Ken Rambo, Carol Waller|
|Original Assignee||Mci Communications Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (140), Non-Patent Citations (8), Classifications (21), Legal Events (2)|
|External Links: USPTO, USPTO Assignment, Espacenet|
1. Field of the Invention
The present invention relates generally to network switching and more particularly to a telecommunications system having separate switch intelligence and switch fabric.
2. Related Art
A conventional telecommunications network comprises three basic components: user terminals (e.g., telephones), communications busses (e.g., telephone lines) and switches. The switches are used to selectively connect the user terminals via the communications busses. Each switch comprises two basic components: the switch fabric, which physically interconnects the communications busses, and the switch intelligence, which directs the operation of the switch fabric based on control signals (e.g., telephone numbers) received by the switch.
In recent years, however, the telecommunications features offered by service providers (including both local and long distance service providers) have increased dramatically in both number and complexity. Because many of these features are implemented primarily at the switch, the complexity of the switch intelligence has increased in kind to include complex call processing logic. Despite the dual nature of the switch, standard telecommunications architectures such as Advanced Intelligent Network (AIN) and SS7 have continued to incorporate both switch intelligence and switch fabric into a single device. The retention of this monolithic switching approach in the face of these changes has substantial disadvantages.
The primary disadvantages result from the fact that switches from different manufacturers may employ unique methods of control and/or unique computing languages in their switches. Thus when a service provider offers a new feature requiring a change in switch intelligence, the change must be implemented by the switch vendor. In a network comprising switches from several manufacturers, these changes must be coordinated to ensure a coincident release of the new feature at all switches. Further, each switch vendor must implement a switch change required by one service provider without disturbing the switch intelligence aspects required by other service providers. Finally, changes cannot be implemented centrally, but must be implemented separately at each switch. This arrangement requires substantial lead time for a change, typically on the order of two years or more.
What is needed, therefore, is a telecommunications network where the switch intelligence is separated from the switch fabric.
The present invention is a telecommunications network having separate switch fabric and switch intelligence. The system comprises a switch fabric, a switch intelligence, and a feature processor. The switch intelligence is logically separated from the switch fabric and comprises a switch fabric proxy, a facility service, a connection manager service, and a call segment instance service. The switch fabric proxy is coupled to the switch fabric via a vendor-specific first Application Programming Interface (API). The switch fabric proxy supports a second API, which is common across all vendors, representing functions supported by the switch fabric. A facility instance, which is instantiated by a facility service using a facility model, represents the bearer and signaling facilities of a party to a call, and interacts with the switch fabric proxy via the second API to communicate with the switch fabric. The connection manager service represents the connectors for a party to a call, and interacts with the switch fabric proxy via the second API to communicate with the switch fabric. A call segment instance, which is instantiated by a call segment instance service using a call model, represents the call logic and call data for a party to a call, and interacts with the connection manager service via a third API and with the facility instance via a fourth API. The feature processor interacts with the call segment instance via a fifth API to provide the telecommunications feature.
The switch intelligence further comprises two call processing creation environments. The first, called a call model creation environment, is employed to access the call segment instance service via a programming API to modify existing call models and to create new call models. The second call processing creation environment is employed to access the facility service via a programming API to modify existing facility models and to created new facility models.
One advantage of the present invention is to facilitate rapid creation and deployment of new telecommunications features.
Another advantage of the present invention is to allow software and hardware components to be reused across multiple features and products.
Another advantage of the present invention is to permit scalability both at the processor level and at the level of the communications infrastructure.
Another advantage of the present invention is to provide an architecture that is reusable across future switch and port infrastructures (for example, broadband).
Another advantage of the present invention is to provide an infrastructure that supports the ability to engineer applications in varying levels of centralization or distribution, based on usage.
Another advantage of the present invention is to define a call processing environment in which buy/build decision can be made on major components of the call processing system, including facilities, signaling, and call data processing.
Another advantage of the present invention is to define a call processing environment in which the price/performance decisions of the switch call processing and switch hardware capabilities are decoupled, resulting in an optimized business buying strategy.
Further features and advantages of the present invention as well as the structure and operation of various embodiments of the present invention are described in detail below with reference to the accompanying drawings. In the drawings, like reference numbers indicate identical or functionally similar elements. Additionally, the left-most digit of a reference number identifies the drawing in which the reference number first appears.
The present invention will be described with reference to the accompanying drawings, wherein:
The preferred embodiment of the invention is discussed in detail below. While specific steps, configurations and arrangements are discussed, it should be understood that this is done for illustrative purposes only. A person skilled in the relevant art will recognize that other steps, configurations and arrangements can be used without departing from the spirit and scope of the invention.
II. The Intelligent Distributed Network Architecture
As used herein, the Intelligent Distributed Network Architecture (IDNA) defines the infrastructure and network elements of an advanced switching system. The term network element (NE) is used herein to describe any physical device within the IDNA. An NE within the IDNA is named according to its primary function. Therefore, an NE that performs primarily switch intelligence functions is named a Switch Intelligence Network Element (SI-NE). A functional entity (such as switch intelligence) may be split across multiple NEs, in which case all of the NEs are denoted by their primary functions (such as SI-NE).
Each Domain IDNOS 104 is coupled to Nationwide IDNOS 102 and at least one Intelligent Computing Complex (ICC) 108. ICC 108 is a computing element that provides services to control the calls processed by Switch Intelligence NEs 110. Each ICC 108 comprises at least one Feature Processor 114. Feature Processor 114 is the functional entity which contains all IN-style logic associated with call processing. This logic is all logic which controls advanced call services and call structure, and may overlap the logic of Switch Intelligence NE 110 in areas where rapid service creation has forced this structure. Feature Processor 114 is usually thought of as comprising all logic not associated with either signaling or call models.
Each Domain IDNOS 104 supports a switching function comprising at least one Switch Intelligence NE 110 coupled to at least one Switch Fabric NE 112. Switch Intelligence NEs 110 are the elements of network 100 that provide call processing functions to manage and process the facilities provided by Switch Fabric NEs 112. Switch Intelligence NE 110 contains all aspects of data processing required to complete a simple bearer connectivity request, as well as all logic required to determine points in call where feature involvement is required. Switch Intelligence NE 110 can be a general-purpose computer, such as a Sun or HP Workstation.
Switch Fabric NE 112 is the element of network 100 that provides the physical facilities necessary to complete a call. These resources include, but are not limited to, bearer devices (T1's, DS0's), network matrix devices (network planes and their processors), link layer signal processors (SS7 MTP, ISDN LAPD), and specialized circuits (conference ports, audio-tone-detectors). Switch Fabric NE 112 represents the hardware switch component provided by a switch manufacturer, such as Nortel.
In a preferred embodiment, network 100 is implemented as a client-server system using functional application programming interfaces (APIs) defined for each service. For example, if an application running on a SI-NE 110 requires a service provided by a FP 114, the SI-NE 110 acts as a client to request the service via an API, and the FP 114 acts as a server to provide the service. Conversely, if an application running on a FP 114 requires a service provided by a SI-NE 110, the FP 114 acts as a client to request the service via an API, and the SI-NE 110 acts as a server to provide the service.
Each call to a server is made through these APIs, regardless of the geographic separation between the client and server. IDNOS 102 allows the client and server to be separated geographically across IDNOS-compatible interfaces and provides a remote procedure call (RPC) capability that is transparent to the client and the server. Thus, applications can be designed as though both client and server were in the same processor, independent of the actual underlying RPC mechanism. Thus, the present invention provides location transparency.
This functional interface method is substantially different from the message-based interfaces provided by traditional IN architectures. These interfaces typically assume a specific distribution topology, and require an underlying infra-structure that is inherently tied to a particular communications method (CCS7, MTP, etc.). The RPC-based approach employed in network 100 allows the underlying communications method to be evolved independently of the design of upper-layer clients and servers.
The RPC client-server model is restricted to interfaces at the service level. Interfaces within the actual servers (between components of the server) are vendor-proprietary, and are not subject to this specification.
In one embodiment, the present invention is implemented as computer software embedded in a computer usable medium as computer readable program code means. The computer usable medium can be, for example, a hard disk drive or a removable storage medium such as a floppy disk.
A. IDNA Services
For clarity, the depiction of Switch Node 200 is divided into bearer functions and control functions. The control functions comprise Feature Processor Function 224 and Switch Intelligence Function 226. Switch Intelligence Function 226 further comprises Call Segment Instance Service 202, Facility Service 204, Switch Fabric Proxy Service 208, and Connection Manager Service 206. The bearer functions comprise Switch Fabric Function 222. For ease of explanation,
Switch Fabric Proxy Service 208 is a device driver preferably supplied by the manufacturer of the Switch Fabric NE(s) executing Switch Fabric Function 222. Switch Fabric Proxy Service 208 provides Connection Manager Service 206 and Facility Service 204 with a common interface to Switch Fabric Function 222 and a common view of the services provided by Switch Fabric Function 222.
In a preferred embodiment, the interface between Switch Fabric Proxy Service 208 and Switch Fabric Function 222 is a vendor-specific ATM interface, and the interface between Call Segment Instance Service 202 and Facility Service 204 is an ISDN variant Q.931.
Call Segment Instance Service 202 is the process which actually brings up and takes down individual connections to complete a call. Facility Service 204 is a protocol state machine that provides all data processing related to the physical resources (that is, facilities) involved in a call. As discussed below, Call Segment Instance Service 202 and Facility Service 204 are programmable to generate a call model which provides a run-time environment for Feature Processor Function 224 to establish calls.
Connection Manager Service 206 rationalizes abstract connection requests from Call Segment Instance Service 202 and resolves these requests into physical connection requests to Switch Fabric Function 222. For example, Connection Manager Service 206 will receive a request to make a particular connection, and translate this request into a request to Switch Fabric Function 222 to physically connect two particular ports.
Services 202, 204, and 206 are not instances, but rather monolithic services which maintain instances within themselves to establish a particular call segment. Each of the services described herein fulfills the interfaces described within this specification using specific procedures. However, as will be apparent to one skilled in the relevant art, other procedures will satisfy the interfaces described, so long as all of the API-specified interfaces are satisfied.
As stated above, the switching function is divided into two primary functions: Switch Intelligence Function 226 and Switch Fabric Function 222. These two functions cooperate in a client/server relationship to complete requests for bearer connectivity (e.g., phone calls). A fundamental conceptual distinction between Switch Intelligence Function 226 and Switch Fabric Function 222 is the assignment of data and devices. All devices necessary to complete a bearer connectivity, including trunk cards, switch matrix networks, specialized circuitry, and link processor cards, are assigned to Switch Fabric Function 222. All data (i.e., processing of information) from these devices, including the processing of signaling, call state, and feature request information, is assigned to Switch Intelligence Function 226.
As stated above, Switch Intelligence Function 226 and Switch Fabric Function 222 correspond logically to two physical computing devices called Network Elements (NEs). Switch Intelligence Function 226 resides within one or more Switch Intelligence NEs (SI-NEs) 110, whereas Switch Fabric Function 222 resides within one or more Switch Fabric NEs (SF-NEs) 112.
Communication between these SF-NEs and SI-NEs is performed using an interface which is preferably supplied by the manufacturer of the Switch Fabric Function 222. This interface consists of Switch Fabric Proxy Service 208 and API 220. Switch Fabric Proxy Service 208 is a software element, usually residing on an SI-NE, which provides a normalized interface to the functional elements of Switch Intelligence Function 226. Switch Fabric Proxy Service 208 permits SF-NE vendors to use any control interface between an SF-NE and Switch Fabric Proxy Service 208 (API 220), but forces SF-NE vendors to provide a uniform interface from Switch Fabric Proxy Service 208 to Switch Intelligence Function 226 (APIs 216 and 218). Requests flow between Switch Intelligence Function 226 and Switch Fabric Proxy Service 208 as API procedure calls and responses defined by APIs 216 and 218. As will be apparent to one skilled in the relevant art, APIs 216 and 218 can be considered to be two portions, perhaps overlapping, of a single API.
1. The IDNA Call Model
The IDNA call model is a method of representing the bearer, signaling, and call processing facilities associated with a call.
A call is composed of a number of participating members, one for each party to a call; each member is known as a “call half.” A call half provides all control for the facilities, subscribers, databases, and call states for the participating member. Call 300 comprises three parties 302A-C, and thus three call halves 320A-C.
Each call half 320 is composed of two primary elements: Call Segment Instance 306 and Facility Instance 304. Call Segment Instance 306 is an instance of Call Segment Instance 202. Call Segment Instance 306 supports the data and interfaces required for call state, subscriber, and feature processing. Call Segment Instance 306 represents the processing of an endpoint in a call. Facility Instance 304 is an instance of Facility Service 204. Facility Instance 304 supports the processing of events on a facility and correlates these events into requests to Call Segment Instance 306.
The processing of data related to physical facilities, contained within Facility Instance 304, is isolated from the actual physical facilities contained within Switch Fabric NE 112 (represented by Switch Fabric Proxy Service 208). Switch Fabric NE 112 provides minimal data processing capabilities.
The following paragraphs define the services of Switch Intelligence Function 226 according to a preferred embodiment of the present invention, as well as the conceptual entities contained within these services, with reference to
2. The Call Segment Instance Service
Call Segment Instance Service 202 is the IDNOS service that performs call half processing, and is the entity that represents the status of call half 302, including all connection points and associated resources. Call Segment Instance Service 202 communicates to Facility Service 204 (for protocol processing), to Feature Processor Function 224 (for feature processing), and to Connection Manager 206 (for connection control). Call Segment Instance Service 202 corresponds to the AIN 1.0 Call Segment (CS) object.
Call Segment Instance Service 202 is provided via a Call Segment Instance 306 that is specifically associated with a particular active facility at a particular call state. Identical active facilities with different call states are considered different Call Segment Instances 306.
Call Segment Instance Service 202 comprises two conceptual entities: Connection Point (CP) Conceptual Entity 412 and Segment Call-Half Manager Conceptual Entity 410.
Connection Point (CP) Conceptual Entity 412 is the entity aware of the connectivity of connectors within a Call Segment Instance 306. A CP 412 is a representation of connectors in some state of bearer connectivity (one-way, two-way, multi-way, etc.). Multiple CPs 412 within a call are not in a state of bearer connectivity, but may be either brought into connectivity by joining them. A CP 412 may be removed from a state of bearer connectivity by splitting it.
CP 412 maintains information relevant to the status of a call half's connectors; as such, no state machine is needed to provide that capability. A connector represents the connection between two (or more) connection points. A connector may be either an active connector or a passive connector. An active connector is any connector between a Call Segment Instance 306 and a Facility Instance 304; a Call Segment Instance 306 can have only one active connector. A passive connector is any connector between two Call Segment Instances 306. A CP can have a maximum of one active connector, but can have any number of passive connectors. However, a CP does not require an active connector; a CP may represent a connection of two passive connectors (for example, a call on hold with music). Since CPs are not required to have an active connector, there may be a situation where segments are not managing actual facilities, but are instead managing the connection between other segments. If a segment were placed in such a situation, it would represent and control the relationship between two end-point segments.
Segment Call-Half Manager Conceptual Entity 410 represents the call data processing within a segment. The primary aspect of Segment Call-Half Manager 410 is a Call State Machine, which is a finite state machine responsible for the execution of basic call processing. This object is the state machine typically associated with call processing within ITU standards.
3. The Facility Service
Facility Service 204 is a protocol state machine which provides all data processing related to the physical resources (i.e., facilities) involved in a call. Facility Service 204 processes raw signaling data provided by Switch Fabric Proxy Service 208. The resulting actions describe detailed call progress changes that initiate abstract call progress changes (which are given to Call Segment Instance 306). Information provided to Facility Service 204 by Switch Fabric Proxy Service 208 is usually formed of facility-related events (on-hook, off-hook, wink) and actual data received (DTMF digits, ISUP messages, Q.931 messages) from the facility. Switch Fabric Proxy Service 208 provides this information in an unprocessed form, allowing Facility Service 204 to process this data into abstract events for Call Segment Instance 306 (e.g., Call Setup Request, Call Disconnect Request, etc.).
Facility Service 204 also acts as a server to the Call Segment Instance Service 202, fulfilling requests for facility manipulation. This manipulation is received as abstract requests (e.g., Provide Tone, Setup Request, Disconnect) and causes the facility to perform actions on the Switch Fabric Proxy Service to fulfill the manipulation requests. The majority of the APIs defined for Facility Service 204 that are provided to Call Segment Instance Service 202 are not protocol-specific. Rather, these requests are abstract interfaces that span all protocol families and yield protocol-specific actions based on logic contained entirely within Facility Service 204.
Facility Service 204 comprises Facility Channel Conceptual Entity 414, Signaling Channel Conceptual Entity 416, and Bearer Channel Conceptual Entity 418.
Facility Channel (FCH) Conceptual Entity 414 is a functional component which provides the ability to logically “bind” a bearer channel to its associated signaling. This binding happens on indication from the Signaling Channel that a Bearer Channel is required for the call.
Signaling Channel (SCH) Conceptual Entity 416 is the object that addresses all of those aspects of FCH 414 associated with communications with distant SF-NEs 112 and SI-NEs 110. SCH 416 takes care of the signaling for a call half. It is minimally available in three flavors: SS7 ISUP, PRI, and inband. SCH 416 is where new types of signaling are implemented (for example, BTUP or R2).
Bearer Channel (BCH) Conceptual Entity 418 provides an association between a Call Segment Instance 306 and the set of physical devices associated with providing bearer services for that Call Segment Instance 306. These physical devices include T1s, E1s, DS0s, and other bearer devices, but exclude any device strictly associated with signaling. This association permits invoking entities to refer to these devices in an abstract command structure, eliminating the need to refer to all devices within the association. There is one BCH 418 associated with each FCH 414. However, BCH 418 may represent a group of circuits; for example, a 6×64 wideband call would have six circuits actually involved but would be represented as one BCH 418.
4. The Connection Manager Service
Connection Manager Service 206 provides the ability to establish and track connections within an SF-NE 112. Connection Manager Service 206 rationalizes abstract connection requests from Call Segment Instance Service 202 and resolves these requests into physical connection requests for Switch Fabric Function 222. For example, Connection Manager Service 206 will receive a request to make a particular connection, and translate this request into a request to physically connect two particular ports. Connection Manager Service 206 will minimally receive connection instructions from each Call Segment Instance 306, and will resolve these instructions into specific matrix actions for Switch Fabric Function 222 which connect the devices controlled by each segment. A very basic call will result in two segments which provide data to Connection Manager Service 206, which then resolves this data into a single connection request to Switch Fabric Proxy Service 208.
5. The Switch Fabric Proxy Service
Switch Fabric Proxy Service 208 provides all mechanisms to control Switch Fabric Function 222 bearer and connectivity resources. It is the fundamental aspect of Switch Fabric Service 112 that it provides clients, such as Call Segment Instance 306, the ability to associate bearer resources and to request connectivity of resources.
Switch Fabric Proxy Service 208 provides IDNOS-compatible APIs 216 and 218 towards the remainder of call processing, and provides Switch Fabric-specific API 220 towards the actual switch fabric equipment (SF-NEs 112). As such, Switch Fabric Proxy Service 208 acts as a gateway between the IDNOS client/server environment and the Switch Fabric-specific messaging environment. Switch Fabric Proxy Service 208 is required to be accessible through the IDNOS RPC execution support capability, whereas SF-NEs 112 are not required to be accessible through the IDNOS RPC. It is acceptable to have the Switch Fabric Proxy Service 208 built within an SF-NE 112, but such a configuration would require an IDNOS-compliant physical interface between the SF-NE 112 and communicating SI-NEs 110.
Switch Fabric Proxy Service 208 provides interfaces to the call processing clients that deal with device connectivity, signaling, etc. These interfaces (also called “agents”) are grouped into the conceptual entities described below.
Signal Protocol Manager (SPM) Conceptual Entity 422 is a distributor of signaling information to the various Signaling Channels which process such information. SPM 422 is capable of rudimentary processing of signaling information and may combine multiple events into a single Signaling Channel indication (under the guidance of Signaling Channel 416).
Matrix Conceptual Entity 420 is the functional component responsible for interconnection of compatible bearer channels, enabling the transfer of information between bearer channels on facilities external to SF-NE 112. Matrix 420 performs its functions under the control of Connection Manager 419 within SI-NE 112.
External Device Conceptual Entity 424 is the functional component that comprises all physical interfaces external to SF-NE 112. These external interfaces may provide bearer transport, data transport, or a mixture of bearer and data transport. External Device Conceptual Entity 424 also encompasses those devices that provide service circuit-typed capabilities (receivers, voice recognizers, etc.).
OAM&P Manager Conceptual Entity 428 is the functional component that handles the operation, administration, maintenance, and provisioning functions for an SI-NE 110 and an SF-NE 112. This functionality is distributed between the SI-NE 110 and SF-NE 112.
Resource Manager Conceptual Entity 426 is the object responsible for maintaining a distributed view of the current availability of resources throughout a Switch Node 200, including all resources that directly apply to a Switch Intelligence Function 226.
Device Pool Conceptual Entity 430 represents all available external devices that may be attached to Facility Channel 414 as External Devices 424 for purposes of signaling or bearer service.
B. API Interfaces
In a preferred embodiment of the present invention, many of the interfaces are implemented as application programming interfaces (APIs). As will be apparent to one skilled in the relevant arts, other interface implementations may be employed without departing from the spirit and scope of the present invention.
The capability to customize Switch Intelligence Function 226 is a hallmark of the present invention. In a preferred embodiment of the present invention, Call Segment Instance Service 202 and Facilities Service 204 are independently customizable. Thus, according to a preferred embodiment of the present invention, Call Segment Instance Service 202 and Facilities Service 204 each provide two types of APIs: programming APIs and control APIs.
A significant advantage of the provision of standard control APIs is that Call Segment Instance Service 202, Facilities Service 204, Connection Manager Service 206, and Switch Fabric Proxy Service 208 may each be provided by different vendors.
1. Programming (Non-Instance) APIs
These API interfaces permit element behaviors to be redefined to facilitate the creation of new services, either within the switching system or within an associated feature engine. CMDL Toolkit API 414 can be employed to create class definitions for aspects of the call model, such as Call State Machines 512, prior to runtime. For example, these class definitions may include a Call State Machine 512A for AIN 1.0, a Call State Machine 512B for ITU CS-1, and a Call State Machine 512C for an MCI call state machine. Call Segment Instance Service 202 creates instances 508 of the defined call state machines, and maintains call data instances 510 in response to requests from Feature Processor Function 224 received via control APIs 210, 212, and 214. The programming API for Facility Service 204 can be employed in a similar fashion, for example, to create a Signaling State Machine.
Call Model Creation Environment 502 provides a CMDL Library 514 of the states, events, and atomics which make up the CMDL. In a state machine, an atomic is a non-controlling single step action (for example, a procedure call). An event is a notification to the Switch Fabric Function of activity.
2. Control (Instance) APIs
In operation, the Runtime Environment 504 of Call Segment Instance Service 202 interacts with Feature Processor Function 224, Connection Manager Service 206, and Facility Service 204 via control APIs 210, 212, and 214, respectively, to perform call processing. Call Segment Instance Service 202 instantiates (i.e., creates), for example, Call State Machine Instances 508 and Call Data Instances 510 in response to requests for service.
Because Connection Manager Service 206 and Facility Service 204 provide standard control APIs, the provider of Switch Intelligence Function 226 has the ability to “mix and match” components within the Switch Intelligence Function, allowing a “buy/build” decision on a case by case basis.
III. An Example: Three-Way Call
As an example of the operation of the present invention according to a preferred embodiment, consider a three-way call, which is a specific type of a conference call. This example will be described with reference to
A three-way call is placed via an External Function 228 having both bearer and signaling components (e.g., a LEC or PBX). In response, the signaling component of External Function 228 provides a signaling request to Switch Fabric Function 222, which maps the request to Switch Intelligence Function 226. Facility Service 204 performs certain signaling processing (perfoming early address determination, unpacking various protocols into a common protocol, parsing of the common protocol) and passes the event to Call Segment Instance Service 202, which instantiates a Call Segment Instance 306A, including a Call State Machine Instance 508, to represent call half 320A.
Call Segment Instance Service 202 informs Connection Manager 206 of the status of Active Connector 308A and any Passive Connectors 310 (there are none yet, as Party A is still the only party to the call). In response, Connection Manager Service 206 directs Switch Fabric Function 222 (via Switch Fabric Proxy Service 208) to make the required physical connections.
Because Party A is requesting a feature (the three-way call), Call Segment Instance Service 202 triggers Feature Processor Function 224. In response, Feature Processor Function 224 provides a command, via API 210, to Call Segment Instance Service 202, to add Parties B and C to the call. In response, Call Segment Instance Service 202 instantiates Call Segment Instances 306B and 306C, instructs Facility Service 204 to instantiate Facility Instances 304B and 304C, and instructs Connection Manager Service 206 to create Passive Connectors 310A and 310B and Active Connectors 308B and 308C. Connection Manager Service 206 directs Switch Fabric Function 222 (via Switch Fabric Proxy Service 208) to make the necessary physical connections, thus creating the three-way call.
While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example, and not limitation. It will be apparent to persons skilled in the relevant art that various changes in form and detail can be made therein without departing from the spirit and scope of the invention. Thus the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US4201891||Mar 17, 1978||May 6, 1980||International Telephone And Telegraph Corporation||Expandable digital switching network|
|US4665514 *||Aug 2, 1985||May 12, 1987||American Telephone And Telegraph Company, At&T Bell Laboratories||Integrated voice/data network|
|US4685125||Jun 28, 1982||Aug 4, 1987||American Telephone And Telegraph Company||Computer system with tasking|
|US4713806 *||Mar 14, 1986||Dec 15, 1987||American Telephone And Telegraph Company, At&T Bell Laboratories||Communication system control arrangement|
|US4747130||Dec 17, 1985||May 24, 1988||American Telephone And Telegraph Company, At&T Bell Laboratories||Resource allocation in distributed control systems|
|US4821034||Feb 6, 1987||Apr 11, 1989||Ancor Communications, Inc.||Digital exchange switch element and network|
|US4872157||Mar 31, 1988||Oct 3, 1989||American Telephone And Telegraph Company, At&T Bell Laboratories||Architecture and organization of a high performance metropolitan area telecommunications packet network|
|US4872158 *||Mar 31, 1988||Oct 3, 1989||American Telephone And Telegraph Company, At&T Bell Laboratories||Distributed control rapid connection circuit switch|
|US4872159 *||Mar 31, 1988||Oct 3, 1989||American Telephone And Telegraph Company At&T Bell Laboratories||Packet network architecture for providing rapid response time|
|US4872160 *||Aug 30, 1988||Oct 3, 1989||American Telephone And Telegraph Company, At&T Bell Laboratories||Integrated packetized voice and data switching system|
|US4875206 *||Mar 31, 1988||Oct 17, 1989||American Telephone And Telegraph Comopany, At&T Bell Laboratories||High bandwidth interleaved buffer memory and control|
|US4893302 *||Mar 31, 1988||Jan 9, 1990||American Telephone And Telegraph Company, At&T Bell Laboratories||Arrangement for switching concentrated telecommunications packet traffic|
|US4894824 *||Mar 31, 1988||Jan 16, 1990||American Telephone And Telegraph Company, At&T Bell Laboratories||Control network for a rapid connection circuit switch|
|US4896319 *||Mar 31, 1988||Jan 23, 1990||American Telephone And Telegraph Company, At&T Bell Laboratories||Identification and authentication of end user systems for packet communications network services|
|US4899333 *||Mar 31, 1988||Feb 6, 1990||American Telephone And Telegraph Company At&T Bell Laboratories||Architecture of the control of a high performance packet switching distribution network|
|US4922486 *||Mar 31, 1988||May 1, 1990||American Telephone And Telegraph Company||User to network interface protocol for packet communications networks|
|US4942574 *||Mar 31, 1988||Jul 17, 1990||American Telephone And Telegraph Company, At&T Bell Laboratories||Concurrent resource request resolution mechanism|
|US4958341 *||Mar 31, 1988||Sep 18, 1990||At&T Bell Laboratories||Integrated packetized voice and data switching system|
|US4977582 *||Mar 31, 1988||Dec 11, 1990||At&T Bell Laboratories||Synchronization of non-continuous digital bit streams|
|US4979118 *||Mar 10, 1989||Dec 18, 1990||Gte Laboratories Incorporated||Predictive access-control and routing system for integrated services telecommunication networks|
|US5042027||Sep 8, 1989||Aug 20, 1991||Hitachi, Ltd.||Communication network system and method of controlling a communication network|
|US5157390||Apr 6, 1990||Oct 20, 1992||Hitachi, Ltd.||Method for providing network service in a communication system|
|US5195085||Sep 11, 1990||Mar 16, 1993||At&T Bell Laboratories||Communication link identifier|
|US5226075||Jan 22, 1992||Jul 6, 1993||At&T Bell Laboratories||Method of and apparatus for numbering and routing calls through a communication network|
|US5272749||Apr 8, 1991||Dec 21, 1993||Masek Jan K||Telephone dialing system for converting subscriber-created telephone numbers to directory numbers|
|US5327486||Mar 22, 1993||Jul 5, 1994||Bell Communications Research, Inc.||Method and system for managing telecommunications such as telephone calls|
|US5329520||Jul 17, 1992||Jul 12, 1994||Alcatel Network Systems, Inc.||High-speed facility protection in a digital telecommunications system|
|US5390335||Jul 21, 1992||Feb 14, 1995||Siemens Aktiengesellschaft||Method for modifying system configuration data sets in a telecommunications switching system|
|US5418844||Apr 17, 1992||May 23, 1995||Bell Atlantic Network Services, Inc.||Automatic access to information service providers|
|US5422940||Apr 20, 1992||Jun 6, 1995||Fujitsu Limited||Global subscriber group service system|
|US5434852 *||Aug 31, 1994||Jul 18, 1995||At&T Corp.||Distributed processing architechture for control of broadband and narrowband communications networks|
|US5436893 *||Nov 5, 1993||Jul 25, 1995||Netcom Limited||ATM cell switch suitable for multicast switching|
|US5455821||Nov 10, 1994||Oct 3, 1995||Motorola, Inc.||Communication system resource allocation method|
|US5469500 *||Nov 12, 1993||Nov 21, 1995||Voiceplex Corporation||Method and apparatus for delivering calling services|
|US5475817||Nov 30, 1993||Dec 12, 1995||Hewlett-Packard Company||Object oriented distributed computing system processing request to other object model with code mapping by object managers located by manager of object managers|
|US5483585||Feb 10, 1994||Jan 9, 1996||British Telecommunications, Plc||Apparatus for managing an element manager for a telecommunications switch|
|US5513127||Sep 22, 1994||Apr 30, 1996||Telefonaktiebolget L M Ericsson||Control systems employing a data model in a network environment|
|US5519768 *||Dec 1, 1994||May 21, 1996||Bellsouth Corporation||Facsimile detection system and method|
|US5526415||Oct 31, 1994||Jun 11, 1996||Fujitsu Limited||Integrated communication system with intelligent network and telecommunications management network|
|US5530852||Dec 20, 1994||Jun 25, 1996||Sun Microsystems, Inc.||Method for extracting profiles and topics from a first file written in a first markup language and generating files in different markup languages containing the profiles and topics for use in accessing data described by the profiles and topics|
|US5548726||Dec 17, 1993||Aug 20, 1996||Taligeni, Inc.||System for activating new service in client server network by reconfiguring the multilayer network protocol stack dynamically within the server node|
|US5551035||Mar 16, 1995||Aug 27, 1996||Lucent Technologies Inc.||Method and apparatus for inter-object communication in an object-oriented program controlled system|
|US5572581 *||Jul 31, 1995||Nov 5, 1996||Intervoice Limited Partnership||Method and apparatus for delivering calling services|
|US5572583 *||May 25, 1994||Nov 5, 1996||Bell Atlantic||Advanced intelligent network with intelligent peripherals interfaced to the integrated services control point|
|US5583920 *||Sep 12, 1994||Dec 10, 1996||Bell Atlantic||Intelligent peripheral in video dial tone network|
|US5603085||Mar 4, 1996||Feb 11, 1997||Motorola, Inc.||Method of allocating communication resources in a communication system|
|US5608446||May 9, 1995||Mar 4, 1997||Lucent Technologies Inc.||Apparatus and method for combining high bandwidth and low bandwidth data transfer|
|US5610976||Apr 25, 1995||Mar 11, 1997||Sharp Kabushiki Kaisha||Dual channel ISDN terminal call identification and switching system|
|US5619557||Jul 10, 1995||Apr 8, 1997||Rockwell International Corporation||Telephone switching system and method for controlling incoming telephone calls to remote agents and for collecting and providing call data|
|US5619562||Feb 6, 1995||Apr 8, 1997||Bell Atlantic Network Services, Inc.||Method and system for remotely activating/changing subscriber services in a public switched telephone network|
|US5644631 *||Aug 6, 1996||Jul 1, 1997||Intervoice, Inc.||Method and apparatus for delivering calling services|
|US5655007 *||Dec 23, 1994||Aug 5, 1997||Bell Atlantic Network Services, Inc.||Telephone based credit card protection|
|US5661782||Oct 6, 1995||Aug 26, 1997||Bell Atlantic Network Services, Inc.||Voice mail communication with call blocking|
|US5664102||Feb 7, 1995||Sep 2, 1997||At&T||Intelligent network internetworking access arrangement|
|US5677905 *||Mar 28, 1995||Oct 14, 1997||Bell Atlantic Network Services, Inc.||Access subnetwork controller for video dial tone networks|
|US5694463||Feb 15, 1995||Dec 2, 1997||Christie; Joseph Michael||System for service control point routing|
|US5701412 *||Dec 14, 1994||Dec 23, 1997||Hitachi, Ltd.||Telecommunications service control method in intelligent network|
|US5703940 *||Aug 10, 1995||Dec 30, 1997||Intervoice, Inc.||Method and apparatus for delivering calling services|
|US5712903 *||Aug 21, 1995||Jan 27, 1998||Bell Atlantic Network Services, Inc.||Split intelligent peripheral for broadband and narrowband services|
|US5712906||Mar 29, 1996||Jan 27, 1998||Bell Atlantic Network Services||Communications systems supporting shared multimedia session|
|US5712908||May 17, 1996||Jan 27, 1998||Unisys Corporation||Apparatus and method for generating call duration billing records utilizing ISUP messages in the CCS/SS7 telecommunications network|
|US5715304||Sep 6, 1996||Feb 3, 1998||Kabushiki Kaisha Toshiba||Private branch exchange|
|US5724406||Mar 22, 1994||Mar 3, 1998||Ericsson Messaging Systems, Inc.||Call processing system and method for providing a variety of messaging services|
|US5724419||Feb 20, 1997||Mar 3, 1998||Rockwell International Corporation||Call overflow system and method for an automatic call distribution system|
|US5740075 *||Mar 28, 1995||Apr 14, 1998||Bell Atlantic Network Services, Inc.||Access subnetwork controller for video dial tone networks|
|US5742905||Sep 19, 1994||Apr 21, 1998||Bell Communications Research, Inc.||Personal communications internetworking|
|US5748468||May 4, 1995||May 5, 1998||Microsoft Corporation||Prioritized co-processor resource manager and method|
|US5761290 *||Oct 11, 1995||Jun 2, 1998||Bell Atlantic Network Services, Inc.||Alternate service activation|
|US5781624||May 17, 1996||Jul 14, 1998||Lucent Technologies Inc.||Method for sharing network resources by virtual partitioning|
|US5784617||Nov 27, 1996||Jul 21, 1998||International Business Machines Corporation||Resource-capability-based method and system for handling service processor requests|
|US5787160||Jun 6, 1996||Jul 28, 1998||Mci Communications Corporation||Intelligent routing of special service calls|
|US5802157||Nov 13, 1996||Sep 1, 1998||U S West Technologies, Inc.||Method and apparatus for controlling outgoing calls on a telephone line|
|US5812533||Feb 28, 1995||Sep 22, 1998||British Telecommunications Public Limited Company||Service provision in communications networks|
|US5818921||Mar 14, 1996||Oct 6, 1998||Siemens Business Communication Systems, Inc.||Signaling system and method for enabling PBX-PBX feature transparency across a switched public network|
|US5822419 *||Jan 31, 1996||Oct 13, 1998||Gpt Limited||Telecommunications service interactions|
|US5822727 *||Dec 21, 1995||Oct 13, 1998||At&T Corp||Method for automatic speech recognition in telephony|
|US5825869||Apr 23, 1996||Oct 20, 1998||Siemens Business Communication Systems, Inc.||Call management method and system for skill-based routing|
|US5826268||Dec 23, 1996||Oct 20, 1998||Ontos, Inc.||Secure multilevel object oriented database management system|
|US5838970||Aug 14, 1997||Nov 17, 1998||Recognition International Inc.||Object-oriented computer environment and related method|
|US5848143||Mar 4, 1996||Dec 8, 1998||Geotel Communications Corp.||Communications system using a central controller to control at least one network and agent system|
|US5867498 *||Sep 14, 1995||Feb 2, 1999||British Telecommunications Public Limited||Intelligent telecommunications network|
|US5867565 *||Mar 19, 1996||Feb 2, 1999||Fujitsu Limited||Intelligent network having service control node and service switching node for achieving traffic data collection processing|
|US5878128 *||Jun 26, 1996||Mar 2, 1999||Nokia Telecommuniction Oy||Method of communication and connection control|
|US5881134||Sep 3, 1996||Mar 9, 1999||Voice Control Systems, Inc.||Intelligent call processing platform for home telephone system|
|US5903641||Jan 28, 1997||May 11, 1999||Lucent Technologies Inc.||Automatic dynamic changing of agents' call-handling assignments|
|US5915008||Oct 4, 1995||Jun 22, 1999||Bell Atlantic Network Services, Inc.||System and method for changing advanced intelligent network services from customer premises equipment|
|US5940378 *||Nov 27, 1996||Aug 17, 1999||Fujitsu Limited||Call control in exchange suitable for intelligent network|
|US5940487 *||Jul 17, 1996||Aug 17, 1999||Alcatel Usa Sourcing, L.P.||Programmable call processing system and method|
|US5940616||May 31, 1996||Aug 17, 1999||International Business Machines Corporation||Tracker class for object-oriented programming environments|
|US5958016||Jul 13, 1997||Sep 28, 1999||Bell Atlantic Network Services, Inc.||Internet-web link for access to intelligent network service control|
|US5960205 *||Oct 30, 1997||Sep 28, 1999||Lucent Technologies Inc.||Upgrading the control of switching systems|
|US5966434||Mar 31, 1997||Oct 12, 1999||Telcordia Technologies, Inc.||System and method for managing feature interaction of telephone services|
|US5995610 *||May 6, 1997||Nov 30, 1999||Telefonaktiebolaget Lm Ericsson||Cooperative call processing across public and private intelligent networks|
|US6018567||Feb 26, 1998||Jan 25, 2000||Bell Atlantic Network Services, Inc.||Maintenance operations console for an advanced intelligent network|
|US6035028||Aug 15, 1997||Mar 7, 2000||Alcatel Usa Sourcing, L.P.||Telecommunications network architecture enabling local services resale in a legacy network|
|US6041109 *||Dec 29, 1995||Mar 21, 2000||Mci Communications Corporation||Telecommunications system having separate switch intelligence and switch fabric|
|US6041117||Feb 28, 1997||Mar 21, 2000||At&T Corp||Distributed network control and fabric application interface|
|US6044142 *||May 6, 1997||Mar 28, 2000||Telefonaktiebolaget L M Ericsson||Method and arrangement for integrating intelligent network services with operator assisted services|
|US6049545||Oct 3, 1997||Apr 11, 2000||Alcatel Usa Sourcing, L.P.||System and method for message communications in a distributed telecommunications switch|
|US6094479 *||May 6, 1997||Jul 25, 2000||Telefonaktiebolaget Lm Ericsson||Computer telephony integration gateway|
|US6098094||Oct 27, 1999||Aug 1, 2000||Mci Worldcom, Inc||Method and system for an intelligent distributed network architecture|
|US6104803||Jan 30, 1998||Aug 15, 2000||Alcatel Usa Sourcing, L.P.||Intelligent service peripheral device|
|US6134433||Jun 5, 1997||Oct 17, 2000||Telefonaktiebolaget L M Ericsson (Publ)||System and method of forwarding data calls in a radio telecommunications network|
|US6144647||Nov 3, 1997||Nov 7, 2000||Telefonaktiebolaget Lm Ericsson||Communication system, mobile services switching center and method for establishing a multi-dialogue communication between subscriber stations|
|US6161128||Aug 14, 1996||Dec 12, 2000||Telcordia Technologies, Inc.||Internet based service control system allows telecommunications subscriber modifies telecommunications services through an internet gateway|
|US6169735||Apr 7, 1999||Jan 2, 2001||Sbc Technology Resources, Inc.||ATM-based distributed virtual tandem switching system|
|US6175618||Jul 1, 1998||Jan 16, 2001||Alcatel Usa Sourcing, L.P.||ANI based routing|
|US6181703 *||Sep 8, 1995||Jan 30, 2001||Sprint Communications Company L. P.||System for managing telecommunications|
|US6208724 *||Apr 9, 1998||Mar 27, 2001||Dialogic Corporation||Virtual telephone|
|US6222919||Sep 12, 1994||Apr 24, 2001||Rockwell International Corporation||Method and system for routing incoming telephone calls to available agents based on agent skills|
|US6243453 *||Jul 13, 1999||Jun 5, 2001||Alcatel Usa Sourcing, L.P.||Programmable call processing system and method|
|US6243455 *||Jan 11, 2000||Jun 5, 2001||Nokia Networks Oy||Reducing message traffic in intelligent network|
|US6301350||Jun 30, 1995||Oct 9, 2001||Qwest Communications International, Inc.||System and method for call handling|
|US6324275 *||May 22, 1997||Nov 27, 2001||Alcatel Usa Sourcing, L.P.||System and method for total telecommunications service commissioning|
|US6327355 *||Jan 29, 1999||Dec 4, 2001||Telefonaktiebolaget Lm Ericsson (Publ)||Use of platform-independent code for supporting services in an intelligent network|
|US6333980||Sep 28, 1994||Dec 25, 2001||Rockwell International Corporation||Automatic call distributor and method for routing incoming telephone calls based on proficiency ratings of agents|
|US6373825 *||Aug 27, 1998||Apr 16, 2002||Siemens Aktiengesellschaft||Telecommunication network and state propagation method|
|US6480890||Aug 26, 1997||Nov 12, 2002||Alcatel Usa Sourcing, L.P.||World Wide Web interface to telecom service creation environment|
|US6581095 *||Dec 23, 1999||Jun 17, 2003||Hyundai Electronics Industries Co., Ltd.||Apparatus for matching a large amount of configuration data between exchanger and telecommunication management network repeater in code division multiple access system and control method thereof|
|US6690781 *||Jun 18, 2001||Feb 10, 2004||International Business Machines Corporation||Generic service component for telephony container server|
|US6690788||Sep 15, 2000||Feb 10, 2004||Avaya Inc.||Integrated work management engine for customer care in a communication system|
|US6694002 *||Jun 18, 2001||Feb 17, 2004||International Business Machines Corporation||Generic service component for wireless services|
|US6704410||Jun 1, 2000||Mar 9, 2004||Avaya Inc.||System for automatically assigning skill levels to multiple skilled agents in call center agent assignment applications|
|US6721409 *||Dec 21, 1998||Apr 13, 2004||Nortel Networks Limited||Network based call mute|
|US6724875 *||Jun 9, 1997||Apr 20, 2004||Sbc Technology Resources, Inc.||Flexible network platform and call processing system|
|US6871346 *||Feb 11, 2000||Mar 22, 2005||Microsoft Corp.||Back-end decoupled management model and management system utilizing same|
|US6873698 *||Jul 2, 1999||Mar 29, 2005||Marconi Uk Intellectual Property Ltd.||Telecommunications network|
|US7133515 *||Aug 14, 2002||Nov 7, 2006||Sprint Communications Company L.P.||Subscriber control of busy line interrupt and line treatment codes|
|US7151935 *||Mar 29, 2002||Dec 19, 2006||Huawei Technologies Co., Ltd.||Method for initiative setting up calls by service control point in mobile intelligent network|
|US7280530 *||Mar 4, 2002||Oct 9, 2007||Starvox Communications Inc.||Apparatus and method for integrated voice gateway|
|US7359503||Jan 13, 2005||Apr 15, 2008||Verizon Services Corp.||Method of and system for providing services in a communications network|
|US7461381 *||Dec 23, 2003||Dec 2, 2008||At&T Labs, Inc.||Flexible network platform and call processing system|
|US7596215 *||May 28, 2004||Sep 29, 2009||Qwest Communications International, Inc.||System and method for teleconference pass code security at a telecommunications switch|
|US7756261 *||Feb 29, 2008||Jul 13, 2010||MCI Communications Corporation & Verizon Communications Inc.||Method of and system for providing services in a communications network|
|US7934206 *||Feb 9, 2001||Apr 26, 2011||Convergent Networks, Inc.||Service level executable environment for integrated PSTN and IP networks and call processing language therefor|
|US7979518 *||Sep 14, 2004||Jul 12, 2011||Mci Communications Corporation||Intelligent call platform for an intelligent distributed network|
|EP0559979A2||Aug 26, 1992||Sep 15, 1993||Advantis||Subscriber call routing process system|
|EP0812089A2||May 27, 1997||Dec 10, 1997||Lucent Technologies Inc.||Network-independent connection management|
|WO1995029564A1||Apr 21, 1995||Nov 2, 1995||British Telecommunications Public Limited Company||Service creation apparatus for a communications network|
|WO1996020448A1||Dec 22, 1995||Jul 4, 1996||Southwestern Bell Technology Resources, Inc.||Flexible network platform and call processing system|
|1||"AINGR: Switch-Service Control Point (SCP)/Adjunct Interface", Bellcore GR-1299-CORE, Issue 4, Revision 1, Oct. 1998, Glossary and Acronyms Sections, 24 pages.|
|2||"Intelligent Network (IN)", The International Engineering Consortium, Web ProForum Tutorials, http:://www.iec.org, Sep. 6, 2000, pp. 1-32.|
|3||Elixmann et al., "Open Switching-Extending Control Architectures to Facilitate Applications," International Switching Symposium, vol. 2, Apr. 23-28, 1995, Berlin, Germany, pp. 239-243.|
|4||Kabay et al., "The Service Node-An Advanced in Services Element," BT Technology Journal, vol. 13, No. 2, Apr. 1995, Ipswich, Great Britain, pp. 64-72.|
|5||Kabay et al., "The Service Node—An Advanced in Services Element," BT Technology Journal, vol. 13, No. 2, Apr. 1995, Ipswich, Great Britain, pp. 64-72.|
|6||Maruyama, "A Concurrent Object-Oriented Switching Program in Chill," IEEE Communications Magazine, vol. 29, No. I, Jan. 1991, New York, USA, pp. 60-68.|
|7||Mayer et al., "Service Net-2000: An Intelligent Network Evolution," AT&T Technical Journal, vol. 70, No. 3/4, 1991, Short Hills, USA, pp. 99-110.|
|8||Shabana et al., "Intelligent Switch Architecture," Proceedings of the National Communications Forum, vol. 42, No. 2, Sep. 30,1988, Chicago, USA, pp. 1312-1320.|
|U.S. Classification||379/201.01, 379/69, 379/221.01, 379/243, 379/164, 370/360|
|International Classification||H04M1/00, H04M1/64, H04Q3/545, H04M7/00, H04L12/50, H04M3/42, H04Q3/00|
|Cooperative Classification||H04Q2213/13504, H04Q2213/1305, H04Q2213/13533, H04Q3/0029, H04Q2213/13516, H04Q3/5455|
|European Classification||H04Q3/545M1, H04Q3/00D3|
|Apr 22, 2014||AS||Assignment|
Owner name: VERIZON PATENT AND LICENSING INC., NEW JERSEY
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MCI COMMUNICATIONS CORPORATION;REEL/FRAME:032725/0001
Effective date: 20140409
|Jul 24, 2014||AS||Assignment|
Owner name: VERIZON PATENT AND LICENSING INC., NEW JERSEY
Free format text: CORRECTIVE ASSIGNMENT TO REMOVE THE PATENT NUMBER 5,835,907 PREVIOUSLY RECORDED ON REEL 032725 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNOR:MCI COMMUNICATIONS CORPORATION;REEL/FRAME:033408/0235
Effective date: 20140409