IGMP

Mokwon Univ 2008. 8. 16. 15:09
멀티캐스팅이란 같은 메시지를 하나 이상의 수신자에게 동시에 보내지는 것이다
IGMP는 멀티캐스트 라우터가 인터페이스에 관련된 멤버들의 리스트를 생성하고 갱신하는 것을 돕는다
인터넷 그룹 관리 프로토콜은 멀티캐스트 라우터가 멀티캐스트 그룹 주소를 유지하는 것을 돕는다
IGMP는 한 지역 내에서만 동작한다
호스트나 라우터는 그룹 내에 멤버쉽을 가질 수 있다
호스트는 그룹 내에 멤버쉽을 가지는 프로세스들의 리스트를 유지한다
라우터는 각 인터페이스 별로 그룹 멤버쉽을 보이는 groupid들의 리스트를 유지한다
라우터나 호스트는 그룹에 가입하기 위하여 멤버쉽 보고를 보낸다
라우터나 호스트는 그룹에서 탈퇴하기 위하여 탈퇴 보고를 보낸다
라우터는 그룹 멤버쉽을 모니터하기 위하여 일반 질의 메시지를 보낸다
지연된 응답 방법은 LAN에서 불필요한 트래픽을 방지한다
IGMP메시지는 IP 데이터그램에 캡슐화된다
이더넷을 포함한 대부분의 LAN은 멀티캐스트 라우팅을 지원한다
멀티캐스트 주소체계를 지원하지 않은 WAN은 터널링이라는 프로세스를 사용하여 멀티캐스트 패킷을 송신할 수 있다
IGMP패키지는 호스트 그룹 테이블, 타이머, 그리고 다음과 같은 네 개의 소프트웨어 모듈로 구성된다
  - 입력 모듈, 출력 모듈, 그룹 가입 모듈, 그룹 탈퇴 모듈
그룹 테이블은 호스트가 멤버인 멀티캐스트 주소들에 대한 정보를 가지고 있다
타이머는 호스트가 멀티캐스트라우터에게 보고를 보내는 것을 제어한다
그룹 가입 모듈은 그룹 테이블의 엔트리를 추가 및 갱신한다
그룹 탈퇴 모듈은 그룹 테이블의 엔트리를 삭제 및 갱신한다
입력 모듈은 수신된 IGMP 메시지를 처리한다
출력 모듈은 IGMP 보고를 생성한다
 
출처 TCP/IP 프로토콜 2e
 
 
그룹 가입과 탈퇴..!!
 
그룹 가입
 
호스트 - 그룹에 멤버쉽을 가지고 있는 프로세스들의 리스트를 유지
          - 프로세스가 새 그룹에 가입하기를 원하면 이 프로세스는 호스트에 요청보냄
          - 호스트는 프로세스의 이름과 요청된 그룹의 이름을 리스트에 추가
          - 이 그룹이 첫 요소라면.. 멤버쉽 보고 메시지를 전송하고 아니면 안보냄
          - 호스트가 이미 그룹의 멤버이고 이 그룹으로부터 멀티캐스트 패킷을 받고 있기 때문
라우터 - 각 인터페이스에 연결된 네트워크 별 멤버쉽을 보여주는 groupid 리스트를 유지
          - 이 인터페이스 중 하나의 그룹에 대한 관심이 있다면 라우터는 멤버쉽 보고를 보냄
          - 라우터는 호스트와 같이 동작
          - 그러나 라우터의 그룹 리스트는 인터페이스들에 연결된 모든 멤버들의 출적이므로 더 크다
 
그룹 탈퇴
 
호스트 - 특정 그룹에 관심이 있는 프로세스가 없다면 탈퇴 메시지
라우터 - 자신의 인터페이스에 연결된 네트워크가 모두 특정 그룹에 관심이 없다면 탈퇴 보고
          - 그러나 즉시 삭제 불가능 ( 한 개의 호스트 라우터로부터 왔기 때문 )
          - 삭제 방법 : 이 그룹의 멀티캐스트 주소를 포함한 특수 질의 메시지 보냄
                            규정 시간동안 라우터나 호스트로부터 응답 기다린다
                            못 받으면 라우터는 이 그룹에 대한 멤버가 없다고 가정하고 자신의 리스트에서 이 그룹을 삭제
Posted by 용학도리
,