US 11,888,736 B2
Service chaining in fabric networks
Prakash C. Jain, Fremont, CA (US); Sanjay Kumar Hooda, Pleasanton, CA (US); Vinay Saini, Bangalore (IN); and Victor Manuel Moreno, Carlsbad, CA (US)
Assigned to Cisco Technology, Inc., San Jose, CA (US)
Filed by Cisco Technology, Inc., San Jose, CA (US)
Filed on Jul. 14, 2021, as Appl. No. 17/375,748.
Prior Publication US 2023/0017053 A1, Jan. 19, 2023
Int. Cl. H04L 45/586 (2022.01); H04L 45/02 (2022.01); H04L 45/302 (2022.01); H04L 45/00 (2022.01); H04L 12/46 (2006.01)
CPC H04L 45/586 (2013.01) [H04L 45/04 (2013.01); H04L 45/306 (2013.01); H04L 45/54 (2013.01); H04L 12/4633 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
storing a first configuration associated with a first virtual routing and forwarding (VRF) instance of a border node that is disposed between an enterprise network domain and an external network domain, the first VRF instance facilitating communications with a first service of a service chain sequence disposed in the external network domain, the first configuration indicating at least an identifier and a type associated with a second service of the service chain sequence where traffic is to be sent after the traffic is received from the first service;
storing a second configuration associated with a second VRF instance of the border node or another border node disposed between the enterprise network domain and another external network domain, the second VRF instance facilitating communications with the second service of the service chain sequence disposed in the other external network domain, the second configuration indicating at least that the second service is a last service of the service chain sequence;
receiving, by the border node via the first VRF instance and from the first service, a packet previously sent to the first service by the border node using the first VRF instance, wherein the packet received from the first service is decapsulated such that a header associated with the enterprise network domain is missing from the packet, the header indicative of a next hop for the packet;
based at least in part on the header indicative of the next hop missing from the packet, sending, by the border node, a map request to a control plane associated with the enterprise network domain, the map request including the identifier and the type associated with the second service of the service chain sequence;
receiving, at the border node and from the control plane, a map reply indicating that the second VRF instance is to be used to send the packet to the second service;
sending, by the border node, the packet to the second VRF instance based at least in part on the map reply;
receiving the packet at the second VRF instance;
sending, by the border node or the other border node and using the second VRF instance, the packet to the second service;
receiving, at the border node or the other border node and via the second VRF instance, the packet from the second service;
determining, by the border node or the other border node and based at least in part on the second configuration, that the second service was the last service of the service chain sequence; and
based at least in part on the second service being the last service of the service chain sequence, forwarding, by the border node or the other border node, the packet to a destination device.