# US 10,374,830 B1 · WAN-span LAN (WSL) networking technology

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

- Number: US 10,374,830 B1
- Document ID: US10374830B1
- Status: Granted
- Kind: B1
- Application number: 15/648,734
- Filed: 2017-07-13
- Granted: 2019-08-06
- Earliest claimed: 2016-07-17
- Assignees: FatPipe, Inc.
- Applicants: FatPipe, Inc.
- Inventors: Sanchaita Datta; Bhaskar Ragula; Xiaoxiong Fan; Sankhadip Sengupta
- Web page: https://patentgrep.com/patent/US10374830B1

## CPC

- H04L 12/4633: {Interconnection of networks using encapsulation techniques, e.g. tunneling}
- H04L 12/4604: {LAN interconnection over a backbone network, e.g. Internet, Frame Relay}
- H04L 12/4625: {Single bridge functionality, e.g. connection of two networks over a single bridge}
- 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 2212/00: Encapsulation of packets
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Tools and technologies geographically extend local area networks by transparently inserting transmission of encapsulated local area network frames over wide area network connections. Some devices receive frames from a switch or other physically addressed device using layer 2 protocols, encapsulate them, and send them over a wide area network to a similar remote device which decapsulates the frames and forwards them using layer 2 protocols. Load balancing, quality of service, compression, encryption, and other packet processing may be performed on the encapsulated packets.

## Claims

### Claim 1

A networking process, the process performed in an environment which includes MAC (media access control) addresses, IP (internet protocol) items, a WAN (wide area network), and SD-WAN (software-defined wide area network) or WSL (WAN-spanning LAN) devices, the process comprising:
receiving a layer 2 frame from a first switch in a kernel at a first WSL device, the layer 2 frame having a switch source MAC address which identifies the first switch as a frame source, a switch destination MAC address which identifies a frame destination, and a payload which includes a user frame, the user frame having user source MAC address which identifies a user source computer, a user destination MAC address which identifies a user destination computer, and a payload which includes a user IP datagram;
obtaining within the first WSL device an IP address of a second WSL device which is separated from the first WSL device by a WAN;
adding an IP header to the layer 2 frame within the first WSL device, thereby creating within the first WSL device a layer 3 packet which contains the layer 2 frame, the packet IP header having a source IP address which is an IP address of the first WSL device, the layer 3 packet IP header having a destination IP address which is the obtained IP address of the second WSL device;
reinjecting the layer 2 frame into the kernel within the layer 3 packet, for processing as part of the layer 3 packet; and
transmitting the layer 3 packet toward the WAN through a WAN interface of the first WSL device.

### Claim 2 (depends on 1)

The networking process of claim 1, further comprising:
receiving the layer 3 packet at the second WSL device;
stripping off the IP header, thereby retrieving the layer 2 frame which contains the user IP datagram; and
sending the layer 2 frame from the second WSL device toward a second switch, the second switch having the switch destination MAC address as a MAC address.

### Claim 3 (depends on 1)

The networking process of claim 1, wherein obtaining the IP address of the second WSL device comprises performing at least one of the following: load balancing, failing over, or implementing a quality of service criterion.

### Claim 4 (depends on 1)

The networking process of claim 1, wherein the layer 2 frame is characterized in at least one of the following ways:
the layer 2 frame is an Ethernet frame;
the layer 2 frame is a data link layer frame;
the layer 2 frame includes a VLAN (virtual local area network) tag;
the layer 2 frame is a TRILL (transparent interconnection of lots of links) frame;
the layer 2 frame is an IS-IS (intermediate system to intermediate system) frame;
the layer 2 frame is an SPB (shortest path bridging) frame.

### Claim 5 (depends on 1)

The networking process of claim 1, wherein the layer 3 packet is a virtual extensible local area network packet.

### Claim 6 (depends on 1)

The networking process of claim 1, wherein the process further comprises establishing a virtual private network tunnel between the first WSL device and the second WSL device, and wherein transmitting comprises transmitting the layer 3 packet through the WAN interface into the virtual private network tunnel.

### Claim 7 (depends on 1)

The networking process of claim 1, wherein receiving the layer 2 frame comprises receiving the layer 2 frame in a memory buffer, and wherein adding the IP header to the layer 2 frame within the first WSL device comprises modifying the memory buffer to contain the layer 3 packet and then submitting the layer 3 packet for processing by a kernel packet processing framework.

### Claim 8 (depends on 1)

The networking process of claim 1, wherein the process comprises adding an IP header to the layer 2 frame with the destination IP address and adding a UDP (user datagram protocol) header which creates the layer 3 packet as a VXLAN (virtual extensible local area network) packet.

### Claim 9 (depends on 1)

The networking process of claim 1, wherein the process further comprises aggregating data from multiple layer 2 frames into the layer 3 packet.

### Claim 10

A computer-readable storage medium configured with software which upon execution by a first device having at least one processor performs a networking process, the networking process comprising:
receiving a layer 2 frame in a kernel at the first device, the layer 2 frame having a switch source physical address which identifies a first switch as a frame source, a switch destination physical address which identifies a frame destination, and a payload which includes a user frame, the user frame having user source physical address which identifies a user source computer, a user destination physical address which identifies a user destination computer, and a payload which includes a user IP (internet protocol) datagram;
obtaining within the first device an IP address of a second device which is physically separated from the first device by at least one mile;
adding an IP header to the layer 2 frame within the first device, thereby creating within the first device a layer 3 packet which contains the layer 2 frame, the packet IP header having a source IP address which is an IP address of the first device, the packet IP header having a destination IP address which is the obtained IP address of the second device;
reinjecting the layer 2 frame into the kernel within the layer 3 packet, for processing as part of the layer 3 packet; and
transmitting the layer 3 packet toward the second device through a wide area network interface of the first device.

### Claim 11 (depends on 10)

The computer-readable storage medium of claim 10, wherein the networking process further comprises:
receiving the layer 3 packet at the second device;
stripping off the IP header, thereby retrieving the layer 2 frame which contains the user IP datagram; and
sending the layer 2 frame from the second device toward a second switch, the second switch having the switch destination physical address as a physical address.

### Claim 12 (depends on 10)

The computer-readable storage medium of claim 10, wherein the layer 2 frame is characterized in at least two of the following ways:
the layer 2 frame is an Ethernet frame;
the layer 2 frame is a data link layer frame;
the layer 2 frame includes a VLAN (virtual local area network) tag;
the layer 2 frame is a TRILL (transparent interconnection of lots of links) frame;
the layer 2 frame is an IS-IS (intermediate system to intermediate system) frame;
the layer 2 frame is an SPB (shortest path bridging) frame.

### Claim 13 (depends on 10)

The computer-readable storage medium of claim 10, wherein the networking process further comprises establishing a virtual private network tunnel between the first device and the second device, and wherein transmitting comprises transmitting the layer 3 packet through the wide area network interface into the virtual private network tunnel.

### Claim 14 (depends on 10)

The computer-readable storage medium of claim 10, wherein the networking process comprises adding an IPv4 header to the layer 2 frame with the destination IP address and adding a UDP (user datagram protocol) header which creates the layer 3 packet as a VXLAN (virtual extensible local area network) packet.

### Claim 15

A first network extension device comprising:
at least one processor;
a memory in operable communication with the processor; and
a WSL module comprising WSL hardware operating with WSL software to perform WSL operations which extend LAN communication across a WAN, “LAN” denoting “local area network”, “WAN” denoting “wide area network”, “WSL” denoting “WAN-spanning LAN”, the WSL module comprising a network interface card and a portion of the memory which is configured the WSL software, the WSL operations comprising operations which (a) add an IP header to a LAN frame received in a kernel of the first network extension device, the LAN frame having a switch source physical address which identifies a first switch as a source of the LAN frame, the LAN frame being a layer 2 frame, the first switch physically located within two miles of the first network extension device, the IP header having a destination IP address which identifies a second network extension device physically located more than five miles away from the first network extension device, (b) create a layer 3 packet containing the IP header and the LAN frame, (c) reinject the LAN frame in the kernel within the layer 3 packet, for processing as part of the layer 3 packet, and (d) transmit the layer 3 packet toward the second network extension device through the wide area network interface of the first network extension device.

### Claim 16 (depends on 15)

The first network extension device of claim 15, in combination with the second network extension device.

### Claim 17 (depends on 15)

The first network extension device of claim 15, wherein as part of the WSL operations the WSL module frame adds the IP header and transmits a LAN frame which is a broadcast frame or a multicast frame or both.

### Claim 18 (depends on 15)

The first network extension device of claim 15, further comprising a packet processing framework which is configured to perform one or more of load balancing, failover, compression, or encryption.

### Claim 19 (depends on 15)

The first network extension device of claim 15, wherein the first network extension device comprises at least two wide area network interfaces and a local area network interface.

### Claim 20 (depends on 15)

The first network extension device of claim 15, wherein as part of the WSL operations the WSL module discards a LAN frame which has a source address and a destination address on the same LAN segment as one another.
