The key word is "need." It's not often that there is an urgent need for an Internet standard. However, TCP/IP is probably the single most broadly used Internet standard out there, and its technical shortcomings are finally catching up with it in ways that may make it unusable in a short span of time.
The first and biggest problem with TCP/IP as it exists now is address space. We are, quite simply, rapidly reaching a point where available network address space is running out.
The current incarnation of TCP/IP uses a 32-bit address space -- four bytes are used to represent each Internet address. In theory, this makes it possible to have 4,294,967,296 addresses (256 to the power of 4), but in practice the number is far smaller than that. Many great swathes of the TCP/IP address space are used for internal addressing or control, and aren't actually useable as address space. The 192.168.x.x space, for instance, is reserved for private in-house networks, as anyone who's ever set up a NAT or firewall will know.
The IANA, or Internet Assigned Numbers Authority, is the group which handles the actual assignments for TCP/IP numberings. Right now every block of Class A addresses (the first byte in the four-byte address) is staked out in some fashion; if you go to http://www.iana.org/assignments/ipv4-address-space, you can see exactly what blocks are assigned to what purposes. Some of these Class A blocks are staked out by corporations or government concerns-- Xerox, for instance, has the entire 13 block, and the US Postal Service has block 56. Some of these blocks are also reserved for ISP use -- block 24 has been repurposed for cablemodem addresses.
There are some ways to get around the address-space crunch. Using DHCP (and NAT) to assign temporary addresses to transient nodes, or using host headers to support multiple DNS entries on a single IP address, can alleviate the problem when it comes to setting up addresses for individual machines or within an ISP. But these are at best Band-Aids for a gaping wound, so to speak. The only long-term solution for a nearly-exhausted address space is to devise a new addressing scheme which will not run the risk of being used up anytime soon.6to4 addresses and Neighbor Discovery
6to4 addresses are used to connect between nodes running both IPv4 and IPv6, which allows for IPv6 to be routed over IPv4 infrastructures. 6to4 technology is critically important, since it will be what bridges the old networks with the new. If you have a machine with an IPv6 stack and can connect to the Net, you can talk to a 6to4 node and access machines hosted on IPv6 networks available from that node. Right now there are a few public 6to4 nodes, which allow people to access IPv6 networks from the public Internet.
To implement 6to4, a variety of tunneling techniques (as in RFC 3056) are used, where IPv4 addresses are turned into IPv6 addresses by using the prefix 2002::/16 with the IPv4 32-bit address. Representing IPv4-only nodes in IPv6 nodes, though, is done a little differently. A special mapped-address designation is used: 0:0:0:0:0:FFFF:a.b.c.d, where a.b.c.d is the IPv4 address. (This is used for internal representation only, not for routed packets.) A routable IPv4 address can be represented by simply using the designation ::a.b.c.d, where a.b.c.d is an existing IPv4 address. This is used by nodes that use both IPv6 and IPv4 protocols, so that IPv6 packets can be routed into an IPv6 network from an IP4 network. Since IPv4 simply cannot be rejected wholesale, the idea is to build as many possible backwards-compatible extensions into the system without making it hidebound.
Note that 6to4 should not be confused with 6over4, which is the mechanism for encapsulating IPv6 traffic in IPv4.
Neighbor discovery in IPv6 is how hosts learn of the presence of routers on the network. Rather than wait for routers or neighboring nodes to advertise their presence, as in IPv4, a v6 host broadcasts a Router Solicitation message and waits for a response in the form of a router advertisement message. Routers do still broadcast passive advertisement messages on the network, but the point is they will also respond if "asked." Note also that nodes will only send advertisement messages if there is a change in the link-layer address, or when the "lifetime" of the broadcast has elapsed -- i.e., when it expires after a certain period of time, prompting the neighbors to perform a redetect.
Once neighbor information is gleaned, it's kept in a cache similar to the ARP cache of IPv4; in v6, it's called the Neighbor Cache. Destination information, prefixes, and default routers are also collected and cached.