Electrical computers and digital processing systems: multicomput – Distributed data processing – Client/server
Reexamination Certificate
2000-09-21
2004-06-08
Alam, Hosain (Department: 2155)
Electrical computers and digital processing systems: multicomput
Distributed data processing
Client/server
C709S217000, C709S218000, C709S219000, C705S026640, C705S027200, C705S037000, C707S793000
Reexamination Certificate
active
06748417
ABSTRACT:
THE FIELD OF THE INVENTION
The present invention relates to the field of network computing. More particularly, the present invention relates to methods, systems, and data structures for-supporting a flexible autonomous network service configuration architecture.
THE PRIOR STATE OF THE ART
Network technology such as the Internet has revolutionized the way people communicate and do business and promises to have a major impact on the world's future. A host of Internet sites now offer services that are provided to clients upon request. Such services might include, for example, the making of a flight reservation, the ordering of a book, the selling of a stock, and much more. The providing of such services over the Internet now constitutes a major part of the economy. Still, it is anticipated that these network services will become even more in demand in the future.
The profitability of businesses that offer such services is largely dependent on how the software applications that provide the service are designed. A poorly designed application program can result in lost business opportunities, squandered good will, and other detriments. In contrast, a well designed application program can foster positive consumer sentiment and a healthy financial situation. In light of the promise shown of network services and the reliance of network services on good software design, it would represent a significant advancement in the art to provide technologies that enhance the way people design software applications that support network services.
FIG. 1
illustrates the relevant features of what is understood to be the current state of the art with regards to the network design of service providers. A service provider
110
provides a service to client groups
120
(e.g., client groups
120
a
through
120
n
) that reside outside of the trust boundary
130
of the service provider. The service provider
110
does not trust information provided from entities such as clients
120
that reside outside of the trust boundary
130
. In other words, the service provider
110
does not rely on such externally provided information being accurate and thus independently verifies such information.
On the other hand, the internal components of the service provider
110
generally trust information provided internally between them as they are all within the trust boundary. Such internally provided information may be verified to make sure that the information was properly transmitted internally. However, the internally provided information is not verified for accuracy since the components internal to the service provider
110
are trusted to each other. In essence, although internal errors may occur, the components within the service provider
110
can depend on the other internal components not being malicious. The same cannot be said of the clients
120
.
The service provider
110
includes current data source
111
, which stores the mission-critical data that reflects the accurate and most up-to-date state of the service. For example, if the service provider is an on-line video store, the current data may include an up-to-date listing of the videos offered for sale as well as the quantity of each video in stock. A primary logic component
112
encapsulates the current data source
111
so that only it directly accesses the current data source.
The service provider also includes client interactive logic components
111
a
through
113
n
that interact with client groups
120
a
through
120
n
, respectively. Each client interactive logic component includes reference data
114
(e.g.,
114
a
through
114
n
, respectively), and single user writable data
115
(e.g.,
115
a
through
115
n
, respectively). The reference data is based on the current data and is used in the interactions with the client. The single user writable data for a particular client interactive logic component includes user data for the client group with which the particular client interactive logic component communicates. Only the client itself affects single user writable data having to do with that client. A classic example of single user writable data is shopping cart data electronically representing items the user has selected for purchase.
Each client interactive logic component
113
interacts with a client
120
by receiving requests from the client
120
, transmitting reference data to the client as appropriate, and generating requests for the primary logic component
112
. For example, in the on-line video store example, a client may transmit a request to view a selection of videos. In response, the client interactive logic component may extract a list of videos from the reference data and transmit the list to the client. The client may then send a request to purchase an item within the list. During this interaction, the client interactive logic component may extract user data from the client-originated messages. This single user writable data may include buyer name, buyer address, credit card number, shipping address, item ordered, quantity ordered, and any other relevant information specific to the user that may be helpful in completing the service or transaction.
The client interactive logic component
113
then generates a formal request for services recognized by the primary logic component
112
by using the appropriate fields from the reference data (e.g., item number and title) and from the single user writable data (e.g., quantity ordered, shipping address and buyer name). The primary logic component
112
would then cause the shipment to be processed and would update the current data to reflect the change in inventory levels.
The primary logic component
112
periodically updates the reference data by transmitting updates to the client interactive logic components
113
. The updates are based on the current data as the current data existed at a previous instant in time. If the reference data was too out of date, the client may make a request that cannot be fulfilled due to changes in the current state of the service. For example, in the on-line video business example, the client may request to purchase a certain video that was indicated to be available but has become unavailable since the reference data was last updated. In this case, the request would fail thereby harming the good will of the service provider.
In order to guard against such harm in conventional service provider architectures, updates are provided to the reference data frequently enough that the risk of data mismatch between the reference data and the current data is minimized to a level acceptable to the service provider. This frequent updating of potentially large volumes of reference data means that the communication bandwidth between the primary logic component
112
and the client interactive logic components
113
should be relatively high.
In summary, in the conventional network service architecture, the primary logic component
112
that manages the current data trusts the client interactive logic components
113
that interact with the client
120
. Furthermore, the primary logic component
112
provides frequent updates to the reference data so as to avoid errors based on staleness of the reference data. Since it is easier to maintain trust and maintain high bandwidth in tightly coupled networks where the network is physically consolidated, there is a strong motivation to tightly couple and physically consolidate the conventional network service configuration of a service provider.
Although such tight integration has its advantages in conventional network service architectures, it will become clear from this description that it would represent a revolutionary advancement in the state of the art to provide a network service architecture that is not constrained by such tight integration.
SUMMARY OF THE INVENTION
The present invention liberates service provider architecture by allowing the primary logic component that manages the live current data of the service provider to be autonomous from the client interactive logic components. The clien
Alam Hosain
Microsoft Corporation
Nguyen Thu Ha
Workman Nydegger
LandOfFree
Autonomous network service configuration does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Autonomous network service configuration, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Autonomous network service configuration will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3341577