Multilayer (or multiprotocol) label switching is, in a broad sense, the use of layer 2 constructs (``labels'' or (Cisco's term) ``tags''), such as (possibly extended) Ethernet headers or ATM VC identifiers, for higher-level purposes. It is called ``multilayer'' because in effect we are encoding routing and session information, normally considered as being part of layer 3 and higher in the OSI model, into layer 2 labels. This is sometimes called ``layer '' routing.
Label switching is also referred to as ``multiprotocol'' since it is envisioned as a way of accommodating the ``advanced'' routing needs of multiple higher-level protocol types with the facilities of a particular link layer (in particular, ATM running both IP and ``native'' protocols).
There are two basic advantages to label switching: efficiency, in that routing decisions and the like can be made (or more precisely carried out) at layer 2 (including by layer 2-only ``switch'' devices); and functionality, in that the additional layer 2 ``label'' or ``tag'' can be used for various purposes (multicast group definition, quality of service routing, load balancing, etc.) which may not directly covered by IP header information alone, or may not be set properly by an originating (naive) host. An important consequence of this is that an implementation environment for multilayer label protocols also allows the development and testing of many other routing and session algorithms as well.