전술한, 그리고 추가적인 본 발명의 양상들은 첨부된 도면을 참조하여 설명되는 바람직한 실시예들을 통하여 더욱 명백해질 것이다. 이하에서는 본 발명을 이러한 실시예들을 통해 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 설명하기로 한다.
도 1은 일 실시예에 따른 GPON 시스템의 일반적인 구성을 도시한 구성도이다.
도 1에 도시된 바와 같이, GPON 시스템은 하나의 OLT(100)가 다수의 ONU(200)와 수동 소자를 통하여 1 : N 으로 대응되는 트리 구조를 갖는다.
본 발명에 따른 GPON 시스템의 OLT(100)는 OLT(100)와 연결된 ONT(200)들을 관리하며, GTC 프레임을 송수신을 통해 ONT(200)들의 등록 인증을 처리하며, 등록 인증이 완료된 ONT(200)들은 상향 트래픽 전송을 위한 대역을 할당받는다.
등록에 관련된 GTC(GPON Transmission Convergence) 프레임은 크게 헤더 부분과 페이로드 부분으로 분류된다. 헤더는 등록에 관련된 PLOAM 메시지와 대역할당에 관련된 정보들이 포함된다. 페이로드 부분에는 실제 서비스 되는 데이터들의 GEM(GPON Encapsulation Mode) 프레임이 존재한다.
일반적인 GPON 시스템은 망 내에 동일한 시리얼 넘버를 가진 적어도 둘 이상의 ONT(200)가 존재한다면, 비정상적인 등록이 이루어 진다.
예를 들어, 동일한 시리얼 넘버를 가진 ONT들이 물리적으로 같은 거리에 있는 경우, 동일한 시리얼 넘버를 가진 ONT들은 OLT로부터 동일한 ONU_ID를 부여 받기 때문에, 레인징 과정에서 동일한 시리얼 넘버를 가진 ONT들이 동시에 응답을 하게 된다. 이에 따라, 동일한 시리얼 넘버를 가진 ONT들 간의 응답이 서로 충돌하여 인증과정이 정상적으로 진행되지 못하게 된다.
또 다른 예를 들어, 동일한 시리얼 넘버를 가진 ONT들이 물리적으로 상이한 거리에 있는 경우, 동일한 시리얼 넘버를 가진 ONT들 간의 응답이 서로 충돌하지 않는다. 하지만, 동일한 시리얼 넘버를 가진 ONT들은 동일한 보상 값을 할당 받기 때문에 OLT가 허가하지 않은 시간에 상향으로 트래픽을 전송함으로써, ONT들이 정상적으로 상향 트래픽을 전송할 수 없는 문제가 발생하게 된다.
도 2는 본 발명의 일 실시예에 따른 GPON 시스템의 OLT에 비정상적인 상향 트래픽 전송 방지를 위한 ONT 인증 방법 중 OLT가 ONT에 ONU_ID를 할당하는 방법을 도시한 절차도이다.
도시된 바와 같이, 최초 OLT(100)는 ONT(200)의 시리얼 넘버 등록을 처리하기 위하여 ONT(200)에 대역 할당 정보가 없는 프레임을 전송한다(S101). 이때, OLT(100)는 ONT(200)에 대역 할당 정보가 없는 프레임을 2번 전송함이 바람직하다. 이것은, OLT(100)가 250us의 Quite Zone을 열어 ONT(100)로부터 후술할 시리얼 넘버가 포함된 응답 PLOAM 메시지를 수신하기 위함이다. 이후, OLT(100)는 ONT(200)에 시리얼 넘버 요청 메시지를 전송한다(S102). 시리얼 넘버 요청 메시지를 수신한 ONT(200)는 12비트의 랜덤 지연 값을 생성하고, 생성된 랜덤 지연 값과 자신의 시리얼 넘버를 포함하는 응답 PLOAM 메시지를 생성한다(S103). 즉, ONT(200)는 CPU에서 지원하는 랜덤 함수를 이용하여 생성하거나 MAC의 클럭을 이용하여 12 비트의 랜덤 지연 값을 생성한다. 생성된 랜덤 지연 값은 응답 PLOAM 메시지의 11번째 필드와 12번째 상위 4 비트에 MSB, LSB 순서로 저장된다.
한편, ONT(200)는 도 3 또는 도 4 와 같이 12 비트의 랜덤 지연 값 중 일부의 랜덤 지연 값을 추출하여 저장한다(S104).
도 3 은 본 발명의 일 실시예에 따른 12 비트의 랜덤 지연 값을 이용하여 8비트의 랜덤 지연 값을 추출하는 예시도이며, 도 4는 본 발명의 또 다른 실시예에 따른 12 비트의 랜덤 지연 값을 이용하여 8비트의 랜덤 지연 값을 추출하는 예시도이다.
도 3 에 도시된 바와 같이, 일 실시예에 따른 ONT(200)는 12 비트의 랜덤 지연 값 중 상위 8 비트의 랜덤 지연 값을 추출하여 사용할 수 있다. 또 다른 실시예에 따른 ONT(200)는 도 4 에 도시된 바와 같이, 12 비트의 랜덤 지연 값 중 하위 8 비트의 랜덤 지연 값을 추출하여 사용할 수 있다. 이 같은 8 비트의 랜덤 지연 값은 OLT(100)로부터 수신되는 ONU_ID 할당 PLOAM 메시지를 식별하기 위한 식별자 로 사용된다. 한편, 12 비트의 랜덤 지연 값 중 특정 8비트의 랜덤 지연 값을 추출하는 방법은 OLT(100)에서도 동일하게 수행됨이 바람직하다.
이후, ONT(200)는 시리얼 넘버와 랜덤 지연 값을 포함하는 응답 PLOAM 메시지를 OLT(200)로 전송한다(S105). 이후, OLT(100)는 해당 ONT(200)의 ONU_ID를 할당하고, 할당된 ONU_ID를 포함하는 ONU_ID 할당 PLOAM 메시지를 생성하여 ONT(200)에 전송한다(S107). 즉, ONT(200)로부터 응답 PLOAM 메시지가 수신되면, OLT(100)는 수신된 응답 PLOAM 메시지로부터 시리얼 넘버를 추출하고, 추출된 시리얼 넘버를 식별하기 위한 ONU_ID를 생성한다. 이후, OLT(100)는 생성된 ONU_ID를 ONT(200)에 할당하기 위하여 ONU_ID 할당 PLOAM 메시지를 생성하고, 생성된 ONU_ID 할당 PLOAM 메시지를 ONT(200)에 전송한다.
한편, OLT(100)는 수신된 응답 PLOAM 메시지로부터 랜덤 지연 값을 추출하고, 추출된 랜덤 지연 값 12 비트 중 특정 8 비트의 랜덤 지연 값을 선택한다. 여기서, OLT(100)는 ONT(200)와 사전에 미리 정해놓은 알고리즘을 이용하여 특정 8 비트의 랜덤 지연 값을 선택할 수 있다. 이후, OLT(100)는 도 5와 같이 ONU_ID 할당 PLOAM 메시지에 선택한 8 비트의 랜덤 지연 값을 포함시켜 전송한다.
도 5는 본 발명의 일 실시예에 따른 ONU_ID 할당 PLOAM 메시지 구조의 예시도이다.
도시된 바와 같이, 현재 GPON 표준에는 4번째부터 11번째 바이트까지 64비트 가 시리얼 넘버 필드이며, 12번째 바이트(10)는 명시되는 않은 필드로 사용되지 않는다. 이에 따라, OLT(100)는 현재 GPON 표준에 명시되지 않은 필드로 정의된 12 번째 바이트에 선택한 8 비트의 랜덤 지연 값을 저장할 수 있다.
이후, ONT(200)는 OLT(100)로부터 ONU_ID를 할당 받기 위하여 수신된 ONU_ID 할당 PLOAM 메시지를 체크한다(S108). 먼저, ONT(200)는 수신된 ONU_ID 할당 PLOAM 메시지에 저장된 시리얼 넘버가 자신의 시리얼 넘버와 동일한지 체크한다. 자신의 시리얼 넘버와 동일한 것으로 판명되면, ONT(200)는 수신된 ONU_ID 할당 PLOAM 메시지에 저장된 8 비트의 랜덤 지연 값을 추출한다. 이후, ONT(200)는 자신이 저장해 놓은 8 비트의 랜덤 지연 값과 ONU_ID 할당 PLOAM 메시지로부터 추출된 8 비트의 랜덤 지연 값이 동일한지 체크한다. 이와 같이, ONU_ID 할당 PLOAM 메시지에 저장된 시리얼 넘버와 8 비트의 랜덤 지연 값이 모두 일치하면, ONT(200)는 ONU_ID 할당 PLOAM 메시지에 저장된 ONU_ID를 할당 받게 된다(S109). 이에 따라, 동일한 시리얼 넘버를 가진 다수의 ONT(200)들 중 하나의 ONT(200)만 OLT(100)로부터 ONU_ID를 할당 받을 수 있다.
한편, OLT(100)는 생성한 ONU_ID 할당 PLOAM 메시지를 ONT(100)에 적어도 3회 이상 전송하고, ONT(200)가 3회 이상 전송된 ONU_ID 할당 PLOAM 메시지를 적어도 2회 이상 수신되면, 정상적으로 ONU_ID가 할당되었음을 알 수 있다. 이와 같이, ONT(200)가 ONU_ID를 할당 받으면, OLT(100)는 ONT(200)의 시리얼 넘버 등록이 완료된다.
ONT(200)의 시리얼 넘버 등록이 완료되면, OLT(100)는 도 5와 같은 절차를 거쳐 ONT(100)에게 대역을 할당하게 된다.
도 6은 본 발명의 일 실시예에 따른 GPON 시스템의 레인징 과정을 도시한 절차도이다.
상술한 바와 같이, OLT(100)는 ONT(200)에 대역 할당 정보가 없는 프레임을 전송한다. 이때, OLT(100)는 ONT(200)에 대역 할당 정보가 없는 프레임을 2번 전송함이 바람직하다. 이후, OLT(100)는 유니케스트로 ONT(200)에 레인징 요청 메시지를 전송한다(S201). 이에 따라, ONT(200)는 자신의 시리얼 넘버와 할당 받은 ONU_ID를 포함한 응답 PLOAM 메시지를 생성하여 OLT(100)로 전송한다(S202, S203). 시리얼 넘버와 할당 받은 ONU_ID를 포함한 응답 PLOAM 메시지가 정상적으로 수신되면, OLT(100)는 ONT(200)와의 거리를 측정하여 보상 값(Equalixation Delay : EqD)을 생성한다(S204). 이후, OLT(100)는 보상 값을 포함한 레인징 타임 PLOAM 메시지를 ONT(200)에 전송한다(S205). 레인징 타임 PLOAM 메시지를 수신한 ONT(200)는 수신된 레인징 타임 PLOAM 메시지에서 보상 값을 추출하여, 추출된 보상 값을 참조하여 할당된 시간에 상향으로 데이터를 전송할 수 있다(S206). 한편, OLT(100)는 레인징 타임 할당 PLOAM 메시지를 ONT(100)에 적어도 3회 이상 전송하고, ONT(200)가 3회 이상 전송된 레인징 타임 할당 PLOAM 메시지를 적어도 2회 이상 수신되면, 정상적으로 ONU_ID가 할당되었음을 알 수 있다. 상술한 바에 의해, 동일한 시리얼 넘버를 가진 다수의 ONT(200)들이 허가되지 않은 시간에 상향으로 데이터를 전송하는 것을 방지할 수 있다.
한편, 시리얼 넘버 등록 과정과 레인징 과정을 포함한 인증 과정을 마친 ONT(200)가 동작하고 있음에도 동일 시리얼 넘버를 가진 ONT(100)로부터 시리얼 넘버를 포함한 응답 메시지가 수신되면, OLT(100)는 단일 GPON 망에 동일한 시리얼 넘버를 가진 ONT(100)가 있음을 운영자에게 알려줌이 바람직하다.
이하에서는 도 7를 참조하여, 비정상적인 상향 트래픽 전송을 방지하는 GPON 시스템에 대해 상세히 설명한다.
도 7은 본 발명의 일 실시예에 따른 비정상적인 상향 트래픽 전송을 방지하는 GPON 시스템의 블록도이다.
도시된 바와 같이, GPON 시스템은 OLT(100)와 ONT(200)를 포함한다.
ONT(200)는 시리얼 넘버를 포함하는 응답 PLOAM 메시지를 생성하여 OLT(100)로 전송하고, 이에 따른 ONU_ID 할당 PLOAM 메시지를 OLT(100)로부터 수신하여 ONU_ID를 할당받는다. 이 같은 ONT(200)는 통신부(210), 랜덤 지연 값 생성 처리부(220), 저장부(230), 메시지 처리부(240), 판별부(250), 아이디 획득부(260)를 포함한다. 통신부(210)는 후술할 OLT(100)와 통신하며, 저장부(230)는 ONT(200)와 관련된 정보들이 저장된다.
랜덤 지연 값 생성 처리부(220)는 12비트의 랜덤 지연 값을 생성하고, 생성 된 랜덤 지연 값 중 일부의 랜덤 지연 값을 저장부(220)에 저장한다. 여기서, 저장부(220)에 저장되는 랜덤 지연 값은 8 비트의 랜덤 지연 값으로서, OLT(100)로부터 수신되는 ONU_ID 할당 PLOAM 메시지를 식별하기 위한 식별자로 사용된다. 이와 같이, 랜덤 지연 값 생성 처리부(220)는 도 3 또는 도 4 와 같이 12 비트의 랜덤 지연 값 중 8 비트의 랜덤 지연 값을 추출하여 저장부(220)에 저장한다. 한편, 12 비트의 랜덤 지연 값 중 특정 8비트의 랜덤 지연 값을 추출하는 방법은 후술할 OLT(100)에서도 동일하게 수행됨이 바람직하다.
메시지 처리부(240)는 통신부(210)를 통해 OLT(100)로부터 수신된 정보에 따라 동작을 수행 및 처리한다. 즉, OLT(100)로부터 시리얼 넘버 요청 정보가 수신되면, 메시지 처리부(240)는 저장부(230)에 저장된 시리얼 넘버와 랜덤 지연 값 생성 처리부(220)로부터 생성된 12비트의 랜덤 지연 값을 포함한 응답 PLOAM 메시지를 생성하여 OLT(100)로 전송하도록 처리한다. 판별부(250)는 메시지 처리부(240)로부터 OLT(100)의 ONU_ID 할당 PLOAM 메시지가 수신되면, ONU_ID 할당 PLOAM 메시지에 포함된 시리얼 넘버를 참조하여, 저장부(230)에 저장된 시리얼 넘버와 동일한지 판별한다.
추가로, 판별부(250)는 수신된 ONU_ID 할당 PLOAM 메시지에 포함된 랜덤 지연 값을 추출한다. 여기서, ONU_ID 할당 PLOAM 메시지에 포함된 랜덤 지연 값은 8 비트의 랜덤 지연 값으로서, 하기에서 상세히 설명하기로 한다. 이 같이, 판별부(250)는 추출된 랜덤 지연 값과 저장부(230)에 저장된 8 비트의 랜덤 지연 값이 동일한지 판별한다. ONU_ID 할당 PLOAM 메시지에 포함된 시리얼 넘버와 랜덤 지연 값이 모두 일치하면, 아이디 획득부(260)는 수신된 ONU_ID 할당 PLOAM 메시지에 포함된 ONU_ID를 할당받아 저장부(230)에 저장한다. 이에 따라, 동일한 시리얼 넘버를 가진 ONT(200)들 중 하나의 ONT(200)만이 ONU_ID를 할당 받을 수 있게 된다.
OLT(100)는 ONT(200)로부터 수신된 응답 PLOAM 메시지를 참조하여, ONT(200)에 ONU_ID를 할당하고, ONT(200)의 시리얼 넘버를 등록처리 한다. 이 같은 OLT(100)는 통신부(110), 추출부(120), 아이디 생성 처리부(130), 아이디 저장부(140), 랜덤 지연 값 생성부(150), 할당 메시지 처리부(160)를 포함한다.
통신부(110)는 ONT(200)와 통신하며, 아이디 저장부(140)는 시리얼 넘버가 등록된 ONT(200)의 ONU_ID 정보가 저장된다.
추출부(120)는 통신부(110)를 통해 ONT(200)로부터 응답 PLOAM 메시지가 수신되면, 응답 PLOAM 메시지에 포함된 시리얼 넘버와 랜덤 지연 값을 추출한다. 아이디 생성 처리부(130)는 추출된 시리얼 넘버를 식별자로 ONU_ID를 생성하고, 이를 아이디 저장부(140)에 저장한다. 랜덤 지연 값 생성부(150)는 추출된 12 비트의 랜덤 지연 값 중 ONT(200)의 저장부(230)에 저장된 일부의 랜덤 지연 값 즉, 8 비트의 랜덤 지연 값과 동일한 8 비트의 랜덤 지연 값을 생성한다. 이 같은 랜덤 지연 값 생성부(150)는 사전에 미리 정해놓은 알고리즘을 이용하여 특정 8 비트의 랜덤 지연 값을 선택할 수 있다.
할당 메시지 처리부(160)는 아이디 생성 처리부(130)로부터 생성된 ONU_ID와 랜덤 지연 값 생성부(150)로부터 생성된 8 비트의 랜덤 지연 값을 포함한 ONU_ID 할당 PLOAM 메시지를 생성하여 ONT(200)로 전송을 처리한다.
이 같은 할당 메시지 처리부(160)는 도 5의 10과 같이, ONU_ID 할당 PLOAM 메시지의 12 번째 바이트에 8 비트의 랜덤 지연 값을 저장한다. 즉, 12번째 바이트(10)는 명시되는 않은 필드로 사용되지 않음에 따라, 할당 메시지 처리부(160)는 12 번째 바이트에 8 비트의 랜덤 지연 값을 저장할 수 있다.
이와 같이, OLT(100)는 동일한 시리얼 넘버를 가진 ONT(200)들 중 하나의 ONT(200)에만 ONU_ID를 할당하고, ONU_ID를 할당한 ONT(200)의 시리얼 넘버를 등록할 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다.
본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.