Java Reference
In-Depth Information
Domain name IP address Purpose
MICROSOFT.MCAST.NET 224.0.1.24 Used by Windows Internet Name Service (WINS) servers to locate
one another.
MTRACE.MCAST.NET 224.0.1.32 A multicast version of traceroute.
JINI-ANNOUNCEMENT.MCAST.NET224.0.1.84 JINI announcements.
JINI-REQUEST.MCAST.NET 224.0.1.85 JINI requests.
224.0.1.143 Emergency Managers Weather Information Network.
224.2.0.0 - 224.2.255.255 The Multicast Backbone on the Internet (MBONE) addresses are
reserved for multimedia conference calls (i.e., audio, video,
whiteboard, and shared web browsing between many people).
224.2.2.2 Port 9875 on this address is used to broadcast the currently
available MBONE programming. You can look at this with the X
Window utility sdr or the Windows/Unix multikit program.
239.0.0.0 - 239.255.255.255 Organization local scope, in contrast to TTL scope, uses different
ranges of multicast addresses to constrain multicast traffic to a
particular region or group of routers. For example, when a
Universal Plug and Play (UPnP) device joins a network, it sends
an HTTPU (HTTP over UDP) message to the multicast address
239.255.255.250 on port 1900. The idea is to allow the possible
group membership to be established in advance without relying
on less-than-reliable TTL values.
Clients and Servers
When a host wants to send data to a multicast group, it puts that data in multicast
datagrams, which are nothing more than UDP datagrams addressed to a multicast
group. Multicast data is sent via UDP, which, though unreliable, can be as much as three
times faster than data sent via connection-oriented TCP. (If you think about it, multicast
over TCP would be next to impossible. TCP requires hosts to acknowledge that they
have received packets; handling acknowledgments in a multicast situation would be a
nightmare.) If you're developing a multicast application that can't tolerate data loss, it's
your responsibility to determine whether data was damaged in transit and how to handle
missing data. For example, if you are building a distributed cache system, you might
simply decide to leave any files that don't arrive intact out of the cache.
Earlier, I said that from an application programmer's standpoint, the primary difference
between multicasting and using regular UDP sockets is that you have to worry about
the TTL value. This is a single byte in the IP header that takes values from 1 to 255; it
is interpreted roughly as the number of routers through which a packet can pass before
it is discarded. Each time the packet passes through a router, its TTL field is decremented
by at least one; some routers may decrement the TTL by two or more. When the TTL
reaches zero, the packet is discarded. The TTL field was originally designed to prevent
routing loops by guaranteeing that all packets would eventually be discarded. It prevents
misconfigured routers from sending packets back and forth to each other indefinitely.
 
Search WWH ::




Custom Search