컴퓨터망 9) Multicasting

zh025700·2022년 6월 29일
0

컴퓨터네트워크

목록 보기
9/26

컴퓨터망

9. Multicasting

이 장에서는 멀티캐스팅을 정의하고 멀티캐스트 라우팅 프로토콜에 대해 논의한다
멀티캐스트 애플리케이션은 매일 점점 더 많은 수요가 있지만 멀티캐스트 라우팅이 유니캐스트 라우팅보다 더 어렵다는 것을 알 수 있을 것이다
멀티캐스트 라우터는 멀티캐스트 패킷의 복사본을 해당 그룹의 모든 구성원에게 보내는 응답이다

Introduction

라우터에 의한 데이터그램 포워딩은 일반적으로 데이터그램에서 대상 주소의 prefix를 기반으로 하며, 이는 대상 호스트가 연결된 네트워크를 정의한다
물론, address aggregation 메커니즘은 여러 개의 데이터그램을 결합하여 ISP에 전달될 수 있으며(일부 네트워크를 함께 보유하는 대규모 네트워크로 생각할 수 있음)
그것들을 분리하여 최종 목적지 네트워크로 전달할 수 있지만, 원칙은 변경되지 않는다
aggregation은 prefix의 크기를 감소시킬 뿐이고, 분리는 prefix의 크기를 증가시킬 뿐이다
위의 전달 원리를 이해하면, 이제 유니캐스팅, 멀티캐스팅, 브로드캐스트를 정의할 수 있다

Unicasting

source 및 destination 네트워크가 하나씩 있다
source와 destination 네트워크 간의 관계는 1:1이다

유니캐스트에서, 라우터는 인터페이스 중 하나를 통해서만 수신된 데이터그램을 포워드한다

Multicasting

  • 멀티캐스팅에는 하나의 source와 destination 그룹이 있다

    • 일대다 통신이다
  • source 주소는 유니캐스트 주소

  • destination 주소는 그룹 주소

  • 그림은 유니캐스트 그림과 동일한 인터넷을 보여주지만, 라우터는 멀티캐스트 라우터로 변경

  • 멀티캐스트 라우터는 하나 이상의 인터페이스를 통해 동일한 데이터 그램의 복사본을 전송해야 할 수 있다
  • 그림에서, 라우터 R1은 인터페이스 2와 3을 통해 데이터그램을 전송해
  • 라우터 R4는 두 개의 인터페이스를 통해 데이터 그램을 전송
  • 라우터 R3은 인터페이스 2에 의해 도달된 영역에 이 그룹에 속한 멤버가 없다는 것을 알고 있으며, 인터페이스 1을 통해서만 데이터 그램을 전송

멀티캐스팅에서, 라우터는 인터페이스들을 통해 수신된 데이터그램을 포워드할 수 있다

Multicasting vs Multiple unicasting

  • 멀티캐스팅은 라우터에 의해 복제되는 source에서의 단일 패킷으로 시작한다

    • 각 패킷의 source 주소는 모든 복제품에 대해 동일
      • 라우터에는 하나의 패킷만 통과한다
  • 다중 유니캐스트에서는 source에서 여러 패킷으로 시작된다

    • 예를 들어 destination이 4개인 경우 source는 각각 다른 유니캐스트 대상 주소를 가진 4개의 패킷을 보낸다
  • 두 라우터 간에 여러 복사본이 전송될 수 있다

    • 예를 들어, 사용자가 사용자 그룹에 전자 메일 메시지를 보낼 때 다중 유니캐스트를 사용
      • 전자 메일 소프트웨어는 각각 다른 destination 주소를 가진 메시지의 복제본을 만들고 하나씩 보낸다

다중 유니캐스트를 통한 멀티캐스팅의 에뮬레이션은 효율적이지 않으며 특히 큰 그룹에서 긴 지연을 일으킬 수 있다

  • 멀티캐스팅이 다중 유니캐스트보다 효율적이다
  • 다중 유니캐스트에서 패킷 간 delay가 발생
    • 멀티캐스트는 delay 없음

Multicast addresses

  • 멀티캐스트 주소는 멀티캐스트 그룹에 가입한 호스트 그룹의 destination 주소
  • 멀티캐스트 주소를 destination로 사용하는 패킷은 그룹의 모든 멤버에게 도달할 수 있다

Multicast address range

  • 224부터 239까지 쓸 수 있다

IGMP

  • 멀티캐스트 통신은 발신자가 같은 그룹의 구성원인 수신자 그룹에 메시지를 보내는 것을 의미

  • 메시지의 한 복사본은 sender에 의해 전송되지만 라우터에 의해 복사되고 전달

    • 그래서 각 멀티캐스트 라우터는 각 인터페이스와 관련된 적어도 하나의 멤버를 가진 그룹의 목록을 알 필요가 있다
      • 이것은 멀티캐스트 라우터가 멤버에 대한 정보를 수집하고 그것을 다른 멀티캐스트 라우터와 공유할 필요가 있다는 것을 의미
        • 정보 수집은 로컬 및 글로벌의 두 가지 수준에서 수행

네트워크에 연결된 멀티캐스트 라우터는 멀티캐스트 그룹 가입 정보를 해당 지역에서 수집

  • IGMP 프로토콜에 의해 수행
    • 네트워크의 그룹 구성원에 대한 정보를 수정하고 해석하는 역할
    • IP 계층에서 설계된 프로토콜

수집된 정보는 다른 라우터에 global하게 전파

  • 멀티캐스트 라우팅 프로토콜

IGMP는 그룹 관리 프로토콜이다
멀티캐스트 라우터가 각 라우터 인터페이스와 관련된 멀티케스트 멤버 목록을 만들고 업데이트하는 것을 돕는다

IGMP message

IGMP에는 멤버십 쿼리 메시지와 멤버십 보고서 메시지라는 두 가지 유형의 메시지가 있다

멤버십 쿼리 메시지

  • 라우터가 네트워크의 활성 그룹 구성원에게 구성원 멤버쉽 쿼리 메시지를 보낸다

멤버십 리포트

  • 응답 메시지

MULticast routing

  • 상위 라우터에 요청한다

Multicast routing protocol

지난 수십 년 동안, 여러 멀티캐스트 라우팅 프로토콜이 등장했다
이러한 프로토콜 중 일부는 유니캐스트 라우팅 프로토콜의 확장이며, 일부는 완전히 새로운 프로토콜이다

  • 트리구성을 위해 작동하는 프로토콜

MBone

  • 멀티미디어와 실시간 통신은 인터넷에서 멀티캐스팅의 필요성을 증가시켰다
  • 그러나 인터넷 라우터의 극히 일부만이 멀티캐스트 라우터이다
    • 즉, 멀티캐스트 라우터는 멀티캐스트 패킷을 포워드하기 위해 이웃에서 다른 멀티캐스트 라우터를 찾을 수 없다

터널링을 통해 해결 가능

멀티캐스트 라우터는 유니캐스트 라우터 위에 있는 라우터의 그룹으로 간주된다. 멀티캐스트 라우터는 직접 연결되지는 않지만 logicaly로 연결된다.

Logical tunneling

이 그림에서, 음영 원에 둘러싸인 라우터들만이 멀티캐스팅이 가능하다
터널링이 없으면 이러한 라우터는 고립된 섬이다
멀티캐스팅을 가능하게 하기 위해, 우리는 터널링의 개념을 사용하여 이러한 분리된 라우터로 멀티캐스트 백본(MBONE)을 만든다.

MBONE

logical 터널은 유니캐스트 패킷 내부에 멀티캐스트 패킷을 캡슐화함으로써 설정된다
멀티캐스트 패킷은 유니캐스트 패킷의 페이로드(데이터)가 된다
중간(비멀티캐스트) 라우터는 패킷을 유니캐스트 라우터로 포워드하고 패킷을 한 섬에서 다른 섬으로 전달합니다
마치 유니캐스트 라우터가 존재하지 않고 두 개의 멀티캐스트 라우터가 이웃인 것과 같다

profile
정리

0개의 댓글