KR20130068051A - 식별자 관리 장치 및 그것의 식별자 관리 방법 - Google Patents

식별자 관리 장치 및 그것의 식별자 관리 방법 Download PDF

Info

Publication number
KR20130068051A
KR20130068051A KR1020110135214A KR20110135214A KR20130068051A KR 20130068051 A KR20130068051 A KR 20130068051A KR 1020110135214 A KR1020110135214 A KR 1020110135214A KR 20110135214 A KR20110135214 A KR 20110135214A KR 20130068051 A KR20130068051 A KR 20130068051A
Authority
KR
South Korea
Prior art keywords
identifier
bloom filter
filter list
management device
identifier management
Prior art date
Application number
KR1020110135214A
Other languages
English (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 KR1020110135214A priority Critical patent/KR20130068051A/ko
Publication of KR20130068051A publication Critical patent/KR20130068051A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • H04L41/083Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for increasing network speed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/74591Address table lookup; Address filtering using content-addressable memories [CAM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명에서는 식별자 검색 성능 및 검색 속도가 향상된 식별자 관리 장치 및 그것의 식별자 관리 방법이 제공된다. 본 발명에 따른 식별자 관리 장치는 통신 단말기의 식별자 또는 식별자의 위치 정보를 저장하는 저장부, 식별자를 참조하여 식별자의 저장 장소를 나타내는 블룸 필터 목록을 등록 또는 갱신하는 블룸 필터 관리부 및 저장부 및 블룸 필터 관리부를 제어하는 제어부를 포함한다.

Description

식별자 관리 장치 및 그것의 식별자 관리 방법{IDENTIFIERS MANAGEMENT APPARATUS AND IDENTIFIERS MANAGEMENT METHOD THEREOF}
본 발명은 식별자 관리 장치 및 그것의 식별자 관리 방법에 관한 것으로서, 보다 상세하게는 블룸 필터(bloom fiter)를 이용하여 식별자를 관리하는 식별자 관리 장치 및 그것의 식별자 관리 방법에 관한 것이다.
인터넷 기술 분야에 있어서, 현재 사용되고 있는 IP주소의 기능을 단말기를 식별하기 위한 식별자(identifier) 및 네트워크 상에서의 단말기 위치를 나타내는 위치 지시자(locator)로 분리하는 개념이 제안되고 있다. 이를 위해, 식별자(identifier) 및 위치지시자(locator)를 상호 사상(mapping)하는 식별자 사상 시스템(identifier mapping system)이 사용될 수 있다. 식별자 사상 시스템은 단말기의 식별자를 참조하여 단말기의 위치지시자를 검색하고 검색된 결과를 사용자에게 제공하는 식별자 관리 장치를 포함할 수 있다.
그런데, 일반적으로 하나의 식별자 관리 장치가 검색하는 식별자의 수가 증가할수록, 식별자 검색 성능은 저하된다. 따라서, 하나의 식별자 관리 장치는 제한된 수의 식별자만을 검색하도록 하고, 그러한 복수의 식별자 관리 장치를 상호 연결하여 식별자 관리 시스템을 구축하는 방법이 제안되었다. 그러나, 이러한 경우에도, 검색할 식별자 수 증가에 따라 검색 시간이 지연되는 문제점은 여전히 남아있다.
본 발명의 목적은 식별자 검색 성능 및 검색 속도가 향상된 식별자 관리 장치 및 그것의 식별자 관리 방법을 제공하는 데 있다.
본 발명의 다른 목적은 식별자 수의 증가에 따른 성능 저하를 효과적으로 최소화하는 식별자 관리 장치 및 그것의 식별자 관리 방법을 제공하는 데 있다.
본 발명에 따른 식별자 관리 장치는 통신 단말기의 식별자(identifier) 또는 상기 식별자의 위치 정보를 저장하는 저장부; 상기 식별자를 참조하여 상기 식별자의 저장 장소를 나타내는 블룸 필터 목록을 등록 또는 갱신하는 블룸 필터 관리부; 및 상기 저장부 및 상기 블룸 필터 관리부를 제어하는 제어부를 포함한다.
실시 예로서, 상기 제어부는 외부 식별자 관리 장치의 블룸 필터 목록(이하, 외부 블룸 필터 목록이라 함)을 수신하여 상기 블룸 필터 목록을 등록 또는 갱신한다.
실시 예로서, 상기 외부 블룸 필터 목록은 상기 외부 식별자 관리 장치에 저장된 식별자를 나타낸다.
실시 예로서, 상기 외부 블룸 필터 목록은 상기 외부 식별자 관리 장치와 연결된 다른 식별자 관리 장치에 저장된 식별자를 나타낸다.
실시 예로서, 상기 제어부는 상기 등록 또는 갱신된 블룸 필터 목록을 다른 외부 식별자 관리 장치로 제공한다.
실시 예로서, 상기 제어부는 상기 블룸 필터 목록을 외부 식별자 관리 장치로 제공한다.
실시 예로서, 상기 제어부는 식별자 검색 요청에 따라 상기 저장부에 저장된 식별자를 검색하는 검색부를 포함한다.
실시 예로서, 상기 제어부는 검색 요청에 따라 상기 식별자 또는 상기 블룸 필터 목록을 검색하는 검색부를 포함한다.
실시 예로서, 상기 제어부는 상기 블룸 필터 목록의 검색 결과에 따라 상기 외부 식별자 관리 장치에 상기 검색 요청을 전송하는 제어기를 더 포함한다.
실시 예로서, 상기 블룸 필터 관리부는, 상기 식별자 또는 상기 외부 블룸 필터 목록을 참조하여 상기 블룸 필터 목록을 등록 또는 갱신하는 블룸 필터 처리부; 및 상기 등록 또는 갱신된 블룸 필터 목록을 저장하는 블룸 필터 메모리를 포함한다.
실시 예로서, 상기 블룸 필터 처리부는, 상기 식별자를 참조하여 해시 인덱스를 제공하는 해시 엔진; 및 상기 해시 인덱스를 참조하여 상기 블룸 필터 목록을 등록 또는 갱신하는 블룸 필터 등록기를 포함한다.
실시 예로서, 상기 저장부 또는 상기 블룸 필터 메모리는 TCAM(Ternary Content Addressable Memory)을 포함한다.
본 발명에 따른 식별자 관리 방법은 통신 단말기의 식별자(identifier)를 참조하여 상기 식별자의 저장 장소를 나타내는 블룸 필터 목록을 등록 또는 갱신하는 단계; 및 상기 등록 또는 갱신된 블룸 필터 목록을 외부 식별자 관리 장치에 제공하는 단계를 포함한다.
실시 예로서, 검색 요청에 따라 상기 식별자를 검색하는 단계를 더 포함한다.
실시 예로서, 상기 블룸 필터 목록을 등록 또는 갱신하는 단계는, 상기 식별자로부터 해시 인덱스를 검출하는 단계; 상기 해시 인덱스를 참조하여 상기 블룸 필터 목록을 등록 또는 갱신하는 단계; 및 상기 블룸 필터 목록을 메모리에 저장하는 단계를 포함한다.
실시 예로서, 상기 메모리는 TCAM(Ternary Content Addressable Memory)을 포함한다.
본 발명에 따른 식별자 관리 방법은 외부 식별자 관리 장치의 블룸 필터 목록(이하, 외부 블룸 필터 목록이라 함)를 수신하는 단계; 상기 외부 블룸 필터 목록을 참조하여 블룸 필터 목록을 등록 또는 갱신하는 단계; 및 상기 등록 또는 갱신된 블룸 필터 목록을 다른 외부 식별자 관리 장치에 제공하는 단계를 포함한다.
실시 예로서, 검색 요청에 따라 상기 블룸 필터 목록을 검색하는 단계; 및 상기 블룸 필터 목록의 검색 결과에 따라, 상기 검색 요청을 상기 외부 식별자 관리 장치 또는 상기 다른 외부 식별자 관리 장치에 전송하는 단계를 더 포함한다.
본 발명에 따르면 식별자 검색 성능 및 검색 속도가 향상될 수 있다.
또한, 식별자 수의 증가에 따른 검색 성능 저하를 효과적으로 최소화할 수 있다.
도 1은 식별자 관리 시스템의 계층 구조를 나타내는 도면이다.
도 2는 본 발명에 따른 식별자 관리 장치를 나타내는 블록도이다.
도 3은 도 2에 도시된 제어부를 나타내는 블록도이다.
도 4는 도 2에 도시된 블룸 필터 관리부를 나타내는 블록도이다.
도 5는 도 4에 도시된 블룸 필터 처리부를 나타내는 블록도이다.
도 6a 내지 도 6c는 본 발명의 식별자 관리 방법을 설명하기 위한 도면이다.
도 7은 블룸 필터 목록을 다른 식별자 관리 장치에 전송하는 방법을 설명하기 위한 도면이다.
도 8은 식별자 검색 요청을 다른 식별자 관리 장치에 전송하는 방법을 설명하기 위한 도면이다.
도 9는 본 발명의 제 1 실시 예에 따른 식별자 관리 방법을 나타내는 순서도이다.
도 10은 본 발명의 제 2 실시 예에 따른 식별자 관리 방법을 나타내는 순서도이다.
앞의 일반적인 설명 및 다음의 상세한 설명들은 모두 청구된 발명의 부가적인 설명을 제공하기 위한 예시적인 것이다. 그러므로 본 발명은 여기서 설명되는 실시 예에 한정되지 않고 다른 형태로 구체화될 수도 있다. 여기서 소개되는 실시 예는 개시된 내용이 철저하고 완전해 질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되는 것이다.
본 명세서에서, 어떤 부분이 어떤 구성요소를 포함한다고 언급되는 경우에, 이는 그 외의 다른 구성요소를 더 포함할 수도 있다는 것을 의미한다. 이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 식별자 관리 시스템의 계층 구조를 나타내는 도면이다. 도 1을 참조하면, 식별자 관리 시스템(10)은 복수의 식별자 관리 장치들(11, 12, 13, 14, 15, 16, 17, 18, 120)을 포함한다. 식별자 관리 장치들(13, 14, 15, 18, 120)은 각각 자신의 노드에 속한 통신 단말기들(13a, 14a ,15a ,18a, 19a)과 연결된다.
각각의 식별자 관리 장치는 자신의 노드에 포함되는 통신 단말기를 관리한다. 예를 들어, 식별자 관리 장치(13)는 자신의 노드에 연결된 통신 단말기(13a)의 식별자 또는 위치 정보(또는 위치 지시자)를 관리한다.
식별자 관리 시스템(10)에서 각 식별자 관리 장치들은 다른 식별자 관리 장치들과 링크를 통해 연결된다. 이하, 식별자 관리 시스템(10)의 계층 구조를 식별자 관리 장치(13)을 중심으로 설명한다.
식별자 관리 시스템(10)에서 식별자 관리 장치(13)와 상향 링크(13b)를 통해 연결된 상위 식별자 관리 장치(12)는 부모 식별자 관리 장치가 된다. 식별자 관리 장치(13)와 동료 링크(13c)를 통해 연결된 식별자 관리 장치(15)는 동료 식별자 관리 장치가된다. 식별자 관리 장치(13)와 시스템(10)의 계층 구조에서 하향 링크(13d)를 통해 연결된 하위 식별자 관리 장치(14)는 자식 식별자 관리 장치가 된다.
하나의 식별자 관리 장치는 복수의 부모 식별자 관리 장치, 복수의 동료 식별자 관리 장치 또는 복수의 자식 식별자 관리 장치를 가질 수 있다. 예를 들어 식별자 관리 장치(15)는 복수의 부모 식별자 관리 장치들(12, 16)을 갖는다. 그리고, 식별자 관리 장치(17)는 복수의 자식 식별자 관리 장치들(18, 120)을 갖는다.
식별자 관리 시스템(10)에서 식별자 관리 장치(13)는 상향 링크(13b), 동료 링크(13c) 또는 하향 링크(13d)를 통해 다른 식별자 관리 장치들(12, 14, 15)과 연결된다.
나아가서, 식별자 관리 장치(13)는 식별자 관리 장치들(12, 14, 15)을 경유하여 또 다른 식별자 관리 장치들(11, 16)과 연결될 수 있다. 예를 들어, 식별자 관리 장치(13)는 부모 식별자 관리 장치(12)의 상향 링크를 통해 식별자 관리 장치(11)와 연결될 수 있다. 마찬가지로, 식별자 관리 장치(13)는 동료 식별자 관리 장치(15)의 상향 링크를 통해 식별자 관리 장치(16)와 연결될 수 있다.
나아가서, 식별자 관리 장치(13)는 복수의 식별자 관리 장치들을 경유하여 다른 식별자 관리 장치들과 연결될 수 있다. 예를 들어, 식별자 관리 장치(13)는 복수의 식별자 관리 장치들(15, 16)을 순차적으로 경유하여 식별자 관리 장치(17)과 연결될 수 있다. 이와 같은 방법으로, 식별자 관리 시스템(10)에 포함된 모든 식별자 관리 장치들(11, 12, 13, 14, 15, 16, 17, 18, 120)은 서로 연결될 수 있다.
한편, 식별자 관리 시스템(10)에서 동료 또는 자식 식별자 관리 장치만을 갖고, 부모 식별자 관리 장치를 갖지 않는 식별자 관리 장치(11)는 최상위 식별자 관리 장치가 된다. 반면에, 부모 또는 동료 식별자 관리 장치만을 갖고 자식 식별자 관리 장치를 갖지 않는 식별자 관리 장치(14)는 최하위 식별자 관리 장치가 된다.
도 2는 본 발명에 따른 식별자 관리 장치를 나타내는 블록도이다. 도 2를 참조하면, 식별자 관리 장치(100)는 제어부(110), 블룸 필터 관리부(120) 및 저장부(130)를 포함한다.
식별자 관리 장치(100)는 상향 링크(up link), 동료 링크(peer link) 또는 하향 링크(down link)를 통해 부모 식별자 관리 장치, 동료 식별자 관리 장치 또는 자식 식별자 관리 장치와 연결된다. 단, 이는 예시적일 뿐, 식별자 관리 장치(100)는 부모, 동료 또는 자식 식별자 관리 장치를 갖지 않을 수 있다. 이러한 경우, 식별자 관리 장치(100)는 상향 링크(up link), 동료 링크(peer link) 또는 하향 링크(down link)와 인터페이스하지 않을 수 있다.
저장부(130)는 제어부(110)로부터 제공된 식별자 또는 위치 정보를 수신하여 저장한다. 실시 예로서, 저장부(130)는 불휘발성 메모리를 포함할 수 있다. 실시 예로서, 저장부(130)는 빠른 검색을 위해 TCAM(Ternary Content Addressable Memory)을 포함할 수 있다.
TCAM은 고속 라우터나 3계층 스위치에서 IP주소 검색의 라우팅 테이블을 저장하기 위해 특별히 제작된 메모리이다. TCAM은 구현이 간편하고, 동작 속도가 매우 빠른 메모리이다. TCAM의 구체적인 구성 및 동작은 당해 기술 분야에 널리 알려져 있으므로 그에 대한 설명은 생략한다.
블룸 필터 관리부(120)는 식별자 관리 장치(100)의 블룸 필터 목록을 등록(또는 생성)하거나 갱신한다. 그리고, 블룸 필터 관리부(120)는 등록 또는 갱신된 블룸 필터 목록을 저장한다. 블룸 필터 관리부(120)는 블룸 필터 목록의 저장을 위해 TCAM(Ternary Content Addressable Memory)을 포함할 수 있다.
블룸 필터 관리부(120)는 제어부(110)를 통해 통신 단말기(미도시)의 식별자 정보 또는 다른 식별자 관리 장치(미도시)의 블룸 필터 목록을 수신한다. 그리고, 식별자 정보 또는 다른 식별자 관리 장치의 블룸 필터 목록을 참조하여 자신의 블룸 필터 목록을 등록 또는 갱신한다.
블룸 필터 목록은 복수의 블룸 필터들을 포함하는 테이블일 수 있다. 실시 예로서, 블룸 필터 목록은 다른 식별자 관리 장치의 블룸 필터 목록을 포함할 수 있다. 블룸 필터 목록은 복수의 필드(field)를 포함할 수 있다. 각 필드는 자신의 블룸 필터, 하위 식별자 관리 장치의 블룸 필터 또는 동료 식별자 관리 장치의 블룸 필터를 포함할 수 있다.
제어부(110)는 저장부(130) 및 블룸 필터 관리부(120)의 동작을 제어하는 역할을 한다. 그리고, 제어부(110)는 자기 노드와 연결된 통신 단말기(미도시)의 식별자 및 위치 정보(또는 위치 지시자)를 수신하여 저장부(130)에 제공한다. 그리고, 블룸 필터 목록을 등록 또는 갱신하기 위한 식별자 정보를 블룸 필터 관리부(120)에 제공한다. 한편, 제어부(110)는 블룸 필터 목록을 등록 또는 갱신하기 위한 다른 식별자 관리 장치의 블룸 필터 목록을 블룸 필터 관리부(120)에 제공한다.
이를 위해, 제어부(110)는 동료 또는 하향 링크들(peer link, down link)과의 인터페이스를 통해 다른 식별자 관리 장치의 블룸 필터 목록을 수신한다. 이때, 다른 식별자 관리 장치는 자식 식별자 관리 장치(미도시) 또는 동료 식별자 관리 장치(미도시)일 수 있다.
한편, 제어부(110)는 상향 링크(up link)과의 인터페이스를 통해 자신의 블룸 필터 목록을 부모 식별자 관리 장치(미도시)에 제공한다.
그리고, 제어부(110)는 자기 노드와 연결된 통신 단말기(미도시)로부터 식별자 검색 요청을 받아, 식별자를 검색한다. 제어부(110)는 식별자 검색을 위해 저장부(130)에 저장된 식별자 또는 블룸 필터 관리부(120)에 저장된 블룸 필터 목록을 검색할 수 있다. 제어부(110)는 검색된 결과를 통신 단말기(미도시)에 제공한다. 제어부(110)의 구체적인 검색 동작에 대해서는 이하에서 설명한다.
먼저, 제어부(110)는 블룸 필터 관리부(120)로부터 블룸 필터 목록을 검색한다. 그리고, 대상 식별자가 자신이 관리하는 블룸 필터 목록에 등록되어 있는지 판단한다. 자신이 관리하는 블룸 필터 목록에 등록되어 있으면 검색 요청된 식별자(이하, 대상 식별자)가 저장부(130)에 저장되어 있는지 검색한다. 저장부(130)에 대상 식별자가 존재하면, 제어부(110)는 대상 식별자 및 대상 식별자의 위치 정보(이하, 대상 위치 정보)를 통신 단말기(미도시)에 제공한다.
자신이 관리하는 블룸 필터 목록에 대상 식별자가 존재하지 않으면, 제어부(110)는 블룸 필터 관리부(120)로부터 하위 또는 동료 블룸 필터 목록을 검색한다. 그리고, 대상 식별자가 블룸 필터 목록에 등록되어 있는지 판단한다. 대상 식별자가 블룸 필터 목록에 등록된 것은 하위 식별자 검색 장치 또는 동료 식별자 검색 장치에 대상 식별자가 저장되어 있음을 의미한다.
여기서, 하위 식별자 검색 장치는 동료 링크(peer link) 또는 하향 링크(down link)를 경유하여 연결될 수 있는 식별자 검색 장치들을 포함할 수 있다.
대상 식별자가 블룸 필터 목록에 등록되어 있으면, 제어부(110)는 동료 링크(peer link) 또는 하향 링크(down link)를 통해 대상 식별자 검색 요청을 전송한다. 그리고, 동료 식별자 검색 장치(미도시) 또는 하위 식별자 겸색 장치(미도시)로부터 대상 식별자 검색 결과를 수신하여 통신 단말기(미도시)에 제공한다.
그리고, 대상 식별자가 블룸 필터 목록에 등록되어 있지 않으면, 제어부(110)는 상향 링크(up link)를 통해 부모 식별자 관리 장치(미도시) 대상 식별자 검색 요청을 전송한다. 그리고, 부모 식별자 관리 장치(미도시)로부터 대상 식별자 검색 결과를 수신하여 통신 단말기(미도시)에 제공한다.
한편, 블룸 필터 목록을 등록, 갱신 또는 검색하는 구체적인 방법은 도 6a 내지 도 6c에 대한 설명과 함께 후술 될 것이다.
상기와 같은 구성에 따르면, 식별자 관리 장치(100)는 다른 식별자 관리 장치에 식별자 검색 요청을 선택적으로 전송한다. 즉, 블룸 필터 목록을 사전에 검색하여, 대상 식별자가 존재할 가능성이 있는 다른 식별자 관리 장치에만 검색 요청을 전송한다. 따라서, 식별자 검색 속도 및 검색 성능이 향상될 수 있다.
또한, 식별자 또는 블룸 필터 목록 저장 장치로서 TCAM을 사용하므로, 식별자 또는 블룸 필터 목록의 검색 속도가 향상될 수 있다.
도 3은 도 2에 도시된 제어부를 나타내는 블록도이다. 도 3을 참조하면, 제어부(110)는 제어기(111), 정책부(112), 검색부(113) 및 등록부(114)를 포함한다.
제어기(111)는 통신 단말기(미도시)로부터 식별자 또는 식별자의 위치 정보를 수신하여 등록부(114)에 제공한다. 그리고, 외부 링크들(up link, peer link, down link)을 통해 수신된 블룸 필터 목록(또는 블룸 필터)을 등록부(114)에 제공한다.
제어기(111)는 통신 단말기(미도시)의 요청에 따라 검색부(113)에 식별자 검색을 명령한다.
제어기(111)는 블룸 필터 관리부(120)에 저장된 블룸 필터 목록을 외부 링크들(up link, peer link, down link)을 통해 제공할 수 있다. 실시 예로서, 제어기(111)는 블룸 필터 관리부(120)에 저장된 블룸 필터 목록을 상향 링크(up link)를 통해 부모 식별자 관리 장치(미도시)에 제공한다.
한편, 제어기(111)는 등록부(114) 및 검색부(113)의 일반적인 동작을 제어할 수 있다.
등록부(114)는 제어기(111)로부터 식별자, 식별자의 위치 정보 또는 다른 식별자 관리 장치의 블룸 필터 목록을 제공받는다. 그리고, 등록부(114)는 식별자 또는 식별자의 위치 정보를 저장부(130)에 제공한다. 실시 예로서, 등록부(114)는 저장부(130)의 데이터 저장 동작을 제어할 수 있다.
한편, 등록부(114)는 식별자, 식별자의 위치 정보 또는 다른 식별자 관리 장치의 블룸 필터 목록을 블룸 필터 관리부(120)에 제공한다. 실시 예로서, 등록부(114)는 블룸 필터 관리부(120)의 블룸 필터 목록 등록 또는 갱신 동작을 제어할 수 있다.
검색부(113)는 제어기(111)의 검색 명령에 따라, 저장부(130)로부터 식별자 또는 식별자의 위치 정보를 검색한다. 또는, 검색부(113)는 제어기(111)의 검색 명령에 따라, 블룸 필터 관리부(120)로부터 블룸 필터 목록을 검색한다. 그리고, 검색부(113)는 검색 결과를 제어기(111)에 제공한다. 실시 예로서, 검색부(113)는 검색된 식별자, 식별자의 위치 정보 또는 블룸 필터 목록을 제어기(111)에 제공할 수 있다.
정책부(112)는 식별자 관리 장치(100)의 블룸 필터 목록을 제공할 범위를 결정한다. 즉, 정책부(112)는 식별자 관리 장치(100)의 블룸 필터 목록을 부모 식별자 관리 장치 또는 최상위 식별자 관리 장치까지 제공하도록 제어기(111)를 제어할 수 있다. 또는, 정책부(112)는 블룸 필터 목록을 중간의 특정 계층 단계(예를 들어, 부모 식별자 관리 장치의 부모 식별자 관리 장치가 위치한 계층 단계)까지 제공하도록 제어기(111)를 제어할 수 있다.
상기와 같은 구성에 따르면, 제어부(110)는 외부 링크들(up link, peer link, down link)과 인터페이스하고, 블룸 필터 관리부(120) 및 저장부(130)를 제어할 수 있다.
도 4는 도 2에 도시된 블룸 필터 관리부를 나타내는 블록도이다. 도 4를 참조하면, 블룸 필터 관리부(120)는 블룸 필터 처리부(121) 및 블룸 필터 메모리(122)를 포함한다.
블룸 필터 메모리(122)는 블룸 필터 목록을 저장한다. 실시 예로서, 블룸 필터 메모리(122)는 TCAM(Ternary Content Addressable Memory)을 포함할 수 있다.
블룸 필터 처리부(121)는 제어부(110)로부터 참조 자료(예를 들어, 식별자, 식별자의 위치 정보 또는 다른 식별자 관리 장치의 블룸 필터 목록)를 제공받는다. 그리고, 참조 자료를 참조하여, 블룸 필터 목록을 등록하거나 블룸 필터 메모리(122)에 저장된 블룸 필터 목록을 갱신한다.
블룸 필터 처리부(121)는 제어부(110)의 검색 명령을 참조하여, 블룸 필터 메모리(122)로부터 블룸 필터 목록을 검색한다. 그리고, 검색 결과를 제어부(110)에 제공한다.
블룸 필터 처리부(121)가 식별자를 참조하여 블룸 필터 목록을 등록, 갱신 또는 검색하는 구체적인 방법 및 동작은 도 6a 내지 도 6c에 대한 설명과 함께 후술될 것이다.
한편, 블룸 필터 처리부(121)에 다른 블룸 필터 목록이 제공되면, 블룸 필터 처리부(121)는 제공된 다른 블룸 필터 목록을 블룸 필터 메모리(122)에 저장된 블룸 필터 목록에 포함시킨다. 실시 예로서, 블룸 필터 메모리(122)에 저장된 블룸 필터 목록은 폴더 또는 테이블이 형태일 수 있다. 이 경우, 제공된 다른 블룸 필터 목록은 지정된 폴더 또는 테이블의 지정된 영역에 입력 또는 저장될 수 있다.
또한, 블룸 필터 처리부(121)는 블룸 필터 목록을 다른 식별자 검색 장치(예를 들어, 부모 식별자 검색 장치)에 제공하기 위해 블룸 필터 목록을 블룸 필터 메모리(122)로부터 읽어낸다. 그리고, 블룸 필터 처리부(121)는 읽어낸 블룸 필터 목록을 제어부(110)에 제공한다.
상기와 같은 구성에 따르면, 블룸 필터 관리부(120)는 블룸 필터 목록을 등록, 갱신 또는 검색한다. 그리고, 블룸 필터 관리부(120)는 블룸 필터 목록을 제어부(110)에 제공한다.
도 5는 도 4에 도시된 블룸 필터 처리부를 나타내는 블록도이다. 도 5를 참조하면, 블룸 필터 처리부(121)는 해시 엔진(121a) 및 블룸 필터 등록기(121b)를 포함한다.
해시 엔진(121a) 및 블룸 필터 등록기(121b)는 식별자(또는 식별자의 위치 정보)를 참조하여 블룸 필터 목록의 등록 또는 갱신하는 동작을 수행한다.
해시 엔진(121a)은 제어부(110)로부터 식별자(identifier)를 수신하여, 해시 인덱스(hash index)를 검출한다. 검출된 해시 인덱스(hash index)는 블룸 필터 등록기(121b)에 제공된다.
해시 엔진(121a)은 해시 함수(hash function) 연산을 통해 식별자(identifier)로부터 식별자를 간략화한 해시 인덱스(hash index)를 검출한다. 해시 함수(hash function)의 예로서는 제산 잔여(division-reminder) 해시 함수, 중간 제곱(mid-square) 해시 함수, 중첩(folding) 해시 함수, 숫자 이동 (shifting) 해수 함수등이 있다. 다만 이는 실시 예로서, 해시 엔진(121a)은 이외의 다양한 해시 함수 연산을 수행할 수 있다.
해시 함수 및 해시 함수 연산에 대한 구체적인 내용은 당해 기술 분야에서 널리 알려져 있으므로 그에 대한 설명은 생략한다.
블룸 필터 등록기(121b)는 해시 인덱스(hash index)를 참조하여 블룸 필터 목록을 등록 또는 갱신한다. 해시 인덱스(hash index)는 식별자 정보를 담고 있는 값이므로, 등록 또는 갱신된 블룸 필터 목록은 식별자 정보를 포함하게 된다.
해시 인덱스를 참조하여 블룸 필터 목록을 등록 또는 갱신하는 구체적인 방법은 후술될 것이다.
한편, 앞서 설명한 바와 같이 블룸 필터 처리부(121)는 블룸 필터 메모리(122)로부터 블룸 필터 목록을 검색할 수 있다. 또한, 블룸 필터 처리부(121)는 블룸 필터 메모리(122)로부터 블룸 필터 목록을 읽어내어 제어부(110)에 제공할 수 있다.
도 6a 내지 도 6c는 본 발명의 식별자 관리 방법을 설명하기 위한 도면이다. 도 6a를 참조하면, 해시 인덱스 테이블(210)은 복수의 식별자들(Xi, Xj, Xk)에 대한 해시 인덱스들을 포함한다. 도 6b는 식별자의 해시 인덱스를 참조하여 블룸 필터를 등록 또는 갱신하는 방법을 나타낸다. 도 6c는 블룸 필터로부터 식별자 정보를 검색하는 방법을 나타낸다.
도 6a에는 복수의 식별자들(Xi, Xj, Xk)에 대응하는 해시 인덱스들이 나타나있다. 본 실시 예에서는, 각 식별자마다 두 개의 3-bit 해시 인덱스를 갖는다. 그러나 이는 예시적인 것으로서, 각 식별자가 갖는 해시 인덱스의 수 또는 크기는 달라질 수 있다. 실시 예로서, 각 식별자가 갖는 해시 인덱스의 수 또는 크기는 해시 엔진(121a, 도 5 참조)이 수행하는 해시 함수 연산의 종류에 따라 달라질 수 있다.
도 6a의 해시 엔진 테이블(210)은 해시 엔진(121a)이 식별자를 참조하여 해시 함수 연산한 결과를 나타낸다. 해시 엔진 테이블(210)은 세 개의 필드들(211, 212, 213)을 갖는다. 제 1 필드(211)는 식별자를 나타낸다. 제 2 필드(212) 및 제 3 필드(213)는 각각 식별자에 대응되는 제 1 해시 인덱스 및 제 2 해시 인덱스를 나타낸다.
해시 엔진 테이블(210)에 따르면, 식별자(Xi)는 해시 인덱스로서 101 및 011을 갖는다. 식별자(Xj)는 해시 인덱스로서 010 및 110를 갖는다. 식별자(Xk)는 해시 인덱스로서 101 및 110을 갖는다. 실시 예로서, 각 해시 인덱스는 블룸 필터의 비트를 나타낼 수 있다. 예를 들어, 해시 인덱스 101은 십진수로서 5를 의미하고, 이는 블룸 필터의 5번째 비트를 나타낼 수 있다.
도 6b에는 해시 인덱스를 참조하여 블룸 필터를 등록하는 방법이 나타나 있다. 도 6b에는 블룸 필터의 등록 방법에 대해서만 나와있지만, 블룸 필터의 갱신 방법도 마찬가지 방법으로 설명될 수 있다. 가령, 블룸 필터의 등록시, 초기 블룸 필터는 모든 비트가 0 데이터로 채워져 있다.
반면에, 블룸 필터의 등록시, 초기 블룸 필터는 일부 또는 모든 비트에 1 데이터가 채워질 수 있다. 즉, 종전의 등록된 블룸 필터가 블룸 필터 갱신을 위한 초기 블룸 필터가 된다. 이를 제외하면, 블룸 필터의 등록 및 갱신 동작은 실질적으로 동일한 방법에 의해 수행된다.
한편, 여기서 블룸 필터는 블룸 필터 목록에 포함된 데이터의 일부 또는 전부를 의미한다. 실시 예로서, 블룸 필터 목록에는 복수 식별자 관리 장치의 식별자 저장 정보가 포함된다. 그리고, 블룸 필터는 블룸 필터 목록의 일부로서 하나의 식별자 관리 장치 또는 그것과 연결된 다른 하위 식별자 관리 장치의 식별자 저장 정보를 포함할 수 있다.
도 6b를 참조하면, 블룸 필터 등록기(121b)는 블룸 필터 메모리(122)에 저장된 블룸 필터 목록을 읽어들인다. 또는, 블룸 필터 등록기(121b)는 블룸 필터 메모리(122)를 새롭게 생성할 수 있다.
블룸 필터 등록기(121b)는 블룸 필터 목록으로부터 등록할 블룸 필터(220)를 선택한다. 실시 예로서, 등록할 블룸 필터(220)는 블룸 필터 등록기(121b)가 포함된 식별자 관리 장치(100, 도 2 참조)가 저장하는 식별자들을 나타내는 블룸 필터일 수 있다.
그리고, 블룸 필터 등록기(121b)는 해시 인덱스들을 참조하여 블룸 필터(220)에 식별자를 등록한다. 블룸 필터 등록기(121b)는 식별자를 등록하기 위해 식별자의 해시 인덱스에 해당하는 비트를 1로 변경한다.
여기서는, 식별자(Xi)를 예로써 식별자 등록 과정이 설명된다. 식별자(Xi)의 해시 인덱스는 101 및 011이고, 이는 십진수 5 및 3과 같다. 따라서, 블룸 필터 등록기(121b)는 블룸 필터(220)의 3번째 비트 및 5번째 비트를 1로 변경한다. 한편, 식별자의 등록 동작에 있어서, 블룸 필터의 비트 변경은 합(OR) 연산이다. 예를 들어, 등록될 식별자의 해시 인덱스가 십진수 k를 나타내는 경우, 블룸 필터의 k 번째 비트가 1로 변경되어야 한다. 이때, 초기 블룸 필터의 k번째 비트가 이미 1로 되었다면, k번째 비트는 변경되지 않는다. 반면에, 초기 블룸 필터의 k번째 비트가 0이라면, k번째 비트는 1로 변경되어야 한다.
마찬가지로, 식별자(Xj)를 블룸 필터(220)에 등록하는 과정도 동일하게 진행된다. 식별자(Xj)의 해시 인덱스는 010 및 110이고, 이는 십진수 2 및 6과 같다. 따라서, 블룸 필터 등록기(121b)는 식별자(Xj)를 등록하기 위해 블룸 필터(220)의 2번째 비트 및 6번째 비트를 1로 변경한다.
등록된 블룸 필터(230)는 식별자들(Xi, Xj)이 등록된 후의 블룸 필터를 나타낸다. 등록된 블룸 필터(230)에는 식별자들(Xi, Xj)의 해시 인덱스에 해당하는 비트가 1로 설정된다.
도 6c는 블룸 필터 목록으로부터 식별자를 검색하는 방법을 나타내는 도면이다. 도 6c를 참조하면 블룸 필터(230)로부터 식별자(Xk)를 검색하는 방법이 나타난다.
식별자(Xk)를 검색하기 위해 블룸 필터 관리부(120, 도 4 참조)는 블룸 필터 메모리(122, 도 4 참조)로부터 블룸 필터 목록을 읽어들인다. 그리고, 블룸 필터 목록으로부터 식별자(Xk)를 검색할 블룸 필터(230)를 선택한다. 검색할 블룸 필터(230)는 특정 식별자 관리 장치(예를 들면, 동료 링크 또는 하위 링크를 통해 연결된 식별자 관리 장치들 중 어느 한 장치)에 대한 블룸 필터일 수 있다. 예를 들어, 블룸 필터 목록이 폴더 또는 테이블 형태를 가지는 경우를 가정한다. 이때, 자식 식별자 관리 장치를 검색하기 위해, 블룸 필터 목록 중 자식 식별자 관리 장치에 할당된 폴더 또는 테이블에 저장된 블룸 필터가 검색할 블룸 필터(230)가 될 수 있다.
블룸 필터 관리부(120)는 식별자(Xk)의 해시 인덱스를 참조하여 블룸 필터(230)의 비트 데이터를 검증한다. 예를 들어, 도 6a를 참조하면 식별자(Xk)의 해시 인덱스들은 101 및 110이고, 이는 십진수 5 및 6을 나타낸다.
블룸 필터 관리부(120)는 해시 인덱스들이 나타내는 곳에 위치한 비트가 1인지 또는 0인지 여부를 검증한다. 즉, 블룸 필터 관리부(120)는 블룸 필터(230)의 5번째 비트 및 6번째 비트가 1인지 여부를 검증한다. 비트 데이터 검증 결과, 검증된 모든 비트 데이터가 1이면 해당 블룸 필터(230)에는 식별자(Xk)가 등록된 것으로 추정한다. 여기서는, 블룸 필터(230)의 5번째 비트 및 6번째 비트가 모두 1이므로 식별자(Xk)가 블룸 필터(230)에 등록된 것으로 추정한다. 한편, 블룸 필터(230)에 어떤 식별자가 등록되었다는 의미는 블룸 필터(230)가 나타내는 식별자 관리 장치가 해당 식별자를 저장하고 있다는 것을 나타낸다.
상기와 같은 블룸 필터 관리 방법을 통해서, 식별자 관리 장치(100)는 식별자 관리 장치(100)에 저장된 식별자를 블룸 필터 목록에 등록 또는 갱신할 수 있다. 또한, 식별자 관리 장치(100)는 다른 식별자 관리 장치로부터 제공된 블룸 필터 목록을 참조하여 자신의 블룸 필터 목록을 등록 또는 갱신할 수 있다. 또한, 식별자 관리 장치(100)는 자신의 블룸 필터 목록을 검색하여, 특정 식별자가 자신 또는 다른 식별자 관리 장치에 저장되어 있는지 여부를 추정할 수 있다.
도 7은 블룸 필터 목록을 다른 식별자 관리 장치에 전송하는 방법을 설명하기 위한 도면이다. 도 7을 참조하면, 식별자 관리 시스템(300)은 복수의 식별자 관리 장치(310, 320, 330, 340, 350, 360, 370, 380, 390)을 포함한다. 그리고, 식별자 관리 장치(330)은 식별자 관리 장치(330)의 블룸 필터 목록(332)을 포함한다.
식별자 관리 장치(330)는 자신이 저장하는 식별자 저장 정보를 다른 식별자 관리 장치들에 제공한다. 실시 예로서, 이를 위해 식별자 관리 장치(330)는 블룸 필터 목록(332)을 상향 링크(330b) 및 동료 링크(330a)를 통해 제공할 수 있다.
식별자 관리 장치(330)가 블룸 필터 목록(332)를 제공하는 범위는 식별자 관리 장치(330)에 포함된 정책부(112, 도 3 참조)에 의해 결정된다. 예를 들어, 정책부(112)가 인접 노드까지만 블룸 필터 목록(332)을 전송하도록 결정하면, 블룸 필터 목록(332)은 인접한 식별자 관리 장치들(320, 350)에만 제공된다. 반면에, 정책부(112)가 차인접 노드까지 블룸 필터 목록(332)을 전송하도록 결정하면, 블룸 필터 목록(332)은 인접한 식별자 관리 장치들(320, 350) 및 그들과 인접한 식별자 관리 장치들(319, 360)에 제공된다.
제공된 블룸 필터 목록(332)은 다른 식별자 관리 장치들의 블룸 필터 목록을 등록 또는 갱신하는데 사용된다. 그리고, 다른 식별자 관리 장치들의 블룸 필터 목록은 식별자 관리 장치(330)의 블룸 필터 목록(332)을 포함하게 된다.
위와 같은 구성에 따르면, 식별자 관리 장치(330)의 블룸 필터 목록(332)이 다른 식별자 관리 장치에 제공될 수 있다. 따라서, 다른 식별자 관리 장치에서 식별자 관리 장치(330)의 식별자 저장 정보를 검색할 수 있다.
도 8은 식별자 검색 요청을 다른 식별자 관리 장치에 전송하는 방법을 설명하기 위한 도면이다. 도 8을 참조하면, 식별자 관리 시스템(400)은 복수의 식별자 관리 장치들(410, 420, 430, 440, 450, 460, 470, 480, 490)을 포함한다. 그리고, 식별자 관리 장치(430)는 자신의 블룸 필터 목록(432)를 포함한다.
식별자 관리 장치(430)는 자신의 노드에 연결된 통신 단말기(431)로부터 식별자 검색 요청을 수신하여, 식별자를 검색한다.
이를 위해, 식별자 관리 장치(430)는 우선적으로 자신의 저장부(미도시)에 저장된 식별자에 대한 블룸 필터 목록으로부터 식별자를 검색한다. 검색 요청된 식별자(이하, 대상 식별자)를 자신이 저장하고 있으면, 식별자 관리 장치(430)는 통신 단말기(431)에 대상 식별자 검색 결과 또는 대상 식별자의 위치 정보를 제공한다.
한편, 식별자 관리 장치(430)가 자신의 저장부(미도시)에 저장된 식별자에 대한 블룸 필터 목록으로부터 대상 식별자를 검색하지 못하면, 식별자 관리 장치(430)는 블룸 필터 목록(432)으로부터 대상 식별자를 검색한다. 블룸 필터 목록(432)으로부터 식별자를 검색하는 구체적인 방법은 위에서 설명한 바와 동일하다.
블룸 필터 목록(432)으로부터 대상 식별자가 검색되면, 관련된 식별자 관리 장치로 대상 식별자 검색 요청을 전송한다. 예를 들어, 대상 식별자가 통신 단말기(441)을 나타내며, 블룸 필터 목록(432)은 자식 식별자 관리 장치(440)의 블룸 필터 목록(이하, 자식 블룸 필터 목록)을 포함한다고 가정한다. 이 경우, 식별자 관리 장치(430)는 블룸 필터 목록(432)으로부터 자식 블룸 필터 목록을 선택한다.
그리고, 자식 블룸 필터 목록으로부터 대상 식별자가 검색되면, 식별자 관리 장치(430)는 자식 식별자 관리 장치(440)가 대상 식별자를 저장하고 있는 것으로 추정한다. 그리고, 식별자 관리 장치(440)는 대상 식별자 검색 요청을 자식 식별자 관리 장치(440)에 전송한다. 자식 식별자 관리 장치(440)는 대상 식별자를 검색하고, 검색 결과 또는 대상 식별자의 위치 정보를 식별자 관리 장치(430)에 전송한다. 자식 식별자 관리 장치(430)는 전송된 검색 결과 또는 대상 식별자의 우치 정보를 통신 단말기(431)에 제공한다.
한편, 자식 블룸 필터 목록과 마찬가지로 식별자 관리 장치(430)는 동료 식별자 관리 장치(450)의 블룸 필터 목록을 검색할 수 있다. 검색 결과, 대상 식별자가 검색되면 식별자 관리 장치(430)는 대상 식별자 검색 요청을 동료 식별자 관리 장치(450)에 전송한다. 그리고, 식별자 관리 장치(430)는 동료 식별자 관리 장치(450)로부터 검색 결과 또는 대상 식별자 위치 정보를 수신하여 통신 단말기(431)에 제공한다.
마찬가지 동작이 부모 식별자 관리 장치(420) 또는 조부모 식별자 관리 장치(410)에 대해서도 행해질 수 있다. 실시 예로서, 식별자 관리 시스템(400)에서 블룸 필터 목록의 제공이 하향 링크를 통해 이루어지지 않을 수 있다. 이 경우, 부모 또는 조부모 식별자 관리 장치(410, 420)에 대한 대상 식별자 검색 요청은 보충적으로 수행될 수 있다. 즉, 자식 또는 동료 식별자 관리 장치(430)에 의해 대상 식별자가 검색되지 않은 경우, 식별자 관리 장치(430)는 부모 또는 조부모 식별자 관리 장치(410, 420)에 대상 식별자 검색 요청을 전송한다. 이 경우, 식별자 관리 장치(430)는 부모 또는 조부모 식별자 관리 장치(410, 420)의 블룸 필터 목록을 참조하지 않고 대상 식별자 검색 요청을 전송한다.
한편, 본 발명의 블룸 필터 등록 또는 갱신 알고리즘에 따를 경우, 어떤 식별자 관리 장치가 대상 식별자를 저장하지 않는 경우에도, 어떤 식별자 관리 장치의 블룸 필터 목록으로부터 대상 식별자가 검색될 수 있다. 즉, 블룸 필터 목록을 이용한 식별자 검색 방법은 완벽한 정확도를 갖지 않는다. 구체적으로, 식별자 관리 장치가 대상 식별자를 저장하는 경우, 블룸 필터 목록로부터 정확하게 대상 식별자가 검색된다. 반면에, 식별자 관리 장치가 대상 식별자를 저장하지 않는 경우, 블룸 필터 목록으로부터 대상 식별자가 검색될 수도 있고 검색되지 않을 수도 있다. 이는, 블룸 필터 목록의 각 비트는 합(OR) 연산에 의해 등록 또는 갱신되기 때문이다.
따라서, 실시 예로서, 식별자 관리 장치(430)는 블룸 필터 목록에 저장된 각 블룸 필터들을 모두 검색하고, 대상 식별자가 검색된 모든 식별자 관리 장치들에 식별자 검색 요청을 전송할 수 있다.
위와 같은 구성에 따르면, 식별자 관리 장치(430)는 다른 식별자 관리 장치들에 대상 식별자 검색 요청을 전송할 수 있다. 나아가서, 식별자 관리 시스템(400)에서 전체적으로 대상 식별자 검색이 수행될 수 있다.
또한, 식별자 관리 장치(430)는 블룸 필터 목록(432)을 검색하여, 대상 식별자가 저장되어 있을 가능성이 있는 식별자 관리 장치에만 검색 요청을 전송한다. 따라서, 불필요한 검색 동작이 최소화되므로 식별자 관리 시스템의 성능 및 검색 속도가 향상된다. 그리고, 검색을 위한 식별자 관리 장치의 부하(load)도 감소될 수 있다. 또한, 식별자 수의 증가에 따른 검색 성능 저하를 효과적으로 최소화할 수 있다.
도 9는 본 발명의 제 1 실시 예에 따른 식별자 관리 방법을 나타내는 순서도이다. 도 9는 식별자 관리 장치의 블룸 필터 목록을 등록 또는 갱신하고, 블룸 필터 목록을 다른 식별자 관리 장치에 전송하는 방법을 제공한다. 도 9를 참조하면, 본 발명의 제 1 실시 예는 S110 단계 내지 S140 단계를 포함한다.
S110 단계에서, 식별자 관리 장치(100, 도 2 참조)는 식별자로부터 해시 인덱스를 검출한다. 해시 인덱스 검출은 해시 엔진(121a, 도 5 참조)에 의해 수행된다. 해시 인덱스의 구체적인 검출 방법 및 해시 엔진의 동작은 위에서 설명한 바와 동일한다.
S120 단계에서, 식별자 관리 장치(100)는 검출된 해시 인덱스를 참조하여 블룸 필터 목록을 설정한다. 구체적으로, 식별자 관리 장치(100)는 블룸 필터 목록 중 식별자가 등록될 블룸 필터를 선택한다. 그리고, 해시 인덱스가 나타내는 선택된 블룸 필터의 비트를 1로 변경한다. 이때, 비트를 변경하는 동작은 합(OR) 연산에 의해 수행된다. 즉, 변경 전 비트가 1 또는 0인 경우 모드에 대하 해당 비트를 1로 변경한다. 식별자 관리 장치(100)가 해시 인덱스를 참조하여 블룸 필터 목록을 설정(또는, 등록 또는 갱신)하는 방법은 위에서 설명한 바와 동일하다.
S130 단계에서, 식별자 관리 장치(100)는 블룸 필터 목록을 메모리에 저장한다. 실시 예로서, 블룸 필터 목록을 저장하는 메모리는 TCAM(Ternary Content Addressable Memory)을 포함할 수 있다.
S140 단계에서, 식별자 관리 장치(100)는 메모리에 저장된 블룸 필터 목록을 다른 식별자 관리 장치에 제공한다. 실시 예로서, 식별자 관리 장치(100)는 동료 또는 부모 링크를 통해 블룸 필터 목록을 동료 식별자 관리 장치 또는 부모 식별자 관리 장치에 제공할 수 있다.
상기와 같은 구성에 따르면, 식별자 관리 장치(100)가 저장하는 식별자를 블룸 필터 목록에 등록(또는 갱신)할 수 있다. 그리고, 식별자 관리 장치(100)는 자신(또는 자신과 연결된 다른 식별자 관리 장치)의 식별자 저장 정보를 블룸 필터 목록을 통해 다른 식별자 관리 장치에 제공할 수 있다.
도 10은 본 발명의 제 2 실시 예에 따른 식별자 관리 방법을 나타내는 순서도이다. 도 10은 식별자 관리 장치(또는, 식별자 관리 시스템)가 식별자를 검색하는 방법을 제공한다. 도 10을 참조하면, 본 발명의 제 2 실시 예는 S210 단계 내지 S270 단계를 포함한다.
S210 단계에서, 식별자 관리 장치(100, 도 2 참조)는 저장부(130, 도 2 참조)로부터 검색 요청을 받은 식별자(이하, 대상 식별자)를 검색한다.
S220 단계에서, 식별자 관리 장치(100)는 대상 식별자의 검색 여부를 판단한다. 대상 식별자가 검색되면, S230 단계로 진행한다. 대상 식별자가 검색되지 않으면 S240 단계로 진행한다.
S230 단계에서, 식별자 관리 장치(100)는 대상 식별자의 검색 결과를 출력한다. 검색 결과는 검색 요청을 한 통신 단말기(미도시)에 제공될 수 있다.
S240 단계에서, 식별자 관리 장치(100)는 다른 식별자 관리 장치에 대상 식별자 검색 요청을 전송하기 위해 블룸 필터 목록을 검색한다. 실시 예로서, 블룸 필터 목록의 검색은 검색 요청이 전송될 식별자 관리 장치의 수를 줄이기 위해 수행된다. 식별자 관리 장치(100)가 블룸 필터 목록으로부터 대상 식별자를 검색하는 구체적인 방법은 위에서 설명한 바와 동일하다.
S250 단계에서, 식별자 관리 장치(100)는 블룸 필터 목록 검색 결과를 판단한다. 대상 식별자가 검색된 블룸 필터가 존재하면 S260 단계로 진행한다. 대상 식별자가 검색된 블룸 필터가 존재하지 않으면 S270 단계로 진행한다.
S260 단계에서, 식별자 관리 장치(100)는 검색된 블룸 필터가 나타내는 식별자 관리 장치를 향해 대상 식별자 검색 요청을 전송한다.
S270 단계에서, 식별자 관리 장치(100)는 검색된 블룸 필터가 없으므로, 검색 실패 안내를 통신 단말기(미도시)에 제공한다.
한편, 본 실시예는 예시적인 것으로서, 본 발명에 따른 식별자 관리 장치는 다른 검색 방법을 수행할 수 있다. 예를 들어, S270 단계에서, 식별자 관리 장치(100)는 검색된 블룸 필터가 없는 경우, 부모 식별자 관리 장치를 향해 대상 식별자 검색 요청을 전송할 수 있다. 그리고, 부모 식별자 관리 장치의 검색 결과에 따라 검색 실패 안내 또는 대상 식별자의 위치 정보를 통신 단말기(미도시)에 제공할 수 있다.
상기와 같은 구성에 따르면, 식별자 관리 장치(100)는 자신이 대상 식별자를 저장하지 않는 경우, 다른 식별자 관리 장치에 대상 식별자 검색 요청을 전송할 수 있다. 그리고, 식별자 관리 장치(100)는 다른 식별자 관리 장치들의 대상 식별자 저장 가능성을 미리 검색할 수 있다. 그리고, 식별자 관리 장치(100)는 대상 식별자를 검색할 가능성이 있는 식별자 관리 장치에만 선택적으로 대상 식별자 검색 요청을 전송할 수 있다. 또한, 식별자 관리 장치(100)의 검색 속도 및 성능이 향상되고, 부하가 감소될 수 있다. 또한, 식별자 수의 증가에 따른 검색 성능 저하를 효과적으로 최소화할 수 있다. 나아가, 식별자 관리 시스템(400, 도 8 참조) 전체의 검색 속도 및 성능이 향상될 수 있다.
본 발명의 상세한 설명에서는 구체적인 실시 예를 들어 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한 각 실시 예는 여러 가지 형태로 변형될 수 있다. 또한, 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허 청구범위뿐만 아니라 이 발명의 특허 청구범위와 균등한 것들에 의해 정해져야 한다.

Claims (18)

  1. 통신 단말기의 식별자(identifier) 또는 상기 식별자의 위치 정보를 저장하는 저장부;
    상기 식별자를 참조하여 상기 식별자의 저장 장소를 나타내는 블룸 필터 목록을 등록 또는 갱신하는 블룸 필터 관리부; 및
    상기 저장부 및 상기 블룸 필터 관리부를 제어하는 제어부를 포함하는 식별자 관리 장치.
  2. 제 1 항에 있어서,
    상기 제어부는 외부 식별자 관리 장치의 블룸 필터 목록(이하, 외부 블룸 필터 목록이라 함)을 수신하여 상기 블룸 필터 목록을 등록 또는 갱신하는 식별자 관리 장치.
  3. 제 2 항에 있어서,
    상기 외부 블룸 필터 목록은 상기 외부 식별자 관리 장치에 저장된 식별자를 나타내는 식별자 관리 장치.
  4. 제 2 항에 있어서,
    상기 외부 블룸 필터 목록은 상기 외부 식별자 관리 장치와 연결된 다른 식별자 관리 장치에 저장된 식별자를 나타내는 식별자 관리 장치.
  5. 제 2 항에 있어서,
    상기 제어부는 상기 등록 또는 갱신된 블룸 필터 목록을 다른 외부 식별자 관리 장치로 제공하는 식별자 관리 장치.
  6. 제 1 항에 있어서,
    상기 제어부는 상기 블룸 필터 목록을 외부 식별자 관리 장치로 제공하는 식별자 관리 장치.
  7. 제 1 항에 있어서,
    상기 제어부는 식별자 검색 요청에 따라 상기 저장부에 저장된 식별자를 검색하는 검색부를 포함하는 식별자 관리 장치.
  8. 제 2 항에 있어서,
    상기 제어부는 검색 요청에 따라 상기 식별자 또는 상기 블룸 필터 목록을 검색하는 검색부를 포함하는 식별자 관리 장치.
  9. 제 8 항에 있어서,
    상기 제어부는 상기 블룸 필터 목록의 검색 결과에 따라 상기 외부 식별자 관리 장치에 상기 검색 요청을 전송하는 제어기를 더 포함하는 식별자 관리 장치.
  10. 제 2 항에 있어서,
    상기 블룸 필터 관리부는,
    상기 식별자 또는 상기 외부 블룸 필터 목록을 참조하여 상기 블룸 필터 목록을 등록 또는 갱신하는 블룸 필터 처리부; 및
    상기 등록 또는 갱신된 블룸 필터 목록을 저장하는 블룸 필터 메모리를 포함하는 식별자 관리 장치.
  11. 제 10 항에 있어서,
    상기 블룸 필터 처리부는,
    상기 식별자를 참조하여 해시 인덱스를 제공하는 해시 엔진; 및
    상기 해시 인덱스를 참조하여 상기 블룸 필터 목록을 등록 또는 갱신하는 블룸 필터 등록기를 포함하는 식별자 관리 장치.
  12. 제 10 항에 있어서,
    상기 저장부 또는 상기 블룸 필터 메모리는 TCAM(Ternary Content Addressable Memory)을 포함하는 식별자 관리 장치.
  13. 통신 단말기의 식별자(identifier)를 참조하여 상기 식별자의 저장 장소를 나타내는 블룸 필터 목록을 등록 또는 갱신하는 단계; 및
    상기 등록 또는 갱신된 블룸 필터 목록을 외부 식별자 관리 장치에 제공하는 단계를 포함하는 식별자 관리 방법.
  14. 제 13 항에 있어서,
    검색 요청에 따라 상기 식별자를 검색하는 단계를 더 포함하는 식별자 관리 방법.
  15. 제 13 항에 있어서,
    상기 블룸 필터 목록을 등록 또는 갱신하는 단계는,
    상기 식별자로부터 해시 인덱스를 검출하는 단계;
    상기 해시 인덱스를 참조하여 상기 블룸 필터 목록을 등록 또는 갱신하는 단계; 및
    상기 블룸 필터 목록을 메모리에 저장하는 단계를 포함하는 식별자 관리 방법.
  16. 제 15 항에 있어서,
    상기 메모리는 TCAM(Ternary Content Addressable Memory)을 포함하는 식별자 관리 장치.
  17. 외부 식별자 관리 장치의 블룸 필터 목록(이하, 외부 블룸 필터 목록이라 함)를 수신하는 단계;
    상기 외부 블룸 필터 목록을 참조하여 블룸 필터 목록을 등록 또는 갱신하는 단계; 및
    상기 등록 또는 갱신된 블룸 필터 목록을 다른 외부 식별자 관리 장치에 제공하는 단계를 포함하는 식별자 관리 방법.
  18. 제 17 항에 있어서,
    검색 요청에 따라 상기 블룸 필터 목록을 검색하는 단계; 및
    상기 블룸 필터 목록의 검색 결과에 따라, 상기 검색 요청을 상기 외부 식별자 관리 장치 또는 상기 다른 외부 식별자 관리 장치에 전송하는 단계를 더 포함하는 식별자 관리 방법.
KR1020110135214A 2011-12-15 2011-12-15 식별자 관리 장치 및 그것의 식별자 관리 방법 KR20130068051A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110135214A KR20130068051A (ko) 2011-12-15 2011-12-15 식별자 관리 장치 및 그것의 식별자 관리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110135214A KR20130068051A (ko) 2011-12-15 2011-12-15 식별자 관리 장치 및 그것의 식별자 관리 방법

Publications (1)

Publication Number Publication Date
KR20130068051A true KR20130068051A (ko) 2013-06-25

Family

ID=48863763

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110135214A KR20130068051A (ko) 2011-12-15 2011-12-15 식별자 관리 장치 및 그것의 식별자 관리 방법

Country Status (1)

Country Link
KR (1) KR20130068051A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015056818A1 (en) * 2013-10-14 2015-04-23 Inha-Industry Partnership Institute Counting bloom filter
KR101663994B1 (ko) 2016-04-26 2016-10-12 숭실대학교산학협력단 사물 인터넷에 기반한 기기 간 무선 통신 환경에서 경량화 라우팅 프로토콜 제공 방법, 이를 수행하기 위한 기록 매체 및 장치
KR20220073951A (ko) * 2020-11-27 2022-06-03 (주)유미테크 블룸필터를 이용한 분산식별자 검색 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015056818A1 (en) * 2013-10-14 2015-04-23 Inha-Industry Partnership Institute Counting bloom filter
US9740797B2 (en) 2013-10-14 2017-08-22 Inha-Industry Partnership Institute Counting bloom filter
KR101663994B1 (ko) 2016-04-26 2016-10-12 숭실대학교산학협력단 사물 인터넷에 기반한 기기 간 무선 통신 환경에서 경량화 라우팅 프로토콜 제공 방법, 이를 수행하기 위한 기록 매체 및 장치
KR20220073951A (ko) * 2020-11-27 2022-06-03 (주)유미테크 블룸필터를 이용한 분산식별자 검색 방법

Similar Documents

Publication Publication Date Title
CN110301120B (zh) 流分类装置、方法和系统
US8750144B1 (en) System and method for reducing required memory updates
EP2985971B1 (en) Reputation-based instruction processing over an information centric network
US7869349B2 (en) Method and system for deducing network routes by querying routers
CN104079424B (zh) 用于非对称链路聚合的装置和方法
US9672234B2 (en) Database and database processing methods
CN108432192B (zh) 流量转移方法和系统以及计算机可读存储介质
US20100293327A1 (en) TCAM Management Approach That Minimize Movements
CN105721311A (zh) 用于使用信息中心网络中的链路状态信息进行有效的基于名称的内容路由的系统和方法
CN105191215A (zh) 双向服务链的数据平面学习
CN102035735A (zh) 用于提供转发信息和服务质量信息的设备和方法
US20170366459A1 (en) Jump on a Match Optimization for Longest Prefix Match using a Binary Search Tree
EP3170289B1 (en) Mac table sync scheme with multiple pipelines
CN105009523A (zh) 用于ip/mpls快速重新路由的方法和设备
US20190058673A1 (en) Load balancing on multi-chip network switch without full bi-section bandwidth
JP6820353B2 (ja) 通信ネットワーク内の経路の決定
WO2016175768A1 (en) Map tables for hardware tables
US10404598B1 (en) Managing next hop groups in routers
US20150049764A1 (en) Distributed Storage System, Control Apparatus, Client Terminal, Load Balancing Method and Program
KR20130087535A (ko) 라우팅 정보의 룩헤드 계산
JP5387349B2 (ja) 中継装置
US8811158B1 (en) Fast reroute for common network routes
KR20130068051A (ko) 식별자 관리 장치 및 그것의 식별자 관리 방법
US9628368B2 (en) Method and apparatus for compressing content name
US10419282B1 (en) Self-configuring network devices

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid