# US 10,484,233 B2 · Implementing provider edge with hybrid packet processing appliance

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

- Number: US 10,484,233 B2
- Document ID: US10484233B2
- Status: Granted
- Kind: B2
- Application number: 15/617,150
- Filed: 2017-06-08
- Published: 2018-12-13
- Granted: 2019-11-19
- Earliest claimed: 2017-06-08
- Assignees: AT&T Intellectual Property I, L.P.
- Applicants: AT&T Intellectual Property I, L.P.
- Inventors: Ying Cheng; Bo Yan; Zhiguang Zhang; Kenneth Duell
- Web page: https://patentgrep.com/patent/US10484233B2

## CPC

- H04L 43/20: the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- H04L 12/4633: {Interconnection of networks using encapsulation techniques, e.g. tunneling}
- H04L 12/4641: {Virtual LANs, VLANs, e.g. virtual private networks [VPN] (LAN interconnection over a bridge based backbone H04L12/462; encapsulation techniques H04L12/4633; routing of packets H04L45/00; packet switches H04L49/00; virtual private networks for security H04L63/0272)}
- H04L 41/0226: Mapping or translating multiple network management protocols
- H04L 41/042: comprising distributed management centres cooperatively managing the network
- H04L 41/0806: for initial configuration or provisioning, e.g. plug-and-play
- H04L 41/5061: characterised by the interaction between service providers and their network customers, e.g. customer relationship management
- H04L 43/022: by sampling
- H04L 43/026: using flow identification
- H04L 43/16: Threshold monitoring
- H04L 43/08: Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L 43/0894: Packet rate
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A virtual provider edge server may include different modules that implement a hybrid provider edge. A flow detection module may sample received traffic through a server and adaptively detect flows to be offloaded. An offloading module may be an SDN controller that controls the flow tables of a switch that data traffic is offloaded to.

## Claims

### Claim 1

An apparatus comprising:
a processor; and
a memory coupled with the processor, the memory storing executable instructions that when executed by the processor cause the processor to effectuate operations comprising:
receiving data from a switch during a period;
sampling the data during the period;
determining a plurality of characteristics associated with the sampled data;
based on a first characteristic of the plurality of characteristics reaching a threshold, determining criteria to indicate data to offload through the switch; and
based on the determining the criteria to indicate data to offload through the switch, adjusting a data path of the indicated data to bypass the apparatus for subsequent data received at the switch and matching the criteria.

### Claim 2 (depends on 1)

The apparatus of claim 1, wherein the first characteristic comprises a number of times data with a first internet protocol address has been sampled during the period.

### Claim 3 (depends on 1)

The apparatus of claim 1, wherein the criteria comprises an internet protocol address range.

### Claim 4 (depends on 1)

The apparatus of claim 1, wherein the first characteristic comprises a number of times data with a first port number has been sampled during the period.

### Claim 5 (depends on 1)

The apparatus of claim 1, wherein the criteria comprises a time duration to adjust the data path.

### Claim 6 (depends on 1)

The apparatus of claim 1, the operations further comprising periodically sending a request for a statistic associated with a data flow through the switch.

### Claim 7 (depends on 1)

The apparatus of claim 1, the operations further comprising periodically sending a request for a statistic, wherein the statistic comprises a rate of data with a first internet protocol address over a second period.

### Claim 8

A method comprising:
receiving, by a virtual machine, data from a switch during a period;
sampling the data during the period;
determining a plurality of characteristics associated with the sampled data;
based on a first characteristic of the plurality of characteristics reaching a threshold, determining criteria to indicate data to offload through the switch; and
based on the determining the criteria to indicate data to offload through the switch, adjusting a data path of the indicated data to bypass the virtual machine for subsequent data received at the switch and matching the criteria.

### Claim 9 (depends on 8)

The method of claim 8, wherein the first characteristic comprises a number of times data with a first internet protocol address has been sampled during the period.

### Claim 10 (depends on 8)

The method of claim 8, wherein the criteria comprises an internet protocol address range.

### Claim 11 (depends on 8)

The method of claim 8, wherein the first characteristic comprises a number of times data with a first port number has been sampled during the period.

### Claim 12 (depends on 8)

The method of claim 8, wherein the criteria comprises a time duration to adjust the data path.

### Claim 13 (depends on 8)

The method of claim 8, further comprising periodically sending a request for a statistic associated with a data flow through the switch.

### Claim 14 (depends on 8)

The method of claim 8, further comprising periodically sending a request for a statistic, wherein the statistic comprises a rate of data with a first internet protocol address over a second period.

### Claim 15

A computer readable storage medium storing computer executable instructions that when executed by a computing device cause said computing device to effectuate operations comprising:
receiving, by a virtual machine, data from a switch during a period;
sampling the data during the period;
determining a plurality of characteristics associated with the sampled data;
based on a first characteristic of the plurality of characteristics reaching a threshold, determining criteria to indicate data to offload through the switch; and
based on the determining the criteria to indicate data to offload through the switch, adjusting a data path of the indicated data to bypass the virtual machine for subsequent data received at the switch and matching the criteria.

### Claim 16 (depends on 15)

The computer readable storage medium of claim 15, wherein the first characteristic comprises a number of times data with a first internet protocol address has been sampled during the period.

### Claim 17 (depends on 15)

The computer readable storage medium of claim 15, wherein the criteria comprises an internet protocol address range.

### Claim 18 (depends on 15)

The computer readable storage medium of claim 15, wherein the first characteristic comprises a number of times data with a first port number has been sampled during the period.

### Claim 19 (depends on 15)

The computer readable storage medium of claim 15, wherein the criteria comprises a time duration to adjust the data path.

### Claim 20 (depends on 15)

The computer readable storage medium of claim 15, the operations further comprising periodically sending a request for a statistic, wherein the statistic comprises a rate of data with a first internet protocol address over a second period.
