· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Multicast_Routing_Code

관리자님 죄송합니다. 이 문서에 저자권이 있어서 올리면 안 될 것 같네요.. 삭제해 주세요.

Multicast Routing Code in the Linux Kernel


원저자 : Matteo Pelati (matteo@dolce.it) 2002년 11월

번역자 : 김영민 (blhole@venus.uos.ac.kr) 2005년 1월

이 문서는 [http]Multicast Routing Code in the Linux Kernel의 번역입니다.

하나의 패킷이 동시에 여러 곳으로 전달될 수 있다면 많은 대역폭을 절약할 수 있다. 이것이 IP 멀티캐스팅의 장점이며, 이 글에서는 리눅스가 어떻게 멀티캐스트 라우팅을 수행하는지를 볼 것이다.

by Matteo Pelati

이 글에서는 리눅스 커널이 멀티캐스트 트래픽을 어떻게 다루는지와 코드를 수정하고자 할 때 어떻게 해야 할지를 알 수 있도록 한다. 비록 이 글이 특정한 주제를 다루고 있지만 멀티캐스트 라우팅에 관심이 있는 모든 사람에게 유용한 자료가 될 것이다.

"University of Milan"에서 우리는 CAMP (Call Admission Multicast Protocol)라는 새로운 프로토콜을 개발하고 있다. CAMP는 어떠한 중요한 결정을 내리기 위해 멀티캐스트 커널 코드에 의해 제공되는 정보를 사용한다. JOIN이나 LEAVE 요청과 같은 중요한 커널 이벤트를 CAMP에서 받을 수 있어야만 한다. 당신도 아마 알겠지만 리눅스 커널은 이미 멀티캐스트 라우터로 동작할 수 있으며, PIM (Protocol Independent Multicast, netweb.usc.edu/pim) 버전 1과 2를 모두 지원하고 있다.

모든 MFC (Multicast Forwarding Cache) 갱신 과정들은 커널과 통신하는 외부 사용자 프로세스에 의해 이루어진다. 이 글에서 우리는 MFC를 갱신하기 위해 사용자 데몬 프로그램에서 보내진 메시지들을 커널이 어떻게 처리하는지를 설명한다. 간략한 소개 후에 우리의 "hook" 구현을 더 상세하게 설명할 것이다. 그림 1에서 우리가 실험에 사용한 네트워크를 보여준다. SNOOPY는 리눅스 커널 2.4.18에서 PIMd(version 2.1.0-alpha 29.9)를 실행하며 멀티캐스트 라우터로 동작한다.






sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2006-04-20 18:47:13
Processing time 0.0053 sec