Read the whole series on Brazil technology:
The multicast protocol supports simultaneous message transmission to multiple recipients, without having a point-to-point connection with each recipient. The JRMS from Sun Microsystems provides an implementation for building multicast-aware applications. Multicast decreases bandwidth consumption and, with minimal programming and coordination, allows developers to deploy applications in new ways using channels that have current data. Multicast is particularly valuable for satellite providers that use fast, scarce bandwidth to provide news, stock, video, game, and general replication update feeds over single channels to entire cities.
Technologies like JRMS offer the basis to achieve multicast-aware applications. In this article, I will introduce some examples of JRMS that you can use in your own network. Then I will provide sample code for a Brazil handler that creates a weather multicast channel; users can tune to it and select different sources of weather information.
After understanding these small examples, you should be able to develop applications that are multicast-aware -- network topology permitting.
As mentioned above, the multicast protocol sends a message to multiple receivers, but does not establish a point-to-point connection with each receiver. For example, you could multicast n radio stations on n ports for a large population of Internet users.
Multicast scales without packed duplication; unicast does not. Net applications are mostly unicast. For example, most audio and video applications open point-to-point connections between the client and the server. So 1 million users employing a unicast approach require 1 million different ports, and each packet must be duplicated 1 million times. Using the multicast approach, 1 million users could receive that data using only a fraction of those ports.
Some efforts involving multicast protocols have not yet taken off, like Multicast Backbone (MBONE). (See Resources for a link.) Many vendors of applications and services in the video, audio, and generic data feed market do not use multicast. Their applications often establish point-to-point connections between the clients and servers. Multicast is not something you just use in your application; multicast protocols require support at the protocol stack level and in the network infrastructure.
General multicast information
Code resources for this article
WeatherJRMSServer.javaWeatherJRMSViewer.javaWeatherHandler.javaWeatherStation.javaSome general code signing URLs