KR100597586B1 - Data Synchronization method using Session Management - Google Patents

Data Synchronization method using Session Management Download PDF

Info

Publication number
KR100597586B1
KR100597586B1 KR1020040103766A KR20040103766A KR100597586B1 KR 100597586 B1 KR100597586 B1 KR 100597586B1 KR 1020040103766 A KR1020040103766 A KR 1020040103766A KR 20040103766 A KR20040103766 A KR 20040103766A KR 100597586 B1 KR100597586 B1 KR 100597586B1
Authority
KR
South Korea
Prior art keywords
session
synchronization
information
data
data synchronization
Prior art date
Application number
KR1020040103766A
Other languages
Korean (ko)
Other versions
KR20060065054A (en
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 KR1020040103766A priority Critical patent/KR100597586B1/en
Publication of KR20060065054A publication Critical patent/KR20060065054A/en
Application granted granted Critical
Publication of KR100597586B1 publication Critical patent/KR100597586B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야1. TECHNICAL FIELD OF THE INVENTION

본 발명은 세션 관리 기능을 이용한 데이터 동기화 방법에 관한 것임.The present invention relates to a data synchronization method using a session management function.

2. 발명이 해결하려고 하는 기술적 과제2. The technical problem to be solved by the invention

본 발명은 사용자가 사용하는 다수의 단말, 또는 원격지에 위치한 다수의 데이터가, 중앙에 위치한 데이터 동기화 서버와 최신의 정보로 데이터를 동기화하기 위하여, 세션 관리부를 정의하고 이를 통하여 동기화 처리하며, 동기화 기능별로 프레임화된 설계 기법을 적용하여 새로운 서비스 추가시 시스템에 종속적인 프레임만을 변경하여 처리가 가능하도록 하기 위한 세션 관리 기능을 이용한 데이터 동기화 방법을 제공하는데 그 목적이 있음.The present invention defines a session manager to synchronize a plurality of terminals used by a user, or a plurality of data located at a remote location with the latest information and the central data synchronization server, and through this process, the synchronization process, and by synchronization function The purpose of this paper is to provide a data synchronization method using session management function to enable processing by changing only frames dependent on the system when applying a new framed design technique.

3. 발명의 해결방법의 요지3. Summary of Solution to Invention

본 발명은, 데이터 동기화 시스템에 적용되는 세션 관리 기능을 이용한 데이터 동기화 방법에 있어서, 사용자로부터의 데이터 동기화 요청에 따라, 데이터 동기화 서버를 통해 인증 및 앵커값을 확인하는 확인단계; 상기 확인 결과에 따라, 정상적인 동기화 요청일 경우 동기 에이젼트가 메시지 처리를 시작하면서 세션 관리부로 새로운 세션 생성을 요구하는 세션 생성 요구단계; 상기 세션 관리부를 통해 세션정보를 생성하고, 생성된 세션값을 상기 동기 에이젼트로 반환하는 세션값 반환단계; 및 상기 반환된 세션값을 이용하여 동기화 명령을 처리하고, 명령 처리 결과를 저장 및 관리하는 동기화 명령 처리단계를 포함한다.According to an aspect of the present invention, there is provided a data synchronization method using a session management function applied to a data synchronization system, the method comprising: checking an authentication and anchor value through a data synchronization server according to a data synchronization request from a user; A session creation request step of requesting a new session creation to the session manager while the synchronization agent starts processing a message according to the confirmation result; A session value returning step of generating session information through the session manager and returning the generated session value to the synchronous agent; And a synchronization command processing step of processing the synchronization command using the returned session value, and storing and managing the command processing result.

4. 발명의 중요한 용도4. Important uses of the invention

본 발명은 데이터 동기화 시스템 등에 이용됨.The present invention is used for data synchronization system and the like.

데이터, 동기화, 세션 관리, 동기 에이전트, 세션정보, 명령, 세션생성Data, synchronization, session management, synchronization agent, session information, command, session creation

Description

세션 관리 기능을 이용한 데이터 동기화 방법{Data Synchronization method using Session Management} Data Synchronization method using Session Management}             

도 1 은 본 발명이 적용되는 인터넷 서비스 시스템의 종단에 위치한 데이터 동기화 시스템의 구성예시도,1 is an exemplary configuration diagram of a data synchronization system located at an end of an Internet service system to which the present invention is applied;

도 2 는 본 발명에 따른 데이터 동기화 시스템의 프레임 구조를 나타낸 일실시예 설명도, 2 is a diagram illustrating an embodiment of a frame structure of a data synchronization system according to the present invention;

도 3 은 본 발명이 적용되는 세션 관리 기능을 이용한 데이터 동기화 시스템의 구성예시도,3 is an exemplary configuration diagram of a data synchronization system using a session management function to which the present invention is applied;

도 4 는 본 발명에 따른 세션 관리부가 관리해야 하는 세션 정보 구조를 나타낸 일실시예 설명도, 4 is a diagram illustrating an example of a session information structure that a session manager needs to manage according to the present invention;

도 5 는 본 발명에 따른 세션 관리 기능을 이용한 데이터 동기화 방법에 대한 일실시예 흐름도이다.5 is a flowchart illustrating a data synchronization method using a session management function according to the present invention.

* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

11 : 데이터 동기화 시스템 21 : 서버 응용프로그램11: data synchronization system 21: server applications

22 : 서버 어댑터 23 : 동기 에이전트22: server adapter 23: synchronous agent

24 : 동기 엔진 25 : 세션 관리부24: sync engine 25: session management unit

26 : 개방 데이터베이스 어댑터 27 : 동기화 도구 어댑터26: Open Database Adapter 27: Synchronization Tool Adapter

28 : 통신어댑터 29 : 세션정보 데이터베이스28: communication adapter 29: session information database

본 발명은 세션 관리 기능을 이용한 데이터 동기화 방법에 관한 것으로, 더욱 상세하게는 다수의 사용자 단말, 또는 원격지에 위치한 다수의 데이터가, 중앙에 위치한 세션 관리부 기반 데이터 동기화 서버와 접속하여 최신의 정보로 데이터를 동기화하기 위한 세션 관리자를 이용한 데이터 동기화 방법에 관한 것이다. The present invention relates to a data synchronization method using a session management function, and more particularly, a plurality of user terminals or a plurality of data located at a remote location are connected to a centrally located session management unit based data synchronization server and updated with the latest information. It relates to a data synchronization method using a session manager for synchronizing.

기존에 사용하는 기술은 단일 장치와 단일 동기화 서버간의 자사 고유의 동기화 기능과 프로토콜을 이용하여 데이터 동기를 처리하고 있으며, 이기종 시스템간이나 서로 다른 응용 서비스 간에 동기화 프로그램의 호환성이 결여되었다. The existing technology handles data synchronization using its own synchronization function and protocol between a single device and a single synchronization server, and lacks the compatibility of the synchronization program between heterogeneous systems or different application services.

또한, 다수의 단말 장치로부터의 다양한 동기화 요구를 서버에 반영하기가 매우 복잡한 문제점이 있었다.In addition, there is a problem that it is very complicated to reflect various synchronization requests from a plurality of terminal devices to the server.

참고적으로, 데이터 동기화 방법에 대해 보다 상세히 설명하면 다음과 같다.For reference, the data synchronization method will be described in more detail as follows.

우선, 데이터 동기화와 관련하여 "플랫폼 독립적인 소프트웨어 자동 검색/배포/설치 장치 및 그 방법"(대한민국 특허공개번호 "10-2003-0037123", 2003.05.12 공개)을 살펴보면 다음과 같다.First, with regard to data synchronization, a "platform independent software automatic search / distribution / installation apparatus and method thereof" (Republic of Korea Patent Publication No. "10-2003-0037123", 2003.05.12 publication) is as follows.

이 선행 특허는 이동 기기에 응용 소프트웨어를 자동 검색/배포/설치하는 기술에 관한 것으로, 특히 다양한 이동 기기(Mobile Device), 서로 다른 운영체제, 그리고 다양한 응용 소프트웨어 다운로딩 사이트에 범용적으로 적용이 가능한 소프트웨어 자동 검색/배포/설치 및 그 방법에 관한 것이다.This prior patent relates to a technology for automatically searching / distributing / installing application software on a mobile device, and in particular, software that can be universally applied to various mobile devices, different operating systems, and various application software downloading sites. Automatic discovery / deployment / installation and methods thereof.

현재, PDA(Personal Digital Assistant), HPC(Handheld Personal Computer)와 같은 이동 기기용 응용 소프트웨어가 대부분 전용 웹사이트를 통해 게시되며, 사용자들은 지속적으로 웹 정보를 모니터링하여 원하는 소프트웨어를 자신의 데스크탑에 다운로딩하고, 사용자는 데스크탑과 이동 기기간 물리적 연결을 설정한 후, 데스크탑으로부터 응용 소프트웨어 설치를 이용하여 해당 응용 소프트웨어를 이동 기기에 탑재해야하는 문제점들을 가지고 있다. Currently, most mobile application software, such as personal digital assistants (PDAs) and handheld personal computers (HPCs), are published through dedicated websites, and users constantly monitor web information to download the software they want to their desktops. In addition, after the user establishes a physical connection between the desktop and the mobile device, the user has to install the application software on the mobile device by using the application software installation from the desktop.

상기와 같은 응용 소프트웨어 탑재 방법은 이동 기기의 다양한 사용자 계층을 고려해 볼 때, 컴퓨터에 익숙하지 않은 사용자들 뿐만 아니라, 컴퓨터에 익숙한 사용자들도 새로운 소프트웨어를 계속해서 모니터링 해야하는 문제점들이 있다. 상기와 같이 사용자들의 개입없이, 웹사이트에서 소프트웨어들을 자동으로 검색하여 자동으로 배포하는 장치가 필요하다.In the application software mounting method described above, in consideration of various user layers of a mobile device, not only users who are not familiar with computers but also users who are familiar with computers have problems of continuously monitoring new software. As described above, there is a need for an apparatus for automatically searching for and automatically distributing software on a website without user intervention.

따라서, 상기 특허에 따른 소프트웨어 자동 설치 에이전트는 PDA 내부의 통신 플랫폼을 사용하여 접속된 통신망을 통해 PDA용 응용 소프트웨어가 게시되어 있는 웹 서버내의 웹 문서의 업데이트 정보를 소정 간격마다 모니터 및 분석하는 웹 정보 관리부, PDA 사용자의 기호 정보를 저장하고 관리하는 사용자 기호 관리부, 상기 웹 정보 관리부로부터 웹 서버 상에 새로운 정보가 있음을 통지 받으면 소프트웨어 인스톨 관리부에 인스톨 지시를 하는 통신 관리부 및 상기 통신 관리부로부터 지시에 따라 상기 웹 서버 상에 게시된 새로운 소프트웨어를 다운로드받아 PDA에 인스톨시키는 소프트웨어 인스톨 관리부를 구비하여 컴퓨터에 익숙하지 않는 일반 사용자라도 쉽게 최신의 PDA 전용 응용 프로그램을 자신의 단말에서 이용할 수 있도록 하고, 계속적인 웹 모니터링, 소프트웨어 정보 검색을 위한 사용자의 부가 노력을 덜어주는 효과를 가져오며, 또한 웹 검색 시간 간격, 다운 로드할 소프트웨어 종류, 즉 사용자의 기호 등을 미리 입력해두고, 이와 웹 정보를 스스로 비교하여 서비스 프로세싱에 응용함으로써 보다 자율적인 서비스 구현이 가능하다.Therefore, the automatic software installation agent according to the patent is a web information for monitoring and analyzing the update information of the web document in the web server in which the application software for the PDA is published through the communication network connected using the communication platform inside the PDA at predetermined intervals. A management unit, a user symbol manager that stores and manages preference information of the PDA user, a communication manager which instructs the software installation manager to install when the web information manager is informed that there is new information, and according to the instructions from the communication manager. It is equipped with a software installation management unit that downloads new software posted on the web server and installs it on a PDA so that ordinary users who are not familiar with computers can easily use the latest PDA-specific applications on their terminals. This reduces the user's additional efforts for monitoring and retrieving software information. Also, the web search time interval, the type of software to be downloaded, such as the user's preference, are entered in advance. Application to processing enables more autonomous service implementation.

그러나, 상기 선행 특허는 단말통신 및 웹 분석 등 주요 기능에 표준안을 적용하지 않고, 특정 웹사이트에 의존적으로 소프트웨어를 검색하여 설치 작업을 하는 것이기 때문에, 다양한 이동 기기(Mobile Device), 서로 다른 운영체제, 그리고 다양한 응용 소프트웨어 다운로딩 사이트에 범용 적으로 적용이 불가능하다는 문제점이 있다.However, since the preceding patent does not apply the standard to the main functions such as terminal communication and web analysis, and searches and installs software depending on a specific website, various mobile devices, different operating systems, In addition, there is a problem that it is not universally applicable to various application software downloading sites.

한편, 데이터 동기화를 수행하는 다른 방법과 관련하여 "인터넷을 통하여 개인 휴대 단말기를 관리하기 위한 방법 및 시스템"(대한민국 특허공개번호 "10-2003-0047962", 2003.06.18 공개)을 살펴보면 다음과 같다.On the other hand, with regard to other methods of performing data synchronization, look at the "method and system for managing a personal portable terminal through the Internet" (Republic of Korea Patent Publication No. "10-2003-0047962", published on June 18, 2003) .

이동 기기에 응용 소프트웨어를 자동 검색/배포/설치하는 기술에 관한 것으로, 사용자들이 지속적으로 웹 정보를 모니터링하는 단계, 원하는 소프트웨어를 자신의 데스크탑에 다운로딩하는 단계, 데스크탑과 이동 기기간 물리적 연결을 설정 하는 단계, 데스크탑으로부터 응용 소프트웨어 설치를 이용하여 해당 응용 소프트웨어를 이동 기기에 탑재하는 단계로 구성된다.A technology that automatically discovers / distributes / installs application software on mobile devices, which includes the steps of continuously monitoring web information, downloading desired software to their desktops, and establishing a physical connection between the desktop and the mobile device. And mounting the application software to the mobile device using application software installation from the desktop.

그러나, 상기 선행 특허는, 다양한 이동 기기(Mobile Device), 서로 다른 운영체제, 그리고 다양한 응용 소프트웨어 다운로딩 사이트에 범용적으로 적용이 가능할 뿐, 사용자가 사용하는 다수의 단말, 또는 원격지에 위치한 다수의 데이터가, 중앙에 위치한 데이터 동기화 서버와 접속하여 최신의 정보로 데이터를 동기화를 빠른 시간에 효율적으로 처리하는 기능을 수행하지는 못한다.However, the preceding patent is not only universally applicable to various mobile devices, different operating systems, and various application software downloading sites, but also a plurality of terminals used by a user, or a plurality of remotely located data. A, it does not function to efficiently synchronize data with the latest information by connecting to a centrally located data synchronization server.

따라서, 데이터 동기화 프로토콜(SyncML 프로토콜)에 기반을 둔 데이터 동기화 시스템에 적용되는 것으로 세션관리자를 이용하여 사용자가 사용하는 다수의 단말내의 데이터와 데이터 동기화 서버간의 데이터를 최신의 정보로 동기화하기 위한 방안이 필수적으로 요구된다.Accordingly, a method for synchronizing data between a plurality of terminals used by a user and a data synchronization server using a session manager with the latest information is applied to a data synchronization system based on a data synchronization protocol (SyncML protocol). It is required.

본 발명은 상기한 바와 같은 요구에 부응하기 위하여 제안된 것으로, 사용자가 사용하는 다수의 단말, 또는 원격지에 위치한 다수의 데이터가, 중앙에 위치한 데이터 동기화 서버와 최신의 정보로 데이터를 동기화하기 위하여, 세션 관리부를 정의하고 이를 통하여 동기화 처리하며, 동기화 기능별로 프레임화된 설계 기법을 적용하여 새로운 서비스 추가시 시스템에 종속적인 프레임만을 변경하여 처리가 가능하도록 하기 위한 세션 관리 기능을 이용한 데이터 동기화 방법을 제공하는데 그 목적이 있다. The present invention has been proposed to meet the above requirements, in order for a plurality of terminals used by a user or a plurality of remotely located data to synchronize data with a centrally located data synchronization server with the latest information, Provides data synchronization method using session management function to define and manage session management unit and synchronize through it, and apply frame designing method by synchronization function to process by changing only frame dependent on system when adding new service. Its purpose is to.                         

본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
Other objects and advantages of the present invention can be understood by the following description, and will be more clearly understood by the embodiments of the present invention. Also, it will be readily appreciated that the objects and advantages of the present invention may be realized by the means and combinations thereof indicated in the claims.

상기 목적을 달성하기 위한 본 발명의 방법은, 데이터 동기화 시스템에 적용되는 세션 관리 기능을 이용한 데이터 동기화 방법에 있어서, 사용자로부터의 데이터 동기화 요청에 따라, 데이터 동기화 서버를 통해 인증 및 앵커값을 확인하는 확인단계; 상기 확인 결과에 따라, 정상적인 동기화 요청일 경우 동기 에이젼트가 메시지 처리를 시작하면서 세션 관리부로 새로운 세션 생성을 요구하는 세션 생성 요구단계; 상기 세션 관리부를 통해 세션정보를 생성하고, 생성된 세션값을 상기 동기 에이젼트로 반환하는 세션값 반환단계; 및 상기 반환된 세션값을 이용하여 동기화 명령을 처리하고, 명령 처리 결과를 저장 및 관리하는 동기화 명령 처리단계를 포함하여 이루어진 것을 특징으로 한다.The method of the present invention for achieving the above object, in the data synchronization method using the session management function applied to the data synchronization system, in accordance with the data synchronization request from the user, to verify the authentication and anchor value through the data synchronization server Confirmation step; A session creation request step of requesting a new session creation to the session manager while the synchronization agent starts processing a message according to the confirmation result; A session value returning step of generating session information through the session manager and returning the generated session value to the synchronous agent; And a synchronization command processing step of processing the synchronization command using the returned session value, and storing and managing the command processing result.

또한, 본 발명은, 상기 동기화 명령 처리 작업 완료시, 상기 동기 에이젼트로부터의 세션 종료통보 명령에 따라, 상기 세션 관리부가 상기 세션값으로 유지했던 정보를 메모리로부터 삭제하는 정보 삭제단계를 더 포함하여 이루어진 것을 특징으로 한다.The present invention may further include an information deleting step of deleting, from the memory, information held by the session manager at the session value according to a session end notification command from the synchronization agent when the synchronization command processing task is completed. It is characterized by.

상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, whereby those skilled in the art may easily implement the technical idea of the present invention. There will be. In addition, in describing the present invention, when it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1 은 본 발명이 적용되는 인터넷 서비스 시스템의 종단에 위치한 데이터 동기화 시스템의 구성예시도이다.1 is an exemplary configuration diagram of a data synchronization system located at an end of an Internet service system to which the present invention is applied.

도 1에 도시된 바와 같이, 데이터 동기화 시스템(데이터 동기화 서버)(11)은 인터넷 서비스 시스템(12)의 종단에 위치하여, 유선망(13)과 무선망(15)으로 전달되는 사용자 단말(개인 PC, 노트북, PDA, 휴대폰 등)(14,16)내에서 관리되는 주소록이나 일정 등에 대한 동기화를 처리한다.As shown in FIG. 1, the data synchronization system (data synchronization server) 11 is located at the end of the Internet service system 12 and is transmitted to the wired network 13 and the wireless network 15 by a user terminal (personal PC). , Notebooks, PDAs, mobile phones, etc.) 14, 16 to handle the synchronization of the address book or calendar managed in.

도 2 는 본 발명에 따른 데이터 동기화 시스템(데이터 동기화 서버)의 프레임 구조를 나타낸 일실시예 설명도로서, 도면에서 "21"은 서버 응용프로그램, "22"는 서버 어댑터, "23"은 동기 에이전트, "24"는 동기 엔진, "25"는 세션 관리부, "26"은 개방 데이터베이스 어댑터, "27"은 동기화 도구 어댑터, "28"은 통신 어댑터를 각각 나타낸다.FIG. 2 is an exemplary diagram illustrating a frame structure of a data synchronization system (data synchronization server) according to the present invention, in which, "21" is a server application program, "22" is a server adapter, and "23" is a synchronization agent. "24" represents a synchronization engine, "25" represents a session management unit, "26" represents an open database adapter, "27" represents a synchronization tool adapter, and "28" represents a communication adapter.

도 2에 도시된 바와 같이, 서버 응용 프로그램(21)은 서버의 데이터베이스에 접근하여 직접 데이터베이스의 데이터를 변경하거나 서버 내의 정보를 검색하는 등의 작업을 용이하게 하기 위한 GUI(Graphic User Interface)로서 실제 사용자 장치 와의 데이터 동기화를 수행하는 동기 에이젼트(23) 및 동기 엔진(24) 등의 모듈과는 독립적이다.As shown in FIG. 2, the server application 21 is actually a graphical user interface (GUI) for accessing the server's database to directly change data in the database or retrieve information in the server. It is independent of modules such as sync agent 23 and sync engine 24 that perform data synchronization with user devices.

서버 어댑터(22)는 서블릿이 클라이언트로부터 전달받은 동기화 요청 메시지를 JNI(Java Native Interface)를 통해 동기 에이젼트(23)내에 넘겨주게 되는데, 이 때 DLL(Dynamic Link Library)과 서블릿 간의 인터페이스 역할을 해주는 모듈이 바로 서버 어댑터(22)이다. 서버 어댑터(22)와 직접적으로 인터페이싱하는 모듈로는 동기화 도구 어댑터(27)와 동기 에이젼트(23)로 나뉜다.The server adapter 22 passes the synchronization request message received by the servlet from the client into the synchronization agent 23 through the JNI (Java Native Interface). At this time, the module serving as an interface between the DLL and the servlet This is the server adapter 22. Modules that directly interface with the server adapter 22 are divided into a synchronization tool adapter 27 and a synchronization agent 23.

여기서, 동기 에이젼트(23)는 SyncML 프로토콜에 따라서 들어온 동기화 요청 메시지를 처리하며, 동기 엔진(24), 세션 관리부(25), 동기화 도구 어댑터(27), 그리고 개방 데이터베이스 어댑터(26)를 컨트롤하는 프레임이다. Here, the sync agent 23 processes the sync request message according to the SyncML protocol, and controls the sync engine 24, the session manager 25, the sync tool adapter 27, and the open database adapter 26. to be.

동기 엔진(24)은 서비스에 종속적이고 동기화 데이터 아이템을 데이터베이스에 반영하고 데이터 충돌이 발생시 중재하는 등의 역할을 담당하는 프레임이다. 동기 에이젼트(23)가 지시한 데이터 아이템 자체를 서버 내 데이터베이스에 반영하는 작업을 동기 엔진(24)에서 처리한다.The synchronization engine 24 is a frame that is service dependent and plays a role of reflecting synchronization data items in a database, mediating when a data collision occurs, and the like. The sync engine 24 processes a task of reflecting the data item itself indicated by the sync agent 23 to the database in the server.

세션 관리부(25)는 특정 사용자 장치의 디바이스에 대한 서버 세션 정보를 관리하는 프레임이다. 현재 동기화를 진행 중인 세션에 대한 정보를 관리한다.The session manager 25 is a frame that manages server session information for a device of a specific user device. Manages information about the session currently being synchronized.

개방 데이터베이스 어댑터(26)는 다양한 데이터베이스와 연동하기 위한 API(Application Program Interface)들을 지원하는 프레임이다. The open database adapter 26 is a frame supporting APIs (Application Program Interfaces) for interworking with various databases.

동기화 도구 어댑터(27)은 동기 메시지를 파싱하고 생성하는 API들을 지원하는 프레임이다. The synchronization tool adapter 27 is a frame that supports APIs for parsing and generating synchronization messages.

통신 어댑터(28)는 클라이언트와 서버간의 전송 바인딩(Transport Binding)을 지원하는 프레임이다.The communication adapter 28 is a frame that supports transport binding between the client and the server.

도 3 은 본 발명이 적용되는 세션 관리 기능을 이용한 데이터 동기화 시스템(이하, 데이터 동기화 서버라 함)의 구성예시도로서, 세션 관리부(25)의 통신 구조를 나타낸 것이다.3 is an exemplary configuration diagram of a data synchronization system (hereinafter, referred to as a data synchronization server) using a session management function to which the present invention is applied, and illustrates a communication structure of the session management unit 25.

도 3에 도시된 바와 같이, 본 발명이 적용되는 세션 관리 기능을 이용한 데이터 동기화 시스템은, 사용자가 사용하는 다수의 단말 또는 원격지에 위치한 다수의 데이터가, 중앙에 위치한 데이터 동기화 서버와 접속하여 최신의 정보로 데이터를 동기화하기 위하여 세션 관리부에 접속하여 동기화 명령을 수행하고, 동기화 기능별로 프레임화된 설계 기법을 이용하여 새로운 서비스 추가시에도 종속적인 프레임만을 변경하여 처리가 가능하도록 한다.As shown in FIG. 3, in the data synchronization system using the session management function to which the present invention is applied, a plurality of terminals used by a user or a plurality of data located at remote locations are connected to a centrally located data synchronization server. In order to synchronize data with information, access the session manager to perform synchronization commands, and use the design technique framed for each synchronization function to change and process only dependent frames even when adding a new service.

먼저, 세션 유지에 필요한 정보는 세션 정보 데이터베이스(29)에서 관리된다.First, information necessary for session maintenance is managed in the session information database 29.

그리고, 데이터 동기화 서버(11)는 요청 커맨드 처리시에 필요한 경우 세션 관리부(25)를 통하여 세션정보를 얻게 되고, 세션 관리부(25)를 메모리에 상주하는 독립된 프로세스 형태로 정의하여, 한 세션 동안에 데이터베이스 연결을 계속 유지한다. 또한, 사용자의 요청 메시지가 올 때 마다 데이터베이스를 새로 연결해야 하는 방법 보다 메시지 처리에 소요되는 시간을 절약할 수 있다. In addition, the data synchronization server 11 obtains session information through the session manager 25 when necessary in processing a request command, and defines the session manager 25 as an independent process type that resides in memory, thereby allowing a database to be used for one session. Keep the connection. In addition, you can save time processing messages rather than having to reconnect to the database each time a user requests a message.

세션 관리부(25)는 독립된 프로세스로 구성되며, 서버에 데몬(Daemon)처럼 항상 실행된 상태로 되어 있다. 또한, 동기화 수행에 필요한 세션정보를 메모리에 서 직접 관리하게 된다. The session manager 25 is configured as an independent process and is always in a running state as a daemon in the server. In addition, session information required for synchronization is directly managed in memory.

즉, 동기화 서버(10)는 사용자로부터 요청 메시지를 전달받으면 세션 관리부(25)에 새로운 세션을 생성하여 사용자로부터 전달받은 요청 메시지에서 필요한 정보를 등록하고, 데이터 동기화 서버(11)가 사용자에게 보낼 응답 메시지 생성에 필요한 정보들도 관리한다. 사용자와 데이터 동기화 서버(11)간에 동기화 작업에 필요한 데이터는 세션 관리부(25)로부터 얻을 수 있으며, 모든 동기화 작업이 끝날 때 세션 관리부(25)로부터 해당하는 세션정보를 삭제하고, 세션 종료를 수행한다.That is, when the synchronization server 10 receives a request message from the user, the synchronization server 10 creates a new session in the session manager 25 to register necessary information in the request message received from the user, and the data synchronization server 11 sends a response to the user. It also manages the information needed to generate messages. Data necessary for the synchronization task between the user and the data synchronization server 11 can be obtained from the session manager 25, and deletes the corresponding session information from the session manager 25 when all synchronization tasks are completed, and terminates the session. .

한편, 데이터 동기화 서버는, 모듈화된 프레임 구조에서 동기화 프로토콜에 따라 전달된 동기화 요청 메시지를 처리하는 동기 에이젼트(23), 서비스에 종속적이고 동기화 데이터 아이템을 데이터베이스에 반영하고 데이터 충돌 발생시 중재하는 동기 엔진(24), 사용자로부터 전달된 동기화 요구에 대한 세션정보를 관리하는 세션관리부(25), 다중의 데이터베이스와 연동하기 위한 API들을 지원하는 세션정보 데이터베이스와 같은 프레임 구조를 갖는다.On the other hand, the data synchronization server is a synchronization agent 23 for processing a synchronization request message delivered according to the synchronization protocol in a modular frame structure, a synchronization engine that is service dependent and reflects synchronization data items in a database and mediates when a data collision occurs ( 24) has a frame structure such as a session management unit 25 for managing session information on a synchronization request transmitted from a user, and a session information database supporting APIs for interworking with multiple databases.

도 4 는 본 발명에 따른 세션 관리부가 관리해야 하는 세션 정보 구조를 나타낸 일실시예 설명도로서, 세션 관리부가 사용자로부터 전달된 동기화 요구에 대하여 관리해야 하는 세션 정보를 나타낸 것이다.4 is a diagram illustrating an example of a session information structure that a session manager needs to manage according to the present invention. FIG. 4 illustrates session information that a session manager needs to manage for a synchronization request transmitted from a user.

도 4에 도시된 바와 같이, 세션 관리부(25)가 관리하는 해당 세션 정보는 사용자 이름(41), 장치 아이디(ID)(42), 세션 아이디(ID)(43), 인증 타입 정보(44), 상태정보를 나타내는 구조체에 대한 시작 포인터(45), 상태정보를 나타내는 구조체에 대한 끝 포인터, 사용자로부터 전달된 동기화 명령 정보를 나타내는 구조체에 대한 시작 포인터(46), 사용자로부터 전달된 동기화 명령 정보를 나타내는 구조체에 대한 끝 포인터, 동기화 명령 처리 결과 정보를 나타내는 구조체에 대한 시작 포인터(47), 동기화 명령 처리 결과 정보를 나타내는 구조체에 대한 끝 포인터를 포함한다.As shown in FIG. 4, the session information managed by the session manager 25 includes a user name 41, a device ID 42, a session ID 43, and authentication type information 44. The start pointer 45 for the structure indicating the status information, the end pointer for the structure indicating the status information, the start pointer 46 for the structure indicating the synchronization command information transmitted from the user, and the synchronization command information transmitted from the user. And an end pointer to the structure indicating the synchronization instruction processing result information, and an end pointer to the structure indicating the synchronization instruction processing result information.

상기한 바와 같은 구조를 갖는 본 발명에 따른 세션 관리 기능을 이용한 데이터 동기화 방법의 동작 과정을 상세하게 설명하면 다음과 같다.The operation process of the data synchronization method using the session management function according to the present invention having the structure as described above will be described in detail as follows.

도 5 는 본 발명에 따른 세션 관리 기능을 이용한 데이터 동기화 방법에 대한 일실시예 흐름도이다.5 is a flowchart illustrating a data synchronization method using a session management function according to the present invention.

도 5에 도시된 바와 같이, 먼저 데이터 동기화 서버(11)로 사용자의 동기화 요청 메시지가 도착하면(501), 동기화를 시작하기 앞서 인증 및 앵커값을 확인한다. As shown in FIG. 5, when a user's synchronization request message arrives at the data synchronization server 11 (501), the authentication and anchor values are checked before starting synchronization.

확인 결과, 정상적인 동기화 요청 메시지인 경우, 동기 에이젼트(23)가 메시지 처리를 시작하면서 세션 관리부(25)로 새로운 세션 생성을 요구한다(502).As a result of the check, in the case of the normal synchronization request message, the synchronization agent 23 requests the session management unit 25 to create a new session while starting the message processing (502).

이에 따라, 세션 관리부(25)는 세션 생성 후(503), 생성된 세션값(세션 아이디)을 동기 에이젼트(23)로 반환한다(504).Accordingly, after generating the session 503, the session manager 25 returns the generated session value (session ID) to the synchronization agent 23 (504).

이어서, 반환된 세션값을 이용하여 동기화 명령을 처리하고(505), 명령 처리 결과를 저장할 것을 세션 관리부(25)에 요청하면, 세션 관리부(25)는 세션 정보를 저장 및 관리한다(507). 즉, 동기화 작업시 필요한 세션 정보는 세션 인덱스 값을 이용하여 세션 관리부(25)에 요구하여 얻게 된다. Subsequently, the synchronization command is processed using the returned session value (505), and the session manager 25 requests the session manager 25 to store the command processing result, and the session manager 25 stores and manages the session information (507). In other words, session information necessary for the synchronization task is obtained by requesting the session manager 25 using the session index value.

이 후, 모든 동기화 명령 처리 작업이 완료되면(508) 동기 에이젼트(23)는 세션 관리부(25)에게 세션이 종료되었음을 알리고(509), 이를 통보받은 세션 관리부(25)는 종료되는 세션 인덱스 값으로 유지했던 정보를 메모리로부터 삭제한다(510).Thereafter, when all the synchronization command processing tasks are completed (508), the synchronization agent 23 informs the session manager 25 that the session is terminated (509), and the session manager 25 notified of this is set to the session index value. The retained information is deleted from the memory (510).

상기한 바와 같이, 사용자와 동기화 서버간의 연결에 대한 정보를 관리하는 세션 정보를 관리하지 않으며, 상호 개방형 데이터베이스가 아닌 기업형 특수 목적 데이터베이스 구조를 사용하여 기존의 범용 데이터베이스인 오라클 등과 같은 데이터베이스 관리시스템과의 연동이 불가능한 종래 기술과는 달리, 본 발명에 따른 데이터 동기화 방법은 동기화 기능별로 프레임화된 설계 기법을 이용하여 새로운 서비스 추가시 시스템 종속적인 프레임만을 변경하여 처리가 가능하도록 하고, 사용자의 장치와의 동기화 연결 시작부터 종료까지의 정보를 세션으로 관리한다.As described above, session information that manages information about a connection between a user and a synchronization server is not managed, and an enterprise general purpose database structure is used instead of an mutually open database and a database management system such as Oracle is used. Unlike the prior art, which cannot be interlocked, the data synchronization method according to the present invention makes it possible to process by changing only system dependent frames when adding a new service by using a framed design technique for each synchronization function. Manage session information from the start to the end of a synchronization connection.

상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.As described above, the method of the present invention may be implemented as a program and stored in a recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.) in a computer-readable form. Since this process can be easily implemented by those skilled in the art will not be described in more detail.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The present invention described above is capable of various substitutions, modifications, and changes without departing from the technical spirit of the present invention for those skilled in the art to which the present invention pertains. It is not limited by the drawings.

상기와 같은 본 발명은, 동기화 기능별로 프레임화된 설계 기법을 이용하여 새로운 서비스 추가시 시스템 종속적인 프레임만을 변경하여 처리가 가능하도록 하고, 사용자의 장치와의 동기화 연결 시작부터 종료까지의 정보를 세션으로 관리하도록 함으로써, 세션을 관리하는 프레임인 세션 관리부를 정의하여 불필요한 함수 호출과 데이터베이스 연산의 호출을 감소시킬 수 있는 효과가 있다.As described above, the present invention enables the processing by changing only the system-dependent frame when adding a new service using a design technique framed for each synchronization function, and session information from the start to the end of the synchronization connection with the user's device. In this case, the session management unit, which is a frame for managing sessions, is defined to reduce unnecessary function calls and database operation calls.

Claims (5)

데이터 동기화 시스템에 적용되는 세션 관리 기능을 이용한 데이터 동기화 방법에 있어서,In the data synchronization method using a session management function applied to a data synchronization system, 사용자로부터의 데이터 동기화 요청에 따라, 데이터 동기화 서버를 통해 인증 및 앵커값을 확인하는 확인단계;Confirming the authentication and the anchor value through the data synchronization server according to a data synchronization request from the user; 상기 확인 결과에 따라, 정상적인 동기화 요청일 경우 동기 에이젼트가 메시지 처리를 시작하면서 세션 관리부로 새로운 세션 생성을 요구하는 세션 생성 요구단계;A session creation request step of requesting a new session creation to the session manager while the synchronization agent starts processing a message according to the confirmation result; 상기 세션 관리부를 통해 세션정보를 생성하고, 생성된 세션값을 상기 동기 에이젼트로 반환하는 세션값 반환단계; 및A session value returning step of generating session information through the session manager and returning the generated session value to the synchronous agent; And 상기 반환된 세션값을 이용하여 동기화 명령을 처리하고, 명령 처리 결과를 저장 및 관리하는 동기화 명령 처리단계A synchronization command processing step of processing a synchronization command using the returned session value, and storing and managing a command processing result. 를 포함하는 세션 관리 기능을 이용한 데이터 동기화 방법.Data synchronization method using a session management function comprising a. 제 1 항에 있어서,The method of claim 1, 상기 동기화 명령 처리 작업 완료시, 상기 동기 에이젼트로부터의 세션 종료통보 명령에 따라, 상기 세션 관리부가 상기 세션값으로 유지했던 정보를 메모리로부터 삭제하는 정보 삭제단계An information deleting step of deleting, from the memory, information held by the session manager at the session value according to a session end notification command from the synchronization agent upon completion of the synchronization command processing task; 를 더 포함하는 세션 관리 기능을 이용한 데이터 동기화 방법.Data synchronization method using a session management function further comprising. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 데이터 동기화 서버는, The data synchronization server, 모듈화된 프레임 구조에서 동기화 프로토콜에 따라 전달된 동기화 요청 메시지를 처리하는 동기 에이젼트, 서비스에 종속적이고 동기화 데이터 아이템을 데이터베이스에 반영하고 데이터 충돌 발생시 중재하는 동기 엔진, 사용자로부터 전달되는 동기화 요구에 대한 세션정보를 관리하는 세션관리부, 다중의 데이터베이스와 연동하기 위한 API(Application Program Interface)들을 지원하는 세션정보 데이터베이스와 같은 프레임 구조를 포함하는 것을 특징으로 하는 세션 관리 기능을 이용한 데이터 동기화 방법.Synchronization agent that handles synchronization request message delivered according to synchronization protocol in the modular frame structure, synchronization engine dependent on service and reflecting synchronization data items in database and mediating in case of data conflict, session information for synchronization request from user Session management unit for managing the data synchronization method using a session management function, characterized in that it comprises a frame structure, such as a session information database supporting API (Application Program Interface) for interworking with multiple databases. 제 3 항에 있어서, The method of claim 3, wherein 상기 세션 관리부는, The session management unit, 사용자의 세션정보를 상기 세션정보 데이터베이스에서 메모리에 상주하는 독립된 프로레스 구조로 사용자의 요구 세션 동안 관리하는 것을 특징으로 하는 세션 관리 기능을 이용한 데이터 동기화 방법.And managing the session information of the user during the request session of the user in an independent process structure residing in memory in the session information database. 제 4 항에 있어서,The method of claim 4, wherein 상기 세션정보는,The session information, 사용자 이름, 장치 아이디(ID), 세션 아이디(ID), 인증 타입 정보, 상태정보를 나타내는 구조체에 대한 시작 포인터, 상태정보를 나타내는 구조체에 대한 끝 포인터, 사용자로부터 전달된 동기화 명령 정보를 나타내는 구조체에 대한 시작 포인터, 사용자로부터 전달된 동기화 명령 정보를 나타내는 구조체에 대한 끝 포인터, 동기화 명령 처리 결과 정보를 나타내는 구조체에 대한 시작 포인터, 동기화 명령 처리 결과 정보를 나타내는 구조체에 대한 끝 포인터를 포함하는 것을 특징으로 하는 세션 관리 기능을 이용한 데이터 동기화 방법.User name, device ID (ID), session ID (ID), authentication type information, start pointer to structure indicating status information, end pointer to structure indicating status information, structure indicating synchronization command information delivered from user. And a start pointer for the structure indicating the synchronization command processing result information, a start pointer for the structure indicating the synchronization command processing result information, and an end pointer for the structure indicating the synchronization command processing result information. Data synchronization method using session management function.
KR1020040103766A 2004-12-09 2004-12-09 Data Synchronization method using Session Management KR100597586B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040103766A KR100597586B1 (en) 2004-12-09 2004-12-09 Data Synchronization method using Session Management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040103766A KR100597586B1 (en) 2004-12-09 2004-12-09 Data Synchronization method using Session Management

Publications (2)

Publication Number Publication Date
KR20060065054A KR20060065054A (en) 2006-06-14
KR100597586B1 true KR100597586B1 (en) 2006-07-06

Family

ID=37160388

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040103766A KR100597586B1 (en) 2004-12-09 2004-12-09 Data Synchronization method using Session Management

Country Status (1)

Country Link
KR (1) KR100597586B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101171798B1 (en) 2008-09-26 2012-08-13 고려대학교 산학협력단 System and method for electronic payment in electronic commerce, and recording medium used thereto

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100725066B1 (en) * 2005-08-02 2007-06-08 한미아이티 주식회사 A system server for data communication with multiple clients and a data processing method
US7653664B2 (en) * 2006-11-03 2010-01-26 Microsoft Corporation Anchor for database synchronization excluding uncommitted transaction modifications

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030037123A (en) * 2001-11-02 2003-05-12 한국전자통신연구원 Platform Independent Software Automatic Searching/Distribution/Install Apparatus and The method of Searching and Distribution for that apparatus
KR20040007474A (en) * 2001-03-26 2004-01-24 노키아 코포레이션 Application data synchronization in telecommunications system
KR20040010677A (en) * 2001-06-30 2004-01-31 인터내셔널 비지네스 머신즈 코포레이션 System and method for a caching mechanism for a central synchronization server
KR20050089551A (en) * 2004-03-05 2005-09-08 삼성전자주식회사 System for syncronizing data and method for syncronizing data between server and client using the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040007474A (en) * 2001-03-26 2004-01-24 노키아 코포레이션 Application data synchronization in telecommunications system
KR20040010677A (en) * 2001-06-30 2004-01-31 인터내셔널 비지네스 머신즈 코포레이션 System and method for a caching mechanism for a central synchronization server
KR20030037123A (en) * 2001-11-02 2003-05-12 한국전자통신연구원 Platform Independent Software Automatic Searching/Distribution/Install Apparatus and The method of Searching and Distribution for that apparatus
KR20050089551A (en) * 2004-03-05 2005-09-08 삼성전자주식회사 System for syncronizing data and method for syncronizing data between server and client using the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101171798B1 (en) 2008-09-26 2012-08-13 고려대학교 산학협력단 System and method for electronic payment in electronic commerce, and recording medium used thereto

Also Published As

Publication number Publication date
KR20060065054A (en) 2006-06-14

Similar Documents

Publication Publication Date Title
US9485134B2 (en) Managing configurations of system management agents in a distributed environment
KR100421624B1 (en) Platform Independent Software Automatic Searching/Distribution/Install Apparatus and The method of Searching and Distribution for that apparatus
US6477543B1 (en) Method, apparatus and program storage device for a client and adaptive synchronization and transformation server
US9298747B2 (en) Deployable, consistent, and extensible computing environment platform
US6615276B1 (en) Method and apparatus for a centralized facility for administering and performing connectivity and information management tasks for a mobile user
JP4405812B2 (en) Method and apparatus for synchronizing between a first data storage unit and a second data storage unit
US9519654B2 (en) Method, device, processing center and system for desktop synchronization
EP2021937B1 (en) Techniques to perform gradual upgrades
US7305456B2 (en) Device information acquiring method, server apparatus and computer-readable storage medium
CN1525318B (en) Remote program installing system and method for mobile computing device
JP2004528621A (en) System and method for data synchronization between remote devices
KR20090096554A (en) Synchronizat10n methods and systems
CN103019757A (en) Method, device and system for synchronizing software among multiple clients
WO2012151993A1 (en) Service pushing method and device
JP2002101120A (en) Communication method and information processing apparatus
CN102567339A (en) Method, device and system for acquiring start page
US8335760B1 (en) Grid computing system to manage utility service content
KR20110023480A (en) Data operation method, apparatus and system thereof
JP5886901B2 (en) Storage medium for providing system, method and program for managing distribution of contents to apparatus
CN102594874B (en) Synchronization processing method and device
CN110661851A (en) Data exchange method and device
KR100597586B1 (en) Data Synchronization method using Session Management
KR101638689B1 (en) System and method for providing client terminal to user customized synchronization service
TW201500933A (en) Method for sharing and synchronizing data in local area network
KR20020003674A (en) Data synchronization system and method thereof

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120531

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee