KR20050017486A - 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법및 그 장치 - Google Patents
분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법및 그 장치Info
- Publication number
- KR20050017486A KR20050017486A KR1020030056261A KR20030056261A KR20050017486A KR 20050017486 A KR20050017486 A KR 20050017486A KR 1020030056261 A KR1020030056261 A KR 1020030056261A KR 20030056261 A KR20030056261 A KR 20030056261A KR 20050017486 A KR20050017486 A KR 20050017486A
- Authority
- KR
- South Korea
- Prior art keywords
- multicast
- group
- routing processor
- multicast packet
- received
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1886—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 분산 구조 라우터에서 멀티캐스트 패킷의 플로딩을 감소시키는 방법에 관한 것으로, 다수개의 라우팅 프로세서부를 구비하는 분산 구조 라우터에서 내부 트래픽을 IGMP 스누핑 기법에 따라 멀티캐스트 패킷을 처리할 때, 멀티캐스트 패킷 수신에 관심이 있는 라우팅 프로세서부만 인식하여, 멀티캐스트 그룹에 가입시켜, 멀티캐스트 패킷이 수신되는 경우, 멀티캐스트 그룹에 가입되어 있는 라우팅 프로세서부로만 멀티캐스트 패킷을 플로딩하여 불필요하게 발생되는 트래픽을 제거하는 것이다.
Description
본 발명은 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법 및 그 장치에 관한 것으로, 더욱 상세하게는 멀티캐스트 패킷을 플로딩(fooling)하는 분산 구조 라우터에서 멀티캐스트 패킷이 수신되는 경우, 해당 멀티캐스트 패킷을 수신하고자 하는 라우터 프로세서로만 해당 멀티캐스트 패킷을 플로딩하여 불필요한 트래픽(traffic) 전송을 제거하는 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법 및 그 분산 구조 라우터에 관한 것이다.
일반적인 2 계층 스위치에서는 멀티캐스트 패킷의 플로딩(flooding)을 축소하기 위하여 인터넷 그룹 관리 프로토콜(Internet Group Management Protocol : IGMP) 스누핑(snooping) 기법을 사용한다.
이때, 플로딩이란, 어떤 한 호스트(host)로부터 수신된 하나의 패킷을 라우터에 접속되어 있는 다른 모든 호스트로 전달하는 것을 의미하고, 대규모 네트워크에서 수정된 라우팅 정보를 모든 연계되는 노드에 빠르게 배포하는 것을 말한다.
IGMP 스누핑 프로토콜이란, 라우터와 호스트(host)간에 교환되는 IGMP 프로토콜 패킷을 감지하여, 각 포트별 해당 맥(MAC) 주소를 기반으로 하여 그룹 멤버십을 관리하고, 또한 IGMP 퀘리(query) 메시지 또는 멀티캐스트 라우팅 프로토콜 패킷을 감지하여, 라우터가 인접한 포트를 인식하는 것이다.
즉, 멀티캐스팅을 지원하기 위하여 호스트들은 멀티캐스트 그룹에 가입하거나 탈퇴할 수 있어야 하며, 또한 인접한 멀티캐스트 라우터들에게 호스트 그룹의 멤버쉽 정보를 알려야 한다. 이를 위해서 정의 된 것이 Internet Group Management Protocol (IGMP)이다.
IGMP는 멤버쉽 퀘리(Membership Query) 메시지와 멤버쉽 리포트(Membership Report) 메시지로 구성되며, 멀티캐스트 라우터들은 그 라우터에 붙어있는 국부망에 어떤 호스트 그룹이 가입자를 포함하고 있는가를 발견하기 위해서 Membership Query 메시지를 전송한다.
그리고, 호스트들은 멀티캐스트 라우터로부터 수신되는 Membership Query 메시지에 대하여 Membership Report 메시지를 전송하여, 그 질의에 응답한다.
멀티캐스트 라우터는 멀티캐스트 패킷이 수신되면, 멀티캐스트 라우팅 프로토콜에 의해 생성된 멀티캐스트 포워딩 엔트리에 따라 멀티캐스트 패킷을 플로딩(flooding)하게 된다.
다수개의 라우팅 프로세서가 연결된 분산 구조 라우터는 내부의 이더넷 스위치에서 IGMP 스누핑 기법에 따라 멀티캐스트 패킷을 처리하는 경우, 각각의 라우팅 프로세서는 멀티캐스트 라우터로 동작하기 위하여 멀티캐스트 라우팅 프로토콜을 실행하고 있다.
이러한 다수개의 라우팅 프로세서를 연계시키는 이더넷 기반의 스위치는 각각의 라우팅 프로세서가 멀티캐스트 라우팅 프로토콜을 실행하고 있으므로 모든 라우팅 프로세서를 멀티캐스트 라우터로 인식하게 된다.
다시 말해서, 이더넷 스위치는 모든 라우팅 프로세서를 멀티캐스트 라우터로 인식하게 되어, 수신되는 멀티캐스트 패킷을 모든 포트로 플로딩하게 된다.
이러한 방법은, 분산 구조 라우터에서 모든 라우팅 프로세서를 멀티캐스트 라우터로 인식하게 됨으로 인하여, 이더넷 스위치로 유입되는 멀티캐스트 패킷은 언제나 모든 라우팅 프로세서로 플로딩됨으로, 이는 불필요한 라우터 내부의 트래픽을 증가시키게 되는 문제가 발생한다.
따라서, 본 발명은 상기와 같은 문제점을 해결하기 위하여 창안된 것으로, 다수개의 라우팅 프로세서를 구비하는 이더넷 기반의 분산 구조 라우터에서 수신되는 멀티캐스트 패킷을 모든 라우팅 프로세서로 플로딩하여 발생하는 불필요한 오버 헤드를 미연에 방지하는 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법 및 그 분산 구조 라우터를 제공하는 것에 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명의 일측면에 따른 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 장치는, 멀티캐스트 패킷을 수신하고자 하는 호스트로부터 멤버쉽 정보 또는 인접 멀티캐스트 라우터로부터 join/prune 메시지 정보가 수신되는 경우, 수신되는 정보에 따라, 해당 그룹에 대한 포워딩 캐시 엔트리를 생성/수정하고, 해당 라우팅 프로세서를 멀티캐스트 그룹에 가입시키기 위한 IGMP 리포트 메시지를 발생하는 다수개의 라우팅 프로세서부와, 각 라우팅 프로세서에 대응되고, 각 라우팅 프로세서가 멀티캐스트 패킷을 교환 할 수 있도록 연결하는 이더넷 포트와, IGMP 레포트 메시지를 발생하는 라우팅 프로세서와 연결되는 이더넷 포트를 통하여, 그룹 멤버쉽 테이블을 관리하는 IGMP 스누핑 처리부와, 멀티캐스트 패킷이 수신되는 경우, 그룹 멤버쉽 테이블에 존재하는 이더넷 포트로만 플로딩되도록 하여, 이더넷 포트와 연결된 라우팅 프로세서가 멀티캐스트 패킷을 포워딩할 수 있도록 하는 스위칭하는 스위칭부를 포함한다.
그리고 본 발명에 따른 라우팅 프로세서부는, 멀티캐스트 패킷을 수신하고자 하는 호스트로부터 IGMP 리포트 메시지 또는 인접 멀티캐스트 라우터로부터 join/prune 메시지가 수신되는 경우, 해당 메시지에 따라 포워딩 캐시 엔트리를 생성하는 엔트리 생성부와, 포워딩 캐시 엔트리가 생성된 그룹이 멀티캐스트 패킷을 수신할 수 있도록 IGMP 리포트 메시지를 생성하여, 이더넷 스위치로 전송하는 IGMP 처리부를 포함한다.
아울러, 본 발명의 다른 측면에 따른 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법은, 임의 라우팅 프로세서가 멀티캐스트 패킷을 수신하고자 하는 호스트로부터 멤버쉽 정보가 수신되거나, 인접 멀티캐스트 라우터로부터 join/prune 메시지 정보가 수신되면, 수신된 정보에 따라, 해당 그룹에 대한 포워딩 캐시 엔트리를 생성하는 단계와, 포워딩 캐시 엔트리가 생성된 그룹이 멀티캐스트 패킷을 수신할 수 있도록 IGMP 리포트 메시지를 생성하는 단계와, IGMP 리포트 메시지를 생성한 라우팅 프로세서와 연결된 이더넷 포트를 그룹 멤버쉽 테이블을 갱신하여 가입시키는 단계와, 멀티캐스트 패킷이 수신되는 경우, 갱신된 그룹 멤버쉽 테이블을 검색하고, 그 검색 결과, 그룹 멤버쉽 테이블에 가입되어 있는 이더넷 포트와 연결된 라우팅 프로세서로만 멀티캐스트 패킷을 플로딩하는 단계를 포함한다.
이하 본 발명에 따른 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법 및 그 분산 구조 라우터 을 첨부한 도면을 참조하여 상세히 설명한다.
도 1은 본 발명이 적용되는 이더넷 기반의 분산 구조 라우터의 구성을 설명하기 위한 블록도이다.
도 1을 참조하면, 분산 구조 라우터(100)는 이더넷 스위치부(10)와, 다수개의 라우팅 프로세서부(20 #1~#3)와, 각 라우팅 프로세서부(20 #1~#3)와 대응되는 다수개의 포워딩 엔진부(30 #1~#3)를 포함 할 수 있다.
또한 각 포워딩 엔진부(30)는 자신과 패킷을 교환하는 호스트(미도시)와 다수개의 포트로 연결되어 있다.
다수개의 포워딩 엔진부(30 #1~#3)는 호스트와 해당 포트로 연계하여, 수신되는 패킷을 저장하고, 그 수신된 패킷이 목적지로 전송될 수 있도록 포워딩한다.
또한 다수개의 라우팅 프로세서부(20 #1~#3)는 수신되는 패킷에 대한 라우팅을 수행하고, 이때 멀티캐스트 라우터로 동작하기 위하여 멀티캐스트 라우팅 프로토콜(PIM-SM, PIM-DM, DVMRP 등)을 수행해야 한다.
멀티캐스트 라우팅 프로토콜 중 DVMRP(distance vector multicast routing protocol)는, 통신망 간 또는 라우터간에 복수 개의 주소지에 동일한 정보를 보내는 IP 멀티캐스트 방식의 전송을 지원하기 위한 거리 벡터형 경로 제어 방식의 통신 규약이다.
또한, PIM(Protocol Independent Multicast)은, 특정한 유니캐스트 라우팅 프로토콜에서 제공되는 방식과 무관하게 멀티캐스팅을 지원하는 것으로, 특정한 라우팅 테이블의 계산을 필요로 하지 않기 때문에 DVMRP보다 단순한 규약이다.
이러한 PIM 중 PIM-DM(Protocol Independent Multicast-Dense Mode)은 대역폭이 충분하고 그룹 멤버들이 밀집되어 있는 환경에서 사용되는 프로토콜을 말하고, PIM-SM(Protocol Independent Multicast-Sparse Mode)는 대역폭이 충분하지 않은 환경에서 인터넷상의 여러 지역에 걸쳐서 그룹의 멤버들이 존재하는 경우를 사용되는 프로토콜을 말한다.
이하, 본 발명의 상세 설명에서는 라우팅 프로세서부(20)가 멀티캐스트 라우터로 동작하기 위하여 PIM-SM을 수행하는 경우에 대하여 설명한다.
이더넷 스위치부(10)는 라우팅 프로세서부(20)의 라우팅에 따라 해당 멀티캐스트 패킷을 목적지로 전송되도록 스위칭을 수행한다.
즉, 이더넷 스위치부(10)는 IGMP 리포트 메시지를 수신하여, 그 IGMP 리포트 메시지를 전송한 라우팅 프로세서(20)를 멀티캐스트 패킷을 수신할 수 있는 그룹에 가입시키고, 멀티캐스트 패킷이 수신되는 경우, 그룹 멤버쉽에 존재하는 라우팅 프로세서(20)로만 해당 멀티캐스트 패킷을 플로딩하는 기능을 수행한다.
도 2는 본 발명에 적용되는 이더넷 스위치부의 구성을 설명하기 위한 블록도이다.
도 2를 참조하면, 이더넷 스위치부(10)는 스위칭부(11), 메모리(13), 중앙 처리부(Central Processing Unit : 이하 'CPU'라 칭한다.)(12) 및 이더넷 포트(14)를 포함한다.
그리고, CPU(12)는 IGMP 스누핑 처리부(12a)를 포함한다.
이더넷 포트(14)는 다수개의 라우팅 프로세서부(20)와 이더넷 스위치(10)간에 멀티캐스트 패킷이 교환될 수 있도록 한다.
즉, 수신되는 멀티캐스트 패킷을 해당 라우팅 프로세서부(20)를 통해 호스트로 포워딩될 수 있도록 각 라우팅 프로세서부(20)간을 연결하고, 또한 이더넷 스위치(10)와 각 라우팅 프로세서부(20)간을 연결한다.
스위칭부(11)는 각 이더넷 포트(14)간에 멀티캐스트 패킷을 교환할 수 있도록 스위칭한다.
다시 말해서, 수신되는 멀티캐스트 패킷의 그룹 멤버쉽에 존재하는 이더넷 포트(14)로 플로딩되도록 스위칭하는 기능을 수행한다.
메모리(13)는 각 그룹 주소 정보 및 해당 그룹의 이더넷 포트(14) 리스트 정보 등으로 이루어지는 그룹 멤버쉽 테이블을 저장한다.
CPU(12)의 IGMP 스누핑 처리부(12a)는 IGMP 리포트 메시지를 전송하는 라우팅 프로세서부(20)와 연결되는 이더넷 포트(14)만을 인식하고, 그 인식된 이더넷 포트(14)로만 수신되는 멀티캐스트 패킷을 포워딩 할 수 있도록 그룹 멤버쉽 테이블을 관리한다.
즉, IGMP 스누핑 처리부(12a)는 IGMP 리포트 메시지를 전송하는 라우팅 프로세서부(20)와 연결된 이더넷 포트(14)를 메모리(13)에 저장되어 있는 그룹 멤버쉽 테이블을 갱신(up-date)하여 가입시키고, 멀티캐스트 패킷이 수신되면, 갱신된 그룹 멤버쉽 테이블을 참조하여, 해당 그룹에 가입되어 있는 이더넷 포트(14)로만 멀티캐스트 패킷을 플로딩하여, IGMP 리포트 메시지를 전송한 라우팅 프로세서부(20)만 멀티캐스트 패킷을 수신할 수 있도록 한다.
IGMP 스누핑 처리부(12a)는 IGMP 리포트 메시지를 전송한 라우팅 프로세서부(20)로만 수신되는 해당 멀티캐스트 패킷을 전송하고, 그 멀티캐스트 패킷을 수신한 라우팅 프로세서부(20)는 자신의 멀티캐스트 라우팅 프로토콜에 의해 생성된 포워딩 테이블에 따라 호스트로 멀티캐스트 패킷을 플로딩한다.
또한, IGMP 스누핑 처리부(12a)는 멀티캐스트 컨트롤 메시지, 즉 IGMP 퀘리 메시지 또는 멀티캐스트 라우팅 프로토콜 메시지 등은 연계하는 모든 라우팅 프로세서부(20)로 플로딩하여, 모든 라우팅 프로세서(20)가 인식할 수 있도록 하고, 또한 모든 그룹에 대한 IGMP 퀘리 메시지에 대한 응답인 IGMP 리포트 메시지를 수신하여 인식한다.
도 3은 본 발명에 적용되는 라우팅 프로세서부의 구성을 설명하기 위한 블록도이다.
도 3에 도시된 바와 같이, 라우팅 프로세서부(20)는 엔트리 생성부(22) 및 IGMP 처리부(21)를 포함한다.
엔트리 생성부(22)는 멀티캐스트 패킷 수신에 관심이 있는 호스트로부터 IGMP 리포트 메시지를 수신하거나, 인접한 PIM-SM 라우터로부터 Join/Prune 메시지를 수신하여, PIM-SM 프로토콜에 의해 포워딩 캐시 엔트리를 생성하는 기능을 수행한다.
즉, 엔트리 생성부(22)는 (*,G) 조인 메시지 또는 (S, G) 조인 메시지를 수신하여, 그 수신된 멤버쉽 정보에 따라 (*, G) 엔트리(entry) 또는 (S, G) 엔트리를 생성한다.
(*, G) 엔트리는 'G'라는 모든 그룹에 가입하는 것을 의미하고, (S, G) 엔트리는 'S'라는 특정 소스 주소 정보를 가진 'G' 라는 그룹에 가입하는 것을 의미한다.
그리고, IGMP 처리부(21)는 멀티캐스트 라우팅 프로토콜에 따라 생성되는 포워딩 테이블을 참조하여, 해당 그룹에 대하여 주기적으로 수신되는 IGMP 퀘리 메시지의 응답인 IGMP 리포트 메시지를 전송한다.
즉, 포워딩 테이블을 참조하여 (*,G) 엔트리 또는 (S, G) 엔트리가 존재하는 그룹에 대하여 주기적으로 수신되는 IGMP 퀘리 메시지에 대한 응답인 IGMP 리포트 메시지를 송신한다.
아울러, 포워딩 테이블에 모든 그룹에 참여하는 (*,*,RP) 엔트리가 존재하는 경우에는 모든 그룹에 대한 IGMP 리포트 메시지를 송신하고, 모든 그룹을 '0.0.0.0'으로 정의하여, 해당 라우팅 프로세서(20)가 모든 멀티캐스트 패킷을 수신할 수 있도록 한다.
도 4는 본 발명에 따른 분산 구조 라우터에서 멀티캐스트 패킷 과부하를 제거하는 방법의 흐름을 설명하기 위한 플로우챠트 도면이다.
도 1 내지 도 4를 참조하면, 엔트리 생성부(22)는 멀티캐스트 패킷 수신에 관심이 있는 호스트로부터 IGMP 리포트 메시지 또는 인접한 PIM-SM 라우터로부터 조인 메시지를 수신한다(S 1).
즉, 엔트리 생성부(22)는 멀티캐스트 그룹에 조인하고자 하는 호스트가 IGMP을 이용하여 전송하는 멤버쉽 정보 및 인접한 PIM-SM 라우터로부터 Join/Prune 메시지를 수신한다.
그리고, 엔트리 생성부(22)는 수신되는 멤버쉽 정보와, Join/Prune 메시지에 따라 해당 그룹에 대한 포워딩 캐시(cache) 엔트리를 생성한다(S 2).
IGMP 처리부(21)는 포워딩 엔트리의 그룹에 가입되어 해당 멀티캐스트 패킷을 수신할 수 있도록, IGMP 리포트 메시지를 IGMP 스누핑 처리부(21a)로 송신한다(S 3).
이때, IGMP 처리부(21)는 처음 캐시 엔트리가 생성되거나, 주기적으로 수신되는 IGMP 퀘리 메시지에 대한 응답으로 캐시 엔트리의 그룹에 대한 IGMP 리포트 메시지를 내부 인터페이스를 통해 이더넷 스위치(10)로 송신한다.
이더넷 스위치부(10)의 CPU(12)에 있는 IGMP 스누핑 처리부(21a)는 메모리(13)의 그룹 멤버쉽 테이블을 생성 및 갱신(update)한다(S 4).
즉, IGMP 스누핑 처리부(12a)는 IGMP 처리부(21)로부터 IGMP 퀘리 메시지의 응답인 IGMP 리포트 메시지를 수신하여, 해당 라우팅 프로세서부(20)와 연결된 이더넷 포트(14)를 인식하고, 그 인식된 이더넷 포트(14)를 멀티캐스트 패킷을 수신할 수 있도록 그룹에 가입시킨다.
그룹 멤버쉽 테이블은 각 그룹 주소 정보 및 해당 그룹의 이더넷 포트(14) 리스트 정보 등으로 이루어지고, 그룹 주소 정보는 맥(MAC) 주소 정보로 관리되며, 각 이더넷 포트(14) 리스트 정보는 해당 그룹에 조인된 이더넷 포트의 비트 맵으로 표현될 수 있다.
즉, IGMP 스누핑 처리부(12a)는 IGMP 리포트 메시지를 전송한 라우팅 프로세서부(20)와 연결되는 이더넷 포트(14)를 그룹 멤버쉽 테이블의 이더넷 포트(14) 리스트 정보에 추가하여 갱신한다.
그리고, CPU(12)의 IGMP 스누핑 처리부(21a)는 IGMP 리포트 메시지를 전송한 라우팅 프로세서부(20)와 연결되는 그룹 멤버쉽 테이블에 가입되는 이더넷 포트(14) 이외의 타 이더넷 포트(14)는 인식하지 않고, 이러한 인식되지 않은 이더넷 포트(14)로는 수신되는 멀티캐스트 패킷을 플로딩되지 않도록 한다.
그리고, 주기적으로 IGMP 퀘리 메시지를 모든 이더넷 포트(14)와 연결되는 라우팅 프로세서부(20)로 플로딩하여, 그에 대한 응답 메시지인 IGMP 리포트 메시지를 수신한다.
또한, IGMP 스누핑 처리부(12a) 멀티캐스트 컨트롤 메시지, 즉 IGMP 퀘리 메시지 또는 멀티캐스트 라우팅 프로토콜 메시지 등은 연계하는 모든 라우팅 프로세서부(20)로 플로딩하여, 모든 라우팅 프로세서(20)가 수신할 수 있도록 하고, 또한 모든 그룹에 전송하는 IGMP 퀘리 메시지에 대한 응답인 IGMP 리포트 메시지를 수신하여 인식한다.
한편, 멀티캐스트 패킷이 수신되는 경우, 해당 멀티캐스트 패킷이 전송한 라우팅 프로세서부(20)를 제외하고, 그룹 멤버쉽 테이블에 존재하는 이더넷 포트(14)와 연결된 라우팅 프로세서부(20)로 수신된 해당 멀티캐스트 패킷을 플로딩한다(S 5).
즉, 호스트로부터 멀티캐스트 패킷이 수신되면, 라우팅 프로세서부(20)에서 해당 멀티캐스트 패킷에 대한 멀티캐스트 라우팅을 수행한다.
그리고, CPU(12)의 IGMP 스누핑 처리부(12a)는 메모리(13)에 저장되어 있는 그룹 멤버쉽 테이블을 참조하여, 그룹 멤버쉽 테이블에 존재하는 이더넷 포트(14)로만 수신되는 멀티캐스트 패킷이 플로딩되도록 스위칭부(11)를 제어한다.
즉, 모든 이더넷 포트(14)와 연결되는 라우팅 프로세서부(20)로 수신되는 멀티캐스트 패킷을 플로딩하지 않고, 그룹 멤버쉽 테이블에 가입되어 있는 이더넷 포트(14)와 연결되는 라우팅 프로세서부(20)로만 해당 멀티캐스트 패킷을 플로딩한다.
그리고, 주기적으로 모든 그룹의 가입되어 있는 이더넷 포트(14)와 연결된 라우팅 프로세서부(20)로 IGMP 퀘리 메시지를 전송하고, 그에 대한 응답인 IGMP 리포트 메시지를 수신한다.
이상에서 본 발명은 기재된 구체 예에 대해서만 상세히 설명하였지만 본 발명의 기술 사상 범위 내에서 다양한 변형 및 수정이 가능함은 당업자에게 있어서 명백한 것이며, 이러한 변형 및 수정이 첨부된 특허청구범위에 속함은 당연한 것이다.
상기한 바와 같이, 본 발명에 따르면, 다수개의 라우팅 프로세서부를 구비하는 분산 구조 라우터에서 멀티캐스트 패킷을 모든 이더넷 포트를 통해 플로딩하지 않고, 멀티캐스트 멤버쉽에 조인된 이더넷 포트로만 전송함으로써, 모든 이더넷 포트로 멀티캐스트 패킷을 플로딩하여 발생하는 과부하를 방지할 수 있는 효과가 있다.
즉, 10개의 라우팅 프로세서부가 이더넷 스위치를 통해 연결된 분산 구조 라우터의 경우, 종래 기술에 따르면 멀티캐스트 패킷이 수신되면, 10개 라우팅 프로세서부로 플로딩하였으나, 본 발명의 기술에 따르면, 멀티캐스트 패킷을 수신해야 하는 특정 라우팅 프로세서부 그룹만을 인식하여, 수신되는 멀티캐스트 패킷을 특정 라우팅 프로세서부로만 플로딩함으로 인하여, 이더넷 스위치의 사용 효율을 향상시키고, 불필요하게 발생하는 플로딩을 감소시키는 효과가 있다.
도 1은 번 발명에 적용되는 이더넷 기반의 분산 구조 라우터의 구성을 설명하기 위한 블록도.
도 2는 본 발명에 적용되는 이더넷 스위치부의 구성을 설명하기 위한 블록도.
도 3은 본 발명에 따른 라우팅 프로세서의 구성을 설명하기 위한 블럭도.
도 4는 본 발명에 따른 분산 구조 라우터에서 멀티캐스트 패킷 과부하를 제거하는 방법의 흐름을 설명하기 위한 플로우챠트 도면.
<도면의 주요 부분에 대한 부호의 설명>
10 : 이더넷 스위치부 11 : 스위칭부
12 : 중앙 처리부(CPU) 12a : IGMP 스누핑(snooping) 처리부
13 : 메모리 14 : 이더넷 포트
20 #1~#3 : 라우팅 프로세서 21 : IGMP 처리부
22 : 엔트리 생성부 30 #1~#3 : 포워딩 엔진부
100 : 분산 구조 라우터
Claims (4)
- 멀티캐스트 패킷을 처리하는 분산 구조 라우터에 있어서,멀티캐스트 패킷을 수신하고자 하는 호스트로부터 멤버쉽 정보 또는 인접 멀티캐스트 라우터로부터 join/prune 메시지 정보가 수신되는 경우, 상기 수신되는 정보에 따라, 해당 그룹에 대한 포워딩 캐시 엔트리를 생성/수정하고, 해당 라우팅 프로세서를 멀티캐스트 그룹에 가입시키기 위한 IGMP 리포트 메시지를 발생하는 다수개의 라우팅 프로세서부;상기 각 라우팅 프로세서에 대응되고, 상기 각 라우팅 프로세서가 멀티캐스트 패킷을 교환 할 수 있도록 연결하는 이더넷 포트;상기 IGMP 레포트 메시지를 발생하는 상기 라우팅 프로세서와 연결되는 이더넷 포트를 통하여, 그룹 멤버쉽 테이블을 관리하는 IGMP 스누핑 처리부;멀티캐스트 패킷이 수신되는 경우, 상기 그룹 멤버쉽 테이블에 존재하는 이더넷 포트로만 플로딩되도록 하여, 상기 이더넷 포트와 연결된 상기 라우팅 프로세서가 상기 멀티캐스트 패킷을 포워딩할 수 있도록 하는 스위칭하는 스위칭부를 포함하는 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 장치.
- 제 1항에 있어서, 상기 라우팅 프로세서부는,멀티캐스트 패킷을 수신하고자 하는 호스트로부터 IGMP 리포트 메시지 또는 인접 멀티캐스트 라우터로부터 join/prune 메시지가 수신되는 경우, 해당 메시지에 따라 포워딩 캐시 엔트리를 생성하는 엔트리 생성부;상기 포워딩 캐시 엔트리가 생성된 그룹이 상기 멀티캐스트 패킷을 수신할 수 있도록 IGMP 리포트 메시지를 생성하여, 이더넷 스위치로 전송하는 IGMP 처리부를 포함하는 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 장치.
- 제 1항에 있어서, 상기 그룹 멤버쉽 테이블은,상기 그룹 주소 정보와, 해당 그룹에 대한 이더넷 포트 리스트 정보를 저장하는 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 장치.
- 다수개의 라우팅 프로세서를 구비하는 분산 구조 라우터가 멀티캐스트 패킷을 처리하는 방법에 있어서,임의 라우팅 프로세서가 멀티캐스트 패킷을 수신하고자 하는 호스트로부터 멤버쉽 정보가 수신되거나, 인접 멀티캐스트 라우터로부터 join/prune 메시지 정보가 수신되면, 상기 수신된 정보에 따라, 해당 그룹에 대한 포워딩 캐시 엔트리를 생성하는 단계;상기 포워딩 캐시 엔트리가 생성된 그룹이 멀티캐스트 패킷을 수신할 수 있도록 IGMP 리포트 메시지를 생성하는 단계;상기 IGMP 리포트 메시지를 생성한 상기 라우팅 프로세서와 연결된 이더넷 포트를 그룹 멤버쉽 테이블을 갱신하여 가입시키는 단계; 및멀티캐스트 패킷이 수신되는 경우, 상기 갱신된 그룹 멤버쉽 테이블을 검색하고, 그 검색 결과, 상기 그룹 멤버쉽 테이블에 가입되어 있는 이더넷 포트와 연결된 상기 라우팅 프로세서로만 상기 멀티캐스트 패킷을 플로딩하는 단계를 포함하는 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030056261A KR100560739B1 (ko) | 2003-08-13 | 2003-08-13 | 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법및 그 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030056261A KR100560739B1 (ko) | 2003-08-13 | 2003-08-13 | 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법및 그 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050017486A true KR20050017486A (ko) | 2005-02-22 |
KR100560739B1 KR100560739B1 (ko) | 2006-03-13 |
Family
ID=37227182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030056261A KR100560739B1 (ko) | 2003-08-13 | 2003-08-13 | 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법및 그 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100560739B1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100918581B1 (ko) * | 2007-08-03 | 2009-09-24 | 주식회사 다산네트웍스 | 인터넷 그룹 관리 프로토콜 가입 보고 패킷을 처리하는방법 및 장치 |
GB2462060A (en) * | 2008-07-12 | 2010-01-27 | Xancom Ltd | Emulated LAN (ELAN) including specifying ports of a service member set and flooding a packet to the permitted members of the set. |
KR101434887B1 (ko) * | 2012-03-21 | 2014-09-02 | 네이버 주식회사 | 네트워크 스위치를 이용한 캐시 시스템 및 캐시 서비스 제공 방법 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102082720B (zh) * | 2009-12-01 | 2013-04-03 | 杭州华三通信技术有限公司 | 一种转发组播流量的方法和装置 |
-
2003
- 2003-08-13 KR KR1020030056261A patent/KR100560739B1/ko not_active IP Right Cessation
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100918581B1 (ko) * | 2007-08-03 | 2009-09-24 | 주식회사 다산네트웍스 | 인터넷 그룹 관리 프로토콜 가입 보고 패킷을 처리하는방법 및 장치 |
GB2462060A (en) * | 2008-07-12 | 2010-01-27 | Xancom Ltd | Emulated LAN (ELAN) including specifying ports of a service member set and flooding a packet to the permitted members of the set. |
GB2462060B (en) * | 2008-07-12 | 2012-05-16 | Broadcom Corp | Fast emulation of MAC table flushing for elan unicasts |
KR101434887B1 (ko) * | 2012-03-21 | 2014-09-02 | 네이버 주식회사 | 네트워크 스위치를 이용한 캐시 시스템 및 캐시 서비스 제공 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR100560739B1 (ko) | 2006-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7590116B2 (en) | Method for forwarding multicast message in network communication | |
US8345536B1 (en) | Multicast high availability enhancements for non-stop forwarding | |
US8102848B1 (en) | Multicast high availability enhancements for faster convergence | |
US7924837B1 (en) | IP multicast in VLAN environment | |
US9077551B2 (en) | Selection of multicast router interfaces in an L2 switch connecting end hosts and routers, which is running IGMP and PIM snooping | |
EP1597875B1 (en) | Method and device for protocol-independent realization of ip multicast | |
EP0980608B1 (en) | Multicast switching | |
US20060146857A1 (en) | Admission control mechanism for multicast receivers | |
US20080205397A1 (en) | Method for forwarding multicast packets in a virtual private local area network service | |
KR20110027683A (ko) | 단말기의 멀티캐스트 상태를 얻기 위한 방법 | |
KR100560739B1 (ko) | 분산 구조 라우터에서 멀티캐스트 패킷을 필터링하는 방법및 그 장치 | |
Cisco | Configuring IP Multicast Routing | |
Cisco | Configuring IP Multicast Routing | |
Cisco | Configuring IP Multicast Routing | |
Cisco | Configuring IP Multicast Routing | |
Cisco | Configuring IP Multicast Routing | |
Cisco | Configuring IP Multicast Layer 3 Switching | |
Cisco | Configuring IP Multicast Layer 3 Switching | |
Cisco | IP Multicast Commands: ip multicast cache-headers Through ip sap cache-timeout | |
Cisco | Configuring Networking Protocols | |
Cisco | Internet Protocol (IP) Multicast | |
Cisco | Configuring DVMRP Interoperability | |
Cisco | IP Multicast Routing Commands | |
Cisco | IP Multicast Routing Commands | |
Cisco | IP Multicast Routing Commands |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130227 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140227 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |