# US 2018/0026933 A1 · Service aware label address resolution protocol switched path instantiation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2018/0026933 A1
- Document ID: US20180026933A1
- Status: Published application
- Kind: A1
- Application number: 15/217,799
- Filed: 2016-07-22
- Published: 2018-01-25
- Earliest claimed: 2016-07-22
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Rajiv Asati; Nagendra Kumar Nainar
- Web page: https://patentgrep.com/patent/US20180026933A1

## CPC

- H04L 61/103: across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
- H04L 45/12: Shortest path evaluation
- H04L 45/50: using label swapping, e.g. multi-protocol label switch [MPLS]
- H04L 45/507: {Label distribution}
- H04L 45/586: of virtual routers
- H04L 45/02: Topology update or discovery
- H04L 47/724: at intermediate nodes, e.g. resource reservation protocol [RSVP]
- H04L 2101/622: Layer-2 addresses, e.g. medium access control [MAC] addresses
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems, methods, and computer-readable media for service aware label address resolution or neighbor discovery protocol switched path instantiation for large-scale cloud networks. The system including a gateway server configured to receive from a first client, a request to communicate with a second client, the request including a destination and one or more attributes. The gateway server configured to determine a label based on the destination and the one or more attributes, the label corresponding to a pre-existing tunnel, and transmit a reply to the first client, including the destination, the one or more attributes, and the label.

## Claims

### Claim 1

A computer-implemented method comprising:
receiving, at a gateway server from a first client, a request to communicate with a second client, the request including a destination and one or more attributes;
determining a label based on the destination and the one or more attributes, the label corresponding to a pre-existing tunnel; and
transmitting a reply, to the first client, including the destination, the one or more attributes, and the label.

### Claim 2 (depends on 1)

The method of claim 1, wherein the request is received from a virtual forwarder executed by the first client executing a plurality of virtual machines.

### Claim 3 (depends on 1)

The method of claim 1, wherein the destination is the second client executing a second plurality of virtual machines and a second virtual forwarder.

### Claim 4 (depends on 1)

The method of claim 1, wherein the determining further comprising:
a look-up table, comprising a plurality of labels, based on the destination and the one or more attributes.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
determining the label corresponding to the pre-existing tunnel does not exist;
transmitting, to a path computation element server, the destination and the one or more attributes;
receiving, from the path computation element server, a new label including a tunnel to the second client;
storing, in a look-up table, the destination, the one or more attributes, and the new label; and
transmitting, to the first client, a reply including the destination, the one or more attributes, and the new label.

### Claim 6 (depends on 5)

The method of claim 5, wherein the new label is identified by a path calculation algorithm based on the destination and the one or more attributes.

### Claim 7 (depends on 1)

The method of claim 1, wherein the attributes are selected from two of the following: bandwidth, differentiated services coded point, latency, L2/L3/L4 header values, number of hops, or packet loss.

### Claim 8

A provider edge device comprising:
a processor; and
a computer-readable storage medium having stored therein instructions which, when executed by the processor, cause the processor to:
receive from a first client, a request to communicate with a second client, the request including a destination and one or more attributes;
determine a label based on the destination and the one or more attributes, the label corresponding to a pre-existing tunnel; and
transmit a reply to the first client, including the destination, the one or more attributes, and the label.

### Claim 9 (depends on 8)

The provider edge device of claim 8, wherein the request is received from a virtual forwarder executed by the first client executing a plurality of virtual machines.

### Claim 10 (depends on 8)

The provider edge device of claim 8, wherein the destination is the second client executing a second plurality of virtual machines and a second virtual forwarder.

### Claim 11 (depends on 8)

The provider edge device of claim 8, wherein the determination further causing the processor to:
search a look-up table, comprising a plurality of labels, based on the destination and the one or more attributes.

### Claim 12 (depends on 8)

The provider edge device of claim 8, comprising further instructions which, when executed by the processor, cause the processor to:
determine the label corresponding to the pre-existing tunnel does not exist;
transmit, to a path computation element server, the destination and the one or more attributes;
receive, from the path computation element server, a new label including a tunnel to the second client;
store, in a look-up table, the destination, the one or more attributes, and the new label; and
transmit, to the first client, a reply including the destination, the one or more attributes, and the new label.

### Claim 13 (depends on 12)

The provider edge device of claim 12, wherein the new label is identified by a path calculation algorithm based on the destination and the one or more attributes.

### Claim 14 (depends on 8)

The provider edge device of claim 8, wherein the attributes are selected from two of the following: bandwidth, differentiated services coded point, latency, L2/L3/L4 header values, number of hops, or packet loss.

### Claim 15

A non-transitory computer-readable storage medium having stored therein instructions which, when executed by a processor, cause the processor to:
receive from a first client, a request to communicate with a second client, the request including a destination and one or more attributes;
determine a label based on the destination and the one or more attributes, the label corresponding to a pre-existing tunnel; and
transmit a reply to the first client, including the destination, the one or more attributes, and the label.

### Claim 16 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein the request is received from a virtual forwarder executed by the first client executing a plurality of virtual machines.

### Claim 17 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein the determination further causing the processor to:
search a look-up table, comprising a plurality of labels, based on the destination and the one or more attributes.

### Claim 18 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, comprising further instructions which, when executed by the processor, cause the processor to:
determine the label corresponding to the pre-existing tunnel does not exist;
transmit, to a path computation element server, the destination and the one or more attributes;
receive, from the path computation element server, a new label including a tunnel to the second client;
store, in a look-up table, the destination, the one or more attributes, and the new label; and
transmit, to the first client, a reply including the destination, the one or more attributes, and the new label.

### Claim 19 (depends on 18)

The non-transitory computer-readable storage medium of claim 18, wherein the new label is identified by a path calculation algorithm based on the destination and the one or more attributes.

### Claim 20 (depends on 15)

The non-transitory computer-readable storage medium of claim 15, wherein the attributes are selected from two of the following: bandwidth, differentiated services coded point, latency, L2/L3/L4 header values, number of hops, or packet loss.
