KR20100002657A - Apparatus for internet group management protocol proxy - Google Patents

Apparatus for internet group management protocol proxy Download PDF

Info

Publication number
KR20100002657A
KR20100002657A KR1020080062628A KR20080062628A KR20100002657A KR 20100002657 A KR20100002657 A KR 20100002657A KR 1020080062628 A KR1020080062628 A KR 1020080062628A KR 20080062628 A KR20080062628 A KR 20080062628A KR 20100002657 A KR20100002657 A KR 20100002657A
Authority
KR
South Korea
Prior art keywords
upstream
interfaces
interface
igmp
upstream interfaces
Prior art date
Application number
KR1020080062628A
Other languages
Korean (ko)
Other versions
KR100975018B1 (en
Inventor
신현재
Original Assignee
주식회사 다산네트웍스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 다산네트웍스 filed Critical 주식회사 다산네트웍스
Priority to KR1020080062628A priority Critical patent/KR100975018B1/en
Publication of KR20100002657A publication Critical patent/KR20100002657A/en
Application granted granted Critical
Publication of KR100975018B1 publication Critical patent/KR100975018B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PURPOSE: An apparatus for IGMP proxy is provided to distribute the load of upstream interfaces or multicast routers connected to the upstream interfaces, thereby providing stable multicast services. CONSTITUTION: An IGMP(Internet Group Management Protocol) proxy device(310) comprises N upstream interfaces(u1,u2,u3), one or more downstream interfaces(d1,d2) and a controller. In order to equalize the load of the upstream interfaces, the controller switches connection relation among the upstream interfaces and the down stream interface. The IGMP proxy device stores merge information about each of the upstream interfaces in a membership database(350).

Description

인터넷 그룹 관리 프로토콜 프락시 장치 {apparatus for Internet Group Management Protocol Proxy}Internet group management protocol proxy device {apparatus for Internet Group Management Protocol Proxy}

본 발명은 IGMP 프락시 장치에 관한 것으로, 보다 상세하지만 제한됨이 없이는(more particularly, but not exclusively), 부하(load)를 분산시켜 안정적인 멀티캐스트 서비스를 제공할 수 있도록 하는 IGMP 프락시 장치에 관한 것이다.The present invention relates to an IGMP proxy device, and more particularly, but not exclusively, to an IGMP proxy device that can provide a stable multicast service by distributing load.

인터넷 그룹 관리 프로토콜(Internet Group Management Protocol : 이하, IGMP) 프락시(Proxy)는 IGMP 멤버쉽(membership) 정보만으로 멀티캐스트(Multicast) 패킷을 전달(forwarding) 가능하기 때문에, 멀티캐스트 라우팅 프로토콜(Multicast Routing Protocol : 이하, MRP)을 반드시 요구하지는 않는다. 따라서, MRP에 의한 복잡한 연산 수행을 줄일 수 있으며, 서로 상이한 MRP가 사용되더라도 호환성을 가진다.Since the Internet Group Management Protocol (IGMP) proxy can forward multicast packets only with IGMP membership information, the Multicast Routing Protocol: Hereinafter, MRP) is not necessarily required. Therefore, it is possible to reduce the complicated calculation performance by the MRP, even if different MRP is used.

도 1 및 도 2는 일반적인 IGMP 프락시를 설명하기 위한 개념도이다.1 and 2 are conceptual diagrams for explaining a general IGMP proxy.

IGMP 프락시 기기(170)는 하나의 업스트림 인터페이스(110) 및 다운스트림 인터페이스(120, 130)을 구비한다.IGMP proxy device 170 has one upstream interface 110 and downstream interfaces 120 and 130.

업스트림 인터페이스(110)는 상위에 있는 멀티캐스트 라우터(100)와 연결된 인터페이스로서, IGMP의 호스트(Host) 역할을 수행한다.The upstream interface 110 is an interface connected to the multicast router 100 located above, and serves as a host of IGMP.

제1 다운스트림 인터페이스(120) 및 제2 다운스트림 인터페이스(130)는 각각 제1 서브넷(150) 및 제2 서브넷(160)과 연결된 인터페이스로서, IGMP의 라우터(Router) 역할을 수행한다. 서브넷(150, 160) 내에는 적어도 하나의 호스트(미도시)가 포함되며, 경우에 따라 스위치 등도 포함된다.The first downstream interface 120 and the second downstream interface 130 are interfaces connected to the first subnet 150 and the second subnet 160, respectively, and serve as routers of IGMP. At least one host (not shown) is included in the subnets 150 and 160, and a switch or the like may be included in some cases.

제1, 제2 다운스트림 인터페이스(120, 130)는 각각 제1, 2 가입 리스트(subscription list)(122, 132)를 관리한다. 여기서, 가입 리스트(122, 132)는 해당 다운스트림 인터페이스(120, 130)와 연결된 서브넷(150, 160)의 멤버쉽을 포함하는 정보이고, 멤버쉽은 해당 서브넷(150, 160)에 서비스 중인 멀티캐스트 그룹 주소를 의미한다. 즉, 멤버쉽은 해당 서브넷(150, 160)이 조인(join)한 멀티캐스트 그룹을 의미한다.The first and second downstream interfaces 120 and 130 manage the first and second subscription lists 122 and 132, respectively. Here, the subscription lists 122 and 132 are information including membership of the subnets 150 and 160 connected with the downstream interfaces 120 and 130, and the membership is a multicast group serving the corresponding subnets 150 and 160. It means an address. That is, membership means a multicast group joined by the corresponding subnets 150 and 160.

멤버쉽 데이터베이스(140)는 다운스트림 인터페이스(120, 130)의 가입 리스트(122, 132)를 병합(merge)한 데이터베이스로서, 도 1에 도시된 바와 같이, 멤버쉽 레코드들의 집합이 엔트리로서 저장된다. 여기서, 멤버쉽 레코드는 도 1에 도시된 바와 같이, 멀티캐스트 그룹 주소가 포함되며, 부가적으로 필터 모드, 소스 리스트도 포함될 수 있다.The membership database 140 is a database in which the subscription lists 122 and 132 of the downstream interfaces 120 and 130 are merged. As shown in FIG. 1, a set of membership records is stored as an entry. Here, the membership record includes a multicast group address as shown in FIG. 1, and may additionally include a filter mode and a source list.

도 2는 도 1의 상태에서, 제1 서브넷(150) 내의 어느 호스트(미도시)가 멀티캐스트 그룹 주소 225.1.2.1의 멀티캐스트 서비스를 제공받기 위해, IGMP 보고(report) 패킷을 송신하는 경우, IGMP 프락시 기기(170)의 동작을 설명하기 위한 개념도이다. 편의상, 도 2에서의 참조 부호는 도 1의 참조 부호를 그대로 원용한다.FIG. 2 shows, in the state of FIG. 1, when a host (not shown) in the first subnet 150 transmits an IGMP report packet to receive a multicast service of a multicast group address 225.1.2.1. It is a conceptual diagram for explaining the operation of the IGMP proxy device 170. For convenience, the reference numerals in FIG. 2 refer to the same reference numerals in FIG. 1.

도 2에서, 제1 다운스트림 인터페이스(120)가 제1 서브넷(150)으로부터 IGMP 보고 패킷을 수신하면, 제1 가입 리스트(122)가 갱신(update)된다. 여기서, IGMP 보고 패킷의 예로는 서비스 받기를 원하는 멀티캐스트 그룹 주소를 알리기 위한 IGMP 멤버쉽 보고 패킷, 및 해당 멀티캐스트 그룹 주소에 대한 서비스를 원하지 않음을 알리기 위한 IGMP 탈퇴 (leave) 보고 패킷을 들 수 있으나, 반드시 이에 한정되는 것은 아니다.In FIG. 2, when the first downstream interface 120 receives an IGMP report packet from the first subnet 150, the first subscription list 122 is updated. Here, examples of the IGMP report packet include an IGMP membership report packet for notifying a multicast group address that is desired to be serviced, and an IGMP leave report packet for notifying that the service is not provided for the multicast group address. However, the present invention is not limited thereto.

이렇게 갱신된 가입 정보는 멤버쉽 데이터베이스(140)에 반영되고, 멤버쉽 데이터베이스(140)의 갱신된 부분(즉, 멤버쉽 레코드)은 IGMP 보고 패킷의 형태로 업스트림 인터페이스(110)를 통해 멀티캐스트 라우터(100)에게 전달된다.The updated subscription information is reflected in the membership database 140, and the updated portion of the membership database 140 (i.e., the membership record) is transmitted through the upstream interface 110 in the form of an IGMP report packet. Is passed to.

도 2에서의 IGMP 보고 패킷은 멀티캐스트 그룹 주소 225.1.2.1의 서비스를 받겠다는 것이므로, 이를 전달받은 멀티캐스트 라우터(100)는 해당 멀티캐스트 그룹 주소에 대응되는 패킷을 IGMP 프락시 기기(170)에 전달한다. 그 결과, 해당 서비스를 요청한 제1 서브넷(150) 내의 호스트(미도시)는 IGMP 프락시 기기(170)의 다운스트림 인터페이스(120)를 통하여 해당 멀티캐스트 패킷을 제공받게 된다.Since the IGMP report packet in FIG. 2 is intended to receive the service of the multicast group address 225.1.2.1, the multicast router 100 which has received it forwards the packet corresponding to the multicast group address to the IGMP proxy device 170. do. As a result, a host (not shown) in the first subnet 150 requesting the service receives the corresponding multicast packet through the downstream interface 120 of the IGMP proxy device 170.

한편, 상술한 IGMP 프락시 기기는, 라우팅 정보의 교환이 필요 없는 단순한 트리 토폴로지(simple tree topology) 환경을 전제로 설계되었기 때문에, 한 개의 업스트림 인터페이스를 구비하게 된다. 이 경우, 그 업스트림 인터페이스 또는 그 업스트림 인터페이스와 연결된 멀티캐스트 라우터에 부하(load)가 많은 경우, 안정적인 멀티캐스트 서비스를 제공할 수 없는 상황이 발생될 수 있다.On the other hand, the above-described IGMP proxy device is designed on the assumption of a simple tree topology environment that does not require the exchange of routing information, and thus has one upstream interface. In this case, when there is a heavy load on the upstream interface or the multicast router connected to the upstream interface, a situation may occur in which a stable multicast service cannot be provided.

본 발명이 이루고자 하는 기술적 과제는 부하를 분산시켜 안정적인 멀티캐스트 서비스를 제공할 수 있도록 하는 IGMP 프락시 장치를 제공하는 데 있다.The technical problem to be achieved by the present invention is to provide an IGMP proxy device that can distribute the load to provide a stable multicast service.

상기의 기술적 과제를 이루기 위해 본 발명의 제1 측면은 N(1보다 큰 자연수) 개의 업스트림 인터페이스들; 적어도 하나의 다운스트림 인터페이스; 및 상기 업스트림 인터페이스들의 부하를 균등화하기 위해, 상기 업스트림 인터페이스들과 상기 적어도 하나의 다운스트림 인터페이스 간의 연결 관계를 스위칭하는 제어부를 포함하는 인터넷 그룹 관리 프로토콜 프락시 장치를 제공한다.In order to achieve the above technical problem, a first aspect of the present invention provides an N (natural number greater than 1) upstream interfaces; At least one downstream interface; And a control unit for switching a connection relationship between the upstream interfaces and the at least one downstream interface to equalize the load of the upstream interfaces.

상기의 기술적 과제를 이루기 위해 본 발명의 제2 측면은 N(1보다 큰 자연수) 개의 업스트림 인터페이스들; 적어도 하나의 다운스트림 인터페이스; 상기 업스트림 인터페이스들 중에서, M(1보다 크고, N보다 작거나 같은 자연수)개의 사용 가능한 업스트림 인터페이스들이 감지하고, 상기 사용 가능한 업스트림 인터페이스들과 상기 적어도 하나의 다운스트림 인터페이스 간의 연결 관계를 스위칭하는 제어부를 포함하는 인터넷 그룹 관리 프로토콜 프락시 장치를 제공한다.In order to achieve the above technical problem, a second aspect of the present invention provides an N (natural number greater than 1) upstream interfaces; At least one downstream interface; Among the upstream interfaces, a control unit for detecting M (natural numbers greater than 1, less than or equal to N) usable upstream interfaces, and switching a connection relationship between the usable upstream interfaces and the at least one downstream interface. It provides an Internet group management protocol proxy device.

상기에서 제시한 본 발명의 실시예들은 다음의 장점들을 포함하는 효과를 가 질 수 있다. 다만, 본 발명의 모든 실시예들이 이를 전부 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Embodiments of the present invention presented above may have an effect including the following advantages. However, all the embodiments of the present invention are not meant to include them all, and thus the scope of the present invention should not be understood as being limited thereto.

본 발명의 일실시예에 따르면, 업스트림 인터페이스 또는 그 업스트림 인터페이스와 연결된 멀티캐스트 라우터의 부하를 분산시켜 안정적인 멀티캐스트 서비스를 제공할 수 있다.According to an embodiment of the present invention, it is possible to provide a stable multicast service by balancing the load of the upstream interface or the multicast router connected to the upstream interface.

또한, 본 발명의 일실시예에 따르면, 사용 가능한 업스트림 인터페이스들의 개수가 변경되더라도, 시그널링(예컨대, IGMP 보고 패킷의 송신 횟수, 멀티캐스트 라우터 간의 라우팅 정보 교환 등) 및 데이터베이스 변경(예컨대, 멤버쉽 데이터베이스가 갱신되는 내용의 정도 등)를 최소화할 수 있다.In addition, according to an embodiment of the present invention, even if the number of available upstream interfaces is changed, signaling (eg, number of transmission of IGMP report packets, routing information exchange between multicast routers, etc.) and database changes (eg, a membership database) may be performed. The amount of content being updated, etc. can be minimized.

본 발명의 실시예들에 관한 설명은 본 발명의 구조적 내지 기능적 설명들을 위하여 예시된 것에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예들에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 본 발명의 실시예들은 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다.Since descriptions of embodiments of the present invention are merely illustrated for structural to functional descriptions of the present invention, the scope of the present invention should not be construed as limited by the embodiments described in the present invention. That is, the embodiments of the present invention may be variously modified and may have various forms, and thus, it should be understood that the present invention includes equivalents capable of realizing the technical idea of the present invention.

한편, 본 발명에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.On the other hand, the meaning of the terms described in the present invention will be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로 이들 용어들에 의해 본 발명의 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as "first" and "second" are intended to distinguish one component from another component, and the scope of the present invention should not be limited by these terms. For example, the first component may be named a second component, and similarly, the second component may also be named a first component.

"및/또는"의 용어는 하나 이상의 관련 항목으로부터 제시가능 한 모든 조합을 포함하는 것으로 이해되어야 한다. 예를 들어, "제1 항목, 제2 항목 및/또는 제3 항목"의 의미는 "제1 항목, 제2 항목 및 제3 항목 중 적어도 하나 이상"을 의미하는 것으로, 제1, 제2 또는 제3 항목뿐만 아니라 제1, 제2 및 제3 항목들 중 2개 이상으로부터 제시될 수 있는 모든 항목의 조합을 의미한다.The term “and / or” should be understood to include all combinations that can be presented from one or more related items. For example, "first item, second item, and / or third item" means "at least one or more of the first item, second item, and third item", and means first, second, or third item. A combination of all items that can be presented from two or more of the first, second and third items as well as the third item.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being "connected" to another component, it should be understood that there may be other components in between, although it may be directly connected to the other component. On the other hand, when a component is said to be "directly connected" to another component, it should be understood that there is no other component in between. On the other hand, other expressions describing the relationship between the components, such as "between" and "immediately between" or "neighboring to" and "directly neighboring to", should be interpreted as well.

본 발명에서 기재된 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions described herein are to be understood to include plural expressions unless the context clearly indicates otherwise, and the terms "comprise" or "having" include elements, features, numbers, steps, operations, and elements described. It is to be understood that the present invention is intended to designate that there is a part or a combination thereof, and does not exclude in advance the possibility of the presence or addition of one or more other features or numbers, steps, actions, components, parts or combinations thereof. .

본 발명에서 기술한 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않은 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.Each step described in the present invention may occur out of the stated order unless the context clearly dictates the specific order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.Unless otherwise defined, all terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and shall be interpreted as having ideal or overly formal meanings unless expressly defined in this application. Can't be.

도 3a 내지 도 3c는 본 발명의 일실시예에 따른 IGMP 프락시 기기의 동작을 설명하기 위한 도면이다. 3A to 3C are diagrams for describing an operation of an IGMP proxy device according to an embodiment of the present invention.

도 3a는 IGMP 프락시 기기(310)의 일반적인 동작을 설명하기 위한 도면이고, 도 3b는 도 3a의 상황에서 사용 가능한 업스트림 인터페이스의 갯수가 감소한 후의 동작을 설명하기 위한 도면이고, 도 3c는 도 3b의 상황에서 사용 가능한 업스트림 인터페이스의 개수가 증가한 후의 동작을 설명하기 위한 도면이다. 3A is a view for explaining the general operation of the IGMP proxy device 310, FIG. 3B is a view for explaining the operation after the number of upstream interfaces available in the situation of FIG. 3A is reduced, and FIG. 3C is a view of FIG. A diagram for describing an operation after an increase in the number of upstream interfaces available in a situation.

도 3a 내지 3c에는 제1 멀티캐스트 라우터(300), 제2 멀티캐스트 라우터(302), 제3 멀티캐스트 라우터(304), IGMP 프락시 기기(310)가 도시되어 있으며, IGMP 프락시 기기(310)는 업스트림 인터페이스들(u1, u2, u3), 다운스트림 인터페 이스(d1, d2), 가입 리스트(340, 342), 및 멤버쉽 데이터베이스(350)를 포함하는 것으로 도시되어 있다. 3A to 3C, a first multicast router 300, a second multicast router 302, a third multicast router 304, and an IGMP proxy device 310 are shown, and the IGMP proxy device 310 is shown. It is shown to include upstream interfaces u1, u2, u3, downstream interfaces d1, d2, subscription lists 340, 342, and membership database 350.

도 3a 내지 3c에 도시된 IGMP 프락시 기기(310)의 내부는 다양한 방법으로 구현 가능하며, 본 명세서에서는, 편의상, 하나의 모듈인 제어부(미도시)가 본 발명에 따른 스위칭 동작을 수행하는 것을 전제하여 설명한다. The interior of the IGMP proxy device 310 shown in Figures 3a to 3c can be implemented in various ways, in the present specification, for convenience, it is assumed that a control unit (not shown), which is a module, performs a switching operation according to the present invention. Will be explained.

도 3a를 참조하여, 본 발명의 일실시예에 따른 IGMP 프락시 기기의 동작을 설명하면 다음과 같다.Referring to Figure 3a, the operation of the IGMP proxy device according to an embodiment of the present invention will be described.

IGMP 프락시 기기(310)는 다운스트림 인터페이스들(d1, d2) 각각에 해당하는 가입 리스트(340, 342)를 관리한다.The IGMP proxy device 310 manages subscription lists 340 and 342 corresponding to each of the downstream interfaces d1 and d2.

IGMP 프락시 기기(310)는 다운스트림 인터페이스(d1, d2)에서의 패킷 수신에 따라 멤버쉽 데이터베이스(350)가 갱신되면, IGMP 보고 패킷을 해당 멀티캐스트 라우터(300, 302, 304)에 송신하거나, 업스트림 인터페이스(u1, u2, u3)로부터 수신된 멀티캐스트 패킷을 해당 호스트(미도시)에 송신하기 위해, 업스트림 인터페이스(u1, u2, u3)와 다운스트림 인터페이스(d1, d2) 간의 연결 관계를 스위칭한다. 일례로, 제1 다운스트림 인터페이스(d1)에서 호스트(미도시)로부터 송신된 IGMP 보고 패킷을 수신한 경우, IGMP 프락시 기기(310)는 제1 가입 리스트(340)를 갱신한 후, 갱신된 내용을 멤버쉽 데이터베이스(350)에 반영한다. 여기서, 연결 관계는 다운스트림 인터페이스(d1, d2)가 가입한 멀티캐스트 그룹 주소들과 관련된 IGMP 처리를 담당하는 업스트림 인터페이스들(u1, u2, u3)의 선택을 의미한다. 이러한 선 택 방법에 대해서는 도 4a 이하에서 후술한다.When the membership database 350 is updated according to the packet reception at the downstream interfaces d1 and d2, the IGMP proxy device 310 transmits an IGMP report packet to a corresponding multicast router 300, 302, 304, or upstream. In order to transmit the multicast packets received from the interfaces u1, u2 and u3 to the host (not shown), the connection relationship between the upstream interfaces u1, u2 and u3 and the downstream interfaces d1 and d2 is switched. . For example, when receiving an IGMP report packet transmitted from a host (not shown) at the first downstream interface d1, the IGMP proxy device 310 updates the first subscription list 340 and then updates the updated contents. To the membership database 350. Herein, the connection relationship means selection of upstream interfaces u1, u2, and u3 that are in charge of IGMP processing associated with multicast group addresses subscribed to the downstream interfaces d1 and d2. This selection method will be described later with reference to FIG. 4A.

IGMP 프락시 기기(310)는 업스트림 인터페이스들(u1, u2, u3) 각각에 대한 병합 정보를 멤버쉽 데이터베이스(350)에 저장/관리한다. 여기서, 병합 정보는 해당 업스트림 인터페이스(u1, u2, u3)와 연결된 적어도 하나의 다운스트림 인터페이스(d1, d2)의 가입 리스트(340, 342)를 병합한 정보로서, 도 3a를 참조하면, 제1 업스트림 인터페이스(u1)의 병합 정보는 멀티캐스트 그룹 주소 225.1.1.1을 포함하고, 제2 업스트림 인터페이스(u2)의 병합 정보는 멀티캐스트 그룹 주소 225.1.1.2를 포함하고, 제3 업스트림 인터페이스(u3)의 병합 정보는 멀티캐스트 그룹 주소 225.1.1.3을 포함한다.The IGMP proxy device 310 stores / manages the merged information for each of the upstream interfaces u1, u2, and u3 in the membership database 350. Here, the merging information is information obtained by merging subscription lists 340 and 342 of at least one downstream interface d1 and d2 connected to the corresponding upstream interfaces u1, u2 and u3. Referring to FIG. The merge information of the upstream interface u1 includes the multicast group address 225.1.1.1, the merge information of the second upstream interface u2 includes the multicast group address 225.1.1.2, and the merge information of the third upstream interface u3. The merge information includes the multicast group address 225.1.1.3.

도 3a에 도시된 바와 같이, 225.1.1.1과 관련된 IGMP 보고 패킷은 제1 업스트림 인터페이스(u1)를 통하여 제1 멀티캐스트 라우터(300)에 전달되고, 225.1.1.2 과 관련된 IGMP 보고 패킷 및 225.1.1.3과 관련된 IGMP 보고 패킷은 각각 제2 멀티캐스트 라우터(302) 및 제3 멀티캐스트 라우터(304)로 전달된다. 그 결과, 제1 다운스트림 인터페이스(d1)와 연결된 호스트(미도시)는 제1 멀티캐스트 라우터(300), 및 제1 업스트림 인터페이스(u1)를 통하여 225.1.1.1과 관련된 멀티캐스트 서비스 패킷을 수신할 수 있으며, 제3 멀티캐스트 라우터(304), 제3 업스트림 인터페이스(u3)를 통하여 225.1.1.3과 관련된 멀티캐스트 서비스 패킷을 수신할 수 있게 된다. As shown in FIG. 3A, the IGMP report packet associated with 225.1.1.1 is delivered to the first multicast router 300 via the first upstream interface u1 and the IGMP report packet associated with 225.1.1.2 and 225.1.1.3. The IGMP report packet associated with is forwarded to the second multicast router 302 and the third multicast router 304, respectively. As a result, a host (not shown) connected with the first downstream interface d1 may receive the multicast service packet related to 225.1.1.1 via the first multicast router 300 and the first upstream interface u1. It is possible to receive the multicast service packet associated with 225.1.1.3 through the third multicast router 304, the third upstream interface u3.

도 3b를 참조하여, 본 발명의 일실시예에 따른 IGMP 프락시 기기의 동작을 설명하면 다음과 같다. 도 3b는 도 3a와 같이 동작하던 IGMP 프락시 기기(310)가 제2 업스트림 인터페이스(u2)의 사용 불가를 감지하여 대처하는 동작을 설명하기 위한 도면이다.Referring to Figure 3b, the operation of the IGMP proxy device according to an embodiment of the present invention will be described. FIG. 3B is a view for explaining an operation in which the IGMP proxy device 310 operating as shown in FIG. 3A detects the use of the second upstream interface u2 and copes with it.

제2 업스트림 인터페이스(u2)가 사용 불가능 한 경우의 예로는, 업스트림 인터페이스 관련 장애가 발생한 경우, 장비 관리자가 해당 업스트림 인터페이스의 연결을 임의로 제거한 경우를 들 수 있으나 반드시 이에 한정되는 것은 아니다. 여기서, 업스트림 인터페이스 관련 장애의 예로는, 업스트림 인터페이스와 연결된 멀티캐스트 라우터에 이상이 있는 경우, 이 멀티캐스트 라우터와 IGMP 프락시 기기 간의 링크에 장애가 생긴 경우, 업스트림 인터페이스 자체에 장애가 발생한 경우를 들 수 있으나, 반드시 이에 한정되는 것은 아니다.An example of the case where the second upstream interface u2 is not available may include, but is not limited to, a case where the equipment manager arbitrarily removes the connection of the upstream interface when an upstream interface-related failure occurs. Here, an example of an upstream interface-related failure may include a failure in a multicast router connected to an upstream interface, a failure of a link between the multicast router and an IGMP proxy device, or an failure of the upstream interface itself. It is not necessarily limited thereto.

여기서, 사용 불가를 감지하는 방법의 예로는, 업스트림 인터페이스(u1, u2, u3)의 상태 파라미터(status parameter)를 통하여 확인하거나 업스트림 인터페이스(u1, u2, u3)로 조인된 그룹의 멀티캐스트 패킷이 일정 시간 동안 수신되고 있지 않는지를 확인하는 방법 등을 통하여 장애를 감지하거나, 장비 관리자의 입력에 따라 감지하는 방법을 들 수 있으나, 반드시 이에 한정되는 것은 아니다.Here, as an example of the method of detecting the unavailableness, the multicast packet of the group checked through the status parameters of the upstream interfaces u1, u2, and u3 or joined to the upstream interfaces u1, u2 and u3 may be used. A method of detecting a failure through a method of checking whether it has not been received for a certain time or a method of detecting a failure according to an input of a device manager is not limited thereto.

IGMP 프락시 기기(310)는 제2 업스트림 인터페이스(u2)의 사용 불가를 감지하면, 적어도 제2 업스트림 인터페이스(u2)의 병합 정보를 나머지 업스트림 인터페이스(u1, u3)로 분산시켜야 하는데, 도 3b의 실시예는 제2 업스트림 인터페이스(u2)가 담당하던 225.1.1.2가 제3 업스트림 인터페이스(u3)의 병합 정보로 옮겨진 것을 알 수 있다.When the IGMP proxy device 310 detects that the second upstream interface u2 is unavailable, at least the IGMP proxy device 310 should distribute the merged information of the second upstream interface u2 to the remaining upstream interfaces u1 and u3. As an example, it can be seen that 225.1.1.2, which was in charge of the second upstream interface u2, has been moved to merge information of the third upstream interface u3.

이렇게 멤버쉽 데이터베이스(350)를 갱신한 후, 갱신된 내용을 담은 IGMP 보고 패킷은 해당 업스트림 인터페이스를 통하여 해당 라우터에 보고되는데, 도 3b에 따르면, 제3 업스트림 인터페이스(u3)의 병합 정보가 갱신되었으므로, 225.1.1.2에 해당하는 IGMP 보고가 제3 업스트림 인터페이스(u3)를 통하여 제3 멀티캐스트 라우터(304)로 전달된다. 그 결과, 도 3a에서 제2 멀티캐스트 라우터(302) 및 제2 상향 스트림 인터페이스(u2)를 통해 225.1.1.2 관련 서비스를 받던 제2 다운스트림 인터페이스(d2) 하의 호스트(미도시)는 제3 멀티캐스트 라우터(304) 및 제3 업스트림 인터페이스(u3)를 통해 225.1.1.2 관련 서비스를 지속적으로 받을 수 있게 된다.After updating the membership database 350 as described above, the IGMP report packet containing the updated contents is reported to the corresponding router through the corresponding upstream interface. According to FIG. 3B, since the merge information of the third upstream interface u3 is updated, An IGMP report corresponding to 225.1.1.2 is forwarded to the third multicast router 304 via the third upstream interface u3. As a result, in FIG. 3A, the host (not shown) under the second downstream interface d2, which has received 225.1.1.2 related service through the second multicast router 302 and the second upstream interface u2, is connected to the third multicast router. Through the cast router 304 and the third upstream interface u3, it is possible to continuously receive 225.1.1.2 related services.

도 3c를 참조하여, 본 발명의 일실시예에 따른 IGMP 프락시 기기의 동작을 설명하면 다음과 같다. 도 3c는 도 3d와 같이 동작하던 IGMP 프락시 기기(310)가 제2 업스트림 인터페이스(u2)의 사용 가능을 감지하여 대처하는 동작을 설명하기 위한 도면이다.Referring to Figure 3c, the operation of the IGMP proxy device according to an embodiment of the present invention will be described. FIG. 3C is a diagram for describing an operation in which the IGMP proxy device 310 operating as shown in FIG. 3D detects and copes with the availability of the second upstream interface u2.

여기서, 사용 가능한 업스트림 인터페이스의 개수가 증가하는 경우의 예로는, 업스트림 인터페이스 관련 장애가 해소됨을 발견한 경우, 장비 관리자가 임의로 새로운 업스트림 인터페이스에 대한 연결을 수행한 경우를 들 수 있으나, 반드시 이에 한정되는 것은 아니다.Here, an example of an increase in the number of available upstream interfaces may include a case in which an equipment manager arbitrarily connects to a new upstream interface when it detects that an upstream interface-related failure is resolved. no.

IGMP 프락시 기기(310)는 제2 업스트림 인터페이스(u2)의 사용 가능을 감지하면, 멤버쉽 데이터베이스(350)에 포함된 멀티캐스트 그룹 주소들을 분산시켜야 하는데, 도 3c의 실시예는 제3 업스트림 인터페이스(u3)가 담당하던 225.1.1.2가 제2 업스트림 인터페이스(u2)의 병합 정보로 옮겨진 것을 알 수 있다.When the IGMP proxy device 310 detects the availability of the second upstream interface u2, the IGMP proxy device 310 should distribute the multicast group addresses included in the membership database 350. The embodiment of FIG. 3C illustrates the third upstream interface u3. It can be seen that 225.1.1.2, which was in charge of), has been moved to the merge information of the second upstream interface u2.

이렇게 멤버쉽 데이터베이스(350)를 갱신한 후, 갱신된 내용을 담은 IGMP 보고 패킷은 해당 업스트림 인터페이스를 통하여 해당 멀티캐스트 라우터에 보고되는 데, 도 3c에 따르면, 제2 업스트림 인터페이스(u2)의 병합 정보가 갱신되었으므로, 225.1.1.2에 해당하는 IGMP 보고가 제2 업스트림 인터페이스(u2)를 통하여 제2 멀티캐스트 라우터(302)로 전달된다. 그 결과, 도 3b에서 제3 멀티캐스트 라우터(304) 및 제3 업스트림 인터페이스(u3)를 통해 225.1.1.2 관련 서비스를 받던 제2 다운스트림 인터페이스(d2) 하의 호스트(미도시)는 제2 멀티캐스트 라우터(302) 및 제2 상향 스트림 인터페이스(u2)를 통해 225.1.1.2 관련 서비스를 지속적으로 받을 수 있게 된다.After updating the membership database 350 as described above, the IGMP report packet including the updated contents is reported to the corresponding multicast router through the corresponding upstream interface. According to FIG. 3C, merge information of the second upstream interface u2 is stored. Since it has been updated, an IGMP report corresponding to 225.1.1.2 is forwarded to the second multicast router 302 via the second upstream interface u2. As a result, in FIG. 3B, the host (not shown) under the second downstream interface d2, which has received the 225.1.1.2 related service through the third multicast router 304 and the third upstream interface u3, is assigned a second multicast. Through the router 302 and the second upstream interface u2, 225.1.1.2 related services can be continuously received.

한편, 제3 업스트림 인터페이스(u3)의 병합 정보도 갱신되었으므로, 삭제된 멀티캐스트 그룹 주소 225.1.1.2와 관련된 IGMP 탈퇴 보고 패킷을 제3 멀티캐스트 라우터(304)에 전달하는 동작도 수행될 수 있음은 이 분야에 종사하는 자라면 충분히 이해할 수 있다.Meanwhile, since the merge information of the third upstream interface u3 is also updated, an operation of forwarding the IGMP leave report packet associated with the deleted multicast group address 225.1.1.2 to the third multicast router 304 may also be performed. Anyone working in this field can fully understand.

상술한 바와 같이, IGMP 프락시 환경에서 복수의 업스트림 인터페이스들을 구비하고, 멀티캐스트 그룹에 따라 서로 다른 업스트림 인터페이스를 통하여 IGMP 보고 패킷을 해당 멀티캐스트 라우터에 전달함으로써, IGMP 프락시 기기 및 호스트들은 멀티캐스트 패킷을 분산/수신할 수 있게 된다. 이러한 방법은 부하 균등화(load balancing) 효과를 얻을 수 있어, 안정적인 멀티캐스트 서비스를 제공할 수 있다는 효과를 가진다.As described above, by providing a plurality of upstream interfaces in an IGMP proxy environment and forwarding the IGMP report packet to the corresponding multicast router through different upstream interfaces according to the multicast group, the IGMP proxy device and the host can transmit the multicast packet. It can be distributed / received. This method has an effect of providing load balancing and providing a stable multicast service.

이러한 부하 균등화 방법의 일실시예를 설명하자면 다음과 같다.One embodiment of such a load equalization method is as follows.

IGMP 프락시 기기가 IGMP 보고 패킷을 수신하면, 수신된 IGMP 보고 패킷에 포함된 멀티캐스트 그룹 주소를 키(key) 값으로 하여 해쉬(hash) 함수를 통해 해쉬 값을 얻어 내고, 이 해쉬 값을 hash-threshold 알고리즘에 적용하여 멀티캐스트 그룹 주소를 담당하는 업스트림 인터페이스를 결정할 수 있다. 이렇게 결정된 업스트림 인터페이스를 통해 수신된 IGMP 보고 패킷을 송신함으로써, IGMP 프락시 기기와 연결된 멀티캐스트 라우터들의 부하를 분산시킬 수 있다.When the IGMP Proxy device receives the IGMP Report packet, the hash value is obtained through a hash function using the multicast group address included in the received IGMP Report packet as a key value, and the hash value is hashed. It can be applied to the threshold algorithm to determine the upstream interface responsible for the multicast group address. By transmitting the IGMP report packet received through the determined upstream interface, it is possible to load balance the multicast routers connected to the IGMP proxy device.

업스트림 인터페이스를 결정하기 위한 해쉬 함수의 예로는, CRC(Cyclic Redundancy Check) 연산을 들 수 있다. 예컨대, 수신된 IGMP 보고 패킷에 포함된 멀티캐스트 그룹 주소에 CRC-8 연산을 적용하면, 8비트 해쉬 값이 얻어지고, 이러한 해쉬 값은 해쉬 값 영역(region)을 결정하는 데 사용된다. 도 5를 참조하여 후술하겠지만, 복수의 해쉬 값 영역은 복수의 업스트림 인터페이스에 일대일 맵핑된다.An example of a hash function for determining an upstream interface is a cyclic redundancy check (CRC) operation. For example, applying a CRC-8 operation to a multicast group address included in a received IGMP report packet results in an 8-bit hash value, which is used to determine the hash value region. As will be described later with reference to FIG. 5, a plurality of hash value regions are mapped one-to-one to a plurality of upstream interfaces.

사용 가능한 업스트림 인터페이스의 증가/감소하는 경우, IGMP 프락시 기기는 기존의 멀티캐스트 서비스를 지속적으로 제공하되, 기존 멀티캐스트 패킷의 전달 경로에 대한 영향을 최소화해야 한다. 그렇지 않을 경우, 네트워크에 속하는 멀티캐스트 라우터들은 잦은 경로 재설정 및 그에 따른 라우팅 정보 교환을 수행해야 하는 등 복잡한 문제를 야기한다. 이러한 점을 최소화하기 위해, 본 발명의 일실시 예에 따라 IGMP 프락시 기기는 hash-threshold 알고리즘을 사용한다.When increasing / decreasing the available upstream interface, the IGMP proxy device must continue to provide existing multicast services while minimizing the impact on the propagation path of the existing multicast packets. Otherwise, multicast routers belonging to the network cause complex problems such as frequent rerouting and thus routing information exchange. To minimize this, the IGMP Proxy device uses a hash-threshold algorithm in accordance with one embodiment of the present invention.

이러한 Hash-threshold 알고리즘의 특성을 설명하면 다음과 같다.The characteristics of this hash-threshold algorithm are as follows.

일례로, IGMP 프락시 기기에서 사용 가능한 업스트림 인터페이스가 5개 존재하고, 해쉬 함수를 통해서 얻을 수 있는 해쉬 값들의 개수가 40인 경우(즉, 해쉬 값 공간의 크기가 40인 경우), 해쉬 값 영역들 각각은 경로(즉, 사용 가능한 업스트림 인터페이스)와 일대일 매칭된다. 이 경우, 도 4a와 같이 해쉬 값 영역 마다 40/5개의 해쉬 값이 포함된다.For example, if there are five upstream interfaces available in an IGMP proxy device and the number of hash values obtained through the hash function is 40 (that is, the size of the hash value space is 40), the hash value regions Each matches one-to-one with a path (ie, an available upstream interface). In this case, 40/5 hash values are included in each hash value region as shown in FIG. 4A.

도 4a를 참조하면, 해쉬 값 영역 당 8개의 해쉬 값이 할당되고, 5개의 해쉬 값 영역은 동일한 영역 사이즈 8을 가지고 있음을 알 수 있다.Referring to FIG. 4A, it can be seen that eight hash values are allocated per hash value region, and that five hash value regions have the same region size 8. FIG.

도 4a와 같이 5개의 경로가 사용 가능하다가 하나의 경로(예컨대, 경로 3)에서 사용 불가능한 이벤트가 발생한 경우, 도 4b와 같이 변경된다.When five paths are available as shown in FIG. 4A and an unusable event occurs in one path (eg, path 3), the path is changed as shown in FIG. 4B.

도 4b를 참조하면, 도 4a와는 달리 해쉬 값 영역 1에 속하는 해쉬 값들뿐만 아니라 해쉬 값 영역 2에 속하는 해쉬 값들의 1/4가 경로 1에 맵핑됨을 알 수 있다. 나머지 해쉬 값 영역에 대해서도 마찬가지로 설명된다. 즉, 여러 경로 중 해쉬 값 영역 3에 해당하는 업스트림 인터페이스의 삭제에 따라 total disruption은 1/5 x (1/4 + 1/2 + 1/2 + 1/4) = 3/10이다.Referring to FIG. 4B, unlike FIG. 4A, not only hash values belonging to hash value region 1 but also 1/4 of hash values belonging to hash value region 2 are mapped to path 1. The rest of the hash value region is similarly described. That is, the total disruption is 1/5 x (1/4 + 1/2 + 1/2 + 1/4) = 3/10 according to the deletion of the upstream interface corresponding to the hash value region 3 of the various paths.

hash-threshold 알고리즘의 이러한 특성은 사용 가능한 업스트림 인터페이스의 개수 변화가 N -> N-1, N -> N+1 일 때 모두 성립되며, total disruption은 최소 1/4에서 최대 1/2의 값이 된다 This characteristic of the hash-threshold algorithm is established when the number of available upstream interfaces changes from N-> N-1, N-> N + 1, and the total disruption is between a minimum of 1/4 and a maximum of 1/2. do

도 5는 본 발명의 일실시예에 따른 업스트림 인터페이스의 결정 과정을 설명하기 위한 도면이다.5 is a view for explaining a determination process of the upstream interface according to an embodiment of the present invention.

IGMP 프락시 기기의 다운스트림 인터페이스에서 IGMP 보고 패킷(500)이 수신되면 IGMP 프락시 기기는 IGMP 보고 패킷(500)에 포함된 멀티캐스트 그룹 주소에 CRC-8연산을 수행하여, 8비트 CRC 값을 얻는다. 여기서, CRC-8 연산 및 8비트 CRC 값이 상술한 해쉬 함수 및 해쉬 값의 예에 해당한다.When the IGMP report packet 500 is received at the downstream interface of the IGMP proxy device, the IGMP proxy device performs CRC-8 operation on the multicast group address included in the IGMP report packet 500 to obtain an 8-bit CRC value. Here, the CRC-8 operation and the 8-bit CRC value correspond to the above-described hash function and the hash value.

참조 부호 510는 CRC-8 연산을 통하여 나올 수 있는 모든 CRC 값들에 대한 공간 즉, 해쉬 값 공간을 나타내며, 이 해쉬 값 공간(510)은 사용 가능한 업스트림 인터페이스들의 개수만큼 나뉘어 제1 내지 제4 영역이 생성된다. 상술한 방법으로 얻어진 CRC 값은 제1 내지 제4 영역 중 어느 하나에 속하게 되는데, 그 속하는 영역에 맵핑되는 업스트림 인터페이스를 통하여 IGMP 보고 패킷(500)이 해당 멀티캐스트 라우터에 송신된다. Reference numeral 510 denotes a space, ie, a hash value space, for all CRC values that can be obtained through a CRC-8 operation, and the hash value space 510 is divided by the number of available upstream interfaces so that the first to fourth areas are divided. Is generated. The CRC value obtained by the above method belongs to any one of the first to fourth areas, and the IGMP report packet 500 is transmitted to the multicast router through an upstream interface mapped to the area.

이러한 본원 발명인 장치는 이해를 돕기 위하여 도면에 도시된 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.The inventors of the present invention have been described with reference to the embodiments shown in the drawings for clarity, but this is merely exemplary, and those skilled in the art may various modifications and other equivalent embodiments therefrom. Will understand. Therefore, the true technical protection scope of the present invention will be defined by the appended claims.

상기에서 제시한 본 발명의 실시예들은 다음의 장점들을 포함하는 효과를 가 질 수 있다. 다만, 본 발명의 모든 실시예들이 이를 전부 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Embodiments of the present invention presented above may have an effect including the following advantages. However, all the embodiments of the present invention are not meant to include them all, and thus the scope of the present invention should not be understood as being limited thereto.

본 발명의 일실시예에 따르면, 업스트림 인터페이스 또는 그 업스트림 인터페이스와 연결된 멀티캐스트 라우터의 부하를 분산시켜 안정적인 멀티캐스트 서비스를 제공할 수 있다.According to an embodiment of the present invention, it is possible to provide a stable multicast service by balancing the load of the upstream interface or the multicast router connected to the upstream interface.

또한, 본 발명의 일실시예에 따르면, 사용 가능한 업스트림 인터페이스들의 개수가 변경되더라도, 시그널링(예컨대, IGMP 보고 패킷의 송신 횟수, 멀티캐스트 라우터 간의 라우팅 정보 교환 등) 및 데이터베이스 변경(예컨대, 멤버쉽 데이터베이스가 갱신되는 내용의 정도 등)를 최소화할 수 있다.In addition, according to an embodiment of the present invention, even if the number of available upstream interfaces is changed, signaling (eg, number of transmission of IGMP report packets, routing information exchange between multicast routers, etc.) and database changes (eg, a membership database) may be performed. The amount of content being updated, etc. can be minimized.

도 1 및 도 2는 일반적인 IGMP 프락시를 설명하기 위한 개념도이다.1 and 2 are conceptual diagrams for explaining a general IGMP proxy.

도 3a 내지 도 3c는 본 발명의 일실시예에 따른 IGMP 프락시 기기의 동작을 설명하기 위한 도면이다. 3A to 3C are diagrams for describing an operation of an IGMP proxy device according to an embodiment of the present invention.

도 4a 및 4b는 본 발명의 일실시예에 따른 해쉬 함수 및 hash-threshold 알고리즘을 설명하기 위한 도면이다.4A and 4B illustrate a hash function and a hash-threshold algorithm according to an embodiment of the present invention.

도 5는 본 발명의 일실시예에 따른 업스트림 인터페이스의 결정 과정을 설명하기 위한 도면이다.5 is a view for explaining a determination process of the upstream interface according to an embodiment of the present invention.

Claims (7)

N(1보다 큰 자연수) 개의 업스트림 인터페이스들;N (natural numbers greater than 1) upstream interfaces; 적어도 하나의 다운스트림 인터페이스; 및At least one downstream interface; And 상기 업스트림 인터페이스들의 부하를 균등화하기 위해, 상기 업스트림 인터페이스들과 상기 적어도 하나의 다운스트림 인터페이스 간의 연결 관계를 스위칭하는 제어부를 포함하는 것을 특징으로 하는 인터넷 그룹 관리 프로토콜 프락시 장치.And a control unit for switching a connection relationship between the upstream interfaces and the at least one downstream interface to equalize the load of the upstream interfaces. 제1항에 있어서, 상기 제어부는,The method of claim 1, wherein the control unit, 상기 적어도 하나의 다운스트림 인터페이스에서 패킷이 수신되어 IGMP 보고 패킷을 송신할 이벤트가 발생된 경우, 상기 수신된 패킷에 포함된 멀티캐스트 그룹 주소에 hash-threshold 알고리즘을 적용하여 상기 복수의 업스트림 인터페이스들 중 하나를 선택하고, 상기 선택된 업스트림 인터페이스를 통하여 상기 IGMP 보고 패킷을 송신하는 것을 특징으로 하는 인터넷 그룹 관리 프로토콜 프락시 장치.When a packet is received at the at least one downstream interface and an event for transmitting an IGMP report packet is generated, a hash-threshold algorithm is applied to a multicast group address included in the received packet to apply one of the plurality of upstream interfaces. Select one, and transmit the IGMP report packet via the selected upstream interface. 제2항에 있어서, 상기 제어부는The method of claim 2, wherein the control unit 상기 업스트림 인터페이스들 중에서, M(1보다 크고, N보다 작거나 같은 자연수)개의 사용 가능한 업스트림 인터페이스들이 있는 경우,Among the upstream interfaces, if there are M (natural numbers greater than 1 and less than or equal to N) available upstream interfaces, 해쉬 값들의 공간(space)을 M개로 분할하여 얻어지는 M개의 영역들을 상기 사용 가능한 업스트림 인터페이스들에 일대일 맵핑하고,Mapping M regions obtained by dividing a space of hash values into M one-to-one to the available upstream interfaces, 상기 영역들 중에서, 상기 멀티캐스트 그룹 주소로부터 산출되는 해쉬 값을 포함하는 영역에 맵핑된 업스트림 인터페이스를 통하여 상기 IGMP 보고 패킷을 송신하는 것을 특징으로 하는 인터넷 그룹 관리 프로토콜 프락시 장치.And transmitting the IGMP report packet through an upstream interface mapped to an area including a hash value calculated from the multicast group address among the areas. 제3항에 있어서,The method of claim 3, 상기 해쉬 값은 상기 멀티캐스트 그룹 주소에 CRC 연산을 가하여 얻어지는 CRC 값이고,The hash value is a CRC value obtained by applying a CRC operation to the multicast group address, 상기 해쉬 값들의 공간은 상기 CRC 연산으로 얻어지는 CRC 값들을 포함하는 공간인 것을 특징으로 하는 인터넷 그룹 관리 프로토콜 프락시 장치.And the space of hash values is a space including CRC values obtained by the CRC operation. 제2항에 있어서, The method of claim 2, 상기 업스트림 인터페이스들 중 적어도 하나에 대한 병합 정보를 저장하기 위한 멤버쉽 데이터베이스를 더 포함하고,A membership database for storing merge information for at least one of the upstream interfaces, 상기 이벤트는 상기 수신된 패킷에 포함된 멀티캐스트 그룹 주소가 상기 멤버쉽 데이터베이스에 없는 경우를 포함하고,The event includes a case in which the multicast group address included in the received packet is not in the membership database, 상기 병합 정보는 해당 업스트림 인터페이스와 연결된 적어도 하나의 다운스트림 인터페이스의 가입 리스트를 병합한 정보이고,The merging information is information obtained by merging subscription lists of at least one downstream interface connected with the corresponding upstream interface. 상기 제어부는 상기 멀티캐스트 그룹 주소를 상기 선택된 업스트림 인터페이스의 병합 정보에 포함시키는 것을 특징으로 하는 인터넷 그룹 관리 프로토콜 프락 시 장치.And the control unit includes the multicast group address in merge information of the selected upstream interface. N(1보다 큰 자연수) 개의 업스트림 인터페이스들;N (natural numbers greater than 1) upstream interfaces; 적어도 하나의 다운스트림 인터페이스;At least one downstream interface; 상기 업스트림 인터페이스들 중에서, M(1보다 크고, N보다 작거나 같은 자연수)개의 사용 가능한 업스트림 인터페이스들을 감지하고, 상기 사용 가능한 업스트림 인터페이스들과 상기 적어도 하나의 다운스트림 인터페이스 간의 연결 관계를 스위칭하는 제어부를 포함하는 것을 특징으로 하는 인터넷 그룹 관리 프로토콜 프락시 장치.Among the upstream interfaces, a control unit for detecting M (natural number greater than 1, less than or equal to N) usable upstream interfaces, and switching the connection relationship between the available upstream interfaces and the at least one downstream interface; And an Internet group management protocol proxy device. 제6항에 있어서, The method of claim 6, 상기 업스트림 인터페이스들 중 적어도 하나에 대한 병합 정보를 저장하기 위한 멤버쉽 데이터베이스를 더 포함하고,A membership database for storing merge information for at least one of the upstream interfaces, 상기 제어부는, M 값이 변동되는 이벤트가 발생한 경우, hash-threshold 알고리즘을 사용하여 상기 사용 가능한 업스트림 인터페이스들의 부하가 균등화되도록 상기 멤버쉽 데이터베이스를 갱신하고, 갱신된 병합 정보를 가진 업스트림 인터페이스를 통하여 해당 IGMP 보고 패킷을 송신하고,The control unit may update the membership database so that the load of the available upstream interfaces is equalized by using a hash-threshold algorithm when an event in which the value of M changes is generated, and corresponding IGMP through the upstream interface having the updated merge information. Send a report packet, 상기 병합 정보는 해당 업스트림 인터페이스와 연결된 적어도 하나의 다운스트림 인터페이스의 가입 리스트를 병합한 정보인 것을 특징으로 하는 인터넷 그룹 관리 프로토콜 프락시 장치.And the merging information is information obtained by merging subscription lists of at least one downstream interface connected with the corresponding upstream interface.
KR1020080062628A 2008-06-30 2008-06-30 apparatus for Internet Group Management Protocol Proxy KR100975018B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080062628A KR100975018B1 (en) 2008-06-30 2008-06-30 apparatus for Internet Group Management Protocol Proxy

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080062628A KR100975018B1 (en) 2008-06-30 2008-06-30 apparatus for Internet Group Management Protocol Proxy

Publications (2)

Publication Number Publication Date
KR20100002657A true KR20100002657A (en) 2010-01-07
KR100975018B1 KR100975018B1 (en) 2010-08-11

Family

ID=41812663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080062628A KR100975018B1 (en) 2008-06-30 2008-06-30 apparatus for Internet Group Management Protocol Proxy

Country Status (1)

Country Link
KR (1) KR100975018B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021073318A1 (en) * 2019-10-16 2021-04-22 中兴通讯股份有限公司 Multicast user access method, electronic device, and storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030067917A1 (en) 2001-10-04 2003-04-10 Adc Broadband Access Systems, Inc. IGMP proxy
JP2006101471A (en) 2004-09-06 2006-04-13 Hitachi Communication Technologies Ltd Multicast redundant path router, multicast redundant method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021073318A1 (en) * 2019-10-16 2021-04-22 中兴通讯股份有限公司 Multicast user access method, electronic device, and storage medium

Also Published As

Publication number Publication date
KR100975018B1 (en) 2010-08-11

Similar Documents

Publication Publication Date Title
US10148554B2 (en) System and methods for load placement in data centers
US20190222538A1 (en) Packet Processing Method, Computing Device, and Packet Processing Apparatus
CN101658001B (en) Multicast distribution system and multicast distribution method
US9065768B2 (en) Apparatus for a high performance and highly available multi-controllers in a single SDN/OpenFlow network
KR101317969B1 (en) Inter-node link aggregation system and method
US11509584B2 (en) Routing method, related device, and system
CN110061915B (en) Method and system for virtual link aggregation across multiple fabric switches
JP2018191290A (en) Method, apparatus, and network system for implementing load balancing
US20140036726A1 (en) Network, data forwarding node, communication method, and program
KR20120072053A (en) Protection switching apparatus and method for protection switching of multiple protection group
US9401865B2 (en) Network appliance redundancy system, control apparatus, network appliance redundancy method and program
US20070070893A1 (en) Method and network node for self-regulating, autonomous and decentralized traffic distribution in a multipath network
CN101702689A (en) Transmission control method with balanced multicast service data load and access device thereof
KR102011021B1 (en) Method and framework for traffic engineering in network hypervisor of sdn-based network virtualization platform
CN103200117B (en) A kind of load-balancing method and device
KR101297498B1 (en) Method and apparatus for fault-resilient multicast and unicast in transport networks
US10680931B2 (en) Ingress gateway selection for a shortest path bridging network to support inter domain multicast routing
US7869351B2 (en) Communication techniques and generic layer 3 automatic switching protection
EP4009592A1 (en) Method for configuring port state and network device
JP2015012343A (en) Communication network and transfer node
EP2517422B1 (en) Grid router and network
KR100975018B1 (en) apparatus for Internet Group Management Protocol Proxy
US20170078193A1 (en) Communication system, control apparatus, communication apparatus, and communication method
KR101056030B1 (en) Internet Group Management Protocol Proxy Device
CN109218187B (en) Method and device for updating two-layer multicast forwarding table

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: 20131002

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140722

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160729

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170802

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180731

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190715

Year of fee payment: 10