2 Replies Latest reply on Jan 31, 2011 3:56 PM by aubuendia

    NetGroup and many-to-many streaming limits

    aubuendia

      Hi,

       

      I'm trying to find out if this hypothetical many-to-many scenario is scalable in cirrus:

       

      Given a NetGroup of 1000 people, everyone publishes 1 video stream and subscribes to 10 video streams, where every stream has a unique name.

       

      Michael has mentioned in some threads that every published stream flows in the NetGroup, independent of whether the stream is played or not. Based on this, I was wondering if the above scenario would be scalable in cirrus.

       

      -Aureliano

        • 1. Re: NetGroup and many-to-many streaming limits
          Michael Thornburgh Adobe Employee

          if you have one group with 1000 members, and each member is publishing a stream, then the group will have 1000 streams flowing through it, to every member.  it doesn't matter if a member subscribes to 0, 1, 10, or 1000 of the streams; all 1000 will flow to/between every member of the group.

           

          that's probably not what you want.  if each member only wanted 10 streams, then each one would be relaying 990 streams that it's not interested in.  that's not really "scalable", nor is it efficient.

           

          since a stream will flow to/between all members of a group, only peers interested in a stream (the publisher and subscribers) should be in a group together.  that suggests that every publisher have its own group, and each subscriber to that stream should join the corresponding group to play the stream.

          • 2. Re: NetGroup and many-to-many streaming limits
            aubuendia Level 1

            Michael Thornburgh wrote:

             

            since a stream will flow to/between all members of a group, only peers interested in a stream (the publisher and subscribers) should be in a group together.  that suggests that every publisher have its own group, and each subscriber to that stream should join the corresponding group to play the stream.

            It is desirable to keep all 1000 people as publishers. In this case, with the above multi-group architecture, everyone is a subscriber in 10 groups + a publisher in his own group. So each person would be in 11 groups at one time. You have mentioned in other posts that there is a 1 - 2 kb/s flowing between peers for each group maintainance, adding an extra 10 - 20 kb/s. What sort of optimisation can be done to keep this rate as low as possible?

             

            Are there any other factors to make this application more efficient? For instance, can the subscriber have any controls over receiving a video at lower bit-rate it was published? If not, would it make sense to say that, if one peer has a very big uploading bandwidth, and fully using it, then the whole peers mesh will have a higher flow of bits?

             

            Thanks,

             

            Aureliano