The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Jun. 09, 2020
Filed:
Nov. 01, 2018
Vmware, Inc., Palo Alto, CA (US);
Rahul Mishra, Mountain View, CA (US);
Chidambareswaran Raman, Sunnyvale, CA (US);
Abhishek Mishra, Sunnyvale, CA (US);
VMware, Inc., Palo Alto, CA (US);
Abstract
A method for a parallel execution of services of a serial service chain on packets using multicast-based service insertion is disclosed. In an embodiment, the method comprises identifying a plurality of services to be applied to packets of a data flow and determining a plurality of service machines that are configured to provide the plurality of services for the data flow. The plurality of service machines is grouped to a plurality of multicast groups; wherein multicast groups in the plurality of multicast groups are sequentially ordered from a first multicast group that includes a largest count of service machines to a last multicast group that includes a smallest count of service machines. Upon detecting a packet of the data flow, the is stored in memory, and multicast to the first multicast group of the plurality of multicast groups to cause applying, in parallel, services of service machines included in the first multicast group to the packet. Once a plurality of responses is received from service machines that belong to the first multicast group, the plurality of responses is used to determine whether service processing of the packet is completed. In response to determining that service processing of the packet is completed, the packet is disposed according the plurality of responses and without multicasting the packet to any other multicast group of the plurality of multicast groups.