상기 목적을 달성하기 위한 본 발명에 따른 시스템은, 홈 서버를 통해서 하나 이상의 디바이스들이 관리되는 홈 네트워크 시스템에서, 제어 디바이스의 제어에 따라 서비스 콘텐츠를 제공하는 서비스 디바이스; 상기 각 디바이스들에 대한 인증 정보를 포함하고 상기 인증 정보에 따라 상기 각 디바이스들에 대한 네트워크를 설정하는 홈 서버; 상기 홈 서버와 연결되며, 상기 각 제어 디바이스들에 대한 성격에 따라 서비스 허가에 대한 정보를 포함하는 허가 서버; 및 상기 홈 서버를 통해 인증을 수행하고, 상기 요청된 서비스 콘텐츠에 대한 상기 허가 서버에서의 상기 서비스 허가에 대한 정보에 기초한 허가 여부에 따라 상기 서비스 디바이스로부터 상기 서비스 콘텐츠를 제공받는 상기 제어 디바이스를 포함한다.
상기 허가 서버는 상기 각 제어 디바이스들에 대한 성격에 따라 서비스 허가에 대한 정보를 테이블 형태로 관리하는 장치 및 허가 목록 데이터베이스;를 포함하는 것이 바람직하다.
또한, 상기 장치 및 허가 목록 데이터베이스는 상기 각 제어 디바이스들에 대한 성격에 따른 서비스 디바이스 허가에 대한 정보를 더 포함할 수 있다.
상기 홈 서버는, 상기 각 디바이스들에 대한 인증 정보를 상기 각 디바이스와 매핑되어 저장하는 인증 테이블을 포함하는 것이 바람직하다.
상기 홈 서버에서 상기 각 제어 디바이스들에 대한 인증은 상기 제어 디바이스의 매체 접속 제어 계층 주소 정보로 수행하는 것을 특징으로 하며, 상기 홈 서버에서 상기 각 제어 디바이스들에 대한 인증은 사용자의 아이디 및 패스워드 정보로 수행하는 것을 특징으로 한다.
또한, 상기 홈 서버는, 상기 제어 디바이스에 대하여 사용자 인증, 디바이스 인증 및 네트워크 설정을 동시에 처리하는 것을 특징으로 하며, 상기 제어 디바이스로부터의 DHCP 패킷과 PPPOE 패킷을 동시에 처리할 수 있는 것을 특징으로 한다.
한편, 상기 홈 서버는 네트워크 설정을 요청한 상기 제어 디바이스로부터의 입력 패킷 데이터 유형을 확인하는 이더넷 타입 검사부; 상기 이더넷 타입 검사부에서 검사된 입력 패킷 데이터 유형에 따라 PPPOE 처리를 수행할 수 있는 PPPOE 서버; 상기 이더넷 타입 검사부에서 검사된 입력 패킷 데이터 유형에 따라 DHCP 처리를 수행할 수 있는 DHCP 서버; 및 상기 각 PPPOE 및 DHCP 처리후, 사용자 및 디바이스 인증을 수행하는 사용자/다바이스 인증 데이터베이스를 포함하는 것을 특징으로 한다.
이때, 상기 PPPOE 서버는, PPPOE 처리 요청에 따른 프로세스들을 실행하는 PPPOE 데몬; 상기 PPPOE 데몬 실행 후, PPP 처리 요청에 따른 프로세스들을 실행하는 PPP 데몬; 및 상기 PPP 데몬 실행 후, PPPOE에서의 사용자 인증을 담당하는 사용자 인증부를 포함할 수 있다.
또한, 상기 DHCP 서버는, DHCP 패킷에 대한 포트 번호를 검사하는 DHCP 포트 번호 검사부; 상기 DHCP 포트 번호 검사 후, DHCP 처리 요청에 따른 프로세스들을 실행하는 DHCP 데몬; 및 상기 DHCP 데몬 실행 후, 상기 DHCP 패킷의 MAC 어드레스를 인증하는 MAC 어드레스 인증부;를 포함할 수 있다.
한편, 상기 이더넷 타입 검사부는, 상기 입력 패킷 데이터의 데이터 필드들 중에서 이더넷 타입 정보를 포함하는 필드를 확인하고, 상기 필드에 기록된 정보에 따라 상기 입력 패킷 데이터가 DHCP 패킷인지 PPPOE 패킷인지를 판단하는 것을 특징으로 한다.
또한, 상기 이더넷 타입 검사부에서 확인한 상기 입력 패킷 데이터의 이더넷 타입이 DHCP일 경우, 페이로드의 IP 패킷 영역을 통해 IP 패킷 정보를 확인하는 것이 바람직하며, 상기 이더넷 타입 검사부에서 확인한 상기 입력 패킷 데이터의 이더넷 타입이 DHCP일 경우, 페이로드의 IP 패킷 영역을 통해 UDP 정보를 확인하는 것이 바람직하다.
상기 홈 서버는, 상기 DHCP 서버의 DHCP 데몬과 상기 PPPOE 서버의 PPPOE 데몬이 할당 가능한 IP 정보들을 포함하는 IP 풀 데이터베이스에 동시에 접속 가능한 것을 특징으로 한다.
한편, 상기 목적을 달성하기 위한 본 발명에 따른 방법은, 홈 네트워크의 각종 서비스 디바이스들을 제어하여 상기 서비스 디바이스들로부터 서비스를 제공받고자 하는 사용자는 제어 디바이스가 홈 서버를 통해 인증을 받는 단계; 상기 제어 디바이스가 상기 홈 서버로 상기 서비스 디바이스에 대한 서비스 요청을 하는 단계; 상기 서비스 요청에 따라 상기 제어 디바이스가 상기 홈 서버와 연동되는 허가 서버를 통해 상기 허가 서버에 저장된 상기 제어 디바이스의 성격에 따른 서비스 허가 정보에 기초하여 상기 요청된 서비스에 대한 서비스 허가를 받는 단계; 및 상기 서비스 허가 수락 후, 상기 제어 디바이스가 상기 서비스 디바이스로부터 상기 요청한 서비스를 제공받는 단계를 포함한다.
이때, 상기 방법은 제어 디바이스가 홈 네트워크에 접속하고자 할 때, 상기 제어 디바이스(120)를 홈 서버의 인증 테이블에 등록하는 단계; 상기 홈 서버가 허 가 서버로 서비스 허가 등록 메시지를 전송하는 단계; 상기 허가 서버가 상기 해당 제어 디바이스에 대한 허가 정보를 상기 허가 서버에 등록하는 단계; 상기 제어 디바이스에서 상기 홈 서버로 서비스 디바이스로부터의 서비스 제공 요청을 하는 단계; 상기 홈 서버가 상기 제어 디바이스가 요청한 상기 서비스 제공이 허가된 서비스인지를 상기 허가 서버를 통해 확인하는 단계; 및 상기 확인 결과 허가가 수락될 경우, 상기 서비스 디바이스로부터 상기 제어 디바이스에 의해 요청된 서비스가 제공되는 단계를 포함할 수 있다.
또한, 상기 방법은 상기 요청된 서비스의 허가가 수락될 때, 상기 홈 서버, 제어 디바이스 및 상기 요청된 미디어 콘텐츠를 제공하는 해당 서비스 디바이스간에 매칭되는 프로토콜, 포트 및 포맷에 대한 선택을 하는 단계; 및 상기 홈 서버가 상기 제어 디바이스와 상기 서비스 디바이스간의 라우팅 테이블 및 브릿징 테이블을 갱신하는 단계를 더 포함할 수 있다.
한편, 상기 허가 서버는 상기 각 제어 디바이스들에 대한 성격에 따라 서비스 허가에 대한 정보를 테이블 형태로 관리하는 것이 바람직하다.
상기 홈 서버는 상기 각 디바이스들에 대한 인증 정보를 상기 각 디바이스와 매핑되어 저장하는 인증 테이블을 포함하는 것을 특징으로 한다.
이때, 상기 홈 서버에서 상기 각 제어 디바이스들에 대한 인증은 상기 제어 디바이스의 매체 접속 제어 계층 주소 정보로 수행할 수 있으며, 사용자의 아이디 및 패스워드 정보로 수행할 수도 있다.
상기 홈 서버는 상기 제어 디바이스에 대하여 사용자 인증, 디바이스 인증 및 네트워크 설정을 동시에 처리하는 것을 특징으로 하며, 상기 제어 디바이스로부터의 DHCP 패킷과 PPPOE 패킷을 동시에 처리할 수 있는 것을 특징으로 한다.
한편, 상기 서비스 허가 수락되지 않았을 경우, 상기 허가 서버에서 상기 홈 서버의 서비스 허가 요청 메시지의 응답으로 서비스 허가 거절 메시지를 상기 홈 서버로 전송하는 단계; 및 상기 허가 서버로부터 상기 서비스 허가 거절 메시지를 수신한 상기 홈 서버가 상기 해당 제어 디바이스로 거절 메시지를 전송하는 단계;를 더 포함하는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 제1 실시예에 따른 방법은, 제어 디바이스가 홈 서버로 네트워크 설정을 요청하는 단계; 상기 제어 디바이스가 전송한 입력 패킷의 프로토콜을 확인하는 단계; 상기 확인 결과, DHCP로 확인될 경우 상기 제어 디바이스에 대한 MAC 어드레스가 인증 테이블에 등록이 되어 있는 지 여부를 확인하는 단계; 상기 확인 결과, MAC 어드레스가 인증 테이블에 등록되어 있을 경우, 상기 제어 디바이스에게 IP를 할당하는 단계; 상기 제어 디바이스가 상기 홈 서버와의 네트워크 설정을 완료하는 단계; 상기 제어 디바이스의 서비스 허가와 관련된 정보를 허가 테이블에 등록하는 단계; 상기 제어 디바이스의 서비스 요청 후, 상기 허가 테이블에 상기 요청된 서비스의 허가 여부를 판단하는 단계; 및 상기 판단 결과, 상기 요청된 서비스가 허가되었을 때에 상기 요청된 서비스를 제공하는 단계를 더 포함하는 것을 특징으로 한다.
이때, 상기 인증 테이블 등록 여부 확인 결과, MAC 어드레스가 인증 테이블에 등록되어 있지 않을 경우, 상기 제어 디바이스를 게스트 디바이스로 인식하고 네트워크 설정을 재요청하는 단계;를 더 포함하는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 제2 실시예에 따른 방법은, 제어 디바이스가 홈 서버로 네트워크 설정을 요청하는 단계; 상기 제어 디바이스가 전송한 입력 패킷의 프로토콜을 확인하는 단계; 상기 확인 결과, PPPOE로 확인될 경우 상기 제어 디바이스에 대한 MAC 어드레스가 인증 테이블에 등록이 되어 있는 지 여부를 확인하는 단계; 상기 확인 결과, MAC 어드레스가 인증 테이블에 등록되어 있을 경우, 상기 제어 디바이스에게 PPPOE 데몬에 의해 네트워크 설정을 하는 단계; 상기 제어 디바이스의 서비스 허가와 관련된 정보를 허가 테이블에 등록하는 단계; 상기 제어 디바이스의 서비스 요청 후, 상기 허가 테이블에 상기 요청된 서비스의 허가 여부를 판단하는 단계; 및 상기 판단 결과, 상기 요청된 서비스가 허가되었을 때에 상기 요청된 서비스를 제공하는 단계를 더 포함하는 것을 특징으로 한다.
이때, 상기 인증 테이블 등록 여부 확인 결과, MAC 어드레스가 인증 테이블에 등록되어 있지 않을 경우, 상기 제어 디바이스의 MAC 어드레스를 인증 테이블에 등록하는 단계를 더 포함하는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 제3 실시예에 따른 방법은, 제어 디바이스가 홈 서버로 네트워크 설정을 요청하는 단계; 상기 제어 디바이스에 대해 자동 IP 설정 여부를 확인하는 단계; 상기 확인 결과, 자동 IP 설정으로 확인될 경우 상기 제어 디바이스에 대한 MAC 어드레스가 인증 테이블에 등록이 되어 있는 지 여 부를 확인하는 단계; 상기 확인 결과, MAC 어드레스가 인증 테이블에 등록되어 있을 경우, 네트워크 설정을 완료하는 단계; 상기 제어 디바이스의 서비스 허가와 관련된 정보를 허가 테이블에 등록하는 단계; 상기 제어 디바이스의 서비스 요청 후, 상기 허가 테이블에 상기 요청된 서비스의 허가 여부를 판단하는 단계; 및 상기 판단 결과, 상기 요청된 서비스가 허가되었을 때에 상기 요청된 서비스를 제공하는 단계를 더 포함하는 것을 특징으로 한다.
이때, 상기 확인 결과, MAC 어드레스가 인증 테이블에 등록되어 있지 않을 경우, 상기 제어 디바이스에 PPPOE 클라이언트 모듈이 존재하는 지 여부를 확인하는 단계; 상기 확인 결과, PPPOE 클라이언트 모듈이 존재할 경우, 상기 제어 디바이스에게 PPPOE 데몬에 의해 네트워크 설정을 하는 단계;를 더 포함하는 것을 특징으로 하며, 상기 확인 결과, PPPOE 클라이언트 모듈이 존재하지 않을 경우, 상기 제어 디바이스에게 PPPOE 클라이언트 파일을 전송하는 단계; 및 상기 제어 디바이스가 상기 수신된 PPPOE 클라이언트 파일을 실행하고, 상기 PPPOE 클라이언트 모듈을 생성하는 단계;를 더 포함하는 것을 특징으로 한다.
본 발명은 홈 네트워크에서 게스트 디바이스(Guest Device)에 대하여 사용자 인증, 디바이스 인증 및 네트워크 설정(Network Configuration)(즉, IP 어드레스 할당(Internet Protocol Address assignment))을 동일하게 처리한다. 또한, 본 발명은 DHCP와 PPPOE를 모두 지원할 수 있는 홈 서버 및 사용자 인증을 제안한다.
한편, 본 발명은 홈 내부의 레거시 디바이스(legacy device)에 대해 하드웨어 MAC(Medium Access Control) 어드레스를 통해 인증을 수행하고, 일시적인 방문 디바이스(Visiting Device)에 대해서는 사용자의 아이디(ID; Identification) 및 패스워드(password)로서 인증을 수행하게 된다.
또한, 모든 게스트 디바이스(Guest Device)는 본 발명에 따른 홈 서버(Home Server)를 경유하여야만 홈 내의 각종 디바이스 및 서비스에 대하여 접속(access)할 수가 있게 된다. 이때, 홈 서버를 경유하는 게스트 디바이스는 지정된 사용자 ID 및 패스워드에 따라서 홈 내의 디바이스 및 서비스에 대한 권한이 다르게 설정될 수 있다.
종래의 일반적인 UPnP(Universal Plug and Play)에서의 IP 설정 부분은 사용자 및 디바이스에 대한 인증 부분을 포함하지 않았으나, 본 발명에 따르면 디바이스 및 사용자에 대한 인증을 수행할 수가 있게 된다.
뿐만 아니라, 본 발명은 상기와 같은 인증 절차들을 통해서 네트워크 설정(Network Configuration)이 된 디바이스 및 사용자에 대하여 작업 스케줄링(job scheduling)을 효율적으로 수행할 수 있는 트래픽 우선 순위(traffic priority)를 부여함으로써 효율적인 QoS(Quality of Service)를 제공할 수 있게 된다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명이 적용되는 홈 네트워크에서의 디바이스 접속 상황을 나타낸 도면이다. 도 1을 참조하면, 홈 네트워크 내에서 레거시 디바이스(Legacy Device; 110) 또는 게스트 디바이스(Guest Device; 120)가 홈 서버(Home Server; 100)를 통해 하나 이상의 대상 디바이스들(예컨대, 엔터테인먼트 서비스 디바이스(111), 비디오 디바이스(112) 등)과 통신할 수 있다. 이때, 상기 레거시 디바이스(110)는 홈 네트워크 내에서 기존에 설치된 디바이스를 의미하며, 상기 게스트 디바이스(120)는 외부 디바이스(121) 등과 같이 일시적으로 홈 네트워크에 방문하는 디바이스를 의미한다.
한편, 상기 어떠한 디바이스를 홈 네트워크 내부로 가져와도 사용이 가능하지만, 인증 과정은 반드시 거쳐야 한다. 이때, 본 발명에 따라 PPPOE 또는 DHCP 방식에 의해 상기 레거시 디바이스(110) 또는 게스트 디바이스(120)에 대한 사용자 인증을 하게 되며, 이를 통해 콘텐츠(contents) 및 서비스의 차별화를 구현할 수가 있게 된다.
예컨대, 손님(guest)이 방문하여 홈 네트워크에 접속할 경우, 상기 손님에 대해서는 홈 네트워크 내의 모든 자료를 공개하지 않도록 설정하는 것이 바람직하며, 아들의 친구와 같은 경우에는 성인용 콘텐츠(adult contents)에 대한 접속 제한을 설정하는 것이 바람직하다. 또한, 도둑이 침범하였을 경우에는 홈 네트워크 내의 어떠한 디바이스 또는 서비스에 대해서도 접속(access)이 불가능하도록 설정하는 것이 바람직하다. 따라서, 본 발명에서는 홈 네트워크 내부에서 각종 서비스를 제공하는 다양한 대상 디바이스들(예컨대, 엔터테인먼트 서비스 디바이스(111), 비디오(112) 등)(이하, '서비스 디바이스'라 한다.)을 제어하기 위한 디바이스(즉, 레거시 디바이스(110) 또는 게스트 디바이스(120))(이하, '제어 디바이스'라 한다)가 홈 서버(100)를 통해 인증을 수행하게 하며, 이때 상기 홈 서버(100)를 통해 각 제어 디바이스별로 서비스 및 서비스 디바이스에 대한 허가를 차별화하여 설정하도록 할 수가 있게 된다.
상기 홈 서버(100)는 인터넷(140)과 같은 외부 네트워크들과 연결되는 게이트웨이(gateway)의 역할을 포함하거나, 상기 홈 서버(100)의 외부에 설치된 별도의 게이트웨이(미도시)를 통해 외부 네트워크와 통신할 수가 있게 된다. 이때, 상기 홈 서버(100)는 xDSL, 케이블, 광 등의 통신 수단을 통해 인터넷(140)과 연결될 수 있다.
한편, 본 발명에서는 상기 홈 네트워크 내부에 상기 홈 서버(100)와 연동되는 허가 서버(Permission Server; 130)를 포함하고, 상기 허가 서버(130)를 통해 상기 홈 서버(100)에 접속하는 각종 제어 디바이스에 대한 장치 및 서비스 허가(permission) 등을 제어할 수 있다. 따라서, 상기 허가 서버(130)는 각 제어 디바이스에 대한 허가 정보를 장치 및 허가 목록 데이터베이스(131)내에 테이블의 형태로 구성하여 포함할 수가 있다. 즉, 홈 네트워크 내의 각종 서비스 디바이스들을 제어하기 위해 각 제어 디바이스는 상기 홈 서버(100)를 통해 상기 허가 서버(130)에 접속하고, 상기 허가 서버(130)내의 장치 및 허가 목록 데이터베이스(131)에 포함된 자신의 허가 테이블을 통해 각 서비스 디바이스 및 서비스에 대한 허가를 받을 수가 있게 된다. 한편, 상기 허가 서버(130)는 그 구현 방법에 따라 상기 홈 서버(100) 내에 포함하여 구성하거나, 인터넷(140)을 통한 외부 네트워크에 구성할 수도 있다.
이하, 도 2를 참조하여 상기 본 발명에 따른 홈 서버(100)의 기능을 보다 구체적으로 설명한다.
도 2는 본 발명에 따른 홈 네트워크에서 디바이스 및 사용자의 인증 시스템 을 나타낸 도면이다. 도 2를 참조하면, 레거시 디바이스(110)는 상술한 바와 같이 홈 네트워크 내에서 설정된 기존의 제어 디바이스로서 본 발명에 따른 홈 서버(100)를 통해 각 서비스 디바이스들(예컨대, 비디오 디바이스(Video Device; 112), 엔터테인먼트 디바이스(Entertainment Device; 111), CE 디바이스(Consumer Electronic Device; 113) 등)을 제어할 수도 있을 뿐만 아니라, 상기 홈 서버(100)를 거치지 않고서도 직접적으로 상기 서비스 디바이스들을 제어하는 것이 가능하다.
그러나, 게스트 디바이스(120)의 경우에는 직접 서비스 디바이스들을 제어하는 것 보다 본 발명에 따라 홈 서버(100)를 통해 인증 및 허가 절차를 거친 후에 상기 홈 서버(100)를 통해 각종 서비스 디바이스들을 상기 허가 등급 등에 따라 제어하도록 구현하는 것이 바람직하다.
즉, 새로운 게스트 디바이스(120)가 홈 네트워크에 접속하여 서비스 디바이스들을 제어 또는 서비스 디바이스들로부터 서비스 받고자 할 경우, 먼저 상기 홈 서버(100)를 통해 네트워크 접속을 설정하고, 인증을 받아야 한다. 또한, 본 발명에 따라 허가 서버(130)를 통해 상기 허가 서버(130)내의 장치 및 허가 목록 데이터베이스(131)에 설정된 허가 등급 또는 허가되는 서비스 종류 정보에 따라 상기 서비스 디바이스들로부터 서비스를 제공받게 된다. 이때, 상기 허가 서버(130)가 홈 네트워크 내에서 상기 홈 서버(100)의 외부에 별도로 설치될 경우, 상기 게스트 디바이스(120)는 상기 홈 서버(100)를 통해 상기 허가 서버(130)와 접속할 수가 있게 된다.
상기 장치 및 허가 목록 데이터베이스(131)에서 구성되는 허가 테이블(Permission Table)은 하기 <표 1>과 같이 구성될 수 있다.
ID |
MAC 어드레스 |
허가 정보 |
guest 1 |
M1 |
All permitted |
guest 2 |
M3 |
Just image & movie & Internet & not adult |
guest 3 |
M5 |
Just device |
guest 4 |
M6 |
Just Internet |
상기 <표 1>을 참조하면, 각 게스트 디바이스(120)마다 상기 각 디바이스의 성격(즉, 방문자의 관계 및 수준 등)에 맞는 허가 정보를 구성하고, 상기 허가 정보에 따라 서비스 및 디바이스의 제어를 제한적으로 제공할 수가 있게 된다. 이때, 상기 각 디바이스에 대한 구별은 상기 각 디바이스의 MAC 어드레스(MAC address)의 확인을 통해 수행할 수 있다.
예컨대, 게스트 1이 마스터의 제어 디바이스일 경우 모든 사용을 허가하도록 설정할 수 있으며, 게스트 2가 아들의 제어 디바이스일 경우, 성인용이 아닌 이미지, 영화, 인터넷 등을 제어할 수 있도록 설정할 수 있다. 또한, 게스트 3에 대해서는 각 서비스 디바이스들만을 제어할 수 있도록 설정하고, 게스트 4에 대해서는 인터넷만을 사용할 수 있도록 설정할 수 있다. 이와 같이 본 발명에 따라 상기 허가 서버(130)의 장치 및 허가 목록(131)을 구비함으로써 각 제어 디바이스에 대한 홈 네트워크 내에서의 제공 서비스의 허가 정도를 각기 성격에 맞게 설정하여 그 기능을 제한할 수가 있게 된다.
한편, 본 발명에 따른 홈 서버(100)는 레거시 디바이스(110) 또는 게스트 디바이스(120)의 통신 가능한 프로토콜의 종류에 관계없이 네트워크 접속이 가능하도 록 DHCP(Dynamic Host Configuration Protocol) 및 PPPOE(Point to Point Protocol On Ethernet)를 모두 지원하도록 구성하게 된다.
따라서, 상기 홈 서버(100)는 본 발명의 실시예에 따라 DHCP 서버(200) 및 PPPOE 서버(210)를 포함하게 된다. 이때, 상기 DHCP 서버(200)는 해당 제어 디바이스에게 IP 풀 데이터베이스(IP pool DB; 220)를 통해 네트워크 접속을 위한 고유의 IP를 제공하게 된다. 또한, PPPOE 서버(210)는 PPPOE에서의 IP 제공 프로토콜인 IPCP(IP Control Protocol; 212)에 의해 IP 풀 데이터베이스(IP pool DB; 220)를 통해 네트워크 접속을 위한 고유의 IP를 제공하게 된다.
아울러, 상기 PPPOE 서버(210)는 PPPOE에 의한 네트워크 접속을 위하여 LCP(Link Control Protocol; 211)에 의해 데이터 링크 설정을 하게 되며, PAP/CHAP(Password Authentication Protocol/Challenge Handshake Authentication Protocol; 213)에 의해 인증을 수행하게 된다. 이때, 상기 PAP/CHAP(213)는 본 발명의 실시예에 따라 각 제어 디바이스별로 설정된 인증 테이블(Authentication Table)에 의해 인증을 수행할 수가 있게 된다.
예컨대, 상기 인증 테이블은 하기 <표 2>와 같이 구성될 수 있다.
User ID |
MAC 어드레스 |
디바이스 ID |
IP |
상태 |
Family |
M1 |
PC_A |
I1 |
On |
parents |
M2 |
TV_A |
I2 |
Off |
guest2 |
M3 |
PDA |
I3 |
On |
...... |
상기 <표 2>를 참조하면, 본 발명에 따라 홈 서버(100)내에서 인증을 수행하기 위한 상기 인증 테이블은 각 제어 디바이스별로 MAC 어드레스, 디바이스 ID, IP 및 상태 정보 등을 포함할 수 있다.
한편, 상기 게스트 디바이스(120)가 상기 홈 서버(100)의 PPPOE 서버(210)에 의해 PPPOE에 의한 네트워크 접속 설정을 하게 되면, 상기 게스트 디바이스(120)는 PPPOE 클라이언트(Client)(230)로서 동작하게 된다.
따라서, 만약, 게스트 디바이스(120)의 ID가 'guest2'이고, 상기 디바이스의 MAC 어드레스가 'M3'이며, PPPOE를 통해 네트워크 설정이 가능할 경우, 상기 게스트 디바이스(120)는 본 발명에 따라 홈 서버(100)의 PPPOE 서버(210)를 통해 네트워크 설정 및 IP 할당을 받게 된다. 따라서, 상기 게스트 디바이스(120)와 상기 홈 서버(100) 간에는 PPPOE 터널링(tunneling)이 설정된다. 이때, 상술한 바와 같이 상기 게스트 디바이스(120)의 MAC 어드레스에 의해 상기 <표 2>의 인증 테이블을 확인하고, IP 할당 및 상태 설정을 하게 된다. 또한, 본 발명에 따라 상기 홈 서버(100)와 연결되는 허가 서버(130)의 장치 및 허가 목록 데이터베이스(131)에 저장된 <표 1>과 같은 허가 테이블을 통해 상기 게스트 디바이스(120)의 설정된 허가 디바이스 및 서비스를 확인하게 된다. 이때, 상기 게스트 디바이스(120)에 대한 허가 절차의 경우에도 상기 게스트 디바이스(120)의 MAC 어드레스가 사용될 수 있다.
이하, 도 3 내지 도 5를 참조하여 각 디바이스의 네트워크 설정 방식에 따른 상기 홈 서버(100)에서의 네트워크 설정 기능을 보다 구체적으로 설명한다. 이때, 본 발명에 따른 상기 홈 서버(100)는 상술한 바와 같이 DHCP와 PPPOE를 동시에 지원 가능하도록 구현될 수 있다.
도 3은 본 발명의 실시예에 따른 홈 네트워크 시스템에서 홈 서버의 기능적 구성을 나타낸 도면이다. 도 3을 참조하면, 본 발명의 실시예에 따른 홈 서버(100)의 기능적 구성(300)은 이더넷 타입 검사부(Ethernet type check module; 310), PPPOE 데몬(PPPOE daemon; 320), PPP 데몬(PPP daemon; 330), 사용자 인증부(PAP/CHAP; 340), DHCP 포트 번호 검사부(DHCP port number check module; 350), DHCP 데몬(DHCP daemon; 360), MAC 어드레스 인증부(370) 및 사용자/디바이스 인증 데이터베이스(380) 등으로 구성될 수 있다.
즉, 상기 본 발명의 실시예에 따른 홈 서버(100)는 상기 이더넷 타입 검사부(310)에서의 검사된 입력 패킷 데이터 유형에 따라 각각 PPPOE 처리를 수행할 수 있는 PPPOE 서버(210)를 구성하는 PPPOE 데몬(PPPOE daemon; 320), PPP 데몬(PPP daemon; 330) 및 사용자 인증부(PAP/CHAP; 340)와 DHCP 처리를 수행할 수 있는 DHCP 서버(200)를 구성하는 상기 DHCP 포트 번호 검사부(DHCP port number check module; 350), DHCP 데몬(DHCP daemon; 360) 및 MAC 어드레스 인증부(370)로 구성된다. 또한, 상기 각 PPPOE 및 DHCP 처리 후, 본 발명에 따라 상기 사용자/다바이스 인증 데이터베이스(380)를 통해 사용자 및 디바이스 인증을 수행하게 된다.
상기 홈 서버(100)의 이더넷 타입 검사부(310)에서 입력 패킷 데이터(incoming packet data)의 이더넷 타입을 검사하게 되며, 상기 검사된 입력 패킷 데이터의 이더넷 타입이 PPPOE일 경우에는 상기 PPPOE 데몬(320), PPP 데몬(330) 및 사용자 인증부(340) 등을 통해 처리하게 되며, DHCP일 경우에는 DHCP 포트 번호 검사부(350), DHCP 데몬(360) 및 MAC 어드레스 인증부(370) 등을 통해 처리하게 된다.
보다 구체적으로 설명하면, 상기 이더넷 타입 검사부(310)에서는 입력 패킷 데이터의 데이터 필드들 중에서 이더넷 타입 정보를 포함하는 필드(일반적으로 2바이트로 구성됨)를 확인하고, 상기 필드에 기록된 정보에 따라 상기 입력 패킷 데이터가 DHCP 패킷인지 PPPOE 패킷인지를 판단하게 된다.
이때, 상기 입력 패킷 데이터는 일반적으로 도 5와 같이 구성된다. 도 5는 본 발명의 실시예에 따른 이더넷 패킷의 구조를 나타낸 도면이다. 도 5를 참조하면, 홈 서버(100)로 입력되는 일반적인 입력 패킷 데이터는 6바이트의 목적지 주소 영역(Destination MAC; 510), 6바이트의 발신지 주소 영역(Source MAC; 520), 2바이트의 이더넷 타입 정보 영역(Ether_Type; 530), 페이로드 영역(payload; 540) 및 FCS 영역(Frame Check Sequence; 550) 등으로 구성된다. 또한, 상기 페이로드 영역(540)은 2바이트의 프로토콜 타입 영역(Protocol type; 541)과 2바이트의 포트 번호 영역(Port number; 542)을 포함할 수 있다.
따라서, 상기 이더넷 타입 검사부(310)에서는 상기 입력 패킷 데이터의 필드 영역 중에서 상기 이더넷 타입 정보 영역(530)을 확인함으로써, 상기 입력 패킷 데이터가 DHCP 패킷인지, PPPOE 패킷인지 결정하게 된다.
한편, 상기 입력 패킷 데이터가 DHCP 패킷일 경우, 일반적으로 상기 페이로드 영역(540) 내에는 20 바이트의 IP 영역이 할당되고, 상기 IP 영역 중에서 2바이트의 프로토콜 번호 정보가 포함된다. 반면, 상기 입력 패킷 데이터가 PPPOE 패킷일 경우, 일반적으로 상기 페이로드 영역(540) 내에는 IP 영역 뿐만 아니라, 6바이트의 PPPOE 영역이 할당된다.
즉, 상기 이더넷 타입 검사부(310)에서는 상기 입력 패킷 데이터의 이더넷 타입 정보 영역(530)을 확인하여 이더넷 타입 정보가 '0x8863' 또는 '0x8864'일 경우 상기 입력 패킷을 PPPOE 패킷으로 판단하고, 상기 PPPOE 데몬(320), PPP 데몬(330) 및 사용자 인증부(PAP/CHAP; 340)에 의해 PPPOE 패킷 처리를 수행한다.
만약, 상기 이더넷 타입 검사부(310)에서 확인한 상기 입력 패킷 데이터의 이더넷 타입이 DHCP일 경우, 페이로드의 IP 패킷 영역을 통해 IP 패킷 정보(0x0800) 및 UDP(User Data Protocol) 정보(0x06)를 확인하게 된다. 또한, 상기 입력 패킷 데이터가 IP 및 UDP 패킷으로 구성될 경우, 상기 DHCP 포트 번호 검사부(350)에서는 상기 포트 번호 영역(542)을 통해 해당 패킷의 포트 번호(즉, 0x67, 0x68)를 확인하게 된다. 그런 다음, 상기 DHCP 데몬(360) 및 MAC 어드레스 인증부(370)를 통해 DHCP 패킷 처리를 수행한다.
상기와 같이 입력 패킷 데이터의 형식에 따라 각각 PPPOE 또는 DHCP 방식으로 사용자 인증 및 MAC 어드레스 인증을 수행한 후, 본 발명에 따라 사용자/디바이스 인증 데이터베이스(380)의 상기 <표 2>에서와 같은 인증 테이블을 통해 사용자 및 디바이스 인증을 수행하게 된다.
따라서, 본 발명에 따른 홈 서버(100)는 DHCP 서버(200) 및 PPPOE 서버(210)를 동시에 구비하고, 각 제어 디바이스의 특성에 따라 DHCP 및 PPPOE 방식의 처리를 동시에 수행할 수가 있게 된다. 또한, 상기 도 2에서 상술한 바와 같이 상기 DHCP 데몬(360)과 PPPOE 데몬(320)이 하나의 IP 풀 데이터베이스(220)에 동시에 접속(access)할 수가 있게 된다.
이하, 도 4를 참조하여 상기 도 3에서 상술한 홈 서버(100)의 기능 구성(300)을 통해 입력 패킷 데이터가 네트워크 설정을 수행하는 절차를 설명한다.
도 4는 본 발명의 실시예에 따른 홈 서버에서의 프로토콜 선택 절차를 나타낸 흐름도이다. 도 4를 참조하면, 먼저 입력 패킷 데이터에 대한 네트워크 설정 요청(Network configuration Request)(S401)을 하게 되면, 상술한 바와 같이 상기 입력 패킷 데이터가 PPPOE 패킷인지를 확인(S402)하고 PPPOE를 발견(S403)한 후, PPPOE 세션(Session)을 수행(S404)하고, 인증 모듈에 의한 상기 입력 패킷 데이터의 인증 처리(Authentication Module Processing)(S405)를 수행하게 된다. 이때, 상기 입력 패킷이 PPPOE 패킷으로 확인되었으나 PPPOE가 발견되지 않을 경우 또는 PPPOE 세션이 처리되지 않았을 경우에는 브릿징(Bridging) 및 라우팅(Routing) 등에 의해 다른 프로토콜을 실행(S408)하게 된다.
한편, 상기 입력 패킷 데이터가 PPPOE 패킷이 아니고 IP/UDP 패킷일 경우, 상기 패킷 데이터가 DHCP 패킷인 것을 확인(S409)하고 DHCP를 발견(S410)한 후, 상기와 같이 인증 모듈에 의한 처리(S405)를 수행하게 된다. 이때, 상기 패킷이 DHCP 패킷으로 확인되었으나, DHCP가 발견되지 않을 경우에는 네트워크 설정 처리(Network configuration Processing)(S411)를 수행하게 된다.
그러나, 상기 IP/UDP 패킷 확인 후 DHCP 패킷이 아닐 경우, 또는 상기 패킷이 IP/UDP 패킷이 아니라 기타 다른 패킷으로 판단(S407)될 경우에는 상술한 브릿징(Bridging) 및 라우팅(Routing) 등에 의해 다른 프로토콜을 실행(S408)하게 된다.
이상으로 본 발명의 실시예에 따른 홈 서버(100)의 구성과 처리 절차를 상세히 설명하였다. 이하, 도 8 내지 도 12를 참조하여 본 발명에 따라 제어 디바이스(110, 120)가 상기 홈 서버(100)를 통해 인증한 후, 서비스 디바이스(111 내지 113)로부터 서비스를 제공받는 절차를 설명한다.
도 6은 본 발명의 실시예에 따른 홈 네트워크에서의 디바이스 및 사용자 인증 절차를 나타낸 흐름도이다. 도 6을 참조하면, 홈 네트워크의 각종 서비스 디바이스들(111 내지 113)을 제어하여 상기 서비스 디바이스들(111 내지 113)로부터 서비스를 제공받고자 하는 사용자는 제어 디바이스(110, 120)를 본 발명에 따른 홈 서버(100)를 통해 인증 받고, 허가 서버(130)를 통해 디바이스 또는 서비스 허가를 받아야 한다.
보다 구체적으로 설명하면, 먼저 UPnP 미디어 렌더러(UPnP Media renderer)인 제어 디바이스(120)는 새롭게 홈 네트워크에 접속하고자 할 때, 상기 제어 디바이스(120)를 홈 서버(100)의 인증 테이블에 등록한 후, 홈 서버(100)로의 사용자 인증 및 네트워크 설정(network configuration)을 수행(S601)하게 된다. 이때, 상기 제어 디바이스(120)가 게스트 디바이스일 경우 상기 제어 디바이스(120)의 입력 수단을 통해 등록된 ID 및 패스워드를 입력하여 홈 서버(100)로 전송함으로써 상기 게스트 디바이스에 대한 인증이 수행되고, IP를 부여받아 네트워크 설정을 완료하게 된다. 이때, 상기 제어 디바이스(120)의 정보 입력은 도 7과 같이 구현될 수 있다. 즉, 상기 도 7을 참조하면, 상기 제어 디바이스(120)의 사용자 정보 입력 창(700)에서 사용자 성명(710)과 패스워드(720)를 입력할 수가 있다. 이때, 상기 입 력창 하단에는 현재 인증 중인지 또는 인증이 완료되었는지를 나타내는 메시지가 출력될 수 있다. 따라서, 상기 입력된 사용자 성명(710)과 패스워드(720) 정보를 통해 홈 서버(100)에서는 상기 제어 디바이스(120)를 인증하게 된다.
그런 다음, 상기 홈 서버(100)는 본 발명에 따라 허가 서버(130)로 서비스 허가 등록 메시지(Service Permission Register message)를 전송(S602)함으로써, 상기 허가 서버(130)가 상기 해당 제어 디바이스(120)에 대한 허가 정보를 상기 허가 서버(130)내의 장치 및 허가 목록 데이터베이스(131)에 구성된 상기 <표 1>과 같은 허가 테이블에 등록하도록 한다.
상기와 같이 상기 홈 네트워크에 접속하고자 하는 제어 디바이스(120)에 대한 허가 정보가 등록된 후, 상기 제어 디바이스(120)에서 상기 홈 서버(100)로 소정의 미디어 콘텐츠(Media contents)에 대한 서비스 제공 요청(UPnP Media Request)(S603)하게 된다. 이때, 상기 홈 서버(100)는 본 발명의 실시예에 따라 상기 제어 디바이스(120)가 요청한 해당 미디어 콘텐츠에 대한 서비스 제공이 허가된 서비스 및 디바이스인지를 상기 허가 서버(130)를 통해 확인하게 된다. 즉, 상기 홈 서버(100)는 상기 허가 서버(130)로 서비스 허가 요청 메시지(Service Permission Request message)를 전송(S604)하게 된다.
만약, 상기 제어 디바이스(120)의 사용자가 미성년자일 경우 상기 허가 서버(130)의 허가 테이블에 등록된 상기 해당 제어 디바이스(120)의 허가 정보는 성인물에 대한 제공 금지로 설정되는 것이 바람직하다. 따라서, 상기 제어 디바이스(120)가 요청한 미디어 콘텐츠가 'Adult.avi'라는 성인용 동영상 파일일 경우, 상 기 허가 서버(130)에서는 상기 홈 서버(100)의 서비스 허가 요청 메시지의 응답으로 서비스 허가 거절 메시지(Service Permission Reject message)를 상기 홈 서버(100)로 전송(S605)하게 된다. 상기 허가 서버(130)로부터 서비스 허가 거절 메시지를 수신한 상기 홈 서버(100)는 상기 해당 제어 디바이스(120)로 거절 메시지(Reject message)를 전송(S606)하게 된다.
한편, 상기 제어 디바이스(120)는 상기 홈 서버(100)로 다른 미디어 콘텐츠를 다시 요청(S607)할 수가 있으며, 이에 따라 상기 홈 서버(100)에서는 상술한 바와 같이 상기 허가 서버(130)로 서비스 허가 요청 메시지(Service Permission Request message)를 전송(S608)하게 된다. 만약, 상기 재요청한 미디어 콘텐츠가 'Princess.mpg'와 같은 미성년자 관람 가능한 동영상 파일이고, 상기 제어 디바이스(120)에 대해 상기 해당 동영상 파일에 대한 제공이 허가된 것으로 판단될 경우, 상기 허가 서버(130)에서는 상기 홈 서버(100)로 해당 서비스 허가 요청에 대한 서비스 허가 허락 메시지(Service Permission Allow message)를 전송(S609)하게 된다. 이에 따라, 상기 허가 서버(130)로부터 상기 서비스 허가 허락 메시지를 수신한 상기 홈 서버(100)는 상기 해당 제어 디바이스(120)로 정상 수신 메시지(Ack message)를 전송(S610)함으로써 상기 제어 디바이스(120)가 요청한 미디어 콘텐츠가 제공 가능함을 알려주게 된다.
이때, 상기 홈 서버(100), 제어 디바이스(120) 및 상기 요청된 미디어 콘텐츠를 제공하는 해당 서비스 디바이스(111 내지 113)간에 매칭되는 프로토콜(protocol), 포트(port) 및 포맷(format)에 대한 선택 절차(S611)가 수행된다. 따 라서, 상기 홈 서버(100)는 상기 제어 디바이스(120)와 상기 서비스 디바이스(111 내지 113)간의 라우팅 테이블 및 브릿징 테이블을 업데이트시키게 된다.
그런 다음, 상기 홈 서버(100)에서는 상기 제어 디바이스(120)로 상기 해당 미디어 콘텐츠(즉, Princess.mpg 파일)에 대한 전송(S612)을 하고, 상기 해당 서비스 디바이스(111 내지 113)로 해당 미디어 콘텐츠(즉, Princess.mpg 파일)에 대한 재생 렌더링(rendering)(S613)을 하게 된다.
마지막으로, 상기 제어 디바이스(120)는 상기 대상 디바이스(111 내지 113)로 상기 해당 미디어 콘텐츠를 전송하여 재생(S614)시킴으로서 모든 서비스 절차가 완료된다.
이하, 도 8 내지 도 12를 참조하여 상술한 제어 디바이스가 홈 네트워크에 접속하여 네트워크 설정을 수행하고, 서비스 요청에 따라 서비스를 제공받게 되는 절차를 보다 상세히 설명한다. 먼저, 도 8 내지 도 10을 참조하여 각 통신 프로토콜에 따른 네트워크 설정 절차들을 설명하고, 도 12를 참조하여 네트워크 설정 완료 후의 서비스 제공 절차를 설명한다.
한편, 본 발명에 따른 홈 서버(100)는 상술한 바와 같이 홈 네트워크에 접속하고자 하는 각 제어 디바이스들(110, 120)에 대해, 상기 제어 디바이스(110, 120)에서 지원하는 프로토콜 방식에 따라 DHCP 및 PPPOE 방식을 모두 제공할 수 있다. 따라서, 상기 각 프로토콜 방식에 따라 도 8 내지 도 10을 참조하여 각각 DHCP 방식, PPPOE 방식 및 자동 IP 설정 방식에 따른 네트워크 설정 절차를 설명하기로 한다.
도 8은 본 발명의 제1 실시예에 따른 디바이스가 DHCP로 접속할 경우의 네트워크 설정 절차를 나타낸 도면이다. 도 8을 참조하면, 먼저 제어 디바이스(110, 120)로부터 홈 서버(100)로 네트워크 설정 요청(S801)이 되면, 상기 제어 디바이스(110, 120)가 전송한 입력 패킷을 통해 DHCP를 발견(S802)하고 상술한 바와 같이 DHCP 프로토콜에 따라 네트워크 설정 처리를 하게 된다.
이때, 도 11a에 도시된 바와 같이 상기 제어 디바이스에 대한 MAC 어드레스(1100)가 'M3', 디바이스 ID(1110)가 'PDA'이며(여기서, 상기 디바이스가 DHCP로 접속할 경우이므로, 사용자 ID(1120)와 패스워드(1130)는 없게 된다.), 하기 <표 3>과 같이 인증 테이블에 등록이 되어 있을 경우(S803), 상기 제어 디바이스를 기존의 홈 디바이스, 즉 레거시 디바이스(110)로 판단(S804)하고, 홈 내의 디바이스 및 외부로의 접속 모두가 가능하게 설정된다.
User ID |
MAC 어드레스 |
디바이스 ID |
IP |
상태 |
Family |
M1 |
PC_A |
I1 |
On |
parents |
M2 |
TV_A |
I2 |
Off |
child
|
M3
|
PDA_A
|
I3
|
On
|
......
|
따라서, 상기 제어 디바이스가 DHCP 방식이므로 DHCP IP가 상술한 IP 풀 데이터베이스(220)로부터 제공(DHCP IP Offer)되고, 상기 DHCP IP의 요청(DHCP IP Request)에 따라 제공(DHCP IP Ack)된 IP가 상기 제어 디바이스, 즉 레거시 디바이스(110)로 할당(S805)됨으로써 네트워크 설정이 성공적으로 완료(Network configuration Success)(S806)된다.
한편, 상기 제어 디바이스에 대한 MAC 어드레스가 'M3'이고 하기 <표 4>와 같이 인증 테이블에 등록이 되어 있지 않을 경우(S803), 상기 제어 디바이스를 외부에서 새롭게 유입된 디바이스, 즉 게스트 디바이스(120)로 판단(S807)하고, 홈 서버(100)로 네트워크 설정 요청(S808)을 하게 된다.
User ID |
MAC 어드레스 |
디바이스 ID |
IP |
상태 |
Family |
M1 |
PC_A |
I1 |
On |
parents |
M2 |
TV_A |
I2 |
Off |
|
|
|
|
|
......
|
이때, 상기 홈 서버(100)는 상기 게스트 디바이스(120)에 대해 상기 <표 4>와 같은 인증 테이블에 등록을 하지 않고, 네트워크 구성만을 제공할 수가 있다.
따라서, 이때에도 상술한 바와 같이 상기 제어 디바이스가 DHCP 방식이므로 DHCP IP가 상술한 IP 풀 데이터베이스(220)로부터 제공(DHCP IP Offer)되고, 상기 DHCP IP의 요청(DHCP IP Request)에 따라 제공(DHCP IP Ack)된 IP가 상기 제어 디바이스, 즉 게스트 디바이스(120)로 할당(S805)됨으로써 네트워크 설정이 성공적으로 완료(Network configuration Success)(S806)된다.
한편, 예컨대, 상기 게스트 디바이스(120)가 단지 DHCP로 동작하기를 원한다면, 이는 인증을 필요로 하지 않는 디바이스이므로 인터넷 정도의 제한된 서비스만 허용하고, 홈 네트워크 내부의 각종 서비스 디바이스들(111 내지 113)에 대해서는 접근이 허용되지 않도록 구현할 수 있다. 또한, 상기 게스트 디바이스(120)에 대해 상기와 같은 인터넷 서비스도 차단하기를 원한다면 브릿징 및 라우팅 테이블을 통해 차단을 할 수가 있게 된다.
도 9는 본 발명의 제2 실시예에 따른 디바이스가 PPPOE로 접속할 경우의 네 트워크 설정 절차를 나타낸 도면이다. 도 9를 참조하면, 먼저 게스트 디바이스(120)로부터 홈 서버(100)로 네트워크 설정 요청(S901)이 되면, 상기 게스트 디바이스(120)가 전송한 입력 패킷을 통해 PPPOE를 발견(S902)하고 상술한 바와 같이 PPPOE 프로토콜에 따라 네트워크 설정 처리를 하게 된다.
이때, 도 11b에 도시된 바와 같이 상기 게스트 디바이스(120)에 대한 MAC 어드레스(1100)가 'M3', 디바이스 ID(1110)가 'PDA', 사용자 ID(1140)가 'Guest2', 패스워드(1150)가 '****(패스워드 보호를 위하여 감춰진 상태로 표시)'이며, 하기 <표 5>와 같이 인증 테이블에 등록이 되어 있을 경우(이때, IP 및 상태 정보는 등록되지 않은 상태이다.)(S903), 추가적인 MAC 어드레스 등록 과정 없이 상기 게스트 디바이스(120)에 대해 상술한 바와 같이 PPPOE 프로토콜에 따라 네트워크 설정 처리를 하게 된다.
User ID |
MAC 어드레스 |
디바이스 ID |
IP |
상태 |
Family |
M1 |
PC_A |
I1 |
On |
parents |
M2 |
TV_A |
I2 |
Off |
Guest2
|
M3
|
PDA_A
|
I3
|
On
|
......
|
즉, 상술한 바와 같이 상기 게스트 디바이스(120)가 PPPOE 방식이므로 PPPOE 데몬이 실행(S905)되어, PPPOE 세션이 실행(S906)되고, PPPOE 프로토콜에 따른 PPPOE 세션 스테이지(즉, 상술한 PPP LCP, IPCP, PAP, CHAP 등)가 수행(S907)된다.
마지막으로, 홈 서버(100)와 상기 게스트 디바이스(120)간의 터널링이 완성되며, 상기 게스트 ID, 사용자 ID에 대한 IP를 상기 <표 5>와 같은 인증 테이블에 등록(S908)함으로써 네트워크 설정이 성공적으로 완료(Network configuration Success)(S909)된다.
한편, 도 11b에 도시된 바와 같이 상기 게스트 디바이스(120)에 대한 MAC 어드레스(1100)가 'M3', 디바이스 ID(1110)가 'PDA', 사용자 ID(1140)가 'Guest2', 패스워드(1150)가 '****(패스워드 보호를 위하여 감춰진 상태로 표시)'이며, 하기 <표 6>과 같이 인증 테이블에 등록이 되어 있지 않을 경우(S903), 추가적인 MAC 어드레스 등록 과정(S904)을 거쳐, 하기 <표 6>을 상기 <표 5>와 같이 테이블 업데이트(table update)(즉, MAC 어드레스를 먼저 등록)한 후에 상기 게스트 디바이스(120)에 대해 상술한 바와 동일하게 PPPOE 프로토콜에 따라 네트워크 설정 처리를 하게 된다.
User ID |
MAC 어드레스 |
디바이스 ID |
IP |
상태 |
Family |
M1 |
PC_A |
I1 |
On |
parents |
M2 |
TV_A |
I2 |
Off |
|
|
|
|
|
......
|
따라서, 이때에도 상술한 바와 같이 상기 게스트 디바이스(120)가 PPPOE 방식이므로 PPPOE 데몬이 실행(S905)되어, PPPOE 세션이 실행(S906)되고, PPPOE 프로토콜에 따른 PPPOE 세션 스테이지(즉, 상술한 PPP LCP, IPCP, PAP, CHAP 등)가 수행(S907)된다.
마지막으로, 홈 서버(100)와 상기 게스트 디바이스(120)간의 터널링이 완성되며, 상기 게스트 ID, 사용자 ID에 대한 IP를 상기 <표 5>와 같은 인증 테이블에 등록(S908)함으로써 네트워크 설정이 성공적으로 완료(Network configuration Success)(S909)된다.
도 10은 본 발명의 제3 실시예에 따른 디바이스가 자동 IP로 접속할 경우의 네트워크 설정 절차를 나타낸 도면이다. 도 10을 참조하면, 먼저 제어 디바이스(110, 120)로부터 홈 서버(100)로 네트워크 설정 요청(S1001)이 되고, 상기 제어 디바이스(110, 120)가 자동 IP 설정 디바이스(Auto IP device)인 경우 후술하는 MAC 어드레스 확인(S1003) 및 PPPOE 클라이언트 모듈 존재 여부 확인(S1005)에 따라 네트워크 설정 절차를 수행하게 된다.
이때, 도 11b에 도시된 바와 같이 상기 제어 디바이스(110, 120)에 대한 MAC 어드레스(1100)가 'M3', 디바이스 ID(1110)가 'PDA', 사용자 ID(1140)가 'Guest2', 패스워드(1150)가 '****(패스워드 보호를 위하여 감춰진 상태로 표시)'이며, 하기 <표 7>과 같이 인증 테이블에 등록이 되어 있을 경우(이때, IP 및 상태 정보는 등록되지 않은 상태이다.)(S1003), 상기 제어 디바이스(110, 120)를 레거시 디바이스(110)로 판단하고, 추가적인 PPPOE 처리 과정 없이 상기 레거시 디바이스(110)에 대한 네트워크 설정 처리(S1011)를 하게 된다.
User ID |
MAC 어드레스 |
디바이스 ID |
IP |
상태 |
Family |
M1 |
PC_A |
I1 |
On |
parents |
M2 |
TV_A |
I2 |
Off |
Guest2
|
M3
|
PDA_A
|
I3
|
On
|
......
|
한편, 도 11b에 도시된 바와 같이 상기 제어 디바이스(110, 120)에 대한 MAC 어드레스(1100)가 'M3', 디바이스 ID(1110)가 'PDA', 사용자 ID(1140)가 'Guest2', 패스워드(1150)가 '****(패스워드 보호를 위하여 감춰진 상태로 표시)'이며, 하기 <표 8>과 같이 인증 테이블에 등록이 되어 있지 않을 경우(S1003), 상기 제어 디바 이스(110, 120)를 게스트 디바이스(120)로 인식(S1004)하고, 상기 게스트 디바이스(120)에 PPPOE 클라이언트 모듈(PPPOE Client Module)이 존재하는지 확인(S1005)하게 된다.
User ID |
MAC 어드레스 |
디바이스 ID |
IP |
상태 |
Family |
M1 |
PC_A |
I1 |
On |
parents |
M2 |
TV_A |
I2 |
Off |
|
|
|
|
|
......
|
만약, 상기 확인 결과 상기 게스트 디바이스(120)에 PPPOE 클라이언트 모듈이 존재할 경우, PPPOE 데몬이 실행(S1008)되어, PPPOE 세션이 실행(S1009)되고, PPPOE 프로토콜에 따른 PPPOE 세션 스테이지(즉, 상술한 PPP LCP, IPCP, PAP, CHAP 등)가 수행(S1010)된다.
마지막으로, 홈 서버(100)와 상기 게스트 디바이스(120)간의 터널링이 완성되며, 상기 게스트 디바이스(120)의 MAC 어드레스, 사용자 ID 및 할당된 IP 어드레스 등을 상기 <표 7>과 같이 인증 테이블에 등록함으로써 상기 <표 8>을 상기 <표 7>과 같이 테이블 업데이트(table update)하게 된다. 이렇게 함으로써 상기 게스트 디바이스(120)에 대한 네트워크 설정이 성공적으로 완료(Network configuration Success)(S1011)된다.
한편, 상기 확인 결과 상기 게스트 디바이스(120)에 PPPOE 클라이언트 모듈이 존재하지 않을 경우, 먼저 상기 게스트 디바이스(120)에 PPPOE 클라이언트 모듈을 생성시킨 후, 상술한 바와 같은 PPPOE에 의한 네트워크 설정 절차를 수행하게 된다. 이때, 상기 게스트 디바이스(120)에 대한 PPPOE 클라이언트 모듈 생성 방법 으로는 상기 호스트 서버(100)에서 상기 게스트 디바이스(120)로 PPPOE 클라이언트 모듈 생성을 위한 PPPOE 클라이언트 파일(예컨대, PPPOE 클라이언트 바이너리 파일(PPPOE Client Binary file))을 전송(S1006)한다. 이때, 상기 전송은 자바 가상 머신(Java Virtual Machine; JVM)을 통해 구현 가능하다. 상기 PPPOE 클라이언트 생성을 위한 파일을 수신한 상기 게스트 디바이스(120)는 상기 수신된 파일을 실행하여 PPPOE 클라이언트 모듈을 생성(S1007)하게 된다.
상기와 같이 게스트 디바이스(120)에 PPPOE 클라이언트 모듈이 생성되면, 상기 게스트 디바이스(120)에 대하여 PPPOE에 의한 네트워크 설정 절차가 정상적으로 수행될 수 있게 된다.
즉 PPPOE 데몬이 실행(S1008)되어, PPPOE 세션이 실행(S1009)되고, PPPOE 프로토콜에 따른 PPPOE 세션 스테이지(즉, 상술한 PPP LCP, IPCP, PAP, CHAP 등)가 수행(S1010)된다.
마지막으로, 홈 서버(100)와 상기 게스트 디바이스(120)간의 터널링이 완성되며, 상기 게스트 디바이스(120)의 MAC 어드레스, 사용자 ID 및 할당된 IP 어드레스 등을 상기 <표 7>과 같이 인증 테이블에 등록함으로써 상기 <표 8>을 상기 <표 7>과 같이 테이블 업데이트(table update)하게 된다. 이렇게 함으로써 상기 게스트 디바이스(120)에 대한 네트워크 설정이 성공적으로 완료(Network configuration Success)(S1011)된다.
이상으로 본 발명에 따라 각 제어 디바이스(110, 120)의 통신 프로토콜 형식에 따라 상기 각 제어 디바이스(110, 120)가 홈 서버(100)를 통해 네트워크를 설정 하는 절차를 각 실시예별로 설명하였다. 이하, 도 12를 참조하여 상기 제어 디바이스(110, 120)에 대한 네트워크 설정 후 서비스가 제공되는 절차를 설명한다.
도 12는 본 발명의 실시예에 다른 네트워크 설정 후 디바이스별 서비스 제공 절차를 나타낸 흐름도이다. 도 12를 참조하면, 상술한 바와 같이 네트워크 설정이 완료(S1201)되면, 게스트 디바이스(120)에 대한 인증이 완료됨에 따라 상기 게스트 디바이스(120)의 등록(register) 절차가 진행(S1202)된다.
한편, 상기와 같은 서비스 허가에 대한 등록 메시지는 다음과 같은 XML(eXtensible Markup Language) 문서로 작성될 수 있다.
<?xml version="1.0" ?>
<!DOCTYPE AAA SYSTEM "AAA.DTD" >
<AAA>
<ServicePermission>
<MessageType>Register</MessageType>
<ServiceInfo>
<activated ServiceType = ""/>
<activated Servicenumber = ""/>
<activated ServiceName = ""/>
</ServiceInfor>
<GuestDeviceInfo>
<guestdeviceIdentity name="PDA_1"
publicKeyToken="4c4996039ede" />
</GuestDeviceInfo>
<UserInfo>
<User name="Guest2"/>
</UserInfo>
<ResultInfo>
<Result ="none"/>
</ResultInfo>
</Register>
</ServicePermission>
</AAA>
상기 문서에서 publicKeyToken="4c4996039ede"는 해당 제어 디바이스(110, 120)의 MAC 어드레스를 나타내며, <UserInfo>는 사용자 ID를 의미한다.
이에 따라, 상기 게스트 디바이스(120)에 대한 허가 정보가 상술한 허가 서버(130)내에 포함된 장치 및 허가 목록 데이터베이스(131)의 허가 테이블에 등록(S1203)된다. 예컨대, 상기 등록되는 게스트 디바이스(120)의 ID가 'Guest2', MAC 어드레스가 'M3'이며, 상기 게스트 다바이스(120)의 사용자가 미성년자일 경우에는 하기 <표 9>와 같이 등록시킬 수가 있다.
ID |
MAC 어드레스 |
허가 정보 |
Guest 1 |
M1 |
All permitted |
Guest 2
|
M3
|
Just image & movie & Internet & not adult
|
Guest 3 |
M5 |
Just device |
Guest 4 |
M6 |
Just Internet |
상기 허가 테이블의 등록이 완료된 후, 상기 게스트 디바이스(120)가 홈 서버(100)를 통해 서비스 요청(S1204)을 하게 되면, 상기 등록된 허가 테이블의 허가 정보를 확인하고, 서비스의 허가 여부를 판단하게 된다. 이때, 서비스가 허락(S1205)될 경우에는 해당 요청된 서비스를 제공(S1206)하게 되지만, 서비스가 허락되지 않을 경우에는 해당 서비스를 제공하지 않고(S1207), 서비스 거절 메시지를 전송하게 된다.
이때, 상기 서비스 요청 메시지는 다음의 XML 문서로 작성될 수 있다.
<?xml version="1.0" ?>
<!DOCTYPE AAA SYSTEM "BBB.DTD" >
<BBB>
<ServicePermission>
<MessageType>Request</MessageType>
<ServiceInfo>
<activated ServiceType = "ServiceMovie"/>
<activated ServiceName = "Movie_Adult.mpg"/>
<activated ServiceNumber = "8"/>
</ServiceInfor>
<GuestDeviceInfo>
<guestdeviceIdentity name="PDA_1"
publicKeyToken="4c4996039ede" />
</GuestDeviceInfo>
<UserInfo>
<User name="Guest2"/>
</UserInfo>
<ResultInfo>
<Result ="None"/>
</ResultInfo>
</Register>
</ServicePermission>
</BBB>
상기 문서에서 <activated ServiceName = "Movie_Adult.mpg"/> 해당 제어 디바이스(110, 120)가 요청하는 서비스 콘텐츠를 나타내며, <activated ServiceNumber = "8"/>은 요청한 서비스의 번호를 나타낸다.
또한, 상기 서비스 요청에 따른 허가 메시지는 다음의 XML 문서로 작성될 수 있다.
<?xml version="1.0" ?>
<!DOCTYPE BBB SYSTEM "CCC.DTD" >
<CCC>
<ServicePermission>
<MessageType>Request</MessageType>
<ServiceInfo>
<activated ServiceType = "ServiceMovie"/>
<activated ServiceName = "Movie_Adult.mpg"/>
<activated ServcieNumber = "8"/>
</ServiceInfor>
<GuestDeviceInfo>
<guestdeviceIdentity name="PDA_1"
publicKeyToken="4c4996039ede" />
</GuestDeviceInfo>
<UserInfo>
<User name="Guest2"/>
</UserInfo>
<ResultInfo>
<Result ="Allow"/>
</ResultInfo>
</Register>
</ServicePermission>
</CCC>
상기 문서에서 <Result ="Allow"/> 부분이 서비스 요청에 따른 허가가 승낙되었음을 나타낸다.
한편, 상기 요청된 서비스가 종료(S1208)되었을 경우, 상기 게스트 디바이스(120)가 PPPOE 방식일 경우에는 PPPOE 데몬을 해제하고 종료시키게 되며, 상기 게스트 디바이스(120)가 DHCP 방식일 경우에는 DHCP 데몬을 해제하고 종료(S1209)시키게 된다.
이상으로 본 발명의 실시예에 따른 제어 디바이스(120)의 홈 서버(100)를 통한 홈 네트워크에서의 네트워크 접속 및 서비스 제공 절차를 설명하였다. 이하, 도 13 및 도 14를 참조하여 상기 홈 서버(100)의 실제 하드웨어 또는 소프트웨어 상에서의 실제 구현 예를 설명하기로 한다.
도 13은 본 발명의 실시예에 따른 홈 서버의 실제 구현 예를 나타낸 도면이다. 도 13을 참조하면, 본 발명의 실시예에 따른 홈 서버(100)는 상술한 바와 같이 장치 및 허가 목록 데이터베이스(131)를 포함하는 허가 서버(130)와 연결되거나, 상기 허가 서버(130)를 포함하여 구성할 수 있다.
한편, 상기 홈 서버(100)는 본 발명에 따라 PPPOE 서버 기능 및 DHCP 서버 기능을 동시에 수행하기 위하여 종래의 홈 서버(100) 구성에서 PPPOE 어플리케이션(1330) 및 DHCP 어플리케이션(1340)을 동시에 포함하는 구성을 가지게 된다.
또한, 상기 홈 서버(100)와 상기 허가 서버(130) 또는 제어 디바이스(110, 120) 간에 본 발명에 따른 허가 및 서비스 요청 메시지 송수신을 위하여 소정의 XML(eXtensible Markup Language) 문서를 생성하는 XML 파서/생성기(XML Parser/Generator; 1300)를 더 포함하게 된다.
아울러 상술한 바와 같이 해당 제어 디바이스(110, 120)가 PPPOE 형식의 패킷인지 DHCP 형식의 패킷인지를 판별하고, 각 형식에 따른 처리를 수행하기 위하여 이더넷 타입 검사 및 MAC 주소 매핑 태스크(Ethernet type check & MAC address mapping Task; 1320)를 포함하게 된다. 또한, 상기 제어 디바이스(110, 120)의 인증을 위하여 서비스 및 장치 목록 데이터베이스(Service & device list DBs; 1310)을 더 포함하게 된다.
도 14는 본 발명의 실시예에 따라 홈 서버 장치를 구현한 세부 기능 블럭들을 나타낸 도면이다. 즉, 상기 도 13에서의 홈 서버(100)를 디바이스 상세 기능(Device Specific function)에 따라 상기 도 14와 같이 세부 기능 블록으로 나타낼 수 있다.
따라서, 상기 도 14를 참조하면 본 발명의 실시예에 따른 기능 수행을 위하여 일반적인 홈 서버(100)의 각종 디바이스들에 UPnP(1400), 디바이스 목록 DB(1312), 서비스 목록 DB(1311), XML 파서/생성기(1300), PPP(1410), PPPOE 서버(1420), DHCP 서버(1430), 이더넷 헤더 타입 검사 모듈(1321) 및 MAC 주소 매핑 모듈(1322) 등을 더 포함하게 된다.