Patents by Inventor Mark C. Holland
Mark C. Holland 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: 10812580Abstract: This patent document describes, among other things, methods and systems for determining which if any page resources a server might push to a client (using, e.g., an HTTP 2.0 server push mechanism). The approaches described herein improve web page load times by pushing page resources that a client is likely to need to render the base page, while reducing wasteful server pushes of resources that the client is unlikely to request from the server because, for example, they are already cached at the client.Type: GrantFiled: January 29, 2016Date of Patent: October 20, 2020Assignee: Akamai Technologies, Inc.Inventors: Mark C. Holland, Manish Jain
-
Patent number: 10791201Abstract: Described herein are—among other things—systems, methods, and apparatus for accelerating and increasing the reliability of content delivery by serving objects redundantly over multiple paths from multiple servers. In preferred embodiments, the decision to use such multipath delivery is made on the server side. A content server can modify or generate a given web page so as to invoke multipath, e.g., by injecting markup language directives and/or script instructions that will cause the client device to make multiple requests for a given object on the page. Preferably the multiple requests are made to separate content servers in separate points of presence. The teachings hereof may be advantageously implemented, without limitation, in intermediary servers such as caching proxy servers and/or in origin servers.Type: GrantFiled: December 1, 2017Date of Patent: September 29, 2020Assignee: Akamai Technologies Inc.Inventors: Moritz M. Steiner, Martin T. Flack, Stephen L. Ludin, Mark C. Holland
-
Publication number: 20190028560Abstract: A system for measuring and monitoring performance of online content is provided. In one embodiment, the system includes an intermediary device, such as a web proxy, that receives client requests for content, such as requests for web pages. The device obtains the requested content, modifies it by applying one or more performance optimizations, and serves it to the client. The device also inserts code into the content for execution by the client to gather and report data reflecting, e.g., how quickly the client is able to get and process the content. The code includes information identifying the modifications the device made, and this is reported with the timing data, so that the effect on performance can be analyzed. In other embodiments, the device selects one of multiple versions of content, and the inserted code contains information identifying the selected version. The foregoing are merely examples; other embodiments are described herein.Type: ApplicationFiled: June 19, 2018Publication date: January 24, 2019Applicant: Akamai Technologies, Inc.Inventor: Mark C. Holland
-
Publication number: 20180262564Abstract: This patent document describes, among other things, methods and systems for determining which if any page resources a server might push to a client (using, e.g., an HTTP 2.0 server push mechanism). The approaches described herein improve web page load times by pushing page resources that a client is likely to need to render the base page, while reducing wasteful server pushes of resources that the client is unlikely to request from the server because, for example, they are already cached at the client.Type: ApplicationFiled: March 14, 2018Publication date: September 13, 2018Applicant: Akamai Technologies, Inc.Inventors: Mark C. Holland, Manish Jain
-
Publication number: 20180152545Abstract: Described herein are—among other things—systems, methods, and apparatus for accelerating and increasing the reliability of content delivery by serving objects redundantly over multiple paths from multiple servers. In preferred embodiments, the decision to use such multipath delivery is made on the server side. A content server can modify or generate a given web page so as to invoke multipath, e.g., by injecting markup language directives and/or script instructions that will cause the client device to make multiple requests for a given object on the page. Preferably the multiple requests are made to separate content servers in separate points of presence. The teachings hereof may be advantageously implemented, without limitation, in intermediary servers such as caching proxy servers and/or in origin servers.Type: ApplicationFiled: December 1, 2017Publication date: May 31, 2018Applicant: Akamai Technologies Inc.Inventors: Moritz M. Steiner, Martin T. Flack, Stephen L. Ludin, Mark C. Holland
-
Patent number: 9948709Abstract: This patent document describes, among other things, methods and systems for determining which if any page resources a server might push to a client (using, e.g., an HTTP 2.0 server push mechanism). The approaches described herein improve web page load times by pushing page resources that a client is likely to need to render the base page, while reducing wasteful server pushes of resources that the client is unlikely to request from the server because, for example, they are already cached at the client.Type: GrantFiled: January 29, 2016Date of Patent: April 17, 2018Assignee: Akamai Technologies, Inc.Inventors: Mark C. Holland, Manish Jain
-
Publication number: 20180027087Abstract: A system for measuring and monitoring performance of online content is provided. In one embodiment, the system includes an intermediary device, such as a web proxy, that receives client requests for content, such as requests for web pages. The device obtains the requested content, modifies it by applying one or more performance optimizations, and serves it to the client. The device also inserts code into the content for execution by the client to gather and report data reflecting, e.g., how quickly the client is able to get and process the content. The code includes information identifying the modifications the device made, and this is reported with the timing data, so that the effect on performance can be analyzed. In other embodiments, the device selects one of multiple versions of content, and the inserted code contains information identifying the selected version. The foregoing are merely examples; other embodiments are described herein.Type: ApplicationFiled: July 10, 2017Publication date: January 25, 2018Applicant: Akamai Technologies, Inc.Inventor: Mark C. Holland
-
Patent number: 9866655Abstract: Described herein are—among other things—systems, methods, and apparatus for accelerating and increasing the reliability of content delivery by serving objects redundantly over multiple paths from multiple servers. In preferred embodiments, the decision to use such multipath delivery is made on the server side. A content server can modify or generate a given web page so as to invoke multipath, e.g., by injecting markup language directives and/or script instructions that will cause the client device to make multiple requests for a given object on the page. Preferably the multiple requests are made to separate content servers in separate points of presence. The teachings hereof may be advantageously implemented, without limitation, in intermediary servers such as caching proxy servers and/or in origin servers.Type: GrantFiled: April 14, 2014Date of Patent: January 9, 2018Assignee: AKAMAI TECHNOLOGIES, INC.Inventors: Moritz M. Steiner, Martin T. Flack, Stephen L. Ludin, Mark C. Holland
-
Patent number: 9742858Abstract: A system for measuring and monitoring performance of online content is provided. In one embodiment, the system includes an intermediary device, such as a web proxy, that receives client requests for content, such as requests for web pages. The device obtains the requested content, modifies it by applying one or more performance optimizations, and serves it to the client. The device also inserts code into the content for execution by the client to gather and report data reflecting, e.g., how quickly the client is able to get and process the content. The code includes information identifying the modifications the device made, and this is reported with the timing data, so that the effect on performance can be analyzed. In other embodiments, the device selects one of multiple versions of content, and the inserted code contains information identifying the selected version. The foregoing are merely examples; other embodiments are described herein.Type: GrantFiled: December 19, 2012Date of Patent: August 22, 2017Assignee: Akamai Technologies Inc.Inventor: Mark C Holland
-
Patent number: 9736258Abstract: A system for measuring and monitoring performance of online content is provided. In one embodiment, the system includes an intermediary device, such as a web proxy, that receives client requests for content, such as requests for web pages. The device obtains the requested content, modifies it by applying one or more performance optimizations, and serves it to the client. The device also inserts code into the content for execution by the client to gather and report data reflecting, e.g., how quickly the client is able to get and process the content. The code includes information identifying the modifications the device made, and this is reported with the timing data, so that the effect on performance can be analyzed. In other embodiments, the device selects one of multiple versions of content, and the inserted code contains information identifying the selected version. The foregoing are merely examples; other embodiments are described herein.Type: GrantFiled: September 9, 2016Date of Patent: August 15, 2017Assignee: Akamai Technologies, Inc.Inventor: Mark C. Holland
-
Publication number: 20160381166Abstract: A system for measuring and monitoring performance of online content is provided. In one embodiment, the system includes an intermediary device, such as a web proxy, that receives client requests for content, such as requests for web pages. The device obtains the requested content, modifies it by applying one or more performance optimizations, and serves it to the client. The device also inserts code into the content for execution by the client to gather and report data reflecting, e.g., how quickly the client is able to get and process the content. The code includes information identifying the modifications the device made, and this is reported with the timing data, so that the effect on performance can be analyzed. In other embodiments, the device selects one of multiple versions of content, and the inserted code contains information identifying the selected version. The foregoing are merely examples; other embodiments are described herein.Type: ApplicationFiled: September 9, 2016Publication date: December 29, 2016Applicant: Akamai Technologies, Inc.Inventor: Mark C. Holland
-
Publication number: 20160226969Abstract: This patent document describes, among other things, methods and systems for determining which if any page resources a server might push to a client (using, e.g., an HTTP 2.0 server push mechanism). The approaches described herein improve web page load times by pushing page resources that a client is likely to need to render the base page, while reducing wasteful server pushes of resources that the client is unlikely to request from the server because, for example, they are already cached at the client.Type: ApplicationFiled: January 29, 2016Publication date: August 4, 2016Applicant: Akamai Technologies, Inc.Inventors: Mark C. Holland, Manish Jain
-
Publication number: 20160226998Abstract: This patent document describes, among other things, methods and systems for determining which if any page resources a server might push to a client (using, e.g., an HTTP 2.0 server push mechanism). The approaches described herein improve web page load times by pushing page resources that a client is likely to need to render the base page, while reducing wasteful server pushes of resources that the client is unlikely to request from the server because, for example, they are already cached at the client.Type: ApplicationFiled: January 29, 2016Publication date: August 4, 2016Applicant: Akamai Technologies, Inc.Inventors: Mark C. Holland, Manish Jain
-
Publication number: 20150281331Abstract: Described herein are—among other things—systems, methods, and apparatus for accelerating and increasing the reliability of content delivery by serving objects redundantly over multiple paths from multiple servers. In preferred embodiments, the decision to use such multipath delivery is made on the server side. A content server can modify or generate a given web page so as to invoke multipath, e.g., by injecting markup language directives and/or script instructions that will cause the client device to make multiple requests for a given object on the page. Preferably the multiple requests are made to separate content servers in separate points of presence. The teachings hereof may be advantageously implemented, without limitation, in intermediary servers such as caching proxy servers and/or in origin servers.Type: ApplicationFiled: April 14, 2014Publication date: October 1, 2015Applicant: AKAMAI TECHNOLOGIES, INC.Inventors: Moritz M. Steiner, Martin T. Flack, Stephen L. Ludin, Mark C. Holland
-
Patent number: 9110464Abstract: Systems, methods, and devices of the various embodiments enable graph based routing of containers and adjustments of container routing based on one or more current material handling system state. The various embodiments enable examination and evaluation of the material handling systems using graphs to find an optimal route from a starting node in the material handling system to an ending node in the material handling system. In an embodiment, the graph may be a directed graph of edges and nodes of a material handling system. In an embodiment, the directed graph may include edge weights and the edge weights may be used to determine the optimal route for the container. In an embodiment, the edge weights may be updated as events occur in the material handling system which may result in dynamic routing of containers through the material handling system.Type: GrantFiled: November 21, 2013Date of Patent: August 18, 2015Assignee: INTELLIGRATED HEADQUARTERS LLCInventors: Mark C. Holland, Joshua P. Hays
-
Publication number: 20150142168Abstract: Systems, methods, and devices of the various embodiments enable graph based routing of containers and adjustments of container routing based on one or more current material handling system state. The various embodiments enable examination and evaluation of the material handling systems using graphs to find an optimal route from a starting node in the material handling system to an ending node in the material handling system. In an embodiment, the graph may be a directed graph of edges and nodes of a material handling system. In an embodiment, the directed graph may include edge weights and the edge weights may be used to determine the optimal route for the container. In an embodiment, the edge weights may be updated as events occur in the material handling system which may result in dynamic routing of containers through the material handling system.Type: ApplicationFiled: November 21, 2013Publication date: May 21, 2015Applicant: INTELLIGRATED HEADQUARTERS LLCInventors: Mark C. Holland, Joshua P. Hays
-
Patent number: 8095503Abstract: A method for allowing client computers in a distributed object-based data storage system to interpret higher revision data structures. In one embodiment, clients request layout maps of objects to be accessed from respective storage managers in the system and then construct and execute directed acyclic graphs (DAG) to accomplish desired I/O operations for data access. When a client computer running an older software revision is not able to interpret a particular data organization supplied by the storage manager that was designed after that client's software was installed, the client sends to the storage manager a description of the desired data access operation. The storage manager, in turn, interprets a data layout scheme for a client on a per-access basis and returns to that client a DAG containing a data structure that describes the sequence of I/O operations necessary to effect the data access. The client can then execute the storage manager-supplied DAG to carry out the data access.Type: GrantFiled: February 21, 2003Date of Patent: January 10, 2012Assignee: Panasas, Inc.Inventors: Mark C. Holland, Denis M. Serenyi
-
Patent number: 7194467Abstract: A methodology wherein two different types of locks are used by a storage manager when multiple clients wish to access a particular redundantly-stored file. Simple byte-range based mutual exclusion (or mutex) locks are granted by the storage manager for data writes/updates to the file when the file is in the fault-free state, and individual readers/writers (R/W) locks are granted by the storage manager when the file is in the degraded state. No read locks are required of clients when the file object is in the fault-free state. During the fault-free state of the file object, when exactly one client is writing to the file object, the storage manger grants that file object a whole-file lock valid over the entire file object. Each client may have a client lock manager that interacts with appropriate storage manager lock manager to request and obtain necessary locks. These various locking mechanisms reduce lock-related network traffic in a data storage system.Type: GrantFiled: February 21, 2003Date of Patent: March 20, 2007Assignee: Panasas, IncInventor: Mark C. Holland
-
Patent number: 7191357Abstract: A hybrid quorum/consensus and primary-backup fault-tolerance model in an object-based distributed data storage system. When a primary manager fails, a hierarchy of network entities is established in which a group of realm managers first authorizes a failure-handling event through quorum/consensus and a backup manager (for the failing primary manager) then executes the decision of the quorum of realm managers. The realm managers, operating by consensus, determine whether (a) the primary manager can indeed be asserted to be down, and (b) whether there is a quorum of realm managers in agreement on this decision. If both are true, a master realm manager instructs the backup manager to proceed to execute the necessary steps to become the primary manager and function as the primary until the original primary manager is brought back into service. The hybrid fault-tolerance approach handles both single unit failures and network partitions in a unified way, without creating a single cluster out of the fault domain.Type: GrantFiled: December 19, 2002Date of Patent: March 13, 2007Assignee: Panasas, Inc.Inventors: Mark C. Holland, James D. Zelenka, Garth A. Gibson
-
Patent number: 7036039Abstract: A data storage methodology wherein fault tolerance is accomplished by generation of multiple canonical names for each primary manager active in the data storage system and then balancing the primary manager's failure-induced workload across the multiple backup managers using the canonical names. A qualified name for each backup manager is derived from a canonical name assigned to the primary manager. During fault-free state of operation, all the qualified names are assigned to the primary manager, which serves all its qualified names. When that primary manager fails, the work it was supporting is distributed among its backup managers using the qualified names for those backups. The distribution of primary manager's workload among multiple backups eliminates the severe performance bottlenecks present in the traditional approach of keeping one backup manager for a primary manager and keeping that backup manager idle during the fault-free state of its primary manager.Type: GrantFiled: December 19, 2002Date of Patent: April 25, 2006Assignee: Panasas, Inc.Inventor: Mark C. Holland