Patents by Inventor Milan DASGUPTA
Milan DASGUPTA 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: 11888725Abstract: Described herein are systems and methods for supporting multicast for virtual networks. In some embodiments, a native multicast approach can utilized in which packet replication is performed on a host node of a virtual machine (VM) with a multicast data packet encapsulated in uniquely address unicast packets. In some embodiments, a network virtual appliance can be utilized. A multicast packet sent from the VM can be unicasted to the network virtual appliance. The multicast appliance can then replicate the packet into multiple copies and send the packets to the receivers in the virtual network as unicast data packets encapsulating the multicast packet.Type: GrantFiled: October 21, 2021Date of Patent: January 30, 2024Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Harish Kumar Chandrappa, Adarsh Kirnelli Rangaiah, Milan Dasgupta, Daniel Max Firestone, Michal Czeslaw Zygmunt, Xinyan Zan, Rishabh Tewari, Eric Lawrence Albert Lantz, Deepak Bansal, Young Lee
-
Patent number: 11561812Abstract: Described herein is a system and method for flow state save/restore of a virtual filtering platform. A first instance of a driver manages policy and flow state for ongoing flows between client device(s) and virtual machine(s). The virtual filtering platform is transitioned from the first instance of a driver to a second instance of the driver by serializing the policy and state for the ongoing flows on the first instance of the driver using a one pass algorithm. The serialized policy and state for the ongoing flows can be de-serialized with the ongoing flows re-established and/or reconciled on the second instance of the driver in accordance with the de-serialized policy and state for the plurality of ongoing flows. In some embodiments, a memory management technique can use a single operating system memory allocation call to allocate memory for the transition, with the technique managing utilization of the allocation memory.Type: GrantFiled: May 17, 2021Date of Patent: January 24, 2023Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Harish Kumar Chandrappa, Milan Dasgupta, Daniel Max Firestone
-
Publication number: 20220150156Abstract: Described herein are systems and methods for supporting multicast for virtual networks. In some embodiments, a native multicast approach can utilized in which packet replication is performed on a host node of a virtual machine (VM) with a multicast data packet encapsulated in uniquely address unicast packets. In some embodiments, a network virtual appliance can be utilized. A multicast packet sent from the VM can be unicasted to the network virtual appliance. The multicast appliance can then replicate the packet into multiple copies and send the packets to the receivers in the virtual network as unicast data packets encapsulating the multicast packet.Type: ApplicationFiled: October 21, 2021Publication date: May 12, 2022Inventors: Harish Kumar CHANDRAPPA, Adarsh Kirnelli RANGAIAH, Milan DASGUPTA, Daniel Max FIRESTONE, Michal Czeslaw ZYGMUNT, Xinyan ZAN, Rishabh TEWARI, Eric Lawrence Albert LANTZ, Deepak BANSAL, Young LEE
-
Patent number: 11252096Abstract: Described herein is a system and method for managing network flow state for ongoing flows (connectionless protocol flows and connection-based protocol flows) between client device(s) and a virtual machine using a flow collection data structure (e.g. hash table) having a predefined maximum quantity of ongoing flows that can be managed. When it is determined that the flow collection data structure is managing greater than an acceptable threshold of connectionless protocol flows, at a dynamically adjustable frequency, flow state for more connectionless protocol flow(s) having an unexpired time-to-live are expired. The frequency can be adjusted based upon a rate at which new flows are being created and/or a rate at which flows are being deleted. Also described herein is a system and method in which, at a particular frequency, only a portion of the flows in the flow collection data structure are evaluated in order to minimize impact on packet processing.Type: GrantFiled: June 20, 2019Date of Patent: February 15, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Harish Kumar Chandrappa, Milan Dasgupta, Daniel Max Firestone, Adarsh Kirnelli Rangaiah
-
Publication number: 20210373923Abstract: Described herein is a system and method for flow state save/restore of a virtual filtering platform. A first instance of a driver manages policy and flow state for ongoing flows between client device(s) and virtual machine(s). The virtual filtering platform is transitioned from the first instance of a driver to a second instance of the driver by serializing the policy and state for the ongoing flows on the first instance of the driver using a one pass algorithm. The serialized policy and state for the ongoing flows can be de-serialized with the ongoing flows re-established and/or reconciled on the second instance of the driver in accordance with the de-serialized policy and state for the plurality of ongoing flows. In some embodiments, a memory management technique can use a single operating system memory allocation call to allocate memory for the transition, with the technique managing utilization of the allocation memory.Type: ApplicationFiled: May 17, 2021Publication date: December 2, 2021Applicant: Microsoft Technology Licensing, LLCInventors: Harish Kumar Chandrappa, Milan Dasgupta, Daniel Max Firestone
-
Patent number: 11184274Abstract: Described herein are systems and methods for supporting multicast for virtual networks. In some embodiments, a native multicast approach can utilized in which packet replication is performed on a host node of a virtual machine (VM) with a multicast data packet encapsulated in uniquely address unicast packets. In some embodiments, a network virtual appliance can be utilized. A multicast packet sent from the VM can be unicasted to the network virtual appliance. The multicast appliance can then replicate the packet into multiple copies and send the packets to the receivers in the virtual network as unicast data packets encapsulating the multicast packet.Type: GrantFiled: May 31, 2019Date of Patent: November 23, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Harish Kumar Chandrappa, Adarsh Kirnelli Rangaiah, Milan Dasgupta, Daniel Max Firestone, Michal Czeslaw Zygmunt, Xinyan Zan, Rishabh Tewari, Eric Lawrence Albert Lantz, Deepak Bansal, Young Lee
-
Patent number: 11102079Abstract: Virtual networks located in different regions of cloud provider are peered using unique regional identifiers for the virtual networks. The regional identifiers and other information are pushed down a network management stack to implement the peering.Type: GrantFiled: April 17, 2018Date of Patent: August 24, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Anavi Arun Nahar, David M. Brumley, Harish Kumar Chandrappa, Neeraj Motwani, Nisheeth Srivastava, Rishabh Tewari, Vaibhav Kumar, Vishal Taneja, Vladimir Serov, Xinyan Zan, Deepak Bansal, Narayan Annamalai, Milan Dasgupta
-
Patent number: 11042392Abstract: Described herein is a system and method for flow state save/restore of a virtual filtering platform. A first instance of a driver manages policy and flow state for ongoing flows between client device(s) and virtual machine(s). The virtual filtering platform is transitioned from the first instance of a driver to a second instance of the driver by serializing the policy and state for the ongoing flows on the first instance of the driver using a one pass algorithm. The serialized policy and state for the ongoing flows can be de-serialized with the ongoing flows re-established and/or reconciled on the second instance of the driver in accordance with the de-serialized policy and state for the plurality of ongoing flows. In some embodiments, a memory management technique can use a single operating system memory allocation call to allocate memory for the transition, with the technique managing utilization of the allocation memory.Type: GrantFiled: June 14, 2019Date of Patent: June 22, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Harish Kumar Chandrappa, Milan Dasgupta, Daniel Max Firestone
-
Publication number: 20200403926Abstract: Described herein is a system and method for managing network flow state for ongoing flows (connectionless protocol flows and connection-based protocol flows) between client device(s) and a virtual machine using a flow collection data structure (e.g. hash table) having a predefined maximum quantity of ongoing flows that can be managed. When it is determined that the flow collection data structure is managing greater than an acceptable threshold of connectionless protocol flows, at a dynamically adjustable frequency, flow state for more connectionless protocol flow(s) having an unexpired time-to-live are expired. The frequency can be adjusted based upon a rate at which new flows are being created and/or a rate at which flows are being deleted. Also described herein is a system and method in which, at a particular frequency, only a portion of the flows in the flow collection data structure are evaluated in order to minimize impact on packet processing.Type: ApplicationFiled: June 20, 2019Publication date: December 24, 2020Applicant: Microsoft Technology Licensing, LLCInventors: Harish Kumar CHANDRAPPA, Milan DASGUPTA, Daniel Max FIRESTONE, Adarsh Kirnelli RANGAIAH
-
Publication number: 20200394060Abstract: Described herein is a system and method for flow state save/restore of a virtual filtering platform. A first instance of a driver manages policy and flow state for ongoing flows between client device(s) and virtual machine(s). The virtual filtering platform is transitioned from the first instance of a driver to a second instance of the driver by serializing the policy and state for the ongoing flows on the first instance of the driver using a one pass algorithm. The serialized policy and state for the ongoing flows can be de-serialized with the ongoing flows re-established and/or reconciled on the second instance of the driver in accordance with the de-serialized policy and state for the plurality of ongoing flows. In some embodiments, a memory management technique can use a single operating system memory allocation call to allocate memory for the transition, with the technique managing utilization of the allocation memory.Type: ApplicationFiled: June 14, 2019Publication date: December 17, 2020Applicant: Microsoft Technology Licensing, LLCInventors: Harish Kumar CHANDRAPPA, Milan DASGUPTA, Daniel Max FIRESTONE
-
Publication number: 20200382412Abstract: Described herein are systems and methods for supporting multicast for virtual networks. In some embodiments, a native multicast approach can utilized in which packet replication is performed on a host node of a virtual machine (VM) with a multicast data packet encapsulated in uniquely address unicast packets. In some embodiments, a network virtual appliance can be utilized. A multicast packet sent from the VM can be unicasted to the network virtual appliance. The multicast appliance can then replicate the packet into multiple copies and send the packets to the receivers in the virtual network as unicast data packets encapsulating the multicast packet.Type: ApplicationFiled: May 31, 2019Publication date: December 3, 2020Applicant: Microsoft Technology Licensing, LLCInventors: Harish Kumar CHANDRAPPA, Adarsh Kirnelli RANGAIAH, Milan DASGUPTA, Daniel Max FIRESTONE, Michal Czeslaw ZYGMUNT, Xinyan ZAN, Rishabh TEWARI, Eric Lawrence Albert LANTZ, Deepak BANSAL, Young LEE
-
Publication number: 20200159556Abstract: Techniques are disclosed for communicating data in a virtualized environment comprising virtual machines executing on one or more computing devices. An underlying physical destination address of a virtual machine executing on a virtual network is changed from a first physical address to a second physical address. A traffic forwarder function is executed on a virtual switch within the virtual network. The traffic forwarder function is executed during a time threshold determined based on a reprogramming time for network devices in the virtualized environment to update the underlying physical destination address. A data packet addressed to the first physical address is by the traffic forwarder function on a network external to the virtual network. A destination address of the data packet is updated from the first physical address to the second physical address. The data packet is forwarded to the updated destination address.Type: ApplicationFiled: November 21, 2018Publication date: May 21, 2020Inventors: Harish Kumar CHANDRAPPA, Vishal TANEJA, Deven JAGASIA, Milan DASGUPTA, Xinyan ZAN, Deepak BANSAL, Daniel FIRESTONE, Michal Czeslaw ZYGMUNT, Rishabh TEWARI
-
Publication number: 20190319847Abstract: Virtual networks located in different regions of cloud provider are peered using unique regional identifiers for the virtual networks. The regional identifiers and other information are pushed down a network management stack to implement the peering.Type: ApplicationFiled: April 17, 2018Publication date: October 17, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Anavi Arun NAHAR, David M. BRUMLEY, Harish Kumar CHANDRAPPA, Neeraj MOTWANI, Nisheeth SRIVASTAVA, Rishabh TEWARI, Vaibhav KUMAR, Vishal TANEJA, Vladimir SEROV, Xinyan ZAN, Deepak BANSAL, Narayan ANNAMALAI, Milan DASGUPTA