MPLS and GMPLS are technologies for traffic engineering and provisioning. MPLS brings layer 2 switching speeds to layer 3 and supports multiple layer 2 technologies. GMPLS generalizes MPLS to support different network types including packet, TDM, and wavelength services. While MPLS may eventually replace ATM, the migration will likely be gradual due to existing network investments and immaturity of the technologies. The future success of GMPLS depends on proving its benefits for provisioning IP over optical networks.