Patents by Inventor Steven D. Ims

Steven D. Ims has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7155478
    Abstract: A system and method for selectively handling requests for dynamic data processing. In the system and method, requests for dynamic data processing can be received in an origin server, but the dynamic data processing can be deferred to an edge server in those circumstances where it is dynamically determined that the edge server is capable of performing such dynamic data processing. In this way, network transmission latencies can be avoided by performing dynamic data processing in those edge servers closest to the requesting user.
    Type: Grant
    Filed: October 3, 2001
    Date of Patent: December 26, 2006
    Assignee: International Business Machines Corporation
    Inventors: Steven D. Ims, David B. Lindquist
  • Patent number: 7130964
    Abstract: The present invention provides a method, system, and computer program product for caching objects to improve performance and resource utilization of software applications which interact with a back-end data source, such as a legacy host application and/or legacy host data store or database. Read-only requests for information are satisfied from the cache, avoiding the overhead of a network round-trip and the computing overhead of repeating an interaction with the back-end data source. Refreshes of cached objects and update requests to objects may be queued for delayed processing (for example, at a time when the system is lightly loaded), thereby improving system resource utilization. A sequence of actions that may be required to initiate, and interact with, the refresh and update processes is also preferably stored in the cached objects. This technique is applicant-independent, and may therefore be used for objects having an arbitrary format.
    Type: Grant
    Filed: April 14, 2004
    Date of Patent: October 31, 2006
    Assignee: International Business Machines Corporation
    Inventors: Steven D. Ims, Yongcheng Li, Yih-Shin Tan
  • Patent number: 7099926
    Abstract: The present invention provides a method, system, and computer program product for caching objects to improve performance and resource utilization of software applications which interact with a back-end data source, such as a legacy host application and/or legacy host data store or database. Read-only requests for information are satisfied from the cache, avoiding the overhead of a network round-trip and the computing overhead of repeating an interaction with the back-end data source. Refreshes of cached objects and update requests to objects may be queued for delayed processing (for example, at a time when the system is lightly loaded), thereby improving system resource utilization. A sequence of actions that may be required to initiate, and interact with, the refresh and update processes is also preferably stored in the cached objects. This technique is applicant-independent, and may therefore be used for objects having an arbitrary format.
    Type: Grant
    Filed: July 6, 2000
    Date of Patent: August 29, 2006
    Assignee: International Business Machines Corporation
    Inventors: Steven D. Ims, Yongcheng Li, Yih-Shin Tan
  • Patent number: 7099936
    Abstract: A method for managing multi-tier SLA relationships. The method can include first computing costs of utilizing edge server resources in a CDN, costs of dedicating content host resources in a content host in lieu of the utilization, and prospective revenues which can be generated by the content host providing services based on the resources to content consumers. Minimum QoS levels can be identified which must be maintained when providing the services to the content consumers according to QoS terms in established SLAs between the content host and individual ones of the content consumers. Finally, a new SLA can be established between the content host and the CDN. Importantly, the new SLA can include QoS terms for selectively allocating resources in the CDN. Moreover, the QoS terms can optimize revenues generated by the content host providing services based on the selective allocation of resources and the computed costs.
    Type: Grant
    Filed: March 29, 2002
    Date of Patent: August 29, 2006
    Assignee: International Business Machines Corporation
    Inventors: Jeffrey S. Chase, Ronald P. Doyle, Steven D. Ims
  • Patent number: 7017014
    Abstract: A method, system and program product maintains consistency of data across a hierarchy of caches. Under the present invention, each data entry in the hierarchy of caches is assigned its own dependency identifier as well as the dependency identifiers of any data entries on which it depends. Thus, the present invention allows corresponding data entries to be linked for automatic invalidation.
    Type: Grant
    Filed: January 28, 2003
    Date of Patent: March 21, 2006
    Assignee: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Steven D. Ims, Brian K. Martin
  • Publication number: 20040230747
    Abstract: The present invention provides a method, system, and computer program product for caching objects to improve performance and resource utilization of software applications which interact with a back-end data source, such as a legacy host application and/or legacy host data store or database. Read-only requests for information are satisfied from the cache, avoiding the overhead of a network round-trip and the computing overhead of repeating an interaction with the back-end data source. Refreshes of cached objects and update requests to objects may be queued for delayed processing (for example, at a time when the system is lightly loaded), thereby improving system resource utilization. A sequence of actions that may be required to initiate, and interact with, the refresh and update processes is also preferably stored in the cached objects. This technique is applicant-independent, and may therefore be used for objects having an arbitrary format.
    Type: Application
    Filed: April 14, 2004
    Publication date: November 18, 2004
    Inventors: Steven D. Ims, Yongcheng Li, Yih-Shin Tan
  • Publication number: 20040162886
    Abstract: Methods, systems, computer program products, and methods of doing business by caching dynamic content fragments in a distributed cache and assembling requested content using these fragments. The disclosed techniques are non-invasive, and enable the benefits of distributed fragment caching to be extended to more applications, without regard to the programming model used when designing the application. An application developer specifies dependencies among content creating components (or, in alternative embodiments, it may be possible to infer this information), and if one of these components may be called upon to generate a content fragment dynamically, correlator data is programmatically created and attached to a message that references the component. A subsequent content generation request to the component then automatically carries the correlator data, and that data is programmatically restored.
    Type: Application
    Filed: February 19, 2003
    Publication date: August 19, 2004
    Applicant: International Business Machines Corporation
    Inventors: Steven D. Ims, Brian K. Martin, Thomas F. McElroy, Brad B. Topol
  • Publication number: 20040148474
    Abstract: A method, system and program product for maintaining data consistency across a hierarchy of caches is provided. Under the present invention, each data entry in the hierarchy of caches is assigned its own dependency identifier as well as the dependency identifiers of any data entries on which it depends. Thus, the present invention allows corresponding data entries to be linked for automatic invalidation.
    Type: Application
    Filed: January 28, 2003
    Publication date: July 29, 2004
    Applicant: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Steven D. Ims, Brian K. Martin
  • Patent number: 6757708
    Abstract: A method, system, and computer program product for caching dynamically generated content (including, but not limited to, dynamically generated Web pages), as well as determining when the cached content should be invalidated or purged. Rather than caching the generated datastream (i.e. the end result of the computations used in the dynamic generation process) as in the prior art, the interim results of computations (such as a generated bean instance or object, where the interim results may be stored using properties and methods) are cached according to the present invention. The input properties used to generate the bean or object, along with the input property values, are used to distinguish among cached instances and thereby identify when a cached instance may be used to respond to a subsequent request for the same content. Re-execution of the business logic of the bean or object may then be avoided, using the cached bean's or object's output properties to generate the content response.
    Type: Grant
    Filed: March 3, 2000
    Date of Patent: June 29, 2004
    Assignee: International Business Machines Corporation
    Inventors: Ronald E. Craig, Steven D. Ims, Yongcheng Li, Daniel E. Poirier, Soumitra Sarkar, Yih-Shin Tan, Maria Rita Villari
  • Publication number: 20040054749
    Abstract: The present invention generally relates to a method, system and program product for distributing portal content processing. Specifically, a request for portal content is received on a surrogate system and then passed to a portal system. The portal system will obtain and aggregate a first type of the requested content, and then package the aggregated content into a response. The response will also include place holders that correspond to the remaining type of the requested content. The response will then be transmitted to the surrogate system, which will, based upon the place holders, obtain the remaining type of portal content. Once obtained, the remaining type of portal content will replace the place holders in the response, and the response will be rendered for the requesting portal user.
    Type: Application
    Filed: September 12, 2002
    Publication date: March 18, 2004
    Applicant: International Business Machines Corporation
    Inventors: Ronald P. Doyle, John G. Dudley, James C. Fletcher, James R. Giles, Steven D. Ims, Zon-Yin Shae, Dinesh C. Verma
  • Publication number: 20040049579
    Abstract: Methods, systems, computer program products, and methods of doing business by using dynamic capacity-on-demand techniques for re-routing traffic in a distributed computing network. When demand on an enterprise's resources exceeds some predetermined level, dynamic modifications cause static content (such as images) to be served from resources which are external to the enterprise, such as a caching system which is located close to the enterprise's end users. When demand falls below the predetermined level, the modifications are effectively reversed, such that the external resources are no longer used. The predetermined level may apply to a single monitored device, or to a group of monitored devices. The dynamic capacity-on-demand techniques may also be used for dynamic types of content, such as for dynamically re-routing access to an application program executing on an external resource, and may be used for internal capacity-on-demand as well.
    Type: Application
    Filed: April 10, 2002
    Publication date: March 11, 2004
    Applicant: International Business Machines Corporation
    Inventors: Steven D. Ims, Yongcheng Li, Richard J. Lusardi, Jie Xing
  • Publication number: 20040015538
    Abstract: A method, system, and computer program product, by which portions of the session information that page-content is dependent upon are “pushed” to the client from the origin server in a way such that auxiliary servers, e.g. other application servers and edge-servers, have access to the session information and fragment dependancy data to generate auxiliary-server cache-IDs for the custom pages. This enables distribution of the load away from the origin server, allowing better application distribution and scalability through more effective caching.
    Type: Application
    Filed: July 18, 2002
    Publication date: January 22, 2004
    Inventors: Rajesh S. Agarwalla, Madhu Chetuparambil, Steven D. Ims, Brian K. Martin, Thomas F. McElroy, Subbarao Meduri, Daniel C. Shupp, Brad B. Topol
  • Patent number: 6665867
    Abstract: The present invention provides a method, system, and computer program product that enables software objects and applications to dynamically self-propagate, as needed, through a computer network. This technique may be used to dynamically establish a mirroring site to which processing of work elements can be offloaded. In addition, this technique can be used to automatically deploy a software application that is comprised of a sender part and a receiver part (such as a client/server application) from a single site without manual intervention. The propagation occurs in an application-independent manner, and may operate symmetrically at either or both the sender and receiver. The life-span of propagated software objects and applications can be specified, in order to control the amount of time the downloaded resources reside on the receiving system.
    Type: Grant
    Filed: July 6, 2000
    Date of Patent: December 16, 2003
    Assignee: International Business Machines Corporation
    Inventors: Steven D. Ims, Yongcheng Li, Yih-Shin Tan
  • Publication number: 20030187970
    Abstract: A method for managing multi-tier SLA relationships. The method can include first computing costs of utilizing edge server resources in a CDN, costs of dedicating content host resources in a content host in lieu of the utilization, and prospective revenues which can be generated by the content host providing services based on the resources to content consumers. Minimum QoS levels can be identified which must be maintained when providing the services to the content consumers according to QoS terms in established SLAs between the content host and individual ones of the content consumers. Finally, a new SLA can be established between the content host and the CDN. Importantly, the new SLA can include QoS terms for selectively allocating resources in the CDN. Moreover, the QoS terms can optimize revenues generated by the content host providing services based on the selective allocation of resources and the computed costs.
    Type: Application
    Filed: March 29, 2002
    Publication date: October 2, 2003
    Applicant: International Business Machines Corporation
    Inventors: Jeffrey S. Chase, Ronald P. Doyle, Steven D. Ims
  • Patent number: 6560618
    Abstract: A method, system, and computer program product for enabling the on-demand generation, packaging, and delivery of archive files (such as cabinet, or “.cab”, files and Java archive, or “.jar”, files). This technique provides a more powerful, more flexible archive capability than the static technique of the prior art. A target server application is specified in place of a static pre-packaged archive file name, where this target will dynamically create an archive file in an application-dependent manner. Zero or more parameter name/value pairs may be specified as well, where the parameter values may be used by the target to customize the dynamic creation. Once created, archive files may optionally be cached to optimize future invocations of the archive content delivery process. Existing browser software may take advantage of the present invention without modification.
    Type: Grant
    Filed: March 22, 2000
    Date of Patent: May 6, 2003
    Assignee: International Business Machines Corporation
    Inventor: Steven D. Ims
  • Publication number: 20030065810
    Abstract: A system and method for selectively handling requests for dynamic data processing. In the system and method, requests for dynamic data processing can be received in an origin server, but the dynamic data processing can be deferred to an edge server in those circumstances where it is dynamically determined that the edge server is capable of performing such dynamic data processing. In this way, network transmission latencies can be avoided by performing dynamic data processing in those edge servers closest to the requesting user.
    Type: Application
    Filed: October 3, 2001
    Publication date: April 3, 2003
    Applicant: International Business Machines Corporation
    Inventors: Steven D. Ims, David B. Lindquist
  • Patent number: 6542908
    Abstract: A method, system, and computer program product for automatically transforming software components written for stand-alone execution such that they can be executed as client/server components in a distributed network computing model. A proxy is programmatically generated when the component is requested at run-time, where the proxy has an identical interface to the actual component. This enables the remote proxy to reflect the most up-to-date version of the component, which is especially advantageous if code component interfaces are being changed over time. Furthermore, this technique enables the proxy to access the most current version of the component. (Alternatively, already-existing proxy code may be retrieved, where the proxy has been created by a developer.) Run-time information may be used to select the component to be accessed.
    Type: Grant
    Filed: March 22, 2000
    Date of Patent: April 1, 2003
    Assignee: International Business Machines Corporation
    Inventor: Steven D. Ims
  • Publication number: 20030018668
    Abstract: Methods, systems, and computer program products for improving the transcoding operations which are performed on structured documents (such as those encoded in the Hypertext Markup Language, or “HTML”) through use of annotations. Source documents may be annotated according to one or more types of annotations. Representative types of annotations direct an annotation engine to perform selective clipping of document content, provide enhanced HTML form support, request node and/or attribute replacement or the insertion of HTML or other rendered markup syntax, and direct a transcoding engine to provide fine-grained transcoding preference support (such as controlling transcoding of tables on a per-row or per-column basis). The disclosed techniques may be used with statically-generated document content and with dynamically-generated content.
    Type: Application
    Filed: July 20, 2001
    Publication date: January 23, 2003
    Applicant: International Business Machines Corporation
    Inventors: Kathryn H. Britton, Roderick C. Henderson, John R. Hind, Steven D. Ims, Max A. McMullen, Christopher R. Seekamp, Brad B. Topol
  • Patent number: 6505200
    Abstract: A method, system, and computer program product for automatically synchronizing data between a replicated version and a back-end data store version which may or may not have the same format. Queues are used for scheduling refreshes of read-access objects and updates of write-access objects, where the actual processing will occur when the client device connects to the back-end data source. This technique is application-independent, and does not require writing application-specific code to perform a synchronization between data stores having dissimilar storage formats. This technique is particularly advantageous for mobile computing devices, which may operate primarily in a disconnected mode, and for distributed branch-office computing environments where a local server has a replicated copy of data stored at a back-end enterprise system.
    Type: Grant
    Filed: July 6, 2000
    Date of Patent: January 7, 2003
    Assignee: International Business Machines Corporation
    Inventors: Steven D. Ims, Yongcheng Li, Yih-Shin Tan
  • Publication number: 20020091533
    Abstract: The present invention provides a method, system, computer program product, and method of doing business with automated electronic business (“e-business”) services by using a structured markup language processing engine and structured markup language documents. The structured markup language, which in the preferred embodiment is the Extensible Markup Language (“XML”), is used to describe the data and processing invocations to perform in carrying out e-business services (which may include invocation of a number of sub-services), and to automatically synchronize the interactions that are necessary in carrying out the service. The interactions may involve multiple business partners. The processing of multiple input documents and multiple output documents may be required, which is handled efficiently by the present invention.
    Type: Application
    Filed: January 5, 2001
    Publication date: July 11, 2002
    Applicant: International Business Machines Corporation,
    Inventors: Steven D. Ims, Yongcheng Li, Yih-Shin Tan