KR20050086575A - 동기 세션 정렬 - Google Patents

동기 세션 정렬 Download PDF

Info

Publication number
KR20050086575A
KR20050086575A KR1020057008511A KR20057008511A KR20050086575A KR 20050086575 A KR20050086575 A KR 20050086575A KR 1020057008511 A KR1020057008511 A KR 1020057008511A KR 20057008511 A KR20057008511 A KR 20057008511A KR 20050086575 A KR20050086575 A KR 20050086575A
Authority
KR
South Korea
Prior art keywords
synchronization
synchronization device
session
sync
role information
Prior art date
Application number
KR1020057008511A
Other languages
English (en)
Other versions
KR100716608B1 (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 노키아 코포레이션
Publication of KR20050086575A publication Critical patent/KR20050086575A/ko
Application granted granted Critical
Publication of KR100716608B1 publication Critical patent/KR100716608B1/ko

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 제1 동기 장치와 제2 동기 장치 사이에 동기 장치를 정렬하는 것에 관한 것이다. 제1 동기 세션은 제1 동기 장치와 제2 동기 장치 사이에 설정된다. 역할 정보가 정의되어, 제1 동기 장치가 적어도 어떤 한 후속 동기 세션에서 클라이언트 또는 동기 서버로서 작용하는지를 상기 제1 동기 장치가 나타내도록 저장된다. 상기 제1 동기 장치와 상기 제2 동기 장치 사이에서 제2 동기 세션을 초기화할 필요가 생길 때, 상기 역할 정보가 검사된다. 상기 제2 동기 세션은 상기 역할 정보에 따라 상기 제1 동기 장치에서 초기화된다.

Description

동기 세션 정렬{Arranging synchronization session}
본 발명은 동기 세션 정렬에 관한 것으로서, 특히 동기 세션에 대한 동기 장치의 역할을 선택하는 것에 관한 것이다.
휴대용 컴퓨터, PDA(Personal Digital Assistant) 장치, 모바일 스테이션 또는 페이저와 같은 휴대용 단말기의 데이터는 네트워크 어플리케이션, 데스크탑 컴퓨터 어플리케이션의 데이터베이스 또는 다른 통신 시스템 데이터베이스에 동기될 수 있다. 특히, 달력 어플리케이션과 전자우편 어플리케이션의 데이터는 전형적으로 동기된다. 동기는 상호간에 서로 작용하지 않는 상이한 소유권 프로토콜의 사용에 기초하여 이루어졌다. 이것은 다수의 사용가능한 단말기들 또는 데이터 형태를 제한하였고, 종종 사용자들에게 어려웠다. 특히 이동 통신에서, 사용된 단말기 및 어플리케이션과 상관없는 데이터를 획득하고 갱신하는 것은 중요하다. XML(Extensible Markup Language; 확장성 생성 언어) 언어에 기초한 SyncML(Synchronization Markup Language; 동기 마크업 언어)가 어플리케이션 데이터의 더 효과적인 동기를 달성할 목적으로 개발되었다. SyncML-포맷 메시지를 채용하는 SyncML 동기 프로토콜을 사용하므로써, 어떤 네트워킹된 단말기들 간의 어떤 어플리케이션의 데이터를 동기시키는 것이 가능하다. 모바일 스테이션의 설정과 같이, 특정-장치 데이터를 동기시키는 해결방안이 또한 개발되었다. 하나의 장치 관리 표준은 SyncML 데이터 동기 표준에 부분적으로 기초한 SyncML 장치 관리이다.
이전에, 오직 서버 장치만이 작은 단말기들의 데이터를 동기시킬 수 있었다. 이것은 동기 서버의 기능성이 작은 휴대용 단말기들이 달성할 수 있는 것 보다 더 큰 계산 용량 및 메모리 용량을 필요로 한다는 사실에 기인하였다. 그러나, 기술 발달에 따라 두개의 작지만 강력한 단말기, 예를 들어 두개의 모바일 스테이션 사이에서 직접적으로 데이터를 동기시키는 것이 또한 가능하게 되었다.
도 1은 상이한 동기 구성을 도시하는 블록도이다,
도 2는 동기 서버와 클라이언트 기능을 모두 포함하는 단말기 및 클라이언트 기능을 포함하는 단말기를 도시하는 블록도이다,
도 3은 본 발명의 바람직한 실시예에 따른 방법의 흐름도이다,
도 4는 SyncML 시스템에서 일실시예에 따른 동기 세션의 정렬을 도시하는 신호처리 다이어그램이다.
도 5는 SyncML 시스템에서 일실시예에 따른 역할 변경을 도시하는 신호처리 다이어그램이다.
본 발명의 목적은 동기 세션을 정렬하는 개선된 솔루션을 개발하는 데 있다.
본 발명의 상기 목적은 독립 청구항들에 개시된 내용에 의해 특징지어지는 방법, 동기 시스템, 동기 장치 및 컴퓨터 프로그램 생성물에 의해 달성된다. 본 발명의 바람직한 실시예들은 종속 청구항들에서 설명된다.
본 발명은 기존의 동기 프로토콜을 사용할 때의 새로운 문제를 식별한다: 장치들의 역할은 어떤 한 동기 세션으로부터 다른 동기 세션에 이르기까지 동일하게 존재하는 것이 필수적이다. 이것은 예를 들어 데이터 아이템의 식별자를 맵핑하는 맵핑 테이블과 같은 장치들의 앞선 동기에 관련된 데이터가, 오직 메모리 부하를 줄이기 위해서 어떤 한 장치내에 바람직하게 저장되어야 하는 사실 때문에 필요한 것으로 주목되었다. 그런데, 이것은 상기 장치들이 상호간에 동기될 때, 한 장치 및 동일한 장치가 항상 동기 서버의 역할을 갖고 다른 장치는 항상 클라이언트의 역할을 갖는 것을 필요로 하고, 그렇지 않으면 동기와 관련된 데이터의 무가치 또는 부족으로 인해 데이터의 불필요한 동기가 되는데, 여기서 데이터베이스의 모든 데이터 아이템은 동기되거나 (저속 동기) 또는 필요한 것보다 더 많은 수가 상호간에 비교될 필요가 있다. 역할을 할당하는 것은 몇개의 모바일 스테이션을 가지고 있는 사용자에게 특히 어려운데, 이는 상기 사용자가 동기를 시작하기 위해 매번 사용할 장치를 기억해야만 하기 때문이다. 상기 사용자는 적어도 장치들중에서 어떤 것을 서버로서 사용할 것인지를 결정할 수 있어야만 한다. 상기 사용자는 위에서 언급한 어려운 질문을 발견할 것이고 옳은 선택을 할 수 없을 수 있다.
본 발명에 따르면, 역할 정보는 자동적으로, 즉 사용자의 입력없이 정해지고, 제1 동기 장치를 위해 저장되며, 상기 정보는 상기 제1 동기 장치가 클라이언트 또는 동기 서버로서 적어도 어떤 한 후속 동기 세션에서 작용하는지를 판단한다. 상기 역할 정보는 제2 동기 세션이 상기 제1 동기 장치와 제2 동기 장치 사이에서 초기화될 필요가 있을 때 검사된다. 상기 제2 동기 세션은 상기 역할 정보에 따라 상기 제1 동기 장치에서 초기화된다.
본 발명의 장치는 사용자가 장치의 역할을 선택할 필요가 없는 이점을 제공하는 데, 이것은 장치의 유용성을 향상시킨다. 상기 동기는 또한 상기 역할이 자동적으로 선택 보정될 때 더 신뢰할만하다.
본 발명의 바람직한 실시예에 따르면, 만일 동기 세션이 상기 제2 동기 장치에서 초기화될 수 없으면, 클라이언트 서버 기능 및 동기 서버 기능을 포함하는 제1 동기 장치는 자신의 역할을 변경할 수 있다. 상기 제1 동기 장치는 상기 제1 동기 세션을 초기화하기 위해 클라이언트 시작 메시지, 예를 들어 클라이언트 장치의 SyncML 프로토콜 동기 세션 초기화 패킷을 상기 제2 동기 장치에 송신할 수 있다. 만일 제2 동기 장치가 에러 메시지를 송신하면, 상기 제1 동기 장치는 서버 초기화 메시지를 상기 제2 동기 장치에 송신한다. 이것에 기초하여, 동기 서버는 자신의 역할 정보로서 상기 제1 동기 장치를 위해 저장된다. 이 같은 방식으로, 비록 역할 정보가 저장되지 않았고 잘못된 역할이 첫번째로 선택되었어도, 상기 동기 세션은 초기화될 수 있다. 역할 변경은 동기 어플리케이션 레벨에서 수행될 수 있으므로, 보다 낮은-레벨의 연결이 실시간에서 연결해제될 필요가 없다.
본 발명은 바람직한 실시예들에 의해서 그리고 첨부된 도면을 참조하여 보다 더 상세하게 설명될 것이다.
본 발명의 바람직한 실시예가 사용자 아이템이 전형적으로 동기되는 SyncML 표준에 따른 동기에 의해서 이하에 설명된다. 그러나, 본 발명은 어떤 동기 기술을 채용하는 시스템에 적용될 수 있다. SyncML 표준에 부분적으로 기초한 SyncML 장치 관리는 본 발명의 바람직한 실시예에 따라 해결될 수 있는 SyncML 데이터 동기에서 처럼 역할 선택과 유사한 문제를 가진다. 그 다음, 어떤 한 장치는 전형적으로 제1 장치로서 작용하고, 이 장치의 설정(셋팅)은 다른 장치들에 복사되는 데, 이것은 어떤 한 장치 관리 세션에서 다른 장치 관리 세션까지 상기 역할은 동일하게 유지되는 것이 필수적이라는 것을 의미한다.
도 1은 네트워킹된 시스템을 도시하는 데, 여기서 그 데이터베이스내의 데이터는 서버(S)들과 단말기(TE)들 사이에서, 단말기(TE)들 사이에서 또는 서버(S)들 사이에서 동기될 수 있다. 동기되는 상기 데이터베이스는 메모리 카드, 하드 디스크 또는 이와 유사한 것과 같은 소정의 메모리 수단 혹은 인터넷 또는 어떤 다른 데이터 네트워크에 분산된 데이터베이스와 같은 일반적인 데이터의 어떤 모음(collection)을 언급하는 것으로 광범위하게 이해되어야 한다. 만일 동기가 단말기(TE)들 또는 서버(S)들 사이에 있으면, 단말기(TE)들 또는 서버(S)들 중의 어느 하나는 동기 서버로서 작용하고(SyncML 동기 서버는 SyncML 표준에서 정의되고, 그것은 이하에서 동기(sync) 서버로 언급된다), 동기 세션에 참여하는 제2 단말기(TE) 또는 서버(S)는 동기 클라이언트(나중에 클라이언트로 언급되는 SyncML 클라이언트)로서 작용한다. 서버(S)는 몇개의 단말기(TE)들에 관여할 수 있고, 어떤 한 장치는 다른 역할에서 다른 장치와 함께 동작할 수 있다. 네트워크 서버 또는 PC(개인용 컴퓨터)는 전형적으로 서버(S)로서 작용한다. 단말기(TE)는 전형적으로 모바일 스테이션, PC, 랩탑 컴퓨터 또는 PDA 장치이다.
도 1은 두개의 예를 보여주는데, 그 첫번째는 구내 정보 통신망(LAN)에 연결된 단말기(TE)들과 서버(S)들을 구비한다. 구내 정보 통신망(LAN)에 연결된 단말기(TE)는 구내 정보 통신망(LAN) 내의 장치들과의 통신을 위한 기능성, 예를 들면 데이터 전송을 제어하는 네트워크 카드와 소프트웨어를 포함한다. 구내 정보 통신망(LAN)은 소정 형태의 구내 정보 통신망일 수 있고, 단말기(TE)는 또한 전형적으로 방화벽(FW)을 사용하는 인터넷을 통해 서버(S)에 연결될 수 있다. 단말기(TE)는 또한 접속 포인트(AP)를 통해 구내 정보 통신망(LAN)에 무선으로 연결될 수 있다. 두번째 예에서, 단말기(TE)는 모바일 네트워크(MNW)를 통해 서버(S)와 통신한다. 모바일 네트워크(MNW)에 연결된 단말기(TE)는 모바일 네트워크(MNW)와 무선으로 통신하기 위한 모바일 통신 기능성을 포함한다. 또한, 모바일 네트워크(MNW)와 서버(S) 사이에 구내 정보 통신망(LAN)과 같은 다른 네트워크들이 있을 수 있다. 모바일 네트워크(MNW)는 GSM 서비스를 지원하는 네트워크, GPRS(범용 패킷 무선 서비스; General Packet Radio Service) 서비스를 지원하는 네트워크, 3GPP(3세대 파트너쉽 프로젝트) 네트워크 사양에 따른 것과 같은 3세대 모바일 네트워크, 무선 구내 정보 통신망(WLAN) 또는 사설 네트워크와 같은 어떤 공지된 무선 네트워크일 수 있다. 서버(S)는 자체내에 동기시킬 수 있는 데이터베이스 또는 어떤 다른 장치내에 존재할 수 있는 데이터베이스를 포함할 수 있다는 것이 주목된다; 도 1에서, 서버(S)와 데이터베이스(DB)는 분명한 목적을 위해 개별적이다. 본 발명의 바람직한 실시예에 따라 상호간에 동기되는 장치들은 전형적으로 모바일 스테이션과 같은 아주 유사한 장치들이고, 이전에 상호간에 동기될 수 없다. 도 1의 예에 부가하여, 다른 동기 구조가 또한 가능하다.
도 2는 기능성에서 상이하지만 둘다 메모리(MEM)와, 사용자 인터페이스(UI)와, I/O 데이터 전송을 정렬하는 I/O 수단 및 하나 또는 그 이상의 프로세서를 포함하는 중앙처리장치(CPU)를 포함하는 두개의 단말기(TE1)(TE2)를 도시한다. 비록 메모리(MEM)와, 사용자 인터페이스(UI) 및 중앙처리장치(CPU)가 같은 참조 부호로 표시되지만, 이들은 자연적으로 다른 단말기에서 상이할 수 있다. 메모리(MEM)는 중앙처리장치(CPU)를 제어하는 어플리케이션과 다른 필요 정보를 저장하기 위한 비-휘발성 부분 및 임시적인 처리 데이터에 사용하기 위한 휘발성 부분을 가진다. 동기되는 데이터는 단말기(TE1)(TE2)의 메모리(MEM)(동기되는 데이터베이스임)에 저장된다.
도 2의 예에서, 첫번째 단말기(TE1)는 동기를 위해 클라이언트와 동기 서버 기능성을 모두 포함하고, 두번째 단말기(TE2)는 단지 클라이언트 기능성만을 포함한다. 첫번째 단말기(TE1)는 단말기들 사이에서 동기하는 동안 동기 서버로서 작용할 수 있다. 이러한 솔루션은 예를 들어 다른 모바일 스테이션으로 변경할 때 또는 두개의 모바일 스테이션을 사용할 때 데이터를 결합하는 특정-장치를 이송하는 데 전형적이다. SyncML 표준에 따른 클라이언트 장치 기능성은 클라이언트 장치에서 동기 세션-관련 기능을 처리하는 클라이언트 에이전트(CA)로 이루어진다. 동기 서버 기능성은 세션을 관리하는 동기 서버 에이전트(SA)와 동기 엔진(SE)으로 이루어진다.
클라이언트 에이전트(CA)와 서버 에이전트(SA) 및 동기 엔진(SE)은 중앙처리장치(CPU)의 메모리(MEM)에 저장된 컴퓨터 프로그램 코드를 실행함으로써 실시될 수 있다. 중앙처리장치(CPU)에서 실행되는 컴퓨터 프로그램 코드는 또한 단말기(TE1)로 하여금 발명 기능을 실시할 수 있게 하는 데, 이에 대한 실시예들은 도 3, 도 4 및 도 5에 보다 상세하게 도시된다. 바람직한 실시예에 따르면, 상기 기능성들(CA, SA 및 SE)을 포함하는 단말기(TE1)는 동기 서버(SA, SE)의 역할 또는 앞서서 저장된 역할 정보에 따른 클라이언트 장치의 역할을 선택하도록 구성된다. 상기 컴퓨터 프로그램은 PC 하드 디스크 또는 CD-ROM과 같은 어떤 메모리 매체에 저장될 수 있는 데, 상기 컴퓨터 프로그램은 상기 메모리 매체에서 실행을 위한 단말기(TE1)의 메모리(MEM)에 로딩될 수 있다. 또한 상기 컴퓨터 프로그램은 예를 들어 TCP/IP 프로토콜 스택을 사용함으로써 네트워크를 통해 로딩될 수 있다. 발명 수단을 실시하기 위해 하드웨어 솔루션 또는 하드웨어와 소프트웨어 솔루션의 조합을 사용하는 것이 또한 가능하다.
동기 서버와 클라이언트 장치 사이의 SyncML 세션은, 예를 들어 HTTP 프로토콜(Hyper Text Transfer Protocol), WAP(Wireless Application Protocol) 표준의 WSP 프로토콜(Wireless Session Protocol), USB(Universal Serial Bus) 또는 RS-232와 같은 케이블 접속을 위해 또는 단파 무선 주파수(블루투스; Bluetooth) 혹은 적외선(IrDA) 접속을 위해 사용되는 OBEX 프로토콜, TCP/IP 스택(Transport Control Protocol/Internet Protocol), 또는 SMTP(Simple Mail Transfer Protocol)에서 정렬될 수 있다.
도 3은 바람직한 실시예의 방법을 도시하는 흐름도이다. 이 방법은 클라이언트 장치 기능성(CA)과 동기 서버 기능성(SA)(SE)을 모두 포함하는 동기 장치(TE1)에 적용될 수 있다; 이 동기 장치는 제1 동기 장치로 불려진다. 제1 동기 세션은 제1 동기 장치(TE1)와 제2 동기 장치(TE2) 사이에 설정된다(301). 동기 세션에서 동기된 데이터는 사용자 데이터 및/또는 장치 데이터일 수 있다. 제1 동기 세션 동안 또는 제1 동기 세션 후에, 제1 동기 장치(TE1)가 후속 동기 세션에서 클라이언트 또는 서버로서 작용해야 하는지를 나타내도록 제1 동기 장치(TE1)에 대해 역할 정보가 정의되고 저장된다(302). 바람직하게 상기 역할 정보가 IMEI(International Mobile Equipment Identity)와 같은 장치(TE2)의 식별자와 연관되는 방법으로, 상기 역할 정보는 동기 기능성(CA, SA, SE)을 실시하는 동기 어플리케이션에 의해 사용되는 메모리 영역에 저장될 수 있다(302). 그 다음, 제1 장치(TE1)는 동기 세션을 설정했던 모든 동기 장치에 대한 역할 정보를 저장할 수 있다.
제2 동기 세션이 제2 동기 장치(TE2)로 초기화될 필요가 있을 때(303), 제1 동기 장치(TE1)는 상기 역할 정보를 검사한다(304)(305). 상기 역할 정보는 제2 동기 장치(TE2)의 식별자에 기초하여 검색될 수 있고(304)(305), 만일 상기 식별자와 연관된 역할 정보가 발견되면, 상기 역할 정보에 따른 역할이 상기 제1 동기 장치 또는 제2 동기 장치가 설정되도록 선택된다. 제1 동기 장치(TE1)는 상기 역할 정보에 따라 제2 동기 세션을 초기화하기 위한 메시지를 상기 제2 동기 장치에 전송하는(307) 클라이언트 기능성(CA) 또는 동기 서버 기능성(SA, SE)을 활성화하도록 구성된다. SyncML 프로토콜을 사용할 때, 상기 제2 동기 세션을 초기화하기 위한 메시지는 이하에서 더 상세하게 개시된다.
만일 역할 정보가 저장되지 않았으면, 클라이언트 장치는 전형적으로 동기 세션을 초기화할 것으로 추측되기 때문에 클라이언트 초기화 메시지는 전송될 수 있다(308). 특히, 동기 서버 기능성(SE, SA)이 클라이언트 기능성(CA) 보다 더 많은 처리 리소스와 메모리를 요구하기 때문에, 모바일 스테이션과 다른 작은 휴대용 장치에서 디폴트 역할은 바람직하게 클라이언트이어야 한다. 그런데, 만일 상기 방법이 동기 서버로서 작용하고 또한 클라이언트 기능성을 포함하는 장치(S)에 기본적으로 적용되면, 동기 서버에서 전송된 메시지를 동기 세션(SyncML 프로토콜 "클라이언트에 동기 경보"에서)을 초기화하기 위해 전송하는 것이 또한 가능하다.
교정 역할은 전술한 실시예에 의해 자동적으로 선택된다. 바람직한 일실시예에 따르면, 상기 역할 정보는 또한 특정-어플리케이션일 수 있는데, 이 경우에 제1 동기 장치(TE1)는 특정 어플리케이션에 의해 수행되는 동기에서 제2 동기 장치에 대해 동기 서버로서 작용할 수 있고, 반면에 다른 어플리케이션에 의해 수행되는 동기에서 제2 동기 장치는 제1 동기 장치(TE1)에 대해 서버로서 작용할 수 있다. 또한 상기 역할 정보는 예를 들어 상기 어플리케이션에 의해 사용된 프로파일에 의존하는 어떤 한 어플리케이션 내에서 조차도 변할 수 있다. 중요한 것은 상기 역할이 다음의 대응 동기 세션에 대해 정의되고 저장된다는 것이다.
일실시예에 따르면, 단계 302에서 클라이언트가 상기 역할로서 정의되면 역할 정보는 저장되지 않는다. 이 같은 경우에서도, 다음 동기에서 도 3에서 처럼 동작하고 클라이언트를 디폴트 역할로서 선택하는 것이 가능하다. 그런데, 이 방법은, SyncML 동기 프로토콜에 따라 예를 들어 클라이언트 장치가 동기 세션을 초기화함으로, 본 발명의 동작을 위태롭게 하지 않고 메모리 소비를 더 줄이는 것이 가능하다.
도 4는 SyncML 시스템에서의 동기 세션의 정렬을 도시하는 신호처리 다이어그램이다. SyncML 표준에 따르면, 동기 세션을 초기화할 때, 상기 동기 세션의 초기화가 첫번째로 수행된다. 이것은 클라이언트 기능성을 포함하는 상기 장치(TE2)가 클라이언트 초기화 패키지 (패키지 #1)(401)를 동기 서버 및 클라이언트 기능성을 포함하는 상기 장치(TE1)에 전송하는 것을 의미한다. 상기 장치(TE1)가 메시지를 수신할 때(401), 그것은 자신이 동기 서버로서 작용하는 것을 검출하고, 서버 초기화 패키지 (패지지 #2)(402)를 클라이언트 장치(TE2)에 전송한다. 상기 클라이언트 장치와 동기 서버 간의 인증, 동기되는 데이터베이스의 정의, 서비스의 프로토콜 형태와 변경의 정의, 및 동기에 영향을 미치는 장치의 속성은 초기화하는 동안에 수행될 수 있다.
동기 세션이 초기화될 때, 클라이언트 장치(TE2)는 동기 서버(TE1)에, 적어도 사용자 데이터 아이템 및/또는 이전 동기 세션 후에 클라이언트 장치의 장치 데이터 아이템, 예를 들어 그 세트에 부가된 전자우편 메시지를 포함하는 선택 데이터 세트로 이루어진 변경 및 부가에 대한 정보를 포함하는 SyncML 패키지 (패키지 #3)(403)를 전송할 수 있다. SyncML 동기에서, 상기 선택된 동기 형태에 의존하여 다른 파티(party)에 동기되는 모든 데이터 또는 이전 동기 세션 후에 동기되는 데이터로 이루어진 변경만을 전송하는 것이 가능하다는 것이 주목되어야 한다. 동기 서버(TE1)는 상기 데이터, 즉 분석을 상기 선택 데이터 세트로 이루어진 변경에 동기시키고, 상기 데이터 아이템 및/또는 장치 데이터 아이템을 조화시킨다(부가한다, 교체한다 및 삭제한다). 이 이후에, 동기 서버(TE1)는 클라이언트 장치(TE2)에, 동기 결과에 대한 정보 및 2-방향 동기에서 TE1의 데이터베이스에서 이루어진 어떤 변경(서버로부터의 동기 패키지)에 대한 정보를 또한 포함하는 메시지(패키지 #4)(404)를 전송한다. 만일 동기가 2-방향이면, TE2는 메시지(404)에 기초하여 그것의 데이터베이스를 업데이트하고, LUID 식별자(Locally Unique Identifier)를 새로운 데이터 아이템에 가능하게 할당한다. TE2는 동기 서버(TE1)에, LUID 식별자를 나타내는 상태 정보와 맵핑 가능 정보를 포함하는 메시지(패키지 #5)(405)를 전송한다. 동기 서버(TE1)는 메시지(405)에 기초하여 필요에 따라 사용자 데이터의 맵핑 테이블 및/또는 장치 데이터 아이템을 업데이트하고, 상기 맵핑 정보에 대한 수신확인(acknowledgement)(서버로부터의 맵 수신확인)을 포함하는 메시지(패키지 #6)(406)를 클라이언트 장치에 전송한다. 바람직한 일실시예에 따르면, 상기 데이터 아이템의 동일성을 설명하는 상기 맵핑 정보는 동기 서버의 역할을 하는 장치(TE1)에만 저장된다. 이 방법은, 같은 장치들에 대한 몇개의 맵핑 테이블을 유지하는 것과 이들 장치들의 차이점에서 발생하는 충돌을 피하는 것이 가능하다.
TE1은 예를 들어 초기화 페이즈(phase) 동안 메시지(401) 후에 또는 동기 세션의 종료후에(메시지(406) 후에) 역할 정보를 저장하는데, 이것은 도 4에 미도시되었다. 도 3에 도시된 바와 같이, TE1에서 TE2로 제2 동기 세션을 설정하는 것이 필요할 때, TE1은 역할 정보를 정의하고, 그것에 기초하여 동기 세션의 초기화를 시작하기 위해 서버 기능성(SA) 메시지(407)(클라이언트 패키지 #0에 동기 경보)를 전송한다. TE2의 클라이언트 장치 기능성(CA)은 상기 메시지를 검출하고, 메시지(401)와 관련하여 이미 개시된 바와 같은 메시지(408)(클라이언트 초기화 패키지 #1)에 의해 SyncML 표준에 따라 동기 세션의 초기화를 시작한다. TE1은 메시지(409)(서버 초기화 패키지 #2)에 의해 메시지(408)에 응답하고, 그 후에 제2 동기 세션은 초기화되고, 동기 형태에 따라 동기가 수행되는데, 이것은 도 4에 도시되어 있지 않다.
도 5는 일실시예에서 역할 변경을 도시하는데, 여기서 전달 서비스는 SyncML 프로토콜 하위에 있는 OBEX 프로토콜에 의해서 제공된다. OBEX 연결은 TE1과 TE1에 의해 초기화되는 TE2 사이에서 메시지(501)(OBEX 연결 요청) 및 메시지(502)(OBEX 연결 응답)으로 설정된다. TE1은 OBEX 클라이언트 장치로서 작용하고, TE2는 OBEX 서버로서 작용한다. 만일 어떤 역할이 클라이언트 및 동기 서버 기능성을 포함하는 동기 장치(TE1)에서 TE2와 관련한 동기가 정의되어 있지 않으면, TE1은 클라이언트로서 디폴트 역할로 동기 세션을 초기화한다. 초기화하는 역할은 또한 사용자 입력에 근거하여 선택될 수 있다. OBEX 메시지(503)(OBEX 요청 전달)는 클라이언트 동기 초기화 패키지(예를 들면, SyncML 클라이언트 초기화 패키지 #1)를 포함한다. TE1이 OBEX 요청(505)(OBEX 요청 접수)을 전송한 것에 응답하여, TE2는 OBEX 응답 메시지(504)(OBEX 응답 전달)를 전송한다.
바람직한 일실시예에 따르면, 제1 동기 장치(TE1)는 제1 동기 세션을 초기화한 클라이언트 초기화 패키지를 제2 동기 장치(TE2)에 전송한다. TE2는 동기 서버로서 작용할 수 없기 때문에, 그것은 에러 코드(Sync 경보)를 포함하는 SyncML 패키지를 포함하는 메시지(506)(OBEX 응답 접수)에 의해 응답한다.
에러 메시지(506)가 제2 동기 장치(TE2)에서 수신될 때, TE1은 TE2가 동기 서버로서 작용할 수 없음을 인지한다. 제1 동기 장치(TE1)는 자신의 역할을 자동적으로 동기 서버로 변경할 수 있다. TE1은 상기 에러 메시지에 응답하여 동기 세션 초기화에 대한 동기 서버 요청, 즉 도 5의 예에서 SyncML 패키지(예를 들면, 클라이언트 패키지 #0에 대한 SyncML 동기 경보)를 포함하는 OBEX 요청(507)을 제2 동기 장치(TE2)에 전송한다.
TE2는 OBEX 응답(508)으로 응답하고, 이 응답에 대해 TE1은 OBEX 요청(509)으로 응답한다. TE2의 SyncML 클라이언트 기능성(CA)는 SyncML 패키지(예를 들면, 클라이언트 패키지 #0에 대한 SyncML 동기 경보)를 수신한 후에 SyncML 프로토콜에 따라 동작할 수 있다. TE2는 클라이언트 동기 초기화 패키지(클라이언트 초기화 패키지 #1)를 포함하는 OBEX 응답(510)을 전송한다. TE1은 동기 서버 초기화 패키지(패키지 #2)를 포함하는 OBEX 메시지(511)로 응답하고, 그 응답에 대해 TE2는 메시지(512)로 응답한다. 이후에, 데이터가 동기 형태에 따라 동기될 수 있는데, 이것은 도 5에 도시되어 있지 않다. 동기가 수행된 후에, OBEX 연결은 메시지(513)(OBEX 연결해제 요청)과 메시지(514)(OBEX 연결해제 응답)에 의해 해제될 수 있다.
TE1이 SyncML 프로토콜 레벨에서 역할을 변경할지라도, 더 낮은 레벨에서 상기 프로토콜(도 5의 예의 OBEX 프로토콜)에 의한 연결은 바람직한 실시예에 따라 연결해제될 필요가 없다는 것이 주목된다. 이것은 상기 연결을 연결해제하고 재-확립하는 것과 관련된 메시지를 전송할 필요를 제거한다.
역할 변경에 따라, 제1 동기 장치(TE1)는 전술한 바와 같이 제2 동기 장치(TE2)와 관련한 동기에 대한 역할 정보로서 동기 서버를 저장한다. 그 다음, 제2 동기 장치(TE2)와 관련하여 차후에 동기 세션을 설정할 필요가 생길 때, TE1은 도 3 및 도 4에 도시된 바와 같이 작용할 수 있고 역할 정보에 따라 자신의 역할로서 동기 서버를 선택할 수 있다.
일실시예에 따르면, 역할 정의는 메모리 공간 또는 장치들 성능, 또는 장치들에서 실행되는 소프트웨어 버전과 같은 장치들의 어떤 다른 속성에 기초한다. 이 실시예에서, 어느 한 장치는 동기 서버로서 작용할 수 있지만, 더 많은 메모리를 가지는 장치가 서버로서 선택된다. 이 실시예를 실시하는 한 방법은, 상기 동기 장치가 클라이언트 초기화 메시지를 수신했을 때 상기 동기 장치가 이용가능한 충분한 메모리를 갖고 있지 않으면, 상기 장치는 (비록 그것이 동기 서버로서 작용할 수 있어도) 응답으로서 에러 코드(506)를 전송하는 것이다.
만일 상기 장치들이 직접적으로 동기할 수 없고 이들 장치 사이에 동기 메시지 (라우터)를 전달하는 어떤 장치를 가지면, 이 라우터는 바람직하게 상기 장치들과 연관된 역할 정보를 저장할 수 있고 도 3에 도시된 적어도 어떤 단계를 수행할 수 있다. 이것은 어떤 상황에서, 예를 들어 두개의 모바일 스테이션 또는 다른 동기 장치들이 예를 들어 개인용 컴퓨터에 연결된 상황에서 이점을 제공한다. 상기 두개의 동기 장치들 사이에 상기 개인용 컴퓨터 말고는 다른 데이터 전송 수단이 있을 수 없다. 어떤 상황에서, 상기 컴퓨터는 동기를 초기화할 수 있고, 이에 따라 상기 컴퓨터는 상기 동기 장치들에 대한 역할을 정의하고 상기 동기 장치들에 적절한 초기화 메시지를 전송한다. 택일적으로, 두개의 동기 장치는 어떤 다른 종류의 간접적인 동기 연결을 가질 수 있고, 인터넷 또는 예를 들어 어떤 다른 데이터 네트워크에 연결된 장치가 또한 동기 라우터로서 작용할 수 있다. 그 다음, 동기된 장치의 역할 정보는 이러한 보조 장치에 바람직하게 또한 저장되어야 한다.
상술한 실시예들의 어떤 이점은 동기 세션과 그것의 초기화가 SyncML 표준에서 이미 정의된 메시지를 사용하여 정렬될 수 있다는 것이고, 이로써 본 발명으로 말미암아 SyncML 표준에는 어떤 변경도 필요하지 않다. SyncML 프로토콜 및 이 프로토콜의 메시지와 관련하여, SyncML 이니셔티브 그룹 SyncML 사양 "SyncML Sync Protocol, version 1.1.1"의 63 페이지, 2002년 10월 2일자에 참조된다.
기술의 진보에 따라 본 발명의 기본적인 아이디어가 많은 다른 방법으로 실시될 수 있다는 것은 당업자에게 자명할 것이다. 따라서, 본 발명과 본 발명의 실시예들은 상기한 예들에 의해 한정되지 않으며, 청구범위의 범주 내에서 변경될 수 있다.

Claims (16)

  1. 제1 동기 장치와 제2 동기 장치 사이의 동기 세션을 정렬하기 위한 방법으로서,
    제1 동기 세션은 상기 제1 동기 장치와 제2 동기 장치 사이에 설정되는 방법에 있어서,
    상기 제1 동기 장치가 적어도 하나의 후속 동기 세션에서 클라이언트 또는 동기(sync) 서버로서 작용하는지를 나타내는 상기 제1 동기 장치에 대한 역할 정보를 자동적으로 정하고 저장하는 단계,
    상기 제1 동기 장치와 제2 동기 장치 사이의 제2 동기 세션의 초기화에 대한 요구에 응답하여 상기 제1 동기 장치에 대한 상기 역할 정보를 검사하는 단계, 및
    상기 역할 정보에 따라 상기 제1 동기 장치에서 상기 제2 동기 세션을 초기화하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 제1 동기 세션을 초기화하기 위해 클라이언트 초기화 메시지를 상기 제1 동기 장치에서 상기 제2 동기 장치로 송신하는 단계,
    상기 제2 동기 장치에서 에러 메시지를 수신하는 단계,
    상기 에러 메시지에 응답하여 서버 초기화 메시지를 상기 제1 동기 장치에서 상기 제2 동기 장치로 송신하는 단계, 및
    상기 역할 정보 저장 단계 동안 상기 제1 동기 장치에 대한 역할 정보로서 동기 서버를 저장하는 단계를 포함하는 것을 특징으로 하는 방법.
  3. 제1항에 있어서,
    상기 제1 동기 세션을 초기화하기 위해 클라이언트 초기화 메시지를 상기 제1 동기 장치에서 상기 제2 동기 장치로 송신하는 단계,
    상기 제2 동기 장치에서 수신확인(acknowledgement)을 수신하는 단계,
    상기 수신확인의 수신에 응답하여, 상기 역할 정보 저장 단계 동안 상기 제1 동기 장치에 대한 역할 정보로서 동기 클라이언트를 저장하는 단계를 포함하는 것을 특징으로 하는 방법.
  4. 제1항 내지 제3항 중의 어느 한 항에 있어서,
    상기 역할 정보는 상기 제2 동기 장치의 식별자에 기초하여 상기 제2 동기 장치와 연관되고, 그리고
    상기 제2 동기 장치의 식별자와 연관된 상기 역할 정보는 상기 제2 동기 장치와의 제2 동기 세션의 초기화에 대한 요구에 응답하여 상기 제1 동기 장치내의 저장된 역할 정보에서 탐색되는 것을 특징으로 하는 방법.
  5. 제1항 내지 제4항 중의 어느 한 항에 있어서,
    상기 역할 정보는 개별 역할 정보가 각각의 어플리케이션 및/또는 장치의 어플리케이션 프로파일을 위해 장치에 저장되는 특정-어플리케이션인 것을 특징으로 하는 방법.
  6. 제1항 내지 제5항 중의 어느 한 항에 있어서,
    상기 역할 정보의 디폴트 값은 동기 클라이언트이고, 동기 클라이언트가 장치 역할로 저장되면 상기 역할 정보는 저장되지 않는 것을 특징으로 하는 방법.
  7. 제1항 내지 제6항 중의 어느 한 항에 있어서,
    상기 역할 정보는 상기 제1 또는 제2 장치 이외의 제3 장치에 저장되는 것을 특징으로 하는 방법.
  8. 제1항 내지 제7항 중의 어느 한 항에 있어서,
    동기 서버 역할을 하는 장치에서만 데이터 아이템의 동일성을 설명하는 맵핑 정보를 저장하는 단계를 포함하는 것을 특징으로 하는 방법.
  9. 제1항 내지 제8항 중의 어느 한 항에 있어서,
    동기되는 데이터는 사용자 데이터와 장치 데이터 중의 하나인 것을 특징으로 하는 방법.
  10. 제1항 내지 제9항 중의 어느 한 항에 있어서,
    상기 제1 동기 장치 및 상기 제2 동기 장치는 SyncML 표준을 지원하는 것을 특징으로 하는 방법.
  11. 적어도 제1 동기 장치 및 제2 동기 장치를 포함하는 동기 시스템으로, 상기 제1 동기 장치 및 제2 동기 장치는 제1 동기 세션을 설정하도록 구성되는 동기 시스템에 있어서,
    상기 제1 동기 장치가 적어도 하나의 후속 동기 세션에서 클라이언트 또는 동기(sync) 서버로서 작용하는지를 나타내는 역할 정보를 자동적으로 정하고 저장하도록 적어도 하나의 동기 장치가 구성되고,
    상기 제1 동기 장치와 제2 동기 장치 사이의 제2 동기 세션의 초기화에 대한 요구에 응답하여 상기 역할 정보를 검사하도록 적어도 하나의 동기 장치가 구성되고, 그리고
    상기 역할 정보에 따라 상기 제2 동기 세션을 초기화하도록 상기 제1 동기 장치가 구성되는 것을 특징으로 하는 동기 시스템.
  12. 제11항에 있어서,
    상기 역할 정보는 상기 제1 또는 제2 장치 이외의 제3 장치에 저장되는 것을 특징으로 하는 동기 시스템.
  13. 제2 동기 장치와의 제1 동기 세션을 설정하도록 구성되는 동기 장치에 있어서,
    상기 동기 장치가 적어도 하나의 후속 동기 세션에서 클라이언트 또는 동기(sync) 서버로서 작용하는지를 나타내는 역할 정보를 자동적으로 정하고 저장하도록 상기 동기 장치가 구성되고,
    상기 제2 동기 장치와의 제2 동기 세션의 초기화에 대한 요구에 응답하여 상기 역할 정보를 검사하도록 상기 동기 장치가 구성되고, 그리고
    상기 역할 정보에 따라 상기 제2 동기 세션을 초기화하도록 상기 동기 장치가 구성되는 것을 특징으로 하는 동기 장치.
  14. 제13항에 있어서,
    상기 제1 동기 세션을 초기화하기 위해 클라이언트 초기화 메시지를 상기 제2 동기 장치로 송신하도록 상기 동기 장치가 구성되고,
    상기 제2 동기 장치에서 에러 메시지를 수신하도록 상기 동기 장치가 구성되고,
    상기 에러 메시지에 응답하여 서버 초기화 메시지를 상기 제2 동기 장치로 송신하도록 상기 동기 장치가 구성되고, 그리고
    상기 역할 정보 저장 단계 동안 상기 동기 장치에 대한 역할 정보로서 동기 서버를 저장하도록 상기 동기 장치가 구성되는 것을 특징으로 하는 동기 장치.
  15. 제13항 또는 제14항에 있어서,
    동기 서버가 자신의 역할만 하는 것으로 정해지면, 데이터 아이템의 동일성을 설명하는 맵핑 정보를 저장하도록 상기 동기 장치가 구성되는 것을 특징으로 하는 동기 장치.
  16. 제2 동기 장치와의 제1 동기 세션을 설정하도록 동기 장치를 제어하는 프로그램 코드 부분을 포함하는 컴퓨터 프로그램 생성물에 있어서,
    상기 동기 장치가 적어도 하나의 후속 동기 세션에서 클라이언트 또는 동기(sync) 서버로서 작용하는지를 나타내는 역할 정보를 자동적으로 정하고 저장하도록 상기 동기 장치를 제어하는 프로그램 코드 부분,
    상기 제2 동기 장치와의 제2 동기 세션의 초기화에 대한 요구에 응답하여 상기 역할 정보를 검사하도록 상기 동기 장치를 제어하는 프로그램 코드 부분, 및
    상기 역할 정보에 따라 상기 제2 동기 세션을 초기화하도록 상기 동기 장치를 제어하는 프로그램 코드 부분을 포함하는 것을 특징으로 하는 컴퓨터 프로그램 생성물.
KR1020057008511A 2002-11-13 2003-11-12 동기 세션 정렬 KR100716608B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20022024A FI114245B (fi) 2002-11-13 2002-11-13 Synkronointi-istunnon järjestäminen
FI20022024 2002-11-13

Publications (2)

Publication Number Publication Date
KR20050086575A true KR20050086575A (ko) 2005-08-30
KR100716608B1 KR100716608B1 (ko) 2007-05-09

Family

ID=8564932

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057008511A KR100716608B1 (ko) 2002-11-13 2003-11-12 동기 세션 정렬

Country Status (7)

Country Link
US (1) US8190671B2 (ko)
EP (1) EP1563413A1 (ko)
KR (1) KR100716608B1 (ko)
CN (1) CN100401289C (ko)
AU (1) AU2003276323A1 (ko)
FI (1) FI114245B (ko)
WO (1) WO2004044773A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100733402B1 (ko) * 2006-09-20 2007-06-29 한국전자통신연구원 휴대 인터넷 시스템에서의 세션 정보 동기화를 위한 노드상태 처리 방법 및 시스템

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070180127A1 (en) * 2003-11-11 2007-08-02 Nokia Corporation Preconfigured syncml profile categories
US7437484B2 (en) 2003-12-29 2008-10-14 International Business Machines Corporation Method for optimizing synchronization
US7797386B2 (en) * 2004-02-27 2010-09-14 Research In Motion Limited System and method for remotely configuring a desktop mailbox
US20050227683A1 (en) * 2004-03-22 2005-10-13 Motorola, Inc. Apparatus and method for over the air software repair
US8296366B2 (en) * 2004-05-27 2012-10-23 Microsoft Corporation Efficient routing of real-time multimedia information
US20060047837A1 (en) * 2004-06-14 2006-03-02 Jukka-Pekka Rissanen Arrangement for informing application capabilities by an object exchange protocol
US20060072525A1 (en) * 2004-09-23 2006-04-06 Jason Hillyard Method and system for role management for complex bluetooth® devices
US7849199B2 (en) 2005-07-14 2010-12-07 Yahoo ! Inc. Content router
KR100739729B1 (ko) * 2005-09-03 2007-07-13 삼성전자주식회사 디지털 방송 네트워크에서 서버와 클라이언트 간 epg정보를 동기화시키기 위한 방법 및 장치
US8024290B2 (en) * 2005-11-14 2011-09-20 Yahoo! Inc. Data synchronization and device handling
US8065680B2 (en) 2005-11-15 2011-11-22 Yahoo! Inc. Data gateway for jobs management based on a persistent job table and a server table
US9367832B2 (en) 2006-01-04 2016-06-14 Yahoo! Inc. Synchronizing image data among applications and devices
KR100772879B1 (ko) * 2006-04-19 2007-11-02 삼성전자주식회사 네트워크에서 디스커버리를 수행하는 장치, 시스템 및 그방법
EP2232773A4 (en) * 2007-12-20 2014-02-26 Haedenbridge Co Ltd GROUP COMMUNICATION SYSTEM USING A MULTIMEDIA SERVER HAVING A DISTRIBUTED STRUCTURE AND METHOD OF SAID SYSTEM
US8868787B2 (en) * 2007-12-26 2014-10-21 Honeywell International Inc. Incremental downlink of flight information
US7526512B1 (en) 2008-04-18 2009-04-28 International Business Machines Corporation Content-based synchronization for terminal devices
US8135670B2 (en) * 2008-07-22 2012-03-13 International Business Machines Corporation Embedded change logging for data synchronization
EP2491701A1 (en) * 2009-10-20 2012-08-29 T-Mobile Czech Republic A.S. Automatic client detection mechanism
US9319275B2 (en) * 2011-07-25 2016-04-19 Panasonic Corporation Communication device, communication method, and communication program
US9819621B2 (en) 2013-12-27 2017-11-14 Entefy Inc. Apparatus and method for optimized multi-format communication delivery protocol prediction
US20170193009A1 (en) 2015-12-31 2017-07-06 Entefy Inc. Systems and methods for filtering of computer vision generated tags using natural language processing
US10169447B2 (en) 2014-02-24 2019-01-01 Entefy Inc. System and method of message threading for a multi-format, multi-protocol communication system
US10394966B2 (en) 2014-02-24 2019-08-27 Entefy Inc. Systems and methods for multi-protocol, multi-format universal searching
US11755629B1 (en) 2014-02-24 2023-09-12 Entefy Inc. System and method of context-based predictive content tagging for encrypted data
US20160050235A1 (en) * 2014-08-18 2016-02-18 Entefy Inc. Flexible Server Architecture With Ability To Dynamically Change Gateway Communication Channels
US10353754B2 (en) 2015-12-31 2019-07-16 Entefy Inc. Application program interface analyzer for a universal interaction platform
US10135764B2 (en) 2015-12-31 2018-11-20 Entefy Inc. Universal interaction platform for people, services, and devices
US10491690B2 (en) 2016-12-31 2019-11-26 Entefy Inc. Distributed natural language message interpretation engine
US11948023B2 (en) 2017-12-29 2024-04-02 Entefy Inc. Automatic application program interface (API) selector for unsupervised natural language processing (NLP) intent classification
US10587553B1 (en) 2017-12-29 2020-03-10 Entefy Inc. Methods and systems to support adaptive multi-participant thread monitoring
US11573990B2 (en) 2017-12-29 2023-02-07 Entefy Inc. Search-based natural language intent determination
CN111050306A (zh) * 2018-10-15 2020-04-21 北京轩辕联科技有限公司 用于蓝牙设备的扩展连接方法和扩展连接系统
RU2750642C2 (ru) * 2019-11-27 2021-06-30 Акционерное общество "Лаборатория Касперского" Система и способ регистрации уникального идентификатора мобильного устройства
CN112769959B (zh) * 2021-03-04 2022-09-30 抖音视界有限公司 会话同步方法、装置、第一节点、第二节点、系统及介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0839353B1 (en) * 1995-07-20 2001-09-26 Novell, Inc. Transaction synchronization in a disconnectable computer and network
US5884323A (en) * 1995-10-13 1999-03-16 3Com Corporation Extendible method and apparatus for synchronizing files on two different computer systems
US5727202A (en) * 1995-10-18 1998-03-10 Palm Computing, Inc. Method and apparatus for synchronizing information on two different computer systems
US5974238A (en) * 1996-08-07 1999-10-26 Compaq Computer Corporation Automatic data synchronization between a handheld and a host computer using pseudo cache including tags and logical data elements
US6006274A (en) * 1997-01-30 1999-12-21 3Com Corporation Method and apparatus using a pass through personal computer connected to both a local communication link and a computer network for indentifying and synchronizing a preferred computer with a portable computer
EP2224673B1 (en) * 1997-07-30 2012-06-20 Visto Corporation System and method for globally and securely accessing unified information in a computer network
US6272545B1 (en) * 1997-10-24 2001-08-07 Microsoft Corporation System and method for interaction between one or more desktop computers and one or more mobile devices
AU1917399A (en) * 1997-12-15 1999-07-05 Intelogis Method and apparatus for power line exchange protocol
US6308201B1 (en) * 1999-04-08 2001-10-23 Palm, Inc. System and method for sharing data among a plurality of personal digital assistants
US6748403B1 (en) * 2000-01-13 2004-06-08 Palmsource, Inc. Method and apparatus for preserving changes to data
US6956970B2 (en) * 2000-06-21 2005-10-18 Microsoft Corporation Information storage using tables and scope indices
US20020059299A1 (en) * 2000-07-14 2002-05-16 Frederic Spaey System and method for synchronizing databases
FI20002860A (fi) 2000-12-27 2002-06-28 Nokia Corp Laiteroolit ja pikoverkkoyhteydet
FI113129B (fi) 2001-03-26 2004-02-27 Nokia Corp Sovellusdatan synkronointi tietoliikennejärjestelmässä
US6839564B2 (en) * 2001-04-25 2005-01-04 Nokia Corporation Synchronization of database data
US20040093342A1 (en) 2001-06-27 2004-05-13 Ronald Arbo Universal data mapping system
US7054955B2 (en) * 2001-06-27 2006-05-30 Microsoft Corporation System and method for recovering from a failed synchronization session
US7215923B2 (en) * 2001-08-06 2007-05-08 Broadcom Corporation System and method for establishing a connection between wireless devices
FI112015B (fi) * 2001-11-12 2003-10-15 Nokia Corp Datan synkronoinnin järjestäminen tietoliikennejärjestelmässä
US7788382B1 (en) * 2002-03-26 2010-08-31 Good Technology, Inc. Server initiated synchronization

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100733402B1 (ko) * 2006-09-20 2007-06-29 한국전자통신연구원 휴대 인터넷 시스템에서의 세션 정보 동기화를 위한 노드상태 처리 방법 및 시스템

Also Published As

Publication number Publication date
EP1563413A1 (en) 2005-08-17
CN100401289C (zh) 2008-07-09
US8190671B2 (en) 2012-05-29
KR100716608B1 (ko) 2007-05-09
FI114245B (fi) 2004-09-15
US20040117507A1 (en) 2004-06-17
CN1711533A (zh) 2005-12-21
AU2003276323A1 (en) 2004-06-03
WO2004044773A1 (en) 2004-05-27
FI20022024A (fi) 2004-05-14
FI20022024A0 (fi) 2002-11-13

Similar Documents

Publication Publication Date Title
KR100716608B1 (ko) 동기 세션 정렬
US7570668B2 (en) Data synchronization
US7536182B2 (en) Method and system for extending the capabilities of handheld devices using local resources
JP4829316B2 (ja) 中断された同期プロセスに対処してデータを同期させる方法、装置、システム
KR100592915B1 (ko) 원격 통신 시스템의 어플리케이션 데이터 동기화
KR100937163B1 (ko) 데이터베이스 데이터의 동기화
KR100737996B1 (ko) 동기화 시스템, 동기화 서버, 동기화 서버의 메모리로 로딩 가능한 컴퓨터 프로그램을 기록한 저장매체, 동기화 시스템에서 세션을 개시하는 방법, 및 동기화 시스템 내의 전자 장치
KR101011216B1 (ko) 데이터 동기
US7492777B2 (en) Device detection and service discovery system and method for a mobile ad hoc communications network
US7376697B2 (en) Arrangement of data synchronization in a telecommunications system
EP1924046B1 (en) A system, method and device for negotiating the equipment information
EP1542409A1 (en) Protocol for multi-hop ad-hoc networks
US8838821B2 (en) Dynamic transaction protocol upgrades
CN101124736A (zh) 用于无线环境中的网络辅助连接的系统和方法
JP4494970B2 (ja) 中断された同期プロセスに対処してデータを同期させる方法、装置、システム
AU2003278417B2 (en) Device detection and service discovery for mobile networks
KR100488101B1 (ko) 이동통신 단말기와 개인용 컴퓨터 및 개인 정보 관리 서버의 정보 동기화 방법
KR100844361B1 (ko) 자료 동기화 게이트웨이 시스템 및 방법
US7774773B2 (en) Active node, and contents transfer system and method using the active node
KR20050009802A (ko) 자바 rmi를 이용한 단말기 대 단말기 통신플랫폼 설정방법
Sivaraman Content Synchronization

Legal Events

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

Payment date: 20120423

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee