※ 충남대학교 컴퓨터공학과 분산 이동컴퓨팅 연구실에서 개발한 CNU SyncML Server 3.1 에 관한 내용을 기술한 곳입니다.

CNU SyncML Server 3.1 버전의 구조

다음 그림은 CNU SyncML Server 3.1의 구조이다. 서버 버전 3.0과 유사한 구조이며, 세션 정보를 데이터베이스가 아닌 메모리 테이블로 관리한다는 점이 다르다.


CNU SyncML Server 3.1 버전의 특징

메모리에서 세션 정보 관리
Session Manager가 데몬 형태의 독립적 프로세스로 구현
그 외의 모든 프레임이 DLL 기반
각 커맨드 단위 처리(인터프리터 방식)
Oracle8i DB

Session Manager

SyncML 서버의 구조가 DLL 기반이므로 클라이언트로부터 요청된 메시지를 기반으로 활성화되어 동작되고 소멸되기 때문에 세션이 종료되면 해당 클라이언트에 대한 상태정보를 유지할 수 없다. 따라서 동기화가 시작되고 해당 동기화가 종료될 때까지 특정 클라이언트에 대한 세션 정보를 관리하는 Session Manager 프로세스를 구현하였다. 이 프로세스에서는 특정 사용자의 장치에 대하여 세션을 등록하고, 해제하고, 해당 장치에 대하여 서버가 처리한 커맨드와 Status 커맨드, Results 커맨드에 대한 처리 내역 등 세션 관리에 관한 모든 내용을 관리하는 기능을 가진다. Session Manager는 독립적으로 실행되는 프로세스로서 각 세션 정보를 메인 메모리 내에 연결 리스트 구조로 관리하며, RPC(Remote Procedure Call)을 통해서 SyncML 서버와 통신한다.

서버와 세션 매니저간 통신