예: 멀티캐스트 스누핑 구성
멀티캐스트 스누핑 이해하기
라우터와 같은 네트워크 디바이스는 주로 패킷 레벨 또는 레이어 3에서 작동합니다. 브리지 또는 LAN 스위치와 같은 다른 네트워크 디바이스는 주로 프레임 레벨 또는 레이어 2에서 작동합니다. 멀티캐스팅은 주로 패킷 레벨인 레이어 3에서 작동하지만, 레이어 3 IP 멀티캐스트 그룹 주소를 프레임 레벨에서 레이어 2 MAC 멀티캐스트 그룹 주소로 매핑하는 방법이 있습니다.
라우터는 레이어 2 및 레이어 3 주소 지정 정보를 모두 처리할 수 있는데, 이는 프레임과 해당 주소가 내부의 캡슐화된 패킷에 액세스하기 위해 처리되어야 하기 때문입니다. 라우터는 PIM 또는 IGMP와 같은 레이어 3 멀티캐스트 프로토콜을 실행하고 멀티캐스트 콘텐츠를 전달할 위치 또는 인터페이스의 호스트가 그룹에 가입하거나 탈퇴할 시기를 결정할 수 있습니다. 그러나 레이어 2 디바이스인 브리지와 LAN 스위치는 프레임이 전달하는 패킷 내부의 멀티캐스트 정보에 액세스할 수 없어야 합니다.
그렇다면, 브리지 및 기타 레이어 2 디바이스는 인터페이스의 디바이스가 멀티캐스트 트리에 합류하거나 탈퇴하는 시점 또는 연결된 LAN의 호스트가 특정 멀티캐스트 그룹의 콘텐츠를 수신하기를 원하는지 여부를 어떻게 결정해야 할까요?
해답은 레이어 2 디바이스가 멀티캐스트 스누핑을 구현하는 것입니다. 멀티캐스트 스누핑은 일반적인 용어이며 프레임을 처리하거나 전달하기 위해 어떤 작업을 수행할지 결정하기 위해 레이어 3 패킷 콘텐츠에서 레이어 2 디바이스 "스누핑" 프로세스에 적용됩니다. IGMP 스누핑 또는 PIM 스누핑과 같은 보다 구체적인 형태의 스누핑이 있습니다. 모든 경우에 스누핑은 일반적으로 "금지된" 레이어 3(패킷) 정보에 액세스할 수 있는 레이어 2에서 작동하도록 구성된 디바이스를 포함합니다. 스누핑은 이러한 장치에서 멀티캐스팅을 보다 효율적으로 만듭니다.
또한보십시오
멀티캐스트 스누핑 및 VPLS 루트 보호 이해하기
스누핑은 스패닝 트리 프로토콜과 같은 레이어 2 프로토콜이 인터넷 그룹 관리 프로토콜(IGMP) 또는 기타 멀티캐스트 프로토콜과 같은 레이어 3 프로토콜의 운영 세부 사항을 인식할 때 발생합니다. 스누핑은 VLAN 스위치와 같은 레이어 2 디바이스가 멀티캐스트 그룹 멤버의 미디어 액세스 제어(MAC) 주소와 같은 레이어 3 정보를 인식해야 할 때 필요합니다.
VPLS 루트 보호 는 멀티홈 환경에서 하나의 인터페이스만 스패닝 트리 프로토콜 프레임을 능동적으로 전달하는 스패닝 트리 프로토콜 프로세스입니다. 이렇게 하면 브리징 루프로부터 스패닝 트리의 루트를 보호할 수 있을 뿐만 아니라 멀티홈 토폴로지의 두 디바이스가 IGMP 멤버십 보고서와 같은 스누핑 정보로부터 보호됩니다.
예를 들어, 서로 연결되고(CE1–CE2 링크가 구성됨) 두 개의 고객 에지(CE) 라우터(CE1 및 CE2)에 연결되고, 두 개의 프로바이더 에지(PE) 라우터(각각 PE1 및 PE2)에 멀티호밍된 멀티캐스트 가능 호스트 모음을 생각해 보십시오. 활성 PE는 루트 보호 작업으로 인해 활성 PE-CE 링크에서 전달된 스패닝 트리 프로토콜 정보만 수신합니다. CE1-CE2 링크가 작동하는 한 문제가 되지 않습니다. 그러나 CE1과 CE2 간의 링크가 실패하고 다른 PE가 활성 스패닝 트리 프로토콜 링크가 되면 새로운 활성 PE에서 멀티캐스트 스누핑 정보를 사용할 수 없습니다. 새 활성 PE는 멀티캐스트 트래픽을 CE 및 이 CE 라우터에서 서비스하는 호스트로 전달하지 않습니다.
호스트가 CE 라우터에 새 그룹 구성원 IGMP 보고서를 보내면 서비스 중단이 수정됩니다. 그러나 정상적인 스패닝 트리 프로토콜 루트 보호 작업에도 불구하고 멀티캐스트 스누핑 정보를 두 PE에서 모두 사용할 수 있다면 서비스 중단을 피할 수 있습니다.
가상 스위치의 브리지 도메인과 브리지 도메인 기본 라우팅 스위치의 스패닝 트리 토폴로지 변경에 대한 메시지를 무시하도록 멀티캐스트 스누핑을 구성할 수 있습니다. 명령을 사용하여 ignore-stp-topology-change 스패닝 트리 토폴로지 변경에 대한 메시지를 무시할 수 있습니다
또한보십시오
멀티캐스트 스누핑 구성
MX 시리즈 라우터에 대한 일반적인 멀티캐스트 스누핑 매개 변수를 구성하려면 다음과 같은 명령문을 포함합니다.multicast-snooping-options
multicast-snooping-options { flood-groups [ ip-addresses ]; forwarding-cache { threshold suppress value <reuse value>; } graceful-restart <restart-duration seconds>; ignore-stp-topology-change; multichassis-lag-replicate-state; nexthop-hold-time milliseconds; traceoptions { file filename <files number> <size size> <world-readable | no-world-readable>; flag flag <flag-modifier> <disable>; } }
다음 계층 수준에서 이 문을 포함할 수 있습니다.
[edit routing-instances routing-instance-name][edit logical-systems logical-system-name routing-instances routing-instance-name]
기본적으로 멀티캐스트 스누핑은 비활성화되어 있습니다. VPLS에서 멀티캐스트 스누핑을 활성화하거나 인스턴스 계층에서 가상 스위치 인스턴스 유형을 활성화할 수 있습니다.
VPLS 또는 가상 스위치 인스턴스 아래에 여러 브리지 도메인이 구성되어 있는 경우 인스턴스 수준에서 구성된 멀티캐스트 스누핑 옵션이 모든 브리지 도메인에 적용됩니다.
명령 ignore-stp-topology-change 문은 가상 스위치 라우팅 인스턴스 유형에서만 지원되며 계층에서는 [edit logical-systems] 지원되지 않습니다.
명령문은 nexthop-hold-time 계층에서만 [edit routing-instances routing-instance-name] 지원되며 가상 스위치 또는 vpls의 인스턴스 유형에 대해서만 지원됩니다.
또한보십시오
예: 멀티캐스트 스누핑 구성
이 예는 브리지 또는 VPLS 라우팅 인스턴스 시나리오에서 멀티캐스트 스누핑을 구성하는 방법을 보여줍니다.
요구 사항
이 예에서 사용되는 하드웨어 구성 요소는 다음과 같습니다.
MX 시리즈 라우터 1개
멀티캐스트 라우터 역할을 하는 레이어 3 디바이스 1개
시작하기 전에:
인터페이스를 구성합니다.
내부 게이트웨이 프로토콜을 구성합니다. 라우팅 디바이스용 Junos OS 라우팅 프로토콜 라이브러리를 참조하십시오.
멀티캐스트 프로토콜을 구성합니다. 이 기능은 다음 멀티캐스트 프로토콜에서 작동합니다.
증권 시세 표시기
핌-DM
핌-SM
PIM-SSM
개요 및 토폴로지
IGMP 스누핑은 레이어 2 디바이스가 멀티캐스트 트래픽을 모든 인터페이스 밖으로 무차별적으로 플러딩하는 것을 방지합니다. 멀티캐스트 스누핑에 대해 구성하는 설정은 IGMP 스누핑의 동작을 관리하는 데 도움이 됩니다.
멀티캐스트 스누핑 옵션은 기본 마스터 인스턴스와 개별 브리지 또는 VPLS 인스턴스에서 구성할 수 있습니다. 기본 마스터 인스턴스 구성은 전역적이며 논리적 라우터의 모든 개별 브리지 또는 VPLS 인스턴스에 적용됩니다. 개별 인스턴스에 대한 구성은 글로벌 구성보다 우선합니다.
이 예제에는 다음 문이 포함됩니다.
flood-groups - 트래픽을 플러딩해야 하는 멀티캐스트 그룹 주소를 나열할 수 있습니다. 이 설정은 IGMP 스누핑이 필요한 멀티캐스트 플러딩을 방지하지 않도록 하는 데 유용합니다. 224.0.0.1에서 224.0.0.255까지의 멀티캐스트 주소 블록은 로컬 유선 사용을 위해 예약되어 있습니다. 이 범위의 그룹은 라우팅 프로토콜 및 로컬 검색 메커니즘을 비롯한 다양한 용도로 할당됩니다. 예를 들어 OSPF는 모든 OSPF 라우터에 대해 224.0.0.5를 사용합니다.
forwarding-cache - 포워딩 엔트리가 에이징되는 방법과 엔트리 수를 제어하는 방법을 지정합니다.
캐시 항목이 특정 최대값에 도달할 때 스누핑을 억제(일시 중단)하고 수가 다른 임계값으로 떨어질 때 캐시를 재사용하도록 전달 캐시에 임계값을 구성할 수 있습니다. 기본적으로 라우터에서는 임계값이 활성화되지 않습니다.
억제 임계값은 새로운 멀티캐스트 전달 캐시 항목을 억제합니다. 선택적 재사용 임계값은 라우터가 새 멀티캐스트 전달 캐시 항목을 생성하기 시작하는 지점을 지정합니다. 두 임계값의 범위는 1에서 200,000까지입니다. 구성된 경우 재사용 값은 억제 값보다 작아야 합니다. 억제 값은 필수입니다. 선택적 재사용 값을 지정하지 않으면 멀티캐스트 전달 캐시 항목의 수가 억제 값으로 제한됩니다. 멀티캐스트 전달 캐시 항목의 수가 억제 값 아래로 떨어지는 즉시 새 항목이 생성됩니다.
graceful-restart - 재시작 전에 학습된 경로가 재학습된 경로로 대체되는 시간을 구성합니다. 멀티캐스트 스누핑을 위한 그레이스풀 재시작이 비활성화된 경우, 라우팅 엔진 재시작 후 스누핑 정보가 손실됩니다.
기본적으로 Graceful Restart 기간은 180초(3분)입니다. 이 값은 0초에서 300초 사이로 설정할 수 있습니다. 지속 시간을 0으로 설정하면 GR(Graceful Restart)이 효과적으로 비활성화됩니다. 이 값을 IGMP 쿼리 응답 간격보다 약간 크게 설정합니다.
ignore-stp-topology-change—스패닝 트리 토폴로지 상태 변경에 대한 메시지를 무시하도록 MX 시리즈 라우터를 구성합니다.
기본적으로 MX 시리즈 라우터의 IGMP 스누핑 프로세스는 스패닝 트리 프로토콜(STP)에 의한 인터페이스 상태 변경을 감지합니다.
두 개의 PE 라우터가 두 개의 상호 연결된 CE 라우터에 연결되고 PE 라우터에서 STP 루트 보호가 활성화된 VPLS 멀티호밍 환경에서, PE 라우터 인터페이스 중 하나는 포워딩 상태이고 다른 하나는 차단 상태입니다.
두 CE 라우터를 상호 연결하는 링크가 실패하면 차단 상태의 PE 라우터 인터페이스가 포워딩 상태로 전환됩니다.
PE 라우터 인터페이스는 다음 일반 또는 그룹별 쿼리에 대한 응답으로 멤버십 보고서를 수신하기 위해 기다리지 않습니다. 대신 IGMP 스누핑 프로세스는 CE 라우터로 일반 쿼리 메시지를 보냅니다. CE 라우터에 연결된 호스트는 관심 있는 모든 그룹에 대한 보고서로 응답합니다.
두 CE 라우터를 상호 연결하는 링크가 복원되면 두 PE 라우터의 원래 스패닝 트리 상태가 복원됩니다. 포워딩 PE는 스패닝 트리 토폴로지 변경 메시지를 수신하고 CE 라우터를 향해 일반 쿼리 메시지를 전송하여 그룹 멤버십 상태를 즉시 재구성합니다.
메모:명령
ignore-stp-topology-change문은 가상 스위치 라우팅 인스턴스 유형에서만 지원됩니다.
위상수학
그림 1 은 고객 네트워크에 두 개의 CE 디바이스가 있고 두 디바이스 사이에 링크가 있는 VPLS 멀티호밍 토폴로지를 보여줍니다. 각 CE는 하나의 PE에 연결됩니다.
구성
절차
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경하고, 계층 수준에서 명령을 CLI로 [edit] 복사해 붙여 넣은 다음, 구성 모드에서 을 입력합니다 commit .
set bridge-domains domain1 multicast-snooping-options forwarding-cache threshold suppress 100 set bridge-domains domain1 multicast-snooping-options forwarding-cache threshold reuse 50 set bridge-domains domain1 multicast-snooping-options graceful-restart restart-duration 120 set routing-instances ce1 instance-type virtual-switch set routing-instances ce1 bridge-domains domain1 domain-type bridge set routing-instances ce1 bridge-domains domain1 vlan-id 100 set routing-instances ce1 bridge-domains domain1 interface ge-0/3/9.0 set routing-instances ce1 bridge-domains domain1 interface ge-0/0/6.0 set routing-instances ce1 bridge-domains domain1 multicast-snooping-options flood-groups 224.0.0.5 set routing-instances ce1 bridge-domains domain1 multicast-snooping-options ignore-stp-topology-change
단계별 절차
다음 예제에서는 구성 계층의 다양한 수준을 탐색해야 합니다. CLI 탐색에 대한 자세한 내용은 Junos OS CLI 사용자 가이드를 참조하십시오.
IGMP 스누핑을 구성하려면 다음을 수행합니다.
마스터 라우팅 인스턴스에서 멀티캐스트 스누핑 설정을 구성합니다.
[edit bridge-domains domain1] user@host# set multicast-snooping-options forwarding-cache threshold suppress 100 reuse 50 user@host# set multicast-snooping-options graceful-restart 120
라우팅 인스턴스를 구성합니다.
[edit routing-instances ce1] user@host# set instance-type virtual-switch
라우팅 인스턴스에서 브리지 도메인을 구성합니다.
[edit routing-instances ce1 bridge-domains domain1] user@host# set domain-type bridge user@host# set interface ge-0/0/6.0 user@host# set interface ge-0/3/9.0 user@host# set vlan-id 100
플러드 그룹을 구성합니다.
[edit routing-instances ce1 bridge-domains domain1] user@host# set multicast-snooping-options flood-groups 224.0.0.5
스패닝 트리 토폴로지 상태 변경에 대한 메시지를 무시하도록 라우터를 구성합니다.
[edit routing-instances ce1 bridge-domains domain1] user@host# set multicast-snooping-options ignore-stp-topology-change
디바이스 구성을 완료하면 구성을 커밋합니다.
user@host# commit
결과
및 show routing-instances 명령을 입력하여 show bridge-domains 구성을 확인합니다.
user@host# show bridge-domains
domain1 {
multicast-snooping-options {
forwarding-cache {
threshold {
suppress 100;
reuse 50;
}
}
}
}
user@host# show routing-instances
ce1 {
instance-type virtual-switch;
bridge-domains {
domain1 {
domain-type bridge;
vlan-id 100;
interface ge-0/3/9.0; ## 'ge-0/3/9.0' is not defined
interface ge-0/0/6.0; ## 'ge-0/0/6.0' is not defined
multicast-snooping-options {
flood-groups 224.0.0.5;
ignore-stp-topology-change;
}
}
}
}
확인
구성을 확인하려면 다음 명령을 실행합니다.
igmp 스누핑 인터페이스 표시
igmp 스누핑 멤버십 표시
igmp 스누핑 통계 표시
멀티캐스트 스누핑 경로 표시
경로 테이블 표시
멀티캐스트 스누핑에 대한 대량 업데이트 사용
개별 인터페이스가 멀티캐스트 그룹에 가입하거나 탈퇴할 때마다 라우팅 테이블 및 포워딩 테이블에 새로운 다음 홉 항목이 설치됩니다. 명령문을 사용하여 nexthop-hold-time 1ms에서 1000밀리초(ms) 사이의 시간을 지정할 수 있으며, 이 시간 동안 발신 인터페이스 변경 사항이 누적된 다음 라우팅 테이블 및 포워딩 테이블로 대량으로 업데이트됩니다. 대량 업데이트는 조인 및 탈퇴 메시지를 처리하는 데 필요한 처리 시간과 메모리 오버헤드를 줄입니다. 이는 채널을 변경하는 사용자가 짧은 기간에 그룹에 가입하거나 탈퇴하는 수천 개의 인터페이스를 만들 수 있는 IPTV(Internet Potocol Television)와 같은 애플리케이션에 유용합니다. IPTV 시나리오에서는 일반적으로 상대적으로 작고 제어된 수의 스트림과 많은 수의 발신 인터페이스가 있습니다. 대량 업데이트를 사용하면 조인 지연을 줄일 수 있습니다.
이 예에서는 명령문을 사용하여 instance-type virtual-switch에 대해 20밀리초의 보류 시간을 구성합니다.nexthop-hold-time
다음 계층 수준에서 가상 스위치 또는 vpls의 routing-instance 유형에 대해서만 명령문을 포함할 nexthop-hold-time 수 있습니다.
[edit routing-instances routing-instance-name multicast-snooping-options]
nexthop-hold-time 라우터 구성에서 문이 삭제되면 대량 업데이트가 비활성화됩니다.
또한보십시오
멀티섀시 링크 어그리게이션 그룹 인터페이스를 위한 멀티캐스트 스누핑 활성화
multichassis-lag-replicate-state IGMP 스누핑 및 멀티섀시 링크 어그리게이션 그룹(MC-LAG) 인터페이스에 대한 상태 복제를 활성화하려면 계층 수준에 명령문을 [edit multicast-snooping-options] 포함합니다.
[edit]
multicast-snooping-options {
multichassis-lag-replicate-state;
}
듀얼 링크 MC-LAG 인터페이스의 링크 간에 가입 및 남기기 메시지를 복제하면 서비스 중단이 발생하는 MC-LAG 인터페이스에 대한 멤버십 정보를 더 빠르게 복구할 수 있습니다.
상태 복제 없이 듀얼 링크 MC-LAG 인터페이스에서 서비스 중단이 발생하는 경우(예: 활성 링크가 스탠바이로 전환되는 경우) 네트워크에 대한 IGMP 쿼리를 생성하여 인터페이스에 대한 멤버십 정보를 복구합니다. 이 방법을 완료하는 데 1초에서 10초 정도 걸릴 수 있으며 일부 응용 프로그램에서는 너무 오래 걸릴 수 있습니다.
MC-LAG 인터페이스에 대한 상태 복제가 제공되면, MC-LAG 디바이스에서 수신된 IGMP 조인 또는 leave 메시지는 ICCP(Interchassis Communication Protocol) 연결을 통해 활성 MC-LAG 링크에서 대기 링크로 복제됩니다. 대기 링크는 자신을 다음 홉으로 추가하지 않고 메시지를 네트워크로 플러딩하지 않는다는 점을 제외하면 해당 활성 MC-LAG 링크에서 수신된 것처럼 메시지를 처리합니다. 장애 조치(failover) 후 복제된 메시지를 검색하여 몇 초 이내에 링크의 멀티캐스트 멤버 자격 상태를 복구할 수 있습니다.
이 예에서는 MC-LAG 인터페이스에 대한 상태 복제를 활성화합니다.