1 |
1
비트코인 네트워크 시스템에 있어서,비트코인 네트워크에 참여하는 노드를 스캔하는 비트코인 노드 스캐너를 포함하되, 상기 비트코인 노드 스캐너는, 비트코인 DNS 노드에 IP 주소 목록을 요청하여 수신하는 메인 쓰레드 실행부;상기 IP 주소 목록을 디코딩하고, 중복 IP 주소를 필터링하는 메시지 디코더 및 필터;상기 메시지 디코더 및 필터에 의해 디코딩된 IP 주소를 순차적으로 대기시키는 IP 큐;상기 IP 큐가 비워질 때까지 상기 IP 큐에 대기 중인 IP 주소를 가져와 연결을 시도하는 워커 쓰레드 실행부; 및상기 메시지 디코더 및 필터에 의해 디코딩된 IP 주소를 저장하는 데이터베이스를 포함하며,상기 IP 큐는, 상기 IP 주소를 지리적 위치에 기초한 거리에 따라 근거리, 중거리, 원거리 노드로 분류하는 IP 주소 분류부와; 근거리 노드에 해당하는 IP 주소가 대기하는 근거리 IP 큐와; 중거리 노드에 해당하는 IP 주소가 대기하는 중거리 IP 큐와; 원거리 노드에 해당하는 IP 주소가 대기하는 원거리 IP 큐를 포함하고,상기 워커 쓰레드 실행부에서 IP 주소를 가져오는 기준은 IP 주소 수량 분포 비율 혹은 상기 근거리 IP 큐, 상기 중거리 IP 큐, 상기 원거리 IP 큐에서의 대기 수량에 따라 결정되며, 상기 비트코인 네트워크 시스템은 스캔이 완료된 이후, 상기 데이터베이스에 저장된 IP 주소를 분석하고, 거리 기반의 피어 선택 규칙을 수립하여 상기 비트코인 네트워크에 참여하는 노드에게 제안하는 네트워크 토폴로지 제안장치를 더 포함하되,상기 피어 선택 규칙에 의하면 근거리 구간, 중거리 구간, 원거리 구간에 해당하는 풀 노드의 수량 비율과 유사한 정수값 비율을 가지도록 근거리에 있는 x 노드, 중거리에 있는 y 노드, 원거리에 있는 z 노드의 선택 수량을 결정하고, 상기 x 노드, y 노드, z 노드의 수는 합산값이 피어의 최대 발신 연결 수가 되도록 하는 것을 특징으로 하는 비트코인 네트워크 스캔 시스템
|
2 |
2
제1항에 있어서,상기 워커 쓰레드 실행부는 연결을 시도한 IP 주소의 노드와 연결이 수립되면 신규 IP 주소 목록을 요청하여 수신하고, 상기 신규 IP 주소 목록은 상기 메시지 디코더 및 필터에 의해 디코딩 및 필터링되어 상기 IP 큐와 상기 데이터베이스에 저장되는 것을 특징으로 하는 비트코인 네트워크 스캔 시스템
|
3 |
3
제1항에 있어서, 상기 워커 쓰레드 실행부는 복수 개가 마련되어 병렬적으로 운용되며, 상기 메인 쓰레드 실행부는 상기 IP 큐에서 상기 워커 쓰레드 실행부의 수에 상응하는 IP 주소를 가져와 상기 워커 쓰레드 실행부에 배분하는 것을 특징으로 하는 비트코인 네트워크 스캔 시스템
|
4 |
4
삭제
|
5 |
5
제1항에 있어서,상기 메인 쓰레드 실행부는 상기 근거리 IP 큐, 상기 중거리 IP 큐, 상기 원거리 IP 큐에 대기하는 IP 주소들을 근거리, 중거리, 원거리에 따른 IP 주소 수량 분포 비율에 상응하는 비율로 가져와 상기 워커 쓰레드 실행부에 배분하는 것을 특징으로 하는 비트코인 네트워크 스캔 시스템
|
6 |
6
제5항에 있어서,근거리, 중거리, 원거리의 IP 주소 수량 분포를 x1:y1:z1이라 하고, 상기 근거리 IP 큐, 상기 중거리 IP 큐, 상기 원거리 IP 큐에서 가져오는 IP 주소의 수를 X1, Y1, Z1이라 할 때, 하기 수학식을 만족하도록 X1, Y1, Z1가 결정되는 것을 특징으로 하는 비트코인 네트워크 스캔 시스템, X1+Y1+Z1 = W,X1:Y1:Z1 ≒ x1:y1:z1여기서, W는 상기 워커 쓰레드 실행부의 수이고, X1, Y1, Z1은 정수임
|
7 |
7
제1항에 있어서,상기 메인 쓰레드 실행부는 상기 근거리 IP 큐, 상기 중거리 IP 큐, 상기 원거리 IP 큐에 대기하는 IP 주소들의 개수를 비교하여 가장 많은 IP 주소가 대기하는 큐에서부터 IP 주소를 가져와 상기 워커 쓰레드 실행부에 배분하는 것을 특징으로 하는 비트코인 네트워크 스캔 시스템
|
8 |
8
삭제
|
9 |
9
삭제
|
10 |
10
컴퓨팅 장치에서 비트코인 네트워크에 참여하는 전체 노드를 스캔하는 방법으로서, (a) 비트코인 DNS 노드에 IP 주소 목록을 요청하여 수신하는 단계;(b) 상기 IP 주소 목록을 디코딩하고, 데이터베이스에 저장하는 단계;(c) 상기 디코딩된 IP 주소를 IP 큐에 순차적으로 대기시키는 단계;(d) 상기 IP 큐에 대기 중인 IP 주소를 가져와 연결을 시도하는 단계;(e) 연결이 수립되면, 연결이 수립된 IP 주소에 상응하는 피어에 신규 IP 주소 목록을 요청하여 수신하는 단계;(f) 상기 신규 IP 주소 목록을 디코딩하고, 중복 IP 주소를 필터링하며, 상기 데이터베이스에 저장하는 단계;(g) 상기 디코딩된 신규 IP 주소를 상기 IP 큐에 순차적으로 대기시키는 단계를 포함하되,상기 IP 큐가 비워질 때까지 상기 단계 (d) 내지 (g)를 반복 수행하며,상기 단계 (d) 내지 (g)는 복수의 쓰레드를 통해 동시에 병렬적으로 수행되고, 상기 복수의 쓰레드는 IP 주소를 거리 기반으로 구분한 피어 선택 규칙에 준하여 근거리, 중거리, 원거리 구간으로 각각 분류되는 IP 주소를 IP 주소 수량 분포 비율 혹은 근거리 IP 큐, 중거리 IP 큐, 원거리 IP 큐에서의 대기 수량에 따라 구분하여 배분받으며, 스캔이 완료되면, 상기 데이터베이스에 저장된 IP 주소를 분석하고, 거리 기반의 피어 선택 규칙을 수립하여 상기 비트코인 네트워크에 참여하는 노드에게 제안하는 단계를 더 포함하며,상기 피어 선택 규칙에 의하면 근거리 구간, 중거리 구간, 원거리 구간에 해당하는 풀 노드의 수량 비율과 유사한 정수값 비율을 가지도록 근거리에 있는 x 노드, 중거리에 있는 y 노드, 원거리에 있는 z 노드의 선택 수량을 결정하되, 상기 x 노드, y 노드, z 노드의 수는 합산값이 피어의 최대 발신 연결 수가 되도록 하는 것을 특징으로 하는 비트코인 네트워크 스캔 방법
|
11 |
11
삭제
|
12 |
12
삭제
|
13 |
13
삭제
|