IP Library Granted Patent US 10,050,867
Granted Patent B2
US 10,050,867 · App. 14/421,144 · Granted Aug 14, 2018

Methods and systems for transmitting broadcast data

Inventors: Ho Ming Chan (Hong Kong, HK); Kam Chiu Ng (Hong Kong, HK); Yu Yeung (Hong Kong, HK); Kwok Yui Mok (Hong Kong, HK)
Assignee: PISMO LABS TECHNOLOGY LIMITED
H04L45/20H04L12/4641H04L12/66H04L67/16H04L69/22H04L2212/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,050,867
App. No.
14/421,144
Granted
Aug 14, 2018
Kind
B2
Abstract

The present invention discloses methods and systems for transmitting broadcast data at a communication gateway. When the communication gateway receives a broadcast packet from a host or node, the communication gateway determines whether the broadcast packet satisfies at least one condition. If the broadcast packet satisfies the at least one condition, it is determined whether or not to modify a time to live (TTL) value. The TTL value of the broadcast packet is modified if it is determined to modify the TTL value. The broadcast packet is then forwarded to the destination address of the broadcast packet based on the TTL value. The destination address is reachable through an interconnected network.

Claims (48)

1. A method at a first communication gateway of transmitting broadcast data from a first communication gateway to a second communication gateway, comprising:

(a) receiving a broadcast packet from a host or node, wherein the broadcast packet is a service request or a response to a service advertisement;

(b) determining whether the broadcast packet satisfies at least one condition, wherein the at least one condition is based on one or more of source address, destination address, and port number of the broadcast packet;

when the broadcast packet satisfies the at least one condition:

(c) determining whether or not to modify a time to live (TTL) value;

(d) modifying the TTL value if determined to modify the TTL value;

(e) forwarding the broadcast packet through at least one tunnel to a destination address of the broadcast packet based on the TTL value of the broadcast packet; wherein the at least one tunnel is selected according to at least one policy; wherein the at least one policy is based on time, identity of the host or node, and/or capacity of the at least one tunnel; wherein the broadcast data is transmitted through the at least one tunnel only during a certain period of time if the at least one policy is based on time;

encapsulating the broadcast packet in an Internet Protocol (IP) packet before forwarding the broadcast packet to the destination address in step (e), and wherein the broadcast packet is a Boniour protocol based packet;

wherein a plurality of tunnels are established between the first communication gateway and the second communication gateway; and

wherein the at least one tunnel is selected from the plurality of tunnels; and wherein the destination address is reachable through an interconnected network.

2. The method of claim 1 , wherein the at least one policy is further based on a priority of the broadcast packet.

3. The method of claim 1 , wherein the plurality of tunnels are classified into a first group of tunnels and a second group of tunnels; and wherein the first group of tunnels is used for transmitting broadcast data and the second group of tunnels is used for transmitting unicast data.

4. The method of claim 1 , wherein step (d) is performed if TTL of the broadcast packet has expired or is about to be expired.

5. The method of claim 1 , further comprising modifying other fields of the broadcast packet before performing step (e) if the broadcast packet satisfies the at least one condition.

6. The method of claim 5 , wherein the other fields comprising at least one of destination address and source address of the broadcast packet.

7. The method of claim 1 , wherein the forwarding is performed through an aggregated virtual private network (VPN) connection.

8. A method at a first communication gateway of transmitting broadcast data from a first communication gateway to a second communication gateway:

(a) receiving a broadcast packet from a host or a node, wherein the broadcast packet is a service request or a response to a service advertisement;

(b) determining whether the broadcast packet satisfies at least one condition, wherein the at least one condition is based on one or more of source address, destination address, and port number of the broadcast packet;

when the broadcast packet does not satisfy the at least one condition:

(c) forwarding the broadcast packet through at least one tunnel to a destination address regardless of TTL value of the broadcast packet; wherein the at least one tunnel is selected according to at least one policy; wherein the at least one policy is based on time, identity of the host or node, and/or capacity of the at least one tunnel; wherein the broadcast data is transmitted through the at least one tunnel only during a certain period of time if the at least one policy is based on time;

when the broadcast packet satisfies the at least one condition:

(d) determining whether or not TTL of the broadcast packet has expired;

(e) forwarding the broadcast packet if the TTL of the broadcast packet has not expired;

encapsulating the broadcast packet in an Internet Protocol (IP) packet before forwarding the broadcast packet to the destination address in step (e), and wherein the broadcast packet is a Boniour protocol based packet;

(f) not forwarding the broadcast packet if the TTL of the broadcast packet has expired;

wherein a plurality of tunnels are established between the first communication gateway and the second communication gateway; and

wherein the at least one tunnel is selected from the plurality of tunnels.

9. A first communication gateway configured to transmit broadcast data to a second communication gateway comprising:

a plurality of network interfaces; at least one processing unit;

at least one main memory;

at least one secondary storage storing program instructions executable by the at least one processing unit for:

(a) receiving a broadcast packet from a host or node, wherein the broadcast packet is a service request or a response to a service advertisement;

(b) determining whether the broadcast packet satisfies at least one condition; wherein the at least one condition is based on one or more of source address, destination address, and port number of the broadcast packet;

when the broadcast packet satisfies the at least one condition:

(c) determining whether or not to modify a time to live (TTL) value;

(d) modifying the TTL value if determined to modify the TTL value;

(e) forwarding the broadcast packet through at least one tunnel to a destination address of the broadcast packet based on the TTL value of the broadcast packet; wherein the at least one tunnel is selected according to at least one policy; wherein the at least one policy is based on time, identity of the host or node, and/or capacity of the at least one tunnel; wherein the broadcast data is transmitted through the at least one tunnel only during a certain period of time if the at least one policy is based on time;

encapsulating the broadcast packet in an IP packet before forwarding the broadcast packet to the destination address in step (e), and wherein the broadcast packet is a Boniour protocol based packet;

wherein a plurality of tunnels are established between the first communication gateway and the second communication gateway;

wherein the at least one tunnel is selected from the plurality of tunnels; and

wherein the destination address is reachable through an interconnected network.

10. The communication gateway of claim 9 , wherein the at least one policy is further based on a priority of the broadcast packet.

11. The communication gateway of claim 9 , wherein the plurality of tunnels are classified into a first group of tunnels and a second group of tunnels; and wherein the first group of tunnels is used for transmitting broadcast data and the second group of tunnels is used for transmitting unicast data.

12. The communication gateway of claim 9 , wherein step (d) is performed if TTL of the broadcast packet has expired or is about to be expired.

13. The communication gateway of claim 9 , wherein the secondary storage further stores program instructions for modifying other fields of the broadcast packet before performing step (e), if the broadcast packet satisfies the at least one condition.

14. The communication gateway of claim 13 , wherein the other fields comprise at least one of destination address and source address of the broadcast packet.

15. The communication gateway of claim 9 , wherein forwarding is performed through an aggregated virtual private network (VPN) connection.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2015
From: CHAN, HO MING; NG, KAM CHIU; YEUNG, YU; MOK, KWOK YUI
To: PISMO LABS TECHNOLOGY LIMITED
Reel/Frame 036374/0513 →
Continuity (1)
Related Publication 20170250899A1 · Aug 31, 2017
Cited By (1)
US 12,568,024