HK1027184B - Distributed service network and method of processing data access requests - Google Patents
Distributed service network and method of processing data access requests Download PDFInfo
- Publication number
- HK1027184B HK1027184B HK00106350.1A HK00106350A HK1027184B HK 1027184 B HK1027184 B HK 1027184B HK 00106350 A HK00106350 A HK 00106350A HK 1027184 B HK1027184 B HK 1027184B
- Authority
- HK
- Hong Kong
- Prior art keywords
- network
- user
- administration device
- format
- policing
- Prior art date
Links
Description
Technical Field
The invention relates to a distributed service network. More particularly, the present invention relates to a network that provides communication and other services to fixed, mobile and nomadic users in a manner that is transparent to external service providers and users. The invention also relates to a reconfigurable distributed service network, which provides communication components and user services for fixed users, mobile users and nomadic users in a mode of being transparent to external service providers and users, and can increase and decrease services and/or components according to needs in the working process of the network. The invention also relates to a data stream conversion system and a method of converting a data stream from a first format to a desired format. The invention also relates to a method for servicing data access requests from users connected to a distributed service network, wherein the servicing of the data access requests is independent of the actual connection point and the communication client used.
Background
Recent developments in telecommunications have led to the emergence of networks that provide a variety of services. The manner in which individuals and businesses can choose to communicate is changing day by day from traditional voice or data networks to wireless packet and enhanced paging networks. The variety of communication means has resulted in a revolution in people's way of living and working, making it more and more common for mobile and/or nomadic workers.
Although existing communication services are used to varying degrees, to a large extent, these services and the networks supporting them are still in separate situations, making it difficult to exploit their overall potential. For example, it is not possible to send an email from a personal computer client in an office to a page receiving client of a salesperson, even if they are all connected to a corresponding telecommunications network.
The lack of integration and/or communication between networks and clients has long been recognized, and various "middleware" products have emerged for transferring data between one network/system and another. For example, the Yankee Group 1997 publication entitled "middleware solution for wireless remote access in development" in chapter 5 of understanding the mobile communication in the next phase discusses a middleware solution for getting in contact with mobile users through wireless communication.
Although middleware may be used to provide the required connectivity in many special cases, there is no general solution to achieve interconnection between various telecommunications networks to date. Even solutions that provide a distributed network to provide various desired services at multiple locations in a manner that is transparent and convenient to the user and service provider. Furthermore, there is no solution at all for providing a distributed network that allows for adding new services and/or components thereto or removing services and/or components therefrom during operation. It is still an arbitrary and remote place to enable communication between any two sites, from any client or service to any other client.
Summary of The Invention
It is an object of the present invention to provide a novel network, network administration apparatus and method for providing telecommunications services which avoids or mitigates at least one of the disadvantages of the prior art.
It is another object of the present invention to provide a reconfigurable network, network administration device and method for providing telecommunication services that avoids or mitigates at least one of the disadvantages of the prior art.
It is a further object of the present invention to provide a novel data stream conversion system and method which avoids or mitigates at least one of the disadvantages of the prior art.
It is a further object of the present invention to provide a new method of servicing data access requests by users connected to a network having multiple access points that avoids or mitigates at least one of the disadvantages of the prior art.
According to one aspect of the present invention, there is provided a network policing device for a distributed telecommunications network, the network policing device comprising:
at least one network administration device server comprising at least one converter which can convert an input data stream in a first format to an output data stream in a second format, and a communication host which can communicate with other network administration device servers within said distributed telecommunications network via a communication backbone;
at least one bridge connected to said at least one network administration device server and capable of establishing a connection with a communication client;
at least one adapter connected to said at least one network-governed device server, the adapter being connectable to an external service and allowing the external service to communicate with said at least one network-governed device server; and
a network administration device manager, coupled to each of said at least one network administration device server, for determining the type of communication client coupled to said network administration device and selecting a network administration device server and bridge coupled thereto to maintain a connection with the communication client, wherein said translator translates data received from said external service or said communication client in a first data format incompatible with another external service and communication client into a second data format suitable for said second external service and communication client.
According to another aspect of the present invention there is provided a distributed service network comprising at least two network policing devices connected by a communications backbone, each network policing device comprising:
at least one network administration device server comprising at least one converter capable of converting an input data stream in a first format to an output data stream in a second format, and a communication host capable of communicating with other network administration device servers within said distributed telecommunications network via a communication backbone;
at least one bridge connected to said at least one network administration device server and capable of establishing a connection with a communication client;
at least one adapter connected to said at least one network-governed device server, the adapter being connectable to an external service and allowing the external service to communicate with said at least one network-governed device server; and
a network administration device manager, coupled to each of said at least one network administration device server, for determining the type of communication client coupled to said network administration device and selecting a network administration device server and bridge coupled thereto to maintain a connection with the communication client, wherein said translator translates data received from said external service or communication client in a first data format incompatible with another external service or communication client into a second data format suitable for said second external service and communication client.
The present invention provides a novel distributed service network that allows users to access telecommunications services and other external services from any access point of the network. The services provided are transparent to both the user and the service provider. The network may be set up according to the respective types of clients using known client parameters, and may also be set up according to the preference of each user. Communication within the network is independent of the transport protocol employed, as all protocols, data, application program interfaces, etc., are automatically formatted by a data conversion system and/or adapter in the network. Furthermore, this network and its services are transparent to the location to which the user is connected.
According to a further aspect of the present invention there is provided a network administration device for a reconfigurable distributed telecommunications network, comprising:
at least one network administration device server comprising at least one converter capable of converting an input data stream in a first format to an output data stream in a second format, and a communication host capable of communicating with other network administration device servers within said distributed telecommunications network via a communication backbone;
at least one bridge or other component, coupled to the at least one network administration device server, that can establish a connection with a communication client;
at least one adapter connected to said at least one network-governed device server, the adapter being connectable to a service and allowing said service to communicate with said at least one network-governed device server; and
a network administration device manager coupled to each of said at least one network administration device server and maintaining a record of services and components provided by each network administration device server, said network administration device manager being capable of determining the type of communication client coupled to said network administration device and selecting from said record a network administration device server and bridge or other component coupled thereto to maintain connectivity to the communication client.
According to another aspect of the present invention there is provided a reconfigurable distributed service network comprising at least two network policing devices connected by a communications backbone, each network policing device comprising:
at least one network administration device server comprising at least one converter capable of converting an input data stream in a first format to an output data stream in a second format, and a communication host capable of communicating with other network administration device servers within said distributed telecommunications network via a communication backbone;
at least one bridge connected to said at least one network administration device server and capable of establishing a connection with a communication client;
at least one adapter connected to said at least one network-governed device server, the adapter being connectable to an external service and allowing the external service to communicate with said at least one network-governed device server; and
a network administration device manager coupled to each of said at least one network administration device server and maintaining a record of services and components provided by each network administration device server, said network administration device manager being capable of determining the type of communication client coupled to said network administration device and selecting from said record a network administration device server and bridge or other component coupled thereto to maintain connectivity to the communication client.
The present invention provides a novel reconfigurable distributed network and method of operating such a network that allows components and services to be scaled in operation. The present invention also provides a novel reconfigurable distributed network and method of operating such a network that balances the use of components and/or licensed capabilities (licensed capabilities) both within a network-governed device and across network-governed devices. Components and services may be added as new components and services and/or withdrawn from the network for preventative maintenance and reconfiguration, etc., without requiring the network or network administration equipment to cease functioning.
According to a further aspect of the present invention there is provided a method of processing requests for access to user data, the users being connected to a reconfigurable distributed service network comprising a plurality of interconnected network policing devices, each network policing device having at least one network policing device server, the users using at least one of a plurality of communications clients, the network being connected to a plurality of services, comprising the steps of:
(i) maintaining a record for each network administration device in the network, indicating components that may be used in the network administration device;
(ii) determining the type of communication client used by the user and connecting the communication client to available components selected from said record and adapted to said client;
(iii) receiving a data access request of the user to one of a plurality of services; and
(iv) connecting the communication client to a component selected from the record, thereby connecting the communication client to the selected service.
According to still another aspect of the present invention, there is provided a data stream conversion system including:
at least two converters, each capable of receiving an input data stream in a first format and producing an output data stream in a format different from the first format; and
a transducer matrix switch for selecting at least one transducer and providing a first input data stream from which to receive an output data stream, the selection being based on an input signal to said transducer matrix switch which is indicative of the first format and a different data format required.
According to another aspect of the present invention there is provided a method of switching a data stream transmitted between a communications client connected to a subscriber of a distributed service network and a service connected to the network, comprising the steps of:
(i) determining the type of the communication client and the data characteristics required by the client;
(ii) determining data characteristics required by the service;
(iii) selecting at least one conversion means which can convert the data stream between the client required data characteristics and the service required data characteristics;
(iv) the at least one conversion means is applied to a data stream transmitted within the network.
Also, the present invention provides a method of servicing a data access request from a user to access a network via a communication client connected to any one of two or more network policing devices, comprising the steps of:
(i) determining the type of communication client in said network administration device and passing said connection to a bridge in said network administration device appropriate for the type of client;
(ii) verifying the identity of the user;
(iii) determining all the predefined preferences of the user and the services that the user can obtain by accessing a user file stored for the user by a network; and
(iv) the user is allowed to access any determined service, and the network administration device converts the data flow for the client between a format appropriate for the type of client and the format employed by the accessed service.
In another aspect, the present invention provides a method of processing data access requests for users connected to a distributed service network, the users employing at least one of a plurality of communication client types, and the network being connected to a plurality of services, the method comprising the steps of:
(i) determining the type of communication client used by the user, and retrieving the characteristic parameters required by the communication client from a storage location in the network;
(ii) receiving a data access request of a user to a service selected by the user from a plurality of services;
(iii) determining data characteristics of a desired input output selected service; and
(iv) data transmitted between the service and the communication client is automatically converted based on the characteristics required by the communication client and the characteristics of the service selected by the user. The present invention provides a data stream conversion system and method that enables a communication client to connect to a network and access any services therein, thus converting the data stream of the services to the communication client into a format required by the client without requiring the client user to provide a special input device. The data conversion system and method receives information about the type of communication client, all user-defined preferences for data streams delivered to him, and information about services accessed over the network. The data conversion system and method then employs one or more transformers to convert the data stream accordingly. The data conversion system and method also employs one or more converters to convert data streams received from the communication client from a received format to a format required by the service.
In another aspect, the present invention provides a method of processing data access requests from users connected to a distributed service network having a plurality of connection points, the method comprising the steps of:
(i) establishing a connection with a user at a connection point of said network;
(ii) determining the location of user information, which is stored at a predetermined location of said network;
(iii) transmitting a copy of at least a portion of the information from the determined location to the connection point over the network;
(iv) processing a user's data access request according to the information copy and transmitting a copy of the additional information needed to complete the request from the determined location to the connection point;
(v) on the network between the determined location and the connection point, updated information indicative of changes to the stored information of the user and the copy of the information is communicated to the copy of the information and the stored information of the user to maintain consistency therebetween.
The present invention provides a novel method of servicing data access requests from users accessing a network having multiple points of attachment, the services provided being independent of the actual access points and/or communication clients employed by users attached to the network. This method is transparent to the user and the provider of the accessed service, and can be set per client type using known client parameters, and can be set per user preference per client. User information is copied to the connection point and maintained there to reduce latency and reduce bandwidth requirements on the network.
Brief Description of Drawings
Preferred embodiments of the present invention will now be described, by way of example, with reference to the following drawings, in which:
FIG. 1 is a diagram of a distributed service network in accordance with the present invention;
FIG. 2 is a diagram of a network administration device in the distributed service network of FIG. 1;
figure 3 is a diagram of a personal agent that is copied from a home network administration device of a distributed service network to a cache (persistent cache) of a remote network administration device in the network.
Detailed Description
A distributed service network in a preferred embodiment of the present invention is illustrated in block 14 of figure 1. The type of data supported by network 14 is not particularly limited and may include analog and/or digital voice, computer network communications, email, paging system messages, and the like. As will be appreciated from the discussion below, network 14 may simultaneously support multiple types of data, if desired.
As shown in fig. 1 and 2, the network 14 includes one or more network policing devices 18, each of which includes a network policing device manager 22 and one or more network policing device servers 24. Each network administration device manager 22 is connected to all network administration device servers 24 of the network administration device 18, each network administration device server 24 is connected to the network administration device 18 and other network administration device servers 24 of other network administration devices 18 via a communication trunk 28, and the communication trunk 28 may be any suitable communication link, such as a T3 (communication line with a transmission rate up to 44.736 Mb/s) line, a broadband fiber optic link, a satellite link, etc., or any combination of suitable links.
As shown in fig. 2, each network policing device server 24 includes a suitable communication host 32 serving as the communication backbone 28 and a plurality of bridges 36, to which bridges 36 clients 40 of the network 14 may be connected by dedicated telecommunication lines, dial-up access, wireless services, public packet networks like the internet, or any other suitable means. For clarity, three network administration device servers 24 are shown in each network administration device 18 in fig. 1, but it is contemplated that the number of network administration device servers 24 will vary depending on the load of the network administration device and/or the services provided by the network administration device. It is contemplated that there should be at least one network policing device 18 in each geographic area where it is desirable to provide a local "site" to which the client 40 may connect to the network 14. Network 14 is very flexible, however, and it is contemplated that two or more network policing devices 18 may be located in a single geographic area having a relatively large number of clients 40, etc., if desired. In such a case, the network policing devices 18 and their network policing device servers 24 may be interconnected by a trunk 28 or any other suitable means, and the network policing device manager 22 may implement load and/or traffic balancing between the network policing devices 18.
As also shown in fig. 2, the network administration device server 24 includes a data stream conversion system that includes sets 44 of converters 46 and a converter matrix switch 48 to convert data streams between various formats, various protocols, and various standards as needed. The network administration server 24 also includes a set of adapters 52 and service agents that can communicate with other external services and/or networks 56, such as the internet, to communicate with servers running third party post office protocols, simple mail transfer protocols, etc., to perform e-mail tasks, faxing, web browsing, etc. As used herein, the term "format" or "data format" includes all representations of data. For example, digital voice may include data in one format, a color image in the image interchange format (GIF), a black and white image in the black and white GIF file format, four types of facsimile, a hypertext markup language file, and so forth. Further, as used herein, the term "data stream" includes all collections, logical arrangements or groupings of data, including one or more data files, data packets, data streams such as digital voice, multimedia or interactive processes, and the like.
Each adapter in the set of adapters 52 provides a transparent layer between the protocols and/or the application program interfaces used by the external services or services connected thereto. Specifically, this adapter converts data between a service specific protocol or application program interface and a common protocol of the network administration device server 24. For example, the network policing device server 24 communicates email with the adapter 52 using a common "fetch" and "store" protocol, wherein the adapter 52 may convert data between the common protocol and an internet message access protocol version 4 email protocol. Thus, the network administration device server 24 and the local services of that server need only employ simple "fetch" and "store" protocols, rather than the complex version 4 internet message access protocol. Only additional protocol conversion adapters need to be added, and new services and/or improved services can be added to the network administration device server 24 as needed.
Clients 40 may include a variety of telecommunications and/or computing devices, including personal computers, cellular or personal communication system handsets, paging receivers, wireless Personal Digital Assistants (PDAs), and any other device or system requiring voice or data communication services.
The network administration device manager 22 includes a database engine 38 that maintains various information about users of the network 14 and also maintains registration information for clients 40 that may be connected to the network 14. This client registration information includes information on how to establish and maintain a connection to each client 40, as well as information on the capabilities and deficiencies of each client 40. The network administration device manager 22 monitors each of the network administration device servers 24 to achieve load balancing among the network administration device servers 24 and to manage the establishment of connections, as will be described in detail below.
When a client 40 wishes to establish a connection with the network 14 via a dial-up line, wireless connection, or other data connection, a connection, referred to herein as a provisioning connection, is established between the client and a bridge 36. The network administration device server 24 connected to the bridge 36 that established the alternate connection notifies the network administration device manager 22, which determines the type of client 40. In some cases, such as where the preliminary connection is established with a GSM (global system for mobile communications) cellular telephone using the SMS (short message service) protocol, the bridge 36 that established the preliminary connection implies the type of client 40 to the network administration device manager 22. In other cases, such as dial-up line situations, the network administration device manager 22 and the bridge 36 that established the alternate connection must determine the type of client 40 that established the connection, such as digital voice telephony, analog voice telephony, a web browser, etc. The determination of the type may be accomplished by analyzing an initialization procedure, querying the client 40, or any other suitable manner, as will be appreciated by those skilled in the art.
Once the type of client 40 is determined, the network administration device manager 22 looks up the characteristics of the client 40 in the client registry in the database engine 38 and ensures that the alternate connection is transferred to an appropriate bridge 36, either the one in the network administration device server 24 that initially established the alternate connection or one in another network administration device server 24. The selection of which network administration device server 24 to handle the connection is based on a number of criteria, including the current workload of each network administration device server 24, the type of client 40, etc. For example, one or more network administration device servers may be configured with dedicated hardware or optimized to handle voicemail connections to the hypertext transfer protocol browser client 40 and other clients.
If the user changes the type of client 40 during the connection with the network administration device server 24, for example from a third edition post office protocol email client to a web browser client, or if the client server 24 is overloaded, the network administration device manager 22 may transfer control of the connection to another network administration device server 24 within the network administration device 18 that is transparent to the user, if appropriate.
The next step is to verify the identity of the user of the client 40. This verification process may include: an explicit step, such as a user entering a user identifier and password; or an implicit step: such as a connection to a known address, such as an internet protocol address or DN (telephone number); and so on. This verification process may be accomplished by the network administration device manager 22 or one or more network administration device servers within the network administration device 18 having the ability to accomplish this task. The former option is illustrated in fig. 1 and 2, where verification information is compared with information in the database engine 38 to verify the identity of the user. Once the user's identity is verified, the provisioning connection becomes a complete connection and the user's data access request is serviced.
In one embodiment of the invention, a personal agent of the user on the server 24 is accessed from the database engine 38 once the user's identity is verified and a complete connection is established. This personal agent maintains a record of the services used by the user, here called the user profile, and the user preferences of the user using the various possible client devices and any other preferences of the user, as well as billing information for the user. In addition to the user profile and preferences, the personal agent also provides access to all relevant service data for user data access requests, including user email services, passwords, and user identifications for other services, among others.
Although the use of a personal agent is currently most appropriate, the network 14 is not limited to the use of a personal agent, and the user profile and associated information may be stored in the network 14 in any suitable manner, as will occur to those of skill in the art.
If the user is connected to a network administration device 18 that is not the user's "home" network administration device 18 (i.e., the network administration device 18 that typically stores the user's data), the user's identity is verified in one of two ways. One is to query the user's registry stored in the database engine 38 to determine the user's home network policing device 18. Another is to query a central user registration server (not shown) connected to the network 14 via a communication backbone 28, or to query the network administration device manager 22 of the neighboring network administration device 18 via the backbone 28 from the connected (local) network administration device manager 22 to determine the location of the database engine 38 with the required information to verify the user identity. In this last case, if the home network administration device 18 of the user is not present in the neighbouring network administration device 18 and therefore the necessary user information is not present in their database engine 38, the query request is forwarded to the further network administration device 18 until the home network administration device 18 is found. If at some point it is determined that the user is not an authorized user of network 14, the provisioning connection between client 40 and bridge 36 is terminated. It will be apparent to those skilled in the art that there are numerous techniques available for determining whether a user has confirmed that a query has been successful or unsuccessful, and this is not discussed in detail here.
Once the user's home network administration device 18 is determined, the user's identity is verified and a complete connection is established, the personal agent of the home network administration device 18 may be accessed by the remote network administration device 18 through the communications backbone 28 or copied to the local network administration device 18 through the backbone 28. Whether to access the personal agent via trunk 28 or to replicate the personal agent of remote network administration device 18, depending on the pre-selected appropriate quality of service (QoS) metric, may also be considered: communication latency on the communication backbone 28 between the remote network jurisdiction 18 and the home network jurisdiction 18, how long the user wishes to access the data of the local network jurisdiction 18, the amount of data the user wishes to access, and other factors that will be apparent to those skilled in the art.
When the user's personal agent is copied from the remote network administration device 18, the entire personal agent need not be copied. It may be desirable to copy only information that is immediately needed, or that may be urgently needed, to reduce the transmission and/or storage of unnecessary information. To further reduce the storage of unnecessary information, a copy of the personal agent in local network administration device 18 is stored in a cache, as will be described in more detail below.
Once a full connection is established with the network administration device server 24, the user may be provided with all services authorized for use in the network 14. What services are obtained are independent of the client 40 that he uses to access the network, as dictated by the user's personal agent or other user profile information, and all authorized data access requests are provided by the network 14 for the client 40. This client-independent approach is implemented through client registration, the set 44 of converters 46, and the converter matrix switch 48.
Specifically, as described above, the network policing device manager 22 and the bridge 36 determine the type of client 40 that communicates with the bridge 36. This information is used to determine the client entry (entry) in the client registry and to provide characteristics of the client, including its requirements, capabilities and deficiencies, to the transformer matrix switch 48, as well as characteristics of the type of access service determined by the adapter 52 to the transformer matrix switch 48. The user profile is also accessed in order to determine the user's preferences for such clients.
The transformer matrix switch 48 selects one or more transformers 46 in the transformer bank 44 as needed, configured and/or connected to convert data between the data format (type and/or protocol) employed by the client 40 and the data format employed by the accessed service. If no single converter 46 in the bank of converters 44 is capable of the necessary conversion, a converter matrix switch 48 combines two or more converters 46 together with the output of one converter serving as the input to another converter to achieve the necessary conversion. In one embodiment, the converter matrix switch 48 receives data input from the bridge 36 in the format used by the client 40, receives data input from the adapter bank 52 in the format used by the external service, and consults the table, i.e., an ordered set, in the matrix switch 48 based on the format of the two inputs to find all possible conversions. The entries looked up from the table illustrate the required translator 46, or chain of translators 46, to accomplish the required translation. When a new transducer 46 is added to the set of transducers 44, the translation look-up table is updated accordingly.
Further, in some cases, two or more converters 46, or a chain of converters 46, may be connected together in parallel. For example, one of the adapter packs 52 may be used to receive four types of facsimile information to enable access to the personal communication system telephony client 40. In this case, Optical Character Recognition (OCR) may be accomplished using a first converter 46 to convert the fax format to American Standard code text format, and then a pair of converters 46 may be used to simultaneously examine the converted text, one to determine the fax sender's name and/or telephone number and the other to determine the subject from the "subject" line. The "sender" and "subject" information is then transmitted to the user's personal communication system phone based on the client registration information of the personal communication system client and the user's preferences for this client as recorded in the user profile table.
It will be apparent to those skilled in the art that a multi-threaded architecture can be built for the transducers 46 in order to make efficient use of them. At this point, each transducer 46 can be found because a set of available cues are stored in the structure.
As an example of a data conversion system using the present invention, if a user who has been connected to the network 14 through the analog voice telephone client 40 wishes to access an email service, the converter matrix switch 48 selects and configures a key audio response converter 46 and a text-to-speech converter 46 and reads a portion of the email for the user to hear. As stored in the user's personal agent or other user profile, the user may be provided with emails in different ways depending on user-defined preferences and/or settings for the client 40. For example, the user may be notified of how many new items of email information have been received by the text-to-speech converter 46, and/or read to listen to the user via the text-to-speech converter 46, or their subject line. The key audio answer converter 46 allows the user to select information of interest for the converter 46 to read, or to select information to delete, etc. by using a key phone. A speech recognition transducer 46 may also be used in place of or in addition to the key audio response transducer 46. At this point, the user may dictate a reply to an email, or the like. Alternatively, the user may have set their preferences in their personal agent or user profile, such that they are only notified of the number of new email messages and the time at which they were received.
It will be appreciated that the user's different preferences for each service delivered to different clients 40 may be specified in the user's personal agent or user profile. For example, when a user connects a personal computer running an email program as the client 40 to the network 14 through a dial-up line, the user's email can be provided to the user through the email program in a normal manner, rather than being read to the user for listening by the text-to-speech converter 46. If the personal computer is already connected to the network 14 through a cellular modem, which is limited in bandwidth and/or expensive, then only the subject line may be delivered, except for information labeled as urgent. Those skilled in the art will be able to envision many other possible arrangements and/or options.
As described above, the converters 46 may be linked by the converter matrix switch 48 as needed to perform the desired conversion. For example, if the user wishes to access a web page from an analog voice telephone, the converter matrix switch 48 may select a hypertext markup language-american standard for information interchange transcoder to receive the hypertext markup language information of the web page and convert it to american standard for information interchange code text, which is then converted to speech by the text-to-speech converter 46 so that the user can hear it via their telephone. Similarly, voice recognition or key tone audio response transducers may also be employed to accept user input, such as subsequent links to hotspots, or other input as desired.
The set 44 of transducers 46 and the transducer matrix switch 48 in the network 14 provide transparent conversion of traffic. It is contemplated that all services should be transparent or accessible, at least to some extent, based on user preference information stored in the user's personal agent, and that such transparency does not require any steps on the part of the service provider. For example, a user may specify that only a certain number of new email messages be sent to their paging receiver, or that all newly received emails with subject line designations urgent, etc. be downloaded, without the sender of such email messages needing to be concerned with such details at all.
It is contemplated that in some cases, different sets of transducers 44 in different network administration device servers 24 in network administration devices 18 may have different transducers 46. For example, the network policing device server 24 may have one or more text-to-speech converters 46 that require dedicated hardware. At this point, only one of the network policing devices 18 may be equipped with such dedicated hardware, and the connection to the client 40 requiring the text-to-speech converter 46 may be transferred, if desired, through the converter matrix switch 48 in the network policing device server 24 to the network policing device server 24 in another network policing device 18 having the necessary converter 46. It may be determined which network administration device server 24 has the necessary transformer 46 by querying a table in the network administration device manager 22, or by other means as will be apparent to those skilled in the art.
In addition to performing traffic-to-client conversion, the network 14 may also perform transport protocol conversion. An adapter in the adapter bank 52 may receive data using one transport protocol and forward to another adapter in the adapter bank 52 where it is transmitted using another transport protocol. For example, a first adapter in the set of adapters 52 may receive data using the transmission control protocol/internet protocol and then transmit the data out by a second adapter using asynchronous transfer mode or frame relay protocol. It is contemplated that the adapter pack 52 may also include an encryption and/or decryption engine. It is also contemplated that in some cases, converter 46 may be used to perform protocol conversion and/or encryption and decryption, as desired. It is further contemplated that the adapter suite 52 and/or the transformer suite 44 may also provide an application program interface to the legacy recording and accounting subsystem to facilitate the preservation of records by an Internet Service Provider (ISP), telephone company, cellular telephone company, or the like.
As described above, each user preferably has a personal agent to perform several tasks. For example, the personal agent may obtain information necessary to identify a user of network 14 via a user identifier and password, a known internet protocol address, a pager receiver number, a cellular device installation notification, etc. In addition, the personal agent may also access information such as accounts and/or passwords for third party services that the user applies for. For example, a user may apply for stock quotes and information services, and be required to verify their identity before gaining access to such information. Personal agents can in fact do a better job in that they do not have to keep account numbers, passwords, etc. in mind while they provide convenience to the user.
In particular, users may instruct their personal agents to perform a variety of tasks, simply leading to considerable complexity. For example, the user may have specified that their personal agent contacts the stock quote service once an hour to determine the current price of one or more stocks, and if these prices are of some extent, contacts the user in a specified manner, such as sending an email to his house, or calling them by radio paging, giving them a synthesized voice message in a voice mailbox or getting contact with them through their analog cellular telephone. It will be apparent that when a user is contacted by an appropriate client 40, the set of transducers 44 and transducer matrix switch 48 are employed as required, for example by giving them a voice announcement on their cellular telephone using a text-to-speech transducer 46. It will be apparent to those skilled in the art that the personal agent is not service specific, but may be used for all services that the user may use. It is contemplated that each user may use only one personal agent to accomplish all tasks. It is also contemplated that a user may select tasks that specify their personal agent to accomplish using a computer graphical user interface, and these tasks are then communicated to the personal agent via network 14. It will be apparent to those skilled in the art how to set up and operate such a personal computer interface, or other suitable means of prescribing tasks and selections to a personal agent.
As also described above, the present invention includes a cache system for a personal agent. As shown in fig. 3, the user's home network policing device 18a includes a personal master agent 80 stored in the database engine 38 a. When the user is connected to the network 14 through the remote network administration device 18b and the access to the personal master agent 80 through the communication backbone 28 does not achieve a predetermined quality of service, the personal master agent 80 is copied to the remote network administration device 18b through the communication backbone 28 as a personal agent copy 80r, which is stored in the cache of the database engine 38b at the remote network administration device 18 b. As described above, only as few parts as possible of the personal agent are duplicated at the beginning. For example, only information necessary for identifying the user, the service applied by the user, and billing information of the user are transferred.
Once the full connection is established, additional information may be passed to the personal agent copy 80r and/or updated information may be passed back to the personal master agent 80 from the personal agent copy 80r, depending on the user's usage. To remain consistent, the personal agent copy 80r always updates the personal master agent 80 to reflect all changes, as well as updating the personal agent copy 80r according to certain changes of the personal master agent 80. This approach of using replicas reduces the bandwidth and traffic requirements and reduces the traffic of the communication backbone 28 by limiting the user's activities as much as possible within the local network administration device 18 b.
For example, the user may establish a connection with the remote network administration device 18b, and the network administration device manager of the network administration device 18b finds the user's personal master agent 80 in the network administration device 18a, i.e., the user's home network administration device. The user's personal agent copy 80r is transmitted from the network administration device 18a to the network administration device 18b and is used to verify the identity of the user. Here, depending on the user's usage, data may be frequently transferred between the cache in the database engine 38b of the network administration device 18b and the personal master agent 80. If the user simply drops a voicemail message into the voicemail box of another user, a billing entry is made on the personal agent copy 80r and the personal master agent 80 is updated to reflect this billing input.
In a more interesting example, the user can conduct email conversations, reading, replying to, deleting, and building various messages as desired. In this case, the user's inbox and address list would need to be copied in the personal proxy copy 80r, the personal master proxy 80 updated to account for which information has been read and/or to clear information that has been deleted, and the address list updated to reflect all modifications made by the user. When the user enters a new email, the message is sent out in the normal manner, with the user's outbox in the cache being stored, and the user's outbox of the personal host agent 80 being updated. All emails received by personal master agent 80 may be automatically copied to personal agent copy 80r if desired. It will be apparent to those skilled in the art that such replication techniques may also be used for voice services of the global digital mobile telephone system to accommodate the home location register and visitor location register therein.
In addition, in some cases, data may be passed from the personal agent (either the master agent 80 or the agent copy 80r) to the client 40 and modified at the client. When client 40 subsequently connects to network 14, personal master agent 80 may be updated to reflect these changes by directly updating or updating personal agent copy 80 r. For example, a list of telephone numbers may be downloaded to a client machine 40, such as a Personal Digital Assistant (PDA) or cellular telephone, and the user may then add, delete or modify entries in the list. When such client 40 is again connected to network 14, the manifest in personal master agent 80 is updated based on the manifest of client 40 to reflect the additions, deletions, and modifications made by the user.
It will be apparent to those skilled in the art that the operations related to caching are transparent to the user, and the purpose of using such caching is to improve the performance of the network 14 by reducing latency, and possibly also to cooperate with replication policies to reduce bandwidth requirements. Such caching may employ any suitable caching strategy, as will be apparent to those skilled in the art. It is of course contemplated that a FIFO (first in first out) technique may be employed wherein the oldest entries are purged when a portion of the cache must be flushed, graded according to the amount of time that personal agent copy 80r is stored in the cache. This policy may be made more effective by tracking entries in the cache to see if the corresponding personal master agent 80 in their home network policing device 18a was visited or was once copied to another remote network policing device after the last access to the cached copy of the personal agent 80 r. After the last access to the personal agent copy 80r, the personal agent copy 80r in the network policing device 18b, for which the corresponding personal master agent 80 has been accessed or copied, may be flushed from the cache in the network policing device 18 b.
It will be apparent to those skilled in the art that once a complete connection is established between the client 40 and the network administration device 18, security is ensured by the network 14. All connections via the communication backbone 28 are secure and/or encrypted to ensure that the identity of the user is authenticated and that data communications in the network 14 are kept private. Further, communications with other services via the adapter bank 52 and service proxies may be encrypted and decrypted as needed.
Where appropriate, the components that make up network policing device 18 are implemented in software, or they have some software interface, to facilitate upgrades and performance improvements, and to implement "hot-plugging," i.e., the ability of network 14 to add or remove traffic and/or hardware while still in operation. In particular, the bridge 36 includes the necessary hardware to establish a connection to the client 40, and also includes control functions implemented in software to manage communications with the network administration device server 24. Similarly, the database engine 38 includes a suitable database engine and a control function implemented in software to manage the cache and other functions of the database engine 38. The bank 44 of converters 46 and the converter matrix switch 48 also include components implemented in software that either control hardware and/or firmware to perform their functions or themselves perform these functions. Similarly, the adapter bank 52 and the service agents include the necessary hardware to accomplish the appropriate communication tasks, and a software-implemented control function to manage and control these tasks.
Preferably, in the present invention, these software implemented controls are composed of Java servlets (servlets), Java beans, and Java Enterprise beans, such as Sun's JavaSoft Java servlet File and 1. As described in the Java language version 1 file. Also as explained in the above document, the communication between servlets is accomplished through the RMI (route monitoring information) service of Java.
In one embodiment of the invention, a wrapper is added to the generic Java servlet to provide fast synchronous and asynchronous communications. Specifically, this wrapper extends the functionality of the servlet from the common "post" and "get" application interfaces based on hypertext transfer protocol to a fully functional asynchronous communication application interface with which information can be sent to and received from any servlet over a persistent connection or over an asynchronous connection. An extended servlet with such a wrapper may communicate synchronously with any other servlet (extended or not) or asynchronously with any other extended servlet.
The wrapper basically includes the methods that the servlet must implement. The first method is "permit ()", which is a synchronous event handler. It is called with the event, returns a value after completion, and is interrupted (blocked) during the processing of the event. The second method is "performabynch ()", which is an asynchronous event handler. This method returns a "FutureReply" placeholder object as soon as possible. After event processing is complete, the method sends an asynchronous response event to the caller servlet. The FutureReply placeholder includes a unique identifier that allows the receiving servlet to compare a subsequently received response event to the original event. With this method, the calling servlet is free to perform other processing in the course of processing other events.
To accommodate these two types of event handling techniques, two different types of events are defined. Specifically, "ServletEvent" and "servletasychevent" are defined, the former for synchronous events and the latter for asynchronous events. In this system, an event includes an identifier of a string type, a parameter, which may be an arbitrary Object (Object), and a session. Because there may be more than one servlet sending a time to an extended servlet, a session is provided that is an object that includes a unique identifier that assists the extended servlet in handling synchronization events by letting the servlet recognize the sequence of events.
While the software components that implement network 14 are preferably implemented using Java servlets, Java beans, Java enterprise beans, and Java RMI interfaces, it will be apparent to those skilled in the art that the present invention is not limited to such an embodiment, and that CORBA (common object request broker architecture) or other suitable embodiments may be applied in part or in whole, as desired.
It will be apparent to those skilled in the art that there are several advantages to using software to implement the control. In particular, network administration device 18 may add or subtract components in operation without requiring network 14 to be shut down, resulting in network 14 being scalable, and network 14, network administration device 18, and network administration device server 24 may continue to operate when such components are changed. So, for example, additional bridges 36 or different transformers 46 may be added to the network administration device 18 or removed from the network administration device 18, if desired. Still further, new services and/or capabilities may be added to network administration device 18 by merely registering the appropriate servlet in network administration device 18. This also allows for maintenance of the physical components without affecting network 14 or network administration device 18.
Services and capabilities may also be loaded on the network 18. For example, when the network administration device 18 is started, services, adapters, gateways and transformers may be loaded onto the network administration device 18 of the network from other network administration devices 18 or from a database reserved on the network 18 for this purpose. Components and services may also be loaded on demand from a particular network policing device 18 or the network policing device server 24 of the network policing device 18. These services may be performed at the remote network 18, etc., or they may be loaded into the network administration device 18 for local operation, as described below.
To implement this "hot-plug," an indirect addressing layer is employed between components of network administration device 18 and service requests to those components. In a preferred embodiment of the present invention, the network administration device manager 22 maintains a record, or list of available components, that describes the components available in the network administration device 18, and each request for a component service is made by accessing this list to determine the available components. To add a new component and/or service to network administration device 18, the component/service is added to this list of available components when the component/service is ready. To remove a part for preventative maintenance or the like, the part is removed from the list of available parts so that the part can be removed or taken offline after the current task is completed. It will be apparent to those skilled in the art that the list of available components described above is merely one possible way in which the components available within network administration device 18 and/or other network administration devices 18 may be determined, and the present invention is not limited to the use of such a list.
This also allows balancing of hardware and/or license (license). For example, network policing device 18 may include one or more text-to-speech transformers 46 that rely on dedicated hardware or software that may perform some number of artificial transformations (or simply be permitted to do so). At this point, the service inventory may determine the services/components that are used before other services/components, and may also point to components/services of other network administration devices that are accessible via the communication backbone 28.
In the text-to-speech example, other requests for text-to-speech conversion may be forwarded by reference to the service inventory to another network administration device 18 having similar specialized hardware or additional permissions, as long as a certain number of text-to-speech conversion simulations are being performed. In this case, the service list may indicate an optional converter 46 that is less efficient than the licensed system and that can only be used if all dedicated hardware converters 46 are occupied. In this manner, text-to-speech conversion requests are processed without permission, if any, being exceeded and/or hardware usage improved. It will be apparent that if the transformer 46 is not fully occupied, the network administration device manager 22 may report available capabilities to other network administration devices 18 via the backbone 28 to allow the other network administration devices 18 to use the spare capabilities to efficiently use the hardware and/or allowed capacity of the network 14.
Similarly, the network administration device manager 22 may be used to monitor the usage level of each network administration device server and update the traffic list appropriately to indicate that the components of the network administration device server 24 that are less heavily used should be preferentially used over the similar components of the network administration device server 24 that are more heavily used.
Therefore, the existing network resources can be effectively used, and the resources can be increased or decreased according to the needs. While a service list of all available components in network administration device 18 is now maintained in network administration device manager 22, it is contemplated that in some cases a service list of some or all of the services may also be maintained in each network administration device server 24. For example, it is contemplated that one or more network administration device servers 24 maintain a list of available transformers 46 in the network administration device server 24. It is also contemplated that if a network administration device server does not find a required component available in its list, a request may be made to another network administration device server 24 via the communication trunk 28, either directly or via the network administration device manager 22, for the required component to be used, or a list of services available in other network administration devices 18 may be maintained in each network administration device manager 22, queried as needed to determine where the service may be obtained. The network policing device manager 22 may have another network policing device 18 provide the service remotely or by downloading the service over the network 14 to a network policing device server 24 of the network policing device 18.
Another advantage of network 14 is that it can provide a channel for internet protocol addresses (or similar addresses). In particular, as part of the security model, many network security models include identification of user internet protocol addresses, which are found in the header of each packet of the internet protocol. The internet typically rejects information from unknown internet addresses. While this model is feasible in many cases, it is difficult for mobile or nomadic users to work. For example, if a salesperson attempts to access his employer's network from a distance, the internet protocol address of the internet protocol packets he sends will be different, in which case the information path will be significantly different than when the salesperson sends information from his home address, and the employer network will therefore refuse to receive this information. With the network of the present invention, such as network 14, internet protocol packets may be "tunneled" between a home network policing device and a remote network policing device. Packets sent from the remote network policing device will be sent as encapsulated packets to the home network policing device to save its ip address, and the home network policing device will unpack this packet and forward it to the required service, leaving the original ip header/address intact. Similarly, the home network administration device encapsulates the information packet received from the service, and then sends it to the remote network administration device, where the encapsulation is opened and handed over to the user. This tunneling process is transparent to the user whenever the user is connected to a remote network administration device, and is believed to be a significant advantage for network users that employ an internet address-based security model.
Although only specific combinations of features and elements of the present invention have been discussed herein, it will be apparent to those of ordinary skill in the art that combinations of features and elements may be re-selected as desired.
The present invention provides a new type of distributed network that enables users to access telecommunications and other services from any access point in the network. These services are provided to the user transparently. For example, no special steps are required at all when a user accesses a hypertext markup language document using a personal communication system telephone. The provision of these services is also transparent to the service provider, e.g. the author of a hypertext markup language document can give it to a user using a personal communication system telephone without changing the document. The network may be set to suit this client type using client parameters in the client registry, or may be set according to user preferences stored in the user profile table. The communication of the network is not dependent on the transmission protocol used, since all protocols, data, application program interfaces, etc. are automatically converted by the network. Also, the network and its traffic are transparent wherever the user connects to the network.
The present invention also provides a data stream conversion system and method that allows a communication agent to connect to a network and access services of the network, such that data streams from the services to the communication agent can be converted into a format required by a client without requiring a user of the client to enter specific information. The data conversion system and method receives information relating to the type of communication client, the user's preferences for data to be sent to the client, the services accessed over the network, and/or the preferences that the services specify for the communication client. The data conversion system and method then employs one or more transformers to convert the data streams from and to the communication client accordingly. The data conversion system and method also employs one or more converters to convert the data stream from the communication client from a received format to a format required by the service.
The present invention also provides a new method for handling data access requests from users to access a multi-point network of connections, independent of the actual point of connection and the communication client employed by the user connected to the network. In addition, new services may be added to the network as needed, and the provision of distributing stored user information, user data and other data and allowing access to such information from any point of connection of the network is also provided.
Claims (75)
1. A network policing device for a distributed telecommunications network, comprising:
at least one network policing device server, the server comprising at least one converter and a communication host, the converter being operable to convert an input data stream in a first format to an output data stream in a second format, the communication host being operable to communicate with other network policing device servers in the distributed telecommunications network via a communication backbone;
at least one bridge, connected to at least one of said network administration device servers, capable of establishing a connection with a communication client;
at least one adapter connected to at least one of said network administration device servers, the adapter being capable of connecting to an external service and supporting communication between the external service and said at least one network administration device server; and
a network administration device manager, coupled to each of said at least one network administration device server, capable of determining the type of communication client coupled to said network administration device and selecting a network administration device server and a bridge to which to connect to maintain a connection to this communication client, and when the data format received from an external service or communication client is a first data format that is incompatible with the data format of another external service or communication client, converting it to a second data format suitable for said other external service or communication client by a converter.
2. The network policing device of claim 1, further comprising a set of at least two transformers and a transformer matrix switch, a first transformer of the set for transforming an input data stream in a first format to an output data stream in a second format, a second transformer of the set for transforming an input data stream in the second format to an output data stream in a third format; and
a transformer matrix switch which selects a transformer from the group of transformers based on the type of communication client determined by the network administration device manager, and outputs data from one transformer in the group as input to a second transformer in the group, thus converting first format data received from external services or communication clients into a third data format required by other external services and communication networks.
3. The network policing device of claim 2, wherein the set of transformers comprises at least two transformers operable to transform an input data stream in a first format to an output data stream in a second format, each of the at least two transformers being operable to transform a data stream of a respective one of a first connection between the first communication client and the external service and a second connection between the second communication client and the external service.
4. The network policing device of claim 1, further comprising at least two network policing device servers, each of the at least two servers including at least two bridges and at least two adapters.
5. The network policing device of claim 1, wherein the network policing device manager comprises a database engine that specifies the types of communication clients that may be connected to the at least one bridge.
6. The network policing apparatus of claim 1, wherein the identity of the user of the communication device is verified by the network policing apparatus after determining the type of communication client, the network policing apparatus manager selecting the network policing apparatus server and the bridge to connect to in order to maintain the connection with the communication client.
7. The network policing device of claim 6, wherein the network policing device manager comprises a database engine for use in determining the identity of a user of a communication client connected to the at least one bridge.
8. The network policing device of claim 6, wherein the at least one network policing device server determines the identity of the user of the communication client connected to the at least one bridge using verification information provided by the communication trunk.
9. The network policing device of claim 4, wherein the network policing device manager monitors each of the network policing device servers to determine their level of usage and is capable of transferring connections between bridges connected to different network policing device servers to balance said level of usage.
10. The network policing device of claim 1, wherein a format of data sent from the network policing device to the communication client is determined based on the determined type of communication client.
11. The network policing device of claim 6, wherein a format of data sent from the network policing device to the communication client is determined based on the determined type of communication client.
12. The network administration device of claim 10, wherein the set of preferences is pre-set by a user of the communication client to change the format for each type of communication client based on the user's preferences.
13. A distributed service network comprising at least two network administration devices connected to a communication trunk, each network administration device comprising:
at least one network administration device server, the server comprising at least one converter and a communication host, the converter being capable of converting an input data stream in a first format to an output data stream in a second format, the communication host being capable of communicating with other network administration device servers in the distributed telecommunications network via a communication backbone;
at least one bridge, connected to at least one of said network administration device servers, capable of establishing a connection with a communication client;
at least one adapter connected to at least one of said network-governed device servers, the adapter being capable of connecting to an external service and supporting communication between the external service and said at least one network-governed device server; and
a network administration device manager, coupled to each of said at least one network administration device server, capable of determining the type of communication client coupled to said network administration device and selecting a network administration device server and a bridge to which to connect to maintain a connection to this communication client, and when the data format received from an external service or communication client is a first data format that is incompatible with the data format of another external service or communication client, converting it to a second data format suitable for said other external service or communication client by a converter.
14. The distributed services network of claim 13, wherein at least one of the at least two network policing devices comprises at least two network policing device servers, each of the at least two network policing device servers comprising at least two bridges and at least two adapters.
15. The distributed services network of claim 13 further comprising at least one database engine coupled to said network administration device server and a type definition of a communication client that may be coupled to said network.
16. The distributed services network of claim 15 further comprising at least one database engine coupled to said network administration device server and user-set preferences for connections between users and the network.
17. The distributed services network of claim 16, wherein the database including the preferences set by the user is maintained for each user in a network jurisdiction defined as a home network jurisdiction for said user, access to the database being via the trunk of communications when said user establishes a connection with a remote network jurisdiction different from the home network jurisdiction.
18. The distributed services network of claim 17, wherein the database engine further maintains information for the network for verifying the identity of the user.
19. The distributed services network of claim 17, wherein accessing said preferences comprises copying at least a portion of the preferences set by the user in said database engine to a remote network administration device.
20. The distributed service network of claim 19, wherein the replicated portion is stored in a cache of the remote network administration device.
21. The distributed services network of claim 20, wherein the preferences further comprise information to allow the user to access the external services and information about the user's activities with the external services.
22. The distributed service network of claim 21, wherein other portions of the preferences are copied into said cache upon a service request by a user.
23. The distributed service network of claim 22, wherein updates are communicated to said subscriber's home network administration device to modify preferences set by the subscriber, access permission information, information relating to the subscriber's activity in responding to the replicated portion.
24. A network administration device for a reconfigurable distributed telecommunications network, comprising:
at least one network administration device server comprising at least one converter capable of converting an input data stream in a first format to an output data stream in a second format and a communication host capable of communicating with other network administration device servers within said distributed telecommunications network via a communication backbone;
at least one bridge or other component, coupled to at least one network administration device server, capable of establishing contact with a communication client;
at least one adapter connected to said at least one network-policing device server, capable of connecting to a service and supporting communication between the service and said at least one network-policing device server; and
a network administration device manager coupled to each of said at least one network administration device server and maintaining a record of available services and components of each of said at least one network administration device server, said network administration device manager being capable of determining the type of communication client coupled to said network administration device and selecting a network administration device server and a bridge or other component coupled thereto from said record to service the connection of said communication client.
25. The network policing device of claim 24, wherein additional services and components added to any of said at least one network policing device server become part of said network policing device after said record is updated to include such added services and components.
26. The network policing device of claim 24, wherein services and components are purged from the network by updating the reference to the services and components from which the record is deleted to any of the at least one network policing device server, the services being purged from the network policing device upon completion of the current task.
27. The network policing device of claim 24, wherein the record maintained by the network policing device manager further includes information describing the order in which services and components within the network policing device are used.
28. The network administration device of claim 27, wherein the record maintained by the network administration device manager further comprises a description of available external services and components via the communications host in another network administration device, the available external services and components being selected only if services and components within said network administration device are occupied.
29. The network policing device of claim 27, wherein the network policing device manager changes said sequence in which traffic and components in the network policing device server having a relatively low usage are ranked ahead of traffic and components in the network policing device server having a relatively high usage based on the level of usage of each of said at least one network policing device server.
30. The network policing device of claim 24, wherein the network policing device manager comprises a database engine for verifying the identity of a user of a communication client connected to the at least one bridge.
31. The network policing device of claim 24, wherein the means comprises converters in the data stream conversion system, the converters capable of converting an input data stream in a first data format to an output data stream in a different data format.
32. A reconfigurable distributed service comprising at least two network policing devices connected to a communications backbone, each network policing device comprising:
at least one network policing device server, the server comprising at least one converter and a communication host, the converter being operable to convert an input data stream in a first format to an output data stream in a second format, the communication host being operable to communicate with other network policing device servers in the distributed telecommunications network via a communication backbone;
at least one bridge, connected to at least one of said network administration device servers, capable of establishing a connection with a communication client;
at least one adapter connected to at least one of said network administration device servers, the adapter being capable of connecting to an external service and supporting communication between the external service and said at least one network administration device server; and
a network administration device manager coupled to each of said at least one network administration device server and maintaining a record of available services and components on each of said at least one network administration device server, said network administration device manager being capable of determining the type of communication client coupled to said network administration device and selecting a network administration device server and a bridge or other component coupled thereto from said record to service the connection of said communication client.
33. The network of claim 32, wherein at least one of the at least two network policing devices comprises at least two network policing device servers, each of the at least two network policing device servers comprising at least two bridges and at least two adapters, the record maintained in the network policing device manager further comprising a description of the order of use of the services and components of the at least one of the at least two network policing devices.
34. The network of claim 32, wherein the network policing device manager of the at least one network policing device changes the order according to the degree of usage of each of the at least one network policing device server, the traffic and components of the network policing device server having a relatively low usage rate being ranked ahead of the traffic and components of the network policing device server having a relatively high usage rate, further comprising at least one database engine coupled to the network policing device server and including a type definition of the communication client coupled to the network.
35. The network of claim 32, wherein the components comprise converters in the data stream conversion system, the converters capable of converting an input data stream in a first data format to an output data stream in a different data format.
36. A method of processing data access requests for users connected to a reconfigurable distributed service network, comprising a plurality of internet policing devices, each network policing device including at least one network policing device server, said users employing at least one of a plurality of communication clients, said network being connected to a plurality of services, comprising the steps of:
(i) maintaining a record for each network administration device of the network, indicating components that may be used in the network administration device;
(ii) determining the type of communication client used by the user and connecting the communication client to available components selected from said record and adapted to said client;
(iii) receiving a data access request of the user to a service selected from a plurality of services; and
(iv) connecting the communication client to a component selected from the record, thereby connecting the communication client to the selected service.
37. The method of claim 36, wherein the component comprises a transducer in a data stream conversion system, and wherein step (iv) further comprises the step of appropriately converting the data stream between the communication client and the service as needed using the available transducers determined from the record.
38. The method of claim 36 further comprising the step of adding new components to at least one network policing device from time to time and updating said record accordingly.
39. The method of claim 36 further comprising the step of ordering the records to account for the order in which similar components are accessed.
40. The method of claim 39, wherein the order is dependent upon the usage level of each network policing device server within the network policing device.
41. A data stream conversion system comprising:
at least two converters, each capable of receiving an input data stream in a first format and producing an output data stream in a format different from the first format; and
a transducer matrix switch for selecting at least one transducer and providing a first input data stream from which to receive an output data stream, the selection being based on an input signal to said transducer matrix switch which is indicative of the first format and a different data format required.
42. The data stream conversion system of claim 41 wherein the converter matrix switch is capable of selecting at least a first and a second converter and providing the input data stream to the first converter and the output data stream from the first converter to the second converter as the input data stream, the first converter converting the input data stream in the first format to the output data stream in the second format, the second converter converting the input data stream in the second format to the desired format.
43. The data stream conversion system of claim 41, wherein said converter matrix switch maintains a record of converters and their input and output formats, additional converters being added to the data conversion system as needed, and said record updated accordingly.
44. The data stream conversion system of claim 41, wherein the matrix converter switch includes a record indexed according to the input and output formats of each converter, the entry of the record determining how to select at least one converter for converting the input format to the desired output format.
45. The data stream conversion system of claim 41, wherein at least a first converter is employed to convert the data stream received from the first communication device to a format required by the second communication device, and at least a second converter is employed to convert the data stream of the second communication client to the format required by the first communication device.
46. The data stream conversion system of claim 45, wherein at least one of the first and second communication devices is a communication client used by the user.
47. The data stream conversion system of claim 46, wherein the other of at least one of the first and second communication devices is a service accessed by the user.
48. The data stream conversion system of claim 45 wherein said first transformer performs an inverse transformation of the transformation performed by said second transformer.
49. The data stream conversion system of claim 41, wherein said matrix converter switch uses at least two converters in parallel, each of said at least two converters converting a data stream in a first format to a different corresponding output format as desired.
50. The data stream conversion system in claim 41, wherein the first input data stream is obtained from a communication service, said input signal including a first signal received from said service specifying a first data format, and further including a second signal received from a bridge connected to the communication client, the second signal specifying said desired format.
51. The data stream conversion system of claim 50, wherein said input signals further include a third signal indicating one or more preferences of a user of said communication client, said third signal further defining said desired format.
52. The data stream conversion system of claim 45, wherein the input signals further include a first signal from the first communication client and a second signal from the second communication client, the first and second signals defining the format of the input data and the desired format for each of the first and second communication clients.
53. The data stream conversion system of claim 52, wherein at least one of the first and second communication clients is a service.
54. A distributed communications network comprising a data stream conversion system as claimed in claim 41 for converting a data stream transmitted in the network between a communications client and a service.
55. A method for converting a data stream for transmission between a communication client connecting a user and a distributed service network and a service connected to said network, the method comprising the steps of:
(i) determining the type of the communication client and the data characteristics required by the client;
(ii) determining data characteristics required by the service;
(iii) selecting at least one conversion means capable of converting data streams between data characteristics required by said client and data characteristics required by said service;
(iv) applying at least one of said conversion means to a data stream transmitted in said network.
56. The method of claim 55 wherein at step (iii) at least two conversion devices are selected, one of the at least two conversion devices receiving the data stream transmitted in the first format in the network corresponding to the desired data characteristic and converting it to the second format, the other of the at least two conversion devices receiving the converted data in the second format and converting it to a third format corresponding to another characteristic of the desired data characteristic and transmitting the data in the third format in the network.
57. The method of claim 55, wherein the selecting in step (iii) is performed by consulting a table indexed by the first and second desired data characteristics.
58. The method of claim 55 wherein in step (i), determining characteristics of the client further comprises the step of determining all user-set preferences for said characteristics.
59. A method for servicing data access requests from a user to access a network via a communication client connected to any one of two or more network policing devices, comprising the steps of:
(i) determining at said network administration device the type of communication client and passing said connection to a bridge in said network administration device appropriate to the type of client server;
(ii) verifying the identity of the user;
(iii) determining all the predefined preferences of the user and the services that the user can obtain by accessing a user file stored for the user by a network; and
(iv) the user is allowed to access any determined service, and the network administration device converts the data flow for the client between a format appropriate for the type of client and the format employed by the accessed service.
60. The method of claim 59, wherein step (ii) further comprises the step of determining whether the network policing device is a user's home network policing device or a remote network policing device.
61. The method of claim 60, wherein, when it is determined that said network administration device is a remote network administration device of the user, in step (iv) access to the service being determined is provided by the home network administration device by connecting the remote network administration device and the home network administration device via a communications backbone, such that the address and other identifying information from the home network administration device to the service being accessed corresponds to the address and other identifying information of the home network administration device.
62. The method of claim 60, wherein in step (iii), at least a portion of the user profile is copied to the remote network administration device after the user has connected to the network connection of the remote network administration device.
63. The method of claim 62, wherein the partial user profile is stored in a cache of the remote network administration device.
64. The method of claim 63, wherein said user profile further comprises information for accessing said service.
65. The method of claim 64, wherein the remote network administration device communicates with the home network administration device to update the user profile of the home network administration device with changes to the user profile caused by operation of the user at the remote network administration device.
66. The method of claim 64, wherein the remote network administration device and the home network administration device utilize the network to send updated information to the remote network administration device or the home network administration device reflecting changes in information from the home network administration device or the remote network administration device so that the portion of the remote network administration device user profile is consistent with the user profile of the home network administration device.
67. The method of claim 63, wherein after the user disconnects from the network, said information remains in a cache of said network administration device until a predetermined time is exceeded, or the user reconnects to said network at a different network administration device.
68. The method of claim 59 further comprising the step of monitoring the connection to determine a change in the connected client, and when a change in the type of connected client is detected, re-executing steps (iii) and (iv).
69. A method of processing data access requests from users connected to a distributed service network, the users employing at least one of a plurality of communication client types, and said network being connected to a plurality of services, the method comprising the steps of:
(i) determining the type of communication client used by the user, retrieving from storage in said network parameters of the characteristics required by the communication client;
(ii) receiving a data access request of a user to a service selected by the user from a plurality of services;
(iii) determining a characteristic of data of the requested input output selected service; and
(iv) data transmitted between the service and the communication client is automatically converted based on the characteristics required by the communication client and the characteristics of the service selected by the user.
70. The method of claim 69 wherein in step (iv) the data is also converted according to user-set preferences stored in the network.
71. The method of claim 69 further comprising the step of monitoring said connection to determine a change in the type of communication client being connected, and re-executing steps (i) to (iv) when a change in the type of communication client being connected is detected.
72. A method of processing data access requests from users connected to a distributed service network having a plurality of connection points, the method comprising the steps of:
(i) establishing a connection with a user at a connection point of said network;
(ii) determining the location of user information, which is stored at a predetermined location of said network;
(iii) transmitting a copy of at least a portion of the information from the determined location to the connection point over the network;
(iv) processing a user's data access request according to the information copy and transmitting a copy of the additional information needed to complete the request from the determined location to the connection point;
(v) on the network between the determined location and the connection point, updated information indicative of changes to the stored information of the user and the copy of the information is communicated to the copy of the information and the stored information of the user to maintain consistency therebetween.
73. The method of claim 72, wherein the portion comprises an identifier of the user.
74. The method of claim 72, wherein the user information further comprises a personal agent of the user.
75. The method of claim 72, wherein the replicated information is stored at said connection point until the user connects to the network at another connection point.
Applications Claiming Priority (17)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CA002220641A CA2220641A1 (en) | 1997-11-10 | 1997-11-10 | A data stream conversion system and method |
| CA2220579 | 1997-11-10 | ||
| CA002220579A CA2220579A1 (en) | 1997-11-10 | 1997-11-10 | Reconfigurable distributed service network |
| CA002220578A CA2220578A1 (en) | 1997-11-10 | 1997-11-10 | Distributed service network |
| CA2220578 | 1997-11-10 | ||
| CA2220580 | 1997-11-10 | ||
| CA2220641 | 1997-11-10 | ||
| CA002220580A CA2220580A1 (en) | 1997-11-10 | 1997-11-10 | Method of servicing data access requests from users connecting to a distributed service network |
| US4112998A | 1998-03-12 | 1998-03-12 | |
| US4113198A | 1998-03-12 | 1998-03-12 | |
| US09/041,128 US6351771B1 (en) | 1997-11-10 | 1998-03-12 | Distributed service network system capable of transparently converting data formats and selectively connecting to an appropriate bridge in accordance with clients characteristics identified during preliminary connections |
| US09/041,130 US6310889B1 (en) | 1998-03-12 | 1998-03-12 | Method of servicing data access requests from users |
| US09/041,131 | 1998-03-12 | ||
| US09/041,130 | 1998-03-12 | ||
| US09/041,129 | 1998-03-12 | ||
| US09/041,128 | 1998-03-12 | ||
| PCT/CA1998/001047 WO1999025071A2 (en) | 1997-11-10 | 1998-11-09 | Distributed service network |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| HK1027184A1 HK1027184A1 (en) | 2001-01-05 |
| HK1027184B true HK1027184B (en) | 2004-06-18 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6351771B1 (en) | Distributed service network system capable of transparently converting data formats and selectively connecting to an appropriate bridge in accordance with clients characteristics identified during preliminary connections | |
| US6310889B1 (en) | Method of servicing data access requests from users | |
| CN1167237C (en) | differential communication method | |
| CN1166137C (en) | method and apparatus for exchanging information in a communication network | |
| JP3822559B2 (en) | Method and apparatus for negotiating mobile services | |
| CN1096646C (en) | Time coherent caching system | |
| FI104873B (en) | Data service in a mobile telephone network | |
| CN1310538C (en) | Method and apparatus for automatic configuration of optimal multimedia performance | |
| CA2479626C (en) | A system and method of mobile lightweight cryptographic directory access | |
| US6084952A (en) | System and method for communicating electronic messages over a telephone network using acoustical coupling | |
| CN1656789A (en) | System for adaptation of sip messages based on recipient's terminal capabilities and preferences | |
| CN1554060A (en) | System and method for providing remote data access and transcoding for mobile communication devices | |
| CN1703031A (en) | Gateway for secure extension of services to mobile devices | |
| US7383347B2 (en) | Method and apparatus for providing extensible scalable transcoding of multimedia content | |
| CN1503531A (en) | Access server for web-based services | |
| CN1550113A (en) | System and method for providing text message service | |
| CN1492656A (en) | Method, apparatus and system for sharing application session information over multiple channels | |
| CN1792081A (en) | Method for setting up a call between selected subscriber terminals via a dedicated communication device | |
| CN1122230C (en) | Distributed service network | |
| CN1599398A (en) | Device and method for realizing transmitting information to computer network real-time communication terminal by telephone | |
| CN1183732C (en) | Service system in network | |
| US7543028B2 (en) | Electronic mail distribution method, communications terminal, and server device | |
| CN1801811A (en) | Mobile mail terminal adapting method and system | |
| EP1347626A2 (en) | A system and method for seamless audio retrieval and transmittal during wireless application protocol sessions | |
| CN1353902A (en) | Telecommunication gateway between private network and mobile network |