멀티캐스트 라우팅 정보
멀티캐스트 라우팅은 단일 정보 스트림을 수천 개의 기업 수신자와 가정으로 동시에 제공함으로써 트래픽을 줄이는 대역폭 절약 기술입니다. 멀티캐스트 라우팅을 활용하는 분야로는 화상 회의, 기업 통신, 원거리 학습, 소프트웨어 배포, 주식 시세 및 뉴스가 있습니다.
멀티캐스트 라우팅 프로토콜은 소스나 수신자에 추가적인 부담을 주지 않고 경쟁 기술 중에서도 가장 적은 네트워크 대역폭을 사용하여 소스 트래픽을 여러 수신자에게 보냅니다. 멀티캐스트 패킷은 PIM(Protocol Independent Multicast) 및 기타 지원 멀티캐스트 프로토콜로 활성화되는 FTD 디바이스에 의해 네트워크에서 복제되어 여러 수신자에게 데이터를 가장 효율적으로 제공할 수 있습니다.
FTD 디바이스는 stub 멀티캐스트 라우팅과 PIM 멀티캐스트 라우팅을 모두 지원합니다. 하지만 두 라우팅을 하나의 FTD 디바이스에 동시에 구성할 수는 없습니다.
참고 |
멀티캐스트 라우팅에 대해 UDP 및 비 UDP 전송이 모두 지원됩니다. 그러나 비 UDP 전송에는 FastPath 최적화가 없습니다. |
IGMP 프로토콜
IP 호스트가 IGMP(Internet Group Management Protocol)를 사용하여 그룹 멤버십을 직접 연결된 멀티캐스트 라우터로 보고합니다. IGMP는 특정 LAN의 멀티캐스트 그룹에서 개별 호스트를 동적으로 등록하는 데 사용됩니다. 호스트는 IGMP 메시지를 로컬 멀티캐스트 라우터로 전송함으로써 그룹 멤버십을 식별합니다. IGMP에서 라우터가 IGMP 메시지를 듣고 주기적으로 쿼리를 보내 특정 서브넷에서 어떤 그룹이 활성 상태이고 어떤 그룹이 비활성 상태인지 파악합니다.
IGMP는 그룹 주소(Class D IP 주소)를 그룹 식별자로 사용합니다. 호스트 그룹 주소 범위는 224.0.0.0 ~ 239.255.255.255입니다. 224.0.0.0 주소는 어떤 그룹에도 할당되지 않습니다. 224.0.0.1 주소는 서브넷의 모든 시스템에 할당됩니다. 224.0.0.2 주소는 서브넷의 모든 라우터에 할당됩니다.
참고 |
Firepower Threat Defense 디바이스에서 멀티캐스트 라우팅을 활성화할 경우 IGMP 버전 2가 모든 인터페이스에서 자동으로 활성화됩니다. |
- 멀티캐스트 그룹으로의 쿼리 메시지
-
Firepower Threat Defense 디바이스는 쿼리 메시지를 보내 어떤 멀티캐스트 그룹이 인터페이스에 연결된 네트워크의 멤버인지 확인합니다. 멤버는 특정 그룹에 대한 멀티캐스트 패킷을 받고 싶다는 의미의 IGMP 보고 메시지로 응답합니다. 쿼리 메시지는 주소가 224.0.0.1이고 time-to-live 값이 1인 전체 시스템 멀티캐스트 그룹으로 전달됩니다.
이 메시지는 주기적으로 전송되어 Firepower Threat Defense 디바이스에 저장된 멤버십 정보를 새로 고침합니다. Firepower Threat Defense 디바이스가 아직 인터페이스에 연결된 멀티캐스트 그룹의 로컬 멤버가 없다고 확인하면 해당 그룹의 멀티캐스트 패킷을 연결된 네트워크로 더 이상 전달하지 않고 prune 메시지를 다시 패킷 소스로 전송합니다.
기본적으로 서브넷의 PIM 지정 라우터가 쿼리 메시지 전송을 담당합니다. 기본적으로 125초마다 한 번 전송됩니다.
쿼리 응답 시간을 변경할 경우 IGMP 쿼리에서 알려지는 최대 쿼리 응답 시간은 기본적으로 10초입니다. 이 시간 내에 Firepower Threat Defense 디바이스가 호스트 쿼리에 대한 응답을 받지 못하면 그 그룹이 삭제됩니다.
stub 멀티캐스트 라우팅
Stub 멀티캐스트 라우팅은 동적 호스트 등록을 제공하고 멀티캐스트 라우팅을 촉진합니다. stub 멀티캐스트 라우팅에 대해 구성된 경우 FTD 디바이스는 IGMP 프록시 에이전트 역할을 합니다. 멀티캐스트 라우팅에 완전히 참여하는 대신 FTD 디바이스는 IGMP 메시지를 업스트림 멀티캐스트 라우터로 전송하고 이 라우터가 멀티캐스트 데이터 전송을 설정합니다. stub 멀티캐스트 라우팅에 대해 구성된 경우 FTD 디바이스는 PIM 스파스 또는 양방향 모드에 대해 구성될 수 없습니다. IGMP 스텁 멀티캐스트 라우팅에 참여 중인 인터페이스에서 PIM을 활성화해야 합니다.
FTD 디바이스는 PIM-SM과 양방향 PIM을 모두 지원합니다. PIM-SM은 기본 유니캐스트 라우팅 정보 기반 또는 별도의 멀티캐스트 지원 라우팅 정보 기반을 사용하는 멀티캐스트 라우팅 프로토콜입니다. 또한 멀티캐스트 그룹당 단일 RP(랑데부 포인트)를 루트로 삼는 단방향 공유 트리를 구축하고 선택적으로 멀티캐스트 소스별로 최단 경로 트리를 생성합니다.
PIM 멀티캐스트 라우팅
양방향 PIM은 멀티캐스트 소스와 수신자를 연결하는 양방향 공유 트리를 구축하는 PIM-SM의 변형입니다. 양방향 트리는 멀티캐스트 토폴로지의 각 링크에서 작동하는 DF(Designated Forwarder) 선택 프로세스를 사용하여 구축됩니다. 멀티캐스트 데이터는 DF의 도움을 받아 소스에서 RP(랑데부 포인트)로 전달되고 따라서 소스별 상태 없이도 공유 트리에서 수신자를 따르게 됩니다. DF 선택은 RP 검색 중에 이루어지고 RP에 대한 기본 경로를 제공합니다.
참고 |
FTD 디바이스가 PIM RP인 경우 FTD 디바이스의 변환되지 않은 외부 주소를 RP 주소로 사용합니다. |
PIM 소스별 멀티캐스트 지원
FTD 디바이스는 PIM SSM(Source Specific Multicast) 기능 및 관련된 구성을 지원하지 않습니다. 그러나 FTD 디바이스는 마지막 홉 라우터로 배치되는 경우를 제외하고 SSM 관련 패킷이 통과하도록 허용합니다.
SSM은 IPTV 같은 일대다 애플리케이션에 대한 데이터 전달 메커니즘으로 분류됩니다. SSM 모델은 (S,G) 쌍으로 표시된 "채널"의 개념을 사용하며, 여기서 S는 소스 주소이고 G는 SSM 대상 주소입니다. 채널 가입은 IGMPv3 같은 그룹 관리 프로토콜을 사용하여 수행됩니다. SSM이 특정 멀티캐스트 소스를 확인한 경우, 수신 클라이언트가 공유 RP(랑데부 포인트)에서 수신하는 대신 소스에서 직접 멀티캐스트 스트림을 수신하게 합니다. 액세스 제어 메커니즘은 현재 SM(Sparse Mode) 또는 SDM(Sparse-Dense Mode) 구현으로 사용할 수 없는 보안 향상을 제공하는 SSM 내에서 도입되었습니다.
PIM-SSM은 RP 또는 공유 트리를 사용하지 않는 점에서 PIM-SM과 다릅니다. 대신, 멀티캐스트 그룹의 소스 주소에 대한 정보가 IGMPv3(로컬 리시버십 프로토콜)를 통해 리시버에서 제공되고 소스별 트리를 직접 구축하는 데 사용됩니다.
멀티캐스트 양방향 PIM
멀티캐스트 양방향 PIM은 여러 소스와 수신자가 동시에 서로 통신하고 화상회의, Webex 회의 및 그룹 채팅에서 각 참가자가 멀티캐스트 트래픽의 소스 및 수신자가 될 수 있는 네트워크에 유용합니다. PIM 양방향 모드가 사용되면 RP는 공유 트리에 대해서만 (*, G) 항목을 만듭니다. (S, G) 항목은 없습니다. 각 (S, G) 항목의 상태 테이블이 유지되지 않으므로 RP에서 리소스가 보존됩니다.
PIM 스파스 모드에서 트래픽은 공유 트리 아래로만 흐릅니다. PIM 양방향 모드에서는 트래픽이 공유 트리의 위아래로 흐릅니다.
또한 PIM 양방향 모드는 PIM register/register-stop 메커니즘을 사용하여 소스를 RP에 등록하지 않습니다. 각 소스는 언제든지 소스로 전송을 시작할 수 있습니다. 멀티캐스트 패킷이 RP에 도착하면 공유 트리(수신자가 있는 경우)로 전달되거나 삭제(수신자가 없는 경우)됩니다. 하지만 RP의 경우 소스에 멀티캐스트 트래픽 전송을 중지하도록 알릴 방법이 없습니다.
네트워크상의 소스와 수신자 사이의 중간에 RP가 있어야 하므로 RP의 위치를 생각해야 합니다.
PIM 양방향 모드에는 RPF(Reverse Path Forwarding) 확인이 없습니다. 대신 DF(Designated Forwarder) 개념을 사용하여 루프를 방지합니다. 이 DF는 멀티캐스트 트래픽을 RP에 전송할 수 있는 세그먼트의 유일한 라우터입니다. 멀티캐스트 트래픽을 전달하는 세그먼트당 하나의 라우터만 있으면 루프가 없습니다. DF는 다음 메커니즘을 사용하여 선택됩니다.
-
RP에 가장 낮은 메트릭을 가진 라우터가 DF입니다.
-
메트릭이 동일한 경우 IP 주소가 가장 큰 라우터가 DF가 됩니다.
PIM BSR(부트스트랩 라우터)
PIM BSR(부트스트랩 라우터)은 그룹에 대해 RP 정보를 릴레이하기 위해, 그리고 RP 기능을 위해 후보 라우터를 사용하는 동적 RP(랑데부 포인트) 선택 모델입니다. RP 기능은 RP 검색을 포함하며 RP에 대한 기본 경로를 제공합니다. RP 기능은 이를 위해 디바이스 집합을 BSR 선택 프로세스에 참여하는 C-BSR(후보 BSR)로 구성하여 후보 중에서 BSR을 선택하는 방식을 이용합니다. BSR을 선택한 후 C-RP(후보 랑데부 포인트)로 구성된 디바이스는 선택한 BSR로 그룹 매핑을 전송하기 시작합니다. 그런 다음 BSR은 홉에 기반하여 PIM 라우터 간에 이동하는 BSR 메시지를 통해 멀티캐스트 트리 아래의 모든 기타 디바이스로 그룹-RP 매핑 정보를 배포합니다.
이 기능은 RP를 동적으로 확인하는 수단을 제공하는데, 이는 RP가 정기적으로 아래위로 이동할 수 있는 대규모의 복잡한 네트워크에서 매우 필수적입니다.
PIM BSR(부트스트랩 라우터) 용어
다음 조건은 PIM BSR 구성에서 자주 참조됩니다.
-
BSR(부트스트랩 라우터) — BSR은 PIM을 사용하여 RP(랑데부 포인트) 정보를 다른 라우터에 홉별로 알립니다. 선택 프로세스 이후에 여러 후보 BSR 중에서 단일 BSR이 선택됩니다. 이 부트스트랩 라우터의 주목적은 모든 C-RP(Candidate-RP) 알림을 RP-set(RP 집합)이라고 하는 데이터베이스에 수집하고 이를 BSR 메시지로 60초마다 네트워크에 있는 다른 모든 라우터에 정기적으로 전송하는 것입니다.
-
BSR(부트스트랩 라우터) 메시지 — BSR 메시지는 All-PIM-Routers(모든 PIM 라우터) 그룹에 대한 멀티캐스트입니다(TTL이 1). 이러한 메시지를 수신하는 모든 PIM 네이버는 메시지를 수신한 인터페이스를 제외한 모든 인터페이스 외부로 해당 메시지를 TTL을 1로 재전송합니다. BSR 메시지는 RP 집합 및 현재 활성 BSR의 IP 주소를 포함합니다. 이를 통해 C-RP는 자신의 C-RP 메시지를 유니캐스트할 위치를 확인합니다.
-
C-BSR(후보 부트스트랩 라우터) — 후보-BSR로 구성된 디바이스는 BSR 선택 메커니즘에 참여합니다. 우선순위가 가장 높은 C-BSR은 BSR로 선택됩니다. C-BSR의 우선순위가 가장 높은 IP 주소는 타이 브레이커로 사용됩니다. BSR 선택 프로세스는 선점형입니다. 예를 들어, 우선순위가 더 높은 새로운 C-BSR이 가동되면 새로운 선택 프로세스가 트리거됩니다.
-
C-RP(후보 랑데부 포인트) — RP는 소스 및 멀티캐스트 데이터의 수신자가 만나는 공간의 역할을 합니다. C-RP로 구성된 디바이스는 정기적으로 유니캐스트를 통해 선택한 BSR로 직접 멀티캐스트 그룹 매핑 정보를 알립니다. 이러한 메시지에는 그룹 범위, C-RP 주소 및 보류 시간이 포함되어 있습니다. 현재 BSR의 IP 주소는 네트워크의 모든 라우터에서 수신하는 정기적인 BSR 메시지에서 확인됩니다. 이러한 방법으로 BSR은 현재 작동 중이며 연결 가능한 RP를 확인합니다.
참고
C-RP가 BSR 트래픽에 대한 필수 요구 사항인 경우에도 FTD 디바이스는 C-RP로 작동하지 않습니다. 라우터만 C-RP로 작동할 수 있습니다. 따라서 BSR 테스트 기능을 위해 라우터를 토폴로지에 추가해야 합니다.
-
BSR 선택 메커니즘 — 각 C-BSR은 BSR Priority(BSR 우선순위) 필드를 포함하는 부트스트랩 메시지(BSM)를 시작합니다. 도메인 내의 라우터는 도메인 전체에서 BSM을 플러딩합니다. 자신보다 우선순위가 높은 C-BSR를 알고 있는 C-BSR은 일정 기간 동안 추가 BSM 전송을 표시하지 않습니다. 나머지 단일 C-BSR은 선택된 BSR이 되며 해당 BSM은 도메인에 있는 모든 기타 라우터에 자신이 선택된 BSR임을 알립니다.
멀티캐스트 그룹 개념
멀티캐스트는 그룹 개념을 기반으로 합니다. 임의의 수신자 그룹이 특정 데이터 스트림 수신에 관심을 표현합니다. 이 그룹은 물리적 또는 지리적 경계가 없이 호스트가 인터넷의 어디에나 위치할 수 있습니다. 특정 그룹으로 향하는 데이터 수신에 관심이 있는 호스트는 IGMP를 사용하여 그룹에 참여해야 합니다. 호스트가 그룹의 일원이어야만 데이터 스트림을 받을 수 있습니다.
멀티캐스트 주소
멀티캐스트 주소는 그룹에 참여하고 이 그룹으로 전송된 트래픽을 수신하고자 하는 임의의 IP 호스트 그룹입니다.
클러스터링
멀티캐스트 라우팅은 클러스터링을 지원합니다. 스팬 EtherChannel 클러스터링에서 제어 유닛은 빠른 경로 전달이 설정될 때까지 모든 멀티캐스트 라우팅 패킷과 데이터 패킷을 전송합니다. fast-path 전달이 설정된 후에는 데이터 유닛이 멀티캐스트 데이터 패킷을 전송할 수 있습니다. 모든 데이터 흐름은 완전한 흐름입니다. Stub 전달 흐름도 지원됩니다. Spanned EtherChannel 클러스터링에서는 하나의 유닛만 멀티캐스트 패킷을 받기 때문에 제어 유닛으로의 리디렉션이 일반적입니다.