MPLS : Multiprotocol label switching
MPLS : Multiprotocol label switching
지금까지는 IP주소를 가지고 경로를 찾아왔다. IP주소 대신에 고정된 하나의 label을 가지고 forwarding을 해주는 것이다.
특정 source IP주소에서 destination IP주소까지 데이터가 날아가기 위해선 라우터 입장에서 매번 데이터가 지나갈 때마다 같은 주소임에도 불구하고 매번 찾아가야 한다. 특정 src 주소에서 특정 des 주소까지 날아가는 flow가 주어져 있다면 그 flow에다가 하나의 label을 붙이겠다는 것이다.
IP주소 대신에 fixed length identifier label이라는 하나의 번호를 부여해서 그 번호면 빠르게 찾을 수 있게 하고, 매번 라우팅 알고리즘을 돌릴 게 아니라, 고정된 번호를 보고 forwarding해준다.
그리고 Virtual Circuit(VC)의 아이디어를 빌리는데, VC는 일종의 circuit switching이다. 음성 같이 고정된 경로로 날아가는 것이다. 하나의 link가 만들어지면 마치 circuit처럼 동작시켜보자는 것이다.
그러나 여전히 IP주소는 남아있음을 알고 있자. IP헤더 앞에 MPLS header를 붙이고, 이 header에는 20byte짜리 label이 들어가 있다. IP header는 Layer 3이고, MPLS header는 Layer 2이다.
MPLS capable routers
MPLS를 동작시키는 라우터이다. label-switched router라고도 부른다. IP주소를 보지 않고 label 값을 보고 패킷을 forwarding한다. IP forwarding table하고 다른 MPLS forwarding table이 필요하다.
IP는 매번 datagram이 올 때마다 forwarding을 계산하나 MPLS는 des와 src address를 모두 활용해서 까보는 것이다. IP에서는 destination IP 주소만 받는데, MPLS는 des와 src를 받아서 하나의 flow로 보는 것이다.
traffic engineering도 된다. 특정 라우터로 트래픽이 몰리지 않도록 한다.
link가 fail이 났다면 re-route도 빨리 할 수 있다. 미리 백업 path를 계산해놓기 때문이다. 문제가 생기면 백업 path로 보내준다. VoIP와 같이 데이터가 계속 날아가는 경우에 유리하다. 실제론 MPLS를 많이 쓰진 않는다.
MPLS vs IP path
IP routing은 path가 des address만 보고 라우팅한다. R4나 R2는 어디서 왔든 동일한 경로로 des로 보낸다.
MPLS routing은 R6에서 A로 가는 것과 R5에서 A로 가는 것이 다른다. 각각 src와 des를 보기 때문에 다르게 경로를 할당할 수 있다. 그래서 traffic engineering이 가능하다.
MPLS signaling
경로를 뚫어주려면 signaling이라는 과정이 필요하다. 그래서 OSPF, IS-IS, link-state flooding 이런 것들을 비슷하게 쓴다. flooding을 통해서 link bandwidth를 보고 예약한다.
R6에서 A로 가는 경로를 만드려는데 중간 라우터한테 이정도 bandwidth 예약해달라고 요청한다. 즉 예약해서 하나의 경로를 뚫어주는 것이다.
bandwidth가 예약된다는 것은 QoS가 보장된다는 것이다. QoS에서 쓰면 유리하다. 그런데 비용이 들어가는 부분이고, 중간의 모든 라우터가 모든 라우터를 예약을 다 해줘야 하니 경로 상에 있는 라우터들이 하나의 회사 (service provider 등)에 속하는 이런 경우에는 돌아갈 수 있다.
MPLS forwarding tables 예제
label 번호를 갖고 하나의 경로가 뚫어지면 결국 A로 가는 경로들이 table별로 유지된다. 이런 식으로 MPLS가 돌아간다. 3계층하고 비슷한 역할이다. 정확히 말하면 2계층과 3계층 사이이다. 중간에 하나 집어넣어서 이러한 용도로도 쓸 수 있게 한 것이다.
[참고]
Computer Networking A Top-Down Approach 7-th Edition / Kurose, Ross / Pearson
'IT > 네트워크' 카테고리의 다른 글
[ 네크워크 ] Wireless Network (무선 네트워크) (1) | 2020.07.10 |
---|---|
[ 네트워크 ] Data center networks (0) | 2020.07.03 |
[ 네트워크 ] VLAN (0) | 2020.07.03 |
[ 네트워크 ] Ethernet (0) | 2020.07.03 |
[ 네트워크 ] MAC protocol ( + ARP ) (0) | 2020.07.03 |
댓글