Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium



Posted on 2006-04-28
Medium Priority
Last Modified: 2010-04-17
I need to send identical data to several users in push mode, with these following indicative specifications:
max 5000 users connected by internet
max 4 packets per second
average 6 Kbits per second throughput
The only client side (Windows platform) admissible operation is the installation of the client software.
Is the use of multicasting realistic or is there the risk that many routers of switches could hamper the operation?
If not realistic what is the best way to do that?
Thank you in advance.
Question by:al-pi
  • 2

Expert Comment

ID: 16562258
Multicasting is a possibility, but not the way you are thinking:

A big pipe at 100Mbps Full duplex is gonna run you $300-$1000/mo
A typical server is lucky to spew out as much as 60Mbps (Thats doing a disk dump)

Now, 5000 users * 4 pkts/s = 20000 pkts/s, at 1520 bytes/packet == 243Mbps
Theoretical Max packets of that connection = 100Mbps / (1520 * 8 bits/ packet) = 8223 pkt/s
Clearly you are talking multiple pipes (or an OC12 - 622Mbps) and a server farm

So your configuration for this is basically
Node A         Node B          Node C
   |                   |                  |
(at least 3 100Mbps lines or more likely an OC12)
                CPE Fiber Demarc
                  (The 'Net)
Client1 Client2 ..................................................Client 5000

Ok, how many nodes?
Well if each one is doing processing, you can max out the PCI bus ~ 133Mbps, using Gigabit ethernet you should be
able to blast out about the same.  (Kinda depressing, really).  Better bus architectures *could* let you spew up to 3-400 Mbps, but not using regular (1500byte) packet sizes.  So more servers.
Max load ~243 Mbps, so just an off the cuff figure of 4 servers should handle the load nicely.
You can get away with fewer servers if two of them are not doing any processing:
   +--------------+--------------+ (Multicast source on
   |                   |                  |
Node A         Node B          Node C  (Relays listen on and rebroadcast to TCP connected clients)
   |                   |                  |
   +--------------+--------------+(Regular TCP network)

Well, theres your blueprint


Author Comment

ID: 16563683
Thank you Bill.

You correctly consider all the packets of max size but it is not so in my condition.

Packet dimension is about 190 bytes so 4*190*8 is 6 Kbits/s per client that is about 1/8 of what you calculate.

However, also considering that, I need to understand pros and cons of multicasting solution and if this way is not right the better other one.

Thank you again.

Accepted Solution

wnross earned 500 total points
ID: 16563982
Larger packet sizes are more efficient at bandwidth, oddly enough, your solution will need to be larger in the case of
smaller packets because the networking components need to do more work.  Its one of the reasons why gigabit
ethernet cards can't practically run at 1000Mbps.

Now multicasting is transmission at ip addresses between 224.x.x.x-239.x.x.x, if you know you're IP Classes, this range is
a Class "D", which meand that the entire address matches a network (Netmask =, consequently
the packets cannot route outside a LAN.  (Exception: MBone, but that doesn't help)

Since the multicast packets won't go past your LAN, the only good they can ever do is to help communicate between
computers in your group.

Example Multicast applications
* ntp (Network time protocol) uses Mulitcast for time synchronization in a LAN and TCP to access remote ntp peers
* Ghost can use Multicast to install operating systems to an entire classroom or rack at the same time from a single
   installer machine.
* RealMedia can use Mulitcast to relay live broadcast streams from a single server to a broadcast server farm for load


Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

What do responsible coders do? They don't take detrimental shortcuts. They do take reasonable security precautions, create important automation, implement sufficient logging, fix things they break, and care about users.
If you are a mobile app developer and especially develop hybrid mobile apps then these 4 mistakes you must avoid for hybrid app development to be the more genuine app developer.
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …
Simple Linear Regression

578 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question