Scalable network configuration with consistent updates in software defined networks
First Claim
1. A method, in a data processing system comprising a processor and a memory, for configuring a portion of a network corresponding to a data flow between a source device and a destination device in the network, the method comprising:
- receiving, by the processor from a network control application, a request to establish a network configuration corresponding to the data flow between the source device and the destination device, wherein the request comprises a fine grained header field tuple for defining the data flow and wherein the fine grained header field tuple comprises a destination address and at least one of a source address, a source port, a destination port, and a protocol;
allocating, by the processor from a shadow address pool, a shadow address to be mapped to the fine grained header field tuple, wherein the shadow address pool comprises addresses not being used by devices coupled to the network and wherein the shadow address replaces the destination address for the destination device in the data flow;
configuring, by the processor, a network infrastructure of the network to route data packets of the data flow from the source device to the destination device based on the shadow address, wherein configuring the network infrastructure to route data packets of the data flow from the source device to the destination device based on the shadow address comprises;
configuring, by the processor, the source device to use the shadow address as the destination address in data packets transmitted by the source device; and
configuring, by the processor, the destination device to process data packets having a destination address corresponding to the shadow address; and
forwarding, by the processor, one or more data packets in the data flow from the source device to the destination device using the shadow address for the destination device.
1 Assignment
0 Petitions
Accused Products
Abstract
Mechanisms are provided for configuring a data flow between a source device and a destination device in a network. The mechanisms receive, from a network control application, a request to establish a network configuration corresponding to a data flow between the source device and the destination device. The request comprises a fine grained header field tuple for defining the data flow. The mechanisms allocate, from a shadow address pool, a shadow address to be mapped to the fine grained header field tuple. The shadow address pool comprises addresses not being used by devices coupled to the network. The mechanisms configure a network infrastructure of the network to route data packets of the data flow from the source device to the destination device based on the shadow address.
42 Citations
20 Claims
-
1. A method, in a data processing system comprising a processor and a memory, for configuring a portion of a network corresponding to a data flow between a source device and a destination device in the network, the method comprising:
-
receiving, by the processor from a network control application, a request to establish a network configuration corresponding to the data flow between the source device and the destination device, wherein the request comprises a fine grained header field tuple for defining the data flow and wherein the fine grained header field tuple comprises a destination address and at least one of a source address, a source port, a destination port, and a protocol; allocating, by the processor from a shadow address pool, a shadow address to be mapped to the fine grained header field tuple, wherein the shadow address pool comprises addresses not being used by devices coupled to the network and wherein the shadow address replaces the destination address for the destination device in the data flow; configuring, by the processor, a network infrastructure of the network to route data packets of the data flow from the source device to the destination device based on the shadow address, wherein configuring the network infrastructure to route data packets of the data flow from the source device to the destination device based on the shadow address comprises; configuring, by the processor, the source device to use the shadow address as the destination address in data packets transmitted by the source device; and configuring, by the processor, the destination device to process data packets having a destination address corresponding to the shadow address; and forwarding, by the processor, one or more data packets in the data flow from the source device to the destination device using the shadow address for the destination device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer program product comprising a non-transitory computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, executed on a computing device coupled to a network, causes the computing device to:
-
receive, from a network control application, a request to establish a network configuration corresponding to a data flow between a source device and a destination device, wherein the request comprises a fine grained header field tuple for defining the data flow and wherein the fine grained header field tuple comprises a destination address and at least one of a source address, a source port, a destination port, and a protocol; allocate, from a shadow address pool, a shadow address to be mapped to the fine grained header field tuple, wherein the shadow address pool comprises addresses not being used by devices coupled to the network and wherein the shadow address replaces the destination address for the destination device in the data flow; configure a network infrastructure of the network to route data packets of the data flow from the source device to the destination device based on the shadow address, wherein the computer readable program to configure the network infrastructure to route data packets of the data flow from the source device to the destination device based on the shadow address further causes the computing device to; configure the source device to use the shadow address as the destination address in data packets transmitted by the source device; and configure the destination device to process data packets having a destination address corresponding to the shadow address; and forward one or more data packets in the data flow from the source device to the destination device using the shadow address for the destination device. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. An apparatus comprising:
-
a processor; a memory coupled to the processor; and a network interface that couples the apparatus to a network, wherein the memory comprises instructions executed by the processor that cause the processor to; receive, from a network control application, a request to establish a network configuration corresponding to a data flow between a source device and a destination device, wherein the request comprises a fine grained header field tuple for defining the data flow and wherein the fine grained header field tuple comprises a destination address and at least one of a source address, a source port, a destination port, and a protocol; allocate, from a shadow address pool, a shadow address to be mapped to the fine grained header field tuple, wherein the shadow address pool comprises addresses not being used by devices coupled to the network and wherein the shadow address replaces the destination address for the destination device in the data flow; configure a network infrastructure of the network to route data packets of the data flow from the source device to the destination device based on the shadow address, wherein the instructions to configure the network infrastructure to route data packets of the data flow from the source device to the destination device based on the shadow address further causes the processor to; configure the source device to use the shadow address as the destination address in data packets transmitted by the source device; and configure the destination device to process data packets having a destination address corresponding to the shadow address; and forward one or more data packets in the data flow from the source device to the destination device using the shadow address for the destination device. - View Dependent Claims (19, 20)
-
Specification