KR100717240B1 - 신뢰성 있는 시퀀스 제공 방법 및 시스템 - Google Patents

신뢰성 있는 시퀀스 제공 방법 및 시스템 Download PDF

Info

Publication number
KR100717240B1
KR100717240B1 KR1020050066044A KR20050066044A KR100717240B1 KR 100717240 B1 KR100717240 B1 KR 100717240B1 KR 1020050066044 A KR1020050066044 A KR 1020050066044A KR 20050066044 A KR20050066044 A KR 20050066044A KR 100717240 B1 KR100717240 B1 KR 100717240B1
Authority
KR
South Korea
Prior art keywords
sequence
counter
stored
providing
automatic
Prior art date
Application number
KR1020050066044A
Other languages
English (en)
Other versions
KR20070011002A (ko
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 KR1020050066044A priority Critical patent/KR100717240B1/ko
Publication of KR20070011002A publication Critical patent/KR20070011002A/ko
Application granted granted Critical
Publication of KR100717240B1 publication Critical patent/KR100717240B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

본 발명은 시퀀스를 제공하는 방법 및 시스템에 관한 것으로, 본 발명의 일실시예에 따라 시퀀스(sequence)를 제공하는 방법은 상기 시퀀스에 대한 쿼리를 수신하는 단계, 상기 쿼리 수신에 응답하여 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 소정의 갱신 시퀀스와 비교하는 단계, 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 미만인 경우, 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리(next-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 소정의 제1 값만큼 증가시키는 단계, 및 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 이상인 경우, 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리(present-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 판독하여 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 상기 제1 값만큼 증가시키는 단계를 포함한다.
시퀀스 제공 시스템, 64 비트 시퀀스, 시퀀스 넘버, 오토믹(atomic) 시퀀스

Description

신뢰성 있는 시퀀스 제공 방법 및 시스템{METHOD AND SYSTEM FOR PROVIDING RELIABLE SEQUENCE}
도 1은 종래 기술의 시퀀스 이용 모듈 및 시퀀스 제공 모듈의 네트워크 연결을 도시한 도면.
도 2는 종래 기술의 32 비트 오토믹 시퀀스 제공 모듈을 이용하여 64 비트 오토믹 시퀀스 제공 모듈을 제작한 실시예를 도시한 도면.
도 3은 본 발명의 일실시예에 따라 시퀀스를 제공하는 과정을 도시한 흐름도.
도 4는 본 발명에 따른 시퀀스 제공 과정의 일실시예를 도시한 도면.
도 5는 본 발명의 일실시예에 따른 시퀀스 제공 시스템의 구성을 도시한 블록도.
<도면의 주요 부분에 대한 부호의 설명>
501: 쿼리 수신부
502: 시퀀스 판단부
503: 시퀀스 제공부
본 발명은 긴 비트의 오토믹 시퀀스(atomic sequence)를 제공하는 방법 및 시스템에 관한 것으로서, 더욱 상세하게는 N 비트의 오토믹 시퀀스를 제공하는 장치에서 N*2 비트의 안전한 오토믹 시퀀스를 얻을 수 있는 방법 및 시스템에 관한 것이다.
오늘날, 수많은 종류의 시퀀스 이용 모듈 또는 서버 등에서 일련의 시퀀스(sequence)를 제공 받기 위해 시퀀스 제공 시스템을 사용하고 있다. 상기 시퀀스는 타임 스탬프(time stamp)의 생성, 멀티캐스트 메시지 전송 등에 이용될 수 있다.
도 1은 종래 기술의 시퀀스 이용 모듈 및 시퀀스 제공 모듈의 네트워크 연결을 도시한 도면이다. 도 1을 참조하면, 시퀀스 이용 모듈(101)은 복수의 로케이션 서버들(103, 104, 105)과 네트워크 연결될 수 있다. 시퀀스 이용 모듈(101)은 시퀀스 제공 모듈(102)와 일반적으로 하나의 물리적인 장치 내에 함께 포함되어 구성되지만, 물리적으로 독립된 서로 다른 장치들에 구현될 수도 있다. 시퀀스 이용 모듈(101)는 시퀀스 제공 모듈(102)로부터 생성된 오토믹 시퀀스를 이용하는 장치이다.
시퀀스 이용 모듈(101)은 시퀀스 제공 모듈(102)로부터 시퀀스를 수신하여 이용할 수 있는데, 예를 들어, 시퀀스 이용 모듈(101)에서 복수의 로케이션 서버들(103, 104, 105)로 전송하는 멀티캐스팅 메시지의 시퀀스를 카운트하거나, 또는 상기 복수의 로케이션 서버들(103, 104, 105)로 전송하는 메시지에 포함되는 타임 스 탬프를 생성하기 위해 시퀀스 제공 모듈(102)에서 제공하는 시퀀스를 이용한다. 이 때, 시퀀스 제공 모듈(102)은 상기 시퀀스 이용 모듈 또는 서버 등에서 시퀀스를 요구하기 위한 쿼리(query)를 전송하면, 이를 수신하여 시퀀스를 제공하고, 상기 시퀀스 제공 모듈에 기록된 시퀀스를 갱신한다. 예를 들어, 타임 스탬프를 생성하기 위하여 시퀀스 이용 모듈(101)는 1씩 증가하는 정수(integer)를 필요로 하고, 이와 같이 1씩 증가하는 연산은 복수 개의 쓰레드들(threads)에 의하여 간섭(intercept)되지 않고, 원자적(atomic)으로 수행되어야 한다. 이와 같이 컴퓨터 시스템들은 여러 가지 응용에서 오토믹 시퀀스(atomic sequence)를 필요로 하기 때문에, 컴퓨터 시스템 및 운영 체제는 일정한 오토믹 시퀀스 제공부(atomic sequence generator)를 제공하고 있다. 도 1에서 시퀀스 이용 모듈(101)는 로케이션 서버일 수 있으며, 다른 로케이션 서버들(103, 104, 105)도 자체적으로 오토믹 시퀀스 제공부를 포함할 수 있다.
현재 널리 사용되고 있는 윈도우 2000 서버 환경에서는 64 비트 오토믹 시퀀스 제공부는 지원되지 않고, 32 비트 오토믹 시퀀스 제공부만이 지원되고 있다. 그러나, 이러한 종래 기술의 시퀀스 제공부는 단지 32 비트 시퀀스까지만을 카운트할 수 있으므로, 제공할 수 있는 시퀀스가 작다는 한계가 있다. 예를 들어, 시퀀스 이용 모듈(101)가 복수의 로케이션 서버들(103, 104, 105)로 전송하는 메시지의 수가 매우 많거나, 또는 복수의 시퀀스 이용 모듈(101)들이 하나의 시퀀스 시퀀스 이용 모듈(102)에서 제공하는 시퀀스를 이용하여 전송 메시지를 카운트하는 경우가 발생할 수 있는데, 이러한 경우 32 비트 오토믹 시퀀스 제공 모듈만으로는 제공 가 능한 시퀀스가 작아 시스템 운영에 문제가 발생할 수 있다.
예를 들어, 시퀀스 이용 모듈(101)에서 복수의 로케이션 서버들(103, 104, 105)로 전송한 메시지의 수가 32 비트 시퀀스를 초과하는 경우, 32 비트 오토믹 시퀀스 제공 모듈은 시퀀스를 리셋(reset)하게 되므로 상기 리셋에 따른 문제점이 발생하여 시스템 운영에 지장을 초래할 수 있다.
특히 본 발명의 발명자는 온라인 게임 서비스를 제공하기 위하여 사용자들의 온라인 게임 상에서의 현재 위치 정보를 관리하는 로케이션 서버를 리플리케이션(replication)하여 구성하고, 이러한 로케이션 서버들 간에 멀티캐스트 메시지를 송수신하여 로케이션 서버들 간의 상태를 동기화하려고 하였다. 이를 위하여 상기 멀티캐스트 메시지에는 32 비트 오토믹 시퀀스 제공부를 통하여 제공되는 오토믹 시퀀스를 포함한 타임 스탬프 값이 포함되어 다른 로케이션 서버들에게 발송되었다. 그런데, 상기 멀티캐스트 메시지는 하루에도 매우 많은 수가 발생되어지기 때문에, 2-3일 정도 후에는 윈도우 2000 환경에서 제공되는 32비트 오토믹 시퀀스 값을 모두 사용하고(즉, 2의 32승 - 1의 값에 도달하고), 다시 0인 오토믹 시퀀스를 사용하여야 하였다. 그러나, 2-3일 동안에도 초기에 송신되었던 멀티캐스트 메시지들 중 일부는 아직도 남아 있게 되고, 이러한 멀티캐스트 메시지들은 새로운 멀티캐스트 메시지들과 동일한 오토믹 시퀀스(즉, 동일한 타임 스탬프 값)을 가지게 되었기 때문에, 전체 시스템이 오동작을 하는 원인이 되었다.
따라서, 이러한 문제점을 해결하기 위해 본 발명의 발명자는 윈도우 2000 환경에서 제공되는 32 비트 오토믹 시퀀스 제공부를 이용하여 64 비트 오토믹 시퀀스 를 제공하는 방법을 연구하였으며, 그 연구 중에 도 2와 같은 방법을 고려하게 되었다.
도 2에 도시된 바와 같이, 본 발명의 발명자는 윈도우 2000 환경에서 제공되는 32 비트 오토믹 시퀀스 제공부를 이용하여 2개의 시퀀스 카운터를 생성하고, 이를 이용하여 64 비트 오토믹 시퀀스를 얻으려고 하였다.
먼저, 32 비트 오토믹 시퀀스 제공부를 이용하여 제1 오토믹 시퀀스 카운터(201) 및 제2 오토믹 시퀀스 카운터(202)를 생성하고, 시퀀스 이용 모듈에서 시퀀스를 요구하는 쿼리가 수신되는 경우, 상기 제1 오토믹 시퀀스 카운터(201)에 기록된 시퀀스를 판독하여 상기 시퀀스 이용 모듈로 제공하고, 상기 기록된 시퀀스를 소정의 값만큼 증가시킨다. 상기 증가 결과 제1 오토믹 시퀀스 카운터(201)에서 캐리(carry)가 발생하면, 제2 오토믹 시퀀스 카운터(202)에 기록된 캐리를 소정의 값만큼 증가시킨다. 이렇게 하면, 제1 오토믹 시퀀스 카운터(201) 및 제2 오토믹 시퀀스 카운터(202)를 이용하여 64 비트 오토믹 시퀀스가 생성되는 것으로 생각될 수 있다.
그러나 도 2와 같이 두 개의 32 비트 오토믹 시퀀스 제공 모듈을 이용한 64 비트 오토믹 시퀀스 제공 모듈은 제1 오토믹 시퀀스 카운터(201)에서 캐리가 발생할 경우, 이를 제2 오토믹 시퀀스 카운터(202)에 기록하거나, 또는 제2 오토믹 시퀀스 카운터(202)에 기록된 캐리를 소정의 값만큼 증가시켜 갱신하는 사이에 시퀀스를 요구하는 쿼리에 대응하여 갱신되지 않은 시퀀스를 제공하는 문제점이 있다. 이는, 제1 오토믹 시퀀스 카운터의 값을 변경하는 것은 오토믹으로 이루어지고, 제 2 오토믹 시퀀스 카운터의 값을 변경하는 것도 오토믹으로 수행되지만, 제1 오토믹 시퀀스 카운터의 값을 변경하고, 제2 오토믹 시퀀스 카운터의 값을 변경하는 동작은 오토믹으로 수행되지 않기 때문이다.
예를 들어, 도 2를 참조하여 이러한 문제점을 간단히 설명하면 다음과 같다. 제1 오토믹 시퀀스 카운터(201)에서 시퀀스를 "1"씩 증가시켜 "00"(210)부터 "11"(240)까지 시퀀스를 카운트하여 시퀀스 이용 모듈로 제공한 후 캐리가 발생하면, 도면 부호(250)과 같이 이를 "01"로 제2 오토믹 시퀀스 카운터(202)에 기록하고, 제1 오토믹 시퀀스 카운터를 "00"으로 리셋(reset)하게 된다.
그런데, 제1 오토믹 시퀀스 카운터(201)와 제2 오토믹 시퀀스 카운터(202)는 구분되어 있으므로, 제1 오토믹 시퀀스 카운터가 "00"으로 리셋되고, 제2 오토믹 시퀀스 카운터가 "01"로 업데이트 기록되기 전에 수신한 쿼리에 대응하는 시퀀스를 제공하는 경우가 발생한다. 즉, 제2 오토믹 시퀀스 카운터(202)의 업데이트 전에 시퀀스를 제공하게 되면 도면 부호(240) 중 제2 오토믹 시퀀스 카운터에 기록된 "00" 및 도면 부호(250)의 제1 오토믹 시퀀스 카운터에 리셋된 "00"이 제공되므로, 원래 제공되어야 할 "0100" 대신 "0000"이 제공되어 시스템이 오작동을 일으키는 문제점이 발생하게 된다.
그런데 상기 시퀀스 카운터의 시퀀스를 제공받는 시퀀스 이용 모듈은 상기 시퀀스를 제공 받는 시간 간격이 매우 짧은 경우가 많으므로, 상기와 같이 제2 오토믹 시퀀스 카운터가 업데이트 되기 전에 시퀀스를 요구하는 경우가 자주 발생하는 문제점이 있다.
즉 종래 기술에서 두 개의 32 비트 오토믹 시퀀스 제공 모듈을 이용한 64 비트 오토믹 시퀀스 제공 모듈은 시퀀스가 요구되는 시간 간격 보다 상기 제2 오토믹 시퀀스 카운터가 업데이트되는 시간이 상대적으로 길기 때문에 오작동하는 문제점이 있다.
따라서, 이와 같은 오작동을 일으키지 않으면서 32 비트 오토믹 시퀀스만을 제공하는 시스템 상에서 신뢰성 있는 64 비트 오토믹 시퀀스를 제공할 수 있는 시퀀스 제공 방법 및 장치의 필요성이 절실하다.
상술한 종래 기술의 문제점을 해결하기 위하여 본 발명은 짧은 비트의 오토믹 시퀀스만을 제공하는 장치에서도 긴 비트의 오토믹 시퀀스를 얻을 수 있는 방법 및 시스템을 제공하는 것을 목적으로 한다. 특히, N 비트의 오토믹 시퀀스를 제공하는 장치에서 N*2 비트의 안전한 오토믹 시퀀스를 얻을 수 있는 방법 및 시스템을 제공하는 것을 목적으로 한다.
또한 본 발명은 제1 오토믹 시퀀스 카운터가 리셋되고, 제3 오토믹 시퀀스 카운터가 갱신되지 않은 상태에서도, 제2 오토믹 시퀀스 카운터에 저장된 제2 캐리를 이용하여 시퀀스를 제공함으로써 신뢰성 있는 긴 비트의 오토믹 시퀀스를 제공하는 방법 및 시스템을 제공하는 것을 목적으로 한다.
또한 본 발명은 제1 오토믹 시퀀스 카운터에서 저장된 제1 시퀀스가 갱신 시퀀스인 경우 제2 오토믹 시퀀스 카운터의 제2 캐리를 미리 증가시켜 저장하므로, 제1 오토믹 시퀀스 카운터가 리셋되는 경우 안정적으로 제2 오토믹 시퀀스 카운터 에 저장된 제2 캐리를 이용하여 시퀀스를 신뢰성 있게 제공할 수 있는 시퀀스 제공 방법 및 시스템을 제공하는 것을 다른 목적으로 한다.
또한 본 발명은 제1 오토믹 시퀀스 카운터에 시퀀스가 요구되는 시간 간격 보다 제3 오토믹 시퀀스 카운터가 업데이트되는 시간이 상대적으로 길더라도 신뢰성 있는 시퀀스를 제공할 수 있는 시퀀스 제공 방법 및 시스템을 제공하는 것을 다른 목적으로 한다.
상기의 목적을 달성하고 상술한 종래 기술의 문제점을 해결하기 위하여, 본 발명의 일실시예에 따라 시퀀스(sequence)를 제공하는 방법은 상기 시퀀스에 대한 쿼리를 수신하는 단계, 상기 쿼리 수신에 응답하여 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 소정의 갱신 시퀀스와 비교하는 단계, 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 미만인 경우, 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리(next-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 소정의 제1 값만큼 증가시키는 단계, 및 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 이상인 경우, 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리(present-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 판독하여 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 상기 제1 값만큼 증가시키는 단계를 포함한다.
또한 본 발명의 다른 실시예에 따라 시퀀스를 제공하는 방법은 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 소정의 제1 값만큼 증가시키는 단계, 상기 제1 오토믹 시퀀스 카운터에서 캐리가 발생하면 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리(present-carry)를 소정의 제3 값만큼 증가시키고, 상기 제1 오토믹 시퀀스 카운터는 리셋하는 단계, 및 상기 제1 시퀀스가 소정의 갱신 시퀀스인 경우 상기 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리를 소정의 제2 값만큼 증가시키는 단계를 포함한다.
또한 본 발명의 다른 실시예에 따라 시퀀스를 제공하는 시스템은 상기 시퀀스에 대한 쿼리를 수신하는 쿼리 수신부, 상기 쿼리 수신에 응답하여 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 소정의 갱신 시퀀스와 비교하여 판단하는 시퀀스 판단부, 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 미만인 경우, 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리(next-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 소정의 제1 값만큼 증가시키고, 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 이상인 경우, 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리(present-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 상기 제1 값만큼 증가시키는 시퀀스 제공부를 포함한다.
이하 첨부된 도면을 참조하여 본 발명에 따른 시퀀스 제공 방법 및 시스템에 대하여 상세히 설명한다. 본 발명에 따른 시퀀스 제공 시스템은 시퀀스 이용 모듈과 네트워크 연결되어 시퀀스를 제공할 수도 있고, 상기 시퀀스 이용 모듈 내부에 포함되어 시퀀스를 제공할 수도 있다. 본 발명의 "시퀀스 이용 모듈"은 시퀀스를 필요로 하는 모든 장치를 포함한다.
도 3은 본 발명의 일실시예에 따라 시퀀스를 제공하는 과정을 도시한 흐름도이다. 도 3을 참조하면 본 발명의 일실시예에 따라 시퀀스를 제공하는 과정은 다음과 같다.
단계(S301)에서 본 발명에 따른 시퀀스 제공 시스템은 시퀀스 이용 모듈로부터 시퀀스에 대한 쿼리를 수신한다. 상기 쿼리는 시퀀스 이용 모듈에서 상기 시퀀스 제공 모듈에 시퀀스를 요구하기 위한 데이터로서 모든 데이터 형태를 포함한다. 일례로, 상기 쿼리는 본 발명의 시퀀스 제공 모듈에 포함된 시퀀스 카운터를 판독하기 위한 데이터도 포함한다.
단계(S302)에서 본 발명에 따른 시퀀스 제공 시스템은 상기 쿼리 수신에 응답하여 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 소정의 갱신 시퀀스와 비교한다.
본 발명에 따른 시퀀스 제공 시스템은 시퀀스를 제공하기 위한 제1 오토믹 시퀀스 카운터, 제2 오토믹 시퀀스 카운터 및 제3 오토믹 시퀀스 카운터를 포함하고, 각각의 시퀀스 카운터는 시퀀스를 갱신 및 저장한다. 이하에서는 상기 제1 시퀀스 카운터에 저장된 시퀀스를 "제1 시퀀스", 상기 제2 오토믹 시퀀스 카운터에 저장된 시퀀스를 "넥스트 캐리(next-carry)", 상기 제3 오토믹 시퀀스 카운터에 저장된 시퀀스를 "현재 캐리(present-carry)"라 한다.
상기 갱신 시퀀스는 제2 오토믹 시퀀스 카운터에 넥스트 캐리를 기록 또는 갱신하기 위한 기준이 되는 시퀀스로 제1 오토믹 시퀀스 카운터에서 제공하는 시퀀스 중 하나로 설정된다. 예를 들어, 갱신 시퀀스는 제1 오토믹 시퀀스 카운터에서 제공하는 32 비트 시퀀스 중 하나의 시퀀스로 설정될 수 있다.
또한 일례로, 제1 오토믹 시퀀스 카운터가 N 비트 오토믹 시퀀스를 제공하는 카운터인 경우, 상기 갱신 시퀀스는 2N-1 일 수 있다. 상기와 같이 갱신 시퀀스를 제1 오토믹 시퀀스에 기록되는 시퀀스 중간에 위치한 시퀀스로 설정함으로써, 본 발명은 상기 제1 오토믹 시퀀스 카운터가 2N-1을 시퀀스 이용 모듈로 제공할 때 제1 오토믹 시퀀스 카운터에서 발생할 캐리를 미리 증가시켜 제2 오토믹 시퀀스 카운터에 저장하므로, 결과적으로 제1 오토믹 시퀀스 카운터가 리셋되는 경우 안정적으로 기록된 캐리를 이용하여 시퀀스를 신뢰성 있게 제공할 수 있는 효과가 있다.
도 4는 본 발명에 따른 시퀀스 제공 과정의 일실시예를 도시한 도면이다. 도 4를 참조하면, 본 발명의 시퀀스 제공 시스템은 제1 오토믹 시퀀스 카운터(401), 제2 오토믹 시퀀스 카운터(402), 제3 오토믹 시퀀스 카운터(403)을 포함하여 구성된다. 이하에서는 2 비트 시퀀스 카운터(401, 402, 403)를 이용하여 4 비트 시퀀스를 제공하는 시스템을 예로 들어 본 발명을 설명하나, 이는 동일하게 다른 비트 시퀀스를 제공하는 시스템, 특히 32 비트 시퀀스 카운터를 이용한 62 비트 시퀀스 제공 시스템에도 적용 가능하다.
도 4에서 상기 갱신 시퀀스는 제1 오토믹 시퀀스 카운터에 저장되는 시퀀스 중에 하나인 "10"일 수 있고, 본 발명에 따른 시퀀스 제공 시스템은 쿼리 수신에 응답하여 제1 오토믹 시퀀스 카운터(401)에 저장된 제1 시퀀스를 상기 갱신 시퀀스 "10"과 비교하여 판단한다.
단계(S303)에서 본 발명에 따른 시퀀스 제공 시스템은 상기 단계(S302)의 판단 결과, 상기 제1 시퀀스가 갱신 시퀀스 미만인 경우 제2 오토믹 시퀀스 카운터에 기록된 넥스트 캐리 및 상기 제1 오토믹 시퀀스 카운터에 기록된 제1 시퀀스를 판독하여 상기 시퀀스 이용 모듈로 제공한다.
예를 들어, 도 4에서 제1 오토믹 시퀀스 카운터에서 저장된 제1 시퀀스가 "00"으로 갱신 시퀀스 "10" 미만일 경우, 본 발명에 따른 시퀀스 제공 시스템은 제2 오토믹 시퀀스 카운터(402)에 기록된 넥스트 캐리 "00" 및 제1 오토믹 시퀀스 카운터(401)에 저장된 제1 시퀀스 "00"을 판독하여 시퀀스 "0000"을 시퀀스 이용 모듈로 제공한다.
단계(S304)에서 본 발명에 따른 시퀀스 제공 시스템은 상기 제1 오토믹 시퀀스 카운터에 기록된 상기 제1 시퀀스를 소정의 제1 값만큼 증가시켜 저장한다. 상기 소정의 제1 값은 실시예에 따라 다양하게 설정될 수 있으나 상기 시퀀스 카운터가 이진수를 카운트하는 카운터인 경우, "1"일 수 있다.
예를 들어 도 4에서 본 발명에 따른 시퀀스 제공 시스템은 제1 오토믹 시퀀스 카운터(401)에 기록된 제1 시퀀스 "00"을 소정의 제1 값인 "1"만큼 증가시켜 "01"로 저장한다.
도 4에서 본 발명에 따른 시퀀스 제공 시스템은 상기 제1 시퀀스 제공 모듈에서 시퀀스 이용 모듈로 "01"을 제공하는 경우에도 갱신 시퀀스 "10" 미만이므로, 단계(S302) 및 단계(S303)을 동일하게 수행하여 제2 오토믹 시퀀스 카운터 넥스트 캐리 "00" 및 제1 오토믹 시퀀스 카운터의 제1 시퀀스 "01"을 판독하여 시퀀스 "0001"을 시퀀스 이용 모듈로 제공하고, 제1 오토믹 시퀀스 카운터(401)에 기록된 제1 시퀀스 "01"에서 상기 값인 "1"을 증가하여 "10"으로 기록한다.
단계(S305)에서 본 발명에 따른 시퀀스 제공 시스템은 상기 저장된 제1 시퀀스가 상기 갱신 시퀀스인 경우, 단계(S306)에서 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리 및 상기 제1 오토믹 시퀀스 카운터에 기록된 상기 제1 시퀀스를 판독하여 상기 시퀀스 이용 모듈로 제공하고, 단계(S307)에서 상기 제1 오토믹 시퀀스 카운터에 기록된 상기 제1 시퀀스를 제1 값만큼 증가시켜 기록한다.
예를 들어, 도 4에서 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스가 갱신 시퀀스인 "10"인 경우, 본 발명에 따른 시퀀스 제공 모듈은 제3 오토믹 시퀀스 카운터(403)에 기록된 현재 캐리 "00" 및 제1 오토믹 시퀀스 카운터(401)에 저장된 제1 시퀀스 "10"을 판독하여 시퀀스 "0010"을 시퀀스 이용 모듈로 제공하고, 제1 오토믹 시퀀스 카운터에 기록된 제1 시퀀스"10"에 1을 증가시킨 시퀀스 "11"을 저장한다.
또한 시퀀스 제공 시스템은 상기 저장된 제1 시퀀스가 갱신 시퀀스인 경우, 단계(S308)에서 상기 제2 오토믹 시퀀스 카운터에 기록된 넥스트 캐리를 소정의 제2 값만큼 증가시켜 기록한다. 상기 제2 값은 실시예에 따라 다양한 값을 가질 수 있으며, 예를 들어, 제2 오토믹 시퀀스가 이진수를 제공하는 카운터인 경우, 상기 제2 값은 "1"일 수 있다.
상기 예에서, 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스가 갱신 시퀀스인 "10"인 경우, 본 발명에 다른 시퀀스 제공 시스템은 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리 "00"을 "1"만큼 증가시켜서 "01"로 저장한다.
단계(S305)의 판단 결과, 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스가 갱신 시퀀스 이상이면서, 갱신 시퀀스가 아닌 경우 본 발명에 따른 시퀀스 제공 시스템은 단계(S309)에서 제1 오토믹 카운터에 저장된 제1 시퀀스 및 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리를 판독하여 제공하고, 단계(S310)에서 제1 오토믹 시퀀스 카운터의 제1 시퀀스를 증가시켜 저장한다.
예를 들어, 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스가 갱신 시퀀스 "10" 이상인 "11"인 경우, 본 발명에 따른 시퀀스 제공 시스템은 제3 오토믹 시퀀스 카운터(403)에 기록된 현재 캐리 "00" 및 제1 오토믹 시퀀스 카운터(401)에 기록된 제1 시퀀스 "11"을 판독하여 시퀀스 "0011"을 시퀀스 이용 모듈로 제공하고, 제1 오토믹 시퀀스 카운터에 기록된 시퀀스"11"에 제1 값인 "1"을 증가시켜 캐리를 발생시킨다.
단계(S311)에서 본 발명에 따른 시퀀스 제공 시스템은 단계(S310)에서의 제1 시퀀스 증가 결과 제1 오토믹 시퀀스 카운터에서 캐리가 발생하는지 판단한다.
단계(S310)의 판단 결과 캐리가 발생한 경우 본 발명에 따른 시퀀스 제공 시스템은 단계(S312)에서 제3 오토믹 시퀀스 카운터(403)에 기록된 현재 캐리를 제3 값만큼 증가한다. 상기 제3 값은 실시예에 따라 다양한 값으로 설정될 수 있다.
단계(S310)의 판단 결과 캐리가 발생한 경우 본 발명에 따른 시퀀스 제공 시 스템은 단계(S313)에서 상기 제1 오토믹 시퀀스 카운터를 리셋(reset)한다. 상기 리셋은 제1 오토믹 시퀀스 카운터를 초기 상태로 설정하는 것을 의미한다.
예를 들어, 도 4에서 본 발명에 따른 시퀀스 제공 시스템은 제1 오토믹 시퀀스 카운터(401)에 저장된 제1 시퀀스인 "11"에서 제1 값 "1"을 증가시켜 캐리가 발생하는지를 판단하고, 캐리가 발생하면 제3 오토믹 시퀀스 카운터(403)에 기록된 현재 캐리를 "1"만큼 증가시켜 "01"로 기록하고, 제1 오토믹 시퀀스 카운터(401)를 리셋하여 "00"으로 기록한다.
이러한 도 3의 시퀀스 제공 과정은 제1 오토믹 시퀀스 카운터, 제2 오토믹 시퀀스 카운터 및 제3 오토믹 시퀀스 카운터가 최종 시쿼스를 제공할 때까지 반복하여 수행된다.
예를 들어, 도 4에서 본 발명에 따른 시퀀스 제공 시스템은 제1 오토믹 시퀀스 카운터가 "11"에서 "00"으로 리셋되면, 수신된 쿼리에 응답하여 제2 오토믹 시퀀스 카운터(402)에 기록된 캐리 "01" 및 상기 제1 오토믹 시퀀스 카운터 "00"를 판독하여 "0100"을 시퀀스 이용 모듈로 제공한다.
따라서, 본 발명은 제1 오토믹 시퀀스 카운터가 리셋되고, 제3 오토믹 시퀀스 카운터가 갱신되지 않은 상태에서도, 제2 오토믹 시퀀스 카운터에 기록된 캐리를 이용하여 시퀀스를 제공할 수 있으므로 신뢰성 있는 시퀀스를 제공할 수 있는 효과가 있다.
즉, 도 4에서 제1 오토믹 시퀀스 카운터가 "11"에서 "00"으로 리셋되고, 제3 오토믹 시퀀스 카운터가 "00"에서 "01"로 갱신되지 않은 상태에서도 본 발명에 따 른 시퀀스 제공 시스템은 쿼리에 응답하여 제2 오토믹 시퀀스 카운터의 넥스트 캐리 "01" 및 제1 오토믹 시퀀스 카운터의 제1 시퀀스 "00"을 제공함으로써 신뢰성 있는 시퀀스를 제공하게 된다.
비록 도 4는 세 개의 2 비트 시퀀스 제공 모듈로 4 비트 시퀀스 제공 시스템을 구현하는 경우에 대하여 설명하였으나, 본 발명에 따른 시퀀스 제공 방법 및 시스템에 따라 세 개의 32 비트 오토믹 시퀀스 제공 모듈로 64 비트 시퀀스 제공 시스템을 구현할 수 있으며 이러한 경우 상기한 효과는 더욱 현저하다.
따라서, 본 발명은 짧은 비트의 오토믹 시퀀스만을 제공하는 장치를 이용하여 긴 비트의 오토믹 시퀀스를 얻을 수 있는 방법 및 시스템을 제공할 수 있다. 특히, N 비트의 오토믹 시퀀스를 제공하는 장치에서 N*2 비트의 안전한 오토믹 시퀀스를 얻을 수 있는 방법 및 시스템을 제공할 수 있다.
또한 본 발명은 갱신 시퀀스를 제1 오토믹 시퀀스 카운터에서 제공하는 시퀀스 중 가운데에 위치한 시퀀스로 설정함으로써, 시퀀스 제공 주기가 빠르더라도 안정적으로 오토믹 시퀀스를 제공할 수 있도록 한다. 즉, 제1 오토믹 시퀀스 카운터가 N 비트의 오토믹 시퀀스를 제공하는 카운터일 경우, 갱신 시퀀스를 "2N-1"로 설정하면, 제1 시퀀스가 빠르게 카운트되어 리셋되더라도 제2 오토믹 시퀀스 카운터의 넥스트 캐리에 제1 시퀀스에 의해 발생하는 캐리를 미리 저장하고 있으므로, 이를 이용하여 안전하게 오토믹 시퀀스를 제공할 수 있는 효과가 있다.
예를 들어, 본 발명에 따라 제1 오토믹 시퀀스 카운터가 32 비트 오토믹 시 퀀스 카운터일 때, 갱신 시퀀스를 "231"로 설정하면, 제2 오토믹 시퀀스 카운터는 상기 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스가 231일 때, 제1 오토믹 시퀀스 카운터에서 발생할 캐리를 제2 오토믹 시퀀스 카운터에 미리 증가시켜 기록하므로, 결과적으로 제1 시퀀스가 매우 빠르게 카운트되어 제1 오토믹 시퀀스 카운터가 리셋되더라도 안정적으로 기록된 캐리를 이용하여 시퀀스를 신뢰성 있게 제공할 수 있는 효과가 있다.
따라서, 본 발명은 제1 시퀀스 카운터에서 제1 시퀀스가 카운트되는 시간 간격보다 상기 제3 오토믹 시퀀스 카운터가 업데이트되는 시간이 상대적으로 길더라도 신뢰성 있는 시퀀스를 제공할 수 있는 효과가 있다.
또한 본 발명의 다른 실시예에 따른 시퀀스 제공 시스템은 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 오토믹하게 제1 값만큼 증가시키고, 상기 제1 오토믹 시퀀스 카운터에서 캐리가 발생하면 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리(present-carry)를 제3 값만큼 증가시키고, 상기 제1 오토믹 시퀀스 카운터는 리셋하고, 상기 제1 시퀀스가 갱신 시퀀스인 경우 상기 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리를 제2 값만큼 증가시킴으로써 안정성있는 시퀀스를 오토믹하게 제공할 수 있다. 시퀀스 이용 모듈은 상기 제1 오토믹 시퀀스 카운터, 제2 오토믹 시퀀스 카운터 및 제3 오토믹 시퀀스 카운터에 저장된 시퀀스를 판독하여 시퀀스를 제공받는다.
이 때, 도 3의 시퀀스 제공 과정과 마찬가지로, 상기 시퀀스 제공 시스템은 시퀀스에 대한 쿼리를 수신하면 상기 쿼리에 응답하여, 상기 제1 시퀀스를 갱신 시 퀀스와 비교하고, 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 미만인 경우, 상기 제2 오토믹 시퀀스 카운터에 저장된 넥스트(next) 캐리 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 판독하여 제공한다.
또한 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 이상인 경우, 상기 제3 오토믹 시퀀스 카운터에 저장된 상기 현재 캐리 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 판독하여 제공한다.
따라서, 본 발명의 다른 실시예에 의하더라도 짧은 비트의 오토믹 시퀀스만을 제공하는 장치를 이용하여 긴 비트의 오토믹 시퀀스를 얻을 수 있는 방법 및 시스템을 제공할 수 있다.
본 발명에 따른 시퀀스 제공 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하 는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
도 5는 본 발명의 일실시예에 따른 시퀀스 제공 시스템의 구성을 도시한 블록도이다. 도 5를 참조하면, 본 발명의 일실시예에 따른 시퀀스 제공 시스템은 쿼리 수신부(501), 시퀀스 판단부(502), 시퀀스 제공부(503)를 포함하여 구성될 수 있다.
쿼리 수신부(501)는 시퀀스 이용 모듈로부터 상기 시퀀스에 대한 쿼리를 수신한다. 상기 쿼리는 본 발명의 시퀀스 제공 시스템에 시퀀스를 요구하는 어떠한 형태의 데이터도 될 수 있음은 이미 설명한 바와 같다.
시퀀스 판단부(502)는 상기 쿼리 수신에 응답하여 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 갱신 시퀀스와 비교한다. 상기 갱신 시퀀스는 제1 오토믹 시퀀스 카운터에서 제공하는 시퀀스 중 하나의 값이 될 수 있음은 이미 설명한 바와 같다.
시퀀스 제공부(503)는 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 미만인 경우, 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리(next-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 소정의 제1 값만큼 증가시키고, 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 이상인 경우, 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리(present-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 상기 제1 값만큼 증가시킨다.
또한 시퀀스 제공부(503)는 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스인 경우, 상기 제2 오토믹 시퀀스 카운터에 저장된 상기 넥스트 캐리를 소정의 제2 값만큼 증가시키고, 상기 제1 오토믹 시퀀스 카운터에서 캐리가 발생하면 제3 오토믹 시퀀스 카운터를 소정의 제3 값만큼 증가시키고, 상기 제1 오토믹 시퀀스 카운터는 리셋한다. 상기 시퀀스 제공부의 시퀀스 제공 과정은 도 3 및 도 4를 참조하여 상세히 설명한 바 있다.
따라서, 본 발명의 시퀀스 제공 시스템은 제1 오토믹 시퀀스 카운터가 리셋되고, 제3 오토믹 시퀀스 카운터가 갱신되지 않은 상태에서도, 제2 오토믹 시퀀스 카운터에 기록된 캐리를 이용하여 시퀀스를 제공할 수 있으므로 짧은 비트의 오토믹 시퀀스 카운터를 이용하여 긴 비트의 안정성 있는 시퀀스를 제공할 수 있는 효과가 있다.
또한, 본 발명의 시퀀스 제공 시스템은 제1 시퀀스가 요구되는 시간 간격 보다 상기 제3 오토믹 시퀀스 카운터가 업데이트되는 시간이 상대적으로 길더라도 신뢰성 있는 시퀀스를 제공할 수 있는 효과가 있다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.
본 발명은 짧은 비트의 오토믹 시퀀스만을 제공하는 장치에서도 긴 비트의 오토믹 시퀀스를 얻을 수 있는 방법 및 시스템을 제공한다. 특히, N 비트의 오토믹 시퀀스를 제공하는 장치에서 N*2 비트의 안전한 오토믹 시퀀스를 얻을 수 있는 방법 및 시스템을 제공한다.
또한 본 발명은 제1 오토믹 시퀀스 카운터가 리셋되고, 제3 오토믹 시퀀스 카운터가 갱신되지 않은 상태에서도, 제2 오토믹 시퀀스 카운터에 저장된 제2 캐리를 이용하여 시퀀스를 제공함으로써 신뢰성 있는 긴 비트의 오토믹 시퀀스를 제공하는 방법 및 시스템을 제공한다.
또한 본 발명은 제1 오토믹 시퀀스 카운터에서 저장된 제1 시퀀스가 갱신 시퀀스인 경우 제2 오토믹 시퀀스 카운터의 제2 캐리를 미리 증가시켜 저장하므로, 제1 오토믹 시퀀스 카운터가 리셋되는 경우 안정적으로 제2 오토믹 시퀀스 카운터에 저장된 제2 캐리를 이용하여 시퀀스를 신뢰성 있게 제공할 수 있는 시퀀스 제공 방법 및 시스템을 제공한다.
또한 본 발명은 제1 오토믹 시퀀스 카운터에 시퀀스가 요구되는 시간 간격 보다 제3 오토믹 시퀀스 카운터가 업데이트되는 시간이 상대적으로 길더라도 신뢰성 있는 시퀀스를 제공할 수 있는 시퀀스 제공 방법 및 시스템을 제공한다.

Claims (12)

  1. 시퀀스(sequence)를 제공하는 방법에 있어서,
    상기 시퀀스에 대한 쿼리를 수신하는 단계;
    상기 쿼리 수신에 응답하여 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 소정의 갱신 시퀀스와 비교하는 단계;
    상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 미만인 경우, 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리(next-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 소정의 제1 값만큼 증가시키는 단계; 및
    상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 이상인 경우, 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리(present-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 판독하여 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 상기 제1 값만큼 증가시키는 단계
    를 포함하는 것을 특징으로 하는 시퀀스 제공 방법.
  2. 제1항에 있어서,
    상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스인 경우, 상기 제2 오토믹 시퀀스 카운터에 저장된 상기 넥스트 캐리를 소정의 제2 값만큼 증가시키는 단계
    를 더 포함하는 것을 특징으로 하는 시퀀스 제공 방법.
  3. 제1항에 있어서,
    상기 제1 오토믹 시퀀스 카운터에서 캐리가 발생하면 제3 오토믹 시퀀스 카운터를 소정의 제3 값만큼 증가시키고, 상기 제1 오토믹 시퀀스 카운터는 리셋하는 단계
    를 더 포함하는 것을 특징으로 하는 시퀀스 제공 방법.
  4. 제1항에 있어서,
    상기 제1 오토믹 시퀀스 카운터, 상기 제2 오토믹 시퀀스 카운터 및 상기 제3 오토믹 시퀀스 카운터는 32 비트 오토믹 시퀀스를 제공하는 카운터인 것을 특징으로 하는 시퀀스 제공 방법.
  5. 제1항에 있어서,
    상기 제1 오토믹 시퀀스 카운터가 N 비트 오토믹 시퀀스를 제공하는 카운터일 때, 상기 갱신 시퀀스는 2N-1인 것을 특징으로 하는 시퀀스 제공 방법.
  6. 시퀀스를 제공하는 방법에 있어서,
    제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 소정의 제1 값만큼 증가시 키는 단계;
    상기 제1 오토믹 시퀀스 카운터에서 캐리가 발생하면 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리(present-carry)를 소정의 제3 값만큼 증가시키고, 상기 제1 오토믹 시퀀스 카운터는 리셋하는 단계; 및
    상기 제1 시퀀스가 소정의 갱신 시퀀스인 경우 상기 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리를 소정의 제2 값만큼 증가시키는 단계
    를 포함하는 것을 특징으로 하는 시퀀스 제공 방법.
  7. 제6항에 있어서,
    상기 시퀀스에 대한 쿼리를 수신하는 단계;
    상기 쿼리에 응답하여, 상기 제1 시퀀스를 갱신 시퀀스와 비교하는 단계; 및
    상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 미만인 경우, 상기 제2 오토믹 시퀀스 카운터에 저장된 넥스트(next) 캐리 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 판독하여 제공하는 단계
    를 더 포함하는 것을 특징으로 하는 시퀀스 제공 방법.
  8. 제6항에 있어서,
    상기 시퀀스에 대한 쿼리를 수신하는 단계;
    상기 쿼리에 응답하여, 상기 제1 시퀀스를 갱신 시퀀스와 비교하는 단계; 및
    상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 이상인 경우, 상기 제3 오토믹 시퀀스 카운터에 저장된 상기 현재 캐리 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 판독하여 제공하는 단계
    를 더 포함하는 것을 특징으로 하는 시퀀스 제공 방법.
  9. 제1항 내지 제8항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  10. 시퀀스(sequence)를 제공하는 시스템에 있어서,
    상기 시퀀스에 대한 쿼리를 수신하는 쿼리 수신부;
    상기 쿼리 수신에 응답하여 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 소정의 갱신 시퀀스와 비교하여 판단하는 시퀀스 판단부; 및
    상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 미만인 경우, 제2 오토믹 시퀀스 카운터에 저장된 넥스트 캐리(next-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 소정의 제1 값만큼 증가시키고, 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스 이상인 경우, 제3 오토믹 시퀀스 카운터에 저장된 현재 캐리(present-carry) 및 상기 제1 오토믹 시퀀스 카운터에 저장된 제1 시퀀스를 제공하고, 상기 제1 오토믹 시퀀스 카운터에 저장된 상기 제1 시퀀스를 상기 제1 값만큼 증가시키는 시퀀스 제공부
    를 포함하는 것을 특징으로 하는 시퀀스 제공 시스템.
  11. 제10항에 있어서,
    상기 시퀀스 제공부는 상기 비교 결과 상기 제1 시퀀스가 상기 갱신 시퀀스인 경우, 상기 제2 오토믹 시퀀스 카운터에 저장된 상기 넥스트 캐리를 소정의 제2 값만큼 증가시키는 것을 특징으로 하는 시퀀스 제공 시스템.
  12. 제10항에 있어서,
    상기 시퀀스 제공부는 상기 제1 오토믹 시퀀스 카운터에서 캐리가 발생하면 제3 오토믹 시퀀스 카운터를 소정의 제3 값만큼 증가시키고, 상기 제1 오토믹 시퀀스 카운터는 리셋하는 것을 특징으로 하는 시퀀스 제공 시스템.
KR1020050066044A 2005-07-20 2005-07-20 신뢰성 있는 시퀀스 제공 방법 및 시스템 KR100717240B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050066044A KR100717240B1 (ko) 2005-07-20 2005-07-20 신뢰성 있는 시퀀스 제공 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050066044A KR100717240B1 (ko) 2005-07-20 2005-07-20 신뢰성 있는 시퀀스 제공 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20070011002A KR20070011002A (ko) 2007-01-24
KR100717240B1 true KR100717240B1 (ko) 2007-05-11

Family

ID=38012119

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050066044A KR100717240B1 (ko) 2005-07-20 2005-07-20 신뢰성 있는 시퀀스 제공 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR100717240B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107180291B (zh) * 2016-03-11 2021-02-12 国网河北省电力公司 电力系统新设备启动方案智能编制方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0991180A (ja) * 1995-09-21 1997-04-04 Nec Corp リングファイル形式データ管理方式
JPH1078864A (ja) 1996-09-02 1998-03-24 Nippon Telegr & Teleph Corp <Ntt> 乱数生成器
KR20050055010A (ko) * 2002-10-16 2005-06-10 노키아 코포레이션 멀티캐스트 데이터 전송
US20050165500A1 (en) 2004-01-22 2005-07-28 International Business Machines Corporation Use of massively multi-player online games for computationally hard problems
US20060059221A1 (en) 2004-09-10 2006-03-16 Cavium Networks Multiply instructions for modular exponentiation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0991180A (ja) * 1995-09-21 1997-04-04 Nec Corp リングファイル形式データ管理方式
JPH1078864A (ja) 1996-09-02 1998-03-24 Nippon Telegr & Teleph Corp <Ntt> 乱数生成器
KR20050055010A (ko) * 2002-10-16 2005-06-10 노키아 코포레이션 멀티캐스트 데이터 전송
US20050165500A1 (en) 2004-01-22 2005-07-28 International Business Machines Corporation Use of massively multi-player online games for computationally hard problems
US20060059221A1 (en) 2004-09-10 2006-03-16 Cavium Networks Multiply instructions for modular exponentiation

Also Published As

Publication number Publication date
KR20070011002A (ko) 2007-01-24

Similar Documents

Publication Publication Date Title
US11188560B2 (en) Synchronizing object in local object storage node
CN110413650B (zh) 一种业务数据的处理方法、装置、设备和存储介质
CN103460203A (zh) 群集唯一标识符
CN112087530B (zh) 一种将数据上传至区块链系统的方法、装置、设备及介质
CN110808839B (zh) 一种区块链异常数据的处理方法、装置、设备和介质
CN104967536A (zh) 实现多机房数据一致性的方法和装置
CN112714158A (zh) 事务处理方法、中继网络、跨链网关、系统、介质和设备
US11544119B2 (en) Business rules processing framework for implementing new desired functionality in a telecommunication application
CN112214519A (zh) 一种数据查询方法、装置、设备及可读介质
CN113746882A (zh) 一种用户会话信息存储方法、装置及电子设备
CN112463318A (zh) 一种定时任务处理方法、装置及系统
US20170091044A1 (en) Replicating data in a data storage system
CN113885797B (zh) 一种数据存储方法、装置、设备及存储介质
KR100717240B1 (ko) 신뢰성 있는 시퀀스 제공 방법 및 시스템
CN112291321B (zh) 业务处理方法、装置及系统
CN108241616B (zh) 消息推送方法和装置
GB2542370A (en) A system for monitoring a plurality of distributed devices
CN108710658B (zh) 一种数据记录的存储方法及装置
CN109639665B (zh) 基于多通信介质扩展发布订阅系统传输协议的方法
CN112949797B (zh) 一种信息载体的管理方法、装置、存储介质及服务器
CN101137972A (zh) 自适应组播文件传输协议
CN110069221B (zh) 数据释放方法及装置
CN111367694B (zh) 事件处理方法、服务器及计算机存储介质
CN111405297B (zh) 活动榜单结算方法、装置及存储介质
KR20180078746A (ko) 개발자에게 애플리케이션의 자동화된 테스트를 제공하고 이를 통해 애플리케이션 마켓 포털에 등록하는 방법, 이를 이용하는 서버 및 단말

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

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20120329

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170328

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180328

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190325

Year of fee payment: 13