MPLS is a forwarding mechanism that allows routers to forward packets based on labels rather than IP addresses. It is called multi-protocol label switching because it supports various protocols and layer 2.5 technology because it places the MPLS header between the layer 2 and layer 3 headers. MPLS provides advantages like decreasing forwarding overhead, supporting applications like VPNs, TE, and QoS, and supporting non-IP protocols. It uses protocols like LDP and TDP and has default label ranges of 16-100000.