KR101275291B1 - 시그니처 정보를 이용한 타임스탬핑 처리 장치 및 방법 - Google Patents

시그니처 정보를 이용한 타임스탬핑 처리 장치 및 방법 Download PDF

Info

Publication number
KR101275291B1
KR101275291B1 KR1020090116983A KR20090116983A KR101275291B1 KR 101275291 B1 KR101275291 B1 KR 101275291B1 KR 1020090116983 A KR1020090116983 A KR 1020090116983A KR 20090116983 A KR20090116983 A KR 20090116983A KR 101275291 B1 KR101275291 B1 KR 101275291B1
Authority
KR
South Korea
Prior art keywords
signature information
random number
pseudo random
number sequence
indicator bit
Prior art date
Application number
KR1020090116983A
Other languages
English (en)
Other versions
KR20100122045A (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 US12/776,875 priority Critical patent/US20100287402A1/en
Publication of KR20100122045A publication Critical patent/KR20100122045A/ko
Application granted granted Critical
Publication of KR101275291B1 publication Critical patent/KR101275291B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/20Arrangements for detecting or preventing errors in the information received using signal quality detector

Abstract

물리 계층에서의 타임스탬핑 방법이 개시된다. 일 실시예에 따른 타임스탬핑 처리 장치는 물리 계층으로 동기화 메시지가 전달되면 동기화 메시지에 대하여 물리 계층에서의 타임스탬핑을 수행하기 위한 동작을 수행한다. 타임스탬핑 처리 장치의 응용 계층에서는 물리 계층에서 수신된 메시지가 동기화 메시지인지 확인하기 위하여 의사 난수열의 시작을 알리는 시작 지표 비트, 의사 난수열 및 의사 난수열의 끝을 알리는 종료 지표 비트를 포함하는 비트스트림을 생성하고, 비트스트림을 동기화 메시지의 시그니처 정보로서 삽입한다. 타임스탬핑 처리 장치의 물리 계층에서는 동기화 메시지에 포함된 시그니처 정보를 검출하고, 시그니처 정보가 검출되면, 타임스탬핑 정보를 생성한다.
타임스탬핑, 동기화, PRBS, 선형 피드백 시프트 레지스터, 물리 계층

Description

시그니처 정보를 이용한 타임스탬핑 처리 장치 및 방법{Apparatus and method for timestamping using signature information}
본 발명의 일 양상은 네트워크 기술에 관한 것으로, 보다 상세하게는 시간 동기화 기술에 관한 것이다.
본 발명은 지식경제부 및 정보통신연구진흥원의 IT원천기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2008-F-017-02, 과제명: 100Gbps급 이더넷 및 광전송기술개발].
네트워크를 통해 상호 연결된 단말 간의 시간정보를 동일화시키기 위해 시간 동기화 과정이 필요하다. 시간 동기화 과정에는 IEEE 1588 프로토콜 또는 네트워크 타임 프로토콜(NTP: Network Time Protocol)과 같이 타임스탬프(timestamp)를 이용하여 타이밍 정보(timing information)를 전달하기 위한 다양한 방법들이 존재한다.
예를 들면, IEEE 1588 기술은 네트워크 단말 간 정확한 시간 동기화를 가능하게 하는 표준시간 전송 프로토콜이다. IEEE 1588은 두 단말 간의 기준시간 차이와 두 단말 간의 패킷 전송시 발생하는 전송지연시간을 이용하여 시간 동기화를 수 행한다. 그러나, 기존의 매체 접속 제어 계층 및 상위 계층에서 수행되는 타임스탬핑 방법에서 각 계층에서 딜레이와 지터 등의 불확실성(uncertainties)이 발생할 수 있으므로, 타임스탬프 값의 정확도가 떨어지는 문제점이 있다.
의사 난수열을 이용하여, 물리 계층에서 정확한 타임스탬핑 시점을 제공하는 장치 및 방법이 제공된다.
또한, 의사 난수열 오검출 비율을 줄이기 위한 장치 및 방법이 제공된다.
일 양상에 따른 타임스탬핑 처리 장치는 시그니처 정보 생성부, 시그니처 정보 할당부, 시그니처 정보 검증부 및 타임스탬핑 수행부를 포함한다. 시그니처 정보 생성부는 의사 난수열의 시작을 알리는 시작 지표 비트, 의사 난수열, 의사 난수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보를 생성한다. 시그니처 정보 할당부는 시그니처 정보를 동기화 메시지에 할당한다. 시그니처 정보 검증부는 물리 계층에서 동기화 메시지에 포함된 시그니처 정보를 검출한다. 타임스탬프 수행부는 시그니처 정보가 검출되면, 타임스탬핑 정보를 생성한다.
다른 양상에 따른 동기화 메시지를 수신하는 타임스탬핑 처리 장치는, 시그니처 정보 검증부 및 타임스탬핑 수행부를 포함한다. 시그니처 정보 검증부는 메시지가 수신되면, 메시지에 의사 난수열의 시작을 알리는 시작 지표 비트, 의사 난수열, 및 의사 난수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보가 포함되어 있는지 검출한다. 타임스탬핑 수행부는 시그니처 정보가 검출되면, 동기화 메시지에 대한 타임스탬핑 정보를 생성한다.
또 다른 양상에 따른 타임스탬핑 처리 장치는 일 양상에 따른 타임스탬핑 처리 장치의 구성요소 및 다른 양상에 따른 동기화 메시지를 수신하는 타임스탬핑 처리 장치의 구성요소를 모두 포함한다.
또 다른 양상에 따른 타임스탬핑 방법은 의사 난수열의 시작을 알리는 시작 지표 비트, 의사 난수열, 의사 난수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보를 생성하는 동작과, 시그니처 정보를 동기화 메시지에 할당하는 동작과, 물리 계층에서 동기화 메시지에 포함된 시그니처 정보의 검출 동작을 수행하는 동작과, 시그니처 정보가 검출되면, 타임스탬핑 정보를 생성하는 동작을 포함한다.
또 다른 양상에 따른 타임스탬핑 처리 방법은, 다른 단말로부터 메시지를 수신하는 동작과, 메시지에 의사 난수열의 시작을 알리는 시작 지표 비트, 의사 난수열, 및 의사 난수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보가 포함되어 있는지를 확인하기 위하여 시그니처 정보 검출 동작을 수행하는 동작과, 시그니처 정보가 검출되면, 메시지를 동기화 메시지로 결정하고, 동기화 메시지에 대한 타임스탬핑 정보를 생성하는 동작을 포함한다.
일 실시예에 따른 시그니처 정보가 할당된 동기화 메시지를 이용한 물리 계층 타임스탬핑 방법에 따르면, 기존의 매체 접속 제어 계층 및 응용 계층과 같은 상위 계층에서 수행되는 타임스탬핑 방법에서 생길 수 있는 딜레이와 지터 같은 불확실성(uncertainties)을 줄이고, 높은 정확도를 갖는 타임스탬핑을 제공하는 이점이 있다.
또한, 기존의 이더넷 구성을 크게 수정하지 않고 IEEE 1588 의 선택적인 TLV 필드에 시그니처 정보를 삽입 및 검출함으로써 단순하고 정확성을 갖는 타임스탬핑 방법을 제공할 수 있다. 뿐만 아니라 시그니처 정보의 유일성을 제공하기 위해 의사 난수열의 바로 앞 비트와 끝 비트에 임의의 지표(indicator) 비트를 만들어 주는 방법을 이용하고, 충분한 수의 의사 난수열을 사용함으로써 일반 데이터를 타임스탬프 수열로 오인할 확률을 비약적으로 낮출 수 있다.
또한, 동기화 메시지의 식별을 패킷 내 MAC Type, UDP Port 등 각 계층에서 추가되는 정보가 아닌 TLV 필드 내의 시그니처 정보를 보고 판별할 수 있으므로, IP, UDP, TCP 등 계층에 제약을 받지 않는 동기화 메시지 생성 및 처리가 가능하다.
또한, 기존의 네트워크 구조에 별 다른 수정을 가하지 않고, 추가적인 회로를 최소화 함으로써 기존의 모델에 문제 없이 적용될 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시예를 상세하게 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용 어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 시간 동기화를 위한 타임스탬프 처리 시스템의 구성도이다.
도 1을 참조하면, 타임스탬프 처리시스템은 네트워크에 연결된 단말(10)과 타 단말(20)을 포함한다. 이때 단말(10)과 타 단말(20)은 상호 간에 시간을 동기화한다. 일 실시예에 따라 단말 간 시간 동기화는 이더넷, 보다 상세하게는 40G나 100G 이더넷과 같은 고속 이더넷 망에서 구현될 수 있으나 이에 한정되지 않는다.
본 발명의 일 실시예에 따르면, 단말 간 시간 동기화를 위해 IEEE 1588을 이용할 수 있다. IEEE 1588은 네트워크 측정과 제어 시스템을 위한 정밀 시간 동기화 프로토콜에 대한 표준(Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems)으로써, 네트워크를 통해 상호 연결된 단말 간의 시간정보를 동일화시키기 위한 프로토콜이다. IEEE 1588은 두 단말 간의 기준시간의 차이와 두 단말 간의 패킷 전송시 발생하는 전송지연시간을 이용하여 시간 동기화를 이룬다.
네트워크 내에는 기준 클럭을 제공하는 마스터 단말 및 마스터 단말에 맞춰 자신의 시간정보를 일치시켜 동기를 수행하는 슬레이브 단말이 존재한다. 예를 들면, 도 1의 단말(10)이 마스터 단말이며, 타 단말(20)이 슬레이브 단말일 수 있다. 마스터 단말 및 슬레이브 단말은 복수 개일 수 있다.
이때 마스터 단말과 슬레이브 단말은 동기화 메시지(Sync message), 폴로업 메시지(FollowUp message), 지연 요청 메시지(Delay Request message), 지연 응답 메시지(Delay Response message), 전파 지연 요청 메시지(Propagation Delay Request message) 또는 전파 지연 응답 메시지(Propagation Delay Response message) 등을 이용하여 상호 단말 간에 시간을 동기화할 수 있다.
도 2는 본 발명의 일 실시예에 따른 타임스탬프 처리장치의 계층적 구조를 나타내는 도면이다.
도 2를 참조하면, 일 실시예에 따른 타임스탬프 처리장치(100)는 송신부(110) 및 수신부(120)를 포함할 수 있다. 여기서 타임스탬프 처리장치(100)는 도 1에서 전술한 단말(10) 또는 타 단말(20)일 수 있으며, 송신부(110) 및 수신부(120) 중 하나를 포함하거나, 둘 다를 포함하여 구성될 수 있다.
도 2를 참조하면, 일 실시예에 따른 타임스탬프 처리 장치(100)는 응용 계층(Application layer;112, 122), 매체접속제어 계층(Media Access Control layer; 114, 124) 및 물리 계층(Physical layer; 116, 126)을 포함한다.
타임스탬프 처리장치(1)는 정확한 타임스탬핑을 제공하기 위해 물리 계층에서 타임스탬프 수행을 결정한다. 일 실시예에 따른 타임스탬핑 수행 위치(또는 시간)이 물리 계층 상에서 수행됨에 따라 타임스탬핑의 정밀도가 향상된다. 예를 들면, 매체접속제어(이하, MAC) 계층의 상위계층에서 타임스탬핑이 수행될 경우, 소프트웨어상의 지터, CPU 엑세스 시간(Access Time) 등으로 인하여 타임스탬핑의 정밀한 결과값을 얻을 수 없다. 또 다른 예로 MAC 계층 내부에서 타임스탬핑이 수행될 경우 재전송, 매체접속(Mac Access) 또는 정지 제어(Pause control)로 인한 지 연(delay) 또는 지터(jitter) 때문에 타임스탬핑의 정밀한 결과값을 얻을 수 없다.
그러나, 타임스탬핑 위치가 최하위 계층인 물리 계층 상에서 결정됨에 따라 전술한 다른 계층에서 타임스탬핑이 이루어졌을 때의 문제점을 해결할 수 있으며, 그 정확도를 향상시킬 수 있다.
우선, 송신부(110)에 대한 계층 구조를 참조하여 타임스탬핑을 수행하는 동작에 대하여 설명한다. 시그니처 정보 생성 및 할당은 제1 응용 계층(112) 또는 제1 MAC 계층(114) 등에서 이루어질 수 있는데, 제1 응용 계층(112)에서의 시그니처 정보의 생성 및 할당과 제1 MAC 계층(114)에서의 시그니처 정보의 생성 및 할당에 대하여 순차적으로 설명한다.
제1 응용 계층(112)은 단말 간 시간 동기화를 위해, 타 단말로 송신할 메시지에 동기화 메시지임을 식별할 수 있는 시그니처 정보(Signature information)를 할당할 수 있고 이를 제1 MAC 계층(114)을 거쳐 제1 물리 계층(116)으로 송신할 수 있다. 이 과정에서 제1 MAC 계층(114)은 제1 응용 계층(112)으로부터 패킷을 수신하여 이를 제1 물리 계층(116)으로 전달한다.
시그니처 정보에 대응하는 비트 스트림의 길이가 길수록 타임스탬프 정보를 나타내는 비트스트림을 검출기에서 오검출하는 확률이 낮아진다. 예를 들어, 64비트의 시그니처 비트 스트림을 이용될 수 있으며, 시그니처 비트스트림의 길이는 시스템에 따라 변경될 수 있다.
여기에서, 시그니처 정보는 동기화 메시지의 타입(Type), 길이(Length) 및 값(Value)정보를 표시하는 TLV 필드(Type, Length, Value Field)에 할당될 수 있 다. TLV 필드는 동기화 메시지, 예를 들면 IEEE 1588 메시지의 끝에 선택적으로 할당될 수 있는 필드이다. 따라서, 타입 필드에 미리 정의된 TLV의 타입을 할당하고, 길이 필드에 뒤에 이어지는 값의 길이를 할당하고, 값 필드에 사용자가 원하는 데이터를 할당할 수 있다. 동기화 메시지의 선택적인 TLV 필드에 시그니처 정보를 할당함에 따라 기존 네트워크 구성을 수정하지 않고도 타임스탬핑을 정확하게 수행할 수 있다.
한편, 일 실시예에 따르면 시그니처 정보에는 동기화 메시지 구분을 위한 시퀀스 식별자, 의사 난수열, 및 의사 난수열의 시작 및 종료를 알리는 지표 비트들이 포함된다.
의사 난수열은 완전한 무작위 랜덤 비트열은 아니지만 의사적으로 랜덤하게 만들어진 패턴을 갖는 비트열이다. 의사 난수열은 Mersenne twister, 기약 다항식(prime polynomial) 등을 이용해 생성될 수 있는데, 그 일례로 선형 피드백이 있는 시프트 레지스터(Linear Feedback Shift Register, LFSR)를 통해 생성될 수 있다. 여기에서는 의사 난수열이 PRBS(Pseudo Random Binary Sequence)인 경우에 대하여 설명되어 있으나 다른 형태의 난수열이 이용될 수 있다.
선형 피드백 시프트 레지스터(이하, LFSR)는 클록의 주기에 맞추어 레지스터들의 값이 하나씩 시프트되고 동시에 미리 정해놓은 탭(Tab) 값들의 배타적 논리합(XOR) 연산 결과가 시프트 레지스터의 입력값으로 인가되는 회로이다. 이에 따라, 전술한 LFSR를 이용한 의사 난수열 알고리즘을 통해 간단한 타임스탬핑을 제공할 수 있다.
전술한 바와 같이, 시그니처 정보의 생성 및 할당은 제1 응용 계층(112)뿐 아니라 제1 MAC 계층(114)에서도 이루어질 수 있다. 제1 MAC 계층(114)에서는 시작 프레임 식별자(Start Frame Delimiter)을 생성하여 프레임의 시작을 알린다. 시작 프레임 식별자는 통상적으로 7바이트의 1과 0이 반복되는 구조와 1바이트의 1만 반복되는 총 8바이트의 구조의 비트스트림으로 이루어진다. 이러한 특수한 비트스트림을 이용하여 프레임의 시작을 나타낸다.
본 발명에서는 제1 MAC 계층(114)에서 시그니처 정보 생성 및 할당의 기능을 수행할 경우 시작 프레임 식별자로서 동기화 메시지 구분을 위한 시퀀스 식별자와 의사 난수열, 의사 난수열의 시작 및 종료를 알리는 지표 비트들로 이루어진 비트림이 이용될 수 있다. 제1 MAC 계층(114)의 시작 프레임 식별자로서 동기화 메시지 구분을 위한 비트스트림이 삽입됨에 따라, 프레임 시작의 검출뿐만 아니라 동기화 메시지 구분 및 시퀀스 ID를 용이하게 검출할 수 있다.
제1 물리 계층(116)은 제1 MAC 계층(114)으로부터 비트 스트림을 수신하고, PRBS 검증부(118)를 이용하여 수신한 비트 스트림이 시그니처 정보를 포함하는지를 검증한다. 상세하게는, 제1 물리 계층(116)을 통과하는 모든 비트(bit)들은 순서대로 PRBS 검증부(118)의 레지스터에 저장된다. LFSR의 결과값과 레지스터에 저장된 비트의 다음 번 비트와의 배타적 논리합(XOR)에 의하여 의사 난수열 여부를 검사 받게 된다. 만약 검출된 비트가 의사 난수열과 일치 하다면 검증부(118)의 결과값으로 0이 검출되며, 의사 난수열이 아니라면 검증부(118)의 결과값으로 1이 검출될 수 있다. PRBS 검증부(118)는 구현예에 따라서는 검출된 비트가 의사 난수열 과 일치하는 경우, 결과값으로 1이 검출되며, 의사 난수열이 아닌 경우 결과값으로 0이 검출되도록 구성될 수 있다. 본 발명은 전술한 실시예에 한정되지 않고 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.
이어서, 제1 물리 계층(116)은 검증이 이루어진 경우 수신한 비트 스트림을 동기화 메시지로 판단하여 타임스탬핑 수행부(도시되지 않음)에 타임스탬핑을 명령하며, 타임스탬핑 수행부는 타임스탬핑 정보와 시퀀스 식별자를 레지스터(도시되지 않음)에 저장하는 명령을 전달할 수 있다. 이때 제1 물리 계층(116) 상에서 기약다항식을 역이용한 PRBS 검증부(118)를 통해 의사 난수열을 검증할 수 있다.
제1 응용 계층(112)에서는 매핑 테이블(mapping table)을 참고하여 PRBS 검증부(118)로부터 전송받은 수열을 이용하여 시퀀스 식별자를 복구한다. 제1 응용 계층(112)에서는 복구된 시퀀스 식별자가 자신이 최근에 보낸 시퀀스 식별자가 맞는지 검사하는 사후 검증 기능을 할 수 있다. 이 기능으로 인하여 의사 난수열 검출기에서 생길 수 있는 오류를 획기적으로 줄일 수 있다. 여기에서는 제1 응용 계층(112)에서 사후 검증 기능이 수행되는 것으로 설명하였으나, 사후 검증 기능이 수행될 수 있다. 제1 물리 계층(116)의 레지스터에 저장된 타임스탬핑 정보를 이용하여 폴로업 메시지와 같은 추가적인 동기화 메시지가 제1 응용 계층(112) 또는 다른 계층에서 생성될 수 있다.
다음으로, 수신부(130)에 대한 계층 구조를 참조하여 다른 단말로부터 수신된 메시지에 포함될 수 있는 타임스탬핑 정보를 검출하여 동기화를 수행하는 동작에 대하여 설명한다.
제2 MAC 계층(124)은 제2 물리 계층(126)으로부터 패킷을 수신하여 이를 제2 응용 계층(122)으로 전달한다.
제2 물리 계층(126)은 타 단말로부터 메시지를 수신한다. 그리고, 제2 물리 계층(126)에서 PRBS 검증부(128)를 이용하여 수신한 메시지에 시그니처 정보가 포함되는지를 검증할 수 있다. 상세하게는, 제2 물리 계층(126)을 통과하는 모든 비트(bit)들은 순서대로 PRBS 검증부(128)의 레지스터에 저장된다. LFSR의 결과값과 레지스터에 저장된 비트의 다음 번 비트와의 배타적 논리합(XOR)에 의하여 의사 난수열 여부를 검사 받게 된다. 만약 검출된 비트가 의사 난수열과 일치 하다면 검증부(128)의 결과값으로 0이 검출되며, 의사 난수열이 아니라면 검증부(128)의 결과값으로 1이 검출될 수 있다.
검증 결과, 수신된 메시지가 타임스탬핑 정보를 포함하는 동기화 메시지라고 결정되면, 메시지에 포함된 타임스탬핑 정보를 제2 레지스터(도시되지 않음)에 저장한다. 레지스터는 물리 계층(126)에 있을 수 있으나, 다른 계층에 위치될 수도 있다. 타임스탬프 기능을 수행하는 계층에서 레지스터에 저장된 타임스탬핑 정보를 읽어들일 수 있다.
동기화를 수행하기 위해서는 제1 동기화 메시지(예를 들어 SYNC 메시지)가 송신단에서 전송된 시간 t1 및 제1 동기화 메시지가 수신 단말에서 수신된 시간 t2를 알아야 한다. 제1 동기화 메시지가 전송된 시간(t1)은 폴로업 메시지를 통해서 전달될 수 있다. 수신된 시간 t2는 제1 동기화 메시지가 수신 단말의 물리 계층에 도착할 때, 물리 계층내에 있는 시그니처 정보 검출기를 통해서 동기화 메시지임이 판별되면, 검출된 시간(t2)이 레지스터에 저장되는 시간이다.
지연 요청(Delay Request) 메시지 및 지연 응답(Delay Response) 메시지도 이와 같은 원리로 수행될 수 있다. 상세하게는, 수신 단말(슬레이브 단말)은 SYNC 메시지를 보낼 때와 마찬가지 방법으로 지연 요청 메시지 내에 시그니처 정보를 송신 단말(마스터 단말)로 송신하기 위해 제2 물리 계층(126)으로 메시지를 보낸다. 제2 물리 계층(126)에서는 시그니처 정보 검출시 타임스탬핑을 수행하여 시간(t3)을 얻는다. 지연 요청 메시지를 수신한 마스터 단말은 제1 물리 계층(116)에서 시그니처 정보를 판별하여 타임스탬핑을 수행하고, 타임스탬핑 수행 시간(t4)를 지연 응답 메시지 내에 삽입하여 다시 슬레이브에게 보낸다. 지연 응답 메시지를 수신한 슬레이브 단말은 메시지 안의 시간(t4)을 얻고, 오프셋 시간(offset time)과 전파 시간(propagation time)을 구할 수 있다. 이와 같이, 물리계층에서 시그니처 정보를 검출하여 타임스탬핑 수행을 지시할 수 있는 구성은 전술한 SYNC 메시지, 폴로업 메시지, 지연 요청 메시지 및 지연 응답 메시지 이외에도 다른 동기화 메시지들에도 비슷한 원리가 적용될 수 있다.
한편, 시그니처 정보 검출 기능은 물리 계층(112, 122)에 삽입되는데, 물리 계층(112, 122) 내부의 상세한 위치에 따라서 시그니처 정보를 검출하는 시그니처 정보 검출 회로 즉, PRBS 검증부(118, 128)의 구성에 차이가 있다. PRBS 검증부(118)는 시그니처 정보를 검출하는 PRBS 검출기 외에 시그니처 정보를 검출하는데 필요한 다른 구성요소를 포함하도록 구성될 수 있다.
송신부(110)에서 시그니처 정보 검출 기능이 제1 물리 계층(112) 내부의 스 크램블러(도시되지 않음) 전단에 삽입된다면, PRBS 검증부(118)는 단순히 PRBS 검출기로 이루어진다. 만약, 시그니처 정보 검출 기능이 제1 물리 계층(112) 내부의 스크램블러 후단에 삽입된다면, PRBS 검증부(118)는 디스크램블러 회로(도시되지 않음)와 PRBS 검출기로 이루어진다. 제1 물리 계층(112)의 스크램블러에 의하여 스크램블된 비트스트림들은 PRBS 검증부(118)의 디스크램블러에 의하여 디스크램블되고, 디스크램블된 비트스트림은 PRBS 검출기에 의하여 검출된다.
수신부(120)에서 시그니처 정보 검출 기능이 제2 물리 계층(122) 내부의 디스크램블러(도시되지 않음) 전단에 삽입된다면, PRBS 검증부(128)는 디스크램블러 회로(도시되지 않음)와 PRBS 검출기로 이루어진다. 시그니처 정보 검출 기능이 제2 물리 계층(122) 내부의 디스크램블러 후단에 삽입된다면, PRBS 검증부(128)는 단순히 PRBS 검출기만으로 이루어진다.
스크램블러/디스크램블러 이후에 시그니처 정보 검출 기능이 삽입될 경우, 보다 정확한 타임스탬프 값을 기대할 수 있지만, PRBS 검증부(118, 128)의 구성에 있어서 추가적인 회로인 디스크램블러가 요구된다.
저속 네트워크의 경우 물리계층(112, 122) 내부에서 직렬 데이터 전송이 이루어지지만 고속 네트워크의 경우 물리계층(112, 122) 내부에서 병렬 데이터 전송이 이루어질 수 있다. 따라서, PRBS 검증부(118, 128)는 네트워크의 물리 계층 (112, 122)내부의 데이터 전송 방법에 따라 단순한 직렬 검출기 또는 병렬 검출기를 사용할 수 있다. 병렬 검출기는 당업자에게 잘 알려진 기술로서 병렬 처리가 되는 디스크램블러 및 PRBS 검출기를 사용할 수 있다.
이하 후술되는 도면들에서는 도 2에 도시된 계층적 구조를 참조로 하여, 일 실시예에 따른 타임스탬프 처리장치 및 그 방법에 대해 상세히 후술한다.
도 3은 본 발명의 일 실시예에 따른 타임스탬프 처리 장치의 송신부의 구성도이다.
도 3을 참조하면, 일 실시예에 따른 송신부(110)는 시그니처 정보 생성부(310), 시그니처 정보 할당부(320), 시그니처 정보 검증부(330), 타임스탬핑 수행부(340)를 포함하며, 사후 시그니처 정보 검증부(350)를 더 포함할 수 있다. 시그니처 정보 생성부(310), 시그니처 정보 할당부(320) 및 사후 시그니처 정보 검증부(350)는 제1 응용 계층(112) 또는 제1 MAC 계층(114) 상에 위치하며, 시그니처 정보 검증부(330) 및 타임스탬핑 수행부(340)는 제1 물리 계층(116) 상에 위치할 수 있다.
시그니처 정보 생성부(310)는 의사 난수열의 시작을 알리는 시작 지표 비트, 의사 난수열 및 의사 난수열의 끝을 알리는 종료 지표 비트를 포함하는 비트스트림을 생성한다.
시그니처 정보 생성부(310)는 의사 난수열 생성부(312), 시작 지표 비트 생성부(314) 및 종료 지표 비트 생성부(316)를 포함할 수 있다.
의사 난수열 생성부(312)는 미리 설정된 입력비트를 기약다항식에 입력하여 의사 난수열을 생성할 수 있다. 의사 난수열 생성부(312)는 의사 난수열 생성을 위해, 입력비트 및 시간 동기화 메시지의 시퀀스 식별자가 매핑된 테이블을 참조하여 입력비트를 기약다항식에 입력할 수 있다. 입력비트는 모두 '0'으로 채워진 수 열을 제외한 임의의 17비트 수열일 수 있다. 이때 시퀀스 식별자는 수신 패킷 내의 시퀀스 ID 형태일 수 있으나, 이 외의 식별 가능한 다양한 형태면 어느 것이든 가능하다. 입력비트와 시퀀스 식별자 간의 매핑 테이블 또는 의사 난수 매핑 함수는 수신 단말의 모든 응용 계층들에게 공유된다.
기약다항식을 사용하는 일례로써 간단한 구현을 위하여 시프트 레지스터를 이용할 수 있는데, 시프트 레지스터는 17비트 LFSR(17bit LFSR)일 수 있다. 예를 들면, 동기메시지 일련번호 또는 고유번호의 정보를 탑재한 동기 메시지를 발생하기 위하여 의사 난수열 생성부(100)는 17 비트 LFSR를 이용하여 45비트의 의사 난수열을 생성할 수 있다. LFSR의 의사 난수열 생성에 대한 상세한 설명은 도 6에서 후술한다.
시작 지표 비트 생성부(314)는 의사 난수열의 시작을 알리는 시작 지표 비트를 생성하고, 종료 지표 비트 생성부(316)는 의사 난수열의 종료를 알리는 종료 지표 비트를 생성한다. 시작 지표 비트 및 종료 지표 비트는 시퀀스 식별자와 매핑되는 17비트 수열을 통해 만들어질 수 있으며, 이는 후에 타임스탬핑 수행부(340)에서의 정확한 타임스탬핑 검출을 위하여 할당된다. 시작 지표 비트 생성부(314) 및 종료 지표 비트 생성부(316)는 각각 물리 계층에서 의사 난수열을 검출할 때 시작 지표 비트 및 종료 지표 비트가 의사 난수열이 아닌 것으로 검출되도록 시작 지표 비트 및 종료 지표 비트를 생성할 수 있다.
일 예로, 시작 지표 비트 생성부(314)는 시작 지표 비트를 의사 난수열이 LFSR를 이용하여 생성될 때 이용된 탭에서 하나씩 증가한 탭 및 탭 0을 이용하여 생성할 수 있다. 종료 지표 비트 생성부(316)는 종료 지표 비트를 의사 난수열이 LFSR를 이용하여 생성될 때 의사 난수열의 마지막 비트 다음에 출력되는 비트를 반전시킨 값을 이용하여 생성할 수 있다.
시그니처 정보 할당부(320)는 의사 난수열이 포함된 시그니처 정보를 동기화 메시지에 할당한다. 시그니처 정보 할당부(320)는 동기화 메시지의 타입(Type), 길이(Length) 및 값(Value) 정보를 표시하는 TLV 필드에 시그니처 정보를 할당할 수 있다. 예를 들면, 시그니처 정보에 해당되는 비트 스트림을 동기화 메시지, IEEE 1588와 같은 메시지의 TLV 필드의 값(Value) 필드에 할당할 수 있다.
또한, 시그니처 정보 할당부(320)는 의사 난수열이 포함된 시그니처 정보를 제1 MAC(114) 계층의 시작 프레임 식별자(Start Frame Delimiter)에 할당할 수도 있다.
도 4는 시그니처 정보 구조의 일 예를 나타내는 도면이다.
도 4를 참조하면, 64비트의 시그니처 비트 스트림은 의사 난수열의 시작임을 나타내는 시작 지표 비트 1 비트(A), 입력 비트인 17비트, 입력 비트에 대한 의사 난수열 45비트, 및 의사 난수열의 끝을 나타내는 종료 지표 비트 1비트(E)로 구성된다.
맨 앞의 1비트(A)는 뒤 따르는 17 비트 수열에 의해 구해지며, 의사 난수열의 시작을 나타내기 위하여 할당된다. 시작 지표 비트(A)로 인해 시그니처 정보는 의사 난수열을 검출하는 시그니처 정보 검증부(330)를 지날 때 시작 지표 비트 값은 의사 난수열이 아니라고 검출되지만, 그 이후 45비트의 의사 난수열은 의사 난 수열로 검출되므로 의사 난수열의 시작을 나타낼 수 있다.
시작 지표 비트(A)에 이어지는 17비트 수열은 응용 계층에서 시퀀스 식별자와 매핑이 되는 수열로써 시작 지표 비트 및 의사 난수열의 생성을 위한 LFSR의 레지스터 초기값으로 설정된다. 17비트 수열에 뒤따르는 45비트 수열은 의사 난수열로써 앞선 17비트 수열에 따라 생성된다. 또한, 의사 난수열의 끝을 나타내는 종료 지표 비트 1비트(E)가 45비트의 의사 난수열의 뒤에 삽입된다.
다시 도 3을 참조하면, 시그니처 정보 검증부(330)는 물리 계층에서 상위계층으로부터 수신한 비트 스트림이 시그니처 정보를 포함하는지를 검증한다. 시그니처 정보를 포함하고 있는 것으로 확인되면, 타임스탬핑 수행부(340)는 비트 스트림을 동기화 메시지로 판단하여 타임스탬핑을 실행한다.
시그니처 정보 검증부(330)는 LSFR을 이용하여 의사 난수열을 검증할 수 있다. 시그니처 정보 검증부(330)에서 사용되는 시프트 레지스터는 의사 난수열 생성기에서 사용한 것과 동일한 계수를 사용해야 한다.
도 4에 도시된 시그니처 수열이 LFSR로 구성된 시그니처 정보 검증부(330)에 통과할 때에는, 우선, 시작 지표 비트 다음에 위치한 17비트 수열이 차례로 LFSR에 저장되고, 뒤따르는 나머지 45비트가 첫 번째 비트부터 차례로 LFSR에 입력값으로 들어간다. 따라서, 시그니처 정보 검증부(330)는 검증시에 검출 결과값으로 '1' 비트가 한번 출력되고, '0'비트가 연속으로 45번 출력되고, 다시 종료 지표 비트로 인하여 '1'비트가 출력되는 경우 수신한 비트 스트림을 동기화 메시지로 판단할 수 있다.
이 경우, 시그니처 정보 검증부(330)는 입력된 비트스트림이 1588 메시지라고 판단하고 타임스탬핑 수행부(340)에 타임스탬핑 수행 명령 및 시퀀스 식별자 값을 전달하며, 타임스탬핑 수행부(340)는 타임스탬핑을 수행하여 그 값과 시퀀스 식별자 값을 레지스터(도시되지 않음)에 저장한다. 시퀀스 식별자 값들은 단순하게 이진 난수 수열 검출을 위한 LSFR에 추가적인 LFSR 연결 등을 이용하여 저장될 수 있다.
한편, 시그니처 정보 검증부(330)에서 검출 오류가 발생할 수 있는 경우를 고려하여, 송신부(110)는 의사 난수열을 재차 검증하여 검출 오류를 줄이는 사후 시그니처 정보 검증부(350)를 더 포함할 수 있다. 사후 시그니처 정보 검증부(350)는 제1 응용 계층(112) 또는 제1 MAC 계층(114) 상에서 시그니처 정보 검증부(330)로부터 수신된 의사 난수열이 최근에 제1 물리 계층(116)에 전송한 의사 난수열인지를 검증할 수 있다. 이에 따라 검출 오류 확률을 획기적으로 줄일 수 있다.
예를 들면, 사후 시그니처 정보 검증부(350)는 타임스탬핑 수행부(340)로부터 시퀀스 식별자와 매핑된 17비트의 입력비트를 수신한다. 사후 시그니처 정보 검증부(350)는 타임스탬핑 수행부(340)로부터 전송된 수열이 최근에 전송한 수열인지를 비교한 후 맞을 경우 미리 저장해 놓은 테이블 또는 함수를 참고하여 시퀀스 식별자를 탐색하고 탐색된 시퀀스 식별자를 이용하여 타임 스탬프 정보를 포함한 메시지를 다른 단말에 전송할 수 있다. 예를 들어, 탐색된 시퀀스 식별자는 IEEE 1588의 폴로업(Follow-up) 메시지와 같이 송신 동기화 패킷의 타임스탬핑 값을 알 려주는 메시지 예를 들어, 플로업 메시지에 의해 사용될 수 있다. 폴로업 메시지는 제1 동기화 메시지에 관련된 시퀀스 식별자를 포함하므로, 레지스터에서 읽어온 시퀀스 식별자와 비교 후 상응되는 값이 존재할 경우에만 타임스탬프 값을 읽고 타임스탬프 값이 포함되어 송신될 수 있다.
도 5는 본 발명의 일 실시예에 따른 수신부(120)의 구성도이다.
도 5를 참조하면, 수신부(120)는 시그니처 정보 검증부(510) 및 타임스탬핑 수행부(520)를 포함한다. 시그니처 정보 검증부(510)는 제2 물리 계층(126)에 위치한다.
시그니처 정보 검증부(510)는 타 단말로부터 메시지를 수신하면 제2 물리 계층(126) 상에서 수신한 메시지에 일 실시예에 따라 정의된 시그니처 정보가 포함되는지를 검증하여 수신한 메시지가 타임스탬핑 정보를 포함하는 동기화 메시지인지를 식별한다.
여기서, 시그니처 정보 검증부(510)는 기약다항식을 응용한 의사 난수열 검출기를 구현하여 의사 난수열을 검증할 수 있다. 예를 들어, 도 4에 도시된 비트 스트림들은 수신단의 제2 물리 계층(126)을 통과하여 소정의 레지스터(도시되지 않음)에 저장된다.
송신부(110)의 시그니처 정보 검증부(330)와 동일한 방법으로 시그니처 정보를 검증하여, 검출 결과값으로 '1' 비트, '0'비트가 연속으로 45번 출력되고, 다시 '1'비트가 출력되는 경우, 동기화 메시지로 식별할 수 있다. 이때 시그니처 정보 검증부(510)는 일 실시예에 따른 시그니처 정보가 검증되면, 레지스터에 저장된 값 들을 타임스탬핑 수행부(520)으로 전송된다.
타임스탬핑 수행부(520)는 레지스터에 저장된 시그니처 정보에 포함된 입력 비트에 대한 시퀀스 식별자를 송신부(110)의 제1 응용 계층(112) 또는 제1 MAC 계층(114)과 공유된 매핑테이블을 이용하여 식별하고, 동기화 메시지가 제2 물리 계층(126)에서 검증된 시간을 동기화 메시지 도착 시간으로 결정하고 도착 시간에 대한 타임스탬핑 정보를 생성할 수 있다.
도 6은 의사 난수열 생성 방법의 일 예를 나타내는 도면이다.
도 6을 참조하면, 일 실시예에 따라 17비트 LFSR(600)이 의사 난수열을 생성한다. 17 비트 LFSR(600)는 응용 계층 상에서 시퀀스 식별자와 매핑해 놓은 17비트 수열을 S0부터 S16에 차례로 입력받아 45비트의 의사 난수열을 추출하고 이를 결과값(PRBS 패턴 출력)으로 출력한다. 여기에서 최대한 많은 일련번호를 생성하기 위하여 14번째 비트(601) 및 17번째 비트(603)를 탭(tab)으로 정할 수 있다.
도 7은 의사 난수열의 시작을 알리는 시작 지표 비트를 생성하는 방법의 일 예를 나타내는 도면이다.
도 7을 참조하면, 의사 난수열의 시작을 알리기 위하여 시작 지표 비트 비트는 의사 난수열 검출시에 고의로 오류 비트를 갖도록 만들어 지는데, 이를 위하여 전체 시그니처 수열의 제일 앞 비트, 즉 시퀀스 식별자와 매핑된 17비트 수열의 바로 앞에 시작 지표 비트가 필요하다.
시작 지표 비트(또는 추가 비트)는 의사 난수열 생성시에 사용했던 LFSR(600)와 동일한 LFSR(700)을 이용하여 구할 수 있다. 다만, 의사 난수열 생성 을 위해 사용된 LFSR(600)의 탭(Tab)이 To, T1 ... TN 이었다고 하면, 시작 지표 비트 생성을 위한 LFSR(700)의 탭은 0, T0+1, T1+1 ... TN+1 을 이용한다. 즉, 시작 지표 비트를 위한 LFSR의 탭은 의사 난수열 생성을 위한 탭보다 하나씩 큰 차례의 탭을 이용하고, 첫 번째 레지스터, 즉 S0는 항상 탭으로써 사용 되어야 한다. 만약, TN+1 이라는 탭이 존재 하지 않는다면, 다시 말해 사용된 LFSR의 개수가 TN+1 보다 작다면 TN+1 은 사용되지 않는다.
시작 지표 비트를 생성하기 위해서 미리 입력 되어 있어야 할 레지스터 값은 의사 난수열을 처음 생성할 때와 마찬가지로 시퀀스 식별자와 매핑 된 17비트 수열이 S16부터 S0에 차례로 입력이 되어 있어야 한다. 또한 도 6에 도시된 LFSR(600)에서는 탭 사이의 배타적 논리합 계산 결과에 반전을 하였지만 시작 지표 비트 생성부(314)에 이용된 LFSR(700)에서는 탭 사이의 배타적 논리 합 계산 결과에 반전을 하지 않을 수 있다.
도 7에 도시된 바와 같이 의사 난수열 생성을 위하여 17비트 LFSR(600)의 탭이 14번째, 17번째 탭이라면 시작 지표 비트를 위하여는 이와 동일한 17비트 LFSR(700)을 사용하되 탭은 0(701), 15(703), 18 이여야 한다. 여기에서, 18번째 탭은 17비트 LFSR(700)에 존재하지 않으므로, 0번째 탭(710), 15번째 탭(703)을 사용하는 17비트 LFSR(700)를 이용하여 시작 지표 비트를 생성하도록 한다.
정상적으로 생성된 의사 난수열비트들이 검출기를 통하여 0으로 검출되는 경우에, 시작 지표 비트와의 연산과정을 통하여 시작 지표 비트 비트는 의사 난수열 검출시에 1로 검출이 된다. 이로 인하여 의사 난수열의 시작을 알 수 있다.
도 8은 의사 난수열의 끝을 알리는 종료 지표 비트를 생성하는 방법의 일 예를 나타내는 도면이다.
종료 지표 비트는 도 8에 도시된 바와 같이 1비트의 의사 난수열 종료 지표 비트 비트는 의사 난수열 생성의 결과값에 NOT 신호를 붙이는 결과를 생성하는 17비트 LFSR(800)을 이용하여 생성될 수 있다. 정상적인 의사 난수열 생성기로부터 만들어진 수열이 검출기를 통하여 0으로 검출되는 경우, 끝 지표 비트는 의사 난수열의 출력 값을 반전시킴으로써 검출기에서 1로 검출이 된다. 이를 통하여 사용자는 의사 난수열이 끝났음을 알 수 있다.
도 4와 같은 시그니처 정보의 구조에서 45비트 의사 난수열의 뒤에는 수열이 끝났음을 알리는 종료 지표 비트(E)가 할당되는데, 종료 지표 비트(E)는 의사 난수열 생성기에서 생성되는 46번째 비트를 반전시킴으로써 구현될 수 있다. 이진 의사 난수 종료 지표 비트(E)는 의사 난수열 검출시 의사 난수가 아님으로 검출이 될 것이므로, 의사 난수열의 마지막임을 나타낼 수 있다.
도 9는 이진 의사 난수 검출 방법의 일 예를 나타내는 도면이다.
도 9를 참조하면, 일 실시예에 따라 17비트 LFSR를 포함한 시그니처 검증부(330)가 제1 물리 계층(116)을 통과하는 비트 스트림의 의사 난수열을 검출한다. 17bit LFSR를 통하여 의사 난수열이 생성되었기 때문에, 검출 역시 17bit LFSR를 사용한다. 또한 의사 난수열과 매치되는 일련번호의 개수를 최대화하기 위하여 최대 패턴을 생성하는 17번째 탭(903) 및 14번째 탭(901)을 사용하여, 배타적 논리 합(XOR) 계산(905)을 수행한다.
이때, 17bit LFSR은 제1 응용 계층(112)으로부터 입력받은 입력값과 17bit LFSR에서의 결과값에 대해 배타적 논리합(XOR) 계산(907)을 수행한다. 17bit LFSR(900) 안의 값들은 입력값이 들어올 때마다 한 비트씩 시프트되면서 자동으로 배타적 논리합 계산이 수행된다.
제1 응용 계층(112) 또는 제1 MAC 계층(114)에서 만들어진 64비트의 시그니처 수열이 시그니처 정보 검증부(330)를 통과할 때는 17비트 수열이 차례로 17 비트 LFSR 안에 저장 되고 나머지의 47비트는 첫 번째 비트부터 차례로 검출기에 입력 값으로 들어가므로 그 결과값은 1이 1번, 0이 45번 반복, 1이 1번 검출될 수 있다. 따라서, 시그니처 정보에 대하여 의사 난수 검출을 수행하여 타임스탬핑이 필요한 동기화 메시지인지 식별할 수 있다.
비트스트림이 시그니처 정보 검증부(330)에서 동기화 메시지로 검증되어 타임스탬핑이 필요할 경우, 시퀀스 식별자를 상위 계층으로 전송해주는 기능을 수행하기 위한 일례로써 시그니처 정보 검증부(330)에 도 9에 도시된 바와 같이 총 64개의 레지스터를 삽입하는 방법을 이용할 수 있다. 이진 의사 난수 검출을 위한 17개의 레지스터 이외에 47개의 추가적인 레지스터를 뒤에 삽입함으로써, 이미 지나간 비트들을 저장할 수 있다. 따라서, 예를 들어, 1이 한번, 0이 45번 반복되고 다시 1이 한번 검출될 때, 46번째 레지스터부터 62번째 레지스터까지의 값들을 반전시킨 값, 즉 시퀀스 식별자를 추출하여 상위 레이어에 전송할 수 있다. 여기에서, 레지스터 개수는 사용한 비트들의 개수 및 특성에 의해 변할 수 있다.
한편, 제1 물리 계층(116)에서 수신한 비트 스트림(bit stream)이 동기화 메시지가 아님에도 불구하고 시그니처 정보의 성질을 만족하여 LRSR(900)에서 1번의 1, 45번의 연속된 0, 1번의 1이 검출되는 오류가 발생하더라도, 제1 응용 계층(112) 또는 제1 MAC 계층(114)의 사후 시그니처 정보 검증부(350)로부터 의사 난수열을 수신했을 때 최근에 자신이 제1 물리 계층(116)의 시그니처 정보 검증부(330)로 전송한 의사 난수열인지를 비교하는 기능을 통하여 오류 확률을 획기적으로 줄일 수 있다.
도 10은 일 실시예에 따른 물리 계층에서 타임스탬핑을 수행하기 위한 타임스탬프 처리 방법을 나타내는 순서도이다.
모두 0으로 채워진 수열을 제외한 임의의 17비트 수열과 시퀀스ID 간의 매핑테이블을 만들고 이 테이블이 모든 노드(node)에게 공유된다고 가정한다.
시그니처 정보 생성부(310)는 시퀀스 식별자와 매핑되는 17비트 수열을 이용하여 의사 난수열을 생성하고(1010), 의사 난수열의 시작을 알리기 위한 시작 지표 비트를 생성하고(1020), 의사 난수열의 종료를 알리는 종료 지표 비트를 생성한다(1030).
시그니처 정보 할당부(320)는 시작 지표 비트, 의사 난수열 및 종료 지표 비트를 포함하는 비트스트림을 동기화 메시지의 시그니처 정보로 삽입한다(1040).
시그니처 정보 검증부(330)는 상위계층으로부터 전송된 비트스트림에 대하여 의사 난수열 검출 동작을 수행한다(1050). 시그니처 정보가 검출되면, 예를 들어 도 5에 도시된 시그니처 정보의 경우, 검출 결과 값으로 한번의 1과, 45번 연속된 0, 다시 한번의 1이 검출될 시(1060), 제1 물리 계층(116)에 있는 시그니처 정보 검증부(330)는 이를 1588 동기화 메시지라고 간주하고, 타임스탬핑 수행부(340)는 타임스탬핑 정보를 생성한다(1070).
타임스탬핑 정보 및 비트스트림은 상위 계층 예를 들어, 제1 응용 계층(112) 또는 제1 MAC 계층(114)으로 전달되어, 사후 시그니처 정보 검증부(350)는 제1 물리 계층(116)으로부터 전송된 수열이 제1 응용 계층(112) 또는 제1 MAC 계층(114)에서 최근에 보낸 수열인지 확인한다. 확인 결과 맞을 경우, 사후 시그니처 정보 검증부(350)는 미리 저장해 놓은 테이블을 참고하여 시퀀스 식별자를 탐색하고, 탐색된 시퀀스 식별자를 이용하여 타임스탬핑 정보를 포함하는 추가적인 동기화 메시지(예를 들어, 폴로업 메시지)를 생성하여 다른 단말에 전송할 수 있다.
도 11은 일 실시예에 따른 동기화 메시지 수신에 따른 동기화를 수행하는 타임스탬프 처리 방법을 나타내는 순서도이다.
메시지가 수신되면(1110), 시그니처 정보 검증부(510)는 메시지가 타임스탬핑 정보를 포함하는 동기화 메시지인지 확인하기 위하여 제2 물리 계층(126)에서 송신단의 이진 의사 난수 검출기 예를 들어, LFSR과 같은 검출기를 사용하여 시그니처 정보 검출 동작을 수행한다(1120).
미리 설정된 형태의 시그니처 정보가 검출되면, 예를 들어 한번의 1과, 45번 연속된 0, 다시 한번의 1이 검출되면(1130), 시그니처 정보 검증부(410)는 동기화 메시지로 간주하여 타임스탬핑 정보를 생성한다(1140). 또한, 수신된 메시지가 폴로업 메시지인 경우, 송신단의 응용 계층 또는 MAC 계층과 공유된 매핑 테이블을 이용하여 시퀀스 식별자를 알 수 있으므로, 어느 싱크 메시지에 대한 타임스탬핑 정보인지가 결정되고 대응하는 시퀀스 식별자에 대한 타임스탬핑 정보가 추출될 수 있다.
도 12는 본 발명을 IEEE 802.3ba 모델에 적용한 예이다.
여기서는, 40/100G 이더넷을 사용하는 IEEE 802.3ba 구조를 예를 들어 타임스탬프 처리과정을 설명한다. 도 12를 참조하면, 일 실시예에 따른 타임스탬프 처리 장치(100)는 상위계층으로부터 수신한 비트 스트림 블록(1200)을 물리 계층 상에서 인코더를 통해 인코딩하여 인코딩 블록(1210)을 생성한다.
이어서, 타임스탬프 처리장치(100)는 인코딩 블록(1210)을 PRBS17 검출기(1240)에 통과시켜 비트 스트림의 의사 난수열을 검증한다. 여기에서 PRBS 17 검출기(1240)는 도 3의 시그니처 정보 검증부(330)에 대응한다.
이때 PRBS 17 검출기(1240)는 물리 계층 내부의 물리코딩 부계층(Physical Coding Sublayer)에서의 인코더(encoder)와 스크램블러(scrambler) 사이에 위치할 수 있다. 본 이더넷 모델에서는 비트 스트림이 스크램블러(1260)를 통과할 경우 비트들의 변형이 가해지므로 일련번호 정보를 가지고 있는 45비트 의사 난수열을 검출하기가 까다롭다. 따라서 이와 같은 모델에서는 인코더 블록(1210)와 스크램블러 블록(1260) 사이에 PRBS17 검출기(1240)를 위치시킬 수 있으나 이에 한정되지 않는다. 즉, PRBS17 검출기(1240)는 도 12에 도시된 바와 같이 별도로 존재할 수 있고, 다른 기능블록 사이에 연결이 되어 구현될 수도 있다.
나아가, 타임스탬프 처리장치(100)는 물리 계층의 PRBS17 검출기(1240)에서 검출된 의사 난수열을 응용 계층(1250)으로 전송하여, 의사 난수열이 응용 계층(1250)이 최근에 전송한 의사 난수열인지를 재차 검증할 수 있다. 전술한 바와 같이, 의사 난수열의 검증은 다른 계층에서 수행될 수도 있다.
이어서, 타임스탬프 처리장치는 인코딩 블록(1210)을 스크램블러(1260)를 통해 스크램블하여 스크램블 블록(1220)을 생성한다. 그리고, 스크램블 블록(1220)에 동기화 헤더(Sync header)(1232)를 할당하여 송신 블록(transmit block)(1230)을 생성한다. 동기화 헤더(1232)는 동기화를 위해 ‘01’ 또는 ‘10’으로 이루어질 수 있다. 한편, 물리 계층의 블록분산(block distribution)(1270)은 송신 블록(1230)을 레인(lane)에 분배한다. 이때 시간 동기화 패킷은 시간 동기화 대상인 타 단말로 송신된다.
도 13은 본 발명의 다른 실시예에 따른 타임스탬프 처리과정을 설명하기 위한 참조도이다. 여기서는, 1G/10G 이더넷을 사용하는 IEEE 802.3 구조를 예를 들어 타임스탬프 처리과정을 설명한다.
도 13을 참조하면, 일 실시예에 따른 타임스탬프 처리장치(100)는 상위계층으로부터 수신한 비트 스트림 블록(1300)을 물리계층에서 인코더를 통해 인코딩하여 인코딩 블록(1310)을 생성한다.
이어서, 타임스탬프 처리장치(100)는 인코딩 블록(1310)을 PRBS17 검출기(1340)에 통과시켜 비트 스트림의 의사 난수열을 검증한다. 이때 PRBS 17 검출기(1340)는 물리계층 내부의 물리코딩 부계층(Physical Coding Sublayer)에서의 인코더(encoder)와 스크램블러(scrambler) 사이에 위치할 수 있다. 본 이더넷 모델 에서는 비트 스트림이 스크램블러(1360)를 통과할 경우 비트들의 변형이 가해지므로 일련번호 정보를 가지고 있는 32비트 의사 난수열을 검출하기가 까다롭다. 따라서 이와 같은 모델에서는 인코더 블록(1310)와 스크램블러 블록(1360) 사이에 PRBS17 검출기(1340)를 위치시키는 것이 바람직하다.
나아가, 타임스탬프 처리장치(100)는 물리계층의 PRBS17 검출기(1340)에서 검출된 의사 난수열을 상위 계층(1350)으로 전송하여, 의사 난수열이 응용계층(1350)이 최근에 전송한 의사 난수열인지를 재차 검증할 수 있다.
이어서, 타임스탬프 처리장치(100)는 인코딩 블록(1310)을 스크램블러(1360)를 통해 스크램블하여 스크램블 블록(1320)을 생성한다. 이때 스크램블 블록(1320)에 동기화 헤더(Sync header)(1332)를 할당하여 송신 블록(transmit block)(1330)을 생성한다. 이어서, 송신 블록(transmit block)(1330)은 기어박스(Gearbox)(1370)로 송신된다. 전술한 바와 같이, IEEE 802.3ba 모델뿐만 아니라 IEEE 802.3 모델에도 타임스탬핑 수행이 적용 가능하다는 것을 확인할 수 있다. 즉 기존의 여러 네트워크 구조를 크게 변화시키지 않고 타임스탬핑 수행이 쉽게 적용 가능하다는 것을 확인할 수 있다.
본 발명의 일 양상은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 상기의 프로그램을 구현하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 디스크 등을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
이상의 설명은 본 발명의 일 실시예에 불과할 뿐, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 본질적 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현할 수 있을 것이다. 따라서, 본 발명의 범위는 전술한 실시예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 시간 동기화를 위한 타임스탬프 처리 시스템의 구성도이다.
도 2는 일 실시예에 따른 타임스탬프 처리 장치의 계층적 구조를 나타내는 도면이다.
도 3은 일 실시예에 따른 타임스탬프 처리 장치의 송신부의 구성을 나타내는 도면이다.
도 4는 시그니처 정보 구조의 일 예를 나타내는 도면이다.
도 5는 일 실시예에 따른 타임스탬프 처리 장치의 수신부의 구성을 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른 의사 난수열 생성하는 방법의 일 예를 나타내는 도면이다.
도 7은 의사 난수열의 시작을 알리는 시작 지표 비트를 생성하는 방법의 일 예를 나타내는 도면이다.
도 8은 의사 난수열의 끝을 알리는 종료 지표 비트를 생성하는 방법의 일 예를 나타내는 도면이다.
도 9는 이진 의사 난수 검출 방법의 일 예를 나타내는 도면이다.
도 10은 일 실시예에 따른 물리 계층에서 타임스탬핑을 수행하기 위한 타임스탬프 처리 방법을 나타내는 순서도이다.
도 11은 일 실시예에 따른 동기화 메시지 수신에 따른 동기화를 수행하는 타 임스탬프 처리 방법을 나타내는 순서도이다.
도 12는 일 실시예에 따른 타임 스탬프 처리 방법을 IEEE 802.3ba 모델에 적용한 예를 나타내는 도면이다.
도 13은 일 실시예에 따른 타임스탬프 처리 방법을 IEEE 802.3 모델에 적용한 예를 나타내는 도면이다.

Claims (20)

  1. 물리 계층의 상위 계층에서 이진 의사 난수 수열의 시작을 알리는 시작 지표 비트, 상기 이진 의사 난수 수열, 상기 이진 의사 난수 수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보를 생성하는 시그니처 정보 생성부;
    상기 상위 계층에서 상기 시그니처 정보를 동기화 메시지에 할당하는 시그니처 정보 할당부;
    상기 물리 계층에서 상기 동기화 메시지에 포함된 상기 시그니처 정보의 검출 동작을 수행하는 시그니처 정보 검증부; 및
    상기 시그니처 정보가 검출되면, 상기 물리 계층에서 타임스탬핑 정보를 생성하는 타임스탬핑 수행부를 포함하되,
    상기 시그니처 정보 생성부는 상기 물리 계층에서 시그니처 정보를 검출할 때 상기 시작 지표 비트 및 상기 종료 지표 비트가 이진 의사 난수 수열이 아닌 것으로 검출되도록 상기 시작 지표 비트 및 상기 종료 지표 비트를 생성하며,
    상기 시그니처 정보 할당부는 상기 시그니처 정보를 상기 동기화 메시지의 TLV(Type Length Value) 필드에 할당하는 타임스탬핑 처리 장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 시그니처 정보 할당부는 상기 시그니처 정보를 MAC(Medium Access Control) 계층의 시작 프레임 식별자(Start Frame Delimiter)에 할당하는 타임스탬핑 처리 장치.
  4. 삭제
  5. 제1항에 있어서,
    상기 시그니처 정보 생성부는 상기 이진 의사 난수 수열을 선형 피드백 시프트 레지스터를 이용하여 생성할 때 이용된 탭에서 하나씩 증가한 탭 및 탭 0을 이용하여 상기 시작 지표 비트를 생성하는 타임스탬핑 처리 장치.
  6. 제1항에 있어서,
    상기 시그니처 정보 생성부는 상기 이진 의사 난수 수열을 선형 피드백 시프트 레지스터를 이용하여 생성할 때 상기 이진 의사 난수 수열의 마지막 비트 다음에 출력되는 비트를 반전시킨 값을 이용하여 상기 종료 지표 비트를 생성하는 타임스탬핑 처리 장치.
  7. 제1항에 있어서,
    상기 시그니처 정보 검증부는, 선형 피드백 시프트 레지스터상에서 배타적 논리합 계산을 수행하고, 상기 계산된 논리합 값과 상기 선형 피드백 시프트 레지 스터의 입력값을 이용하여 상기 시그니처 정보를 검출하는 타임스탬핑 처리 장치.
  8. 제1항에 있어서,
    상기 시그니처 정보가 응용 계층 또는 MAC 계층에서 이전에 상기 물리 계층으로 전달한 입력비트를 포함하는지를 검증하는 사후 시그니처 정보 검증부를 더 포함하는 타임스탬핑 처리 장치.
  9. 제1항에 있어서,
    상기 시그니처 정보 할당부는 상기 동기화 메시지에 대하여 상기 타임스탬핑 수행부에서 수행된 타임스탬핑 정보를 포함하는 추가적인 동기화 메시지를 생성하고, 상기 추가적인 동기화 메시지는 다른 단말로 전송되는 타임스탬핑 처리 장치.
  10. 메시지를 수신하는 타임스탬핑 처리 장치로서,
    상기 메시지가 수신되면, 물리 계층에서 상기 메시지의 TLV(Type Length Value) 필드에 이진 의사 난수 수열의 시작을 알리는 시작 지표 비트, 상기 이진 의사 난수 수열 및 상기 이진 의사 난수 수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보가 포함되어 있는지 검출하는 시그니처 정보 검증부; 및
    상기 시그니처 정보가 검출되면, 상기 물리 계층에서 상기 메시지에 대한 타임스탬핑 정보를 생성하는 타임스탬핑 수행부를 포함하되,
    상기 시작 지표 비트 및 상기 종료 지표 비트는 이진 의사 난수 수열 검출시 이진 의사 난수 수열이 아닌 것으로 검출되도록 설정된 타임스탬핑 처리 장치.
  11. 삭제
  12. 제10항에 있어서,
    상기 시작 지표 비트는 상기 이진 의사 난수 수열이 선형 피드백 시프트 레지스터를 이용하여 생성될 때 이용된 탭에서 하나씩 증가한 탭 및 탭 0을 이용하여 생성되는 타임스탬핑 처리 장치.
  13. 제10항에 있어서,
    상기 종료 지표 비트는 상기 이진 의사 난수 수열이 선형 피드백 시프트 레지스터를 이용하여 생성될 때 상기 이진 의사 난수 수열의 마지막 비트 다음에 출력되는 비트를 반전시킨 값을 이용하여 생성되는 타임스탬핑 처리 장치.
  14. 물리 계층의 상위 계층에서 이진 의사 난수 수열의 시작을 알리는 시작 지표 비트, 상기 이진 의사 난수 수열 및 상기 이진 의사 난수 수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보를 생성하는 시그니처 정보 생성부;
    상기 상위 계층에서 상기 시그니처 정보를 동기화 메시지의 TLV(Type Length Value) 필드에 할당하는 시그니처 정보 할당부;
    상기 물리 계층에서 상기 동기화 메시지에 포함된 상기 시그니처 정보를 검출하는 제1 시그니처 정보 검증부;
    상기 시그니처 정보가 검출되면, 상기 물리 계층에서 타임스탬핑 정보를 생성하는 제1 타임스탬핑 수행부;
    다른 단말로부터 메시지가 수신되면, 상기 물리 계층에서 상기 메시지의 TLV(Type Length Value) 필드에 이진 의사 난수 수열의 시작을 알리는 시작 지표 비트, 상기 이진 의사 난수 수열 및 상기 이진 의사 난수 수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보가 포함되어 있는지 검증하는 제2 시그니처 정보 검증부; 및
    상기 시그니처 정보가 포함된 것으로 검증되면, 상기 물리 계층에서 상기 메시지에 대한 타임스탬핑 정보를 생성하는 제2 타임스탬핑 수행부를 포함하되,
    상기 시그니처 정보 생성부는 상기 물리 계층에서 시그니처 정보를 검출할 때 상기 시작 지표 비트 및 상기 종료 지표 비트가 이진 의사 난수 수열이 아닌 것으로 검출되도록 상기 시작 지표 비트 및 상기 종료 지표 비트를 생성하는 타임스탬핑 처리 장치.
  15. 물리 계층의 상위 계층에서 시그니처 정보 생성부가 이진 의사 난수 수열의 시작을 알리는 시작 지표 비트, 상기 이진 의사 난수 수열 및 상기 이진 의사 난수 수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보를 생성하는 단계;
    상기 상위 계층에서 시그니처 정보 할당부가 상기 시그니처 정보를 동기화 메시지의 TLV(Type Length Value) 필드에 할당하는 단계;
    상기 물리 계층에서 시그니처 정보 검증부가 상기 동기화 메시지의 TLV 필드에 포함된 상기 시그니처 정보의 검출 동작을 수행하는 단계; 및
    상기 시그니처 정보가 검출되면, 상기 물리 계층에서 타임스탬핑 수행부가 타임스탬핑 정보를 생성하는 단계를 포함하되,
    상기 시작 지표 비트 및 상기 종료 지표 비트는 이진 의사 난수 수열 검출시 이진 의사 난수 수열이 아닌 것으로 검출되도록 생성되는 타임스탬핑 방법.
  16. 삭제
  17. 삭제
  18. 제15항에 있어서,
    상기 시작 지표 비트는 상기 이진 의사 난수 수열이 선형 피드백 시프트 레지스터를 이용하여 생성될 때 이용된 탭에서 하나씩 증가한 탭 및 탭 0을 이용하여 생성되고,
    상기 종료 지표 비트는 상기 이진 의사 난수 수열이 선형 피드백 시프트 레지스터를 이용하여 생성될 때 상기 이진 의사 난수 수열의 마지막 비트 다음에 출력되는 비트를 반전시킨 값을 이용하여 생성되는 타임스탬핑 방법.
  19. 제15항에 있어서,
    상기 시그니처 정보 할당부가 상기 생성된 타임스탬핑 정보를 포함하는 추가적인 동기화 메시지를 생성하는 단계; 및
    상기 추가적인 동기화 메시지를 다른 단말로 전송하는 단계를 더 포함하는 타임스탬핑 방법.
  20. 다른 단말로부터 메시지가 수신되면, 물리 계층에서 시그니처 정보 검증부가 상기 메시지의 TLV(Type Length Value) 필드에 이진 의사 난수 수열의 시작을 알리는 시작 지표 비트, 상기 이진 의사 난수 수열 및 상기 이진 의사 난수 수열의 끝을 알리는 종료 지표 비트를 포함하는 시그니처 정보가 포함되어 있는지를 확인하기 위하여 시그니처 정보 검출 동작을 수행하는 단계; 및
    상기 시그니처 정보 검증부에 의해 상기 시그니처 정보가 검출되면, 상기 물리 계층에서 타임스탬핑 수행부가 상기 메시지에 대한 타임스탬핑 정보를 생성하는 단계를 포함하되,
    상기 시작 지표 비트 및 상기 종료 지표 비트는 이진 의사 난수 수열 검출시 이진 의사 난수 수열이 아닌 것으로 검출되는 타임스탬핑 방법.
KR1020090116983A 2009-05-11 2009-11-30 시그니처 정보를 이용한 타임스탬핑 처리 장치 및 방법 KR101275291B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/776,875 US20100287402A1 (en) 2009-05-11 2010-05-10 Timestamping apparatus and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20090040819 2009-05-11
KR1020090040819 2009-05-11

Publications (2)

Publication Number Publication Date
KR20100122045A KR20100122045A (ko) 2010-11-19
KR101275291B1 true KR101275291B1 (ko) 2013-06-14

Family

ID=43407108

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090116983A KR101275291B1 (ko) 2009-05-11 2009-11-30 시그니처 정보를 이용한 타임스탬핑 처리 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101275291B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020080619A (ko) * 2001-04-16 2002-10-26 주식회사 케이티 위성을 이용한 시각/주파수 동기시스템의 수신 장치 및 그방법
US20040010729A1 (en) * 2000-07-26 2004-01-15 Lockridge Terry Wayne Multi-media jitter removal in an asynchronous digital home network
US7072289B1 (en) * 2001-06-01 2006-07-04 Lin Yang Pseudo-random sequence padding in an OFDM modulation system
KR20090006757A (ko) * 2007-07-12 2009-01-15 한국전자통신연구원 무선 센서 네트워크에서 시간 동기화 방법 및 예약 기법을이용한 저전력 라우팅 방법, 그리고 이를 수행하기 위한장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040010729A1 (en) * 2000-07-26 2004-01-15 Lockridge Terry Wayne Multi-media jitter removal in an asynchronous digital home network
KR20020080619A (ko) * 2001-04-16 2002-10-26 주식회사 케이티 위성을 이용한 시각/주파수 동기시스템의 수신 장치 및 그방법
US7072289B1 (en) * 2001-06-01 2006-07-04 Lin Yang Pseudo-random sequence padding in an OFDM modulation system
KR20090006757A (ko) * 2007-07-12 2009-01-15 한국전자통신연구원 무선 센서 네트워크에서 시간 동기화 방법 및 예약 기법을이용한 저전력 라우팅 방법, 그리고 이를 수행하기 위한장치

Also Published As

Publication number Publication date
KR20100122045A (ko) 2010-11-19

Similar Documents

Publication Publication Date Title
KR101133256B1 (ko) 시그니처 정보를 이용한 물리계층에서의 타임스탬프 처리장치 및 그 방법
US20100287402A1 (en) Timestamping apparatus and method
US9300421B2 (en) Methods to achieve accurate time stamp in IEEE 1588 for system with FEC encoder
US10673565B2 (en) Confirming data accuracy in a distributed control system
US9602271B2 (en) Sub-nanosecond distributed clock synchronization using alignment marker in ethernet IEEE 1588 protocol
US7594159B2 (en) Signature field in a latency measurement frame
US10050965B2 (en) Confirming data accuracy in a distributed control system
CN110224775B (zh) 一种时间信息确定的方法、装置及设备
US8325616B2 (en) Method and system for determination and exchange of network timing information
WO2014052972A1 (en) High accuracy 1588 timestamping over high speed multi lane distribution physical code sublayers
US11251996B2 (en) Modulating signal level transitions to increase data throughput over communication channels
CN113810145A (zh) 接收端时间戳准确性
TW200422818A (en) Measuring an error rate in a communication link
JP5960162B2 (ja) 雑音中の信号検出
US7739502B2 (en) Localization determination process for 1394 serial bus
KR101275291B1 (ko) 시그니처 정보를 이용한 타임스탬핑 처리 장치 및 방법
JP5528257B2 (ja) ネットワークにおいて複数のタイミングマスターを検出するためのシステム及び方法
US20150220755A1 (en) Solution for security, safe and time integrity communications in automotive environments
JP3439722B2 (ja) 特殊データ・パケットにタグ付けする方法及び特殊データ・パケット検出方法
US20180083789A1 (en) Transmission circuit, transmission apparatus, and method for the same
US20120266053A1 (en) Security communication method between devices
KR101102089B1 (ko) 물리 계층에서의 타임스탬핑 장치 및 그 방법
WO2014133241A1 (ko) 분산 네트워크 시스템의 통신 에러 노드 검출 방법
Ray et al. Secure and reliable covert channel
KR20230049967A (ko) 무선 분산 통신 시스템에서 신뢰 필드를 이용한 패킷의 무결성 검사 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee