-
公开(公告)号:US11924089B2
公开(公告)日:2024-03-05
申请号:US17589883
申请日:2022-01-31
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
Inventor: Irena Atov , Somesh Chaturmohta , Rui Liang
IPC: H04L45/30 , H04L45/00 , H04L45/302 , H04L45/74 , H04L61/5007
CPC classification number: H04L45/306 , H04L45/22 , H04L45/74 , H04L61/5007
Abstract: 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.
-
公开(公告)号:US10831523B2
公开(公告)日:2020-11-10
申请号:US16154363
申请日:2018-10-08
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
Inventor: Alec Kochevar-Cureton , Somesh Chaturmohta , Norman C. Lam , Sambhrama Madhusudhan Mundkur , Daniel M. Firestone
IPC: G06F9/46 , G06F9/455 , G06F15/173 , H04L12/46
Abstract: 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.
-
公开(公告)号:US11418429B2
公开(公告)日:2022-08-16
申请号:US16830082
申请日:2020-03-25
Applicant: Microsoft Technology Licensing, LLC
Inventor: Somesh Chaturmohta , Gary R. Ratterree , Alireza Khoshgoftarmonfared , Venkata Praneeth Naidu Sanapathi , Gaurav Thareja , Mark A. Kasten , Scott W. Hanberg
Abstract: 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.
-
公开(公告)号:US10437775B2
公开(公告)日:2019-10-08
申请号:US15824925
申请日:2017-11-28
Applicant: Microsoft Technology Licensing, LLC
Inventor: Alec Kochevar-Cureton , Somesh Chaturmohta , Norman Lam , Sambhrama Mundkur , Daniel Firestone
IPC: G06F15/167 , G06F15/173 , H04L29/06 , G06F9/455 , H04L12/801 , H04L12/911 , H04L12/935 , H04L12/861 , H04L12/707 , H04L12/721 , H04L12/717 , H04L12/741 , G06F15/76 , H04L12/813 , H04L12/931 , H04L29/08
Abstract: 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.
-
公开(公告)号:US11907749B2
公开(公告)日:2024-02-20
申请号:US17745692
申请日:2022-05-16
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
Inventor: Alec Kochevar-Cureton , Somesh Chaturmohta , Norman C. Lam , Sambhrama Madhusudhan Mundkur , Daniel M. Firestone
IPC: G06F9/46 , G06F9/455 , G06F15/173 , H04L12/46
CPC classification number: G06F9/45558 , G06F15/17331 , H04L12/4645 , G06F2009/45583 , G06F2009/45595
Abstract: 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.
-
公开(公告)号:US20190081899A1
公开(公告)日:2019-03-14
申请号:US15907546
申请日:2018-02-28
Applicant: Microsoft Technology Licensing, LLC
Inventor: Sambhrama Mundkur , Fengfen Liu , Norman Lam , Andrew Putnam , Somesh Chaturmohta , Daniel Firestone
IPC: H04L12/801 , H04L12/861 , H04L12/935 , H04L12/911
Abstract: 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.
-
公开(公告)号:US20190079897A1
公开(公告)日:2019-03-14
申请号:US15824925
申请日:2017-11-28
Applicant: Microsoft Technology Licensing, LLC
Inventor: Alec Kochevar-Cureton , Somesh Chaturmohta , Norman Lam , Sambhrama Mundkur , Daniel Firestone
IPC: G06F15/173 , H04L29/06 , G06F9/455
Abstract: 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.
-
公开(公告)号:US11360800B2
公开(公告)日:2022-06-14
申请号:US17063662
申请日:2020-10-05
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
Inventor: Alec Kochevar-Cureton , Somesh Chaturmohta , Norman C. Lam , Sambhrama Madhusudhan Mundkur , Daniel M. Firestone
IPC: G06F9/46 , G06F9/455 , G06F15/173 , H04L12/46
Abstract: 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.
-
公开(公告)号:US10949379B2
公开(公告)日:2021-03-16
申请号:US16802992
申请日:2020-02-27
Applicant: Microsoft Technology Licensing, LLC
Inventor: Sambhrama Mundkur , Fengfen Liu , Norman Lam , Andrew Putnam , Somesh Chaturmohta , Daniel Firestone , Alec Kochevar-Cureton
IPC: G06F15/173 , H04L29/06 , G06F9/455 , G06F15/76 , H04L12/813 , H04L12/801 , H04L12/935 , H04L12/931 , H04L12/46 , H04L12/911 , H04L12/861 , H04L12/707 , H04L12/721 , H04L12/717 , H04L12/741 , H04L29/08
Abstract: 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.
-
公开(公告)号:US10789199B2
公开(公告)日:2020-09-29
申请号:US15907546
申请日:2018-02-28
Applicant: Microsoft Technology Licensing, LLC
Inventor: Sambhrama Mundkur , Fengfen Liu , Norman Lam , Andrew Putnam , Somesh Chaturmohta , Daniel Firestone
IPC: H04L12/801 , G06F15/173 , H04L29/06 , G06F9/455 , G06F15/76 , H04L12/813 , H04L12/935 , H04L12/931 , H04L12/46 , H04L12/911 , H04L12/861 , H04L12/707 , H04L12/721 , H04L12/717 , H04L12/741 , H04L29/08
Abstract: 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.
-
-
-
-
-
-
-
-
-