KR100942694B1 - P2P(Peer to Peer)를 이용하는 협업 시스템및 그 방법 - Google Patents

P2P(Peer to Peer)를 이용하는 협업 시스템및 그 방법 Download PDF

Info

Publication number
KR100942694B1
KR100942694B1 KR1020070106515A KR20070106515A KR100942694B1 KR 100942694 B1 KR100942694 B1 KR 100942694B1 KR 1020070106515 A KR1020070106515 A KR 1020070106515A KR 20070106515 A KR20070106515 A KR 20070106515A KR 100942694 B1 KR100942694 B1 KR 100942694B1
Authority
KR
South Korea
Prior art keywords
terminal
collaboration
terminal group
application
application context
Prior art date
Application number
KR1020070106515A
Other languages
English (en)
Other versions
KR20090004318A (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 한국전자통신연구원
Priority to PCT/KR2007/006243 priority Critical patent/WO2008069544A1/en
Priority to US12/515,180 priority patent/US20100274840A1/en
Publication of KR20090004318A publication Critical patent/KR20090004318A/ko
Application granted granted Critical
Publication of KR100942694B1 publication Critical patent/KR100942694B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • 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/104Peer-to-peer [P2P] networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 P2P를 이용하는 협업 시스템 및 그 방법에 관한 것으로, 보다 많은 단말들이 보다 안정적으로 협업작업을 수행할 수 있도록 하기 위하여, 협업 요청시에는 상기 협업관계 목록을 참조하여 다른 단말 또는 단말그룹에 협업을 요청한 후 상기 다른 단말 또는 단말그룹으로부터 전송되는 애플리케이션 컨텍스트를 복원하고, 협업 요청 수신시에는 자신의 애플리케이션 컨텍스트를 추출하여 상기 다른 단말 또는 단말그룹에 제공하는 협업 제어부; 상기 협업 제어부를 통해 복원된 애플리케이션 컨텍스트에 따라 상기 다른 단말 또는 단말그룹과의 애플리케이션을 협업하는 애플리케이션 협업 실행부; 및 상기 다른 단말 또는 단말그룹에 접속하여 상기 애플리케이션 컨텍스트를 P2P(Peer to Peer)방식으로 송수신하는 P2P 통신부를 각각 포함하여 구성되며, 이에 의하여 보다 많은 단말 또는 단말그룹들과 협업 작업을 수행하면서도 협업 작업의 끊김 현상이 발생하는 것을 방지할 수 있도록 한다.
협업 작업, 애플리케이션 컨텍스트, P2P

Description

P2P(Peer to Peer)를 이용하는 협업 시스템 및 그 방법{Co-operating apparatus using Peer to Peer and method thereof}
본 발명은 협업 시스템 및 방법에 관한 것으로, 특히 P2P(Peer to Peer)를 이용하는 협업 시스템 및 방법에 관한 것이다.
본 발명은 정보통신부의 IT신성장동력핵심기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2005-S-007, 과제명: 공개 소프트웨어 기반 온디맨드 사무환경 제공기술 개발].
협업 시스템은 원격지에 단말간에 공통된 애플리케이션(application, 문서 편집기, 프레젠테이션 응용, 스프레드시트, 웹브라우저와 같은 가정 또는 사무실에서 널리 사용되는 각종 응용 소프트웨어)을 공유하며 공동으로 작업할 수 있도록 해주는 일련의 실시간 작업을 말한다.
이러한 협업 시스템은 일반적으로 서버-클라이언트 구조를 가졌었다. 이에 서버가 사용자 단말기들의 위치 정보를 저장하고, 특정 사용자 단말기가 상이한 사용자 단말기와의 협업을 요청할 때마다 상기 위치 정보를 기반으로 해당 사용자 단말기간의 통신 세션을 연결하여 문서 협업 동작을 지원했었다.
그러나 상기와 같은 경우, 서버가 모든 사용자 단말기간의 통신 세션을 연결하고 협업에 필요한 데이터를 중계해야 했으므로, 서버의 한정된 용량으로 인해 협업 가능한 단말의 수가 일정하게 한정되는 문제가 있었다.
또한, 서버의 동작 상태에 협업 동작 상태에 따라 데이터의 중계가 원활히 수행되지 못해, 협업 작업의 끊김 현상도 빈번히 발생되는 문제가 있었다.
본 발명의 제1 측면에 따르면 상기와 같은 문제점을 해결하기 위한 수단으로써, 협업관계 목록을 구비하고, 협업 요청시에는 상기 협업관계 목록을 참조하여 다른 단말 또는 단말그룹에 협업을 요청한 후 상기 다른 단말 또는 단말그룹으로부터 전송되는 애플리케이션 컨텍스트를 복원하고, 협업 요청 수신시에는 자신의 애플리케이션 컨텍스트를 추출하여 상기 다른 단말 또는 단말그룹에 제공하는 협업 제어부; 상기 협업 제어부를 통해 복원된 애플리케이션 컨텍스트에 따라 상기 다른 단말 또는 단말그룹과의 애플리케이션을 협업하는 애플리케이션 협업 실행부; 및 상기 다른 단말 또는 단말그룹에 접속하여 상기 애플리케이션 컨텍스트를 P2P(Peer to Peer)방식으로 송수신하는 P2P 통신부를 포함하는 P2P를 이용한 협업을 수행하는 단말을 제안한다.
그리고 상기 협업관계 목록은 협업관계를 가지는 상기 다른 단말 또는 단말그룹에 대한 정보와 상기 애플리케이션 목록에 대한 정보를 포함하며, 상기 애플리 케이션 컨텍스트는 협업 작업을 수행하는 애플리케이션의 동작 상태 정보이다.
그리고 상기 협업 제어부는 협업요청시에도, 상기 다른 단말 또는 단말그룹이 자신의 협업 진행 상태를 파악할 수 있도록, 자신의 애플리케이션 컨텍스트를 추출하여 상기 다른 단말 또는 단말그룹으로 제공하는 기능을 더 포함한다.
본 발명의 제2 측면에 따르면 상기와 같은 문제점을 해결하기 위한 수단으로써, P2P 프로토콜을 통해 상기 다수의 단말 각각과 통신하는 단말 통신부; 상기 다수의 단말 각각의 로그인여부를 결정하고, 상기 로그인된 단말과의 통신 세션을 연결하는 세션 관리부; 및 협업관계 목록을 관리하며, 상기 로그인된 단말에게 상기 협업관계 목록을 제공하는 협업관계 관리부를 포함하는 코디네이터 서버를 제안한다.
그리고 상기 협업관계 목록은 상기 단말별로 협업관계를 가지는 단말 또는 단말그룹에 대한 정보와 애플리케이션 목록에 대한 정보를 포함한다.
그리고 상기 코디네이터 서버는 협업 작업을 수행하는 단말들 중 로그아웃하는 단말이 발생하면, 상기 협업 작업을 수행하는 단말들로부터 전송되는 상기 애플리케이션 컨텍스트를 수신 및 저장한 후, 상기 로그아웃한 단말이 다시 로그인할 때에 제공하는 애플리케이션 컨텍스트 제공부를 더 포함한다.
본 발명의 제3 측면에 따르면 상기와 같은 문제점을 해결하기 위한 수단으로써, 코디네이터 서버와 협업 작업을 수행하는 다수의 단말들로 이루어지는 협업 시스템에서의 상기 단말의 협업요청 방법에 있어서, 상기 단말이 협업관계 목록을 참조하여 다른 단말 또는 단말그룹에 애플리케이션의 협업을 요청하는 요청 단계; 상 기 다른 단말 또는 단말그룹이 협업요청을 수락하여 P2P(Peer to Peer) 방식으로 제공하는 애플리케이션 컨텍스트를 P2P 방식으로 수신하는 수신 단계; 및 상기 수신한 애플리케이션 컨텍스트를 복원하여, 상기 애플리케이션의 협업을 진행하는 진행 단계를 포함하는 P2P를 이용한 협업요청 방법을 제안한다.
그리고 상기 협업관계 목록은 협업관계를 가지는 상기 다른 단말 또는 단말그룹에 대한 정보와 상기 애플리케이션 목록에 대한 정보를 포함하며, 상기 애플리케이션 컨텍스트는 협업 작업을 수행하는 애플리케이션의 동작 상태 정보이다.
본 발명의 제4 측면에 따르면 상기와 같은 문제점을 해결하기 위한 수단으로써, 협업 작업을 수행하는 다수의 단말들로 이루어지는 협업 시스템에서의 상기 단말의 협업수락 방법에 있어서, 상기 단말이 다른 단말 또는 단말그룹으로부터 협업을 요청받으면, 협업관계 목록을 참조하여 협업요청의 수락 여부를 결정하는 결정 단계; 및 협업요청 수락시에는, 자신의 애플리케이션 컨텍스트를 추출한 후 P2P(Peer to Peer) 방식으로 상기 다른 단말 또는 단말그룹에 제공하는 제1제공 단계를 포함하는 P2P를 이용한 협업 수락 방법을 제안한다.
그리고 상기 협업관계 목록은 협업관계를 가지는 상기 다른 단말 또는 단말그룹에 대한 정보와 상기 애플리케이션 목록에 대한 정보를 포함하며, 상기 애플리케이션 컨텍스트는 협업 작업을 수행하는 애플리케이션의 동작 상태 정보이다.
또한, 상기 P2P를 이용한 협업 수락 방법은 협업 작업을 수행하는 다른 단말 또는 단말그룹 중 일부가 로그아웃하면, 상기 애플리케이션 컨텍스트를 저장한 후 상기 로그아웃한 단말 또는 단말그룹의 일부가 다시 로그인할 때에 제공하는 제2 제공 단계; 상기 다른 단말 또는 단말그룹간의 협업 관계 우선 순위를 설정하고, 우선 순위가 높은 다른 단말 또는 단말그룹으로부터 협업을 요청받으면 해당 애플리케이션 컨텍스트를 우선적으로 추출하여 제공하는 제3 제공 단계; 및 상기 다른 단말 또는 단말그룹간의 협업 관계 우선 순위를 설정하고, 우선 순위가 높은 다른 단말 또는 단말그룹이 로그인하면, 해당 애플리케이션 컨텍스트를 우선적으로 추출하여 제공한 후 상기 로그인한 단말 또는 단말그룹이 상기 애플리케이션 컨텍스트를 제공받은 단말 또는 단말그룹에 직접 접근하여 상기 애플리케이션 컨텍스트를 복원하여 협업하는 제4 제공 단계 중 적어도 하나의 단계를 더 포함할 수 도 있다.
이와 같이 본 발명의 P2P를 이용하는 협업 시스템 및 그 방법은 단말 또는 단말그룹이 P2P를 이용하여 협업에 필요한 애플리케이션 컨텍스트를 송수신하고 복원한다. 반면, 코디네이터 서버는 협업관계 목록을 관리 및 제공하고, 각 단말이 로그인 여부를 확인하는 동작을 수행한다.
이에 단말 또는 단말그룹은 P2P 특징에 따라 보다 많은 단말 또는 단말그룹들과 협업 작업을 수행할 수 있으며, 애플리케이션 컨텍스트 송수신 및 복원 속도도 증대하여 협업 작업의 끊김 현상이 발생하는 것을 방지해준다.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시 예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세하게 설명함에 있 어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
또한, 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다.
도1은 본 발명의 일실시예에 따른 협업 시스템의 구성도이다.
도 1을 참조하면, 본 발명의 협업 시스템은 단말(200A, 200B, 200C) 및 코디네이션 서버(Coordination Server, 300)를 포함하며, 통신망(100)을 통해 단말(200A, 200B, 200C)간 또는 단말(200A, 200B, 200C)과 코디네이션 서버(300)가 접속됨을 알 수 있다.
이때, 통신망(100)은 유무선의 인터넷 망을 포함하는 개념이며, 코디네이션 서버(300)와 통신 가능한 모든 통신선 및 망을 포함한다.
그리고 소정의 단말들(예를 들어, 200B,2000C)은 단말 특성에 따라 하나의 그룹(200)으로 대표될 수도 있다.
이하, 각 구성 요소의 기능을 설명하면 다음과 같다.
각 단말(200A, 200B, 200C)은 다른 단말 또는 단말그룹과 P2P 방식으로 전송하는 애플리케이션 컨텍스트(context)를 송수신하고 복원하여, 협업을 진행한다.
즉, 하나의 애플리케이션을 실행하다가 협업이 필요해지면, 협업관계 목록을 참조하여 해당 애플리케이션에 대해 협업관계를 가지는 단말 또는 단말그룹에게 협업요청한다. 그리고 이에 응답하여 P2P 방식으로 전송되는 애플리케이션 컨텍스트를 P2P 방식을 수신하고 복원하여, 해당 애플리케이션을 다른 단말 또는 단말그룹 과 협업한다.
또한 다른 단말 또는 단말그룹이 협업을 요청하는 경우에는, 협업이 요청된 애플리케이션의 컨텍스트를 추출하여 P2P 방식으로 송신해준다.
코디네이션 서버(300)는 협업관계 목록을 관리하면서, 다수의 단말들(200A, 200B, 200C) 각각이 로그인되면, 로그인된 단말에게 협업관계 목록을 제공한다.
본 발명에서, 애플리케이션은 문서 편집기, 프레젠테이션 응용, 스프레드시트, 웹브라우저와 같은 가정 또는 사무실에서 널리 사용되는 각종 응용 소프트웨어이다.
그리고 애플리케이션 컨텍스트는 협업요청된 애플리케이션의 동작 상태 정보로, 그 예로는 작업 문서 파일 및 작업 페이지 위치 등이 있으며, 웹브라우저의 경우에는 열람하고 있는 인터넷 페이지, 열람 페이지 위치, 즐겨찾기, 및 열람된 주소 목록 등이 있을 수 있다.
그리고 협업관계 목록은 단말별로 협업관계를 가지는 단말 또는 단말그룹, 및 애플리케이션 목록에 대한 정보를 저장한다.
도2는 본 발명의 일실시예에 따른 단말과 코디네이션 서버의 상세 구성도이다.
도 2를 참조하면, 단말(200A)은 애플리케이션 협업 실행부(210), 협업 제어부(221), 저장부(222), 서버 통신부(223), P2P 서버(224) 및 P2P 클라이언트(225)를 포함하고, 코디네이션 서버(300)는 협업관계 관리부(310), 세션 관리부(320), 단말 통신부(330), 및 애플리케이션 컨텍스트 제공부(340)를 포함한다.
단말(200A)의 애플리케이션 협업 실행부(210)는 하나 이상의 애플리케이션들(211~21n)을 구비하고 각 애플리케이션(211~21n)을 실행한다. 그리고 사용자가 특정 애플리케이션의 협업을 요청하면, 협업 제어부(221)를 통해 복원된 애플리케이션 컨텍스트를 제공받아 해당 애플리케이션의 협업을 진행한다.
단말(200A)의 협업 제어부(221)는 코디네이션 서버(300)에 로그인하여 협업관계 목록을 제공받아 저장한다. 그리고 협업요청시에는 협업관계 목록을 참조하여 자신과 협업관계를 가지는 단말 또는 단말그룹을 파악한 후 협업요청하고, 이에 응답하여 수신되는 애플리케이션 컨텍스트를 복원한다. 반면, 협업요청 수신시에는 협업관계 목록을 참조하여 협업요청한 단말 또는 단말그룹과 협업할 애플리케이션을 파악한 후, 해당 애플리케이션의 컨텍스트를 P2P 서버(224)를 통해 협업요청한 단말 또는 단말그룹에 제공한다.
그리고 필요한 경우, 협업 제어부(221)는 협업요청시에도 자신의 협업상태를 반영하는 애플리케이션 컨텍스트를 추출하여, 자신과 협연 관계를 가지는 단말 또는 단말그룹에 제공하여 준다. 이는 협업요청한 단말 또는 단말그룹 뿐 만 아니라 협업요청을 수신한 단말 또는 단말그룹도 협업을 진행할 수 있도록 하기 위함이다.
그리고 협업요청 수신시, 협업요청한 단말 또는 단말그룹의 일부가 로그아웃상태이면, 협업 제어부(221)는 애플리케이션 컨텍스트를 저장부(222) 또는 코디네이션 서버(300)에 저장한 후 해당 단말 또는 단말그룹의 일부가 로그인할 때에 재전송해준다.
또한, 협업 제어부(221)는 협업관계에 따라 협업 방법을 달리해줄 수 있다. 즉, 특수한 협업관계를 가지는 단말 또는 단말그룹이 협업을 요청하면, 무조건적으로 자신의 애플리케이션 컨텍스트를 추출하여 제공하거나, 특수한 협업관계를 가지는 단말 또는 단말그룹이 로그인되면 무조건적으로 자신의 애플리케이션 컨텍스트를 추출하여 제공한 후, 전달자가 직접 해당 단말 또는 단말그룹에 접근하여 애플리케이션 컨텍스트를 복원하여 협업을 진행할 수도 있다.
단말(200A)의 저장부(222)는 협업 제어부(221)를 통해 복원된 애플리케이션 컨텍스트 또는 추출된 애플리케이션 컨텍스트를 임시저장한다.
단말(200A)의 서버 통신부(223)는 P2P 프로토콜을 이용하여 코디네이션 서버(300)와 통신한다. 특히, 코디네이션 서버(300)로부터 전송되는 협업관계 목록을 수신하여 협업 제어부(221)로 전달한다.
단말(200A)의 P2P 서버(224)는 협업요청 수신시에, 협업 제어부(221)가 추출한 애플리케이션 컨텍스트를 P2P 방식으로 제2 단말의 P2P 클라이언트(225)에게 제공한다.
단말(200A)의 P2P 클라이언트(225)는 협업요청시에, 다른 단말 또는 단말그룹이 P2P 방식으로 전송하는 애플리케이션 컨텍스트를 수신하여 협업 제어부(221)로 전달한다.
이와 같이 본 발명의 단말(200A)은 P2P 서버(224)와 P2P 클라이언트(225)를 동시에 구비하여, 협업요청 동작과 협업요청 수신 동작을 모두 수행할 수 있다.
코디네이션 서버(300)의 협업관계 관리부(310)는 단말들 간의 협업관계를 체크하여 협업관계 목록을 구성 및 관리하면서, 코디네이션 서버(300)에 로그인된 단 말에게 협업관계 목록을 제공한다.
코디네이션 서버(300)의 세션 관리부(320)는 코디네이션 서버(300)에 로그인된 단말들과의 통신 세션을 연결한다.
코디네이션 서버(300)의 단말 통신부(330)는 P2P 프로토콜을 이용하여 자신에게 로그인된 단말과 통신한다. 특히, 단말이 로그인될 때에, 협업관계 관리부(310)가 제공하는 협업관계 목록을 제공해준다.
코디네이션 서버(300)의 애플리케이션 컨텍스트 제공부(340)는 협업요청한 단말 또는 단말그룹의 일부가 로그아웃상태이면, 협업요청을 수신한 단말 또는 단말그룹으로부터 전송되는 애플리케이션 컨텍스트를 임시 저장한 후, 협업요청한 단말 또는 단말그룹의 일부가 로그인할 때에 제공한다.
도2에서는, 단말A(200A)에 대해서만 설명하였지만, 나머지 단말들(200B,200C))도 단말A(200A)와 동일한 방법으로 동작됨은 물론 당연하다.
도3은 본 발명의 일실시예에 따른 협업요청 방법을 설명하기 위한 동작 흐름도이다.
먼저, 단말(200A)은 코디네이션 서버(300)에 로그인하여(S101), 협업관계 목록을 제공받는다(S102).
이러한 상태에서 단말(200A)의 사용자가 특정 애플리케이션의 협업을 요청하면, 단말(200A)은 협업관계 목록을 참조하여 자신과 협업관계를 가지는 다른 단말 또는 단말그룹으로 파악한 후 애플리케이션의 협업을 요청한다(S103).
다른 단말 또는 단말그룹이 협업요청을 수락하여(S104), P2P 방식으로 애플 리케이션 컨텍스트를 전송하면, 이를 수신하고 복원한다(S105, S106).
그리고 복원된 애플리케이션을 기반으로 해당 애플리케이션의 협업을 진행한다(S107).
S107 단계에서는 복원된 애플리케이션을 기반으로 해당 애플리케이션의 협업을 진행할 뿐 만 아니라, 자신의 애플리케이션 컨텍스트를 협업요청한 단말 또는 단말그룹에게 전달하여 협업요청한 단말 또는 단말그룹에 협업을 진행할 수 있도록 한다.
반면, 다른 단말 또는 단말그룹이 협업요청을 거절하면, 단말(200A)은 코디네이션 서버에게 협업요청을 거절한 단말 또는 단말그룹과의 협업관계 설정을 요청한다(S109).
코디네이션 서버가 요청한 협업관계를 성공적으로 설정하였으면(S110), 단말(200A)은 다시 S103 단계로 진입하여 협업을 재요청하고, 그렇지 않으면 자신의 업무를 수행하다가 코디네이션 서버로부터 로그아웃한다(S108).
도3에서도, 단말A(200A)에 대해서만 설명하였지만, 나머지 단말들(200B,200C))도 단말A(200A)와 동일한 방법으로 동작됨은 물론 당연하다.
도4는 본 발명의 일실시예에 따른 협업 수락 방법을 설명하기 위한 동작 흐름도이다.
먼저, 단말(200A)은 코디네이션 서버(300)에 로그인하여(S201), 협업관계 목록을 제공받는다(S202).
이러한 상태에서 다른 단말 또는 단말그룹으로부터 협업을 요청받으 면(S203), 협업관계 목록을 참조하여 협업요청한 단말 또는 단말그룹이 자신과 협업관계를 가지는지를 확인한다(S204).
협업관계를 가지면, 협업관계 목록내 설정된 애플리케이션 목록 정보를 참조하여, 현재 실행중인 애플리케이션으로부터 컨텍스트를 추출한다(S205).
그리고 추출된 애플리케이션 컨텍스트를 협업요청 단말 또는 단말그룹에게 전달하고(S206), 해당 애플리케이션의 협업을 진행한다(S207).
만약, S206 단계 수행시에 협업요청 단말 또는 단말그룹의 일부가 로그아웃상태이면, 애플리케이션 컨텍스트를 일시 저장한 후, 해당 단말 또는 단말그룹이 로그인할 때에 제공할 수 있다.
반면 S203 단계의 확인 결과, 협업을 요청한 단말 또는 단말그룹이 자신과 협업관계를 가지지 않으면 협업요청 거절 사유를 전달한 후(S209), 자신의 업무를 수행하다가 코디네이션 서버(300)로부터 로그아웃한다(S208).
도5는 본 발명의 일실시예에 따른 코디네이션 서버에 접속되는 다수의 단말들 간의 협업 방법을 설명하기 위한 동작 흐름도이다.
도5에서는, 설명의 편이를 위해 단말A(200A) 및 단말B(200B)가 협업관계를 가지며, 단말B(200B)가 단말A(200A)에게 협업을 요청한다고 가정한다.
먼저, 단말B(200B)가 P2P 프로토콜을 통해 코디네이션 서버(300)에 로그인하면(S301), 코디네이션 서버(300)는 로그인된 단말B(200B)의 섹션 정보에 따라 로그인된 단말B(200B)와의 통신 세션을 연결하고, 협업관계 목록을 제공한다(S302).
이러한 상태에서 단말A(200A)가 P2P 프로토콜을 통해 로그인하면(S303), 코 디네이션 서버(300)는 다시 단말A(200A)와의 통신 세션을 연결하고, 협업관계 목록을 단말A(200A)에게 제공한다(S304).
그리고 코디네이션 서버(300)는 협업관계 목록을 참조하여 단말A(200A)와 협업관계를 가지는 단말B(200B)를 파악하고, 단말A(200A)의 출석을 단말B(200B)에게 알린다(S305).
단말B(200B)가 단말A(200A)에게 특정 애플리케이션의 협업을 요청하면(S306), 단말A(200A)는 자신과 단말B(200B)가 서로 협업관계를 가지는지를 확인한다(S307). 확인결과, 협업관계를 가지면 단말A(200A)는 해당 애플리케이션의 컨텍스트를 추출하여(S308), 단말B(200B)에게 애플리케이션 컨텍스트를 전달한다(S309).
단말B는 단말A(200A)가 제공하는 애플리케이션 컨텍스트를 수신한 후 복원하고(S310), 복원된 애플리케이션 컨텍스트를 기반으로 협업을 진행한다(S311).
그리고 단말B(200B)가 자신의 업무를 진행하다 사용자의 요청에 의해 코디네이션 서버(300)로부터 로그아웃하면(S312), 코디네이션 서버(300)는 단말B(200B)와의 통신 세션의 해제하고, 단말A(200A)에게 단말B(200B)의 부재를 알린다(S313).
단말A(200A)도 이에 응답하여 코디네이션 서버(300)로부터 로그아웃하여, 협업을 중지한다(S313).
이상에서 설명한 본 발명은 전술한 실시 예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경할 수 있다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식 을 가진 당업자에게 있어 명백할 것이다.
도1은 본 발명의 일실시예에 따른 협업 시스템의 구성도,
도2는 본 발명의 일실시예에 따른 단말과 코디네이션 서버의 상세 구성도,
도3은 본 발명의 일실시예에 따른 P2P를 이용한 협업요청 방법을 설명하기 위한 동작 흐름도,
도4는 본 발명의 일실시예에 따른 P2P를 이용한 협업 수락 방법을 설명하기 위한 동작 흐름도, 그리고
도5는 본 발명의 일실시예에 따른 코디네이션 서버에 접속되는 다수의 단말들 간의 P2P를 이용한 협업 방법을 설명하기 위한 동작 흐름도이다.

Claims (25)

  1. 협업관계 목록을 구비하고, 협업 요청시에는 상기 협업관계 목록을 참조하여 다른 단말 또는 단말그룹에 협업을 요청한 후 상기 다른 단말 또는 단말그룹으로부터 전송되는 애플리케이션 컨텍스트를 복원하고, 협업 요청 수신시에는 자신의 애플리케이션 컨텍스트를 추출하여 상기 다른 단말 또는 단말그룹에 제공하는 협업 제어부;
    상기 협업 제어부를 통해 복원된 애플리케이션 컨텍스트에 따라 상기 다른 단말 또는 단말그룹과의 애플리케이션을 협업하는 애플리케이션 협업 실행부; 및
    상기 다른 단말 또는 단말그룹에 접속하여 상기 애플리케이션 컨텍스트를 P2P(Peer to Peer)방식으로 송수신하는 P2P 통신부를 포함하며,
    상기 P2P 통신부는
    P2P 프로토콜을 통해 상기 협업관계 목록을 제공하는 코디네이션 서버와 통신하는 서버 통신부;
    협업 요청 수락시에, 상기 협업 제어부가 추출한 애플리케이션 컨텍스트를 P2P 방식으로 상기 다른 단말 또는 단말그룹으로 전달하는 P2P 서버; 및
    협업 요청시에, 상기 다른 단말 또는 단말그룹이 P2P 방식으로 전송하는 애플리케이션 컨텍스트를 수신하여 상기 협업 제어부로 전달하는 P2P 클라이언트를 포함하여 구성되는 것을 특징으로 하는 P2P를 이용한 협업을 수행하는 단말.
  2. 제1항에 있어서, 상기 애플리케이션 컨텍스트는
    협업 작업을 수행하는 애플리케이션의 동작 상태 정보인 것을 특징으로 하는 P2P를 이용한 협업을 수행하는 단말.
  3. 제2항에 있어서, 상기 협업 제어부는
    협업요청시에도, 상기 다른 단말 또는 단말그룹이 자신의 협업 진행 상태를 파악할 수 있도록, 자신의 애플리케이션 컨텍스트를 추출하여 상기 다른 단말 또는 단말그룹으로 제공하는 기능을 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업을 수행하는 단말.
  4. 제1항에 있어서, 상기 협업관계 목록은
    협업관계를 가지는 상기 다른 단말 또는 단말그룹에 대한 정보와 상기 애플리케이션 목록에 대한 정보를 포함하는 것을 특징으로 하는 P2P를 이용한 협업을 수행하는 단말.
  5. 제1항에 있어서, 상기 협업 제어부는
    상기 다른 단말 또는 단말그룹 일부가 부재중이면, 상기 애플리케이션 컨텍스트를 임시 저장한 후, 부재중이던 다른 단말 또는 단말그룹이 출석할 때에 제공하는 기능을 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업을 수행하는 단말.
  6. 제1항에 있어서, 상기 협업 제어부는
    코디네이션 서버로부터 상기 협업관계 목록을 제공받는 기능을 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업을 수행하는 단말.
  7. 제6항에 있어서, 상기 협업 제어부는
    상기 다른 단말 또는 단말그룹의 일부가 부재중이면, 상기 애플리케이션 컨텍스트를 상기 코디네이션 서버로 전송하여 상기 코디네이션 서버가 부재중이던 다 른 단말 또는 단말그룹이 출석할 때에 상기 애플리케이션 컨텍스트를 제공하도록 하는 기능을 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업을 수행하는 단말.
  8. 제1항에 있어서, 상기 협업 제어부는
    상기 다른 단말 또는 단말그룹간의 협업 관계 우선 순위를 설정하고, 우선 순위가 높은 다른 단말 또는 단말그룹으로부터 협업을 요청받으면 해당 애플리케이션 컨텍스트를 우선적으로 추출하여 제공하는 기능을 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업을 수행하는 단말.
  9. 제1항에 있어서, 상기 협업 제어부는
    우선 순위가 높은 다른 단말 또는 단말그룹이 로그인하면, 해당 애플리케이션 컨텍스트를 우선적으로 추출하여 제공한 후, 상기 로그인한 단말 또는 단말그룹이 상기 애플리케이션 컨텍스트를 제공받은 단말 또는 단말그룹에 직접 접근하여 상기 애플리케이션 컨텍스트를 복원하여 협업하는 기능을 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업을 수행하는 단말.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 코디네이터 서버와 협업 작업을 수행하는 다수의 단말들로 이루어지는 협업 시스템에서의 상기 단말의 협업요청 방법에 있어서, 상기 단말이
    협업관계 목록을 참조하여 다른 단말 또는 단말그룹에 애플리케이션의 협업을 요청하는 요청 단계;
    상기 다른 단말 또는 단말그룹이 협업요청을 수락하여 P2P(Peer to Peer) 방식으로 제공하는 애플리케이션 컨텍스트를 P2P 방식으로 수신하는 수신 단계; 및
    상기 수신한 애플리케이션 컨텍스트를 복원하여, 상기 애플리케이션의 협업을 진행하는 진행 단계를 포함하며,
    상기 단말은
    P2P 프로토콜을 통해 상기 코디네이션 서버와 통신하는 서버 통신부를 통해 상기 협업관계 목록을 제공받고, 협업 요청 수락시에는 자신의 협업 진행 상태를 통보하기 위한 애플리케이션 컨텍스트를 추출한 후, P2P 서버를 통해 상기 추출된 애플리케이션 컨텍스트를 P2P 방식으로 상기 다른 단말 또는 단말그룹으로 전달하고, 협업 요청시에는 P2P 클라이언트를 통해 상기 다른 단말 또는 단말그룹이 P2P 방식으로 전송하는 애플리케이션 컨텍스트를 수신하는 것을 특징으로 하는 P2P를 이용한 협업요청 방법.
  15. 제14항에 있어서, 상기 협업관계 목록은
    협업관계를 가지는 상기 다른 단말 또는 단말그룹에 대한 정보와 상기 애플리케이션 목록에 대한 정보를 포함하는 것을 특징으로 하는 P2P를 이용한 협업요청 방법.
  16. 제14항에 있어서, 상기 애플리케이션 컨텍스트는
    협업 작업을 수행하는 애플리케이션의 동작 상태 정보인 것을 특징으로 하는 P2P를 이용한 협업요청 방법.
  17. 제14항에 있어서,
    상기 다른 단말 또는 단말그룹이 협업요청을 거절하면, 상기 코디네이터 서버를 통해 상기 다른 단말 또는 단말그룹과의 협업관계를 설정한 후, 상기 협업요 청 단계로 재진입하는 설정 단계를 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업요청 방법.
  18. 제14항에 있어서,
    상기 다른 단말 또는 단말그룹에 자신의 협업 진행 상태를 통보하기 위해 상기 단말이 자신의 애플리케이션 컨텍스트를 추출하여 상기 다른 단말 또는 단말그룹에 제공하는 제공 단계를 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업요청 방법.
  19. 협업 작업을 수행하는 다수의 단말들로 이루어지는 협업 시스템에서의 상기 단말의 협업수락 방법에 있어서, 상기 단말이
    다른 단말 또는 단말그룹으로부터 협업을 요청받으면, 협업관계 목록을 참조하여 협업요청의 수락 여부를 결정하는 결정 단계; 및
    협업요청 수락시에는, 자신의 애플리케이션 컨텍스트를 추출한 후 P2P(Peer to Peer) 방식으로 상기 다른 단말 또는 단말그룹에 제공하는 제1제공 단계를 포함하며,
    상기 단말은
    P2P 프로토콜을 통해 상기 코디네이션 서버와 통신하는 서버 통신부를 통해 상기 협업관계 목록을 제공받고, 협업 요청 수락시에는 자신의 협업 진행 상태를 통보하기 위한 애플리케이션 컨텍스트를 추출한 후, P2P 서버를 통해 상기 추출된 애플리케이션 컨텍스트를 P2P 방식으로 상기 다른 단말 또는 단말그룹으로 전달하고, 협업 요청시에는 P2P 클라이언트를 통해 상기 다른 단말 또는 단말그룹이 P2P 방식으로 전송하는 애플리케이션 컨텍스트를 수신하는 것을 특징으로 하는 협업 수락 방법.
  20. 제19항에 있어서, 상기 협업관계 목록은
    협업관계를 가지는 상기 다른 단말 또는 단말그룹에 대한 정보와 상기 애플리케이션 목록에 대한 정보를 포함하는 것을 특징으로 하는 P2P를 이용한 협업 수 락 방법.
  21. 제19항에 있어서, 상기 애플리케이션 컨텍스트는
    협업 작업을 수행하는 애플리케이션의 동작 상태 정보인 것을 특징으로 하는 P2P를 이용한 협업 수락 방법.
  22. 제19항에 있어서,
    협업요청 거절시에는, 상기 다른 단말 또는 단말그룹에게 협업요청 거절 사유를 통보하는 통보 단계를 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업 수락 방법.
  23. 제19항에 있어서,
    협업 작업을 수행하는 다른 단말 또는 단말그룹 중 일부가 로그아웃하면, 상기 애플리케이션 컨텍스트를 저장한 후 상기 로그아웃한 단말 또는 단말그룹의 일부가 다시 로그인할 때에 제공하는 제2 제공 단계를 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업 수락 방법.
  24. 제19항에 있어서,
    상기 다른 단말 또는 단말그룹간의 협업 관계 우선 순위를 설정하고, 우선 순위가 높은 다른 단말 또는 단말그룹으로부터 협업을 요청받으면 해당 애플리케이 션 컨텍스트를 우선적으로 추출하여 제공하는 제3 제공 단계를 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업 수락 방법.
  25. 제19항에 있어서,
    상기 다른 단말 또는 단말그룹간의 협업 관계 우선 순위를 설정하고, 우선 순위가 높은 다른 단말 또는 단말그룹이 로그인하면, 해당 애플리케이션 컨텍스트를 우선적으로 추출하여 제공한 후 상기 로그인한 단말 또는 단말그룹이 상기 애플리케이션 컨텍스트를 제공받은 단말 또는 단말그룹에 직접 접근하여 상기 애플리케이션 컨텍스트를 복원하여 협업하는 제4 제공 단계를 더 포함하는 것을 특징으로 하는 P2P를 이용한 협업 수락 방법.
KR1020070106515A 2006-12-04 2007-10-23 P2P(Peer to Peer)를 이용하는 협업 시스템및 그 방법 KR100942694B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/KR2007/006243 WO2008069544A1 (en) 2006-12-04 2007-12-04 Cooperation apparatus using peer-to-peer and method thereof
US12/515,180 US20100274840A1 (en) 2006-12-04 2007-12-04 Cooperation apparatus using peer-to-peer and method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060121314 2006-12-04
KR20060121314 2006-12-04

Publications (2)

Publication Number Publication Date
KR20090004318A KR20090004318A (ko) 2009-01-12
KR100942694B1 true KR100942694B1 (ko) 2010-02-16

Family

ID=40486803

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070106515A KR100942694B1 (ko) 2006-12-04 2007-10-23 P2P(Peer to Peer)를 이용하는 협업 시스템및 그 방법

Country Status (2)

Country Link
US (1) US20100274840A1 (ko)
KR (1) KR100942694B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101108028B1 (ko) * 2010-01-22 2012-01-25 차경민 복수의 세션을 이용한 공동작업 방법 및 그 시스템
KR101379105B1 (ko) * 2010-07-02 2014-04-01 한국전자통신연구원 클라우드 컴퓨팅 서비스 제공 시스템 및 방법
FR2984070B1 (fr) * 2011-12-13 2013-12-20 Cassidian Sas Procede d'allocation asynchrone de bande passante, et dispositif electronique de communication mettant en oeuvre ce procede.
KR101437329B1 (ko) * 2013-04-03 2014-09-11 에스케이텔레콤 주식회사 협력 기반 상황 인식 방법 및 이를 위한 상황 인식 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010094087A (ko) * 2000-04-04 2001-10-31 오길록 문서 공동 편집 장치 및 그 방법
JP2003150547A (ja) * 2002-07-25 2003-05-23 Fujitsu Hokuriku Systems:Kk アウエアネス/コラボレーションシステム
KR20050065782A (ko) * 2003-12-24 2005-06-30 그루브 네트웍스 인코포레이티드 분산된 협업 시스템에서 콘택트를 저장하고 관리하기 위한방법 및 장치

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6898642B2 (en) * 2000-04-17 2005-05-24 International Business Machines Corporation Synchronous collaboration based on peer-to-peer communication
US7203755B2 (en) * 2000-12-29 2007-04-10 Webex—Communications, Inc. System and method for application sharing in collaborative setting
GB0306739D0 (en) * 2003-03-24 2003-04-30 British Telecomm Mediator-based recovery mechanism for multi-agent system
JP4376069B2 (ja) * 2004-01-13 2009-12-02 富士通株式会社 メンバー管理システム及びメンバー管理方法
JP2006011550A (ja) * 2004-06-22 2006-01-12 Sony Corp 協調フィルタリングによる情報伝送システム、これに用いる情報処理装置及び情報処理装置に用いるプログラム
JP4544072B2 (ja) * 2005-07-20 2010-09-15 ブラザー工業株式会社 ノード装置、コンピュータプログラム、情報配信システム、及びネットワーク参加方法
US7664786B2 (en) * 2005-12-12 2010-02-16 Electronics And Telecommunications Research Institute Apparatus and method for managing application context

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010094087A (ko) * 2000-04-04 2001-10-31 오길록 문서 공동 편집 장치 및 그 방법
JP2003150547A (ja) * 2002-07-25 2003-05-23 Fujitsu Hokuriku Systems:Kk アウエアネス/コラボレーションシステム
KR20050065782A (ko) * 2003-12-24 2005-06-30 그루브 네트웍스 인코포레이티드 분산된 협업 시스템에서 콘택트를 저장하고 관리하기 위한방법 및 장치

Also Published As

Publication number Publication date
US20100274840A1 (en) 2010-10-28
KR20090004318A (ko) 2009-01-12

Similar Documents

Publication Publication Date Title
CN102611642A (zh) 处理异步消息的系统及其发送消息、监听处理任务的方法
KR101113738B1 (ko) 이동통신단말기의 인터넷 접속방법
CN102202102A (zh) 基于云计算架构的网络服务聚合系统及其聚合方法
EP3028437B1 (en) Messaging api over http protocol to establish context for data exchange
TWI363545B (en) Management method for remote digital signages
CN101741769B (zh) 一种网关和网页重定向的方法
CN102404384A (zh) 统一重新连接至多个远程服务器
CN102420805B (zh) 一种通过套接字连接进行通信的方法、系统及设备
US9020473B2 (en) Content sharing system, mobile terminal, protocol switching method and program
CN101567861B (zh) 异构应用系统之间的数据同步方法及应用系统
CN102111419A (zh) 一种基于消息中间件的客户端自动重连方法
CN101202716A (zh) 一种信息存储方法及通讯系统以及相关设备
KR100942694B1 (ko) P2P(Peer to Peer)를 이용하는 협업 시스템및 그 방법
CN101540781B (zh) 基于匿名主题寻址的方法和设备
CN102662776A (zh) 在线应用平台的应用间通信方法、客户端及应用进程管理器
CN103647701A (zh) 即时通信系统消息转发的控制方法及装置
CN102150151B (zh) web应用程序的异步队列的消息收发
CN109618004A (zh) 一种报文转发方法及装置
JP5353714B2 (ja) サーバシステムとそのイベントメッセージ送信方法
US20070011243A1 (en) System and method for storing and transmitting a file data using internet messenger
Park et al. DirectSpace: A collaborative framework for supporting group workspaces over Wi-Fi direct
CN103138961A (zh) 服务器控制方法、被控服务器及中心控制服务器
Cisco 1 - Introduction
Cisco 1 - Introduction
CN111327511B (zh) 即时通讯方法、系统、终端设备与存储介质

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
LAPS Lapse due to unpaid annual fee