Patents by Inventor Somesh Chaturmohta
Somesh Chaturmohta 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).
-
Publication number: 20240163205Abstract: Failover functionality is by identifying at least two network paths for a media communications session between a virtual machine at a computing environment and a client application. Unique Internet Protocol (IP) addresses are assigned for the at least two network paths. Based on application and network metrics at the computing environment, a network condition at the computing environment is determined that is indicative of a performance degradation of the media communications session. A signal is communicated to the client service indicating a switch to a second path of the at least two network paths and a second of the unique IP addresses.Type: ApplicationFiled: January 25, 2024Publication date: May 16, 2024Inventors: Irena ATOV, Somesh CHATURMOHTA, Rui LIANG
-
Patent number: 11924089Abstract: Failover functionality is by identifying at least two network paths for a media communications session between a virtual machine at a computing environment and a client application. Unique Internet Protocol (IP) addresses are assigned for the at least two network paths. Based on application and network metrics at the computing environment, a network condition at the computing environment is determined that is indicative of a performance degradation of the media communications session. A signal is communicated to the client service indicating a switch to a second path of the at least two network paths and a second of the unique IP addresses.Type: GrantFiled: January 31, 2022Date of Patent: March 5, 2024Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Irena Atov, Somesh Chaturmohta, Rui Liang
-
Patent number: 11907749Abstract: Techniques are disclosed for implementing direct memory access in a virtualized computing environment. A memory access policy of the virtualized computing environment is applied to a direct memory access connection request received from a first virtual machine via an exception path. The request is flagged to indicate that the request has been processed and the request is forwarded to a network interface device configured to execute offloaded network functions for one or more virtual machines. A memory access policy of the virtualized computing environment is applied to a direct memory access connection reply received from a second virtual machine on the exception path. The reply is flagged to indicate that the reply has been processed and the reply is forwarded to the network interface device. A direct memory access connection is established between first and second virtual machines in accordance with the request.Type: GrantFiled: May 16, 2022Date of Patent: February 20, 2024Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Alec Kochevar-Cureton, Somesh Chaturmohta, Norman C. Lam, Sambhrama Madhusudhan Mundkur, Daniel M. Firestone
-
Publication number: 20240039851Abstract: The present application relates to a system for ingress traffic management. The system includes a collection system within a network configured to collect traffic arrival information for peering links of the network. The system includes a training system configured to train a model based on the traffic arrival information to predict a probability of a traffic flow arriving on a peering link. The system includes a congestion mitigation system configured to predict based on the model, for traffic flows arriving on one or more peering links, other peering links to which the traffic flows would be shifted due to a condition affecting the one or more peering links. The congestion mitigation system may determine, in response to the condition, a set of prefixes to withdraw based on the other peering links to which traffic would be shifted.Type: ApplicationFiled: July 28, 2022Publication date: February 1, 2024Inventors: Rodrigo FONSECA, Sharad AGARWAL, Ryan Andrew BECKETT, Michael MARKOVITCH, Somesh CHATURMOHTA, Chuanji ZHANG, Irena ATOV
-
Publication number: 20230246953Abstract: Failover functionality is by identifying at least two network paths for a media communications session between a virtual machine at a computing environment and a client application. Unique Internet Protocol (IP) addresses are assigned for the at least two network paths. Based on application and network metrics at the computing environment, a network condition at the computing environment is determined that is indicative of a performance degradation of the media communications session. A signal is communicated to the client service indicating a switch to a second path of the at least two network paths and a second of the unique IP addresses.Type: ApplicationFiled: January 31, 2022Publication date: August 3, 2023Inventors: Irena ATOV, Somesh CHATURMOHTA, Rui LIANG
-
Publication number: 20220276891Abstract: Techniques are disclosed for implementing direct memory access in a virtualized computing environment. A memory access policy of the virtualized computing environment is applied to a direct memory access connection request received from a first virtual machine via an exception path. The request is flagged to indicate that the request has been processed and the request is forwarded to a network interface device configured to execute offloaded network functions for one or more virtual machines. A memory access policy of the virtualized computing environment is applied to a direct memory access connection reply received from a second virtual machine on the exception path. The reply is flagged to indicate that the reply has been processed and the reply is forwarded to the network interface device. A direct memory access connection is established between first and second virtual machines in accordance with the request.Type: ApplicationFiled: May 16, 2022Publication date: September 1, 2022Inventors: Alec KOCHEVAR-CURETON, Somesh CHATURMOHTA, Norman C. LAM, Sambhrama Madhusudhan MUNDKUR, Daniel M. FIRESTONE
-
Patent number: 11418429Abstract: A route anomaly detection and remediation system analyzes a prefix for each route received to validate the route. A route monitoring component provides a centralized querying system for all routers from all devices to study routing history. A route collection component receives and stores all routes from multiple routers at a server. A set of microservice analysis components performs prefix analysis on each received route. Each microservice analysis component analyzes one or more portions of the prefix for each route to detect hijacked routes, leaked routes, withdrawn routes and/or other unhealthy routes before the routes are utilized for routing traffic on the network. The analysis performs new prefix validation and identifies healthy routes. Alerts identifying invalid routes are transmitted to an incident management system. Healthy routes are approved for usage by routers on the network to prevent network outages while improving network reliability, availability and stability.Type: GrantFiled: March 25, 2020Date of Patent: August 16, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Somesh Chaturmohta, Gary R. Ratterree, Alireza Khoshgoftarmonfared, Venkata Praneeth Naidu Sanapathi, Gaurav Thareja, Mark A. Kasten, Scott W. Hanberg
-
Patent number: 11360800Abstract: Techniques are disclosed for implementing direct memory access in a virtualized computing environment. A memory access policy of the virtualized computing environment is applied to a direct memory access connection request received from a first virtual machine via an exception path. The request is flagged to indicate that the request has been processed and the request is forwarded to a network interface device configured to execute offloaded network functions for one or more virtual machines. A memory access policy of the virtualized computing environment is applied to a direct memory access connection reply received from a second virtual machine on the exception path. The reply is flagged to indicate that the reply has been processed and the reply is forwarded to the network interface device. A direct memory access connection is established between first and second virtual machines in accordance with the request.Type: GrantFiled: October 5, 2020Date of Patent: June 14, 2022Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Alec Kochevar-Cureton, Somesh Chaturmohta, Norman C. Lam, Sambhrama Madhusudhan Mundkur, Daniel M. Firestone
-
Publication number: 20210135982Abstract: A route anomaly detection and remediation system analyzes a prefix for each route received to validate the route. A route monitoring component provides a centralized querying system for all routers from all devices to study routing history. A route collection component receives and stores all routes from multiple routers at a server. A set of microservice analysis components performs prefix analysis on each received route. Each microservice analysis component analyzes one or more portions of the prefix for each route to detect hijacked routes, leaked routes, withdrawn routes and/or other unhealthy routes before the routes are utilized for routing traffic on the network. The analysis performs new prefix validation and identifies healthy routes. Alerts identifying invalid routes are transmitted to an incident management system. Healthy routes are approved for usage by routers on the network to prevent network outages while improving network reliability, availability and stability.Type: ApplicationFiled: March 25, 2020Publication date: May 6, 2021Inventors: Somesh CHATURMOHTA, Gary R. RATTERREE, Alireza KHOSHGOFTARMONFARED, Venkata Praneeth Naidu SANAPATHI, Gaurav THAREJA, Mark A. KASTEN, Scott W. HANBERG
-
Patent number: 10949379Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a method includes receiving, from a computing network, a packet at a packet processor of a server. The method also includes matching the received packet with a flow in a flow table contained in the packet processor and determining whether the action indicates that the received packet is to be forwarded to a NIC buffer in the outbound processing path of the packet processor instead of the NIC. The method further includes in response to determining that the action indicates that the received packet is to be forwarded to the NIC buffer, forwarding the received packet to the NIC buffer and processing the packet in the NIC buffer to forward the packet to the computer network without exposing the packet to the main processor.Type: GrantFiled: February 27, 2020Date of Patent: March 16, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone, Alec Kochevar-Cureton
-
Publication number: 20210034406Abstract: Techniques are disclosed for implementing direct memory access in a virtualized computing environment. A memory access policy of the virtualized computing environment is applied to a direct memory access connection request received from a first virtual machine via an exception path. The request is flagged to indicate that the request has been processed and the request is forwarded to a network interface device configured to execute offloaded network functions for one or more virtual machines. A memory access policy of the virtualized computing environment is applied to a direct memory access connection reply received from a second virtual machine on the exception path. The reply is flagged to indicate that the reply has been processed and the reply is forwarded to the network interface device. A direct memory access connection is established between first and second virtual machines in accordance with the request.Type: ApplicationFiled: October 5, 2020Publication date: February 4, 2021Inventors: Alec KOCHEVAR-CURETON, Somesh CHATURMOHTA, Norman C. LAM, Sambhrama Madhusudhan MUNDKUR, Daniel M. FIRESTONE
-
Patent number: 10831523Abstract: Techniques are disclosed for implementing direct memory access in a virtualized computing environment. A memory access policy of the virtualized computing environment is applied to a direct memory access connection request received from a first virtual machine via an exception path. The request is flagged to indicate that the request has been processed and the request is forwarded to a network interface device configured to execute offloaded network functions for one or more virtual machines. A memory access policy of the virtualized computing environment is applied to a direct memory access connection reply received from a second virtual machine on the exception path. The reply is flagged to indicate that the reply has been processed and the reply is forwarded to the network interface device. A direct memory access connection is established between first and second virtual machines in accordance with the request.Type: GrantFiled: October 8, 2018Date of Patent: November 10, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Alec Kochevar-Cureton, Somesh Chaturmohta, Norman C. Lam, Sambhrama Madhusudhan Mundkur, Daniel M. Firestone
-
Patent number: 10789199Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a computing device includes a field programmable gate array (“FPGA”) that includes an inbound processing path and outbound processing path in opposite processing directions. The inbound processing path can forward a packet received from the computer network to a buffer on the FPGA instead of the NIC. The outbound processing path includes an outbound multiplexer having a rate limiter circuit that only forwards the received packet from the buffer back to the computer network when a virtual port corresponding to the packet has sufficient transmission allowance. The outbound multiplexer can also periodically increment the transmission allowance based on a target bandwidth for the virtual port.Type: GrantFiled: February 28, 2018Date of Patent: September 29, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone
-
Publication number: 20200265005Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a method includes receiving, from a computing network, a packet at a packet processor of a server. The method also includes matching the received packet with a flow in a flow table contained in the packet processor and determining whether the action indicates that the received packet is to be forwarded to a NIC buffer in the outbound processing path of the packet processor instead of the NIC. The method further includes in response to determining that the action indicates that the received packet is to be forwarded to the NIC buffer, forwarding the received packet to the NIC buffer and processing the packet in the NIC buffer to forward the packet to the computer network without exposing the packet to the main processor.Type: ApplicationFiled: February 27, 2020Publication date: August 20, 2020Inventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone, Alec Kochevar-Cureton
-
Publication number: 20200110626Abstract: Techniques are disclosed for implementing direct memory access in a virtualized computing environment. A memory access policy of the virtualized computing environment is applied to a direct memory access connection request received from a first virtual machine via an exception path. The request is flagged to indicate that the request has been processed and the request is forwarded to a network interface device configured to execute offloaded network functions for one or more virtual machines. A memory access policy of the virtualized computing environment is applied to a direct memory access connection reply received from a second virtual machine on the exception path. The reply is flagged to indicate that the reply has been processed and the reply is forwarded to the network interface device. A direct memory access connection is established between first and second virtual machines in accordance with the request.Type: ApplicationFiled: October 8, 2018Publication date: April 9, 2020Inventors: Alec KOCHEVAR-CURETON, Somesh CHATURMOHTA, Norman C. LAM, Sambhrama Madhusudhan MUNDKUR, Daniel M. FIRESTONE
-
Patent number: 10614028Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a method includes receiving, from a computing network, a packet at a packet processor of a server. The method also includes matching the received packet with a flow in a flow table contained in the packet processor and determining whether the action indicates that the received packet is to be forwarded to a NIC buffer in the outbound processing path of the packet processor instead of the NIC. The method further includes in response to determining that the action indicates that the received packet is to be forwarded to the NIC buffer, forwarding the received packet to the NIC buffer and processing the packet in the NIC buffer to forward the packet to the computer network without exposing the packet to the main processor.Type: GrantFiled: November 28, 2017Date of Patent: April 7, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone
-
Patent number: 10437775Abstract: Distributed computing systems, devices, and associated methods of remote direct memory access (“RDMA”) packet routing are disclosed herein. In one embodiment, a server includes a main processor, a network interface card (“NIC”), and a field programmable gate array (“FPGA”) operatively coupled to the main processor via the NIC. The FPGA includes an inbound processing path having an inbound packet buffer configured to receive an inbound packet from the computer network, a NIC buffer, and a multiplexer between the inbound packet buffer and the NIC, and between the NIC buffer and the NIC. The FPGA also includes an outbound processing path having an outbound action circuit having an input to receive the outbound packet from the NIC, a first output to the computer network, and a second output to the NIC buffer in the inbound processing path.Type: GrantFiled: November 28, 2017Date of Patent: October 8, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Alec Kochevar-Cureton, Somesh Chaturmohta, Norman Lam, Sambhrama Mundkur, Daniel Firestone
-
Publication number: 20190079897Abstract: Distributed computing systems, devices, and associated methods of remote direct memory access (“RDMA”) packet routing are disclosed herein. In one embodiment, a server includes a main processor, a network interface card (“NIC”), and a field programmable gate array (“FPGA”) operatively coupled to the main processor via the NIC. The FPGA includes an inbound processing path having an inbound packet buffer configured to receive an inbound packet from the computer network, a NIC buffer, and a multiplexer between the inbound packet buffer and the NIC, and between the NIC buffer and the NIC. The FPGA also includes an outbound processing path having an outbound action circuit having an input to receive the outbound packet from the NIC, a first output to the computer network, and a second output to the NIC buffer in the inbound processing path.Type: ApplicationFiled: November 28, 2017Publication date: March 14, 2019Inventors: Alec Kochevar-Cureton, Somesh Chaturmohta, Norman Lam, Sambhrama Mundkur, Daniel Firestone
-
Publication number: 20190081891Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a method includes receiving, from a computing network, a packet at a packet processor of a server. The method also includes matching the received packet with a flow in a flow table contained in the packet processor and determining whether the action indicates that the received packet is to be forwarded to a NIC buffer in the outbound processing path of the packet processor instead of the NIC. The method further includes in response to determining that the action indicates that the received packet is to be forwarded to the NIC buffer, forwarding the received packet to the NIC buffer and processing the packet in the NIC buffer to forward the packet to the computer network without exposing the packet to the main processor.Type: ApplicationFiled: November 28, 2017Publication date: March 14, 2019Inventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone
-
Publication number: 20190081899Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a computing device includes a field programmable gate array (“FPGA”) that includes an inbound processing path and outbound processing path in opposite processing directions. The inbound processing path can forward a packet received from the computer network to a buffer on the FPGA instead of the NIC. The outbound processing path includes an outbound multiplexer having a rate limiter circuit that only forwards the received packet from the buffer back to the computer network when a virtual port corresponding to the packet has sufficient transmission allowance. The outbound multiplexer can also periodically increment the transmission allowance based on a target bandwidth for the virtual port.Type: ApplicationFiled: February 28, 2018Publication date: March 14, 2019Inventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone