Network Casting and Subnets
Networks are ways to break up information into smaller chunks (packets) and then send them over a shared line or radio frequency, to other devices, where the parts can be rebuilt into the whole again.
There are a few types of transmission on a network.
- Unicasting is when you send information from one device on the network to another specific device; this is the most common form of network communication.
- Multicasting is when you send information from one device to a few specific devices on a network.
• Broadcasting is when you send information from one device to all devices on the network. • There is also something called "simulcasting". You hear this term less in computer networks, and more in Television or Radio; but the same ideas apply. It is where you are not only broadcasting, but broadcasting on multiple networks at the same time; simultaneous-broadcasting (simulcast).
Networks protocols also have the ability to send information with either guaranteed delivery, or just in a "broadcast" mode. Guaranteed delivery is like registered mail, it expects a return receipt (packet) to let it know that the information got there, before it sends much more information. While broadcasting is looser, like the local television or radio station which just broadcasts the information out, if you are listening, then you get to see/hear it, if not, then you have to wait until they feel like broadcasting the information again. The information goes by whether you can accept it all or not.
Now realistically, at the lowest levels, whenever you send information even to a single or a few devices on the network, others could see that information, since the network is "shared". So broadcasting or not is sort of based on whose listening. What happens is that the hardware or software on a receiver really only looks for information that is addressed to them (or a group that they belong to). This filtering, lets that machine pay attention to only what it cares about, and is usually done pretty low level. But there are ways around it, that allow some hardware or software to look at all information that is going across the network or to snoop in on stuff that isn't addressed to them. Sometimes this is called "drinking from the fire-hose" since there is usually so much information going by, that you really don't want to stick your head in front of that stream. But the fundamental issue that a network is shared by its nature, and it is up to the listeners to filter, is what causes most of the security issues on a network.
Since everyone seeing everything, and sharing everything, gets very noisy and is a security risk, there are many ways to break networks into smaller and smaller pieces (sub-networks or subnets), and keep information penned into only the subnet to which it belongs. Think of this, as each device goes to "talk" or use the network to send information, it must first peek and make sure someone else isn't using it (wait it's turn). If it makes a mistake and talks over someone else, there's a collision, and one or both can lose that chunk of information and have to retransmit. So the more people talking (sharing the same network), the less space (time or bandwidth) is available for everyone else.
Since networks have been around for so long (since the phone companies started making them for our voices), they are really quite mature and the systems are sophisticated. We help alleviate collisions by using special hardware and software to localize traffic. There are routers and switches that intelligently route information on a network (or many networks) like a giant phone exchange, and fragment networks into smaller and more manageable sub-networks. What this means is that when someone broadcasts or even unicasts, the network can try to send to the smallest group possible, or only the subnets or individuals that really care; and not to every other subnet in the world. Breaking networks down like this helps localize traffic and increase the total potential of the entire network, since your chit chat (noise) isn't clogging up other subnets that don't care anyways.