다중 프로토콜 레이블 스위칭(Multiprotocol Label Switching, 멀티프로토콜 라벨 스위칭)은 고성능 통신 네트워크를 위한 일종의 데이터 전달 기법이다. MPLS는 긴 네트워크 주소가 아닌 짧은 경로 레이블을 기반으로 데이터를 하나의 네트워크 노드에서 다음 노드로 넘겨주며 이로써 라우팅 테이블의 복잡한 검색을 회피할 수 있다. 이 레이블들은 종점이 아닌, 거리가 먼 노드 간의 가상 링크(paths)를 식별한다. MPLS는 다양한 통신 프로토콜의 패킷을 캡슐화하므로 "다중 프로토콜"이라는 이름이 붙었다. MPLS는 T1/E1, ATM, 프레임 릴레이, DSL과 같은 일정한 범위의 접근 기술을 지원한다.
MPLS는 하나 이상의 레이블을 포함하는 MPLS 헤더와 함께 패킷을 앞에 붙임으로써 동작한다. 이를 레이블 스택이라고 한다. 레이블 스택 내의 각 엔트리는 4개의 필드를 포함한다:
| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 레이블 | TC: 트래픽 클래스 (QoS와 ECN) | S: 바텀 오브 스택(Bottom-of-Stack) | TTL: Time-to-Live | ||||||||||||||||||||||||||||