Patents by Inventor Philip A. Thomas
Philip A. Thomas 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: 12294470Abstract: A fabric control protocol (FCP) and packet forwarding mechanisms are described that maximize utilization of bandwidth within massive, large-scale data centers having multi-stage data center switch fabric topologies, such as topologies that include a third switching layer formed by super spine switches. Automatic generation of data plane forwarding information referred to as FCP path information enumerates, for each data processing unit (DPU), the available FCP paths. The FCP path information may be based on unique combinations of peak points of the switch fabric for a given DPU with FCP colors assigned to network links that are used to multi-home the DPU to the switch fabric.Type: GrantFiled: June 24, 2021Date of Patent: May 6, 2025Assignee: Microsoft Technology Licensing, LLCInventors: Yixing Ruan, Deepak Goel, Narendra Jayawant Gathoo, Philip A. Thomas, Srihari Raju Vegesna, Pradeep Sindhu, Wael Noureddine, Robert William Bowdidge, Ayaskant Pani, Gopesh Goyal
-
Patent number: 12261926Abstract: A fabric control protocol is described for use within a data center in which a switch fabric provides full mesh interconnectivity such that any of the servers may communicate packet data for a given packet flow to any other of the servers using any of a number of parallel data paths within the data center switch fabric. The fabric control protocol enables spraying of individual packets for a given packet flow across some or all of the multiple parallel data paths in the data center switch fabric and, optionally, reordering of the packets for delivery to the destination. The fabric control protocol may provide end-to-end bandwidth scaling and flow fairness within a single tunnel based on endpoint-controlled requests and grants for flows. In some examples, the fabric control protocol packet structure is carried over an underlying protocol, such as the User Datagram Protocol (UDP).Type: GrantFiled: November 12, 2021Date of Patent: March 25, 2025Assignee: Microsoft Technology Licensing, LLCInventors: Deepak Goel, Narendra Jayawant Gathoo, Philip A. Thomas, Srihari Raju Vegesna, Pradeep Sindhu, Wael Noureddine, Robert William Bowdidge, Ayaskant Pani, Gopesh Goyal
-
Patent number: 12231353Abstract: A fabric control protocol is described for use within a data center in which a switch fabric provides full mesh interconnectivity such that any of the servers may communicate packet data for a given packet flow to any other of the servers using any of a number of parallel data paths within the data center switch fabric. The fabric control protocol enables spraying of individual packets for a given packet flow across some or all of the multiple parallel data paths in the data center switch fabric and, optionally, reordering of the packets for delivery to the destination. The fabric control protocol may provide end-to-end bandwidth scaling and flow fairness within a single tunnel based on endpoint-controlled requests and grants for flows. In some examples, the fabric control protocol packet structure is carried over an underlying protocol, such as the User Datagram Protocol (UDP).Type: GrantFiled: January 28, 2020Date of Patent: February 18, 2025Assignee: Microsoft Technology Licensing, LLCInventors: Deepak Goel, Narendra Jayawant Gathoo, Philip A Thomas, Srihari Raju Vegesna, Pradeep Sindhu, Wael Noureddine, Robert William Bowdidge, Ayaskant Pani, Gopesh Goyal
-
Patent number: 12143296Abstract: A network system for a data center is described in which an access node sprays a data flow of packets over a logical tunnel to another access node. In one example, a method comprises establishing, by a plurality of access nodes, a logical tunnel over a plurality of data paths across a switch fabric between a source access node and a destination access node included within the plurality of access nodes, wherein the source access node is coupled to a source network device; and spraying, by the source access node, a data flow of packets over the logical tunnel to the destination access node, wherein the source access node receives the data flow of packets from the source network device, and wherein spraying the data flow of packets includes directing each of the packets within the data flow to a least loaded data path.Type: GrantFiled: August 9, 2023Date of Patent: November 12, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Pradeep Sindhu, Deepak Goel, Jean-Marc Frailong, Srihari Raju Vegesna, Wael Noureddine, Philip A. Thomas, Satish Deo, Sunil Mekad, Ayaskant Pani
-
Patent number: 12119950Abstract: This disclosure describes techniques for providing early acknowledgments to a source device performing a data write operation within a data center or across a geographically-distributed data center. In one example, this disclosure describes a method that includes receiving, by a gateway device and from a source device within a local data center, data to be stored at a remote destination device that is located within a remote data center; storing, by the gateway device, the data to high-speed memory included within the gateway device; transmitting, by the gateway device, the data over a connection to the remote data center; after transmitting the data and before the data is stored at the remote destination device, outputting, by the gateway device to the source device, a local acknowledgment, wherein the local acknowledgment indicates to the source device that the data can be assumed to have been stored at the remote destination device.Type: GrantFiled: May 28, 2021Date of Patent: October 15, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Pradeep Sindhu, Jaspal Kohli, Philip A. Thomas
-
Patent number: 12120016Abstract: A network system for a data center. In one example, a method comprises establishing, by a plurality of access nodes, a logical tunnel over a plurality of data paths across a switch fabric between a source access node and a destination access node included within the plurality of access nodes, wherein the source access node is coupled to a source network device; and spraying, by the source access node, a data flow of packets over the logical tunnel to the destination access node, wherein the source access node receives the data flow of packets from the source network device, and wherein spraying the data flow of packets includes directing each of the packets within the data flow to one of the data paths based on an amount of data previously transmitted on each of the plurality of data paths.Type: GrantFiled: February 24, 2023Date of Patent: October 15, 2024Assignee: Microsoft Technology Licensing, LLCInventors: PRadeep Sindhu, Deepak Goel, Jean-Marc Frailong, Srihari Raju Vegesna, Wael Noureddine, Philip A. Thomas, Satish Deo, Sunil Mekad, Ayaskant Pani
-
Publication number: 20240250919Abstract: A fabric control protocol is described for use within a data center in which a switch fabric provides full mesh interconnectivity such that any of the servers may communicate packet data for a given packet flow to any other of the servers using any of a number of parallel data paths within the data center switch fabric. The fabric control protocol enables spraying of individual packets for a given packet flow across some or all of the multiple parallel data paths in the data center switch fabric and, optionally, reordering of the packets for delivery to the destination. The fabric control protocol may provide end-to-end bandwidth scaling and flow fairness within a single tunnel based on endpoint-controlled requests and grants for flows. In some examples, the fabric control protocol packet structure is carried over an underlying protocol, such as the User Datagram Protocol (UDP).Type: ApplicationFiled: March 4, 2024Publication date: July 25, 2024Applicant: Microsoft Technology Licensing, LLCInventors: Deepak Goel, Narendra Jayawant Gathoo, Philip A. Thomas, Srihari Raju Vegesna, Pradeep Sindhu, Wael Noureddine, Robert William Bowdidge, Ayaskant Pani, Gopesh Goyal
-
Publication number: 20240163207Abstract: A network device includes one or more dies, wherein each die, of the one or more dies includes one or more packet forwarding components and a switch fabric component. The switch fabric component of a particular die, of the one or more dies, may be connected to the one or more forwarding components of the particular die, and may be configured to provide a switching plane for the one or more packet forwarding components of the particular die. A first die, of the one or more dies, may be connected to the one or more packet forwarding components of a second die of the one or more dies, and may be configured to provide a switching plane for the one or more packet forwarding components of the second die.Type: ApplicationFiled: November 16, 2022Publication date: May 16, 2024Inventors: Philip A. THOMAS, Wing POON, Ashish KHICHA, Harshad B. AGASHE, Arghajit BASU, Naveen Kumar JAIN
-
Publication number: 20230388222Abstract: A network system for a data center is described in which an access node sprays a data flow of packets over a logical tunnel to another access node. In one example, a method comprises establishing, by a plurality of access nodes, a logical tunnel over a plurality of data paths across a switch fabric between a source access node and a destination access node included within the plurality of access nodes, wherein the source access node is coupled to a source network device; and spraying, by the source access node, a data flow of packets over the logical tunnel to the destination access node, wherein the source access node receives the data flow of packets from the source network device, and wherein spraying the data flow of packets includes directing each of the packets within the data flow to a least loaded data path.Type: ApplicationFiled: August 9, 2023Publication date: November 30, 2023Applicant: Microsoft Technology Licensing, LLCInventors: Pradeep Sindhu, Deepak Goel, Jean-Marc Frailong, Srihari Raju Vegesna, Wael Noureddine, Philip A. Thomas, Satish Deo, Sunil Mekad, Ayaskant Pani
-
Patent number: 11777839Abstract: A network system for a data center is described in which an access node sprays a data flow of packets over a logical tunnel to another access node. In one example, a method comprises establishing, by a plurality of access nodes, a logical tunnel over a plurality of data paths across a switch fabric between a source access node and a destination access node included within the plurality of access nodes, wherein the source access node is coupled to a source network device; and spraying, by the source access node, a data flow of packets over the logical tunnel to the destination access node, wherein the source access node receives the data flow of packets from the source network device, and wherein spraying the data flow of packets includes directing each of the packets within the data flow to a least loaded data path.Type: GrantFiled: June 15, 2020Date of Patent: October 3, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Pradeep Sindhu, Deepak Goel, Jean-Marc Frailong, Srihari Raju Vegesna, Wael Noureddine, Philip A. Thomas, Satish Deo, Sunil Mekad, Ayaskant Pani
-
Publication number: 20230231799Abstract: A network system for a data center. In one example, a method comprises establishing, by a plurality of access nodes, a logical tunnel over a plurality of data paths across a switch fabric between a source access node and a destination access node included within the plurality of access nodes, wherein the source access node is coupled to a source network device; and spraying, by the source access node, a data flow of packets over the logical tunnel to the destination access node, wherein the source access node receives the data flow of packets from the source network device, and wherein spraying the data flow of packets includes directing each of the packets within the data flow to one of the data paths based on an amount of data previously transmitted on each of the plurality of data paths.Type: ApplicationFiled: February 24, 2023Publication date: July 20, 2023Inventors: Pradeep Sindhu, Deepak Goel, Jean-Marc Frailong, Srihari Raju Vegesna, Wael Noureddine, Philip A. Thomas, Satish D Deo, Sunil Mekad, Ayaskant Pani
-
Patent number: 11552907Abstract: A method during a first cycle includes receiving, at a first port of a device, a plurality of network packets. The method may include storing, by the device, at least some portion of a first packet of the plurality of network packets at a first address within a first record bank and storing, by the device and concurrent with storing the at least some portion of the first packet from the first address, at least some portion of a second packet of the plurality of network packets at a second address within a second record bank, different than the first record bank. The method may further include storing, by the device, the first address within the first record bank and the second address within the second record bank in the first link stash associated with the first record bank and updating, by the device, a tail pointer to reference the second address.Type: GrantFiled: August 14, 2020Date of Patent: January 10, 2023Assignee: FUNGIBLE, INC.Inventors: Paul Kim, Philip A. Thomas
-
Patent number: 11412076Abstract: Network access node virtual fabrics configured dynamically over an underlay network are described. A centralized controller, such as a software-defined networking (SDN) controller, of a packet switched network is configured to establish one or more virtual fabrics as overlay networks on top of the physical underlay network of the packet switched network. For example, the SDN controller may define multiple sets of two of more access nodes connected to the packet switched network, and the access nodes of a given one of the sets may use a new data transmission protocol, referred to generally herein as a fabric control protocol (FCP), to dynamically setup tunnels as a virtual fabric over the packet switched network. The FCP tunnels may include all or a subset of the parallel data paths through the packet switched network between the access nodes for a given virtual fabric.Type: GrantFiled: January 21, 2021Date of Patent: August 9, 2022Assignee: FUNGIBLE, INC.Inventors: Deepak Goel, Narendra Jayawant Gathoo, Philip A. Thomas, Srihari Raju Vegesna, Pradeep Sindhu, Wael Noureddine, Robert William Bowdidge, Ayaskant Pani, Gopesh Goyal
-
Patent number: 11405179Abstract: This disclosure describes techniques that include performing cryptographic operations (encryption, decryption, generation of a message authentication code). Such techniques may involve the data processing unit performing any of multiple modes of encryption, decryption, and/or other cryptographic operation procedures or standards, including, Advanced Encryption Standard (AES) cryptographic operations. In some examples, the security block is implemented as a unified, multi-threaded, high-throughput encryption and decryption system for performing multiple modes of AES operations.Type: GrantFiled: March 15, 2021Date of Patent: August 2, 2022Assignee: Fungible, Inc.Inventors: Philip A. Thomas, Rajan Goyal, Eric Scot Swartzendruber
-
Publication number: 20220103661Abstract: A fabric control protocol is described for use within a data center in which a switch fabric provides full mesh interconnectivity such that any of the servers may communicate packet data for a given packet flow to any other of the servers using any of a number of parallel data paths within the data center switch fabric. The fabric control protocol enables spraying of individual packets for a given packet flow across some or all of the multiple parallel data paths in the data center switch fabric and, optionally, reordering of the packets for delivery to the destination. The fabric control protocol may provide end-to-end bandwidth scaling and flow fairness within a single tunnel based on endpoint-controlled requests and grants for flows. In some examples, the fabric control protocol packet structure is carried over an underlying protocol, such as the User Datagram Protocol (UDP).Type: ApplicationFiled: November 12, 2021Publication date: March 31, 2022Inventors: Deepak Goel, Narendra Jayawant Gathoo, Philip A. Thomas, Srihari Raju Vegesna, Pradeep Sindhu, Wael Noureddine, Robert William Bowdidge, Ayaskant Pani, Gopesh Goyal
-
Publication number: 20210320820Abstract: A fabric control protocol (FCP) and packet forwarding mechanisms are described that maximize utilization of bandwidth within massive, large-scale data centers having multi-stage data center switch fabric topologies, such as topologies that include a third switching layer formed by super spine switches. Automatic generation of data plane forwarding information referred to as FCP path information enumerates, for each data processing unit (DPU), the available FCP paths. The FCP path information may be based on unique combinations of peak points of the switch fabric for a given DPU with FCP colors assigned to network links that are used to multi-home the DPU to the switch fabric.Type: ApplicationFiled: June 24, 2021Publication date: October 14, 2021Inventors: Yixing Ruan, Deepak Goel, Narendra Jayawant Gathoo, Philip A. Thomas, Srihari Raju Vegesna, Pradeep Sindhu, Wael Noureddine, Robert William Bowdidge, Ayaskant Pani, Gopesh Goyal
-
Publication number: 20210288830Abstract: This disclosure describes techniques for providing early acknowledgments to a source device performing a data write operation within a data center or across a geographically-distributed data center. In one example, this disclosure describes a method that includes receiving, by a gateway device and from a source device within a local data center, data to be stored at a remote destination device that is located within a remote data center; storing, by the gateway device, the data to high-speed memory included within the gateway device; transmitting, by the gateway device, the data over a connection to the remote data center; after transmitting the data and before the data is stored at the remote destination device, outputting, by the gateway device to the source device, a local acknowledgment, wherein the local acknowledgment indicates to the source device that the data can be assumed to have been stored at the remote destination device.Type: ApplicationFiled: May 28, 2021Publication date: September 16, 2021Inventors: Pradeep Sindhu, Jaspal Kohli, Philip A. Thomas
-
Publication number: 20210281394Abstract: This disclosure describes techniques that include performing cryptographic operations (encryption, decryption, generation of a message authentication code). Such techniques may involve the data processing unit performing any of multiple modes of encryption, decryption, and/or other cryptographic operation procedures or standards, including, Advanced Encryption Standard (AES) cryptographic operations. In some examples, the security block is implemented as a unified, multi-threaded, high-throughput encryption and decryption system for performing multiple modes of AES operations.Type: ApplicationFiled: March 15, 2021Publication date: September 9, 2021Inventors: Philip A. Thomas, Rajan Goyal, Eric Scot Swartzendruber
-
Publication number: 20210176347Abstract: Network access node virtual fabrics configured dynamically over an underlay network are described. A centralized controller, such as a software-defined networking (SDN) controller, of a packet switched network is configured to establish one or more virtual fabrics as overlay networks on top of the physical underlay network of the packet switched network. For example, the SDN controller may define multiple sets of two of more access nodes connected to the packet switched network, and the access nodes of a given one of the sets may use a new data transmission protocol, referred to generally herein as a fabric control protocol (FCP), to dynamically setup tunnels as a virtual fabric over the packet switched network. The FCP tunnels may include all or a subset of the parallel data paths through the packet switched network between the access nodes for a given virtual fabric.Type: ApplicationFiled: January 21, 2021Publication date: June 10, 2021Inventors: Deepak Goel, Narendra Jayawant Gathoo, Philip A. Thomas, Srihari Raju Vegesna, Pradeep Sindhu, Wael Noureddine, Robert William Bowdidge, Ayaskant Pani, Gopesh Goyal
-
Patent number: 11025445Abstract: This disclosure describes techniques for providing early acknowledgments to a source device performing a data write operation within a data center or across a geographically-distributed data center. In one example, this disclosure describes a method that includes receiving, by a gateway device and from a source device within a local data center, data to be stored at a remote destination device that is located within a remote data center; storing, by the gateway device, the data to high-speed memory included within the gateway device; transmitting, by the gateway device, the data over a connection to the remote data center; after transmitting the data and before the data is stored at the remote destination device, outputting, by the gateway device to the source device, a local acknowledgment, wherein the local acknowledgment indicates to the source device that the data can be assumed to have been stored at the remote destination device.Type: GrantFiled: June 7, 2019Date of Patent: June 1, 2021Assignee: Fungible, Inc.Inventors: Pradeep Sindhu, Jaspal Kohli, Philip A. Thomas