# US 9,438,475 B1 · Supporting relay functionality with a distributed layer 3 gateway

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

- Number: US 9,438,475 B1
- Document ID: US9438475B1
- Status: Granted
- Kind: B1
- Application number: 14/231,901
- Filed: 2014-04-01
- Granted: 2016-09-06
- Earliest claimed: 2014-04-01
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Shyam Kapadia; Nilesh Shah; Sharanya Subramanian
- Web page: https://patentgrep.com/patent/US9438475B1

## CPC

- H04L 61/5014: using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
- H04L 67/56: Provisioning of proxy services (store-and-forward switching systems in data switching networks H04L12/54)
- H04L 67/561: Adding application-functional data or data for application control, e.g. adding metadata
- H04L 2101/668: Internet protocol [IP] address subnets
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Techniques described herein provide enhanced address allocation services in a network. A switch device in communication with a host device is configured as an address relay device and receives an address request message from the host device. The switch device modifies the address request message to include a response address that uniquely identifies the switch device. The switch device adds in a field of the address request message subnetwork information that identifies a subnetwork to which the host device belongs. The switch device sends the modified address request message to an address server.

## Claims

### Claim 1

A method comprising:
at a switch device in communication with a host device in a network and configured as an address relay device, receiving an address request message from the host device;
modifying the address request message to include a response address that uniquely identifies the switch device;
adding in a field of the address request message subnetwork information that identifies a subnetwork to which the host device belongs; and
sending the modified address request message to an address server.

### Claim 2 (depends on 1)

The method of claim 1, wherein the switch device is configured as a distributed layer 3 gateway device in the network.

### Claim 3 (depends on 1)

The method of claim 1, wherein modifying comprises modifying the address request message to include a loopback address that uniquely identifies the switch device, wherein the loopback address is an address used by the switch device to distribute routing information to other switch devices in the network.

### Claim 4 (depends on 1)

The method of claim 1, wherein receiving comprises receiving a Dynamic Host Control Protocol (DHCP) address request message from the host device.

### Claim 5 (depends on 4)

The method of claim 4, wherein modifying comprises modifying a relay agent address field of the DHCP address request message to include the response address that uniquely identifies the switch device.

### Claim 6 (depends on 4)

The method of claim 4, wherein adding comprises adding the subnetwork information to an option field of the DHCP address request message.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
receiving from the address server a response message comprising address assignment information for the host device; and
sending the response message to the host device with the address assignment information.

### Claim 8 (depends on 1)

The method of claim 1, wherein modifying comprises modifying the address request message to include the response address that uniquely identifies the switch device to cause the address server to send to the switch device a response message with address assignment information.

### Claim 9 (depends on 1)

The method of claim 1, wherein the switch device is configured as a Dynamic Host Control Protocol (DHCP) relay server.

### Claim 10 (depends on 1)

The method of claim 1, wherein receiving comprises receiving an address request message from the host device for an address assignment for a virtual machine managed by the host device.

### Claim 11

An apparatus comprising:
a plurality of ports configured in hardware to send and receive messages in a network; and
a processor coupled to the ports, and configured to:
obtain an address request message received from a host device in a network at one of the ports;
modify the address request message to include a response address that uniquely identifies the apparatus;
add in a field of the address request message subnetwork information that identifies a subnetwork to which the host device belongs; and
cause the modified address request message to be sent to an address server.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the processor is further configured to modify the address request message to include a loopback address that uniquely identifies the apparatus and that is an address used by the apparatus to distribute routing information to switch devices in the network.

### Claim 13 (depends on 11)

The apparatus claim 11, wherein the processor is further configured to obtain from one of the ports a received Dynamic Host Control Protocol (DHCP) address request message.

### Claim 14 (depends on 13)

The apparatus of claim 13, wherein the processor is further configured to modify a relay agent address field of the DHCP address request message to include the response address that uniquely identifies the apparatus.

### Claim 15 (depends on 13)

The apparatus of claim 13, wherein the processor is further configured to add the subnetwork information to an option field of the DHCP address request message.

### Claim 16 (depends on 11)

The apparatus of claim 11, wherein the processor comprises digital logic gates fixed in a programmable digital logic integrated circuit.

### Claim 17 (depends on 16)

The apparatus of claim 16, wherein the programmable digital logic integrated circuit is an Application Specific Integrated Circuit (“ASIC”).

### Claim 18

A non-transitory computer-readable storage media encoded with software comprising computer executable instructions and when the software is executed operable to:
obtain an address request message received from a host device in a network;
modify the address request message to include a response address that uniquely identifies a switch device;
add in a field of the address request message subnetwork information that identifies a subnetwork to which the host device belongs; and
cause the modified address request message to be sent to an address server.

### Claim 19 (depends on 18)

The computer-readable storage media of claim 18, wherein the instructions that are operable to modify comprise instructions that are operable to modify the address request message to include a loopback address that uniquely identifies the switch device and that is an address used by the switch device to distribute routing information to switch devices in the network.

### Claim 20 (depends on 18)

The computer-readable storage media of claim 18, wherein the instructions operable to obtain comprise instructions operable to obtain a received Dynamic Host Control Protocol (DHCP) address request message.

### Claim 21 (depends on 20)

The computer-readable storage media of claim 20, wherein the instructions operable to modify comprise instructions operable to modify a relay agent address field of the DHCP address request message to include the response address that uniquely identifies the switch device.

### Claim 22 (depends on 20)

The computer-readable storage media of claim 20, wherein the instructions operable to add comprise instructions operable to add the subnetwork information to an option field of the DHCP address request message.
