As it's explained incredibly well, I prefer to cut&paste the answer. This is from "The TCP/IP Guide", a must read:
One important change in the addressing
model of IPv6 is the address types
supported. IPv4 supported three
address types: unicast, multicast and
broadcast. Of these, the vast majority
of actual traffic was unicast. IP
multicast support was not widely
deployed until many years after the
Internet was established, and
continues to be hampered by various
issues. Use of broadcast in IP had to
be severely restricted for performance
reasons (we don't want any device to
be able to broadcast across the entire
Internet!)
IPv6 also supports three address
types, but with some changes:
Unicast Addresses: These are standard unicast addresses as in IPv4, one per host interface.
Multicast Addresses: These are addresses that represent various
groups of IP devices: a message sent
to a multicast address goes to all
devices in the group. IPv6 includes
much better multicast features and
many more multicast addresses than
IPv4. Since multicast under IPv4 was
hampered in large part due to lack of
support of the feature by many
hardware devices, support for
multicasting is a required, not
optional, part of IPv6.
Anycast Addresses: Anycast addressing is used when a message must
be sent to any member of a group, but
does not need to be sent to them all.
Usually the member of the group that
is easiest to reach will be sent the
message. One common example of how
anycast addressing could be used is in
load sharing amongst a group of
routers in an organization.
Key Concept: IPv6 has unicast and multicast addresses like IPv4. There
is, however, no distinct concept of a
broadcast address in IPv6. A new type
of address, the anycast address, has
been added to allow a message to be
sent to any one member of a group of
devices.
Implications of the Changes to Address
Types in IPv6
Broadcast addressing as a distinct
addressing method is gone in IPv6.
Broadcast functionality is implemented
using multicast addressing to groups
of devices. A multicast group to which
all nodes belong can be used for
broadcasting in a network, for
example.
An important implication of the
creation of anycast addressing is
removal of the strict uniqueness
requirement for IP addresses. Anycast
is accomplished by assigning the same
IP address to more than one device.
The devices must also be specifically
told that they are sharing an anycast
address, but the addresses themselves
are structurally the same as unicast
addresses.
IPv6 does not implement traditional IP broadcast, and therefore does not define broadcast addresses. In IPv6, the same result can be achieved by sending a packet to the link-local all nodes multicast group which is analogous to IPv4 broadcast.
In IPv4 "broadcasts" are really just sent to everyone on the local broadcast domain, which is a finite domain. Multicast is sent to a finite domain defined by a particular group. See how IPv4 'broadcasts' are just a particular subset of multicast (where the 'group' is everyone). In IPv6 they eliminated the redundant term.
A broadcast assumes that everyone is interested in your packet, and all hosts need to process it. For embedded devices, it is highly unlikely that they will be able to handle the request, and thus it is usually better if they can stay in power-save mode. Using multicast instead of broadcast allows the network interface to determine in hardware whether the packet is interesting enough to warrant waking up the main processor, which significantly increases battery lifetime for these devices.
As it's explained incredibly well, I prefer to cut&paste the answer. This is from "The TCP/IP Guide", a must read:
IPv6 does not implement traditional IP broadcast, and therefore does not define broadcast addresses. In IPv6, the same result can be achieved by sending a packet to the link-local all nodes multicast group which is analogous to IPv4 broadcast.
In IPv4 "broadcasts" are really just sent to everyone on the local broadcast domain, which is a finite domain. Multicast is sent to a finite domain defined by a particular group. See how IPv4 'broadcasts' are just a particular subset of multicast (where the 'group' is everyone). In IPv6 they eliminated the redundant term.
A broadcast assumes that everyone is interested in your packet, and all hosts need to process it. For embedded devices, it is highly unlikely that they will be able to handle the request, and thus it is usually better if they can stay in power-save mode. Using multicast instead of broadcast allows the network interface to determine in hardware whether the packet is interesting enough to warrant waking up the main processor, which significantly increases battery lifetime for these devices.