Patents by Inventor Austin Donnelly
Austin Donnelly 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: 11232006Abstract: A server system comprising storage devices, processing devices and a storage fabric all operating according to a storage fabric protocol. The storage fabric comprises a plurality of individual switches having a modular design from which an overall switch is built, and the individual switches have individual respective configuration settings which determine which processing devices are allocated to use which of the storage devices. The system comprises an API enabling a software control function to configure the overall switch. The API is operable to receive from the control function an overall mapping of the storage devices to the processing devices instead of requiring the individual configuration settings of each of the individual switches to be specified by the control function, the API being configured to convert the overall mapping into the individual configuration settings of the individual switches to produce the overall mapping.Type: GrantFiled: August 19, 2020Date of Patent: January 25, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Serguei Anatolievitch Legtchenko, Mark Shaw, Austin Donnelly, Hugh Williams, Richard Black, Antony Ian Taylor Rowstron, Aaron Ogus, Douglas Phillips
-
Publication number: 20210096968Abstract: A server system comprising storage devices, processing devices and a storage fabric all operating according to a storage fabric protocol. The storage fabric comprises a plurality of individual switches having a modular design from which an overall switch is built, and the individual switches have individual respective configuration settings which determine which processing devices are allocated to use which of the storage devices. The system comprises an API enabling a software control function to configure the overall switch. The API is operable to receive from the control function an overall mapping of the storage devices to the processing devices instead of requiring the individual configuration settings of each of the individual switches to be specified by the control function, the API being configured to convert the overall mapping into the individual configuration settings of the individual switches to produce the overall mapping.Type: ApplicationFiled: August 19, 2020Publication date: April 1, 2021Inventors: Serguei Anatolievitch LEGTCHENKO, Mark SHAW, Austin DONNELLY, Hugh WILLIAMS, Richard BLACK, Antony Ian Taylor ROWSTRON, Aaron OGUS, Douglas PHILLIPS
-
Patent number: 10809926Abstract: A server system comprising storage devices, processing devices and a storage fabric all operating according to a storage fabric protocol. The storage fabric comprises a plurality of individual switches having a modular design from which an overall switch is built, and the individual switches have individual respective configuration settings which determine which processing devices are allocated to use which of the storage devices. The system comprises an API enabling a software control function to configure the overall switch. The API is operable to receive from the control function an overall mapping of the storage devices to the processing devices instead of requiring the individual configuration settings of each of the individual switches to be specified by the control function, the API being configured to convert the overall mapping into the individual configuration settings of the individual switches to produce the overall mapping.Type: GrantFiled: February 5, 2018Date of Patent: October 20, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Serguei Anatolievitch Legtchenko, Mark Shaw, Austin Donnelly, Hugh Williams, Richard Black, Antony Ian Taylor Rowstron, Aaron Ogus, Douglas Phillips
-
Publication number: 20190245923Abstract: A server system comprising processing devices, disks and a storage fabric, all arranged to operate according to a storage fabric protocol in order to communicate between the processing devices and the storage devices over the storage fabric, wherein the storage fabric is settable with a mapping determining which of the processing devices are allocated to use which of the storage devices in providing said services to the client systems. The system comprises a control function arranged to dynamically adapt the mapping in response to either: (i) failure or other downtime of one of the processing devices, storage devices, a component of the storage fabric or a connection in the storage fabric; or (ii) a current demand for the services from the client systems.Type: ApplicationFiled: February 5, 2018Publication date: August 8, 2019Inventors: Hugh WILLIAMS, Antony Ian Taylor ROWSTRON, Richard BLACK, Austin DONNELLY, Serguei Anatolievitch LEGTCHENKO, Aaron OGUS, Douglas PHILLIPS
-
Publication number: 20190245922Abstract: A server system comprising storage devices, processing devices and a storage fabric all operating according to a storage fabric protocol. The storage fabric comprises a plurality of individual switches having a modular design from which an overall switch is built, and the individual switches have individual respective configuration settings which determine which processing devices are allocated to use which of the storage devices. The system comprises an API enabling a software control function to configure the overall switch. The API is operable to receive from the control function an overall mapping of the storage devices to the processing devices instead of requiring the individual configuration settings of each of the individual switches to be specified by the control function, the API being configured to convert the overall mapping into the individual configuration settings of the individual switches to produce the overall mapping.Type: ApplicationFiled: February 5, 2018Publication date: August 8, 2019Inventors: Serguei Anatolievitch LEGTCHENKO, Mark SHAW, Austin DONNELLY, Hugh WILLIAMS, Richard BLACK, Antony Ian Taylor ROWSTRON, Aaron OGUS, Douglas PHILLIPS
-
Patent number: 9906433Abstract: An application programming interface (API) supporting server and key based networking is described. In an embodiment, the API receives either a key or a server address from a service running on a server in a direct-connect topology and returns data which identifies suitable next hops for transmission of a packet of data which has a destination of the received server address or of a server address which is encoded within the received key. In another embodiment, the key also encodes information specifying alternative server addresses for use in the event that the original server is unreachable. This information may also be used to define servers for replication of the key. A further embodiment describes a method of queuing packets for transmission against multiple links, where the packet is transmitted on the first available link and at this time is removed from the queues for the other links.Type: GrantFiled: April 13, 2015Date of Patent: February 27, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Gregory O'Shea, Austin Donnelly, Antony Rowstron, Paolo Costa
-
Publication number: 20150222523Abstract: An application programming interface (API) supporting server and key based networking is described. In an embodiment, the API receives either a key or a server address from a service running on a server in a direct-connect topology and returns data which identifies suitable next hops for transmission of a packet of data which has a destination of the received server address or of a server address which is encoded within the received key. In another embodiment, the key also encodes information specifying alternative server addresses for use in the event that the original server is unreachable. This information may also be used to define servers for replication of the key. A further embodiment describes a method of queuing packets for transmission against multiple links, where the packet is transmitted on the first available link and at this time is removed from the queues for the other links.Type: ApplicationFiled: April 13, 2015Publication date: August 6, 2015Inventors: Gregory O'Shea, Austin Donnelly, Antony Rowstron, Paolo Costa
-
Patent number: 9015345Abstract: An application programming interface (API) supporting server and key based networking is described. In an embodiment, the API receives either a key or a server address from a service running on a server in a direct-connect topology and returns data which identifies suitable next hops for transmission of a packet of data which has a destination of the received server address or of a server address which is encoded within the received key. In another embodiment, the key also encodes information specifying alternative server addresses for use in the event that the original server is unreachable. This information may also be used to define servers for replication of the key. A further embodiment describes a method of queuing packets for transmission against multiple links, where the packet is transmitted on the first available link and at this time is removed from the queues for the other links.Type: GrantFiled: December 15, 2010Date of Patent: April 21, 2015Assignee: Microsoft CorporationInventors: Gregory O'Shea, Austin Donnelly, Antony Rowstron, Paolo Costa
-
Patent number: 8724512Abstract: A system and method for discovering network topology by various switch training and probing methods. Segments are discovered by having computers enter a promiscuous mode and determining from packets sent to a selected computer which computers see which other computers in the network. From the segments, various switch interconnections are determined, by having different computers train switches as to a training address and seeing which computers receive probe packets sent to that training address from another computer. Various training and probing methods are described that locate intermediate segments, deep switches, switch interconnections, and edge and singleton cases. In one implementation, a master computer coordinates the other computers (and devices) in the network to send the training and probing packets, and report on received packets, in order to determine the network topology.Type: GrantFiled: June 4, 2009Date of Patent: May 13, 2014Assignee: Microsoft CorporationInventors: Richard Black, Austin Donnelly, Cedric Fournet
-
Patent number: 8499222Abstract: Supporting distributed key-based processes is described. In an embodiment, servers at a data center provide a key-based process for carrying out computationally expensive tasks and are connected using point to point connections in a geometric topology such as a torus. In an example, aggregation trees are built on top of the geometric topology of the data center, each aggregation tree being a sequence of servers in the data center that forms a tree structure. In an embodiment packets of data are sent from the leaves of the trees to the root and at each server along the tree the packets are aggregated using a combiner function of the key-based process. In an embodiment, if a server fails, the trees are dynamically recomputed and a recovery phase is triggered to resend any packets lost at the failed server. In some embodiments, packets are scheduled by inspecting the content of the packets.Type: GrantFiled: December 14, 2010Date of Patent: July 30, 2013Assignee: Microsoft CorporationInventors: Antony Rowstron, Paolo Costa, Gregory Francis O'Shea, Austin Donnelly
-
Patent number: 8375141Abstract: Methods of querying a large number of endsystems are described in which metadata is replicated between endsystems. When a query is injected, an available endsystem receives a message relating to the query which identifies a range of endsystems for which that available endsystem is responsible. The available endsystem then generates completeness data for the range of endsystems based on data stored at the endsystem and this completeness data is transmitted to the sender of the message. The methods may be implemented using device-executable instructions which may be stored on device readable media.Type: GrantFiled: September 29, 2006Date of Patent: February 12, 2013Assignee: Microsoft CorporationInventors: Antony Rowstron, Richard Mortier, Austin Donnelly, Dushyanth Narayanan
-
Patent number: 8370672Abstract: Methods for reducing the power consumption of distributed storage systems are described. An embodiment describes a storage system which is adapted to reduce its power consumption at times of low load by reducing the number of active versions of the stored data. The data to be stored in the storage system is divided into chunks and in an example, each chunk is replicated on a number of different servers. At times of low load, the system enters a mode of operation in which the number of active replicas is reduced and servers that do not store any active replicas are put into a low power state. When in this mode, writes are written to a versioned store and the data is subsequently copied to servers storing replicas once all the servers have returned to normal power state.Type: GrantFiled: February 26, 2010Date of Patent: February 5, 2013Assignee: Microsoft CorporationInventors: Eno Thereska, Austin Donnelly, Dushyanth Naraynanan
-
Patent number: 8352797Abstract: Software fault isolation methods using byte-granularity memory protection are described. In an embodiment, untrusted drivers or other extensions to a software system are run in a separate domain from the host portion of the software system, but share the same address space as the host portion. Calls between domains are mediated using an interposition library and access control data is maintained for substantially each byte of relevant virtual address space. Instrumentation added to the untrusted extension at compile-time, before load-time, or at runtime and added by the interposition library enforces the isolation between domains, for example by adding access right checks before any writes or indirect calls and by redirecting function calls to call wrappers in the interposition library. The instrumentation also updates the access control data to grant and revoke access rights on a fine granularity according to the semantics of the operation being invoked.Type: GrantFiled: December 8, 2009Date of Patent: January 8, 2013Assignee: Microsoft CorporationInventors: Richard John Black, Paul Barham, Manuel Costa, Marcus Peinado, Jean-Philippe Martin, Periklis Akritidis, Austin Donnelly, Miguel Castro
-
Patent number: 8307071Abstract: Location of a communication network subscriber is determined employing confidence metrics such as remote vs. local computer usage, primary user in a multi-user computing environment, likelihood of forgery, and comparable ones. A fine-grained location determination is then made based on the metric results and directory information for the particular subscriber such that services like emergency services can be provided with accurate location information.Type: GrantFiled: January 15, 2010Date of Patent: November 6, 2012Assignee: Microsoft CorporationInventors: Austin Donnelly, Bernard Aboba, Roy Kuntz, Gabriel Montenegro, Noor-E-Gagan Singh, Tim Moore
-
Publication number: 20120158998Abstract: An application programming interface (API) supporting server and key based networking is described. In an embodiment, the API receives either a key or a server address from a service running on a server in a direct-connect topology and returns data which identifies suitable next hops for transmission of a packet of data which has a destination of the received server address or of a server address which is encoded within the received key. In another embodiment, the key also encodes information specifying alternative server addresses for use in the event that the original server is unreachable. This information may also be used to define servers for replication of the key. A further embodiment describes a method of queuing packets for transmission against multiple links, where the packet is transmitted on the first available link and at this time is removed from the queues for the other links.Type: ApplicationFiled: December 15, 2010Publication date: June 21, 2012Applicant: Microsoft CorporationInventors: Gregory O'Shea, Austin Donnelly, Antony Rowstron, Paolo Costa
-
Publication number: 20120151292Abstract: Supporting distributed key-based processes is described. In an embodiment, servers at a data center provide a key-based process for carrying out computationally expensive tasks and are connected using point to point connections in a geometric topology such as a torus. In an example, aggregation trees are built on top of the geometric topology of the data center, each aggregation tree being a sequence of servers in the data center that forms a tree structure. In an embodiment packets of data are sent from the leaves of the trees to the root and at each server along the tree the packets are aggregated using a combiner function of the key-based process. In an embodiment, if a server fails, the trees are dynamically recomputed and a recovery phase is triggered to resend any packets lost at the failed server. In some embodiments, packets are scheduled by inspecting the content of the packets.Type: ApplicationFiled: December 14, 2010Publication date: June 14, 2012Applicant: Microsoft CorporationInventors: Antony Rowstron, Paolo Costa, Gregory Francis O'Shea, Austin Donnelly
-
Patent number: 8074014Abstract: Improved storage systems which use write off-loading are described. When a request to store some data in a particular storage location is received, if the particular storage location is unavailable, the data is stored in an alternative location. In an embodiment, the particular storage location may be unavailable because it is powered down or because it is overloaded. The data stored in the alternative location may be subsequently recovered and written to the particular storage location once it becomes available.Type: GrantFiled: March 31, 2008Date of Patent: December 6, 2011Assignee: Microsoft CorporationInventors: Dushyanth Narayanan, Austin Donnelly, Antony Rowstron, Sameh Elnikety, Eno Thereska
-
Publication number: 20110213994Abstract: Methods for reducing the power consumption of distributed storage systems are described. An embodiment describes a storage system which is adapted to reduce its power consumption at times of low load by reducing the number of active versions of the stored data. The data to be stored in the storage system is divided into chunks and in an example, each chunk is replicated on a number of different servers. At times of low load, the system enters a mode of operation in which the number of active replicas is reduced and servers that do not store any active replicas are put into a low power state. When in this mode, writes are written to a versioned store and the data is subsequently copied to servers storing replicas once all the servers have returned to normal power state.Type: ApplicationFiled: February 26, 2010Publication date: September 1, 2011Applicant: Microsoft CorporationInventors: Eno Thereska, Austin Donnelly, Dushyanth Naraynanan
-
Publication number: 20110179158Abstract: Location of a communication network subscriber is determined employing confidence metrics such as remote vs. local computer usage, primary user in a multi-user computing environment, likelihood of forgery, and comparable ones. A fine-grained location determination is then made based on the metric results and directory information for the particular subscriber such that services like emergency services can be provided with accurate location information.Type: ApplicationFiled: January 15, 2010Publication date: July 21, 2011Applicant: Microsoft CorporationInventors: Austin Donnelly, Bernard Aboba, Roy Kuntz, Gabriel Montenegro, Noor-E-Gagan Singh, Tim Moore
-
Publication number: 20110138476Abstract: Software fault isolation methods using byte-granularity memory protection are described. In an embodiment, untrusted drivers or other extensions to a software system are run in a separate domain from the host portion of the software system, but share the same address space as the host portion. Calls between domains are mediated using an interposition library and access control data is maintained for substantially each byte of relevant virtual address space. Instrumentation added to the untrusted extension at compile-time, before load-time, or at runtime and added by the interposition library enforces the isolation between domains, for example by adding access right checks before any writes or indirect calls and by redirecting function calls to call wrappers in the interposition library. The instrumentation also updates the access control data to grant and revoke access rights on a fine granularity according to the semantics of the operation being invoked.Type: ApplicationFiled: December 8, 2009Publication date: June 9, 2011Applicant: Microsoft CorporationInventors: Richard John Black, Paul Barham, Manuel Costa, Marcus Peinado, Jean-Philippe Martin, Periklis Akritidis, Austin Donnelly, Miguel Castro