min's devlog
멀티캐스트 프로그래밍 본문
멀티캐스트
- 하나의 데이터그램을 다수의 호스트로 동시에 전송한다.(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