KR101649244B1 - 멀티캐스트 브랜치, 프로토콜 독립 멀티캐스트 라우터, 및 계층-2 교환기를 프루닝하기 위한 방법 - Google Patents
멀티캐스트 브랜치, 프로토콜 독립 멀티캐스트 라우터, 및 계층-2 교환기를 프루닝하기 위한 방법 Download PDFInfo
- Publication number
- KR101649244B1 KR101649244B1 KR1020147033727A KR20147033727A KR101649244B1 KR 101649244 B1 KR101649244 B1 KR 101649244B1 KR 1020147033727 A KR1020147033727 A KR 1020147033727A KR 20147033727 A KR20147033727 A KR 20147033727A KR 101649244 B1 KR101649244 B1 KR 101649244B1
- Authority
- KR
- South Korea
- Prior art keywords
- pim
- multicast
- port
- message
- multicast flow
- Prior art date
Links
Images
Classifications
-
- 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
-
- 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
- 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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/15—Flow control; Congestion control in relation to multipoint traffic
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
멀티캐스트 브랜치를 프루닝하기 위한 방법에서, PIM 기능들을 구비한 하나 또는 복수의 계층-2 스위치들을 경유하여 제1 홉 PIM 라우터에 연결된 멀티캐스트 소스가 제공된다. 게다가, 제1 홉 PIM 라우터는 멀티캐스트 소스에 의해 개시된 멀티캐스트 플로우를 수신하고, 멀티캐스트 플로우가 수신되지 않아야 한다는 결정에 응답하여 멀티캐스트 플로우가 수신되는 포트를 경유하여 PIM 프룬 메시지를 송신하고; 또는 제1 홉 PIM 라우터가 다운스트림 PIM라우터로부터 멀티캐스트 플로우를 위한 PIM 프룬 메시지, 또는 제1 홉 PIM 라우터에 연결된 클라이언트로부터의 멀티캐스트 플로우를 위한 멀티캐스트 그룹 리브 메시지를 수신하고, 포트를 경유하여 PIM 프룬 메시지 또는 멀티캐스트 그룹 리브 메시지가 수신되는 포트를 멀티캐스트 플로우에 대응하는 출구 포트 리스트로부터 삭제하고, 멀티캐스트 플로우가 수신되지 않아야 한다는 결정에 응답하여, 멀티캐스트 플로우가 수신되는 포트를 경유하여 PIM 프룬 메시지를 송신한다.
Description
본 발명은 멀티캐스트 브랜치, 프로토콜 독립 멀티캐스트 라우터 및 계층-2 교환기를 프루닝하기 위한 방법에 관한 것이다.
이해를 용이하게 하기 위해, 다음 개념들을 먼저 설명한다.
멀티캐스트(Multicast): 유니캐스트(unicast) 및 브로드캐스트(broadcast)와 반대의 통신 방식. 멀티캐스트 시스템은 멀티캐스트 소스, 하나 또는 복수의 수신기들, 및 멀티캐스트 그룹을 포함한다. 그 소스 호스트는 단지 한번만 데이터를 전송하며, 그 데이터의 목적지 어드레스는 그 멀티캐스트 그룹의 어드레스이다. 그 멀티캐스트 그룹 내의 각 수신기는 데이터의 카피(copy)를 수신하고, 그 멀티캐스트 그룹 내의 수신기들만 그 데이터를 수신할 수 있다.
IGMP(Internet Group Management Protocol): TCP/IP(Transmission Control Protocol/Internet Protocol) 프로토콜 패밀리 내의 IP 멀티캐스트 멤버들을 관리하기 위한 프로토콜로서, 이는 IP 호스트와 인접 멀티캐스트 라우터들 사이의 멀티캐스트 그룹 멤버들의 관계들을 설정하고 유지하기 위한 것이다.
IGSP(Internet Group Management Protocol Snooping): 계층-2 디바이스들에서 운영되는 멀티캐스트 제한 체계로서, 멀티캐스트 그룹들을 관리하고 제어하기 위한 것이다. IGMP 스누핑(snooping)을 하는 계층-2 디바이스는 수신된 IGMP 패킷을 분석하고, 포트와 멀티캐스트 MAC(Media Access Control) 어드레스 사이의 맵핑 관계(mapping relation)를 설정하며, 그 맵핑 관계에 따라 멀티캐스트 데이터를 송신한다.
PIM: 정적 라우팅(static routing), 및 RIP, OSPF, IS-IS, BGP 등과 같은 임의의 유니캐스트 라우팅 프로토콜을 사용하여 설정된 유니캐스트 라우팅 테이블을 이용함으로써 IP 멀티캐스트 라우팅을 제공하는 프로토콜이며, 계층-3 디바이스들 사이에서 멀티캐스트 데이터의 전파(propagation)을 유지하기 위한 것이다. PIM 프로토콜은 네 개의 모드들, 즉 PIM-DM(Dense mode), PIM-SM(Spare mode), PIM-SSM(Source-Specific Multicast), 및 양방향(bi-directional) PIM 을 구비한다.
IP 멀티캐스트 기술들은 일-대-다수 전송들에서 존재하는 문제점들을 효과적으로 해결하고, IP 네트워크에서 효율적인 일-대-다수 데이터 전송을 실행하며, 대량의 대역폭을 절감하고 네트워크 부하를 감소시킬 수 있다. 온라인 라이브 방송, IP TV, 원격 교육, 원격 의료, 인터넷 라디오, 실시간 비디오 컨퍼런스, 등과 같은 인터넷 정보 서비스들을 포함하는 몇몇의 새로운 가치 부가 서비스들은 네트워크의 멀티캐스트 기능들을 이용함으로써 더 큰 개선을 획득할 수 있다.
삭제
삭제
삭제
삭제
삭제
PIM 프로토콜은 오늘날 사용중인 현재 우세한 멀티캐스트 라우팅 프로토콜이다. IGMP 스누핑(IGMP snooping) 및 PIM 스누핑(PIM snooping)은 또한 공통적으로 채택된 계층-2 멀티캐스트 제어 프로토콜들이다. 그 중요성이 IGMP 스누핑보다 단지 낮은 PIM 스누핑은 의도된 라우터들에 멀티캐스트 플로우(multicast flow)를 송신하는 것을 제어하기 위해 PIM 인사 메시지들(PIM hello messages), PIM 참여 메시지들(PIM join messages), 및 PIM 프룬 메시지들(PIM prune messages)을 스누핑(snooping) 하기 위한 것이다. 그러나, PIM 스누핑 교환기들은 PIM 라우터들 사이에서 배치될 때에만 긍정적인 결과들(positive outcomes)을 생성할 수도 있지만, 멀티캐스트 소스와 PIM 라우터 사이에 배치될 때 동일한 결과들을 달성할 수 없을 수도 있다.
VOD(Video On Demand)의 메커니즘과 유사한 메커니즘 하에서 동작하는 멀티캐스트 애플리케이션들에 관하여, 멀티캐스트 소스에서의 트래픽 제어는 본 산업에서 해결되어야 할 문제로 남아있다. 도 1은 멀티캐스트 네트워크의 구조를 예시하는 개략도이다. 도 1에서 도시된 바와 같이, 멀티캐스트 소스는 하나 이상의 계층-2 교환기들을 경유하여 그 네트워크에 액세스하고, 클라이언트는 계층-2 교환기 또는 PIM 라우터를 경유하여 그 네트워크에 액세스한다. 부가적으로, 복수의 계층-2 교환기들은 PIM 라우터에서 수렴(converge)한다. 예를 들어, 멀티캐스트 소스들(1, 2)은 계층-2 교환기들(5, 6)을 경유하여 각각 네트워크에 액세스하고, 계층-2 교환기들(1, 2)은 PIM 라우터(2)에서 수렴한다.
멀티캐스트 소스로부터 개시된 멀티캐스트 플로우가 하나 또는 복수의 교환기들을 경유하여 제1 홉 PIM 라우터에 도달할 때, PIM 라우터가 지정 라우터(Designated Router:DR)인 경우 PIM 라우터가 소스 등록 메시지를 RP(Rendezvous Point)에 송신할 수도 있다. RP가 멀티캐스트 플로우에 대응하는 (S,G) 엔트리, 즉 멀티캐스트 플로우의 소스 어드레스 및 그룹 어드레스를 기록한 엔트리가 RP에서 확립되지 않았음을 검출하고 이것이 멀티캐스트 플로우에 가입한 클라이언트가 없음을 나타낼 때, 그 RP는 소스 퀀치 메시지(source quench message)를 DR 에 송신한다. 그 후에, 클라이언트가 멀티캐스트 플로우에 가입할 때, 클라이언트는 IGMP 참여 메시지를 리프 라우터(leaf router)에 송신하고, 리프 라우터는 PIM 참여 메시지를 RP 에 송신한다. PIM 참여 메시지를 수신한 후에, RP 는 PIM 참여 메시지를 DR에 송신하고, 그 후에, 멀티캐스트 플로우가 RP를 경유하여 멀티캐스트 수신기에 도달한다.
제1 홉 PIM 라우터는 멀티캐스트 소스로부터 멀티캐스트 플로우에 의해 우연히 마주친 제1 PIM 라우터를 지칭한다. RP 는 멀티캐스트 플로우 정보의 집중형 관리(centralized management)를 제공하는 PIM 라우터이며, 멀티캐스트 소스들과 멀티캐스트 수신기들 사이에서 매체로서 작용한다.
종래의 네트워크들에서, 임의의 클라이언트들에 의해 그에 가입이 되어있든지 아니든지, 멀티캐스트 소스로부터의 멀티캐스트 플로우는 먼저 하나 이상 또는 복수의 교환기들을 경유하여 제1 홉 PIM 라우터에 송신되며, 이것은 교환기들에서 캐시 메모리(cache memory) 소비를 증가시킨다. 교환기의 출구 포트들을 위한 캐시 메모리는, 패킷 손실을 방지하는 것과 지터(jitter)를 감소시키는 데 있어서, 서비스 플로우들, 특히 비디오들 등과 같은 버스트들(bursts)을 가진 서비스 플로우들을, 순서대로 유지하는 데 중요한 역할을 한다. 그러므로, 그 송신이 필수적이지 않은 데이터 플로우들의 송신은, 교환기의 출구 포트들을 위한 캐시 메모리의 소비를 감소시키기 위해 방지되어야 한다. 그러나, 현재의 프로토콜들은 멀티캐스트 소스와 데이터 링크 층 상의 PIM 라우터 사이의 불필요한 멀티캐스트 플로우들을 프루닝 오프(prune off) 시킬 수 없다.
상술한 문제점을 해결하기 위한 수단으로서, 본 발명의 일 측면은 프로토콜 독립 멀티캐스트(Protocol Independent Multicast:PIM) 스누핑 기능들을 구비하고, 멀티캐스트 소스와 제1 홉 PIM 라우터 사이의 배치(deployment)를 위한 계층-2 교환기로서, 멀티캐스트 플로우를 위한 PIM 프룬 메시지를 수신하고, 상기 PIM 프룬 메시지가 수신되는 포트를 상기 멀티캐스트 플로우에 대응하는 PIM 스누핑 엔트리에 프룬 포트로서 부가하고, 상기 PIM 프룬 메시지의 업스트림 이웃 어드레스가 상기 교환기의 PIM 스누핑 기능들에 의해 유지되는 PIM 라우터들의 리스트 내에 존재하지 않는다는 결정에 응답하여 상기 프룬 포트를 경유하여 상기 멀티캐스트 플로우를 송신하는 것을 중단하는, 제1 모듈을 포함하는, 계층-2 교환기를 제공한다.
VOD(Video On Demand)의 메커니즘과 유사한 메커니즘 하에서 동작하는 멀티캐스트 애플리케이션들에 관하여, 멀티캐스트 소스에서의 트래픽 제어는 본 산업에서 해결되어야 할 문제로 남아있다. 도 1은 멀티캐스트 네트워크의 구조를 예시하는 개략도이다. 도 1에서 도시된 바와 같이, 멀티캐스트 소스는 하나 이상의 계층-2 교환기들을 경유하여 그 네트워크에 액세스하고, 클라이언트는 계층-2 교환기 또는 PIM 라우터를 경유하여 그 네트워크에 액세스한다. 부가적으로, 복수의 계층-2 교환기들은 PIM 라우터에서 수렴(converge)한다. 예를 들어, 멀티캐스트 소스들(1, 2)은 계층-2 교환기들(5, 6)을 경유하여 각각 네트워크에 액세스하고, 계층-2 교환기들(1, 2)은 PIM 라우터(2)에서 수렴한다.
멀티캐스트 소스로부터 개시된 멀티캐스트 플로우가 하나 또는 복수의 교환기들을 경유하여 제1 홉 PIM 라우터에 도달할 때, PIM 라우터가 지정 라우터(Designated Router:DR)인 경우 PIM 라우터가 소스 등록 메시지를 RP(Rendezvous Point)에 송신할 수도 있다. RP가 멀티캐스트 플로우에 대응하는 (S,G) 엔트리, 즉 멀티캐스트 플로우의 소스 어드레스 및 그룹 어드레스를 기록한 엔트리가 RP에서 확립되지 않았음을 검출하고 이것이 멀티캐스트 플로우에 가입한 클라이언트가 없음을 나타낼 때, 그 RP는 소스 퀀치 메시지(source quench message)를 DR 에 송신한다. 그 후에, 클라이언트가 멀티캐스트 플로우에 가입할 때, 클라이언트는 IGMP 참여 메시지를 리프 라우터(leaf router)에 송신하고, 리프 라우터는 PIM 참여 메시지를 RP 에 송신한다. PIM 참여 메시지를 수신한 후에, RP 는 PIM 참여 메시지를 DR에 송신하고, 그 후에, 멀티캐스트 플로우가 RP를 경유하여 멀티캐스트 수신기에 도달한다.
제1 홉 PIM 라우터는 멀티캐스트 소스로부터 멀티캐스트 플로우에 의해 우연히 마주친 제1 PIM 라우터를 지칭한다. RP 는 멀티캐스트 플로우 정보의 집중형 관리(centralized management)를 제공하는 PIM 라우터이며, 멀티캐스트 소스들과 멀티캐스트 수신기들 사이에서 매체로서 작용한다.
종래의 네트워크들에서, 임의의 클라이언트들에 의해 그에 가입이 되어있든지 아니든지, 멀티캐스트 소스로부터의 멀티캐스트 플로우는 먼저 하나 이상 또는 복수의 교환기들을 경유하여 제1 홉 PIM 라우터에 송신되며, 이것은 교환기들에서 캐시 메모리(cache memory) 소비를 증가시킨다. 교환기의 출구 포트들을 위한 캐시 메모리는, 패킷 손실을 방지하는 것과 지터(jitter)를 감소시키는 데 있어서, 서비스 플로우들, 특히 비디오들 등과 같은 버스트들(bursts)을 가진 서비스 플로우들을, 순서대로 유지하는 데 중요한 역할을 한다. 그러므로, 그 송신이 필수적이지 않은 데이터 플로우들의 송신은, 교환기의 출구 포트들을 위한 캐시 메모리의 소비를 감소시키기 위해 방지되어야 한다. 그러나, 현재의 프로토콜들은 멀티캐스트 소스와 데이터 링크 층 상의 PIM 라우터 사이의 불필요한 멀티캐스트 플로우들을 프루닝 오프(prune off) 시킬 수 없다.
상술한 문제점을 해결하기 위한 수단으로서, 본 발명의 일 측면은 프로토콜 독립 멀티캐스트(Protocol Independent Multicast:PIM) 스누핑 기능들을 구비하고, 멀티캐스트 소스와 제1 홉 PIM 라우터 사이의 배치(deployment)를 위한 계층-2 교환기로서, 멀티캐스트 플로우를 위한 PIM 프룬 메시지를 수신하고, 상기 PIM 프룬 메시지가 수신되는 포트를 상기 멀티캐스트 플로우에 대응하는 PIM 스누핑 엔트리에 프룬 포트로서 부가하고, 상기 PIM 프룬 메시지의 업스트림 이웃 어드레스가 상기 교환기의 PIM 스누핑 기능들에 의해 유지되는 PIM 라우터들의 리스트 내에 존재하지 않는다는 결정에 응답하여 상기 프룬 포트를 경유하여 상기 멀티캐스트 플로우를 송신하는 것을 중단하는, 제1 모듈을 포함하는, 계층-2 교환기를 제공한다.
본 발명의 다른 측면은, PIM(Protocol Independent Multicast) 스누핑 기능들을 구비한 적어도 하나의 계층-2 교환기를 경유하여 제1 홉 PIM 라우터에 연결된 멀티캐스트 소스를 포함하는 네트워크에서 멀티캐스트 브랜치(multicast branch)를 프루닝(pruning)하기 위한 방법으로서, 상기 멀티캐스트 소스에 의해 개시된 멀티캐스트 플로우를 상기 제1 홉 PIM 라우터에 의해 수신하고, 상기 멀티캐스트 플로우가 수신되지 않아야 한다는 결정에 응답하여, 상기 멀티캐스트 플로우가 수신되는 포트를 경유하여 PIM 프룬 메시지를 송신하는 단계; 또는 상기 제1 홉 PIM 라우터에 의해, 상기 제1 홉 PIM 라우터에 연결된 클라이언트로부터의 멀티캐스트 플로우를 위한 멀티캐스트 그룹 리브 메시지 또는 다운스트림 PIM 라우터로부터의 멀티캐스트 플로우를 위한 PIM 프룬 메시지를 수신하고, 포트를 경유하여 상기 프룬 메시지 또는 상기 멀티캐스트 그룹 리브 메시지가 수신되는 포트를 상기 멀티캐스트 플로우에 대응하는 출구 포트 리스트로부터 삭제하고, 상기 멀티캐스트 플로우가 수신되지 않아야 한다는 결정에 응답하여, 상기 멀티캐스트 플로우가 수신되는 포트를 경유하여 상기 멀티캐스트 소스로 어드레싱(addressing)된 PIM 프룬 메시지를 송신하는 단계를 포함하는, 멀티캐스트 브랜치 프루닝 방법을 제공한다.
도 1은 멀티캐스트 네트워크의 구조를 예시하는 개략도이다.
도 2는 예시에 따른 멀티캐스트 브랜치를 프루닝(pruning)하기 위한 방법을 예시하는 플로우차트이다.
도 3은 예시에 따른 멀티캐스트 플로우를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터(first hop PIM router)에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 4는 예시에 따라 다운스트림 PIM 라우터로부터 PIM 프룬 메시지를 수신하거나 제1 홉 PIM 라우터에 의해 서비스된 클라이언트로부터 IGMP 리브 메시지(IGMP leave message)를 수신한 후에, PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 5는 예시에 따라 PIM 프룬 메시지를 수신한 후에 계층-2 교환기에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 6은 예시에 따라 다운스트림 PIM 라우터로부터 PIM 참여 메시지를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 7은 예시에 따라 PIM 참여 메시지를 수신한 후에 계층-2 교환기에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 8은 예시에 따라 IGMP 참여 메시지를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 9는 예시에 따라 PIM 참여 메시지를 수신한 후에 계층-2 교환기에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 10은 예시에 따라 멀티캐스트 플로우를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 11은 예시에 따라 멀티캐스트 플로우를 수신한 후에 PIM-DIM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 12는 예시에 따라 PIM 이웃으로부터 PIM 접합 메시지를 수신한 후에 PIM-DM 을 채택한 제1 홉 PIM 라우터에 의해 수행된 프로세스를 예시하는 플로우차트이다.
도 13은 예시에 따라 PIM 라우터의 구조를 예시하는 개략도이다.
도 14는 예시에 따라 PIM 라우터의 구조를 예시하는 개략도이다.
도 2는 예시에 따른 멀티캐스트 브랜치를 프루닝(pruning)하기 위한 방법을 예시하는 플로우차트이다.
도 3은 예시에 따른 멀티캐스트 플로우를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터(first hop PIM router)에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 4는 예시에 따라 다운스트림 PIM 라우터로부터 PIM 프룬 메시지를 수신하거나 제1 홉 PIM 라우터에 의해 서비스된 클라이언트로부터 IGMP 리브 메시지(IGMP leave message)를 수신한 후에, PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 5는 예시에 따라 PIM 프룬 메시지를 수신한 후에 계층-2 교환기에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 6은 예시에 따라 다운스트림 PIM 라우터로부터 PIM 참여 메시지를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 7은 예시에 따라 PIM 참여 메시지를 수신한 후에 계층-2 교환기에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 8은 예시에 따라 IGMP 참여 메시지를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 9는 예시에 따라 PIM 참여 메시지를 수신한 후에 계층-2 교환기에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 10은 예시에 따라 멀티캐스트 플로우를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 11은 예시에 따라 멀티캐스트 플로우를 수신한 후에 PIM-DIM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다.
도 12는 예시에 따라 PIM 이웃으로부터 PIM 접합 메시지를 수신한 후에 PIM-DM 을 채택한 제1 홉 PIM 라우터에 의해 수행된 프로세스를 예시하는 플로우차트이다.
도 13은 예시에 따라 PIM 라우터의 구조를 예시하는 개략도이다.
도 14는 예시에 따라 PIM 라우터의 구조를 예시하는 개략도이다.
첨부된 도면들을 참조하여 몇몇 예들이 상세하게 설명될 것이다.
몇몇 예시들에서, 전체 네트워크가 멀티캐스트 그룹 관리 프로토콜의 동일한 버전을 채택하는 것, 예컨대 IGMPv2, IGMPv3, MLDv1(Multicast Listener Discovery Protocol Version 1) 및 MLDv2 중 하나를 채택하는 것이 가정된다.
IGMPv2 또는 MLDv1 이 이 예시에서 채택될 때, 멀티캐스트 플로우가 멀티캐스트 그룹 식별(multicast group identification)에 의해 식별된다. 그러나, IGMPv3 또는 MLDv2 가 채택될 때, 멀티캐스트 플로우는 멀티캐스트 소스 식별 + 멀티캐스트 그룹 식별에 의해 식별된다.
몇몇 예시들에서, 채택된 PIM 프로토콜은 PIM-SSM 또는 PIM-DM 이다. PIM-SSM 이 채택될 때, 채택된 IGMP 버전은 IGMPv3 이고, 여기에서 IGSP 버전은 IGMPv3 스누핑이다.
몇몇 예시들에서, PIM 스누핑 기능들을 가진 계층-2 교환기가 포트들을 위한 새로운 역할(즉 프룬 포트들)을 갖는다. PIM 스누핑 기능들을 가진 계층-2 교환기가 멀티캐스트 플로우를 위해 제1 홉 PIM 라우터로부터 PIM 프룬 메시지를 수신할 때, 그 메시지를 수신하는 포트가 프룬 포트로서 설정된다. 후에, 멀티캐스트 플로우는 프룬 포트로 송신되는 것이 금지된다.
멀티캐스트를 지원하는 계층-2 교환기는 포트들을 위한 네 개의 역할들, 즉 라우터 포트들 및 IGMP 스누핑을 위한 멤버쉽 포트들, 프룬 포트(prune port)들 및 PIM 스누핑을 위한 업스트림 포트들을 구비한다. 라우터 포트는 다운스트림 포트, 즉 PIM 참여 메시지를 수신하는 포트이다. 다운스트림 포트들은 그들이 동일한 기능들, 즉 라우터들을 연결하고 모든 멀티캐스트 플로우들을 송신하는 기능들을 수행하기 때문에 라우터 포트들로 지칭된다.
포트들의 네 가지 역할들은 서로에 관하여 각각 유지된다. 포트가 멤버쉽 포트, 프룬 포트, 및 라우터 포트의 세 가지 역할들 중 동시에 모든 역할 또는 임의의 두 가지 역할을 수행할 때, 그 역할들의 우선 순위는 내림차순으로 멤버쉽 포트, 프룬 포트, 및 라우터 포트의 순서이다. 계층-2 송신 테이블 엔트리들, 즉 PIM 스누핑 엔트리들 및 IGMP 스누핑 엔트리들에 대하여, 그러한 포트를 처리하는 규칙은: 포트의 가장 높은 우선순위를 가진 역할이 멤버쉽 포트일 때 엔트리들에 그 포트를 부가하고, 포트의 가장 높은 우선순위를 가진 역할이 프룬 포트일 때 엔트리들에 그 포트를 부가하지 않는 것을 포함한다. 부가적으로, 포트의 오직 한가지 역할이 라우터 포트라면, 그 포트의 가장 높은 우선 순위를 갖는 역할은 라우터 포트이고 그 포트가 계층-2 송신 테이블 엔트리들에 부가된다고 가정된다.
계층-2 교환기의 PIM 스누핑 테이블 엔트리 내의 리스트가 비어있는 경우, 계층-2 교환기의 어떤 업스트림 포트도 PIM 스누핑 테이블 엔트리 내의 다운스트림 출구 포트에 부가되지 않아야 한다. PIM 스누핑 테이블 엔트리는: (S, G) 엔트리, 리스트, 다운스트림 이웃 리스트, 등이다.
이하의 예시는 그 멀티캐스트 그룹 관리 프로토콜로서 IGMP를 채택한다. MLD 프로토콜이 채택되는 경우, "MLD"를 갖는 이하의 설명에서 "IGMP" 모두의 대체만이 요구된다.
도 2는 예시에 따라 멀티캐스트 브랜치를 프루닝하기 위한 방법을 예시하는 플로우차트이다. 도 2에서 도시된 바와 같이, 그 방법은 이하의 동작들을 포함할 수도 있다.
블록 201에서, 계층-2 교환기는 PIM 라우터로부터 PIM 인사 메시지를 수신하며, IGMP 스누핑 기능들을 이용함으로써 그 메시지를 수신한 그 포트를 라우터 포트로서 설정하고, PIM 스누핑 기능들을 이용함으로써 그 메시지에 따라 PIM 라우터 리스트를 유지한다. PIM 라우터 리스트의 각 엔트리는: PIM 인사 메시지를 송신하는 PIM 라우터의 어드레스, 및 그 PIM 라우터를 갖는 계층-2 교환기를 연결하는 포트의 포트 번호를 포함한다.
PIM 인사 메시지를 송신하는 PIM 라우터의 어드레스는 PIM 인사 메시지 내의 소스 어드레스 필드(source address field)로부터 획득될 수도 있다. PIM 라우터를 가진 계층-2 교환기를 연결하는 포트의 포트 번호는 PIM 인사 메시지가 계층-2 교환기에 의해 수신되는 포트 번호를 지칭한다.
PIM 라우터에서, PIM 프로토콜을 채택하는 포트는 PIM 인사 메시지를 간격을 두고 외부 디바이스로 송신할 수도 있다.
PIM 인사 메시지를 수신한 후에, 계층-2 교환기가 다른 계층-2 교환기들에 그 메시지를 송신할 수도 있으며, 다른 계층-2 교환기들은 또한 그 메시지를 수신한 후에 블록 201에서 그 동작들을 실행한다.
블록 202에서, 멀티캐스트 소스로부터 개시된 멀티캐스트 플로우가 라우터 포트를 경유하여 제1 홉 PIM 라우터에 도달하면, 제1 홉 PIM 라우터는, 멀티캐스트 플로우의 수신이 요구되지 않는다는 결정이 이루어질 때, 멀티캐스트 플로우가 수신되는 포트를 경유하여 멀티캐스트 플로우를 위한 PIM 프룬 메시지를 송신한다.
블록 203에서, 제1 홉 PIM 라우터가 다운스트림 PIM 라우터로부터 멀티캐스트 플로우를 위한 PIM 프룬 메시지를 수신하거나 제1 홉 PIM 라우터에 연결된 클라이언트로부터 멀티캐스트 플로우를 위한 IGMP 리브 메시지(IGMP leave message)를 수신하면, 제1 홉 PIM 라우터는 멀티캐스트 플로우에 대응하는 엔트리를 멀티캐스트 라우팅 테이블에서 탐색하고, 멀티캐스트 플로우가 수신되는 포트를 엔트리로부터 삭제하고, 그 엔트리 내의 출구 포트들의 리스트가 비어 있을 때, 멀티캐스트 플로우가 수신되는 포트를 경유하여 멀티캐스트 플로우를 위한 PIM 프룬 메시지를 송신한다.
블록 202 및 203에서 PIM 프룬 메시지가 송신되는 주파수는 제한되며, 즉 PIM 프룬 메시지는 동일한 멀티캐스트 플로우가 연속적으로 수신될 때 짧은 시간 내에 반복적으로 송신되지 않을 것이다. PIM 프룬 메시지의 각 전송 간의 디폴트 시간 간격은 1분이다. PIM 프룬 메시지의 전송은, 멀티캐스트 플로우의 브랜치(branch)가 프루닝 오프(prune off)되거나 멀티캐스트 플로우를 위한 새로운 요구가 국부 클라이언트들로부터 수신될 때 중단된다.
블록 204에서, 제1 홉 라우터와 멀티캐스트 소스 간의 계층-2 교환기는 PIM 프룬 메시지를 수신하고, 그 메시지 내의 업스트림 이웃 어드레스가 계층-2 교환기의 PIM 스누핑 기능들에 의해 유지되는 PIM 라우터들의 리스트 내에 존재하지 않는다고 검출될 때, PIM 프룬 메시지가 수신되는 포트를 프룬 포트로서 설정하고, 그 프룬 포트를 경유하여 멀티캐스트를 송신하는 것을 중단한다.
도 2로부터, 다음의 경우에, 멀티캐스트 소스와 제1 홉 PIM 라우터 간의 멀티캐스트 플로우가 프룬 오프(prune off)되는 것을 볼 수 있다:
1. 멀티캐스트 플로우의 수신에 대한 요구가 존재하지 않는 경우.
2. 멀티캐스트 플로우의 수신에 대한 요구가 존재하였지만, 그 순간에 멀티캐스트 플로우의 수신을 중단하자는 요구가 수신된 경우.
도 3 및 도 4는 각각, PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 멀티캐스트 플로우의 이상의 두 가지 유형들의 상세한 처리 과정들을 예시한다.
도 3은 예시에 따라 멀티캐스트 플로우를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다. 도 3에서 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수 있다.
블록 301에서, 제1 홉 PIM 라우터(Rtr)는 제1 홉 PIM 의 각 PIM 포트를 경유하여 PIM 인사 메시지를 주기적으로 송신한다.
블록 302에서, 계층-2 교환기는 PIM 인사 메시지를 수신하고, IGMP 스누핑 기능들을 이용함으로써 그 메시지가 수신된 그 포트를 라우터 포트로 설정하고, 계층-2 교환기의 각 포트를 경유하여 PIM 인사 메시지를 다른 계층-2 교환기로 송신한다.
IGMP 스누핑은 멀티캐스트를 지원하는 계층-2 교환기들 모두의 공통의 특성이다. IGMP 스누핑 기능들을 가진 교환기는, IGMP 일반 질의 메시지 또는 PIM 패킷이 수신되는 포트를 라우터 포트로 간주하고, IGMP 참여 메시지가 수신되는 포트를 멤버쉽 포트로 간주한다. IGMP 스누핑 기능들을 가진 교환기는 수신된 멀티캐스트 플로우들을 모두 라우터 포트로 송신할 수도 있으며, 멀티캐스트 그룹의 멀티캐스트 플로우를 단지 멤버쉽 포트에만 송신한다.
다른 계층-2 교환기들은 또한 PIM 인사 메시지를 수신한 후에 블록 302에서 그 동작들을 수행할 수도 있다.
블록 303에서, 멀티캐스트 소스가 멀티캐스트 플로우를 개시하고, 멀티캐스트 플로우가 각 라우터 포트를 경유하여 제1 홉 PIM 라우터(Rtr)에 송신된다.
블록 304에서, Rtr 은 그 Rtr 이 멀티캐스트 플로우에 대응하는 (S, G) 엔트리를 확립했었는지 여부를 결정하고, 그 엔트리가 확립되었으면 블록 305에서 동작들을 수행하고, 또는 그 엔트리가 확립되지 않았으면 블록 308에서 동작들을 수행한다.
블록 305에서, Rtr은 (S, G) 엔트리 내의 출구 포트들의 리스트가 비어있는지 여부를 결정하고, 그 리스트가 비어 있으면 블록 306에서 동작들을 수행하고, 또는 그 리스트가 비어있지 않으면 블록 307에서 동작들을 수행한다.
블록 306에서, Rtr은 (S, G) 엔트리의 에이징 시간(aging time)을 업데이트하고, 멀티캐스트 플로우가 수신된 그 포트를 경유하여 PIM 프룬 메시지를 송신하고, 그 프로세스는 종결된다.
PIM 프룬 메시지의 업스트림 이웃 어드레스는 멀티캐스트 소스의 IP 어드레스이고, 목적지 IP 어드레스는 멀티캐스트 소스의 IP 어드레스이고, 목적지 MAC 어드레스는 멀티캐스트 소스의 MAC 어드레스이다.
PIM 프룬 메시지가, 포트를 경유하여 멀티캐스트 플로우가 Rtr에 진입하는 그 포트로부터 송신되기 때문에, PIM 프룬 메시지는 멀티캐스트 소스와 Rtr 사이의 계층-2 교환기에 도달할 것이다. 계층-2 교환기는 PIM 프룬 메시지를 수신한 후에 도 5에 도시된 처리 과정들을 수행할 수도 있다.
블록 307에서, Rtr은 출구 포트 리스트에서의 출구 포트 정보에 따라 멀티캐스트 플로우를 외부 디바이스들로 송신하며, 그 프로세스는 종결된다.
블록 308에서, Rtr은 멀티캐스트 플로우를 위한 (S, G) 엔트리를 확립하고, 그 엔트리를 위한 에이징 시간을 구성하며, 멀티캐스트 플로우가 수신되는 포트를 경유하여 외부 디바이스로 PIM 프룬 메시지를 송신한다.
(S, G) 엔트리의 에이징 시간은 일반적으로 3분으로 구성된다.
PIM 프룬 메시지의 업스트림 이웃 어드레스는 멀티캐스트 소스의 IP 어드레스이고, 목적지 IP 어드레스는 멀티캐스트 소스의 IP 어드레스이며, 목적지 MAC 어드레스는 멀티캐스트 소스의 MAC 어드레스이다.
PIM-SM 이 채택되면, 이 블록에서, Rtr이 멀티캐스트 플로우를 위한 소스 등록 메시지를 RP에 추가적으로 송신할 수도 있다.
도 4는 예시에 따라서 다운스트림 PIM 라우터로부터 PIM 프룬 메시지를 수신하거나 제1 홉 PIM 라우터에 연결된 클라이언트로부터 IGMP 리브 메시지를 수신한 후에, PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다. 도 4에서 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수 있다.
블록 401에서, 제1 홉 PIM 라우터(Rtr)는 멀티캐스트 플로우를 위한 다운스트림 PIM 라우터에 의해 송신된 PIM 프룬 메시지, 또는 멀티캐스트 플로우를 위해 Rtr 에 연결된 클라이언트에 의해 송신된 IGMP 리브 메시지를 수신하고, 멀티캐스트 플로우에 대응하는 (S, G) 엔트리를 탐색하고, PIM 프로토콜에 따라 (S, G) 엔트리를 처리한다.
멀티캐스트 수신기가 멀티캐스트 플로우를 수신하는 것을 중지할 때, 멀티캐스트 수신기는 멀티캐스트 수신기의 리프 라우터(leaf router)에 멀티캐스트 플로우를 위한 IGMP 리브 메시지를 송신할 수도 있다. 리프 라우터는 IGMP 리브 메시지를 수신한 후에 멀티캐스트 플로우를 위해 RP 에 PIM 프룬 메시지를 송신한다. RP는 제1 홉 PIM 라우터의 방향으로 PIM 프룬 메시지를 송신한다.
현재 PIM 프로토콜에 따라서, Rtr 은 일반적으로, PIM 프룬 메시지가 수신되는 포트를 (S, G) 엔트리의 출구 포트들의 리스트로부터 삭제한다.
블록 402에서, Rtr은 (S, G) 엔트리의 출구 포트 리스트가 비어있는지 여부를 결정하며, 그 리스트가 비어 있으면 블록 403에서 동작들을 수행하고, 또는 그 리스트가 비어있지 않으면 블록 404에서 동작들을 수행한다.
블록 403에서, Rtr은, 멀티캐스트 플로우가 수신되는 포트를 경유하여 상기 PIM 프룬 메시지를 외부 디바이스로 송신하고, 그 프로세스는 종결된다.
PIM 프룬 메시지의 업스트림 이웃 어드레스는 멀티캐스트 소스의 IP 어드레스이며, 목적지 IP 어드레스는 멀티캐스트 소스의 IP 어드레스이고 목적지 MAC 어드레스는 멀티캐스트 소스의 MAC 어드레스이다.
PIM 프룬 메시지가, 포트를 경유하여 멀티캐스트 플로우가 Rtr 에 진입하는 그 포트로부터 송신되기 때문에, PIM 프룬 메시지는 멀티캐스트 소스와 Rtr 간의 계층-2 교환기에 도달할 것이다. 계층-2 교환기는, PIM 프룬 메시지를 수신한 후에도 5에서 도시된 프로세싱 과정들을 수행할 수도 있다.
블록 404에서, Rtr 은 더 이상 추가 동작들을 수행하지 않는다.
제1 홉 PIM 라우터에 의해 송신된 PIM 프룬 메시지는 멀티캐스트 소스와 제1 홉 PIM 라우터 간의 하나 또는 복수의 계층-2 교환기들에 도달할 것이다. 도 5는 예시에 따라 PIM 프룬 메시지를 수신한 후에 계층-2 교환기에 의해 수행된 프로세스를 예시하는 플로우차트이다. 도 5에 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수도 있다.
블록 501에서, 계층-2 교환기는 멀티캐스트 플로우를 위한 PIM 프룬 메시지를 수신한다.
블록 502에서, 계층-2 교환기는, PIM 프룬 메시지 내의 업스트림 이웃 어드레스가 계층-2 교환기의 PIM 스누핑 기능들에 의해 유지되는 PIM 라우터들의 리스트 내에 존재하는지 여부를 결정하고, 업스트림 이웃 어드레스가 그 리스트 내에 존재하면 블록 503에서 동작들을 수행하고, 업스트림 이웃 어드레스가 그 리스트 내에 존재하지 않으면 블록 504에서 동작들을 수행한다.
블록 503에서, 계층-2 교환기는 현재의 PIM 스누핑 프로토콜에 따라 프로세싱을 수행하고, 그 프로세스는 종결된다.
PIM 프룬 메시지 내의 업스트림 이웃 어드레스가 PIM 스누핑 기능들에 의해 유지된 PIM 라우터들의 리스트 내에 존재하고, 이것이 계층-2 교환이 PIM 라우터들 간에 배치된다는 지시이면, 현재 PIM 스누핑 프로토콜에 따른 프로세싱이 수행된다. 그렇지 않으면, 이것은 계층-2 교환기가 멀티캐스트 소스와 제1 홉 PIM 라우터 간에 배치된다는 표시이고, 따라서 예에 따른 프로세싱이 채택되며, 이것은 블록 504 내지 509 에서의 동작들이다.
블록 504에서, 계층-2 교환기는 계층-2 교환기에서 멀티캐스트 플로우를 위한 PIM 스누핑 엔트리가 존재하는가 여부를 결정하며, PIM 스누핑 엔트리가 존재하면 블록 505에서 동작들을 수행하고, 또는 그러한 PIM 스누핑 엔트리가 존재하지 않으면 블록 506에서 동작들을 수행한다.
블록 505에서, 계층-2 교환기는, PIM 프룬 메시지가 수신되는 포트를 PIM 스누핑 엔트리 내의 다운스트림 출구 포트들의 리스트에 부가하고, 그 포트를 프룬 포트로서 표시하며, 블록 507에서 동작들을 수행한다.
블록 506에서, 계층-2 교환기는 PIM 프룬 메시지에 따라서 PIM 스누핑 테이블 엔트리를 생성한다. PIM 스누핑 엔트리 내의 업스트림 포트는, PIM 프룬 메시지의 목적지 MAC 어드레스에 따라서 유니캐스트 목적지 MAC 테이블 엔트리에서 발견된 출구 포트가 되도록 설정된다. 업스트림 이웃 리스트는 비어있다. PIM 프룬 메시지가 수신되는 포트는 그 엔트리 내의 다운스트림 출구 포트에 부가되며, 프룬 포트로서 표시된다. 업스트림 포트들을 제외한 PIM 이웃 포트들 모두는 PIM 스누핑 테이블 엔트리 내의 다운스트림 출구 포트에 부가된다.
임의의 멀티캐스트 플로우(arbitrary multicast flow)에 관하여, PIM 스누핑 테이블 엔트리가 멀티캐스트 플로우에 대하여 확립되지 않은 경우에, 계층-2 교환기는 디폴트에 위한 업스트림 포트들을 제외하고 PIM 이웃 포트들 모두를 경유하여 멀티캐스트 플로우를 송신한다. 그러므로, 이 블록에서, PIM 스누핑 테이블 엔트리가 멀티캐스트 플로우에 대하여 확립된 후에, 멀티캐스트 플로우가 후속하여 수신된 때 업스트림 포트들을 제외하고 모든 PIM 이웃 포트들에 멀티캐스트 플로우가 송신되는 것을 보장하기 위해서, 업스트림 포트들 및 표시된 프룬 포트들을 제외하고 모든 PIM 이웃 포트들이 PIM 스누핑 테이블 엔트리의 다운스트림 출구 포트 리스트에 부가된다.
블록 507에서, 계층-2 교환기는, 계층-2 교환기 내의 PIM 스누핑 테이블 엔트리들 및 IGMP 스누핑 테이블 엔트리들에 따라서 PIM 프룬 메시지에 대응하는 멀티캐스트 플로우를 송신하는 것이 필수적인지 여부를 결정하며, 즉 그 가장 높은 우선 순위의 역할이 멤버쉽 포트 또는 라우터 포트인 포트를 구비하는 IGMP 스누핑 테이블 엔트리 또는 PIM 스누핑 테이블 엔트리가 존재하는지 여부를 결정하고, 만약 존재하면 블록 508에서 동작들을 수행하고, 만약 존재하지 않으면 블록 509에서 동작들을 수행한다.
블록 508에서, 계층-2 교환기는 PIM 프룬 메시지를 송신하지 않고, 그 프로세스는 종결된다.
블록 509에서, 계층-2 교환기는 PIM 프룬 메시지의 유니캐스트 목적지 MAC 어드레스에 따른 출구 포트를 유니캐스트 목적지 MAC 테이블 엔트리들에서 탐색하고, 그 출구 포트를 경유하여 PIM 프룬 메시지를 송신한다.
PIM 프룬 메시지는 그후 멀티캐스트 소스에 도달한다.
이 예에서, 수명 값(lifetime value)이 PIM 스누핑 테이블 엔트리에서 프룬 포트에 대하여 설정될 수도 있다. 프룬 포트의 수명 값은 PIM 라우터 내의 멀티캐스트 플로우의 (S, G) 엔트리의 수명 값의 1/3, 예컨대 디폴트에 의해 1분이 될 수도 있다. 그러므로, PIM DR 은 매 1분 마다 멀티캐스트 플로우를 수신할 수도 있다. 프룬 포트들의 수명 값이 만료되면, PIM 스누핑 엔트리 내의 모든 프룬 포트들은, 멀티캐스트 플로우를 포트들을 통해 송신되도록 하는 라우터 포트들로서 일시적으로 설정될 수도 있다. 멀티캐스트 플로우를 위한 PIM 프룬 메시지가 프룬 포트의 수명 값이 만료되는 시간으로부터 미리정해진 시간 기간 내에 포트로부터 수신되면, 그 포트는 공식적으로 라우터 포트로서 설정된다. 그 후, PIM 스누핑 테이블 엔트리 내의 다른 프룬 포트들이 존재하는지 여부에 관한 결정이 이루어지고, 엔트리 리소스들을 저장하는 다른 프룬 포트들이 존재하지 않는 경우 PIM 스누핑 테이블 엔트리가 삭제된다. 수명 값이 만료되는 시간으로부터 미리정해진 시간 기간 내에 포트로부터 멀티캐스트 플로우를 위한 임의의 PIM 프룬 메시지가 수신된다면, 그 포트는 프룬 포트로서 설정되며, 그 프룬 포트의 수명 값은 재설정된다.
후속하여, 디바이스가 그 브랜치가 프룬 오프된 멀티캐스트 플로우에 가입하면, 그 멀티캐스트 플로우에 브랜치가 접합(graft)될 수도 있다. 브랜치는 이하의 세 가지 조건들 중 임의의 조건을 만족시키는 멀티캐스트 플로우에 대하여 멀티캐스트 소스와 제1 홉 PIM 라우터 간에 접합되어야 한다:
1. 다운스트림 PIM 라우터에 연결된 클라이언트가 멀티캐스트 플로우에 가입할 때, 그 클라이언트는 다운스트림 PIM 라우터에 IGMP 참여 메시지를 송신할 수도 있으며, 다운스트림 PIM 라우터는 IGMP 참여 메시지를 수신한 후에 PIM 참여 메시지를 제1 홉 PIM 라우터에 송신할 수도 있다.
2. 계층-2 교환기에 연결된 클라이언트가 멀티캐스트 플로우에 가입할 때, 그 클라이언트는 계층-2 교환기에 IGMP 참여 메시지를 송신할 수도 있다.
3. 제1 홉 PIM 라우터에 연결된 클라이언트가 멀티캐스트 플로우에 가입할 때, 그 클라이언트는 제1 홉 PIM 라우터에 IGMP 참여 메시지를 송신할 수도 있다.
멀티캐스트 플로우를 위한 브랜치를 접합하는 것과 연관된 몇몇의 예시적인 프로세싱 과정들이 이하에서 설명될 것이다.
도 6은 예에 따라 다운스트림 PIM 라우터로부터 PIM 참여 메시지를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다. 도 6에 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수도 있다.
블록 601에서, 제1 홉 RIM 라우터(Rtr)는 다운스트림 PIM 라우터로부터 멀티캐스트 플로우를 위한 PIM 참여 메시지를 수신하고, 제1 홉 PIM 라우터에서의 멀티캐스트 플로우에 대응하는 (S, G) 엔트리를 탐색한다.
제1 홉 PIM 라우터의 다운스트림 PIM 라우터가 도 1에 도시된 바와 같이 클라이언트에 연결될 때, PIM 라우터 2는 제1 홉 PIM 라우터이고, PIM 라우터 2는 PIM 라우터 2의 다운스트림 PIM 라우터이고, PIM 라우터 1은 클라이언트 1에 연결된다. 클라이언트가 멀티캐스트 플로우에 가입하면, 그 클라이언트는 멀티캐스트 플로우를 위한 IGMP 참여 메시지를 다운스트림 PIM 라우터에 송신할 수도 있다. IGMP 참여 메시지를 수신한 후에, 다운스트림 PIM 라우터가 멀티캐스트 플로우를 위한 PIM 참여 메시지를 제1 홉 PIM 라우터, 예컨대 PIM 라우터 2에 송신할 수도 있다.
블록 602에서, Rtr은 (S, G) 엔트리 내의 출구 포트들의 리스트가 비어있는지 여부를 결정하고, 그 리스트가 비어 있으면 블록 603에서 동작들을 수행하고, 그 리스트가 비어있지 않으면 블록 604에서 동작들을 수행한다.
블록 603에서, Rtr은, PIM 참여 메시지가 수신되는 포트를 (S, G) 엔트리 내의 출구 포트 리스트에 부가하고, 그 메시지의 목적지 IP 어드레스에 대응하는 엔트리를 유니캐스트 라우팅 테이블에서 탐색하며, 그 유니캐스트 라우팅 테이블 엔트리의 출구 포트를 통해 PIM 참여 메시지를 송신하고, 그 후 그 프로세스가 종결된다.
PIM 참여 메시지의 목적지 IP 어드레스가 멀티캐스트 소스의 IP 어드레스이고, 목적지 MAC 어드레스는 멀티캐스트 소스의 MAC 어드레스가 된다. PIM 참여 메시지는 Rtr 과 멀티캐스트 소스 사이에 하나 이상의 계층-2 교환기들을 통해 멀티캐스트 소스에 송신될 수도 있다. 계층-2 교환기에 의한 PIM 참여 메시지의 프로세싱 과정들은 도 9에 도시된 바와 같을 수도 있다.
PIM 참여 메시지 손실을 피하고 멀티캐스트 플로우를 신속하게 수신하기 위해, Rtr은 멀티캐스트 플로우가 수신될 때까지 높은 주파수로 PIM 참여 메시지를 송신할 수도 있다.
블록 604에서, Rtr은 현재 PIM 프로토콜에 따라 PIM 참여 메시지를 처리한다.
도 7은 예시에 따라 IGMP 메시지를 수신한 후에 계층-2 교환에 의해 수행되는 프로세스를 예시하는 플로우차트이다. 도 5에서 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수도 있다.
블록 701에서, 계층-2 교환기는 멀티캐스트 플로우를 위한 IGMP 참여 메시지를 수신한다.
IGMP 참여 메시지는 계층-2 교환기에 연결된 클라이언트에 의해 개시된다.
블록 702에서, 계층-2 교환기는 멀티캐스트 플로우에 대응하는 IGMP 스누핑 테이블 엔트리를 계층-2 교환기에서 탐색하고, 수신되는 포트를 멤버쉽 포트로서 IGMP 스누핑 테이블 엔트리로 부가하며, 그 메시지가 수신된 그 포트를 제외하고 PIM 스누핑 테이블 엔트리 내의 모든 라우터 포트들, 프룬 포트들, 및 업스트림 이웃들에 IGMP 참여 메시지를 송신한다.
IGMP 참여 메시지는 다른 계층-2 교환기들 및 제1 홉 PIM 라우터에 도달할 수도 있다. 다른 계층-2 교환기에 의한 IGMP 참여 메시지의 프로세싱 과정은 이 예에서와 동일하다. 제1 홉 PIM 라우터에 의한 IGMP 참여 메시지의 프로세싱 과정의 예시는 도 8에서 도시된 바와 같다.
도 8은 예시에 따라 IGMP 참여 메시지를 수신한 후에 PIM-SSM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다. 도 8에 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수도 있다.
블록 801에서, 제1 홉 PIM 라우터(Rtr)는 멀티캐스트 플로우를 위한 IGMP 참여 메시지를 수신한다.
IGMP 참여 메시지는 이하의 두가지 유형의 소스들로부터 개시될 수도 있다.
소스 1: 도 1에 도시된 바와 같이, 제1 홉 PIM 라우터가 클라이언트에 연결되면, PIM 라우터 2는 제1 홉 PIM 라우터이고 클라이언트 2에 연결된다. 클라이언트가 멀티캐스트 플로우에 가입하면, 그 클라이언트는 제1 홉 PIM 라우터에 IGMP 참여 메시지를 송신할 수도 있다.
소스 2: PIM 라우터 2가 제1 홉 PIM 라우터인 도 1에서 도시된 바와 같이, 멀티캐스트 소스와 제1 홉 PIM 라우터 간의 계층-2 교환기는 클라이언트에 연결되고, 여기에서 PIM 라우터 2는 제1 홉 PIM 라우터이며, PIM 라우터 2와 멀티캐스트 소스들(1, 2) 간의 계층-2 교환기는 클라이언트 3에 연결된다. 클라이언트 3이 멀티캐스트 플로우에 가입하면, 클라이언트 3은 계층-2 교환기 1에 IGMP 참여 메시지를 송신할 수도 있다. 계층-2 교환기 1는 제1 홉 PIM 라우터에 IGMP 참여 메시지를 송신할 수도 있다.
블록 802에서, Rtr은 멀티캐스트 플로우에 대응하는 (S, G) 엔트리를 확립했는지 여부를 결정하고, 그 엔트리가 확립되었으면 블록 803에서 동작들을 수행하며, 그 엔트리가 확립되지 않았으면 블록 808에서 동작들을 수행한다.
블록 803에서, Rtr 은 (S, G) 엔트리의 출구 포트 리스트가 비어있는지 여부를 결정하고, 그 리스트가 비어있으면 블록 804에서 동작들을 수행하고, 또는 그 리스트가 비어있지 않으면 블록 807에서 동작들을 수행한다.
블록 804에서, Rtr 은 IGMP 참여 메시지가 멀티캐스트 소스로 연결되는 포트로부터 왔는지 여부를 결정하고, IGMP 참여 메시지가 그 포트로부터 왔다면 블록 805에서 동작들을 수행하고, 또는 IGMP 참여 메시지가 그 포트로부터 오지 않았다면 블록 806에서 동작들을 수행한다.
IGMP 참여 메시지가 멀티캐스트 소스에 연결되는 포트로부터 오고, 즉 IGMP 참여 메시지의 소스가 블록 801에서 소스 2 이며, 따라서 IGMP 참여 메시지를 수신하는 포트를 (S, G) 엔트리의 출구 포트 리스트에 부가할 필요도 없고, PIM 참여 메시지를 송신할 필요도 없다.
블록 805에서, Rtr은 더 이상 프로세싱을 수행하지 않으며, 그 프로세스는 종결된다.
블록 806에서, Rtr은, IGMP 참여 메시지가 수신되는 포트를 (S, G) 엔트리의 출구 포트 리스트로 부가하고, PIM 참여 메시지를 멀티캐스트 소스(S)의 방향으로 멀티캐스트 플로우를 위한 PIM 참여 메시지를 송신하며, 그 프로세스는 종결된다.
PIM 참여 메시지의 목적지 IP 어드레스는 멀티캐스트 소스의 IP 어드레스이고, 목적지 MAC 어드레스는 멀티캐스트 소스의 MAC 어드레스이다. PIM 참여 메시지는 Rtr 과 멀티캐스트 소스 간의 계층-2 교환기를 통해 멀티캐스트 소스에 송신될 수 있다. 계층-2 교환기에 의한 PIM 참여 메시지의 프로세싱 과정은 도 9에 도시된 바와 같다.
PIM 참여 메시지 손실을 피하고 멀티캐스트 플로우를 신속하게 수신하기 위하여, Rtr 은 멀티캐스트 플로우가 수신될 때까지 높은 주파수에서 PIM 참여 메시지를 송신할 수도 있다.
블록 807에서, Rtr 은 현재 PIM 프로토콜에 따라 프로세싱을 수행하고, 그 프로세스는 종결된다.
현재 PIM 프로토콜에 따라, Rtr 은, IGMP 참여 메시지가 수신되는 포트를 (S, G) 엔트리의 출구 포트 리스트로 부가할 수도 있다.
블록 808에서, Rtr 은 현재 PIM 프로토콜에 따라 프로세싱을 수행한다.
현재 PIM 프로토콜에 따라서, Rtr 은 멀티캐스트 플로우에 대응하는 (S, G) 엔트리를 확립할 수도 있으며, (S, G) 엔트리의 출구 포트 리스트로 IGMP 참여 메시지를 수신하는 포트를 부가할 수도 있다.
도 9는 예시에 따라 PIM 참여 메시지를 수신한 후에 계층-2 교환기에 의해 수행되는 프로세스를 예시하는 플로우차트이다. 도 9에서 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수도 있다.
블록 901에서, 계층-2 교환기가 멀티캐스트 플로우를 위한 PIM 참여 메시지를 수신한다.
블록 902에서, 계층-2 교환기는 PIM 참여 메시지에서의 업스트림 이웃 어드레스가 계층-2 교환기의 PIM 스누핑 기능들에 의해 유지되는 PIM 라우터들의 리스트에 존재하는지 여부를 결정하고, 업스트림 이웃 어드레스가 리스트 내에 존재한다면 블록 903에서 동작들을 수행하고, 또는 업스트림 이웃 어드레스가 리스트 내에 존재하지 않는다면 블록 904에서 동작들을 수행한다.
블록 903에서, 계층-2 교환기는 현재 PIM 스누핑 프로토콜에 따라 프로세싱을 수행하고, 그후 그 프로세싱은 종결된다.
블록 904에서, 계층-2 교환기는 계층-2 교환기에 멀티캐스트 플로우를 위한 PIM 스누핑 테이블 엔트리가 존재하는지 여부를 결정하고, PIM 스누핑 테이블 엔트리가 존재하면 블록 905에서 동작들을 수행하고, 또는 그러한 PIM 스누핑 테이블 엔트리가 존재하지 않으면 블록 906에서 동작들을 수행한다.
블록 905에서, 계층-2 교환기가, PIM 참여 메시지가 수신되는 포트가 PIM 스누핑 테이블 엔트리에서의 프룬 포트인지 여부를 결정하고, 그 포트가 프룬 포트이면 블록 907에서 동작들을 수행하고, 또는 그 포트가 프룬 포트가 아니면 블록 906에서 동작들을 수행한다.
블록 906에서, 계층-2 교환기는 추가의 프로세싱을 더 수행하지 않으며, 그 프로세스 종결된다.
블록 907에서, 계층-2 교환기는 국부 PIM 스누핑 테이블 엔트리들 및 IGM{P 스누핑 테이블 엔트리들에 따라서 PIM 참여 메시지를 수신하는 포트를 제어하고 멀티캐스트 플로우를 송신할 필요가 있는 다른 포트가 존재하는지 여부를 결정하며, 그러한 포트가 존재하면 블록 908에서 동작들을 수행하고, 또는 그러한 포트가 존재하지 않으면 블록 909에서 동작들을 수행한다.
블록 908에서, 계층-2 교환기가 PIM 참여 메시지를 송신하지 않고, 블록 910 에서 동작들을 수행한다.
블록 909에서, 계층-2 교환기는 PIM 참여 메시지의 목적지 IP 어드레스에 따라 엔트리를 유니캐스트 라우팅 테이블에서 탐색하고, 그 유니캐스트 라우팅 테이블 엔트리의 출구 포트들을 경유하여 PIM 참여 메시지를 송신하고, 블록 910에서 동작들을 수행한다.
블록 910에서, 계층-2 교환기는 PIM 스누핑 테이블 엔트리의 다운스트림 출구 포트 리스트로부터 PIM 참여 메시지의 수신 포트를 프룬 포트로서 라벨링하는 마크를 삭제하고, PIM 참여 메시지의 수신 포트를 라우터 포트로서 설정하고, 그 포트를 경유하여 멀티캐스트 플로우를 송신한다.
블록 911에서, 계층-2 교환기는 PIM 스누핑 테이블 엔트리의 다운스트림 출구 포트 리스트가 프룬 포트를 포함하고 업스트림 이웃 리스트가 비어있는지 여부를 판단하고, PIM 스누핑 테이블 엔트리의 다운스트림 출구 포트 리스트가 프룬 포트를 포함하지 않고 그 업스트림 이웃 리스트가 비어 있으면 블록 912에서 동작들을 수행하고; 그렇지 않으면, 블록 913에서 동작들을 수행한다.
블록 912에서, 계층-2 교환기는 테이블 엔트리 리소스들을 절감하기 위해 PIM 스누핑 테이블 엔트리를 삭제하고, 그 프로세스가 종결된다.
블록 913에서, 계층-2 교환기는 더 이상의 프로세싱을 수행하지 않는다.
도 10은 예시에 따라 멀티캐스트 플로우를 수신한 후에 PIM-SM 을 채택하는 제1 홉 PIM 라우터에 의해 수행되는 프로세스를 예시하는 플로우차트이다. 도 10에 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수도 있다.
블록 1001에서, 제1 홉 PIM 라우터(Rtr)는 제1 홉 PIM 의 각 PIM 포트를 경유하여 PIM 인사 메시지를 주기적으로 송신한다.
블록 1002에서, 계층-2 교환기는 PIM 인사 메시지를 수신하고, IGMP 스누핑 기능들을 이용하여, 그 메시지가 수신되는 포트를 라우터 포트로 설정하고, 계층-2 교환기의 각 포트를 경유하여 다른 계층-2 교환기들로 PIM 인사 메시지를 송신한다.
다른 계층-2 교환기들은 또한 PIM 인사 메시지를 수신한 후에 블록 1002에서 동작들을 수행할 수도 있다.
블록 1003에서, 멀티캐스트 소스는 멀티캐스트 플로우를 개시하고, 멀티캐스트 플로우는 각 라우터 포트를 경유하여 제1 홉 PIM Rtr에 송신된다.
블록 1004에서, Rtr은, 그 Rtr이 멀티캐스트 플로우에 대응하는 (S, G) 엔트리를 확립하였는가 여부를 판단하고, 그 엔트리가 확립되었을 때 블록 1005에서 동작들을 수행하고, 또는 그 엔트리가 확립되지 않았을 때 블록 1008에서 동작들을 수행한다.
블록 1005에서, Rtr은, (S, G) 엔트리의 출구 포트 리스트가 비어있는지 여부를 판단하고, 그 리스트가 비어 있으면 블록 1006에서 동작들을 수행하고, 또는 그 리스트가 비어있지 않으면 블록 1007에서 동작들을 수행한다.
블록 1006에서, Rtr은 (S, G) 엔트리의 에이징 시간을 업데이트하고, 멀티캐스트 플로우가 수신되는 포트를 경유하여 PIM 프룬 메시지를 송신하며, 그 프로세스는 종결된다.
PIM 프룬 메시지의 업스트림 이웃 어드레스는 멀티캐스트 소스의 IP 어드레스이고, 목적지 IP 어드레스는 멀티캐스트 소스의 IP 어드레스이며, 목적지 MAC 어드레스는 멀티캐스트 소스의 MAC 어드레스이다.
PIM 프룬 메시지가, 포트를 경유하여 멀티캐스트 플로우가 Rtr에 진입하는 그 포트로부터 송신되기 때문에, PIM 프룬 메시지는 멀티캐스트 소스와 Rtr 간의 계층-2 교환기에 도달할 것이다. 계층-2 교환기는 PIM 프룬 메시지를 수신한 후에 도 5에서 도시된 프로세싱 과정을 수행할 수도 있다.
블록 1007에서, Rtr은 출구 포트 리스트에서의 출구 포트 정보에 따라서 외부 디바이스들에 멀티캐스트 플로우를 송신하고, 그 프로세스는 종결된다.
블록 1008에서, Rtr은 멀티캐스트 플로우에 대응하는 (S, G) 엔트리를 확립하고, (S, G) 엔트리를 위한 에이징 시간을 설정한다.
(S, G) 엔트리의 에이징 시간은 일반적으로 3분으로 구성된다.
블록 1009에서, Rtr 은 그 Rtr이 DR 인지 여부를 결정하고, 그 Rtr이 DR이면 블록 1011에서 동작들을 수행하고, 또는 그 Rtr이 DR 이 아니면 블록 1010에서 동작들을 수행한다.
블록 1010에서, Rtr은 더 이상의 프로세싱을 수행하지 않으며, 그 프로세스는 종결된다.
블록 1011에서, Rtr은 멀티캐스트 플로우를 위한 소스 등록 메시지를 RP 에 송신한다.
블록 1012에서, Rtr은 RP에 의해 복귀된 멀티캐스트 플로우를 위한 소스 등록 중단 메시지를 수신하고, 멀티캐스트 플로우에 대응하는 (S, G) 엔트리의 출구 포트 리스트가 비어 있는지 여부를 결정하며, 그 리스트가 비어 있으면 블록 1013에서 동작들을 수행하며, 또는 그 리스트가 비어있지 않으면 블록 1014에서 동작들을 수행한다.
멀티캐스트 플로우를 위한 소스 등록 메시지를 수신한 후에, RP는 먼저, 멀티캐스트 플로우의 수신기가 존재한다고 결정될 때 Rtr 에 멀티캐스트 플로우를 위한 PIM 참여 메시지를 복귀시킬 수도 있으며, 멀티캐스트 플로우를 위한 소스 등록 중단 메시지를 Rtr에 송신한다. PIM 참여 메시지를 수신한 후에 Rtr은, 그 메시지가 수신되는 포트를 멀티캐스트 플로우에 대응하는 (S, G) 엔트리의 출구 포트 리스트로 부가한다. 그 RP 는 멀티캐스트 플로우를 위한 소스 등록 중단 메시지를 Rtr로 직접적으로 복귀시킬 수도 있다.
블록 1013에서, Rtr은, 멀티캐스트 플로우가 수신되는 포트를 경유하여 외부 디바이스들로 PIM 프룬 메시지를 송신하고, 그 프로세스는 종결된다.
PIM 프룬 메시지의 업스트림 이웃 어드레스는 멀티캐스트 소스의 IP 어드레스이며, 목적지 IP 어드레스는 멀티캐스트 소스의 IP 어드레스이고, 목적지 MAC 어드레스는 멀티캐스트 소스의 MAC 어드레스이다.
PIM 프룬 메시지가, 포트를 경유하여 멀티캐스트 플로우가 Rtr에 진입하는 그 포트로부터 송신되기 때문에, PIM 프룬 메시지는 멀티캐스트 소스와 Rtr 간의 하나 또는 복수의 계층-2 교환기들에 도달할 것이다. 계층-2 교환기는 PIM 프룬 메시지를 수신한 후에 도 5에 도시된 프로세싱 과정들을 수행할 수도 있다.
블록 1014에서, Rtr 는 출구 포트 리스트에서의 출구 포트 정보에 따라서 외부 디바이스들에 멀티캐스트 플로우를 송신한다.
제1 홉 PIM 라우터가 양 방향 PIM을 채택하고 DR 이 아니면, 제1 홉 PIM 라우터의 멀티캐스트 플로우의 프로세싱 과정들은, 멀티캐스트 플로우를 수신한 때 PIM-SM을 채택하고 DR 이 아닌 제1 홉 PIM 라우터의 프로세싱 과정들과 동일하다.
게다가, 제1 홉 PIM 라우터는 PIM-SM 또는 양방향 PIM을 채택하고, 제1 홉 PIM 라우터는, 제1 홉 PIM 라우터가 비-DR 로부터 DR이 될 때, 제1 홉 PIM 라우터에서 확립된 각 (S, G) 엔트리를 위한 멀티캐스트 소스의 방향으로 PIM 참여 메시지를 송신할 수도 있다.
PIM-SM을 채택하는 제1 홉 PIM 라우터가 다운스트림 PIM 라우터로부터 PIM 프룬 메시지를 수신하거나 제1 홉 PIM 라우터에 연결된 클라이언트로부터의 IGMP 리브 메시지를 수신한 후, 제1 홉 PIM 라우터의 프로세싱 과정들은 도 4에서 도시된 예시에서와 같이 PIM-SM 을 채택하는 제1 홉 PIM 라우터의 프로세싱 과정과 동일하다.
PIM-SM 을 채택하는 제1 홉 PIM 라우터가 다운스트림 PIM 라우터로부터 PIM 참여 메시지를 수신한 후에, 제1 홉 PIM 라우터의 프로세싱 과정들은 도 6에서 도시된 예시에서와 같이 PIM-SM을 채택하는 제1 홉 PIM 라우터의 프로세싱 과정과 동일하다.
PIM-SM 을 채택한 제1 홉 PIM 라우터가 다운스트림 PIM 라우터로부터 IGMP 참여 메시지를 수신한 후, 제1 홉 PIM 라우터의 프로세싱 과정들은 도 8에서 도시된 예시에서와 같이, PIM-SSM 을 채택한 제1 홉 PIM의 프로세싱 과정과 동일하다.
도 11은 예시에 따라 멀티캐스트 플로우를 수신한 후에 PIM-DM 을 채택하는 제1 홉 PIM라우터에 의해 수행된 프로세스를 예시하는 플로우차트이다. 도 11에 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수도 있다.
블록 1101에서, 제1 홉 PIM 라우터(Rtr)는 제1 홉 PIM의 각 PIM 포트를 경유하여 PIM 인사 메시지를 주기적으로 송신한다.
블록 1102에서, 계층-2 교환기는 PIM 인사 메시지를 수신하며, IGMP 스누핑 기능들을 이용함으로써 그 메시지가 수신되는 포트를 라우터 포트로 설정하고, 계층-2 교환기의 각 포트를 경유하여 PIM 인사 메시지를 다른 계층-2 교환기들로 송신한다.
다른 계층-2 교환기들은 또한 PIM 인사 메시지를 수신한 후에 블록 1102에서 그 동작들을 수행할 수도 있다.
블록 1103에서, 멀티캐스트 소스는 멀티캐스트 플로우를 송신하고, 멀티캐스트 플로우는 각 라우터 포트를 경유하여 제1 홉 PIM Rtr에 송신된다.
블록 1014에서, Rtr 은, 그 Rtr이 멀티캐스트 플로우에 대응하는 (S, G) 엔트리를 확립하였는지 여부를 판단하고, 그 엔트리가 확립되었다면 블록 1105에서 동작들을 수행하고, 또는 그 엔트리가 확립되지 않았다면 블록 1106에서 동작들을 수행한다.
블록 1105에서, Rtr 은 (S, G) 엔트리의 에이징 시간을 업데이트하고, 블록 1107에서의 동작들이 수행된다.
블록 1106에서, Rtr 은 멀티캐스트 플로우를 위한 (S, G) 엔트리를 확립하고, (S, G) 엔트리를 위한 에이징 시간을 설정하며, Rtr 의 모든 다운스트림 PIM 이웃들에 멀티캐스트 플로우를 송신하고; 다운스트림 PIM 이웃에 의해 복귀된 PIM 프룬 메시지를 수신한 후에, PIM 프룬 메시지가 수신되는 포트를 프룬 포트로서 (S, G) 포트 내의 출구 포트 리스트로 부가하며; 다운스트림 PIM 이웃으로부터 PIM 접합 메시지를 수신한 후에, PIM 접합 메시지가 수신되는 포트를 송신 포트로서 (S, G) 엔트리 내의 출구 포트 리스트로 부가한다. 이상의 동작들은, 다운스트림 PIM 이웃들에 연결된 포트들 모두가 (S, G) 엔트리에 부가될 때까지 수행된다.
(S, G) 엔트리의 에이징 시간은 일반적으로 3분으로 구성된다.
블록 1107에서, Rtr 은 (S, G) 엔트리 내의 모든 출구 포트들이 프룬 포트들인지 여부를 판단하고, 모든 출구 포트들이 프룬 포트들이면 블록 1108에서 동작들을 수행하고, 또는 모든 출구 포트들이 프룬 포트들이 아니면 블록 1109에서 동작들을 수행한다.
블록 1108에서, Rtr은, 멀티캐스트 플로우가 수신되는 포트를 경유하여 외부 디바이스들에 PIM 프룬 메시지를 송신하고, 그 프로세스는 종결된다.
PIM 프룬 메시지의 업스트림 이웃 어드레스는 멀티캐스트 소스의 IP 어드레스이며, 목적지 IP 어드레스는 멀티캐스트 소스의 IP 어드레스이며, 목적지 MAC 어드레스는 멀티캐스트 소스의 MAC 어드레스이다.
PIM 프룬 메시지가, 포트를 경유하여 멀티캐스트 플로우가 Rtr 에 진입한 그 포트로부터 송신되기 때문에, PIM 프룬 메시지는 멀티캐스트 소스와 Rtr 사이의 하나 또는 복수의 계층-2 교환기들에 도달할 것이다. 계층-2 교환기는 PIM 프룬 메시지가 수신된 후에 도 5에 도시된 프로세싱 과정들을 수행할 수도 있다.
블록 1109에서, Rtr은 (S, G) 엔트리의 각 송신 출구 포트를 경유하여 멀티캐스트 플로우를 송신한다.
도 12는 예시에 따라 PIM 이웃으로부터 PIM 접합 메시지를 수신한 후에 PIM-DM 을 채택하는 제1 홉 PIM 라우터에 의해 수행된 프로세스를 예시하는 플로우차트이다. 도 12에 도시된 바와 같이, 그 프로세스는 이하의 동작들을 포함할 수도 있다.
블록 1201에서, Rtr은 PIM 이웃으로부터 멀티캐스트 플로우를 위한 PIM 접합 메시지를 수신하고, 멀티캐스트 플로우에 대응하는 (S, G) 엔트리를 그 Rtr에서 탐색한다.
블록 1202에서, Rtr 은 (S, G) 엔트리 내의 출구 포트들의 리스트가 비어있는지 여부를 판단하고, 그 리스트가 비어 있으면 블록 1203에서 동작들을 수행하고, 또는 그 리스트가 비어있지 않으면 블록 1204에서 동작들을 수행한다.
블록 1203에서, Rtr은 PIM 접합 메시지가 수신되는 포트를 (S, G) 엔트리의 출구 포트 리스트로 부가하고, 그 메시지의 목적지 IP 어드레스에 대응하는 엔트리를 유니캐스트 라우팅 테이블에서 탐색하며, 유니캐스트 라우팅 테이블 엔트리에서 출구 포트를 통해 PIM 참여 메시지를 송신하고, 그 프로세스는 종결된다.
PIM 참여 메시지의 목적지 IP 어드레스는 멀티캐스트 소스의 IP 어드레스이고, 목적지 MAC 어드레스는 멀티캐스트 소스의 MAC 어드레스이다. PIM 참여 메시지는 Rtr 과 멀티캐스트 소스 간의 계층-2 교환기들을 통해 멀티캐스트 소스에 송신될 수도 있다. 계층-2 교환기에 의한 PIM 참여 메시지의 프로세싱 과정들은 도 9에서 도시된 바와 같을 수 있다.
PIM 참여 메시지 손실을 피하고 멀티캐스트 플로우를 신속하게 수신하기 위해, 멀티캐스트 플로우가 수신될 때까지 Rtr가 높은 주파수에서 PIM 참여 메시지를 송신할 수도 있다.
블록 1204에서, Rtr 은 현재 PIM 프로토콜에 따라서 PIM 접합 메시지를 처리한다.
*PIM-DM 을 채택하는 제1 홉 PIM 라우터가 다운스트림 PIM 라우터로부터 PIM 프룬 메시지를 수신하거나 제1 홉 PIM 라우터에 대응하는 클라이언트로부터 IGMP 리브 메시지를 수신한 후에, 제1 홉 PIM 라우터의 프로세싱 과정들은 도 4에 도시된 예시들과 같이, PIM-SSM 을 채택하는 제1 홉 PIM 라우터의 프로세싱 과정과 동일하다.
PIM-DM 을 채택하는 제1 홉 PIM 라우터가 다운스트림 PIM 라우터로부터 IGMP 참여 메시지를 송신한 후에, 제1 홉 PIM 라우터의 프로세싱 과정들은 도 8에서 도시된 예시에서와 같이 PIM-SSM 을 채택하는 제1 홉 PIM 라우터의 프로세싱 과정들과 동일하다.
도 13은 예시에서 제공되는 PIM 라우터의 구조를 예시하는 개략도이다. PIM 라우터는 제1 홉 PIM 라우터이고, PIM 스누핑 기능들을 구비하는 계층-2 교환기를 경유하여 멀티캐스트 소스에 연결된다. 도 13에 도시된 바와 같이, PIM 라우터는: 제1 모듈 및 제2 모듈을 포함할 수도 있다.
제1 모듈은 멀티캐스트 소스로부터 개시된 멀티캐스트 플로우를 수신하고, 멀티캐스트 플로우를 위해 다운스트림 PIM 라우터로부터 PIM 프룬 메시지를 수신한 후 또는 PIM 라우터에 연결된 클라이언트로부터 멀티캐스트 그룹 리브 메시지를 수신한 후에, PIM 프룬 메시지 또는 멀티캐스트 그룹 리브 메시지가 수신되는 포트를 멀티캐스트 플로우의 출구 포트 리스트로부터 삭제하고, 멀티캐스트 플로우가 수신될지 여부를 결정하고, 멀티캐스트 플로우가 수신되지 않아야 한다는 결정에 응답하여 제2 모듈에 프룬 지시(prune indication)를 송신할 것이다.
멀티캐스트 그룹 리브 메시지(multicast group leave message)는 IGMP 리브 메시지(IGMP leave message) 또는 MLD 리브 메시지(MLD leave message)이다.
제2 모듈은 프룬 지시를 수신하고, 멀티캐스트 플로우가 수신되는 포트를 경유하여 PIM 프룬 메시지를 송신할 것이다.
PIM 라우터가 PIM-SSM 을 채택하거나, DR 이 아니고 PIM-SM 을 채택하면, 제1 모듈은 이하의 서브 모듈들을 포함할 수도 있다.
제1 서브 모듈은 멀티캐스트 플로우를 수신하고, 멀티캐스트 플로우의 정보를 제1 서브 모듈에 송신한다.
제2 서브 모듈은, 멀티캐스트 플로우의 정보를 제1 서브 모듈로부터 송신하고, 멀티캐스트 플로우가 수신되지 않아야 한다고 결정하고, 멀티캐스트 라우팅 테이블 엔트리가 PIM 라우터에서 멀티캐스트 플로우에 대해 확립되지 않았다는 결정이 이루어지거나 멀티캐스트 라우팅 테이블 엔트리가 멀티캐스트 플로우에 대하여 확립되었지만 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트가 비어 있다는 결정이 이루어 질 때, 프룬 지시를 제2 모듈에 송신할 것이다.
PIM 라우터가 PIM-SM 을 채택하고 DR 인 경우, 제1 모듈은 이하의 서브 모듈들을 포함할 수도 있다.
제1 서브 모듈은 멀티캐스트 플로우를 수신하고, 멀티캐스트 플로우의 정보를 제2 서브 모듈에 송신할 것이다.
제2 서브 모듈은, 제1 서브 모듈로부터 멀티캐스트 플로우의 정보를 수신하고, 멀티캐스트 플로우가 수신되지 않아야 한다고 결정하고, 멀티캐스트 라우팅 테이블 엔트리가 멀티캐스트 플로우에 대하여 확립되었지만 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트가 비어있다는 결정이 이루어 질 때, 프룬 지시를 제2 모듈에 송신하고; 또는 멀티캐스트 플로우를 위한 멀티캐스트 라우팅 테이블 엔트리를 확립하고, 멀티캐스트 라우팅 테이블 엔트리가 멀티캐스트 플로우에 대하여 확립되지 않았다는 결정이 이루어질 때 RP에 소스 등록 메시지를 송신하며, 멀티캐스트 플로우가 수신되지 않아야 한다고 결정하고, RP 로부터 소스 등록 중단 메시지를 수신하고 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트가 비어 있다는 결정을 한 후, 상기 프룬 지시를 제2 모듈에 송신할 것이다.
PIM 라우터가 PIM-DM 을 채택할 때, 제1 모듈은 이하의 서브 모듈들을 포함할 수도 있다.
제1 서브 모듈은 멀티캐스트 플로우를 수신하고 멀티캐스트 플로우의 정보를 제2 서브 모듈에 송신할 것이다.
제2 서브 모듈은 제1 서브 모듈로부터 멀티캐스트 플로우의 정보를 수신하고, 멀티캐스트 플로우가 수신되지 않아야 한다고 결정하고, 멀티캐스트 라우팅 테이블 엔트리가 멀티캐스트 플로우에 대하여 확립되었지만 멀티캐스트 라우팅 테이블 엔트리 내의 모든 출구 포트들이 프룬 포트들이라고 결정되었을 때, 프룬 지시를 제2 모듈에 송신하고; 또는, 멀티캐스트 플로우를 위한 멀티캐스트 라우팅 테이블 엔트리를 확립하고, 멀티캐스트 라우팅 테이블 엔트리가 멀티캐스트 플로우에 대하여 확립되지 않았다는 결정이 이루어질 때, 모든 다운스트림 PIM 이웃들에 멀티캐스트 플로우를 송신하고; 다운스트림 PIM 이웃으로부터 PIM 프룬 메시지를 수신하고, PIM 접합 메시지가 수신되는 포트를 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트에 프룬 포트로서 부가하고; 다운스트림 PIM 이웃으로부터 PIM 접합 메시지를 수신하고, PIM 접합 메시지가 수신되는 포트를 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트에 송신포트로서 부가하며; 멀티캐스트 플로우가 수신되지 않아야 한다고 결정하고, 다운스트림 PIM 이웃들에 연결된 모든 포트들이 멀티캐스트 라우팅 테이블 리스트의 출구 포트 리스트에 부가되었고 멀티캐스트 라우팅 테이블 엔트리 내의 모든 출구 포트들이 프룬 포트들이라고 결정한 후에, 프룬 지시를 제2 모듈에 송신할 것이다.
실제로, PIM 라우터가 PIM-SM 또는 PIM-SSM 을 채택할 때, 제1 모듈은 또한: 다운스트림 PIM 라우터로부터 멀티캐스트 플로우를 위한 PIM 참여 메시지를 수신하거나 PIM 라우터에 연결된 클라이언트로부터 멀티캐스트 그룹 참여 메시지를 수신하고, 멀티캐스트 소스의 방향으로 PIM 참여 메시지를 송신하는, 제3 모듈을 포함할 수도 있다.
제3 모듈은 추가적으로, 다운스트립 PIM 라우터로부터 멀티캐스트 플로우를 위한 PIM 참여 메시지를 수신한 후에, 멀티캐스트 플로우에 대응하는 멀티캐스트 라우팅 테이블 엔트리가 PIM 라우터에 확립되었는지 여부를 결정하고, PIM 참여 메시지가 수신되는 포트를 멀티캐스트 라우팅 테이블 엔트리의 출구 포트에 부가하고, 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트가 비어있다는 결정이 이루어 질 때 PIM 참여 메시지를 멀티캐스트 소스의 방향으로 송신할 것이다.
실제로, PIM 라우터가 PIM-SM 또는 PIM-SSM 또는 PIM-DM 을 채택할 때, PIM 라우터는 또한: PIM 라우터에 연결된 클라이언트로부터 멀티캐스트 플로우를 위한 멀티캐스트 그룹 참여 메시지를 수신하고, 멀티캐스트 소스의 방향으로 PIM 참여 메시지를 송신하는, 제4 모듈을 포함할 수도 있다.
제4 모듈은 추가적으로, PIM 라우터에 연결된 클라이언트로부터 멀티캐스트 플로우를 위한 멀티캐스트 그룹 참여 메시지를 수신한 후에, 멀티캐스트 플로우에 대응하는 멀티캐스트 라우팅 테이블 엔트리가 PIM 라우터에서 확립되었는지 여부를 결정하고, 멀티캐스트 그룹 참여 메시지가 수신되는 포트를 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트에 부가하고, 멀티캐스트 라우팅 테이블 엔트리가 확립되었고 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트가 비어있다는 결정이 이루어질 때, 멀티캐스트 소스의 방향으로 PIM 참여 메시지를 송신할 것이다.
PIM 라우터가 PIM-SM 이고 DR 이 아니거나, 또는 양방향 PIM 이고 DR 이 아니면, PIM 라우터는 또한: PIM 라우터가 DR 이 아니었고 DR 이 되는 경우, 각 멀티캐스트 플로우에 대하여 확립된 멀티캐스트 라우팅 테이블 엔트리를 위해, 멀티캐스트 소스의 방향으로 멀티캐스트 플로우를 위한 PIM 참여 메시지를 송신하는, 제5 모듈을 포함할 수도 있다.
PIM 라우터가 PIM-DM 을 채택할 때, PIM 라우터는 또한: 다운스트림 PIM 이웃으로부터 멀티캐스트 플로우를 위한 PIM 접합 메시지를 수신하고, 멀티캐스트 소스의 방향으로 PIM 참여 메시지를 송신하는, 제6 모듈을 포함할 수도 있다.
제6 모듈은 추가적으로, 다운스트림 PIM 이웃으로부터 멀티캐스트 플로우를 위한 PIM 접합 메시지를 수신한 후에 PIM 라우터에 멀티캐스트 플로우에 대응하는 멀티캐스트 라우팅 테이블 엔트리가 확립되었는지 여부를 판단하고, PIM 접합 메시지가 수신되는 포트를 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트에 부가하고, 멀티캐스트 라우팅 테이블 엔트리가 확립되었고 멀티캐스트 라우팅 테이블 엔트리의 출구 포트 리스트가 비어 있다고 결정되면 멀티캐스트 소스의 방향으로 PIM 참여 메시지를 송신할 것이다.
이하는 예시에 따라 PIM 스누핑 기능들을 가진 교환기의 구조의 설명이다. 교환기는 멀티캐스트 소스와 제1 홉 PIM 라우터 사이에 배치된다. 교환기는 주로 제1 모듈, 제2 모듈, 및 제3 모듈을 포함할 수도 있다.
제1 모듈은 멀티캐스트 플로우를 위한 PIM 프룬 메시지를 수신하고, PIM 프룬 메시지가 수신되는 포트를 멀티캐스트 플로우에 대응하는 PIM 스누핑 엔트리에 프룬 포트로서 부가하고, 그 메시지 내의 업스트림 이웃 어드레스가, 교환기의 PIM 스누핑 기능들에 의해 유지되는 PIM 라우터들의 리스트에 존재하지 않는다는 결정이 이루어 지면, 프룬 포트를 경유하여 멀티캐스트 플로우를 송신하는 것을 중단할 것이다.
제1 모듈은 추가적으로 프룬 포트를 위한 프룬 시간(prune time)을 설정할 수도 있으며, 프룬 시간이 만료된 때 프룬 포트를 경유하여 멀티캐스트 플로우를 송신하기 시작할 수도 있다.
제1 모듈은 추가적으로, 제1 홉 PIM 라우터의 PIM 프룬 메시지에 대응하는 멀티캐스트 플로우의 멀티캐스트 라우팅 테이블 엔트리의 수명 값보다 더 작은 수명 값을 설정할 수도 있으며; 프룬 포트의 수명 값이 만료된 때 그 프룬 포트를 일시적인 라우터 포트로서 설정하고, 멀티캐스트 플로우를 위한 PIM 프룬 메시지가 미리정해진 기간의 시간 내에 수신되지 않는다면 그 일시적인 라우터 포트를 라우터 포트로서 설정하고, 또는 멀티캐스트 플로우를 위한 PIM 프룬 메시지가 수신되면 그 일시적인 라우터 포트를 프룬 포트로 설정하고 그 프룬 포트의 수명 값을 재설정한다.
PIM 프룬 메시지 내의 업스트림 이웃 어드레스가 교환기의 PIM 스누핑 기능들을 사용하여 유지되는 PIM 라우터들의 리스트 내에 존재하지 않는다고 결정된 후에, 제1 모듈은, PIM 스누핑 엔트리가 교환기의 멀티캐스트 플로우에 대하여 확립되지 않았다고 결정된 때 멀티캐스트 플로우를 위한 PIM 스누핑 엔트리를 추가적으로 확립할 수도 있으며, 빈 리스트를 PIM 스누핑 엔트리의 업스트림 이웃 리스트로서 설정하고, 교환기의 업스트림 포트들을 제외한 모든 PIM 이웃 포트들을 PIM 스누핑 엔트리 내의 출구 포트 리스트에 부가하고, 멀티캐스트 플로우의 PIM 스누핑 엔트리로 그 프룬 포트를 부가하며, 멀티캐스트 플로우가 교환기 내의 멀티캐스트 그룹 관리 엔트리들 및 PIM 스누핑 엔트리들에 기초하여 송신되어야 할지 여부를 결정하고, 멀티캐스트 플로우가 송신되어야 하면 PIM 프룬 메시지를 송신하지 않고, 또는 멀티캐스트 플로우가 송신되어야 하지 않으면 멀티캐스트 소스의 방향으로 PIM 프룬 메시지를 송신할 수도 있다.
그 메시지의 업스트림 이웃 어드레스가 PIM 스누핑 기능들에 의해 유지된 PIM 라우터들의 리스트 내에 존재하지 않는다고 결정된 후에, 제1 모듈은, PIM 스누핑 엔트리가 멀티캐스트 플로우에 대하여 확립되었다고 결정되면 멀티캐스트 플로우의 PIM 스누핑 엔트리로 프룬 포트를 직접적으로 부가할 수도 있으며; 교환기 내의 멀티캐스트 그룹 관리 엔트리들 및 PIM 스누핑 엔트리들에 기초하여 멀티캐스트 플로우가 송신되어야 할지 여부를 결정하고, 멀티캐스트 플로우가 송신되어야 한다면 PIM 프룬 메시지를 송신하지 않고, 또는 멀티캐스트 플로우가 송신되지 않아야 한다면 멀티캐스트 소스의 방향으로 PIM 프룬 메시지를 송신할 수도 있다.
계층-2 교환기가 IGMP 를 채택하면, 멀티캐스트 그룹 스누핑 엔트리는 IGMP 스누핑 엔트리이다. 계층-2 교환기가 MLD 를 채택하면, 멀티캐스트 그룹 스누핑 엔트리는 MLD 스누핑 엔트리이다.
제2 모듈은 멀티캐스트 플로우를 위한 PIM 참여 메시지를 수신할 것이다. 그 메시지 내의 업스트림 이웃 어드레스가 교환기의 PIM 스누핑 기능들에 의해 유지되는 PIM 라우터들의 리스트 내에 존재한다는 결정이 이루어지면, PIM 참여 메시지가 수신되는 포트 이외에, 교환기의 PIM 참여 메시지에 대응하는 멀티캐스트 플로우를 위한 PIM 스누핑 엔트리가 존재하고 PIM 참여 메시지를 수신하는 포트가 PIM 스누핑 엔트리 내의 프룬 포트라는 결정이 이루어질 때 교환기에서의 멀티캐스트 그룹 관리 스누핑 엔트리들 및 PIM 스누핑 엔트리들에 기초하여 멀티캐스트 플로우를 수신하는, 다른 포트가 존재하는지 여부에 관하여 결정이 이루어지고, 멀티캐스트 플로우의 수신을 필요로 하는 다른 포트가 존재하면 PIM 참여 메시지는 전송되지 않으며, 또는 멀티캐스트 플로우의 수신을 필요로 하는 다른 포트가 존재하지 않으면 멀티캐스트 소스 방향으로 PIM 참여 메시지가 전송된다.
제2 모듈은, 멀티캐스트 소스 방향으로 PIM 참여 메시지를 전송한 후에 PIM 스누핑 엔트리로부터 PIM 참여 메시지를 수신하는 포트를 추가적으로 삭제하고 그 포트를 라우터 포트로 설정할 수도 있다.
제3 모듈은 멀티캐스트 플로우를 위한 멀티캐스트 그룹 관리 참여 메시지를 수신하고, 그 메시지를 수신하는 포트를 멀티캐스트 플로우의 멀티캐스트 그룹 관리 엔트리에 멤버쉽 포트로서 부가하고, 그 메시지가 수신되는 포트를 제외하고 PIM 스누핑 엔트리 내의 모든 라우터 포트들, 프룬 포트들, 및 업스트림 이웃들을 경유하여 멀티캐스트 그룹 관리 참여 메시지를 전송한다.
멀티캐스트 그룹 관리 참여 메시지는 IGMP 참여 메시지 또는 MLD 참여 메시지일 수도 있다.
본 명세서에 개시된 예시적인 방법들, 시스템들, 및 모듈들은 하드웨어, 기계-판독가능한 지시들, 또는 하드웨어와 기계-판독가능한 지시들의 조합에 의해 실행될 수도 있다. 본 명세서에 개시된 예들에서 사용된 기계-판독가능한 지시들은, 하드 드라이브, CD-ROM, DVD, 콤팩트 디스크, 플로피 디스크, 자성 테입 드라이브, RAM, ROM, 또는 다른 적절한 스토리지 디바이스와 같은, 하나 이상의 프로세서들에 의해 판독가능한 스토리지 매체에 저장가능할 수도 있다. 그렇지 않으면, 기계-판독가능한 지시들의 적어도 일부가, 커스텀 집적 회로(custom integrated circuit)들, 게이트 어레이(gate array), FPGA, PLD, 및 특정 목적의 컴퓨터들 등과 같은, 특정 목적 하드웨어에 의해 대체될 수도 있다. 예를 들어, 도 14는 다른 예에 의해 제공되는 PIM 라우터의 구조를 예시하는 개략도이다. PIM 라우터는 제1 홉 PIM 라우터이며, PIM 스누핑 기능들을 구비하는 계층-2 교환기를 경유하여 멀티캐스트 소스에 연결될 수도 있다. 도 14에 도시된 바와 같이, PIM 라우터는: 제1 모듈, 제2 모듈, 및 프로세서를 포함할 수도 있다. 제1 모듈 및 제2 모듈은, 프로세서가 도 13에 도시된 제1 모듈 및 제2 모듈과 유사한 기능들을 수행하도록 야기하기 위해 프로세서에 의해 판독가능한 스토리지 매체에 저장될 수 있다.
기계-판독가능한 스토리지 매체가 또한 제공되며, 이것은 본 명세서에 개시된 바와 같이 기계가 제어 방법을 실행하도록 야기하는 지시들을 저장하는 것이다. 특히, 이상의 예들에서 설명된 방법들 및 기능들을 실행하기 위해 시스템 및 장치의 하나 이상의 프로세서들(예컨대, CPU 또는 MPU 등)에 의해 판독되거나 실행될 수 있는 기계-판독가능한 지시들을 저장하는 스토리지 매체를 구비하는 시스템 또는 장치이다.
이러한 상황에서, 스토리지 매체로부터 판독된 기계 판독가능한 지시들(예컨대, 프로그램 코드들)는 이상의 예들 중 임의의 하나를 실행할 수 있으며, 따라서 기계 판독가능한 지시들 및 기계 판독가능한 지시들을 저장하는 스토리지 매체는 기술적 체계의 일부이다.
기계 판독가능한 지시들을 제공하는 저장 매체는 플로피 디스크, 하드 드라이브, 자성-광학 디스크, 콤팩트 디스크(예컨대, CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-RAM, DVD-RW, DVD+RW), 자성 테입 드라이브, 플래시 카드, ROM 등을 포함할 수 있다. 선택적으로, 기계 판독가능한 지시들은 통신 네트워크를 통해 서버 컴퓨터로부터 다운로드될 수도 있다.
컴퓨터에 의해 실행되는 기계 판독가능한 지시들에 대안적으로, 기계 판독가능한 지시들에 의해 수행되는 동작들의 적어도 일부는 이상의 예들 중 임의의 예의 기술적 체계를 실현하는 기계 판독가능한 지시들에 기초하여 지시들을 따르는 컴퓨터에서 동작하는 운영 시스템에 의해 실행될 수도 있다.
게다가, 스토리지 매체로부터 실행된 기계 판독가능한 지시들이 컴퓨터에 삽입된 확장 보드(extension board) 내의 스토리지에, 또는 그 컴퓨터에 연결된 확장 유닛(extension unit) 내의 스토리지에 기록될 수도 있다. 이 예에서, 확장 보드 또는 확장 유닛 내의 CPU는 이상의 예들 중 임의의 예의 기술적 체계를 실현하는 기계 판독가능한 지시들에 기초하여 그 지시들에 따라 동작들의 적어도 일부를 실행한다.
이상은 본 개시의 단지 예들일 뿐이며, 본 발명의 보호 범위를 제한하는 데 사용되지 않는다. 본 발명의 취지 및 원칙들에 따른 모든 변형예들, 등가 대체물들, 또는 개선물은 본 발명의 보호 범위 내에 포함되어야 한다.
Claims (20)
- 프로토콜 독립 멀티캐스트(Protocol Independent Multicast:PIM) 스누핑 기능을 구비하고, 멀티캐스트 소스와 제1 홉 PIM 라우터 사이의 배치(deployment)를 위한 계층-2 교환기로서,
멀티캐스트 플로우에 대한 PIM 프룬 메시지를 수신하고, 상기 계층-2 교환기의 PIM 스누핑 기능에 의해 유지되는 PIM 라우터의 리스트 내에 상기 PIM 프룬 메시지의 업스트림 이웃 어드레스가 존재하지 않는다는 결정에 응답하여, 상기 PIM 프룬 메시지가 수신된 포트를 프룬 포트로서 상기 멀티캐스트 플로우에 대응하는 PIM 스누핑 엔트리에 부가하고, 상기 프룬 포트를 경유하여 상기 멀티캐스트 플로우를 송신하는 것을 중단하는 제1 모듈; 및
멀티캐스트 플로우에 대한 PIM 참여 메시지를 수신하고, 상기 PIM 참여 메시지 내의 업스트림 이웃 어드레스가 상기 계층-2 교환기의 PIM 스누핑 기능에 의해 유지되는 PIM 라우터의 리스트 내에 존재하지 않는다는 결정에 응답하여,
상기 계층-2 교환기 내에 상기 PIM 참여 메시지에 대응하는 멀티캐스트 플로우에 대한 PIM 스누핑 엔트리가 존재하고 또 상기 PIM 참여 메시지를 수신한 포트가 상기 PIM 스누핑 엔트리 내의 프룬 포트라는 결정에 따라, 상기 PIM 참여 메시지가 수신된 포트 이외에, 상기 계층-2 교환기 내의 멀티캐스트 그룹 관리 스누핑 엔트리 및 PIM 스누핑 엔트리에 기초하여 상기 멀티캐스트 플로우를 수신할 다른 포트가 존재하는지 여부를 결정하고, 상기 멀티캐스트 플로우를 수신할 다른 포트가 존재하면 PIM 참여 메시지를 송신하지 않고, 그렇지 않고 상기 멀티캐스트 플로우를 수신할 다른 포트가 존재하지 않으면 멀티캐스트 소스의 방향으로 상기 PIM 참여 메시지를 송신하는 제2 모듈
을 포함하는 계층-2 교환기. - 제1항에 있어서,
상기 제1 모듈은 추가적으로, 상기 프룬 포트에 대해 프룬 시간(prune time)을 설정하고, 상기 프룬 시간이 만료되면 상기 프룬 포트로 상기 멀티캐스트 플로우의 송신을 개시하는, 계층-2 교환기. - 제1항에 있어서,
상기 제1 모듈은 추가적으로, 상기 제1 홉 PIM 라우터에서의 상기 PIM 프룬 메시지에 대응하는 상기 멀티캐스트 플로우의 멀티캐스트 라우팅 테이블 엔트리의 수명 값(lifetime value)보다 작은 수명 값을 상기 프룬 포트에 대해 설정하고; 상기 프룬 포트의 수명 값이 만료된 때 상기 프룬 포트를 일시적인 라우터 포트로서 설정하고; 상기 멀티캐스트 플로우에 대한 PIM 프룬 메시지가 미리 정해진 기간 내에 수신되지 않으면 상기 일시적인 라우터 포트를 라우터 포트로 설정하고, 그렇지 않고 상기 멀티캐스트 플로우에 대한 PIM 프룬 메시지가 수신되면 상기 일시적인 라우터 포트를 프룬 포트로 설정하고 상기 프룬 포트의 수명 값을 리셋하는, 계층-2 교환기. - 제1항에 있어서,
상기 제1 모듈은 추가적으로:
상기 PIM 프룬 메시지 내의 업스트림 이웃 어드레스가 상기 계층-2 교환기의 PIM 스누핑 기능을 사용하는 PIM 라우터의 리스트 내에 존재하지 않으며 상기 멀티캐스트 플로우에 대한 PIM 스누핑 엔트리가 상기 계층-2 교환기 내에 구축되어 있지 않다는 결정에 응답하여, 상기 멀티캐스트 플로우에 대한 PIM 스누핑 엔트리를 구축하고, 비어있는 리스트를 상기 PIM 스누핑 엔트리 내의 업스트림 이웃 리스트로서 설정하며, 업스트림 포트를 제외하고 PIM 이웃에 연결된 모든 포트를 상기 PIM 스누핑 엔트리 내의 다운스트림 출구 포트 리스트에 부가하며, 상기 멀티캐스트 플로우에 대응하는 상기 PIM 스누핑 엔트리에 상기 프룬 포트의 부가를 실행하고; 또
상기 계층-2 교환기의 멀티캐스트 그룹 관리 엔트리 및 PIM 스누핑 엔트리에 기초하여 상기 PIM 프룬 메시지에 대응하는 상기 멀티캐스트 플로우가 송신되어야 하는지 여부를 결정하고, 상기 PIM 프룬 메시지에 대응하는 멀티캐스트 플로우가 송신되어야 하면 PIM 프룬 메시지를 송신하지 않고, 그렇지 않고 상기 PIM 프룬 메시지에 대응하는 멀티캐스트 플로우가 송신되지 않아야 하면 상기 멀티캐스트 소스의 방향으로 상기 PIM 프룬 메시지를 송신하는, 계층-2 교환기. - 제1항에 있어서,
상기 제1 모듈은 추가적으로:
상기 PIM 프룬 메시지 내의 업스트림 이웃 어드레스가 상기 계층-2 교환기의 PIM 스누핑 기능을 사용하는 PIM 라우터의 리스트내에 존재하지 않고 상기 멀티캐스트 플로우에 대한 PIM 스누핑 엔트리가 상기 계층-2 교환기 내에 이미 구축되어 있다는 결정에 응답하여, 상기 멀티캐스트 플로우에 대응하는 상기 PIM 스누핑 엔트리로의 상기 프룬 포트의 부가를 바로 수행하고;
상기 계층-2 교환기 내의 멀티캐스트 그룹 관리 엔트리 및 PIM 스누핑 엔트리에 기초하여 상기 PIM 프룬 메시지에 대응하는 멀티캐스트 플로우가 송신되어야 하는지 여부를 결정하고, 상기 PIM 프룬 메시지에 대응하는 상기 멀티캐스트 플로우가 송신되어야 하면 PIM 프룬 메시지를 송신하지 않으며, 그렇지 않고 상기 PIM 프룬 메시지에 대응하는 상기 멀티캐스트 플로우가 송신되지 않아야 하면 상기 멀티캐스트 소스의 방향으로 상기 PIM 프룬 메시지를 송신하는, 계층-2 교환기. - 제1항에 있어서,
상기 제2 모듈은 추가로, 상기 PIM 참여 메시지가 수신된 포트를 프룬 포트로서 라벨링한 마크를 삭제하고; 상기 포트를 라우터 포트로서 설정하고; 상기 PIM 스누핑 엔트리의 다운스트림 출구 포트 리스트가 프룬 포트를 포함하지 않으며 업스트림 이웃 리스트가 비어있다면, 상기 멀티캐스트 플로우에 대응하는 PIM 스누핑 엔트리를 삭제하는, 계층-2 교환기. - 제1항에 있어서,
멀티캐스트 플로우에 대한 멀티캐스트 그룹 참여 메시지를 수신하고;
상기 멀티캐스트 그룹 참여 메시지가 수신된 포트를 상기 멀티캐스트 플로우에 대응하는 멀티캐스트 그룹 관리 스누핑 엔트리에 멤버쉽 포트로서 부가하고;
상기 멀티캐스트 그룹 참여 메시지가 수신된 포트를 제외한, 상기 PIM 스누핑 엔트리 내의 모든 라우터 포트, 프룬 포트 및 업스트림 이웃에 상기 멀티캐스트 그룹 참여 메시지를 송신하는 제3 모듈을 더 포함하는, 계층-2 교환기. - 멀티캐스트 브랜치를 프루닝하기 위한 멀티캐스트 브랜치 프루닝 방법으로서,
계층-2 교환기에 의해, 멀티캐스트 플로우에 대한 PIM 프룬 메시지를 수신하는 단계;
상기 계층-2 교환기에 의해, 상기 계층-2 교환기의 PIM 스누핑 기능에 의해 유지되는 PIM 라우터의 리스트 내에 상기 PIM 프룬 메시지의 업스트림 이웃 어드레스가 존재하지 않는다는 결정에 응답하여, 상기 PIM 프룬 메시지가 수신된 포트를 프룬 포트로서 상기 멀티캐스트 플로우에 대응하는 PIM 스누핑 엔트리에 부가하고, 상기 프룬 포트를 경유하여 상기 멀티캐스트 플로우를 송신하는 것을 중단하는 단계;
멀티캐스트 플로우에 대한 PIM 참여 메시지를 수신하는 단계; 및
상기 PIM 참여 메시지 내의 업스트림 이웃 어드레스가 상기 계층-2 교환기의 PIM 스누핑 기능에 의해 유지되는 PIM 라우터의 리스트 내에 존재하지 않는다는 결정에 응답하여, 상기 계층-2 교환기 내에 상기 PIM 참여 메시지에 대응하는 멀티캐스트 플로우에 대한 PIM 스누핑 엔트리가 존재하고 또 상기 PIM 참여 메시지를 수신한 포트가 상기 PIM 스누핑 엔트리 내의 프룬 포트라는 결정에 따라, 상기 PIM 참여 메시지가 수신된 포트 이외에, 상기 계층-2 교환기 내의 멀티캐스트 그룹 관리 스누핑 엔트리 및 PIM 스누핑 엔트리에 기초하여 상기 멀티캐스트 플로우를 수신할 다른 포트가 존재하는지 여부를 결정하고, 상기 멀티캐스트 플로우를 수신할 다른 포트가 존재하면 PIM 참여 메시지를 송신하지 않고, 그렇지 않고 상기 멀티캐스트 플로우를 수신할 다른 포트가 존재하지 않으면 멀티캐스트 소스의 방향으로 상기 PIM 참여 메시지를 송신하는 단계
를 포함하는 멀티캐스트 브랜치 프루닝 방법. - 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010502531.2 | 2010-09-30 | ||
CN201010502531 | 2010-09-30 | ||
CN201010613223.7 | 2010-12-21 | ||
CN2010106132237A CN102075417B (zh) | 2010-09-30 | 2010-12-21 | 组播剪枝方法及协议无关组播路由器 |
PCT/CN2011/080482 WO2012041257A1 (en) | 2010-09-30 | 2011-09-30 | Method for pruning a multicast branch, protocol independent multicast router, and layer-2 exchange |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137006575A Division KR101566846B1 (ko) | 2010-09-30 | 2011-09-30 | 멀티캐스트 브랜치, 프로토콜 독립 멀티캐스트 라우터, 및 계층-2 교환기를 프루닝하기 위한 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150003394A KR20150003394A (ko) | 2015-01-08 |
KR101649244B1 true KR101649244B1 (ko) | 2016-08-18 |
Family
ID=44033769
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137006575A KR101566846B1 (ko) | 2010-09-30 | 2011-09-30 | 멀티캐스트 브랜치, 프로토콜 독립 멀티캐스트 라우터, 및 계층-2 교환기를 프루닝하기 위한 방법 |
KR1020147033727A KR101649244B1 (ko) | 2010-09-30 | 2011-09-30 | 멀티캐스트 브랜치, 프로토콜 독립 멀티캐스트 라우터, 및 계층-2 교환기를 프루닝하기 위한 방법 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137006575A KR101566846B1 (ko) | 2010-09-30 | 2011-09-30 | 멀티캐스트 브랜치, 프로토콜 독립 멀티캐스트 라우터, 및 계층-2 교환기를 프루닝하기 위한 방법 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9497034B2 (ko) |
EP (1) | EP2622805B1 (ko) |
JP (1) | JP5619290B2 (ko) |
KR (2) | KR101566846B1 (ko) |
CN (1) | CN102075417B (ko) |
WO (1) | WO2012041257A1 (ko) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9264384B1 (en) | 2004-07-22 | 2016-02-16 | Oracle International Corporation | Resource virtualization mechanism including virtual host bus adapters |
US9813283B2 (en) | 2005-08-09 | 2017-11-07 | Oracle International Corporation | Efficient data transfer between servers and remote peripherals |
US9973446B2 (en) | 2009-08-20 | 2018-05-15 | Oracle International Corporation | Remote shared server peripherals over an Ethernet network for resource virtualization |
US9331963B2 (en) | 2010-09-24 | 2016-05-03 | Oracle International Corporation | Wireless host I/O using virtualized I/O controllers |
CN102075417B (zh) | 2010-09-30 | 2013-11-06 | 杭州华三通信技术有限公司 | 组播剪枝方法及协议无关组播路由器 |
CN102595248B (zh) * | 2012-01-18 | 2014-02-26 | 杭州华三通信技术有限公司 | 组播转发表项维护方法及协议无关组播路由器 |
CN102833082B (zh) * | 2012-09-24 | 2015-11-25 | 杭州华三通信技术有限公司 | 一种组播剪枝方法和路由设备 |
US9083550B2 (en) * | 2012-10-29 | 2015-07-14 | Oracle International Corporation | Network virtualization over infiniband |
US8976644B2 (en) * | 2013-01-18 | 2015-03-10 | International Business Machines Corporation | Multicast traffic forwarding on pruned interface |
US9036634B2 (en) * | 2013-01-18 | 2015-05-19 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Multicast route entry synchronization |
US10020952B1 (en) * | 2013-07-16 | 2018-07-10 | Juniper Networks, Inc. | PIM relay mode in computer networks |
US9806897B2 (en) | 2013-09-17 | 2017-10-31 | Cisco Technology, Inc. | Bit indexed explicit replication forwarding optimization |
US11451474B2 (en) | 2013-09-17 | 2022-09-20 | Cisco Technology, Inc. | Equal cost multi-path with bit indexed explicit replication |
US9438432B2 (en) | 2013-09-17 | 2016-09-06 | Cisco Technology, Inc. | Bit indexed explicit replication packet encapsulation |
US10218524B2 (en) | 2013-09-17 | 2019-02-26 | Cisco Technology, Inc. | Bit indexed explicit replication for layer 2 networking |
US10461946B2 (en) * | 2013-09-17 | 2019-10-29 | Cisco Technology, Inc. | Overlay signaling for bit indexed explicit replication |
US10003494B2 (en) | 2013-09-17 | 2018-06-19 | Cisco Technology, Inc. | Per-prefix LFA FRR with bit indexed explicit replication |
US9544230B2 (en) | 2013-09-17 | 2017-01-10 | Cisco Technology, Inc. | Migration support for bit indexed explicit replication |
WO2015042152A1 (en) | 2013-09-17 | 2015-03-26 | Cisco Technology, Inc. | Bit indexed explicit replication using multiprotocol label switching |
US9571897B2 (en) | 2013-09-17 | 2017-02-14 | Cisco Technology, Inc. | Bit indexed explicit replication for professional media networks |
CN103516616B (zh) * | 2013-10-18 | 2017-02-15 | 杭州华三通信技术有限公司 | 一种sa报文的传输方法和设备 |
CN105850083B (zh) * | 2013-12-31 | 2019-12-31 | 意大利电信股份公司 | 多播通信网络中的拥塞管理 |
JP6729845B2 (ja) * | 2014-03-28 | 2020-07-29 | 富士通株式会社 | ネットワークシステム、パケット伝送装置、パケット伝送方法、及び情報処理プログラム |
CN105591942B (zh) * | 2014-10-23 | 2019-12-17 | 中兴通讯股份有限公司 | 优化组播协议的方法和装置 |
CN105704046A (zh) * | 2014-11-27 | 2016-06-22 | 中兴通讯股份有限公司 | 一种组播路由表项处理方法及装置 |
US9906378B2 (en) | 2015-01-27 | 2018-02-27 | Cisco Technology, Inc. | Capability aware routing |
US10341221B2 (en) | 2015-02-26 | 2019-07-02 | Cisco Technology, Inc. | Traffic engineering for bit indexed explicit replication |
US10630743B2 (en) | 2016-09-23 | 2020-04-21 | Cisco Technology, Inc. | Unicast media replication fabric using bit indexed explicit replication |
US10637675B2 (en) | 2016-11-09 | 2020-04-28 | Cisco Technology, Inc. | Area-specific broadcasting using bit indexed explicit replication |
US10999090B2 (en) * | 2016-12-30 | 2021-05-04 | Juniper Networks, Inc. | Multicast flow prioritization |
US10447496B2 (en) | 2017-03-30 | 2019-10-15 | Cisco Technology, Inc. | Multicast traffic steering using tree identity in bit indexed explicit replication (BIER) |
US10164794B2 (en) | 2017-04-28 | 2018-12-25 | Cisco Technology, Inc. | Bridging of non-capable subnetworks in bit indexed explicit replication |
US10541866B2 (en) * | 2017-07-25 | 2020-01-21 | Cisco Technology, Inc. | Detecting and resolving multicast traffic performance issues |
CN109729009B (zh) | 2017-10-31 | 2022-08-26 | 华为技术有限公司 | 用于实现组播业务的方法和装置 |
CN109995659B (zh) * | 2017-12-29 | 2022-03-01 | 阿里巴巴集团控股有限公司 | 一种网络通信方法及装置 |
US11166220B2 (en) | 2018-11-08 | 2021-11-02 | Juganu, Ltd. | Next-hop routing over a plurality of distinct channels in a mesh network |
US11310306B2 (en) | 2018-11-08 | 2022-04-19 | Juganu, Ltd. | Systems and methods for reliable firmware update in tree-based wireless networks |
EP3878215A4 (en) * | 2018-11-08 | 2022-10-19 | Juganu Ltd. | SYSTEMS AND METHODS FOR MULTICAST GROUP ROUTING, FIRMWARE UPDATE AND NEXT-HOP ROUTING IN TREE-BASED WIRELESS NETWORKS |
US11297468B2 (en) | 2018-11-08 | 2022-04-05 | Juganu, Ltd. | Efficient multicast group routing across tree-based wireless network |
US11516115B2 (en) * | 2020-08-18 | 2022-11-29 | Juniper Networks, Inc. | Weighted multicast join load balance |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003036503A1 (en) | 2001-10-19 | 2003-05-01 | Foundry Networks, Inc. | Method and system for intelligently forwarding multicast packets |
WO2009056175A1 (en) | 2007-10-30 | 2009-05-07 | Soporte Multivendor S.L. | Method for managing multicast traffic between routers communicating by means of a protocol integrating the pim protocol; and router and switch involved in said method |
US7590115B1 (en) | 2004-08-30 | 2009-09-15 | Juniper Networks, Inc. | Exchange of control information for virtual private local area network (LAN) service multicast |
WO2010072611A1 (en) | 2008-12-23 | 2010-07-01 | Media Patents, S. L. | Methods for managing multicast traffic between sources sending data and hosts requesting data and network equipment used to implement the methods |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6785274B2 (en) * | 1998-10-07 | 2004-08-31 | Cisco Technology, Inc. | Efficient network multicast switching apparatus and methods |
US6847638B1 (en) * | 2000-10-16 | 2005-01-25 | Cisco Technology, Inc. | Multicast system for forwarding desired multicast packets in a computer network |
US8099516B1 (en) * | 2004-02-23 | 2012-01-17 | Avaya Inc. | Protocol independent multicast designated router enhancements for supporting internet group management protocol in a multi-access network |
JP2006087014A (ja) * | 2004-09-17 | 2006-03-30 | Fujitsu Ltd | レイヤ2スイッチ |
CN100450086C (zh) * | 2005-09-07 | 2009-01-07 | 华为技术有限公司 | 在虚拟专用局域网业务中实现组播数据流转发的方法 |
CN100492977C (zh) * | 2006-07-18 | 2009-05-27 | 杭州华三通信技术有限公司 | 指定源组播协议无关组播模式下跨虚拟局域网组播的方法和系统 |
CN100440818C (zh) * | 2006-07-18 | 2008-12-03 | 杭州华三通信技术有限公司 | 一种提高组播点播成功率的方法及协议无关组播路由器 |
JP2009021940A (ja) * | 2007-07-13 | 2009-01-29 | Sharp Corp | ブリッジ装置 |
JP2009246845A (ja) * | 2008-03-31 | 2009-10-22 | Nippon Telegr & Teleph Corp <Ntt> | マルチキャストパケットの転送装置、転送方法及び転送制御プログラム |
CN101291240B (zh) * | 2008-06-19 | 2010-08-25 | 杭州华三通信技术有限公司 | 一种组播流传输方法和系统 |
CN101340305B (zh) * | 2008-08-07 | 2012-05-09 | 中兴通讯股份有限公司 | 一种源特定的组播方法、系统及其接入设备 |
US8761044B2 (en) * | 2010-06-11 | 2014-06-24 | Juniper Networks, Inc. | Selection of multicast router interfaces in an L2 switch connecting end hosts and routers, which is running IGMP and PIM snooping |
CN102075417B (zh) | 2010-09-30 | 2013-11-06 | 杭州华三通信技术有限公司 | 组播剪枝方法及协议无关组播路由器 |
-
2010
- 2010-12-21 CN CN2010106132237A patent/CN102075417B/zh active Active
-
2011
- 2011-09-30 KR KR1020137006575A patent/KR101566846B1/ko active IP Right Grant
- 2011-09-30 JP JP2013530556A patent/JP5619290B2/ja active Active
- 2011-09-30 KR KR1020147033727A patent/KR101649244B1/ko active IP Right Grant
- 2011-09-30 EP EP11828153.4A patent/EP2622805B1/en active Active
- 2011-09-30 US US13/876,141 patent/US9497034B2/en active Active
- 2011-09-30 WO PCT/CN2011/080482 patent/WO2012041257A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003036503A1 (en) | 2001-10-19 | 2003-05-01 | Foundry Networks, Inc. | Method and system for intelligently forwarding multicast packets |
US7590115B1 (en) | 2004-08-30 | 2009-09-15 | Juniper Networks, Inc. | Exchange of control information for virtual private local area network (LAN) service multicast |
WO2009056175A1 (en) | 2007-10-30 | 2009-05-07 | Soporte Multivendor S.L. | Method for managing multicast traffic between routers communicating by means of a protocol integrating the pim protocol; and router and switch involved in said method |
WO2010072611A1 (en) | 2008-12-23 | 2010-07-01 | Media Patents, S. L. | Methods for managing multicast traffic between sources sending data and hosts requesting data and network equipment used to implement the methods |
Also Published As
Publication number | Publication date |
---|---|
JP2013543687A (ja) | 2013-12-05 |
JP5619290B2 (ja) | 2014-11-05 |
KR20150003394A (ko) | 2015-01-08 |
EP2622805A4 (en) | 2015-05-06 |
CN102075417B (zh) | 2013-11-06 |
EP2622805B1 (en) | 2016-11-02 |
US9497034B2 (en) | 2016-11-15 |
KR20130045927A (ko) | 2013-05-06 |
CN102075417A (zh) | 2011-05-25 |
US20130201988A1 (en) | 2013-08-08 |
WO2012041257A1 (en) | 2012-04-05 |
EP2622805A1 (en) | 2013-08-07 |
KR101566846B1 (ko) | 2015-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101649244B1 (ko) | 멀티캐스트 브랜치, 프로토콜 독립 멀티캐스트 라우터, 및 계층-2 교환기를 프루닝하기 위한 방법 | |
EP3451596B1 (en) | Multicast flow overlay using registration over a reliable transport | |
CN107276904B (zh) | 分发多播业务的方法和网络设备 | |
US8218429B2 (en) | Method and device for multicast traffic redundancy protection | |
US8121025B2 (en) | Method and system for switching multicast traffic and router | |
US6654371B1 (en) | Method and apparatus for forwarding multicast data by relaying IGMP group membership | |
US20090059923A1 (en) | Multicast method and multicast routing method | |
US11509572B2 (en) | Optimizing IP multicast delivery with use of local source nodes and the propagation of advertisements therefor | |
US9838303B2 (en) | PIM source discovery by last hop router | |
CN100477635C (zh) | 一种域间组播的传输方法及边缘设备 | |
CN110999230B (zh) | 传输组播报文的方法、网络设备和系统 | |
CN102843303B (zh) | Pim中的组播报文处理方法及装置 | |
Cisco | Configuring IP Multicast Routing | |
Cisco | Configuring IP Multicast Routing | |
Cisco | Configuring IP Multicast Routing | |
Cisco | Configuring IP Multicast Routing | |
CN102377639B (zh) | 组播剪枝方法及协议无关组播路由器、组管理窥探交换机 | |
US11018886B1 (en) | Methods and apparatus for selectively filtering an IP multicast data stream for selected group members of a multicast group | |
CN114915588B (zh) | 用于任播部署的上游多播跳umh扩展 | |
EP3923529A1 (en) | Multicast source discovery protocol (msdp) loop avoidance | |
Hoogendoorn et al. | Multicast in NSX-T | |
WO2012167482A1 (zh) | 稀疏模式协议无关组播中的组播转发方法和组播转发设备 | |
Tolkas et al. | Handling multicast video over non multicast networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |