PIM Sparse 모드 이해
PIM(Protocol Independent Multicast) Sparse 모드 도메인은 RPF(Reverse-Path Forwarding)를 사용하여 데이터 소스에서 데이터를 요청하는 수신자까지의 경로를 생성합니다. 수신자가 명시적 참가 요청을 발행하면 RPF 검사가 트리거됩니다. (*,G) PIM 참가 메시지는 수신기의 DR(Designated Router)에서 RP로 전송됩니다. (정의에 따라 이 메시지는 실제로 join/prune 메시지라고 하지만 이 설명의 명확성을 위해 컨텍스트에 따라 join 또는 prune이라고 합니다.) 참가 메시지는 RP에 도달할 때까지 각 라우터의 RPF 인터페이스를 통해 ALL-PIM-ROUTERS 그룹(224.0.0.13)에 대한 홉 업스트림에 의해 멀티캐스트 홉입니다. RP 라우터는 (*,G) PIM 참가 메시지를 수신하고 수신된 인터페이스를 RPT(랑데부 포인트 트리) 포워딩 상태 항목의 OIL(Outgoing Interface List)에 추가합니다. 이렇게 하면 수신기와 RP를 연결하는 RPT가 구축됩니다. RPT는 트래픽을 생성하는 활성 소스가 없더라도 계속 유효합니다.
상태 - (*,G) 또는 (S,G) 항목은 유니캐스트 또는 멀티캐스트 패킷을 전달하는 데 사용되는 정보입니다. S는 소스 IP 주소, G는 멀티캐스트 그룹 주소, *는 그룹 G로 전송하는 모든 소스를 나타냅니다. 라우터는 각 그룹의 수신 및 발신 인터페이스에 대한 멀티캐스트 전달 상태를 추적합니다.
소스가 활성화되면 소스 DR은 멀티캐스트 데이터 패킷을 PIM 레지스터 메시지로 캡슐화하고 유니캐스트를 통해 RP 라우터로 보냅니다.
RP 라우터에 PIM 스파스 모드 도메인에 관심 있는 수신기가 있는 경우, 소스에 PIM 가입 메시지를 전송하여 소스에 최단 경로 트리(SPT)를 다시 구축합니다. 소스는 LAN에서 멀티캐스트 패킷을 전송하고, 소스 DR은 패킷을 PIM 레지스터 메시지로 캡슐화하고 유니캐스트를 통해 RP 라우터로 메시지를 전달합니다. RP 라우터는 소스로부터 PIM 레지스터 메시지를 다시 수신하므로 배포 트리에 새 소스를 추가하여 PIM 테이블의 소스를 추적합니다. RP 라우터가 기본적으로 패킷을 수신하면(S, G 포함) 유니캐스트를 통해 레지스터 메시지 수신을 중지하기 위해 레지스터 중지 메시지를 보냅니다.
실제 애플리케이션에서는 여러 SPT를 가진 많은 수신기가 멀티캐스트 트래픽 흐름에 관여합니다. 프로세스를 설명하기 위해 RP 라우터에서 하나의 수신기로의 멀티캐스트 트래픽을 추적합니다. 이 경우 RP 라우터는 관심 있는 수신자에게 전달하기 위해 RPT를 통해 수신자의 DR을 향해 멀티캐스트 패킷을 전송하기 시작합니다. 수신기의 DR이 RPT에서 첫 번째 패킷을 수신하면 DR은 소스 DR을 향해 PIM 가입 메시지를 전송하여 소스에 SPT를 다시 구축하기 시작합니다. 소스 DR이 수신기의 DR로부터 PIM join 메시지를 수신하면 모든 SPT로 트래픽을 전송하기 시작합니다. 첫 번째 멀티캐스트 패킷이 수신기의 DR에 의해 수신되면 수신기의 DR은 RPT 라우터에 PIM 정리 메시지를 전송하여 중복 패킷이 RPT를 통해 전송되는 것을 중지합니다. 그러면 RP 라우터는 수신자의 DR로의 멀티캐스트 패킷 전송을 중단하고 RPT를 통해 이 소스에 대한 PIM 정리 메시지를 소스 DR로 보내 해당 특정 소스에서 RP 라우터로의 멀티캐스트 패킷 전달을 중단합니다.
RP 라우터가 활성 소스로부터 PIM 레지스터 메시지를 수신하지만 PIM 스파스 모드 도메인에 관심 있는 수신자가 없는 경우에도 활성 소스를 PIM 테이블에 추가합니다. 그러나 활성 소스를 PIM 테이블에 추가한 후 RP 라우터는 레지스터 중지 메시지를 보냅니다. RP 라우터는 활성 소스의 존재를 발견하고 더 이상 소스의 보급을 수신할 필요가 없습니다(리소스 활용).
PIM join 메시지 수가 구성된 최대 전송 단위(MTU)를 초과하면 IPv6 PIM 스파스 모드에서 메시지가 단편화됩니다. PIM 가입 메시지의 단편화를 방지하기 위해 멀티캐스트 트래픽은 경로 MTU 대신 인터페이스 MTU를 수신합니다.
PIM Sparse 모드의 주요 특징은 다음과 같습니다.
다운스트림 수신기가 있는 라우터는 명시적 참가 메시지를 통해 PIM 스파스 모드 트리에 가입합니다.
PIM Sparse 모드 RP는 수신자가 소스를 만나는 라우터입니다.
발신자는 하나 이상의 RP에 자신의 존재를 알리고, 수신자는 RP를 쿼리하여 멀티캐스트 세션을 찾습니다.
수신자가 RP를 통해 소스에서 콘텐츠를 가져오면 새 소스 기반 트리(S,G)가 더 짧은 경우 마지막 홉 라우터(수신자에 가장 가까운 라우터)가 공유 배포 트리(*,G)에서 RP를 선택적으로 제거할 수 있습니다. 그러면 수신자는 소스에서 직접 콘텐츠를 가져올 수 있습니다.
PIM Sparse 모드가 공유에서 소스 기반 트리로 전환되는 것은 RP 또는 주변 코어 링크의 과부하를 방지하기 때문에 PIM의 주요 기능 중 하나입니다.
스파스 모드 멀티캐스트를 사용할 때 소스, RP 및 수신기와 관련된 문제가 있습니다.
소스는 모든 RP에 보낼 수 있어야 합니다.
RP는 모두 서로를 알고 있어야 합니다.
수신자는 알려진 RP에 명시적 참가 메시지를 보내야 합니다.
수신자는 처음에 하나의 RP만 알면 됩니다(나중에 다른 RP에 대해 알게 됨).
수신자는 트리에서 명시적으로 자신을 잘라낼 수 있습니다.
소스 기반 트리로 전환되지 않는 수신기는 코어 기반 트리(CBT)를 효과적으로 실행하고 있습니다.
PIM 스파스 모드에는 이러한 모든 문제에 대한 표준 기능이 있습니다.
랑데부 포인트
RP 라우터는 다른 라우터에 대한 정보 교환 지점 역할을 합니다. PIM 도메인의 모든 라우터는 RP 라우터에 대한 매핑을 제공해야 합니다. 도메인의 활성 소스를 알아야 하는 유일한 라우터이며, 다른 라우터는 RP에 도달하는 방법만 알면 됩니다. 이러한 방식으로 RP는 수신기를 소스와 일치시킵니다.
RP 라우터는 소스에서 다운스트림되며 최단 경로 트리의 한쪽 끝을 형성합니다. 그림 1에서 볼 수 있듯이 RP 라우터는 수신기의 업스트림이므로 랑데부 포인트 트리의 한쪽 끝을 형성합니다.
RP를 정보 교환 지점으로 사용하면 RP가 아닌 라우터의 상태 양이 줄어든다는 이점이 있습니다. 활성 소스에 대한 비 RP 라우터 정보를 제공하기 위해 네트워크 플러딩이 필요하지 않습니다.
RP 매핑 옵션
RP는 다음 메커니즘 중 하나를 통해 학습할 수 있습니다.
정적 구성
애니캐스트 RP
자동 RP
부트스트랩 라우터
정적 매핑은 전체 BSR 및 auto-RP 메커니즘의 복잡성 없이 부트스트랩 라우터 및 auto-RP의 모든 이점을 제공하기 때문에 애니캐스트 RP를 사용한 정적 RP 매핑과 auto-RP 구성을 사용하는 부트스트랩 라우터(BSR)를 사용하는 것이 좋습니다.