Multicast data transfer
First Claim
1. An apparatus comprising:
- a processor; and
a memory storing program instructions, the memory and the program instructions configured to, with the processor, cause the apparatus at least to perform;
a) process data received from a first host;
b) cause transmission of said data to one or more further hosts;
c) define a group comprising one or more further hosts, wherein a further host is added to the group in response to reception of a request;
d) determine whether a first condition is met, the first condition being that a number of received requests for a file exceeds a predetermined threshold;
e) determine whether a second condition is met, the second condition being that a time limit has expired;
f) repeat d) and e) until either of the first and second conditions is met, and then to forward the data to said further hosts in said group, and wherein the processor is configured to limit the group to further hosts situated at a same location.
8 Assignments
0 Petitions
Accused Products
Abstract
An edge router (6) for multicast data transfer comprises a cache (10). In response to a request for a file from a host (3a), the router (6) retrieves the file from a content provider (2). The file, comprising data packets A-G, is stored in the cache (10) before transmission to host (3a) to allow the receipt of requests for the same file from other hosts (3b, 3c). A timer is activated to count down through a predetermined waiting period T. A file delivery group is defined, comprising host (3a). Any other hosts (3b, 3c) located in the same cell as host (3a), requesting the same file during period T are added to the group. When a predetermined number of requests have been received or, alternatively, when the waiting period T expires, the file is retrieved from the cache (10) and forwarded to the hosts (3a, 3b, 3c), in the group.
10 Citations
16 Claims
-
1. An apparatus comprising:
-
a processor; and a memory storing program instructions, the memory and the program instructions configured to, with the processor, cause the apparatus at least to perform; a) process data received from a first host; b) cause transmission of said data to one or more further hosts; c) define a group comprising one or more further hosts, wherein a further host is added to the group in response to reception of a request; d) determine whether a first condition is met, the first condition being that a number of received requests for a file exceeds a predetermined threshold; e) determine whether a second condition is met, the second condition being that a time limit has expired; f) repeat d) and e) until either of the first and second conditions is met, and then to forward the data to said further hosts in said group, and wherein the processor is configured to limit the group to further hosts situated at a same location. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
a) receiving a request for a file from a first host at a network element; b) retrieving the file from a second host; c) storing the file in a cache associated with the network element; d) defining, by the network element, a group including the first host; e) in response to receiving further requests for said file by the network element from one or more other hosts before a period of time expires, adding said one or more other hosts to the group; f) determining whether a first condition is met, the first condition being that a number of received requests for the file exceeds a predetermined threshold; g) determining whether a second condition is met, the second condition being that a time limit has expired; h) repeating and g) until either of the first and second conditions is met, and then forwarding the file to the first host and to any other hosts in said group, wherein the group is limited to the first host and other hosts situated at a same location as the first host. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A memory storing computer-executable instructions that, when executed, cause an apparatus at least to perform:
-
a) receiving a request for a file from a first host at the apparatus; b) retrieving the file from a second host; c) storing the file in a cache associated with the apparatus; d) defining a group including the first host; e) in response to receiving further requests for said file by the apparatus from one or more other hosts, adding said one or more other hosts to the group; f) determining whether a first condition is met, the first condition being that a number of received requests for a file exceeds a predetermined threshold; g) determining whether a second condition is met, the second condition being that a time limit has expired; h) repeating f) and g) until either of the first and second conditions is met, and then forwarding the file to the first host and to any other hosts in said group, wherein the group is limited to the first host and other hosts situated at a same location as the first host. - View Dependent Claims (13, 14, 15, 16)
-
Specification