min's devlog

멀티캐스트 프로그래밍 본문

Linux/TCP IP Socket Programming

멀티캐스트 프로그래밍

값진 2021. 3. 28. 01:46

멀티캐스트

- 하나의 데이터그램을 다수의 호스트로 동시에 전송한다.(1:m)

   (- 중간 라우터가 지원해주어야한다.)

예) naver에서 축구 중계를 해준다면 패킷 한개를 보내는데, 이는 여러 갈라지는 곳의 라우터가 하나를 복사해서 지역마다 별도로

      보내는 것이다. 이를 지원하는 것이 멀티캐스트 라우터 라고 함.

- 클래스 D의 IP주소를 그룹주소로 사용한다

   (-D는 1110, A는 0, B는 10, C는 110으로 시작한다)

-로컬 네트워크는 일일히 copy해서 보낸다. 자신에 들어온 정보를 모든 호스트에게 보내려면 이더넷의 브로드캐스트 방식을

  사용한다.

 

 

IP 멀티캐스트 address를 Ethernet 멀티캐스트 address로 Mapping

-32, 48비트가 서로 매핑이 안되기 때문에

멀티캐스트 이더넷 주소와, D의 ip주소의 23bit만를 그대로 copy 해서 이것을 그룹식별자로 쓴다.

발생할 수 있는 문제

약 D에서 1110 뒤 네글자가 다름에도 불구하고 뒷 23bit가 같다면 이더넷은 같은 그룹이라고 생각하게 된다.

그러나 확률이 적다고 판단하고 사용하는 것이 효율적이다.

'Linux > TCP IP Socket Programming' 카테고리의 다른 글

Signal 처리  (0) 2021.04.04
SO_RCVBUF 옵션  (0) 2021.04.04
소켓 옵션 종류(2)  (0) 2021.03.28
소켓옵션 종류  (0) 2021.03.27
소켓과 소켓 옵션  (0) 2021.03.27
Comments