• Title/Summary/Keyword: 트라이 자료구조

검색결과 32건 처리시간 0.027초

능동적 트라이 압축을 이용한 고속 IP 검색 (A Fast IP Lookups using Dynamic Trie Compression)

  • 오승현
    • 정보처리학회논문지A
    • /
    • 제10A권5호
    • /
    • pp.453-462
    • /
    • 2003
  • 리우터의 IP 주소검색은 라우터에 도착한 IP 패킷의 목적지 주소를 이용하여 적절한 출력링크를 검색하고 결정하는 것이다. IP 주소검색은 라우터 성능의 병목지점 중의 하나로써 고속 백본망에 필요한 초고속 라우터 개발에 필수적인 부분이다. 본 논문은 보통의 펜티엄 CPU에서 능동적인 트라이(Trie) 압축기법을 이용하여 작은 메모리만으로 기가비트급 IP 주소검색을 실시할 수 있는 동적 트라이 압축(Dynamic Trie Compression) 자료구조를 소개한다. DTC 자료구조는 트라이를 압축하여 포워딩 테이블을 만들 때 테이블의 크기와 검색속도의 상관관계를 고려하여 능동적으로 테이블의 크기를 선태할 수 있다. 또한 트라이를 압축할 때 트라이의 구조를 반영하여 자료구조의 크기를 최소화함으로써 포워딩 테이블에 대한 IP 주소검색이 고속의 SRAM 캐시 검색이 되도록 한다. 실험결과에서 DTC 자료구조는 다양한 라우팅 테이블에 대해 능동적으로 최적의 압축을 제공함으로써 보통의 펜티엄 CPU에서 최대 $12.5{\times}10^5$ LPS(Lookup per second)를 기록하였다.

Trie 기반의 IP 주소 검색에서 메모리 접근 횟수를 줄이는 효율적 기법 (An Efficient and Simple Scheme Reducing Memory)

  • 진성기;정상훈;김진수;윤현수
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2001년도 봄 학술발표논문집 Vol.28 No.1 (A)
    • /
    • pp.325-327
    • /
    • 2001
  • IP 주소 검색은 고속 인터넷 라우터의 병목 지점이다. 소프트웨어 기반의 IP 주소 검색은 많은 경우, 트라이(trie)를 자료구조로 사용하고 있는데, 트라이에서의 가장 큰 문제점은 레벨별 검색이 메모리 접근 횟수와 비례한다는 점이다. 메모리 검색은 프로세서의 다른 연산에 비해서 시간을 많이 소모하는 작업이므로 검색 횟수를 줄임으로써 IP 주소 검색 시간을 단축할 수 있고, 이는 곧 라우터의 성능 향상을 의미한다. 본 논문에서는 트라이에 대해서 메모리 접근 횟수를 줄이는 효율적이고 간단한 기법을 제안하고 그 성능을 분석한다. 제안되는 기법을 적용하였을 때, 이진 트라이에 대해서 약 34%의 추가적인 메모리 사용으로 약 10% 정도의 성능 향상을 얻을 수 있었다. 또한 이 기법은 트라이에 기반한 모든 자료 구조에 일반적(generic)으로 사용될 수 있는 장점을 가진다.

고속 라우터의 기가비트 포워딩 검색을 위한 비트-맵 트라이 구조 (The Bit-Map Trip Structure for Giga-Bit Forwarding Lookup in High-Speed Routers)

  • 오승현;안종석
    • 한국정보과학회논문지:정보통신
    • /
    • 제28권2호
    • /
    • pp.262-276
    • /
    • 2001
  • 최근들어 특별한 하드웨어나 새 프로토콜의 도움없이 고속 라우터의 포워딩 검색을 지원하는 포워딩 테이블에 대한 연구가 다양하게 진행되고 있다. 본 논문에서는 소프트웨어를 기반으로 일반적인 펜티엄 프로세서에서 기가비트급 포워딩 검색을 지원할 수 있는 새포워딩 테이블 자료구조를 제시한다. 포워딩 검색은 테이블의 크기에 비례해서 복잡도가 증가하는 라우터 성능의 병목지점으로 알려져 있다. 기존의 소프트웨어를 기반으로 하는 포워딩 검색 연구들은 포워딩 테이블 자료구조로 패트리샤 트라이와 그 변형을 이용하거나 프리픽스 길이를 키로 해서 함수를 구성하는 방법등을 사용하여 왔다. 본 논문에서 제안된 포워딩 테이블 자료구조는 라우팅 테이블의 프리픽스를 완전이진 트라이로 구성한후 트라이의 구조와 각 노드별로 링크 되어있는 라우팅 테이블 포인터 정보를 비트열로 표현하여 포워딩테이블을 구성한다. 트라이의 구조와 라우팅 프리픽스 포인터 정보는 배열이나 링크드-리스트로 표현하면 대량의 저장공간을 필요로하지만 제안된 자료구조에서는 각 정보가 하나의 비트로 표현되므로 작은 저장공간으로 충분하며 또한 트라이를 중간 레벨에서부터 검색할 수 있는 방법을 라우팅 테이블을 펜티엄 프로세서의 L2 캐쉬에 저장할 수 있는 작은 크기로 압축하고 검색경로를 단축함으로써 일반적인 펜티엄 프로세서를 이용하여 고속의 포워딩 엔진을 구현할 수 있음을 보여준다. 제안된 방법의 성능을 평가하기 위해서 실제 라우팅 테이블을 대상으로 실험한 결과 초당 5.7백만 번의 라우팅검색성능을 기록하였다.

  • PDF

HashMap 기반의 트라이를 이용한 파일 내용 검색 프로그램 (File Content Retrieval Program Using HashMap-based Trie)

  • 김성완;이우순
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2014년도 제49차 동계학술대회논문집 22권1호
    • /
    • pp.467-468
    • /
    • 2014
  • 본 논문에서는 파일 내용 기반 검색 프로그램을 설계하고 구현하였다. 역 인덱스 구조를 이용하여 설계하였으며 별도의 정보 검색 라이브러리 사용 없이 구현하였다. 인덱스 파일은 트라이 자료 구조를 직접 설계 및 구현 하였으며 자바 언어의 HashMap 구조를 중첩 형태로 구현하였다. 개발 시스템의 유용성을 테스트하기 위해 GRE 단어집에 수록된 약 3,300개의 단어를 사용하여 임의 생성한 텍스트 파일 집합을 사용하였다.

  • PDF

IP 주소 검색의 속도 향상을 위한 분할된 압축 트라이 구조 (A Partitioned Compressed-Trie for Speeding up IP Address Lookups)

  • 박재형;장익현;정민영;원용관
    • 정보처리학회논문지C
    • /
    • 제10C권5호
    • /
    • pp.641-646
    • /
    • 2003
  • 인터넷에서 IP 패킷 전송은 링크의 전송 속도와 더불어 라우터에서의 패킷 처리 속도에 영향을 받는다. 라우터는 외부 인터페이스에서 입력되는 패킷을 목적지로 보내기 위한 다음 홉을 결정하여 패킷을 전달하는 역할을 수행한다. 이 과정에서 주소 검색은 고성능의 라우터 설계에 중요한 요인이다. 본 논문에서는 트라이 자료 구조 기반의 IP 주소 검색 알고리즘의 성능을 향상시키기 위해서 경로 압축을 이용한 분할 압축 트라이 구조를 제안한다. 제안된 분할 압축 트라이에서는 IP 주소 프리픽스들을 여러 개의 분할 압축 트라이로 나누어서 하나의 분할된 압축 트라이에서만 검색이 이루어지도록 하여 압축 트라이에서 탐색하는데 드는 시간을 줄이는 방법이다. 분할을 함으로써 늘어나게 되는 메모리의 부담이 적음을 보여준다.

2-Level Trie를 이용한 고속 라우팅 검색 (A High-Speed Routing Lookups Using 2-Level Trie)

  • 오승현
    • 한국멀티미디어학회:학술대회논문집
    • /
    • 한국멀티미디어학회 2003년도 추계학술발표대회(하)
    • /
    • pp.790-793
    • /
    • 2003
  • 라우터의 IP 주소검색은 라우터에 도착한 IP 패킷의 목적지 주소를 이용하여 적절한 출력링크를 검색하고 결정하는 것으로 고속 IP 주소검색은 초고속 라우터 개발에 필수적인 부분이다. 본 논문은 일반 PC에서도 고속의 라우팅 검색이 가능 하도록 2-단계 트라이를 이용하는 트라이 기반의 IP 주소검색 자료구조를 소개한다. 2-단계 트라이는 최소 크기의 포워딩 데이블을 구축, 접근속도가 빠른 캐시 메모리에 저장함으로써 고속의 검색이 지원된다.

  • PDF

길이 비트맵 해시 기반 형태소 분석 시스템 (Length Bitmap HASH Based POS Tagging System)

  • 선충녕;민경구;서정연
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2005년도 한국컴퓨터종합학술대회 논문집 Vol.32 No.1 (B)
    • /
    • pp.505-507
    • /
    • 2005
  • 인터넷의 확장에 따라 형태소 분석기에서 사용하는 사전의 규모도 커지고 있다. 이러한 상황은 사전의 증가를 가져옴으로써 기존 형태소 분석기의 자료 구조에 대한 새로운 요구를 발생시켰다. 기존의 트라이를 이용한 방법은 노드의 과다 생성과 데이터 부족문제로 발생하는 메모리 낭비의 문제를 가지고 있다. 효율적인 메모리 사용을 위해서는 해시 구조가 적절하다. 하지만 이 경우 트라이에 비해 검색 횟수의 복잡도가 비약적으로 증가되는 문제점을 안고 있다. 본 논문에서는 해시를 위한 길이 비트맵을 이용하여 검색 횟수를 제한할 수 있는 방법을 제안하였다. 실험을 통해 제안된 자료 구조와 해시와 트라이의 형태소 사전 검색 횟수를 비교하였으며 비문 사용이 많은 영역에서 효율적임을 입증하였다.

  • PDF

트라이와 구간트리를 이용한 사전기반 전문용어 인식 속도 향상 (Improving Speed for Dictionary-Based Term Recognition Using Trie and Interval Tree)

  • 김형철;김재훈;최윤수
    • 한국정보과학회 언어공학연구회:학술대회논문집(한글 및 한국어 정보처리)
    • /
    • 한국정보과학회언어공학연구회 2010년도 제22회 한글 및 한국어 정보처리 학술대회
    • /
    • pp.191-193
    • /
    • 2010
  • 전문용어는 특정 분야의 문서들에서 그 분야 특징을 반영하는 용어를 지칭하는 말로 최근 이러한 전문용어를 자동으로 인식하는 연구들이 활발하게 이루어지고 있다. 본 논문에서는 전문용어 인식의 방법 중 규칙 기반 방법의 한 종류인 사전 기반 방법을 이용하여 전문용어를 인식한다. 사전 기반 방법의 보통 다음과 같은 문제점이 있다. 첫째 같은 의미를 가지지만 형태가 다른 전문용어의 인식이 어려우며, 둘째 정확한 경계를 인식하기 위해서는 모든 단어에 대해 사전에 존재하는 가장 긴 단어의 크기만큼 매칭을 시도해야하며, 셋째 인식된 경계가 겹칠 수 있다는 문제점이 있다. 본 논문에서는 사전 매칭시 정규표현을 이용하여 첫 번째 문제를 해결하며, 트라이를 이용하여 사전을 구축하고, 매칭시 스택을 이용한 병렬구조를 사용하여 두 번째 문제를 해결하였으며, 구간트리라는 자료구조를 이용하여 세 번째 문제를 해결하였다.

  • PDF

임베디드 시스템에 적합한 한국어 복합명사 분해 (Korean Compound Nouns Decomposition Suitable for Embedded Systems)

  • 최민석;김창현;천민아;박호민;남궁영;윤호;김재훈
    • 한국정보과학회 언어공학연구회:학술대회논문집(한글 및 한국어 정보처리)
    • /
    • 한국정보과학회언어공학연구회 2018년도 제30회 한글 및 한국어 정보처리 학술대회
    • /
    • pp.316-320
    • /
    • 2018
  • 복합명사는 둘 이상의 말이 결합된 명사를 말하며 문장에서 하나의 단어로 간주된다, 그러나 맞춤법 및 띄어쓰기 검사나 정보검색의 색인어 추출, 기계번역의 미등록어 추정 등의 분야에서는 복합명사를 구성하는 개별 단어를 확인할 필요가 있다. 이 과정을 복합명사 분해라고 한다. 복합명사를 분해하는 방법으로 크게 규칙 기반 방법, 통계 기반 방법 등이 있으며 본 논문에서는 규칙을 기반으로 최소한의 통계 정보를 이용하는 방법을 제안한다. 본 논문은 4개의 분해 규칙을 적용하여 분해 후보를 생성하고 분해 후보들 중에 우선순위를 정하여 최적 후보를 선택하는 방법을 제안한다. 기본 단어(명사)로 트라이(trie)를 구축하고 구축된 트라이를 이용하여 양방향 최장일치를 적용하고 음절 쌍의 통계정보를 이용해서 모호성을 제거한다. 성능을 평가하기 위해 70,000여 개의 명사 사전과 음절 쌍 통계정보를 구축하였고, 이를 바탕으로 복합명사를 분해하였으며, 분해 정확도는 단어 구성비를 반영하면 96.63%이다. 제안된 복합명사 분해 방법은 최소한의 데이터를 이용하여 복합명사 분해를 수행하였으며 트라이 자료구조를 사용해서 사전의 크기를 줄이고 사전의 검색 속도를 개선하였다. 그 결과로 임베디드 시스템과 같은 소형 기기의 환경에 적합한 복합명사 분해 시스템을 구현할 수 있었다.

  • PDF

고속의 최장 IP 주소 프리픽스 검색을 위한 비트-맵 트라이 (A Bit-Map Trie for the High-Speed Longest Prefix Search of IP Addresses)

  • 오승현;안종석
    • 한국정보과학회논문지:정보통신
    • /
    • 제30권2호
    • /
    • pp.282-292
    • /
    • 2003
  • 본 논문은 IPv4와 IPv6을 지원하는 라우터에서 기가비트의 속도로 포워딩 검색을 수행하는 효율적인 포워딩 테이블 구조를 제안한다. 포워딩 검색은 최장 프리픽스 일치검색, LPM(Longest Prefix Matching)의 복잡도가 포워딩 테이블 및 주소크기에 따라 증가하여 라우터 성능의 병목지점으로 알려져 있다. 포워딩 검색의 고속화를 위해 본 논문에서는 빈번한 메모리 접근을 최소화할 수 있는 BMT(Bit-Map Trie) 자료구조를 소개한다. BMT 포워딩 검색은 필요한 모든 검색연산이 캐쉬에 저장된 소형 인덱스 테이블에서만 발생한다. 포워딩 테이블의 트라이로부터 소형 인덱스 테이블을 구축하기 위해서 BMT는 차일드(child) 노드 포인터와 포워딩 테이블 엔트리에 대한 포인터를 각각 한 비트로 표현하는 비트-맵을 구성한다. 또한 IPv6와 같이 주소길이가 증가하면 트라이의 깊이가 깊어져서 전통적인 트라이 검색속도가 느려지는 문제점을 해결하기 위해서 BMT에서는 검색을 시작할 적절한 트라이의 레벨을 결정하는 이진검색 알고리즘을 사용한다. 실험 결과 BMT는 IPv4 백본 라우팅 테이블을 펜티엄-II 프로세서의 L2 캐쉬 크기인 512KB 보다 작게 압축하였으며, 최대 250ns/패킷의 검색속도를 제공하여 기존의 알려진 가장 빠른 최장 검색 알고리즘의 성능과 같은 속도를 실현하였다.