SCALABLE TRANSPORT METHOD FOR MULTICAST REPLICATION
First Claim
1. A method of distributing a chunk which encodes data or object metadata within a cluster of storage servers, the method comprising:
- encoding the chunk in a sequence of unreliable datagrams; and
multicasting the chunk by transmitting the sequence of unreliable datagrams in a rendezvous transfer to a rendezvous group, which is a multicast group, such that a single transmission of the sequence of the unreliable datagrams results in reception of the chunk by multiple members of the rendezvous group.
4 Assignments
0 Petitions
Accused Products
Abstract
Embodiments disclosed herein provide advantageous methods and systems that use multicast communications via unreliable datagrams sent on a protected traffic class. These methods and systems provide effectively reliable multicast delivery while avoiding the overhead associated with point-to-point protocols. Rather than an exponential scaling of point-to-point connections (with expensive setup and teardown of the connections), the traffic from one server is bounded by linear scaling of multicast groups. In addition, the multicast rendezvous disclosed herein creates an edge-managed flow control that accounts for the dynamic state of the storage servers in the cluster, without needing centralized control, management or maintenance of state. This traffic shaping avoids the loss of data due to congestion during sustained oversubscription. Other embodiments, aspects and features are also disclosed.
-
Citations
24 Claims
-
1. A method of distributing a chunk which encodes data or object metadata within a cluster of storage servers, the method comprising:
encoding the chunk in a sequence of unreliable datagrams; and
multicasting the chunk by transmitting the sequence of unreliable datagrams in a rendezvous transfer to a rendezvous group, which is a multicast group, such that a single transmission of the sequence of the unreliable datagrams results in reception of the chunk by multiple members of the rendezvous group.- View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
Specification