Transit Gateway의 멀티캐스트 - Amazon VPC

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Transit Gateway의 멀티캐스트

멀티캐스트는 데이터의 단일 스트림을 여러 수신 컴퓨터에 동시에 전달하는 데 사용되는 통신 프로토콜입니다. Transit Gateway는 연결된 VPC의 서브넷 간에 멀티캐스트 트래픽 라우팅을 지원하며 여러 수신 인스턴스로 향하는 트래픽을 보내는 인스턴스에 대한 멀티캐스트 라우터 역할을 합니다.

멀티캐스트 개념

다음은 멀티캐스트의 핵심 개념입니다.

  • 멀티캐스트 도메인 — 멀티캐스트 네트워크를 여러 도메인으로 분할할 수 있으며 Transit Gateway를 여러 멀티캐스트 라우터로 사용할 수 있습니다. 서브넷 수준에서 멀티캐스트 도메인 멤버십을 정의합니다.

  • 멀티캐스트 그룹 — 동일한 멀티캐스트 트래픽을 보내고 받을 호스트 집합을 식별합니다. 멀티캐스트 그룹은 그룹 IP 주소로 식별됩니다. 멀티캐스트 그룹 멤버십은 EC2 인스턴스에 연결된 개별 탄력적 네트워크 인터페이스에 의해 정의됩니다.

  • 인터넷 그룹 관리 프로토콜(IGMP) - 호스트와 라우터가 멀티캐스트 그룹 멤버십을 동적으로 관리할 수 있도록 하는 인터넷 프로토콜입니다. IGMP 멀티캐스트 도메인에는 IGMP 프로토콜을 사용하여 메시지를 연결, 탈퇴 및 전송하는 호스트가 포함됩니다. AWS IGMPv2 프로토콜과 IGMP 및 정적 (API 기반) 그룹 멤버십 멀티캐스트 도메인을 모두 지원합니다.

  • 멀티캐스트 소스 — 멀티캐스트 트래픽을 전송하도록 정적으로 구성된 지원되는 EC2 인스턴스와 연결된 탄력적 네트워크 인터페이스입니다. 멀티캐스트 소스는 정적 소스 구성에만 적용됩니다.

    정적 소스 멀티캐스트 도메인에는 메시지의 가입, 종료 및 전송을 처리하는 데 IGMP 프로토콜을 사용하지 않는 호스트가 포함됩니다. 를 사용하여 소스 및 그룹 AWS CLI 구성원을 추가합니다. 정적으로 추가된 소스는 멀티캐스트 트래픽을 전송하고 멤버는 멀티캐스트 트래픽을 수신합니다.

  • 멀티캐스트 그룹 멤버 — 멀티캐스트 트래픽을 수신하는, 지원되는 EC2 인스턴스와 연결된 탄력적 네트워크 인터페이스입니다. 멀티캐스트 그룹에는 여러 그룹 멤버가 있습니다. 정적 소스 그룹 멤버십 구성에서 멀티캐스트 그룹 멤버는 트래픽을 수신할 수만 있습니다. IGMP 그룹 구성에서 멤버는 트래픽을 보내고 받을 수 있습니다.

고려 사항

  • 지원되는 리전에 대한 자세한 내용은 AWS Transit Gateway FAQ를 참조하세요.

  • 멀티캐스트를 지원하려면 새 Transit Gateway를 생성해야 합니다.

  • 멀티캐스트 그룹 멤버십은 OR AWS CLI, Amazon Virtual Private Cloud Console 또는 IGMP를 사용하여 관리합니다.

  • 서브넷은 하나의 멀티캐스트 도메인에만 있을 수 있습니다.

  • Nitro 인스턴스가 아닌 인스턴스를 사용하는 경우 소스/대상 확인을 비활성화해야 합니다. 확인 비활성화에 대한 자세한 내용은 Amazon EC2 사용 설명서의 원본 또는 대상 확인 변경을 참조하십시오.

  • Nitro 인스턴스가 아닌 인스턴스는 멀티캐스트 발신자가 될 수 없습니다.

  • Site-to-Site VPN AWS Direct Connect, 피어링 첨부 파일 또는 트랜짓 게이트웨이 Connect 첨부 파일을 통한 멀티캐스트 라우팅은 지원되지 않습니다.

  • Transit Gateway는 멀티캐스트 패킷의 조각화를 지원하지 않습니다. 조각화된 멀티캐스트 패킷은 삭제됩니다. 자세한 정보는 최대 전송 단위(MTU)을 참조하세요.

  • 시작할 때 IGMP 호스트는 멀티캐스트 그룹에 가입하기 위해 IGMP JOIN 메시지를 여러 번 보냅니다(일반적으로 2~3회 재시도). 가능성은 낮지만 모든 IGMP JOIN 메시지가 손실되는 경우 호스트는 전송 게이트웨이 멀티캐스트 그룹의 멤버가 되지 않습니다. 이러한 시나리오에서는 애플리케이션별 방법을 사용하여 호스트에서 IGMP JOIN 메시지를 다시 트리거해야 합니다.

  • 그룹 멤버십은 Transit Gateway에 의한 IGMPv2 JOIN 메시지 수신으로 시작되어 IGMPv2 LEAVE 메시지의 수신으로 종료됩니다. Transit Gateway는 그룹에 성공적으로 조인한 호스트를 추적합니다. 클라우드 멀티캐스트 라우터로서 Transit Gateway는 2분마다 IGMPv2 QUERY 메시지를 모든 멤버에게 보냅니다. 각 멤버는 응답으로 IGMPv2 JOIN 메시지를 전송하고, 이 메시지는 멤버가 해당 멤버십을 갱신하는 방법을 나타냅니다. 멤버가 연속 세 번 쿼리에 응답하지 못하면 Transit Gateway가 조인된 모든 그룹에서 이 멤버십을 제거합니다. 하지만 구성원을 목록에서 영구적으로 제거하기 전에 12시간 동안 이 구성원에게 계속 쿼리를 보냅니다. to-be-queried 명시적 IGMPv2 LEAVE 메시지는 이후의 모든 멀티캐스트 처리에서 호스트를 즉시 영구적으로 제거합니다.

  • Transit Gateway는 그룹에 성공적으로 조인한 호스트를 추적합니다. Transit Gateway는 중단이 발생한 경우 IGMP JOIN 메시지가 마지막으로 성공한 시점부터 7분(420초) 동안 호스트로 멀티캐스트 데이터를 보냅니다. 전송 게이트웨이는 최대 12시간 동안 또는 호스트에서 IGMP LEAVE 메시지를 받을 때까지 호스트에 멤버십 쿼리를 계속 보냅니다.

  • Transit Gateway는 멀티캐스트 그룹 멤버십을 추적할 수 있도록 모든 IGMP 멤버에게 멤버십 쿼리 패킷을 보냅니다. 이러한 IGMP 쿼리 패킷의 소스 IP는 0.0.0.0/32이고 대상 IP는 224.0.0.1/32이며 프로토콜은 2입니다. IGMP 호스트(인스턴스)의 보안 그룹 구성과 호스트 서브넷의 모든 ACL 구성은 이러한 IGMP 프로토콜 메시지를 허용해야 합니다.

  • 멀티캐스트 소스와 대상이 동일한 VPC에 있는 경우 보안 그룹 참조를 사용하여 소스 보안 그룹의 트래픽을 허용하도록 대상 보안 그룹을 설정할 수 없습니다.

  • 정적 멀티캐스트 그룹 및 소스의 경우 Amazon VPC Transit Gateway는 더 이상 존재하지 않는 ENI의 정적 그룹과 소스를 자동으로 제거합니다. 이는 정기적으로 Transit Gateway 서비스 연결 역할을 맡아 계정의 ENI를 설명함으로써 수행됩니다.

  • 정적 멀티캐스트만 IPv6을 지원합니다. 동적 멀티캐스트는 그렇지 않습니다.

Windows Server의 멀티캐스트

Windows Server 2019 또는 2022에서 전송 게이트웨이와 함께 작동하도록 멀티캐스트를 설정할 때는 추가 단계를 수행해야 합니다. PowerShell를 사용하여 다음 명령을 실행합니다.

  1. TCP/IP 스택에 IGMPv3 대신 IGMPv2를 사용하도록 윈도우 서버를 변경하세요.

    PS C:\> New-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters -Name IGMPVersion -PropertyType DWord -Value 3

    참고

    New-ItemPropertyIGMP 버전을 지정하는 속성 인덱스입니다. IGMP v2는 멀티캐스트에 지원되는 버전이므로 속성은 Value 다음과 같아야 합니다. 3 Windows 레지스트리를 편집하는 대신 다음 명령을 실행하여 IGMP 버전을 2로 설정할 수 있습니다. :

    Set-NetIPv4Protocol -IGMPVersion Version2

  2. Windows 방화벽은 기본적으로 대부분의 UDP 트래픽을 삭제합니다. 먼저 멀티캐스트에 사용되는 연결 프로필을 확인해야 합니다.

    PS C:\> Get-NetConnectionProfile | Select-Object NetworkCategory NetworkCategory --------------- Public
  3. 필수 UDP 포트에 액세스할 수 있도록 이전 단계의 연결 프로필을 업데이트하세요.

    PS C:\> Set-NetFirewallProfile -Profile Public -Enabled False

  4. EC2 인스턴스를 재부팅합니다.

  5. 멀티캐스트 애플리케이션을 테스트하여 트래픽이 예상대로 흐르고 있는지 확인하세요.