KR102340796B1 - 단말기들의 통신 방법 및 그 단말기 - Google Patents

단말기들의 통신 방법 및 그 단말기 Download PDF

Info

Publication number
KR102340796B1
KR102340796B1 KR1020150091585A KR20150091585A KR102340796B1 KR 102340796 B1 KR102340796 B1 KR 102340796B1 KR 1020150091585 A KR1020150091585 A KR 1020150091585A KR 20150091585 A KR20150091585 A KR 20150091585A KR 102340796 B1 KR102340796 B1 KR 102340796B1
Authority
KR
South Korea
Prior art keywords
terminal
terminals
transmission
message
group
Prior art date
Application number
KR1020150091585A
Other languages
English (en)
Other versions
KR20160132742A (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 KR1020150091585A priority Critical patent/KR102340796B1/ko
Priority to US15/152,067 priority patent/US10225226B2/en
Priority to EP16792972.8A priority patent/EP3295767B1/en
Priority to PCT/KR2016/004905 priority patent/WO2016182326A1/en
Publication of KR20160132742A publication Critical patent/KR20160132742A/ko
Application granted granted Critical
Publication of KR102340796B1 publication Critical patent/KR102340796B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/08Upper layer protocols
    • H04W80/10Upper layer protocols adapted for application session management, e.g. SIP [Session Initiation Protocol]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
    • H04M3/563User guidance or feature selection
    • H04M3/566User guidance or feature selection relating to a participants right to speak
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1822Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/226Delivery according to priorities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4038Arrangements for multi-party communication, e.g. for conferences with floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4046Arrangements for multi-party communication, e.g. for conferences with distributed floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/20Master-slave selection or change arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2207/00Type of exchange or network, i.e. telephonic medium, in which the telephonic communication takes place
    • H04M2207/18Type of exchange or network, i.e. telephonic medium, in which the telephonic communication takes place wireless networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Data Mining & Analysis (AREA)

Abstract

본 개시는 제 1 단말기가 제 1 단말기가 포함된 그룹 내의 다른 단말기들 각각에 콜 셋업 요청 메시지를 송신하고, 제 1 단말기가 송신된 콜 셋업 요청 메시지를 수신한 적어도 하나의 단말기와 세션을 설정하고, 그룹 내에서, 송신 권한을 갖는 단말기는 그룹 내의 단말기들 중 송신 권한을 요청한 단말기들의 우선 순위 정보에 기초하여 결정되는 단말기들의 통신 방법에 관한 것이다.

Description

단말기들의 통신 방법 및 그 단말기{Method and terminal for communicating}
일 실시예에 따른 단말기들의 통신 방법, 통신을 수행하는 단말기 및 단말기들의 통신 방법을 수행하는 프로그램이 기록된 기록매체에 관한 것이다.
현재 온 네트워크 상에서 세션 설정에 일반적으로 사용되고 있는 프로토콜은 Session Initiation Protocol (SIP)이다. 세션을 만들고자 하는 단말이 SIP 서버에게 INVITE 메시지를 전송하면 SIP 서버는 해당 세션과 관련 있는 단말들에게 INVITE 메시지를 전송한다. 세션에 참가하고자 하는 단말들은 200 OK 메시지로 응답한다.
On-Network상에서 발언권 제어에 사용되고 있는 방법은 Binary Floor Control Protocol (BFCP)와 Media Burst Control Protocol (MBCP)로서 중앙에 항상 존재하는 서버에서 발언권 요청을 처리하는 방식이다. Request에 대한 Grant 메시지를 받은 단말은 발언권을 가졌다고 볼 수 있다. 현재 널리 사용되고 있는 위 두 가지 기술은 모두 중앙 집중적인 방식으로, 모든 요청을 서버에게 보낸 후 서버가 이를 처리하는 방식으로 동작할 수 있다.
본 발명은 복수의 단말기들간에 통신을 수행하는 경우, 서버의 역할을 하는 단말기가 없이도 분산적으로 동작할 수 있는 통신 방법을 제공할 수 있다.
일 실시예에 따른 단말기들의 통신 방법은, 제 1 단말기가 상기 제 1 단말기가 포함된 그룹 내의 다른 단말기들 각각에 콜 셋업 요청 메시지를 송신하는 단계; 및 제 1 단말기가 송신된 콜 셋업 요청 메시지를 수신한 적어도 하나의 단말기와 세션을 설정하는 단계를 포함하고, 그룹 내에서, 송신 권한을 갖는 단말기는 그룹 내의 단말기들 중 송신 권한을 요청한 단말기들의 우선 순위 정보에 기초하여 결정된다.
일 실시예에 따른 단말기들의 통신 방법은, 기설정된 시간 동안, 다른 단말기의 콜 셋업 요청 메시지가 수신되는지 여부를 모니터링 하는 단계를 더 포함하고, 콜 셋업 요청 메시지를 송신하는 단계는, 기설정된 시간 동안 다른 콜 셋업 요청 메시지가 수신되지 않는 경우, 콜 셋업 요청 메시지를 송신한다.
일 실시예에 따른 단말기들의 통신 방법은, 제 1 단말기와 그룹 내의 다른 단말기들 간에 기설정된 세션이 존재하는 경우, 송신된 콜 셋업 요청 메시지를 수신한 적어도 하나의 다른 단말기로부터 기설정된 세션이 존재함을 알리는 메시지를 수신하는 단계를 더 포함한다.
일 실시예에 따른 단말기들의 통신 방법에 있어서, 단말기의 콜 셋업 요청 메시지를 송신하는 단계는, 제 1 단말기와 그룹의 식별 정보, 제 1 단말기의 식별 정보, 그룹에서의 제 1 단말기의 우선 순위 정보 및 제 1 단말기에서 발생된 난수 정보 중 적어도 하나를 포함하는 메시지를 송신하고, 세션을 설정하는 단계는, 콜 셋업 요청 메시지를 수신한 적어도 하나의 다른 단말기로부터 세션 설정을 수락(accept)하는 콜 셋업 수락 메시지를 수신하는 단계를 포함한다.
일 실시예에 따른 단말기들의 통신 방법에 있어서, 세션을 설정하는 단계는, 콜 셋업 요청 메시지를 송신한 이후에 개시되는 기설정된 버퍼링 시간 동안 다른 단말기의 콜 셋업 요청 메시지를 수신하는 단계; 및 콜 셋업 요청 메시지를 송신한 다른 단말기와 제 1 단말기의 우선 순위 정보에 기초하여 어느 하나를 선택하는 단계를 포함한다.
일 실시예에 따른 단말기들의 통신 방법에 있어서, 세션을 설정하는 단계는, 버퍼링 시간 이후에 개시되는 기설정된 기간 동안 수신된 그룹 내의 단말기의 콜 셋업 수락 메시지에 기초하여, 콜 셋업 요청 메시지를 송신한 다른 단말기와 제 1 단말기 중 어느 하나를 업데이트하는 단계를 포함한다.
일 실시예에 따른 단말기들의 통신 방법에 있어서, 세션을 설정하는 단계는, 버퍼링 시간 이후에 개시되는 랜덤 백오프 시간 동안 수신된 콜 셋업 수락 메시지의 정보와 상기 선택된 단말기에 관한 정보를 비교하는 단계; 및 수신된 콜 셋업 수락 메시지의 정보와 선택된 단말기에 관한 정보가 상이한 경우, 제 1 단말기의 콜 셋업 수락 메시지를 랜덤 백오프 기간 이후에 그룹 내의 다른 단말기들에 송신하는 단계를 포함한다.
일 실시예에 따른 단말기들의 통신 방법은 송신 권한을 요청하기 위한 송신 권한 요청 메시지를 그룹 내의 다른 단말기들에 각각 송신하는 단계; 그룹 내의 다른 단말기들 중 랜덤 백오프 기간이 가장 먼저 종료된 단말기로부터 송신 권한 수락 메시지를 수신하는 단계; 및 그룹 내의 다른 단말기들에 각각 데이터를 송신하는 단계를 더 포함한다.
일 실시예에 따른 단말기들의 통신 방법은, 그룹 내의 다른 단말기 중 제 2 단말기로부터 제 2 단말기의 송신 권한 요청 메시지를 수신하는 단계를 더 포함하고, 제 2 단말기의 우선 순위 보다 제 1 단말기의 우선 순위가 높은 경우, 제 1 단말기가 데이터 송신을 종료한 후에 제 2 단말기가 데이터를 송신한다.
일 실시예에 따른 단말기들의 통신 방법은, 그룹 내의 다른 단말기 중 제 3 단말기로부터 제 3 단말기의 송신 권한 요청 메시지를 수신하는 단계; 및 제 1 단말기의 우선 순위보다 상기 제 3 단말기의 우선 순위가 높은 경우, 제 1 단말기의 데이터의 송신을 중단하는 단계를 더 포함하고, 제 3 단말기는 송신 권한을 획득한다.
일 실시예에 따른 단말기들의 통신 방법에 있어서, 제 3 단말기로부터 제 3 단말기의 데이터를 수신하는 단계; 및 제 3 단말기로부터 데이터 송신이 종료됨을 알리는 송신 해제(release) 메시지를 수신함에 따라, 송신 권한을 획득하는 단계를 더 포함한다.
일 실시예에 따른 단말기들의 통신 방법은 송신 권한을 요청하기 위한 송신 권한 요청 메시지를 그룹 내의 다른 단말기들에 각각 송신하는 단계; 그룹 내의 다른 단말기들 중 송신 제어 단말기인 제 4 단말기로부터 송신 권한 수락 메시지를 수신하는 단계; 및 그룹 내의 다른 단말기들에 각각 데이터를 송신하는 단계를 더 포함한다.
일 실시예에 따른 단말기들의 통신 방법은, 제 3 단말기로부터 상기 제 3 단말기의 송신 권한 요청 메시지를 수신하는 단계; 제 1 단말기의 우선 순위 보다 제 3 단말기의 우선 순위가 더 높은 경우 송신 권한 취소(revoke) 메시지를 제 4 단말기로부터 수신하는 단계; 및 데이터의 송신을 중단하는 단계를 더 포함한다.
일 실시예에 따른 단말기들의 통신 방법은 그룹 내의 다른 단말기 중 제 2 단말기로부터 제 2 단말기의 송신 권한 요청 메시지를 수신하는 단계를 더 포함하고, 제 2 단말기의 우선 순위 보다 제 1 단말기의 우선 순위가 높은 경우, 제 2 단말기는 제 1 단말기의 데이터 송신이 종료된 후에 상기 제 4 단말기로부터 제 2 단말기에 대한 송신 권한 수락 메시지를 수신한다.
일 실시예에 따른 단말기들의 통신 방법은 송신 제어 단말기인 제 4 단말기로부터 송신 제어권 위임 요청 메시지를 수신하는 단계; 및 제 4 단말기에 송신 제어권 위임 수락 메시지를 송신하는 단계를 포함하고, 제 1 단말기는 송신 제어 단말기로 결정된다.
일 실시예에 따른 단말기들의 통신 방법에 있어서, 제 1 단말기는, 세션이 설정됨에 따라 콜 제어 단말기(controller)로 결정되고, 단말기들의 통신 방법은, 제 1 단말기의 통신 상태에 기초하여, 그룹 내의 다른 단말기들 중 어느 하나에 상기 콜 제어 단말기를 위임하기 위한 콜 제어권 위임 메시지를 송신하는 단계를 더 포함한다.
일 실시예에 따른 단말기들의 통신 방법은, 그룹 내의 다른 단말기들 중 제 2 단말기로부터 송신 권한 요청 메시지를 수신하는 단계; 및 제 2 단말기에 송신 권한 수락 메시지를 송신하는 단계; 및 제 2 단말기로부터 데이터를 수신하는 단계를 더 포함한다.
일 실시예에 따른 단말기들의 통신 방법은, 그룹 내의 다른 단말기들 중 제 3 단말기로부터 송신 권한 요청 메시지를 수신하는 단계; 및 제 2 단말기에 송신 권한 취소 메시지를 송신하는 단계; 및 제 3 단말기로부터 데이터를 수신하는 단계를 더 포함한다.
일 실시예에 따른 단말기들의 통신 방법은, 제 3 단말기의 데이터 송신이 종료됨에 따라 제 2 단말기로부터 제 2 단말기의 데이터를 수신하는 단계를 더 포함한다.
일 실시예에 따른 단말기들의 통신 방법은 제 2 단말기의 정보를 저장하는 단계; 제 3 단말기의 데이터 송신이 종료됨에 따라 제 2 단말기에 대한 송신 권한 수락 메시지를 송신하는 단계를 포함한다.
일 실시예에 따른 제 1 단말기는, 제 1 단말기가 포함된 그룹 내의 다른 단말기들 각각에 콜 셋업 요청 메시지를 송신하는 통신부; 및 제 1 단말기가 송신된 콜 셋업 요청 메시지를 수신한 적어도 하나의 단말기와 세션을 설정하는 제어부를 포함하고, 그룹 내에서, 송신 권한을 갖는 단말기는 상기 그룹 내의 단말기들 중 송신 권한을 요청한 단말기들의 우선 순위 정보에 기초하여 결정된다.
일 실시예에 따른 제 1 단말기에 있어서, 제어부는, 기설정된 시간 동안, 다른 단말기의 콜 셋업 요청 메시지가 수신되는지 여부를 모니터링하고, 통신부는, 기설정된 시간 동안 다른 콜 셋업 요청 메시지가 수신되지 않는 경우, 상기 콜 셋업 요청 메시지를 송신하는 제 1 단말기.
일 실시예에 따른 제 1 단말기에 있어서 통신부는, 제 1 단말기와 그룹 내의 다른 단말기들 간에 기설정된 세션이 존재하는 경우, 송신된 콜 셋업 요청 메시지를 수신한 적어도 하나의 다른 단말기로부터 기설정된 세션이 존재함을 알리는 메시지를 수신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 제 1 단말기와 그룹의 식별 정보, 제 1 단말기의 식별 정보, 그룹에서의 제 1 단말기의 우선 순위 정보 및 제 1 단말기에서 발생된 난수 정보 중 적어도 하나를 포함하는 메시지를 송신하고, 제어부는,콜 셋업 요청 메시지를 수신한 적어도 하나의 다른 단말기로부터 상기 세션 설정을 수락(accept)하는 콜 셋업 수락 메시지를 수신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 콜 셋업 요청 메시지를 송신한 이후에 개시되는 기설정된 버퍼링 시간 동안 다른 단말기의 콜 셋업 요청 메시지를 수신하고, 제어부는, 콜 셋업 요청 메시지를 송신한 다른 단말기와 제 1 단말기의 우선 순위 정보에 기초하여 어느 하나를 선택한다.
일 실시예에 따른 제 1 단말기에 있어서, 제어부는, 버퍼링 시간 이후에 개시되는 기설정된 기간 동안 수신된 그룹 내의 단말기의 콜 셋업 수락 메시지에 기초하여, 콜 셋업 요청 메시지를 송신한 다른 단말기와 제 1 단말기 중 어느 하나를 업데이트 한다.
일 실시예에 따른 제 1 단말기에 있어서, 제어부는, 버퍼링 시간 이후에 개시되는 랜덤 백오프 시간 동안 수신된 콜 셋업 수락 메시지의 정보와 선택된 단말기에 관한 정보를 비교하고, 통신부는, 수신된 콜 셋업 수락 메시지의 정보와 선택된 단말기에 관한 정보가 상이한 경우, 제 1 단말기의 콜 셋업 수락 메시지를 랜덤 백오프 기간 이후에 그룹 내의 다른 단말기들에 송신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 송신 권한을 요청하기 위한 송신 권한 요청 메시지를 그룹 내의 다른 단말기들에 각각 송신하고, 그룹 내의 다른 단말기들 중 랜덤 백오프 기간이 가장 먼저 종료된 단말기로부터 송신 권한 수락 메시지를 수신하고, 그룹 내의 다른 단말기들에 각각 데이터를 송신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 그룹 내의 다른 단말기 중 제 2 단말기로부터 제 2 단말기의 송신 권한 요청 메시지를 수신하고, 제 2 단말기의 우선 순위 보다 상기 제 1 단말기의 우선 순위가 높은 경우, 제 1 단말기가 데이터 송신을 종료한 후에 제 2 단말기가 데이터를 송신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 그룹 내의 다른 단말기 중 제 3 단말기로부터 제 3 단말기의 송신 권한 요청 메시지를 수신하고, 제 1 단말기의 우선 순위보다 제 3 단말기의 우선 순위가 높은 경우, 제 1 단말기의 데이터의 송신을 중단하며, 제 3 단말기는 송신 권한을 획득한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 제 3 단말기로부터 제 3 단말기의 데이터를 수신하고, 제 1 단말기는, 제 3 단말기로부터 데이터 송신이 종료됨을 알리는 송신 해제(release) 메시지를 수신함에 따라, 송신 권한을 획득한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 송신 권한을 요청하기 위한 송신 권한 요청 메시지를 그룹 내의 다른 단말기들에 각각 송신하고, 그룹 내의 다른 단말기들 중 송신 제어 단말기인 제 4 단말기로부터 송신 권한 수락 메시지를 수신하고, 그룹 내의 다른 단말기들에 각각 데이터를 송신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 제 3 단말기로부터 제 3 단말기의 송신 권한 요청 메시지를 수신하고, 제 1 단말기의 우선 순위 보다 제 3 단말기의 우선 순위가 더 높은 경우 송신 권한 폐지(revoke) 메시지를 제 4 단말기로부터 수신하며, 데이터의 송신을 중단한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 그룹 내의 다른 단말기 중 제 2 단말기로부터 제 2 단말기의 송신 권한 요청 메시지를 수신하고, 제 2 단말기의 우선 순위 보다 제 1 단말기의 우선 순위가 높은 경우, 제 2 단말기는 제 1 단말기의 데이터 송신이 종료된 후에 제 4 단말기로부터 제 2 단말기에 대한 송신 권한 수락 메시지를 수신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 송신 제어 단말기인 제 4 단말기로부터 송신 제어권 위임 요청 메시지를 수신하고, 제 4 단말기에 송신 제어권 위임 수락 메시지를 송신하며, 제 1 단말기는, 송신 제어 단말기로 결정된다.
일 실시예에 따른 제 1 단말기에 있어서, 제 1 단말기는, 세션이 설정됨에 따라 콜 제어 단말기(controller)로 결정되고, 통신부는, 제 1 단말기의 통신 상태에 기초하여, 그룹 내의 다른 단말기들 중 어느 하나에 상기 콜 제어 단말기를 위임하기 위한 콜 제어권 위임 메시지를 송신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 그룹 내의 다른 단말기들 중 제 2 단말기로부터 송신 권한 요청 메시지를 수신하고, 제 2 단말기에 송신 권한 수락 메시지를 송신하며, 제 2 단말기로부터 데이터를 수신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 그룹 내의 다른 단말기들 중 제 3 단말기로부터 송신 권한 요청 메시지를 수신하고, 제 2 단말기에 송신 권한 취소 메시지를 송신하며, 제 3 단말기로부터 데이터를 수신한다.
일 실시예에 따른 제 1 단말기에 있어서, 통신부는, 제 3 단말기의 데이터 송신이 종료됨에 따라 제 2 단말기로부터 제 2 단말기의 데이터를 수신한다.
일 실시예에 따른 제 1 단말기에 있어서, 제 2 단말기의 정보를 저장하는 메모리를 더 포함하고, 통신부는, 제 3 단말기의 데이터 송신이 종료됨에 따라 제 2 단말기에 대한 송신 권한 수락 메시지를 송신한다.
도 1은 일 실시예에 따른 통신 시스템을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 제 1 단말기가 그룹 내의 다른 단말기들과 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
도 3은 일 실시예에 따른 제 2 단말기가 그룹 내의 다른 단말기와 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
도 4a 는 일 실시예에 따라, 그룹 내의 단말기들이 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
도 4b 는 다른 실시예에 따라, 그룹 내의 단말기들이 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
도 5는 일 실시예에 따른 제 1 단말기가 그룹 내의 다른 단말기들로부터 콜 셋업 메시지가 수신되는지 여부를 모니터링 하여 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
도 6은 일 실시예에 따라 제 1 단말기가 그룹 내의 다른 단말기들과 기설정된 세션이 존재하는지 여부에 기초하여 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
도 7은 일 실시예에 따라 제 1 단말기가 그룹 내의 다른 단말기들과 기설정된 세션이 존재하는지 여부에 기초하여 세션을 설정하는 방법을 보다 상세하게 설명하기 위한 흐름도이다.
도 8은 다른 실시예에 따라 제 1 단말기가 그룹 내의 다른 단말기들과 세션을 설정하는 방법을 보다 상세하게 설명하기 위한 흐름도이다.
도 9는 다른 실시예에 따라 제 1 단말기가 그룹 내의 다른 단말기들과 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
도 10은 일 실시예에 따라 그룹 내의 복수의 단말기들 간에 레이스 컨디션에 기초하여 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
도 11는 본 발명의 일 실시예에 따른 그룹 내의 복수의 단말기들 간에 레이스 컨디션에 기초하여 세션을 설정하는 방법을 보다 상세하게 설명하기 위한 흐름도이다.
도 12는 일 실시예에 따라, 송신 제어 단말기가 존재하지 않는 통신 시스템에서 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 13은 일 실시예에 따라 그룹 내에서 송신 권한 요청 메시지가 발생됨에 따라 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 14는 일 실시예에 따라 그룹 내에서 복수의 송신 권한 요청 메시지가 발생됨에 따라 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 15는 일 실시예에 따른 통신 시스템에서 복수의 단말기들 간에 충돌이 발생한 경우, 어느 하나의 단말기를 결정하기 위한 방법을 설명하기 위한 다이어그램이다.
도 16은 일 실시예에 따른 제 1 단말기의 데이터 송신 중에, 제 1 단말기 보다 우선 순위가 높은 단말기로부터 송신 권한 요청 메시지를 수신하는 경우, 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 17은 일 실시예에 따른 제 1 단말기의 데이터 송신 중에, 제 1 단말기 보다 우선 순위가 낮은 단말기로부터 송신 권한 요청 메시지를 수신하는 경우, 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 18은 일 실시예에 따른 제 1 단말기가 대기 리스트를 생성하지 않는 경우에 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 19는 일 실시예에 따라, 그룹 내의 단말기들이 임시 송신 제어권을 획득하는 방법을 설명하기 위한 흐름도이다.
도 20은 다른 실시예에 따라, 그룹 내의 단말기들이 임시 송신 제어권을 획득하는 방법을 설명하기 위한 흐름도이다.
도 21은 일 실시예에 따라 송신 제어 단말기인 제 1 단말기가 그룹 내의 복수의 단말기들 중에서 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 22는 일 실시예에 따른 송신 제어 단말기가 존재하는 그룹에서, 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 23은 일 실시예에 따른 송신 제어 단말기가 존재하는 그룹에서, 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 24는 일 실시예에 따라, 통신 시스템에 콜 제어 단말기가 존재하는 경우의 데이터 송수신 방법을 설명하기 위한 흐름도이다.
도 25는 다른 실시예에 따라, 통신 시스템에 콜 제어 단말기가 존재하는 경우의 데이터 송수신 방법을 설명하기 위한 흐름도이다.
도 26는 다른 실시예에 따라, 통신 시스템에 콜 제어 단말기가 존재하는 경우의 데이터 송수신 방법을 설명하기 위한 흐름도이다.
도 27은 일 실시예에 따라 그룹 내의 복수의 단말기들(110, 120, 130, 140)에서 콜 제어 단말기가 변경되는 방법을 설명하기 위한 흐름도이다.
도 28 및 29는 일 실시예에 따른 단말기를 도시한 블록도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 일 실시예에 따른 통신 시스템(100)을 설명하기 위한 도면이다.
일 실시예에 따른 통신 시스템(100)은 복수의 단말기들(110, 120, 130, 140)을 포함할 수 있다.
도 1에 도시된 통신 시스템(100)에는 본 실시예와 관련된 구성 요소들만이 도시되어 있다. 따라서, 도 1에 도시된 구성 요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있다. 예를 들어, 도 1에 도시된 통신 시스템(100)은 복수의 단말기들(110, 120, 130, 140) 이외의 다른 단말기들을 더 포함할 수 있다.
도 1을 참고하면, 통신 시스템(100)에서 복수의 단말기들(110, 120, 130, 140)간에는 데이터를 송수신하기 위한 세션이 설정될 수 있다. 여기에서, 복수의 단말기들(110, 120, 130, 140)은 통신 시스템(100) 내에서 기설정된 적어도 하나의 그룹 중 어느 하나의 그룹에 포함되는 단말기들일 수 있다.
일 실시예에 따른 복수의 단말기들(110, 120, 130) 중 적어도 하나의 단말기(예를 들어, 110)는 통신 시스템(100) 내의 다른 단말기들(120, 130, 140)과 세션을 설정하기 위한 세션 설정 프로토콜을 개시할 수 있다. 예를 들어, 제 1 단말기(110)는 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)에 각각 콜 셋업 메시지를 송신함으로써, 세션 설정 프로토콜을 개시할 수 있다. 이하에서, 콜 셋업 메시지를 송신한 단말기를 콜 개시 단말기로 설명하도록 한다.
일 실시예에 따른 제 1 단말기(110)는 콜 셋업 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다. 콜 셋업 메시지를 수신한 제 2 단말기(120)는 제 1 단말기(110)에 의해 개시된 세션을 수락(accept)할 지 여부를 결정할 수 있다.
예를 들어, 제 2 단말기(120)는 기설정된 세션이 존재하는지 여부에 기초하여 제 1 단말기(110)에 의해 개시된 세션을 수락할 지 여부를 결정할 수 있다. 제 2 단말기(120)는 기설정된 세션이 존재하는 경우, 제 1 단말기(110)에 의해 개시된 세션을 수락하지 않을 수 있다.
다른 예에 따라, 콜 셋업 메시지를 수신한 제 2 단말기(120)는 통신 시스템(100) 내에서 콜 셋업 메시지를 송신한 다른 단말기가 존재하는지 여부에 기초하여 제 1 단말기(110)에 의해 개시된 세션을 수락할 지 여부를 결정할 수 있다. 예를 들어, 제 2 단말기(120)가 제 1 단말기(110) 및 제 3 단말기(130)로부터 각각 콜 셋업 메시지를 수신한 경우, 제 2 단말기(120)는 제 1 단말기(110) 및 제 3 단말기(130) 중 기설정된 우선 순위가 더 높은 단말기에 의해 개시된 세션을 수락할 수 있다.
일 실시예에 따른 제 2 단말기(120)는 제 1 단말기(110)에 의해 개시된 세션을 수락하기로 결정한 경우, 그룹 내의 다른 단말기들(110, 130, 140) 각각에 제 1 단말기(110)와의 세션 설정을 수락함을 알리는 콜 셋업 수락 메시지를 송신할 수 있다. 다만, 이는 일 실시예일 뿐, 다른 예에 따라, 제 2 단말기(120)는 그룹 내의 다른 단말기들(110, 130, 140) 각각에 별도의 콜 셋업 수락 메시지를 송신하지 않고, 세션 설정을 수락할 수도 있다.
다른 예에 따라 제 2 단말기(120)는 세션을 설정하지 않을 경우, 그룹 내의 다른 단말기들(110, 130, 140) 각각에 세션 설정이 수락되지 않음을 나타내는 콜 셋업 거절 메시지를 송신할 수도 있다. 예를 들어, 제 2 단말기(120)와 제 1 단말기(110) 간에 기설정된 세션이 존재하는 경우, 제 2 단말기(120)는 콜 셋업 거절 메시지를 제 1 단말기(110)에 송신할 수 있다. 이에 대해서는 도 6을 참조하여 보다 구체적으로 후술하도록 한다.
한편, 제 3 단말기(130) 및 제 4 단말기(140)는 제 2 단말기(120)와 동일한 방식으로 동작할 수 있다.
일 실시예에 따른, 통신 시스템(100)에서 세션이 설정된 경우, 그룹 내의 단말기들(110. 120. 130. 140) 간에 세션이 설정됨을 알리기 위해, 그룹 내의 임의의 단말기가 주기적으로 콜 셋업 메시지를 송신할 수 있다.
다른 실시예에 따라, 그룹 내에 콜 제어 단말기(call controller)가 존재하는 경우, 콜 제어 단말기는 그룹 내의 다른 단말기들(예를 들어, 120, 130, 140)에 세션이 설정됨을 알리는 콜 셋업 메시지를 주기적으로 송신할 수 있다.
또한, 콜 제어 단말기는 통신 시스템(100)에서 데이터를 송신할 수 있는 단말기(이하, 송신 권한을 갖는 단말기)를 결정하는 송신 제어 단말기(floor arbitrator)의 역할을 수행할 수 있다. 다만, 이는 일 실시예일 뿐, 통신 시스템(100)의 콜 제어 단말기와 송신 제어 단말기가 항상 동일한 단말기인 것은 아니다.
예를 들어, 콜 제어 단말기와 송신 제어 단말기가 동일한 경우, 콜 제어 단말기로 결정된 제 1 단말기(110)는 송신 권한을 갖는 단말기를 결정할 수 있다. 예를 들어, 제 1 단말기(110)는 제 2 단말기(120) 및 제 3 단말기(130)로부터 송신 권한 요청 메시지를 수신한 경우, 제 2 단말기(120) 및 제 3 단말기(130)의 기설정된 우선 순위에 기초하여 송신 권한을 갖는 단말기를 결정할 수 있다.
다른 실시예에 따라, 통신 시스템(100)에서 콜 제어 단말기와 송신 제어 단말기는 상이할 수도 있다. 예를 들어, 송신 제어 단말기는 그룹 내에서 송수신되는 콜 셋업 메시지에 포함된 단말기들의 정보에 기초하여 결정될 수 있다. 다른 예에 따라, 송신 제어 단말기는 그룹 내에서 송수신되는 이웃 탐색 메시지에 포함된 단말기들의 정보에 기초하여 결정될 수 있다. 다만, 이는 일 실시예일 뿐, 송신 제어 단말기를 결정하는 방법이 이에 한정되는 것은 아니다. 예를 들어, 송신 제어 단말기는 그룹 내에서 미리 설정될 수 있다.
한편, 다른 예에 따라, 통신 시스템(100)에서 송신 제어 단말기가 존재하지 않을 수 있다. 송신 제어 단말기가 없는 경우, 그룹 내의 단말기들(110, 120, 130, 140)은 송신 권한을 제어하는데 필요한 메시지들을 각각 기설정된 프로토콜에 따라 송신함으로써, 통신 시스템(100)내의 데이터 송수신을 제어할 수 있다. 예를 들어, 단말기들(110, 120, 130, 140) 중 랜덤 백오프 시간이 가장 먼저 종료된 단말기가 송신 권한을 제어하는데 필요한 메시지들을 송신할 수 있다. 송신 권한을 제어하는데 필요한 메시지에는 송신 권한 폐지(revoke) 메시지, 송신 권한 해제(release) 메시지, 송신 권한 수락(accept) 메시지, 송신 대기 요청(wait request)메시지 및 송신 권한 허여(grant) 메시지 등이 있을 수 있으나 이는 일 실시예일 뿐, 송신 권한을 제어하는데 필요한 메시지가 이에 한정되는 것은 아니다.
또한, 일 실시예에 따라 콜 제어 단말기가 존재하지 않는 통신 시스템(100)의 단말기들(110, 120, 130, 140) 중 어느 하나는 송신 제어 단말기일 수 있다. 여기에서 송신 제어 단말기는 콜 제어 단말기가 존재하는 통신 시스템에서 전술한 바와 대응되게 동작할 수 있다.
또한, 다른 실시예에 따라, 통신 시스템(100)에는 콜 제어 단말기 및 송신 제어 단말기가 모두 존재하지 않을 수 있다. 이러한 경우, 그룹 내의 단말기들(110, 120, 130, 140)은 송신 권한을 제어하는데 필요한 메시지들을 각각 기설정된 프로토콜에 따라 송신함으로써, 통신 시스템(100)내의 데이터 송수신을 제어할 수 있다. 이는 콜 제어 단말기가 존재하는 실시예에서, 송신 제어 단말기가 존재하지 않는 경우에 대한 설명과 동일할 수 있다.
도 2는 일 실시예에 따른 제 1 단말기(110)가 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S210에서, 제 1 단말기(110)는 복수의 다른 단말기들(120, 130, 140) 에 각각 콜 셋업 메시지를 송신한다.
일 실시예에 따른 제 1 단말기(110)는 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)에 각각 콜 셋업 메시지를 멀티캐스팅(multicasting) 할 수 있다. 다른 실시예에 따라, 제 1 단말기(110)는 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)에 각각 콜 셋업 메시지를 유니캐스팅(unicasting) 할 수 있다. 여기에서, 콜 셋업 메시지는 주기적으로 멀티캐스팅 또는 유니캐스팅 될 수 있다. 한편, 콜 셋업 메시지는 콜 셋업 메시지에 포함된 정보에 따라 콜 셋업 메시지 및 콜 셋업 메시지 중 어느 하나일 수 있다.
일 실시예에 따른, 콜 셋업 메시지에는 데이터를 송수신하는데 이용되는 포트 정보, 데이터의 코덱 정보, 세션 설정에 이용되는 암호화 키 정보, 통신 보안에 이용되는 비밀키 정보 및 데이터의 송수신을 제어하는 이용되는 포트 정보 등이 포함될 수 있으나 이는 일 실시예일 뿐, 콜 셋업 메시지에 포함되는 정보가 이에 한정되는 것은 아니다. 다른 예에 따라 콜 셋업 메시지에는 제 1 단말기(110)가 포함되는 그룹의 식별 정보, 제 1 단말기(110)의 식별 정보, 그룹 내에서 제 1 단말기(110)의 우선 순위 정보 및 제 1 단말기(110)에서 발생된 난수 정보 등이 포함될 수도 있다. 난수 정보는 제 1 단말기(110)가 콜 셋업 메시지를 송신할 때마다 생성될 수 있다. 난수 정보는 그룹 내에서, 복수의 단말기들 간에 우선 순위가 동일한 경우, 어느 하나의 단말기를 선택하는데 이용될 수 있다.
일 실시예에 따른 콜 셋업 메시지에는 전술한 정보들의 적어도 일부가 포함될 수 있다. 다만, 이는 일 실시예일 뿐, 콜 셋업 메시지에는 그룹 내의 단말기들 간에 세션 설정에 필요한 다른 정보가 더 포함될 수 있다.
단계 S220에서, 제 1 단말기(110)는 송신된 콜 셋업 메시지를 수신한 적어도 하나의 단말기(120, 130, 140)와 세션을 설정한다.
일 실시예에 따른 제 1 단말기(110)는 송신된 콜 셋업 메시지에 포함된 포트 정보, 암호화 키 정보 및 코덱 정보 등에 기초하여, 콜 셋업 메시지를 수신한 적어도 하나의 단말기(120, 130, 140)와 세션을 설정할 수 있다.
다른 실시예에 따라, 제 1 단말기(110)는 송신된 콜 셋업 메시지에 대한 적어도 하나의 단말기(120, 130, 140)의 응답에 기초하여 세션을 설정할 수 있다.
예를 들어, 제 1 단말기(110)는 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 중 적어도 하나로부터 콜 셋업 수락 메시지를 수신할 수 있다. 제 1 단말기(110)는 콜 셋업 수락 메시지를 수신함에 따라, 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)와 각각 세션을 설정할 수 있다.
다른 예에 따라, 제 1 단말기(110)는 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 중 적어도 하나로부터 기설정된 세션이 존재함을 알리는 콜 셋업 거절 메시지를 수신할 수도 있다. 제 1 단말기(110)가 콜 셋업 거절 메시지를 수신하는 경우, 제 1 단말기(110)에 의해 개시된 세션이 설정되지 않을 수 있다.
한편, 일 실시예에 따라 제 1 단말기(110)는 세션이 설정된 이후, 설정된 세션에 대해 알리는 메시지를 주기적으로 제 2 단말기(120), 제 3 단말기(130), 및 제 4 단말기(140)에 각각 송신할 수 있다. 다만, 이는 일 실시예일 뿐, 그룹 내의 제 1 단말기(110), 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 중 임의의 단말이 주기적으로 설정된 세션에 대해 알리는 메시지를 그룹 내의 다른 단말기들에게 송신할 수 있다. 또한, 그룹 내의 단말기들(110, 120, 130, 140) 중에서 설정된 세션에 대해 알리는 메시지를 송신하는 단말기가 어느 하나의 단말기로 한정되지 않을 수 있다.
일 실시예에 따른 통신 시스템(100)에서 세션이 설정된 단말기들(110, 120, 130, 140)의 우선 순위 정보에 기초하여 송신 권한을 갖는 단말기가 결정될 수 있다.
일 실시예에 따른 제 1 단말기(110)는 세션이 설정됨에 따라, 콜 제어 단말기로 결정될 수 있다. 또한, 제 1 단말기(110)는 송신 제어 단말기로서 세션이 설정된 단말기들(110, 120, 130, 140) 간의 송신 권한을 제어할 수 있다. 다만, 이는 일 실시예일 뿐, 그룹 내의 다른 단말기가 송신 제어 단말기로 결정될 수 있다. 또 다른 예에 따라, 그룹 내에 송신 제어 단말기가 존재하지 않을 수 있다.
한편, 통신 시스템(100) 내에서 데이터 및 메시지는 복수의 단말기들(110, 120, 130, 140) 간에 멀티캐스트 및 유니캐스트 중 적어도 하나의 방식에 따라 송수신될 수 있으나. 이는 일 실시예일 뿐, 데이터가 송수신되는 방식이 이에 한정되는 것은 아니다.
도 3은 일 실시예에 따른 제 2 단말기(120)가 그룹 내의 다른 단말기(예를 들어, 110)와 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S310에서, 제 2 단말기(120)는 제 2 단말기(120)가 포함된 그룹 내의 다른 단말기들(110, 130, 140) 중 적어도 하나의 단말기(예를 들어, 110)로부터 콜 셋업 메시지를 수신한다. 예를 들어, 제 2 단말기(120)는 제 1 단말기(110)로부터 콜 셋업 메시지를 수신할 수 있다. 또한, 다른 예에 따라 제 2 단말기(120)는 2 개 이상의 단말기들(예를 들어, 110, 130)로부터 콜 셋업 메시지를 수신할 수 있다.
단계 S320에서, 제 2 단말기(120)는 제 2 단말기(120)에 기설정된 세션이 존재하는지 여부 및 콜 셋업 메시지에 포함된 우선 순위 정보 중 적어도 하나에 기초하여 적어도 하나의 단말기 중 어느 하나를 선택할 수 있다.
일 실시예에 따른 제 2 단말기(120)는 제 1 단말기(110)로부터 콜 셋업 메시지를 수신함에 따라, 기설정된 세션이 존재하는지 여부를 확인할 수 있다. 제 2 단말기(120)는 기설정된 세션이 존재하지 않는 경우, 제 1 단말기(110)와 세션을 설정할 수 있다.
다른 예에 따라, 제 2 단말기(120)는 기설정된 세션이 존재하는 경우, 제 1 단말기(110)에 기설정된 세션이 존재함을 알리는 콜 셋업 거절 메시지를 송신할 수 있다. 제 2 단말기(120)는 기설정된 범위 내에서 임의의 값을 선택한 후, 콜 셋업 거절 메시지를 수신한 시점으로부터 선택된 값에 대응되는 시간 이후에 제 1 단말기(110)에 콜 셋업 거절 메시지를 송신할 수 있다.
한편, 제 2 단말기(120)는 제 3 단말기(130) 및 제 4 단말기(140) 중 적어도 하나로부터 수신한 콜 셋업 거절 메시지와 제 2 단말기(120)가 송신하고자 하는 콜 셋업 거절 메시지가 동일한 경우에는 제 1 단말기(110)에 콜 셋업 거절 메시지를 송신하지 않을 수 있다. 이에 대해서는 도 4를 참조하여 보다 구체적으로 후술하도록 한다.
다른 실시예에 따라 제 2 단말기(120)는 제 1 단말기(110) 및 3 단말기(130)로부터 콜 셋업 메시지를 수신한 경우, 제 1 단말기(110)와 제 3 단말기(130)의 우선 순위를 비교하여, 어느 하나의 단말기를 선택할 수 있다. 여기에서, 우선 순위는 통신 시스템(100) 내의 복수의 단말기들(110, 120, 130, 140)간에 기설정될 수 있다. 예를 들어, 제 1 단말기(110)의 우선 순위가 제 3 단말기(130)의 우선 순위 보다 높은 경우, 제 2 단말기(120)는 제 1 단말기(110)를 선택할 수 있다. 이에 대해서는 도 7을 참조하여 보다 구체적으로 후술하도록 한다.
한편, 전술한 예는 우선 순위 정보의 일 예일 뿐, 제 2 단말기(120)는 제 1 단말기(110) 및 제 3 단말기(130)의 콜 셋업 메시지가 수신된 시간에 기초하여, 어느 하나의 단말기를 선택할 수 있다.
일 실시예에 따른 제 2 단말기(120)는 기설정된 버퍼링 기간 동안 수신된 콜 셋업 메시지에 기초하여, 어느 하나의 단말기를 선택할 수 있다. 예를 들어, 제 2 단말기는 기설정된 버퍼링 기간 동안 제 1 단말기(110)의 콜 셋업 메시지를 수신한 경우, 제 1 단말기(110)를 선택할 수 있다.
한편, 일 실시예에 따른 통신 시스템(100)에서는 통신 상황 등으로 인하여 버퍼링 기간 동안 일부 콜 셋업 메시지가 수신되지 못하는 상황에 대비하여, 버퍼링 기간 이후에 수신된 콜 셋업 수락 메시지를 기초하여 선택한 단말기를 변경할 수 있다. 예를 들어, 제 2 단말기(120)는 버퍼링 기간이 종료된 이후, 랜덤 백오프 기간 및 업데이트 기간 동안 수신된 콜 셋업 수락 메시지에 기초하여 선택한 단말기가 적절한지 여부를 판단할 수 있다. 여기에서, 콜 셋업 수락 메시지는 그룹 내의 단말기들(110, 120, 130, 140) 별로, 설정된 랜덤 백오프 기간이 종료된 후 송신될 수 있다. 일 실시예에 따라 랜덤 백오프 기간이 가장 먼저 끝난 단말기에서 송신된 콜 셋업 수락 메시지와 제 2 단말기(120)가 송신하고자 했던 콜 셋업 수락 메시지가 동일한 경우, 제 2 단말기(120)는 콜 셋업 수락 메시지를 송신하지 않을 수 있다.
제 2 단말기(120)는 수신된 콜 셋업 수락 메시지를 기초로 판단한 결과, 수신하지 못한 콜 셋업 메시지가 존재하는 경우, 단말기를 다시 선택할 수 있다. 예를 들어, 제 3 콜 셋업 메시지가 수신되지 못한 경우, 제 2 단말기(120)는 랜덤 백오프 기간 및 업데이트 기간 동안 수신된 다른 단말기의 콜 셋업 수락 메시지에 기초하여, 제 3 단말기를 다시 선택할 수 있다.
단계 S330에서, 제 2 단말기(120)는 선택된 단말기와 세션을 설정할 수 있다. 콜 셋업 메시지에 기초하여 세션을 설정할 수 있다. 예를 들어, 제 2 단말기(120)는 그룹 내에서 콜 셋업 메시지를 송신한 단말기들(110, 130) 중 제 1 단말기(110)를 선택한 경우, 제 1 단말기(110)로부터 수신한 콜 셋업 메시지에 기초하여 세션을 설정할 수 있다.
일 실시예에 따른 제 2 단말기(120)는 세션이 설정된 이후에, 그룹 내의 다른 단말기들(110, 130, 140)에 각각 송신 권한 요청 메시지를 전송할 수 있다.
일 실시예에 따른 제 2 단말기(120)는 송신 권한을 획득한 경우, 통신 시스템 내의 다른 단말기들(110, 130, 140)에 각각 데이터를 송신할 수 있다. 여기에서, 제 2 단말기(120)가 송신 권한을 획득한 방법에 대해서는 도 1을 참조하여 전술한 바와 대응될 수 있다.
도 4a는 일 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140)이 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S410에서, 제 1 단말기(110)는 콜 셋업 메시지를 그룹 내의 다른 단말기들(120, 130)에 각각 송신할 수 있다.
단계 S420에서, 제 2 단말기(120) 및 제 3 단말기(130)는 제 1 단말기(110)로부터 수신한 콜 셋업 메시지에 기초하여, 미디어 통로(media plane)에 관한 파라미터를 설정할 수 있다.
단계 S430에서, 제 2 단말기(120)는 그룹 내의 다른 단말기들(110, 130)에 응답 메시지를 송신할 수 있다.
단계 S440에서, 제 3 단말기(130)는 그룹 내의 다른 단말기들(110, 120)에 응답 메시지를 송신할 수 있다.
한편, 단계 S430 및 단계 S440은 그 순서가 변경되는 것 또한 가능할 수 있다.
단계 S450에서, 그룹 내의 단말기들(110, 120, 130)은 세션이 설정됨에 따라 세션 참여 단말기들을 확인할 수 있다.
도 4b 는 다른 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140)이 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S420에서, 제 1 단말기(110), 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 간에는 세션이 설정될 수 있다.
단계 S440에서, 제 1 단말기(110)는 세션의 존재를 알리기 위해 콜 셋업 메시지를 주기적으로 송신할 수 있다.
단계 S460에서, 제 1 단말기(110), 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 간의 미디어 플레인 상에서 기설정된 시간 동안 콜이 발생되지 않을 수 있다. 예를 들어, 제 1 단말기(110), 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 간의 미디어 포트에서 송수신되는 데이터가 기설정된 시간 동안 존재하지 않을 수 있다.
단계 S480에서, 제 1 단말기(110), 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 간의 세션이 종료될 수 있다.
도 5는 일 실시예에 따른 제 1 단말기(110)가 그룹 내의 다른 단말기들(120, 130, 140)로부터 콜 셋업 메시지가 수신되는지 여부를 모니터링 하여 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S510에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)로부터 콜 셋업 메시지가 수신되는지 여부를 모니터링할 수 있다. 예를 들어, 제 1 단말기(110)는 수신한 콜 셋업 메시지에 포함된 그룹 정보를 이용하여 그룹 내의 다른 단말기들(120, 130, 140)로부터 콜 셋업 메시지가 수신되는지 여부를 모니터링 할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 중 적어도 하나로부터 기설정된 시간 동안 콜 셋업 메시지가 수신되는지 여부를 모니터링 할 수 있다. 예를 들어, 그룹 내의 복수의 단말기들(110, 120, 130, 140) 간에는 콜 셋업 메시지가 송수신되는 포트가 미리 설정될 수 있다. 제 1 단말기(110)는 기설정된 포트를 통해 수신되는 콜 셋업 메시지가 존재하는지 여부를 기설정된 시간 동안 모니터링 할 수 있다.
단계 S520에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 각각에 콜 셋업 메시지를 송신할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)에 각각 콜 셋업 메시지를 멀티캐스트 및 유니캐스트 중 적어도 하나의 방법에 따라 송신할 수 있다. 또한, 콜 셋업 메시지는 제 1 단말기(110)로부터 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)에 각각 주기적으로 송신될 수 있다.
한편, 일 실시예에 따른 콜 셋업 메시지에는 데이터를 송수신하는데 이용되는 포트 정보, 데이터의 코덱 정보, 세션 설정에 이용되는 암호화 키 정보 및 데이터의 송수신을 제어하는 이용되는 포트 정보 등이 포함될 수 있다. 다른 예에 따라 콜 셋업 메시지에는 제 1 단말기(110)가 포함되는 그룹의 식별 정보, 제 1 단말기(110)의 식별 정보, 그룹 내에서 제 1 단말기(110)의 우선 순위 정보 및 제 1 단말기(110)에서 발생된 난수 정보 등이 포함될 수도 있다.
단계 S530에서 제 1 단말기(110)는 송신된 콜 셋업 메시지를 수신한 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 콜 셋업 메시지에 포함된 정보에 따라 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다. 또한, 제 1 단말기(110)는 세션이 유지되는 동안 주기적으로 세션이 설정되었음을 알리는 메시지를 그룹 내의 다른 단말기들(120, 130, 140) 각각에 송신할 수 있다. 예를 들어, 제 1 단말기(110)는 세션이 유지되는 동안 주기적으로 콜 셋업 메시지를 그룹 내의 다른 단말기들(120, 130, 140) 각각에 송신할 수 있다. 다만, 이는 일 실시예일 뿐, 세션이 설정된 이후에는 세션이 설정되었음을 알리는 메시지가 그룹 내의 다른 단말기들(120, 130, 140) 중 어느 하나로부터 주기적으로 송신될 수 있다. 이에 대해서는, 도 24를 참조하여 구체적으로 후술하도록 한다.
한편, 일 실시예에 따른 제 1 단말기(110)는 콜 셋업 메시지에 포함된 코덱 정보 및 포트 정보를 이용하여, 세션이 설정된 그룹 내의 다른 단말기들(120, 130, 140)과 데이터를 송수신할 수 있다.
단계 S540에서, 제 1 단말기(110)는 수신한 다른 단말기의 콜 셋업 메시지에 기초하여 세션을 설정할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 기설정된 시간 동안 콜 셋업 메시지를 다른 단말기로부터 수신함에 따라, 수신한 콜 셋업 메시지에 포함된 포트 번호, 미디어 코텍 번호, 암호화 키 정보 등 세션 설정에 필요한 다양한 파라미터들에 따라 기설정된 세션에 참여할 수 있다.
도 6은 일 실시예에 따라 제 1 단말기(110)가 그룹 내의 다른 단말기들(120, 130, 140)과 기설정된 세션이 존재하는지 여부에 기초하여 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S610에서, 제 1 단말기(110), 제 2 단말기(120) 및 제 3 단말기(130) 간에는 세션이 설정될 수 있다.
단계 S620에서, 제 1 단말기(110)는 세션의 존재를 알리기 위해 콜 셋업 메시지를 주기적으로 송신할 수 있다.
단계 S630에서, 제 4 단말기(140)가 입장할 수 있다.
단계 S640에서, 제 2 단말기(120)는 세션의 존재를 알리기 위해 콜 셋업 메시지를 주기적으로 송신할 수 있다. 한편, 단계 S730에서, 입장한 제 4 단말기(140)는 제 2 단말기(120)가 송신한 콜 셋업 메시지를 수신할 수 있다.
단계 S650에서, 제 4 단말기(140)는 제 2 단말기(120)로부터 수신한 콜 셋업 메시지에 기초하여 세션 참여를 위한 파라미터를 설정할 수 있다.
단계 S660에서, 제 4 단말기(140)는 다른 단말기들(110, 120, 130)에 응답 메시지를 송신할 수 있다. 제 4 단말기(140)는 제 1 단말기(110), 제 2 단말기(120) 및 제 3 단말기(130) 간에 설정된 세션에 참여할 수 있다.
단계 S670에서, 제 3 단말기(130)는 세션의 존재를 알리기 위해 콜 셋업 메시지를 주기적으로 송신할 수 있다.
도 7은 일 실시예에 따라 제 1 단말기(110)가 그룹 내의 다른 단말기들(120, 130, 140)과 기설정된 세션이 존재하는지 여부에 기초하여 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S710에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 각각에 콜 셋업 메시지를 송신할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)에 각각 콜 셋업 메시지를 멀티캐스트 및 유니캐스트 중 적어도 하나의 방법에 따라 송신할 수 있다. 또한, 콜 셋업 메시지는 제 1 단말기(110)로부터 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)에 각각 주기적으로 송신될 수 있다.
한편, 일 실시예에 따른 콜 셋업 메시지에는 데이터를 송수신하는데 이용되는 포트 정보, 데이터의 코덱 정보, 세션 설정에 이용되는 암호화 키 정보 및 데이터의 송수신을 제어하는 이용되는 포트 정보 등이 포함될 수 있다. 다른 예에 따라 콜 셋업 메시지에는 제 1 단말기(110)가 포함되는 그룹의 식별 정보, 제 1 단말기(110)의 식별 정보, 그룹 내에서 제 1 단말기(110)의 우선 순위 정보 및 제 1 단말기(110)에서 발생된 난수 정보 등이 포함될 수도 있다.
단계 S720에서 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)로부터 기설정된 세션이 존재함을 알리는 메시지를 수신하였는지 여부를 판단할 수 있다.
일 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140) 간에는 기설정된 세션이 존재할 수 있다. 제 1 단말기(110)로부터 콜 셋업 메시지를 수신한 그룹 내의 단말기들(120, 130, 140)은 기설정된 세션이 존재하는지 여부를 확인할 수 있다. 예를 들어, 제 1 단말기(110)로부터 콜 셋업 메시지를 수신한 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)는 제 1 단말기(110)와 기설정된 세션이 존재하는지 여부를 확인할 수 있다.
한편, 일 실시예에 따라, 콜 셋업 메시지를 수신한 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)는 기설정된 세션이 존재함을 알리는 콜 셋업 거절 메시지를 송신하기 위한 대기 시간을 기설정된 범위 내에서 임의로 선택할 수 있다. 제 2 단말기(120)는 콜 셋업 거절 메시지를 수신한 시점으로부터 선택된 값에 대응되는 시간 이후에 콜 셋업 거절 메시지를 그룹 내의 단말기들(110, 130, 140)에 각각 송신할 수 있다. 예를 들어, 제 2 단말기(120)는 콜 셋업 거절 메시지를 제 1 단말기(110), 제 3 단말기(130) 및 제 4 단말기(140)에 각각 송신할 수 있다.
한편, 제 3 단말기(130) 및 제 4 단말기(140)는 제 2 단말기(120)로부터 수신한 콜 셋업 거절 메시지가 제 3 단말기(130) 및 제 4 단말기(140)에서 송신하고자 했던 콜 셋업 거절 메시지의 내용과 동일한 경우, 제 1 단말기(110)에 콜 셋업 거절 메시지를 송신하지 않을 수 있다.
일 실시예에 따른 제 1 단말기(110)는 제 2 단말기(120)로부터 콜 셋업 거절 메시지가 수신됨에 따라, 기설정된 세션이 존재함을 확인할 수 있다. 제 1 단말기(110)는 기설정된 세션이 존재함에 따라. 세션 설정을 중단할 수 있다.
단계 S730에서, 제 1 단말기(110)는 송신된 콜 셋업 메시지를 수신한 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 송신된 콜 셋업 메시지를 수신한 그룹 내의 다른 단말기들(120, 130, 140) 중 적어도 하나로부터 콜 셋업 거절 메시지가 수신되지 않음에 따라, 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 콜 셋업 메시지에 포함된 정보에 따라 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다. 또한, 제 1 단말기(110)는 세션이 유지되는 동안 주기적으로 세션이 설정되었음을 알리는 메시지를 그룹 내의 다른 단말기들(120, 130, 140) 각각에 전송할 수 있다. 예를 들어, 제 1 단말기(110)는 콜 셋업 메시지를 주기적으로 그룹 내의 다른 단말기들(120, 130, 140) 각각에 전송할 수 있다. 다만, 이는 일 실시예일 뿐, 세션이 설정되었음을 알리는 메시지는 그룹 내의 다른 단말기들(120, 130, 140) 중 어느 하나로부터 전송될할 수 있다.
한편, 일 실시예에 따른 제 1 단말기(110)는 콜 셋업 메시지에 포함된 코덱 정보 및 포트 정보를 이용하여, 적어도 하나의 제 2 단말기(120, 130, 140)와 데이터를 송수신할 수 있다.
단계 S740에서, 제 1 단말기(110)는 수신한 메시지에 기초하여 세션을 설정할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 중 어느 하나로부터 미리 설정된 세션에 관한 정보를 수신할 수 있다. 예를 들어, 제 1 단말기(110)는 수신한 메시지에 포함된 포트 번호, 미디어 코텍 번호, 암호화 키 정보 등 세션 설정에 필요한 다양한 파라미터들에 기초하여 기설정된 세션에 참여할 수 있다.
도 8은 다른 실시예에 따라 제 1 단말기(110)가 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S810에서, 제 1 단말기(110), 제 2 단말기(120) 및 제 3 단말기(130) 간에는 세션이 설정될 수 있다.
단계 S820에서, 제 1 단말기(110)는 세션의 존재를 알리기 위해 콜 셋업 메시지를 주기적으로 송신할 수 있다.
단계 S830에서, 제 4 단말기(140)가 입장할 수 있다.
단계 S840에서, 제 4 단말기(140)는 세션을 설정하기 위한 콜 셋업 메시지를 송신할 수 있다.
단계 S850에서, 제 1 단말기(110), 제 2 단말기(120) 및 제 3 단말기(130) 중 어느 하나의 단말기(예를 들어, 120)가 콜 셋업 메시지에 대한 응답 메시지를 송신할 수 있다.
일 실시예에 따른 단말기들(110, 120, 130)은 그룹 내에서 동일한 메시지가 송수신되는 것을 방지하기 위해, 랜덤 백오프 기간 후에, 설정된 세션에 관한 정보를 포함하는 응답 메시지를 송신할 수 있다. 여기에서, 랜덤 백오프 기간은 그룹 내의 단말기들(110, 120, 130, 140)마다 0.5RTT 이내의 범위에서 랜덤하게 설정될 수 있다.
일 실시예에 따른, 제 2 단말기(120)는 랜덤 백오프 기간 동안 그룹 내의 다른 단말기들(110, 130, 140)로부터 제 1 단말기(110)에서 생성한 콜 셋업 수락 메시지와 동일한 정보를 포함한 콜 셋업 수락 메시지를 수신하지 않는 경우, 제 2 단말기(120)에서 생성된 콜 세업 수락 메시지를 그룹 내의 다른 단말기들(120, 130, 140) 각각에 송신할 수 있다.
한편, 다른 예에 따라, 제 2 단말기(120)는 랜덤 백오프 기간이 종료되기 이전에 그룹 내의 다른 단말기(예를 들어, 130)로부터 제 2 단말기(120)에서 생성한 콜 셋업 수락 메시지와 동일한 정보를 포함한 콜 셋업 수락 메시지를 수신하는 경우, 콜 셋업 수락 메시지를 그룹 내의 다른 단말기들(110, 130, 140) 각각에 송신하지 않을 수 있다.
단계 S860에서, 제 4 단말기(140)는 수신한 응답 메시지에 기초하여 세션에 참여하기 위한 파라미터를 설정할 수 있다.
단계 S870에서, 제 2 단말기(120)는 세션의 존재를 알리기 위해 콜 셋업 메시지를 주기적으로 송신할 수 있다.
도 9는 다른 실시예에 따라 제 1 단말기(110)가 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S910에서, 제 1 단말기(110)는 세션 설정 모드가 액티브 모드인지 여부를 확인할 수 있다.
단계 S920에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)로부터 콜 셋업 메시지가 수신되는지 여부를 기설정된 시간 동안 모니터링할 수 있다. 예를 들어, 제 1 단말기(110)는 수신한 콜 셋업 메시지에 포함된 그룹 정보를 이용하여 그룹 내의 다른 단말기들(120, 130, 140)로부터 콜 셋업 메시지가 수신되는지 여부를 모니터링 할 수 있다.
단계 S930에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 각각에 콜 셋업 메시지를 송신할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 기설정된 시간 동안 콜 셋업 메시지를 송신하는 그룹 내의 다른 단말기가 존재하지 않는 경우, 콜 셋업 메시지를 송신할 수 있다.
단계 S940에서, 제 1 단말기(110)는 제 1 단말기(110)의 콜 셋업 메시지를 수신한 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다.
단계 S950에서, 제 1 단말기(110)는 기설정된 시간동안 다른 단말기의 콜 셋업 메시지가 수신됨에 따라, 수신한 다른 단말기의 콜 셋업 메시지에 기초하여 세션을 설정할 수 있다.
단계 S960에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)에 콜 셋업 메시지를 송신할 수 있다.
단계 S970에서, 제 1 단말기(110)는 기설정된 세션이 존재함을 알리는 메시지를 수신하였는지 여부를 판단할 수 있다.
단계 S980에서, 제 1 단말기(110)는 기설정된 세션이 존재함을 알리는 메시지가 수신되지 않음에 따라, 송신된 콜 셋업 메시지를 수신한 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다.
단계 S990에서, 제 1 단말기(110)는 다른 단말기로부터 수신한 메시지에 기초하여, 그룹 내에서 기설정된 세션에 참여할 수 있다.
도 10은 일 실시예에 따라 그룹 내의 복수의 단말기들(110, 120, 130, 140)간에 레이스 컨디션(race condition)에 기초하여 세션을 설정하는 방법을 설명하기 위한 흐름도이다.
단계 S1010에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들에 콜 셋업 메시지를 송신할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 중 적어도 하나로부터 기설정된 시간 동안 콜 셋업 메시지가 수신되는지 여부를 모니터링 할 수 있다. 예를 들어, 그룹 내의 복수의 단말기들(110, 120, 130, 140) 간에는 콜 셋업 메시지가 송수신되는 포트가 미리 설정될 수 있다. 제 1 단말기(110)는 기설정된 포트를 통해 수신되는 콜 셋업 메시지가 존재하는지 여부를 기설정된 시간 동안 모니터링 할 수 있다.
한편, 제 1 단말기(110)는 기설정된 시간 동안 수신된 콜 셋업 메시지에 포함된 그룹 정보와 제 1 단말기(110)의 그룹 정보를 비교하여, 복수의 단말기들(120, 130, 140) 중 적어도 하나로부터 콜 셋업 메시지가 수신되는지 여부를 판단할 수 있다. 다만, 여기에서 그룹 정보는 콜 셋업 메시지를 모니터링 하기 위해 이용되는 정보의 일 예일 뿐, 콜 셋업 메시지에 포함된 다른 정보를 이용하여 콜 셋업 메시지를 모니터링 할 수도 있다.
한편, 일 실시예에 따른 콜 셋업 메시지에는 차기 콜 제어 단말기에 관한 식별 정보가 포함될 수도 있다. 여기에서, 차기 콜 제어 단말기는 일 실시예에 따라 제 1 단말기(110)가 콜 제어 단말기인 경우, 1 단말기(110) 이후에 선출되는 콜 제어 단말기를 나타낼 수 있다. 제 1 단말기(110)는 제 1 단말기(110)의 통신 상태에 기초하여 다른 단말기(예를 들어, 120)에 콜 제어 단말기를 위임할 수 있다. 이에 대해서는 도 12를 참고하여 후술하도록 한다.
또한, 차기 콜 제어 단말기가 미리 결정되지 않은 경우에는, 콜 셋업 메시지에 포함된 차기 콜 제어 단말기에 관한 식별 정보가 0으로 설정될 수 있다.
일 실시예에 따른 제 1 단말기(110)는 기설정된 시간 동안 수신되는 콜 셋업 메시지가 존재하지 않는 경우, 그룹 내의 다른 단말기들(120, 130, 140) 각각에 콜 셋업 메시지를 송신할 수 있다.
단계 S1020에서, 제 1 단말기(110)는 기설정된 제 1 버퍼링 기간 동안 적어도 하나의 콜 셋업 메시지 및 콜 셋업 수락 메시지를 수신할 수 있다.
일 실시예에 따라, 제 1 단말기(110)는 콜 셋업 메시지를 송신한 이후에, 기설정된 제 1 버퍼링 기간 동안 그룹 내의 다른 단말기들(120, 130, 140)로부터 콜 셋업 메시지 및 콜 셋업 수락 메시지 중 적어도 하나가 수신되는지 여부를 모니터링 할 수 있다. 제 1 버퍼링 기간은 콜 셋업 메시지를 송신한 이후에 개시될 수 있다.
일 실시예에 따른 제 1 버퍼링 기간에는, 콜 셋업 메시지를 송신한 단말기들(110, 130) 중 어느 하나의 단말기가 선택될 수 있다.
한편, 여기에서 버퍼링 기간은 1RTT로 설정될 수 있으나 이는 일 실시예일 뿐, 버퍼링 기간이 이에 한정되는 것은 아니다.
제 1 단말기(110)는 버퍼링 기간 동안 수신된 적어도 하나의 콜 셋업 메시지 및 적어도 하나의 콜 셋업 수락 메시지에 기초하여, 어느 하나의 단말기를 선택할 수 있다. 예를 들어, 제 1 단말기(110)는 제 3 단말기(130)로부터 수신한 콜 셋업 메시지에 포함된 제 3 단말기(130)의 우선 순위 정보와 제 1 단말기(110)의 우선 순위 정보를 비교하여 어느 하나의 단말기를 선택할 수 있다. 제 3 단말기(130)의 우선 순위가 제 1 단말기(110)의 우선 순위보다 높은 경우, 제 1 단말기(110)는 제 3 단말기(130)를 선택할 수 있다.
단계 S1030에서, 제 1 단말기(110)는 랜덤 백오프 기간 후에, 선택된 단말기에 관한 정보를 그룹 내의 다른 단말기에 송신할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 그룹 내에서 동일한 메시지가 송수신되는 것을 방지하기 위해, 랜덤 백오프 기간 후에, 결정된 단말기에 관한 정보를 포함하는 콜 셋업 수락 메시지를 송신할 수 있다. 또한, 콜 셋업 수락 메시지에는 콜 셋업 메시지를 송신한 단말기들(110, 130)의 식별 정보, 우선 순위 정보 및 난수 정보 중 적어도 하나가 포함될 수 있다. 여기에서, 랜덤 백오프 기간은 그룹 내의 단말기들(110, 120, 130, 140)마다 0.5RTT 이내의 범위에서 랜덤하게 설정될 수 있다.
일 실시예에 따른, 제 1 단말기(110)는 랜덤 백오프 기간이 종료되기 이전에 그룹 내의 다른 단말기(예를 들어, 120)로부터 제 1 단말기(110)에서 생성한 콜 셋업 수락 메시지와 동일한 정보를 포함한 콜 셋업 수락 메시지를 수신하는 경우, 콜 셋업 수락 메시지를 그룹 내의 다른 단말기들(120, 130, 140) 각각에 송신하지 않을 수 있다. 다른 예에 따라, 제 1 단말기(110)는 랜덤 백오프 기간 동안 그룹 내의 다른 단말기들(120, 130, 140)로부터 제 1 단말기(110)에서 생성한 콜 셋업 수락 메시지와 동일한 정보를 포함한 콜 셋업 수락 메시지를 수신하지 않는 경우, 콜 셋업 수락 메시지를 그룹 내의 다른 단말기들(120, 130, 140) 각각에 송신할 수 있다.
단계 S1040에서, 제 1 단말기(110)는 기설정된 버퍼링 기간 이후에 수신된 콜 셋업 수락 메시지에 기초하여 콜 제어 단말기의 재선택 여부를 결정할 수 있다.
일 실시예에 따른 통신 시스템(100)에서, 네트워크 상의 지연(delay) 또는 채널 열화 등의 이유로, 버퍼링 기간 동안 제 1 단말기(110)에 수신되지 못한 콜 셋업 메시지가 존재할 수 있다. 예를 들어, 제 4 단말기(140)로부터 제 1 단말기(110)에 송신된 콜 셋업 메시지가 네트워크 상의 지연으로 인해, 버퍼링 기간 이내에 제 1 단말기(110)에 수신되지 못할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 기설정된 버퍼링 기간 이후에 그룹 내의 다른 단말기(예를 들어, 120)로부터 수신되는 콜 셋업 수락 메시지에 기초하여 단말기를 업데이트할 수 있다. 예를 들어, 제 1 단말기(110)는 랜덤 백오프 기간 및 기설정된 업데이트 기간 이내에 제 2 단말기(120)로부터 제 2 콜 셋업 메시지를 수신할 수 있다. 여기에서, 기설정된 업데이트 기간은 랜덤 백오프 기간이 종료된 이후에 개시될 수 있다. 또한, 기설정된 업데이트 기간은 1RTT일 수 있으나 이는 일 실시예일 뿐, 기설정된 업데이트 기간이 이에 한정되는 것은 아니다.
예를 들어, 제 1 단말기(110)가 랜덤 백오프 기간 및 기설정된 업데이트 기간 이내에 제 2 단말기(120)로부터 수신한 제 2 콜 셋업 메시지에는 송신 권한을 요청한 제 1 단말기(110), 제 3 단말기(120) 및 제 4 단말기(140) 중 제 4 단말기(140)가 콜 제어 단말기로 선출되었음을 나타내는 정보가 포함될 수 있다. 제 1 단말기(110)는 제 1 단말기(110)에서 생성한 제 1 콜 셋업 메시지와 제 4 콜 셋업 메시지를 비교하여, 단말기를 제 4 단말기(140)로 업데이트할 수 있다.
단계 S1050에서, 제 1 단말기(110)는 결정에 기초하여 세션을 설정할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 제 4 단말기(140)가 선택된 경우, 제 4 단말기(140)에 의해 개시된 세션을 설정할 수 있다. 또한, 제 4 단말기(140)는 세션이 유지되는 동안 주기적으로 세션이 설정되었음을 알리는 메시지를 그룹 내의 다른 단말기들(110, 120, 130) 각각에 전송할 수 있다. 예를 들어, 제 4 단말기(140)는 콜 셋업 메시지를 주기적으로 그룹 내의 다른 단말기들(110, 120, 130) 각각에 전송할 수 있다. 다만, 이는 일 실시예일 뿐, 다른 실시예에 따라, 세션이 설정되었음을 알리는 메시지는 그룹 내의 다른 단말기들(120, 130, 140) 중 어느 하나로부터 전송될 수 있다.
도 11는 본 발명의 일 실시예에 따른 그룹 내의 단말기들(110, 130, 140)간에 레이스(race) 컨디션에 기초하여 세션을 설정하는 방법을 보다 상세하게 설명하기 위한 흐름도이다.
단계 S1110에서, 제 1 단말기(110)는 기설정된 시간 동안 모니터링 한 결과, 콜 셋업 메시지가 수신되지 않는 경우, 그룹 내의 다른 단말기들(120, 130, 140)에 콜 셋업 메시지를 송신할 수 있다. 여기에서, 콜 셋업 메시지는 그룹 제 1 단말기(110)의 그룹 정보, 제 1 단말기(110)의 식별 정보, 단말기의 우선 순위 정보 및 난수 정보를 포함할 수 있다.
단계 S1120에서, 제 4 단말기(140)는 기설정된 시간 동안 모니터링 한 결과, 콜 셋업 메시지가 수신되지 않는 경우, 그룹 내의 다른 단말기들(110, 120, 130)에 콜 셋업 메시지를 송신할 수 있다.
여기에서, 제 1 단말기(110)의 콜 셋업 메시지와 제 4 단말기(140)의 콜 셋업 메시지는 그룹 내의 단말기들(110, 120, 130, 140) 각각의 기설정된 버퍼링 기간 동안, 수신될 수 있다. 제 1 단말기(110), 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)는 각각 기설정된 버퍼링 기간 동안 수신되는 콜 셋업 메시지에 포함된 우선 순위 정보 및 난수 정보 중 적어도 하나를 이용하여, 어느 하나의 단말기를 선택할 수 있다.
여기에서, 버퍼링 기간은 1RTT 일 수 있으나, 이는 일 실시예일 뿐, 버퍼링 기간이 이에 한정되는 것은 아니다. 예를 들어, 버퍼링 기간은 제 2 단말기(120)가 제 1 단말기(110)로부터 콜 셋업 메시지를 수신한 시점부터 1RTT 일 수 있다.
한편, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 버퍼링 기간 동안 수신된 제 1 단말기의 콜 셋업 메시지 및 제 4 단말기의 콜 셋업 메시지에 기초하여, 제 1 단말기(110) 및 제 4 단말기(140) 중에서 어느 하나를 선택할 수 있다. 예를 들어, 제 4 단말기(140)의 우선 순위가 제 1 단말기(110)의 우선 순위 보다 높은 경우, 제 4 단말기(140)가 선택될 수 있다. 다른 예에 따라, 제 4 단말기(140)의 우선 순위와 제 1 단말기(110)의 우선 순위가 동일한 경우에는 제 4 단말기(140)의 난수 정보 및 제 1 단말기(110)의 난수 정보에 기초하여, 어느 하나의 단말기가 선택될 수 있다.
단계 S1130에서, 제 3 단말기(130)는 결정된 단말기에 관한 정보를 포함한 콜 셋업 수락 메시지를 그룹 내의 다른 단말기들(110, 130, 140)에 송신할 수 있다.
한편, 일 실시예에 따른 통신 시스템(100)에서는 피드백이 지나치게 많아지는 것(feedback explosion)을 방지하기 위해 그룹 내의 단말기들(110, 120, 130, 140) 중에서, 랜덤 백오프 기간이 가장 먼저 종료된 단말기가 콜 셋업 수락 메시지를 송신할 수 있다. 여기에서, 랜덤 백오프 기간은 버퍼링 기간이 종료된 후부터 개시될 수 있다. 또한, 랜덤 백오프 기간은 단말기들 각각 마다 서로 상이할 수 있다. 예를 들어, 랜덤 백오프 기간은 0 내지 0.5 RTT 범위 내에서 단말기들(110, 120, 130, 140) 마다 임의로 선택될 수 있다.
한편, 일 실시예에 따라 그룹 내의 단말기들(110, 120, 130, 140) 각각은 랜덤 백오프 기간이 종료된 후에 개시되는 업데이트 기간 동안 수신한 콜 셋업 수락 메시지 등에 기초하여, 각각의 단말기에서 제 1 단말기(110) 및 제 4 단말기(140) 중 어느 하나를 결정한 이유가 타당한지 여부를 검증할 수 있다. 여기에서, 콜 셋업 수락 메시지에는 각각의 단말기가 수신한 콜 셋업 메시지에 관한 정보와 각각의 단말기가 결정한 단말기에 관한 정보가 포함될 수 있다.
단계 S1140에서, 그룹 내의 단말기들(110, 120, 130, 140)간에 세션이 설정될 수 있다. 일 실시예에 따른 그룹 내의 단말기들(110, 120, 130, 140)은 업데이트 기간 동안 최종적으로 결정된 단말기가 송신한 콜 셋업 메시지에 기초하여 세션을 설정할 수 있다.
도 12는 일 실시예에 따라, 송신 제어 단말기가 존재하지 않는 통신 시스템에서 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
단계 S1210에서, 제 1 단말기(110)는 그룹 내의 적어도 하나의 단말기와 세션을 설정할 수 있다. 여기에서, 제 1 단말기(110)가 그룹 내의 적어도 하나의 단말기와 세션을 설정하는 방법은 도 4 내지 도 9를 참조하여 전술한 방법 중 어느 하나일 수 있다.
단계 S1220에서, 제 1 단말기(110)는 제 1 단말기(110)와 세션이 설정된 단말기들 중 적어도 하나의 단말기로부터 송신 권한 요청 메시지를 수신할 수 있다.
단계 S1230에서, 제 1 단말기(110)는 송신 권한 요청 메시지를 송신한 적어도 하나의 단말기의 우선 순위 정보에 기초하여 송신 권한을 획득하는 단말기를 결정할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 제 2 단말기(120) 및 제 3 단말기(130)로부터 송신 권한 요청 메시지를 수신할 수 있다. 제 2 단말기(120)의 송신 권한 요청 메시지가 제 3 단말기(130)의 송신 권한 요청 메시지 보다 먼저 수신된 경우, 제 1 단말기(110)의 버퍼링 기간이 개시될 수 있다. 예를 들어, 버퍼링 기간은 1RTT일 수 있지만 이는 일 예일 뿐, 버퍼링 기간이 설정에 따라 달라질 수 있다.
제 1 단말기(110)는 버퍼링 기간 동안 수신된 송신 권한 요청 메시지에 기초하여 송신 권한을 갖는 단말기를 결정할 수 있다. 예를 들어, 제 3 단말기(130)의 송신 권한 요청 메시지가 버퍼링 기간이 종료되기 이전에 수신된 경우, 제 1 단말기(110)는 제 2 단말기(120) 및 제 3 단말기(130)의 우선 순위 정보에 기초하여 송신 권한을 갖는 단말기를 결정할 수 있다. 또한, 다른 예에 따라 제 2 단말기(120) 및 제 3 단말기(130)의 우선 순위가 동일한 경우, 제 1 단말기(110)는 단말기들(120, 130) 각각의 난수 정보에 기초하여 송신 권한을 갖는 단말기를 결정할 수 있다. 여기에서, 우선 순위 정보 및 난수 정보 중 적어도 하나가 송신 권한 요청 메시지에 포함될 수 있다.
또 다른 예에 따라, 제 1 단말기(110)는 제 2 단말기(120)의 송신 권한 요청 메시지 및 제 3 단말기(130)의 송신 권한 요청 메시지가 각각 수신된 시점에 기초하여 송신 권한을 갖는 단말기를 결정할 수 있다.
단계 S1240에서, 제 1 단말기(110)는 그룹 내 단말기들(110, 120, 130, 140) 중에서 제 1 단말기(110)의 랜덤 백오프 기간이 가장 먼저 종료됨에 따라 송신 권한 수락 메시지를 송신할 수 있다.
일 실시예에 따른 랜덤 백오프 기간은 단계 S1230에서 전술한 제 1 단말기(110)의 버퍼링 기간이 종료된 후 개시될 수 있다. 다만, 이는 일 실시예일 뿐, 제 1 단말기(110)는 기설정된 시점부터 랜덤 백오프 기간이 개시될 수 있다.
한편, 랜덤 백오프 기간은 기설정된 시간 범위 내에서 임의로 선택될 수 있다. 예를 들어, 랜덤 백오프 기간은 0.5RTT 범위 내의 임의의 시간일 수 있다.
도 13은 일 실시예에 따라 그룹 내에서 송신 권한 요청 메시지가 발생됨에 따라 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
단계 S1310에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)에 송신 권한 요청 메시지를 송신할 수 있다.
단계 S1320에서, 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 중 어느 하나의 단말기(예를 들어, 130)가 송신 권한 요청 메시지에 대한 응답 메시지를 송신할 수 있다. 여기에서, 응답 메시지의 예로는 송신 권한 요청 수락 메시지가 있을 수 있다.
일 실시예에 따른 단말기들(120, 130, 140)은 그룹 내에서 동일한 메시지가 송수신되는 것을 방지하기 위해, 송시 권한 요청 메시지를 수신한 시점부터 랜덤 백오프 기간 후에, 송신 권한의 수락을 알리는 응답 메시지를 송신할 수 있다. 여기에서, 랜덤 백오프 기간은 그룹 내의 단말기들(110, 120, 130, 140)마다 0.5RTT 이내의 범위에서 랜덤하게 설정될 수 있다.
일 실시예에 따른, 제 3 단말기(130)는 랜덤 백오프 기간 동안 그룹 내의 다른 단말기들(110, 130, 140)로부터 응답 메시지가 수신되지 않음에 따라, 랜덤 백오프 기간 종료 후, 그룹 내의 다른 단말기들(110, 120, 140)에 응답 메시지를 송신할 수 있다.
제 1 단말기(110)에서 생성한 응답 메시지와 동일한 정보를 포함한 응답 메시지를 수신하지 않는 경우, 제 110 단말기(120)에서 생성된 응답 메시지를 그룹 내의 다른 단말기들(120, 130, 140) 각각에 송신할 수 있다.
한편, 다른 예에 따라, 제 2 단말기(120)는 랜덤 백오프 기간이 종료되기 이전에 그룹 내의 다른 단말기(예를 들어, 130)로부터 제 2 단말기(120)에서 생성한 응답 메시지와 동일한 정보를 포함한 콜 셋업 수락 메시지를 수신하는 경우, 콜 셋업 수락 메시지를 그룹 내의 다른 단말기들(110, 130, 140) 각각에 송신하지 않을 수 있다.
단계 S1330에서, 제 1 단말기(110)는 송신 권한을 수락하는 응답 메시지를 수신함에 다라 그룹 내의 다른 단말기들(120, 130, 140)에 데이터를 송신할 수 있다.
도 14는 일 실시예에 따라 그룹 내에서 복수의 송신 권한 요청 메시지가 발생됨에 따라 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
단계 S1410에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)에 송신 권한 요청 메시지를 송신할 수 있다. 여기에서, 송신 권한 요청 메시지는 그룹 제 1 단말기(110)의 그룹 정보, 제 1 단말기(110)의 식별 정보, 단말기의 우선 순위 정보 및 난수 정보를 포함할 수 있다.
단계 S1420에서, 제 4 단말기(140)는 그룹 내의 다른 단말기들(110, 120, 130)에 송신 권한 요청 메시지를 송신할 수 있다. 여기에서, 송신 권한 요청 메시지는 그룹 제 4 단말기(140)의 그룹 정보, 제 4 단말기(140)의 식별 정보, 단말기의 우선 순위 정보 및 난수 정보를 포함할 수 있다.
여기에서, 제 1 단말기(110)의 송신 권한 요청 메시지와 제 4 단말기(140)의 송신 권한 요청 메시지는 그룹 내의 단말기들(110, 120, 130, 140) 각각의 기설정된 버퍼링 기간 동안, 수신될 수 있다. 제 1 단말기(110), 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)는 각각 기설정된 버퍼링 기간 동안 수신되는 송신 권한 요청 메시지에 포함된 우선 순위 정보 및 난수 정보 중 적어도 하나를 이용하여, 송신 권한을 갖는 단말기를 결정할 수 있다.
여기에서, 버퍼링 기간은 1RTT 일 수 있으나, 이는 일 실시예일 뿐, 버퍼링 기간이 이에 한정되는 것은 아니다. 예를 들어, 버퍼링 기간은 제 2 단말기(120)가 제 1 단말기(110)로부터 송신 권한 요청 메시지를 수신한 시점부터 1RTT 일 수 있다.
한편, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 버퍼링 기간 동안 수신된 제 1 단말기의 송신 권한 요청 메시지및 제 4 단말기의 송신 권한 요청 메시지에 기초하여, 제 1 단말기(110) 및 제 4 단말기(140) 중에서 어느 하나를 선택할 수 있다. 예를 들어, 제 4 단말기(140)의 우선 순위가 제 1 단말기(110)의 우선 순위 보다 높은 경우, 제 4 단말기(140)가 선택될 수 있다. 다른 예에 따라, 제 4 단말기(140)의 우선 순위와 제 1 단말기(110)의 우선 순위가 동일한 경우에는 제 4 단말기(140)의 난수 정보 및 제 1 단말기(110)의 난수 정보에 기초하여, 어느 하나의 단말기가 선택될 수 있다.
단계 S1430에서, 제 2 단말기(120)는 결정된 단말기에 관한 정보를 포함한 송신 권한 수락 메시지를 그룹 내의 다른 단말기들(110, 130, 140)에 송신할 수 있다.
한편, 일 실시예에 따른 통신 시스템(100)에서는 피드백이 지나치게 많아지는 것(feedback explosion)을 방지하기 위해 그룹 내의 단말기들(110, 120, 130, 140) 중에서, 랜덤 백오프 기간이 가장 먼저 종료된 단말기가 송신 권한 수락 메시지를 송신할 수 있다. 여기에서, 랜덤 백오프 기간은 버퍼링 기간이 종료된 후부터 개시될 수 있다. 또한, 랜덤 백오프 기간은 단말기들 각각 마다 서로 상이할 수 있다. 예를 들어, 랜덤 백오프 기간은 0 내지 0.5 RTT 범위 내에서 단말기들(110, 120, 130, 140) 마다 임의로 선택될 수 있다.
한편, 일 실시예에 따라 그룹 내의 단말기들(110, 120, 130, 140) 각각은 랜덤 백오프 기간이 종료된 후에 개시되는 업데이트 기간 동안 수신한 송신 권한 수락 메시지 등에 기초하여, 각각의 단말기에서 제 1 단말기(110) 및 제 4 단말기(140) 중 어느 하나를 결정한 이유가 타당한지 여부를 검증할 수 있다. 여기에서, 송신 권한 수락 메시지에는 각각의 단말기가 수신한 송신 권한 요청 메시지에 관한 정보와 각각의 단말기에서 송신 권한을 갖는다고 결정된 단말기에 관한 정보가 포함될 수 있다.
단계 S1440에서, 제 1 단말기(110)는 송신 권한 수락 메시지를 수신함에 따라 그룹 내의 단말기들(120, 130, 140)에 데이터를 송신할 수 있다.
도 15는 일 실시예에 따른 통신 시스템(100)에서 복수의 단말기들 간에 충돌이 발생한 경우, 어느 하나의 단말기를 결정하기 위한 방법을 설명하기 위한 다이어그램이다. 이하에서는 설명의 편의상 제 1 단말기(110)를 예로 들어 설명하도록 한다.
개시 단계(1510)에서, 제 1 단말기(110)가 요청 메시지를 송신 또는 수신 함에 따라 제 1 단말기(110)의 버퍼링 단계(1520)가 개시될 수 있다. 예를 들어, 제 1 단말기(110)는 콜 셋업 메시지 또는 송신 권한 요청 메시지 등을 송신함에 따라 버퍼링 단계를 개시할 수 있다. 또한, 제 1 단말기(120)는 그룹 내의 다른 단말기의 콜 셋업 메시지 또는 송신 권한 요청 메시지 등을 수신함에 따라 버퍼링 단계를 개시할 수 있다. 다만, 이는 일 실시예일 뿐, 통신 시스템에서 하나의 단말기를 선출해야 하지만 복수의 단말기들이 지원함에 따라 컨플릭트(conflict)가 발생하는 경우, 도 15에 따른 다이어그램에 따라 그룹 내의 단말기들이 동작할 수 있다.
버퍼링 단계(1520)가 종료된 시점부터, 제 1 단말기(110)에서 임의로 선택된 랜덤 백오프 기간 이후에, 업데이트 단계(1530)가 개시될 수 있다. 버퍼링 단계는 예를 들어, 1RTT 기간일 수 있다. 또한, 랜덤 백오프 기간은 0.5RTT 내의 시간에서 임의로 선택될 수 있다.
업데이트 단계(1530)에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 중, 적어도 하나로부터 요청 메시지를 송신한 단말기들 중 선택된 하나의 단말기에 관한 정보를 포함하는 수락 메시지를 수신할 수 있다. 제 1 단말기(110)는 수락 메시지에 기초하여, 제 1 단말기(110)에서 결정한 단말기를 업데이트 할 수 있다. 예를 들어, 제 1 단말기(110)에서 결정한 단말기와 수락 메시지가 나타내는 단말기가 상이한 경우, 제 1 단말기(110)는 결정한 단말기를 업데이트 할 수 있다. 제 1 단말기(110)는 업데이트 된 단말기에 관한 정보를 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다.
한편, 제 1 단말기(110)는 수신한 수락 메시지에 포함된 정보와 제 1 단말기(110)가 송신하고자 했던 수락 메시지에 포함된 정보가 동일한 경우, 제 1 단말기(110)는 그룹의 다른 단말기들(120, 130, 140)에 피드백 정보가 중복되는 것을 방지하기 위해 수락 메시지를 송신하지 않을 수 있다.
업데이트 단계(1530)에서, 결정된 단말기가 제 1 단말기(110) 자신인 경우, 제 1 단말기(110)의 토킹 단계(1540)가 개시될 수 있다.
토킹 단계(1540)에서, 제 1 단말기(110)는 메시지 또는 데이터를 송신할 수 있다. 예를 들어, 제 1 단말기(110)는 콜 셋업 메시지 또는 미디어 데이터를 송신할 수 있다.
일 실시예에 따라 토킹 단계(1540) 제 1 단말기(110)는 그룹 내의 다른 단말기로부터 요청 메시지를 수신할 수 있다. 제 1 단말기(110)는 요청 메시지를 송신한 단말기의 우선 순위와 제 1 단말기(110)의 우선 순위를 비교할 수 있다. 제 1 단말기(110)의 우선 순위가 요청 메시지를 송신한 단말기의 우선 순위 보다 높은 경우, 제 1 단말기(110)는 대기 리스트를 생성할 수 있다. 생성된 대기 리스트에는 요청 메시지를 송신한 단말기의 정보가 저장될 수 있다.
또한, 토킹 단계(1540) 제 1 단말기(110)의 데이터 송신이 종료된 경우, 제 1 단말기(110)는 송신 허여 메시지를 송신할 수 있다. 이에 따라 개시 단계(1510)가 시작될 수 있다.
리스닝 단계(1550)는 업데이트 단계(1530)에서 결정된 단말기와 제 1 단말기(110)가 상이한 경우 또는 토킹 단계(1540)에서 제 1 단말기(110) 보다 높은 우선 순위를 갖는 단말기가 요청 메시지를 송신한 경우에 개시될 수 있다. 예를 들어, 제 1 단말기(110)가 제 1 단말기(110)의 송신 권한이 폐지(revoke)되거나, 제 1 단말기(110) 보다 높은 우선 순위를 갖는 단말기의 송신 권한이 허여(grant)됨에 따라, 리스닝 단계(1550)가 개시될 수 있다.
리스닝 단계(1550)에서 제 1 단말기(110)가 다른 단말기로부터 데이터 송신이 종료되었음을 나타내는 해제 메시지를 수신하는 경우, 개시 단계(1510)로 돌아갈 수 있다. 또한, 리스닝 단계(1560)에서 제 1 단말기(110)가 허여 메시지를 수신하는 경우, 토킹 단계(1540)가 개시될 수 있다.
한편, 개시 단계(1510)에서, 참여자가 제 1 단말기(110)인 경우, 기설정된 시간 후에 토킹 단계(1540)가 개시될 수 있다. 또한, 개시 단계(1510)에서, 제 1 단말기(110)가 미디어 데이터를 수신하는 경우, 리스닝 단계(1550)가 개시될 수 있다.
도 16은 일 실시예에 따른 제 1 단말기(110)의 데이터 송신 중에, 제 1 단말기(110)보다 우선 순위가 높은 단말기(120)로부터 송신 권한 요청 메시지를 수신하는 경우, 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
단계 S1610에서, 제 1 단말기(110)는 그룹의 다른 단말기들(120, 130, 140)에 데이터를 송신할 수 잇다. 여기에서, 제 1 단말기(1120)는 송신 권한을 획득한 단말기일 수 있다.
단계 S1620에서, 제 2 단말기(120)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 130, 140)에 송신할 수 있다.
단계 S1630에서, 제 1 단말기(110)는 제 1 단말기(110)의 송신 권한을 폐지할 수 있다. 여기에서, 제 2 단말기(120)의 우선 순위가 제 1 단말기(110)의 우선 순위 보다 높은 것으로 가정한다.
단계 S1640에서, 제 1 단말기(110)는 제 2 단말기(120)의 송신 권한을 수락하는 수락 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다.
단계 S1650에서, 제 2 단말기(120)는 데이터를 송신할 수 있다. 송신 권한을 요청한 제 2 단말기(120)의 우선 순위가 더 높은 제 1 단말기(110)는 그룹 내의 단말기들(110, 120, 130, 140) 중 적어도 하나의 단말기로부터 송신 권한 요청을 수신할 수 있다.
도 17은 일 실시예에 따른 제 1 단말기(110)의 데이터 송신 중에, 제 1 단말기(110)보다 우선 순위가 낮은 단말기(120)로부터 송신 권한 요청 메시지를 수신하는 경우, 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
단계 S1710에서, 제 1 단말기(110)는 그룹의 다른 단말기들(120, 130, 140)에 데이터를 송신할 수 잇다. 여기에서, 제 1 단말기(1120)는 송신 권한을 획득한 단말기일 수 있다.
단계 S1720에서, 제 2 단말기(120)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 130, 140)에 송신할 수 있다.
단계 S1730에서, 제 1 단말기(110)는 제 2 단말기(110)에 관한 정보를 저장할 수 있다. 여기에서, 제 2 단말기(120)의 우선 순위가 제 1 단말기(110)의 우선 순위 보다 낮은 것으로 가정한다.
단계 S1740에서, 제 1 단말기(110)는 데이터 송신이 종료됨에 따라 송신 권한을 해제(release)할 수 있다.
단계 S1750에서, 제 1 단말기(110)는 제 2 단말기(120)의 송신 권한을 수락하는 수락 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다.
단계 S1760에서, 제 2 단말기(120)는 그룹 내의 다른 단말기들(110, 130, 140)에 데이터를 송신할 수 있다.
도 18은 일 실시예에 따른 제 1 단말기(110)가 대기 리스트를 생성하지 않는 경우에 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
단계 S1810에서, 제 1 단말기(110)는 그룹의 다른 단말기들(120, 130, 140)에 데이터를 송신할 수 잇다. 여기에서, 제 1 단말기(1120)는 송신 권한을 획득한 단말기일 수 있다.
단계 S1820에서, 제 2 단말기(120)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 130, 140)에 송신할 수 있다. 한편, 제 2 단말기(120)의 우선 순위는 제 1 단말기(110)의 우선 순위 보다 낮다고 가정한다. 이에 따라, 제 2 단말기(120)는 제 1 단말기(110)의 데이터 송신이 종료되기 전까지 송신 권한을 획득할 수 없다.
단계 S1830에서, 제 1 단말기(110)는 데이터 송신을 종료함에 따라, 송신 권한을 해제할 수 있다.
단계 S1840에서, 제 1 단말기(110)는 송신 권한이 해제됨을 알리는 해제(release) 메시지를 송신할 수 있다.
도 19는 일 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140)이 임시 송신 제어권을 획득하는 방법을 설명하기 위한 흐름도이다.
단계 S1905에서, 제 2 단말기(120)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 130, 140)에 송신할 수 있다.
단계 S1910에서, 제 3 단말기(130)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 송신할 수 있다.
단계 S1915에서, 그룹 내의 단말기들(110, 120, 130, 140) 중 랜덤 백오프 기간이 가장 먼저 종료되는 단말기가 송신 권한 수락 메시지를 송신할 수 있다.
일 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 수신한 제 2 단말기(120) 및 제 3 단말기(130) 각각의 송신 권한 요청 메시지에 기초하여 송신 권한을 갖는 단말기를 결정할 수 있다. 일 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140)은 송신 권한 요청 메시지에 포함된 우선 순위 정보를 이용하여, 우선 순위가 더 높은 제 3 단말기(130)를 송신 권한을 갖는 단말기로 결정할 수 있다. 다른 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140)은 제 2 단말기(120)와 제 3 단말기(130)의 우선 순위가 동일한 경우, 제 2 단말기(120)와 제 3 단말기(130)의 난수 정보를 이용하여, 어느 하나의 단말기를 송신 권한을 갖는 단말기로 결정할 수 있다.
한편, 예를 들어, 그룹 내의 단말기들(110, 120, 130, 140) 중 제 1 단말기(110)의 랜덤 백오프 기간이 가장 먼저 종료된 경우, 제 1 단말기(110)는 제 3 단말기(130)에 대한 송신 권한 수락 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다.
단계 S1920에서, 제 3 단말기(130)는 송신 권한 수락 메시지를 수신함에 따라 임시 송신 제어권을 획득할 수 있다.
단계 S1925에서, 제 3 단말기(130)는 그룹 내의 다른 단말기(120, 130, 140)에 데이터를 송신할 수 있다.
단계 S1930에서, 제 4 단말기(140)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 130)에 각각 송신할 수 있다.
단계 S1935에서, 제 3 단말기(130)는 제 4 단말기(140)의 송신 권한을 수락함을 나타내는 송신 권한 수락 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 송신할 수 있다. 한편, 여기에서, 제 3 단말기(130)의 데이터 송신은 중단될 수 있다.
단계 S1940에서, 제 4 단말기(140)는 임시 송신 제어권을 획득할 수 있다.
단계 S1945에서, 제 4 단말기(140)는 그룹 내의 다른 단말기들(110, 120, 130)에 데이터를 송신할 수 있다.
단계 S1950에서, 제 3 단말기(130)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 송신할 수 있다. 그룹 내의 제 1 단말기(110), 제 2 단말기(120) 및 제 3 단말기(130)는 제 4 단말기(140)로부터 기설정된 시간 이상 데이터가 수신되지 않음에 따라, 제 4 단말기(140)의 통신이 중단되었다고 판단할 수 있다.
단계 S1955에서, 제 1 단말기(110) 및 제 2 단말기(120) 중 랜덤 백오프 기간이 가장 먼저 종료되는 단말기가 송신 권한 수락 메시지를 송신할 수 있다.
단계 S1960에서, 제 3 단말기(130)는 그룹 내의 다른 단말기(120, 130, 140)에 데이터를 송신할 수 있다.
도 20은 다른 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140)이 임시 송신 제어권을 획득하는 방법을 설명하기 위한 흐름도이다.
단계 S2005에서, 제 2 단말기(120)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 130, 140)에 송신할 수 있다.
단계 S2010에서, 제 3 단말기(130)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 송신할 수 있다.
단계 S2015에서, 그룹 내의 단말기들(110, 120, 130, 140) 중 랜덤 백오프 기간이 가장 먼저 종료되는 단말기가 송신 권한 수락 메시지를 송신할 수 있다.
일 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 수신한 제 2 단말기(120) 및 제 3 단말기(130) 각각의 송신 권한 요청 메시지에 기초하여 송신 권한을 갖는 단말기를 결정할 수 있다. 일 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140)은 송신 권한 요청 메시지에 포함된 우선 순위 정보를 이용하여, 우선 순위가 더 높은 제 3 단말기(130)를 송신 권한을 갖는 단말기로 결정할 수 있다. 다른 실시예에 따라, 그룹 내의 단말기들(110, 120, 130, 140)은 제 2 단말기(120)와 제 3 단말기(130)의 우선 순위가 동일한 경우, 제 2 단말기(120)와 제 3 단말기(130)의 난수 정보를 이용하여, 어느 하나의 단말기를 송신 권한을 갖는 단말기로 결정할 수 있다.
한편, 예를 들어, 그룹 내의 단말기들(110, 120, 130, 140) 중 제 1 단말기(110)의 랜덤 백오프 기간이 가장 먼저 종료된 경우, 제 1 단말기(110)는 제 3 단말기(130)에 대한 송신 권한 수락 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다.
다른 실시예에 따라, 제 2 단말기(120)에 대한 정보가 대기 리스트에 저장될 수도 있으나, 도 20에서는 제 2 단말기(120)에 대한 정보가 대기 리스트에 저장되지 않는 경우를 예로 들어 설명하도록 한다.
단계 S2020에서, 제 3 단말기(130)는 송신 권한 수락 메시지를 수신함에 따라 임시 송신 제어권을 획득할 수 있다.
단계 S2025에서, 제 3 단말기(130)는 그룹 내의 다른 단말기(120, 130, 140)에 데이터를 송신할 수 있다.
단계 S2030에서, 제 4 단말기(140)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 130)에 각각 송신할 수 있다.
단계 S2035에서, 제 3 단말기(130)는 제 4 단말기(140)의 송신 권한을 수락함을 나타내는 송신 권한 수락 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 송신할 수 있다. 한편, 여기에서, 제 3 단말기(130)의 데이터 송신은 중단될 수 있다.
단계 S2040에서, 제 4 단말기(140)는 송신 권한 수락 메시지를 수신함에 따라 임시 송신 제어권을 획득할 수 있다.
단계 S2045에서, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 데이터 송신이 중단된 제 3 단말기(130)의 정보를 저장할 수 있다. 예를 들어, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 대기 리스트를 생성하고, 대기 리스트에 제 3 단말기(130)의 정보를 저장할 수 있다.
단계 S2050에서, 제 3 단말기(130)는 데이터 송신을 중단하고 대기할 수 있다.
단계 S2055에서, 제 4 단말기(140)는 그룹 내의 다른 단말기들(110, 120, 130)에 데이터를 송신할 수 있다.
단계 S2060에서, 제 3 단말기(130)는 제 4 단말기(140)의 통신이 중단됨에 따라, 임시 송신 제어권을 위임 받을 수 있다. 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 송신할 수 있다. 그룹 내의 제 1 단말기(110), 제 2 단말기(120) 및 제 3 단말기(130)는 제 4 단말기(140)로부터 기설정된 시간 이상 데이터가 수신되지 않음에 따라, 제 4 단말기(140)의 통신이 중단되었다고 판단할 수 있다.
단계 S2065에서, 제 3 단말기(130)는 제 1 단말기(110) 및 제 2 단말기(120)에 데이터를 송신할 수 있다.
도 21은 일 실시예에 따라 송신 제어 단말기인 제 1 단말기(110)가 그룹 내의 복수의 단말기들(110, 120, 130, 140) 중에서 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
단계 S2110에서, 제 1 단말기(110)는 그룹 내의 단말기들(110, 120, 130, 140) 중 적어도 하나의 단말기로부터 송신 권한 요청을 수신할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 제 2 단말기(120)로부터 송신 권한 요청을 수신할 수 있다. 또한, 다른 예에 따라 제 1 단말기(110)는 제 2 단말기(120) 및 제 3 단말기(130)로부터 각각 송신 권한 요청을 수신할 수 있다.
단계 S2120에서, 제 1 단말기(110)는 송신 권한 요청 메시지를 송신한 적어도 하나의 단말기의 우선 순위를 비교할 수 있다. 송신 권한 요청 메시지에는 이를 송신한 단말기의 그룹 정보, 식별 정보, 우선 순위 정보 및 난수 정보가 포함될 수 있다.
일 실시예에 따른 제 1 단말기(110)는 복수의 송신 권한 요청 메시지를 수신한 경우, 송신 권한 요청 메시지를 송신한 단말기들 간의 우선 순위를 비교할 수 있다. 한편, 송신 권한 요청 메시지를 송신한 단말기들의 우선 순위가 동일한 경우, 제 1 단말기(110)는 송신 권한 요청 메시지를 송신한 단말기들 각각의 난수 정보를 비교할 수 있다. 여기에서, 난수 정보는 송신 권한 요청 메시지를 송신한 단말기들 각각에서, 요청을 송신할 때마다 새롭게 발생될 수 있다.
한편, 다른 예에 따라, 제 1 단말기(110)는 제 2 단말기(120) 및 제 3 단말기(130) 각각이 송신한 송신 권한 요청 메시지가 제 1 단말기(110)에 수신되는 시점에 따라 제 2 단말기(120) 및 제 3 단말기(130)의 우선 순위를 결정할 수 있다. 예를 들어, 제 2 단말기(120)의 송신 권한 요청 메시지 보다 제 3 단말기(130)의 송신 권한 요청 메시지가 먼저 제 1 단말기(110)에 수신된 경우, 제 2 단말기(120)가 더 높은 우선 순위를 가질 수 있다.
단계 S2130에서, 제 1 단말기(110)는 비교 결과에 기초하여 송신 권한을 갖는 단말기를 결정할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 송신 권한 요청 메시지를 송신한 단말기들 중 가장 높은 우선 순위를 갖는 제 3 단말기(130)를 송신 권한을 갖는 단말기로 결정할 수 있다.
단계 S2140에서, 제 1 단말기(110)는 결정된 단말기(예를 들어, 130)에 대한 송신 권한 수락 메시지를 그룹 내의 다른 단말기들(120, 130, 140) 각각에 송신할 수 있다. 예를 들어, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 각각에 송신 권한 수락 메시지를 멀티캐스팅 할 수 있다. 다른 예에 따라, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 각각에 송신 권한 수락 응답을 유니캐스팅 할 수 있다.
단계 S2150에서, 제 1 단말기(110)는 결정된 단말기로부터 데이터를 수신할 수 있다.
일 실시예에 따른 제 1 단말기(110)는 송신 권한을 갖는 제 2 단말기(120)로부터 송신된 데이터를 수신할 수 있다. 여기에서, 데이터는 제 2 단말기(120)로부터 그룹 내에 포함된 다른 단말기들(110, 130, 140) 각각에 멀티캐스팅 또는 유니캐스팅 될 수 있다.
도 22는 일 실시예에 따른 송신 제어 단말기가 존재하는 그룹에서, 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 22에서는 제 1 단말기(110)를 송신 제어 단말기로 가정하여 설명하도록 한다. 다만, 이는 일 실시예일 뿐, 본 발명이 이에 한정되는 것은 아니다.
단계 S2205에서, 제 3 단말기(130)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 송신할 수 있다.
단계 S2210에서, 제 1 단말기(110)는 제 3 단말기(130)의 송신 권한을 수락하는 응답을 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다.
단계 S2215에서, 제 3 단말기(130)는 그룹 내의 다른 단말기(120, 130, 140)에 데이터를 송신할 수 있다.
단계 S2220에서, 제 1 단말기(110)는 송신 제어권 위임 요청 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 각각 송신할 수 있다.
단계 S2225에서, 제 3 단말기(130)는 제 1 단말기(110)에 대한 송신 제어권 위임 수락 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 각각 송신할 수 있다. 이에 따라, 제 3 단말기(130)는 송신 제어 단말기로 결정될 수 있다.
단계 S2230에서, 제 4 단말기(140)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 130)에 각각 송신할 수 있다.
단계 S2235에서, 제 3 단말기(130)는 제 4 단말기(140)의 송신 권한을 수락함을 나타내는 송신 권한 수락 응답 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 각각 송신할 수 있다. 다만, 여기에서, 송신 권한 수락 응답 메시지는 일 예일 뿐, 그룹 내의 단말기들(110, 120, 140)에 제 4 단말기(140)가 송신 권한을 획득함을 알리는 다른 메시지가 송신될 수도 있다.
단계 S2240에서, 제 3 단말기(130)는 데이터의 송신을 중단할 수 있다.
단계 S2245에서, 제 4 단말기(140)는 그룹 내의 다른 단말기들(110, 120, 130)에 데이터를 송신할 수 있다.
단계 S2250에서, 제 4 단말기(140)는 송신 제어권을 위임 받을 수 있다. 일 실시예에 따른 제 4 단말기(140)는 제 3 단말기(130)의 통신이 중단됨에 따라, 제 4 단말기(140)의 송신 제어권을 위임할 수 있다. 제 4 단말기(130)는 제 3 단말기(130)로부터 기설정된 시간 이상 메시지가 수신되지 않음에 따라, 제 3 단말기(130)의 통신이 중단되었다고 판단할 수 있다. 여기에서. 일예로 제 4 단말기(140)는 제 3 단말기(130)에서 미리 결정한 차기 송신 제어 단말기일 수 있다. 다른 예로 그룹 내의 단말기들(110, 120, 130, 140) 간에 미리 설정된 우선 순위에 기초하여 결정될 수 있다.
단계 S2255에서, 제 4 단말기(140)는 데이터 송신을 종료함에 따라 송신 권한 해제(release) 메시지를 그룹 내의 다른 단말기들(110, 120, 130)에 송신할 수 있다.
단계 S2260에서, 제 1 단말기(110)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다.
단계 S2265에서, 제 3 단말기(130)는 송신 권한 수락 메시지를 그룹 내의 제 1 단말기(110 및 제 2 단말기(120)에 대해 송신할 수 있다.
도 23은 일 실시예에 따른 송신 제어 단말기가 존재하는 그룹에서, 송신 권한을 갖는 단말기를 결정하는 방법을 설명하기 위한 흐름도이다.
도 23에서는 콜 제어 단말기인 제 1 단말기(110)를 송신 제어 단말기로 가정하여 설명하도록 한다.
단계 S2305에서, 제 3 단말기(130)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 송신할 수 있다.
단계 S2310에서, 제 1 단말기(110)는 제 3 단말기(130)의 송신 권한을 수락하는 송신 권한 수락 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다.
단계 S2315에서, 제 3 단말기(130)는 그룹 내의 다른 단말기(120, 130, 140)에 데이터를 송신할 수 있다.
단계 S2320에서, 제 1 단말기(110)는 송신 제어권 위임 요청 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 각각 송신할 수 있다.
단계 S2325에서, 제 2 단말기(120)는 송신 제어권 위임 수락 메시지를 그룹 내의 다른 단말기들(110, 120, 130)에 각각 송신할 수 있다. 이에 따라, 제 3 단말기(130)는 송신 제어 단말기로 위임될 수 있다.
단계 S2330에서, 제 4 단말기(140)는 송신 권한 요청 메시지를 그룹 내의 다른 단말기들(110, 120, 130)에 각각 송신할 수 있다.
단계 S2335에서, 제 2 단말기(130)는 제 4 단말기(140)의 송신 권한을 수락함을 나타내는 송신 권한 수락 메시지를 그룹 내의 다른 단말기들(110, 120, 140)에 각각 송신할 수 있다. 다만, 여기에서, 송신 권한 수락 메시지는 일 예일 뿐, 그룹 내의 단말기들(110, 120, 140)에 제 4 단말기(140)가 송신 권한을 획득함을 알리는 다른 메시지가 송신될 수도 있다.
단계 S2340에서, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 데이터 송신을 대기하는 제 3 단말기(130)에 관한 정보를 저장할 수 있다. 예를 들어, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 대기 리스트를 생성하여, 대기 리스트 내에 제 3 단말기(130)에 관한 정보를 저장할 수 있다.
단계 S2345에서, 제 4 단말기(140)는 그룹 내의 다른 단말기들(110, 120, 130)에 데이터를 송신할 수 있다. 또한, 제 3 단말기(130)는 제 4 단말기(140)가 송신 권한을 획득함에 따라 데이터의 송신을 중단할 수 있다.
단계 S2350에서, 제 3 단말기(130)는 송신 제어권을 위임 받을 수 있다. 일 실시예에 따른 제 3 단말기(130)는 제 2 단말기(120)의 통신이 중단됨에 따라, 제 2 단말기(120)의 송신 제어권을 위임할 수 있다. 제 3 단말기(130)는 제 2 단말기(120)로부터 기설정된 시간 이상 데이터가 수신되지 않음에 따라, 제 2 단말기(120)의 통신이 중단되었다고 판단할 수 있다. 여기에서. 일예로 제 3 단말기(130)는 제 2 단말기(120)에서 미리 결정된 차기 송신 제어 단말기일 수 있다.
단계 S2355에서, 제 4 단말기(140)는 데이터 송신이 종료됨에 따라 송신 권한 해제(release) 메시지를 그룹 내의 다른 단말기들(110, 120, 130)에 송신할 수 있다.
단계 S2360에서, 제 3 단말기(130)는 제 4 단말기(140)의 데이터 송신이 종료됨에 따라, 중단되었던 데이터 송신을 다시 개시할 수 있다.
단계 S2365에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)에 송신 권한 요청 메시지를 송신할 수 있다.
단계 S2370에서, 제 3 단말기(130)는 제 1 단말기(110)의 우선 순위가 제 3 단말기(130)의 우선 순위보다 낮으므로 제 1 단말기(110)에 송신 권한을 허여하지 않음을 나타내는 메시지를 송신할 수 있다.
단계 S2375에서, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 데이터 송신을 대기하는 제 1 단말기(110)에 관한 정보를 저장할 수 있다. 예를 들어, 그룹 내의 단말기들(110, 120, 130, 140) 각각은 대기 리스트를 생성하여, 대기 리스트 내에 제 1 단말기(110)에 관한 정보를 저장할 수 있다.
도 24는 다른 실시예에 따라, 통신 시스템(100)에 콜 제어 단말기가 존재하는 경우의 데이터 송수신 방법을 설명하기 위한 흐름도이다.
도 24에서는 통신 시스템(100) 콜 제어 단말기와 송신 제어 단말기가 모두 제 1 단말기(100) 것으로 가정하여 설명하도록 한다.
단계 S2410에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다. 한편, 여기에서 세션을 설정하는 방법은 도 4 내지 도 9를 참조하여 전술한 바와 대응될 수 있다.
단계 S2420에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)에 설정된 세션에 대해 알리기 위한 콜 셋업 메시지를 주기적으로 송신할 수 있다.
단계 S2430에서, 제 1 단말기(110)는 그룹의 단말기들 중 적어도 하나의 단말기로부터 송신 권한 요청 메시지를 수신할 수 있다.
단계 S2440에서, 제 1 단말기(110)는 적어도 하나의 단말기의 우선 순위 정보에 기초하여 송신 권한을 획득하는 단말기를 결정할 수 있다. 한편, 여기에서, 제 1 단말기(110)가 송신 권한을 획득하는 단말기를 결정하는 방법은 도 21 내지 도 23을 참고하여 전술한 바와 대응될 수 있다.
단계 S2450에서, 제 1 단말기(110)는 결정된 단말기에 관한 송신 권한 수락 메시지를 그룹 내의 단말기들에 송신할 수 있다.
도 25는 다른 실시예에 따라, 통신 시스템(100)에 콜 제어 단말기가 존재하는 경우의 데이터 송수신 방법을 설명하기 위한 흐름도이다.
도 25에서는 통신 시스템(100) 콜 제어 단말기는 제 2 단말기(120)이고, 송신 제어 단말기는 제 1 단말기(100) 것으로 가정하여 설명하도록 한다.
단계 S2510에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다. 한편, 여기에서 세션을 설정하는 방법은 도 4 내지 도 9를 참조하여 전술한 바와 대응될 수 있다.
단계 S2520에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 중 콜 제어 단말기인 어느 하나의 단말기(예를 들어, 120)로부터 설정된 세션에 대한 콜 셋업 메시지를 주기적으로 수신할 수 있다.
단계 S2530에서, 제 1 단말기(110)는 그룹의 단말기들 중 적어도 하나의 단말기로부터 송신 권한 요청 메시지를 수신할 수 있다.
단계 S2540에서, 제 1 단말기(110)는 적어도 하나의 단말기의 우선 순위 정보에 기초하여 송신 권한을 획득하는 단말기를 결정할 수 있다. 한편, 여기에서, 제 1 단말기(110)가 송신 권한을 획득하는 단말기를 결정하는 방법은 도 21 내지 도 23을 참고하여 전술한 바와 대응될 수 있다.
단계 S2550에서, 제 1 단말기(110)는 결정된 단말기에 관한 송신 권한 수락 메시지를 그룹 내의 단말기들에 송신할 수 있다.
도 26은 다른 실시예에 따라, 통신 시스템(100)에 콜 제어 단말기가 존재하는 경우의 데이터 송수신 방법을 설명하기 위한 흐름도이다.
도 26에서는 통신 시스템(100)의 콜 제어 단말기는 제 1 단말기(110)이고, 송신 제어 단말기는 존재하지 않는 것으로 가정하여 설명하도록 한다.
단계 S2610에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)과 세션을 설정할 수 있다. 한편, 여기에서 세션을 설정하는 방법은 도 4 내지 도 9를 참조하여 전술한 바와 대응될 수 있다.
단계 S2620에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140)에 설정된 세션을 알리기 위한 콜 셋업 메시지를 주기적으로 송신할 수 있다.
단계 S2630에서, 제 1 단말기(110)는 그룹 내의 다른 단말기들(120, 130, 140) 중 적어도 하나의 단말기로부터 송신 권한 요청 메시지를 수신할 수 있다.
단계 S2640에서, 제 1 단말기(110)는 적어도 하나의 단말기의 우선 순위 정보에 기초하여 송신 권한을 획득하는 단말기를 결정할 수 있다. 한편, 제 1 단말기(110)가 송신 권한을 획득하는 단말기를 결정하는 방법은 도 12 내지 도 20을 참조하여 전술한 바와 대응될 수 있다.
단계 S2650에서, 제 1 단말기(110)는 그룹 내의 단말기들(110, 120, 130, 140) 중에서 제 1 단말기(110)의 랜덤 백오프 기간이 가장 먼저 종료됨에 따라 결정된 단말기에 관한 정보를 포함하는 송신 권한 수락 메시지를 송신할 수 있다.
도 27은 일 실시예에 따라 그룹 내의 복수의 단말기들(110, 120, 130, 140)에서 콜 제어 단말기가 변경되는 방법을 설명하기 위한 흐름도이다.
단계 S2710에서, 그룹 내의 단말기들(110, 120, 130, 140) 간에는 세션이 설정될 수 있다. 여기에서, 그룹 내의 단말기들(110, 120, 130, 140)간에는 도 4 내지 도 9를 참조하여 전술한 방법 중 적어도 하나에 의해 세션이 설정될 수 있다. 또한, 일 실시예에 따라, 제 1 단말기(110)가 콜 제어 단말기인 것으로 가정한다.
단계 S2720에서, 제 1 단말기(110)가 그룹 내의 다른 단말기들(120, 130, 140)에 설정된 세션을 알리는 메시지를 숭신할 수 있다.
단계 S2730에서, 제 1 단말기(110)는 콜 제어 권한을 위임하기 위한 콜 제어권 위임 요청 메시지를 그룹 내의 다른 단말기들(120, 130, 140)에 송신할 수 있다. 여기에서, 콜 제어권 위임 요청 메시지에는 위임하고자 하는 단말기의 정보가 미리 포함되어 있을 수 있다. 또한, 다른 예에 따라 단말기들(110, 120, 130, 140) 간에 미리 위임 순서에 관한 정보가 저장되어 있을 수도 있다. 또 다른 예에 따라, 단말기들(110, 120, 130, 140) 중 어느 하나가 임의로 선택될 수도 있다.
단계 S2740에서, 제 2 단말기(120)는 그룹 내의 다른 단말기들(120, 130, 140)에 콜 제어 권한 위임 수락 메시지를 송신할 수 있다. 일 실시예에 따른 제 2 단말기(120)는 콜 제어 단말기로 위임될 수 있다.
단계 S2750에서, 제 2 단말기(120)는 그룹 내의 다른 단말기들(110, 130, 140)에 설정된 세션을 알리는 메시지를 송신할 수 있다. 일 실시예에 따라, 제 2 단말기(120)는 콜 제어 단말기로 위임됨에 따라, 설정된 세션을 알리는 메시지를 주기적으로 그룹 내의 다른 단말기들(110, 130, 140)에 송신할 수 있다.
단계 S2760에서, 제 3 단말기(130)는 제 2 단말기(120)와의 통신이 중단됨에 따라, 콜 제어 권한을 위임할 수 있다.
일 실시예에 따른 제 3 단말기(130)는 제 2 단말기(120)로부터 세션이 설정됨을 알리는 메시지가 수신되지 않음에 따라, 제 2 단말기(120)와의 통신이 중단되었다고 판단할 수 있다. 제 3 단말기(130)는 그룹 내에서 미리 설정된 제 2 단말기(120) 이후의 차기 콜 제어 단말기일 수 있다. 이에 따라 제 3 단말기(130)는 제 2 단말기(120)와의 통신이 중단되었다고 판단된 경우, 콜 제어 단말기를 위임할 수 있다. 다른 예에 따라, 제 3 단말기(130)는 그룹 내에서 콜 셋업 메시지를 다시 전송하여, 세션을 다시 설정할 수 있다.
단계 S2770에서, 제 3 단말기(130)는 그룹 내의 다른 단말기들(110, 120, 140)에 설정된 세션을 알리는 메시지를 숭신할 수 있다. 일 실시예에 따라, 제 3 단말기(130)는 콜 제어 단말기로 위임됨에 따라, 설정된 세션을 알리는 메시지를 주기적으로 그룹 내의 다른 단말기들(110, 120, 140)에 송신할 수 있다.
도 28 및 29는 일 실시예에 따른 단말기(2800)를 도시한 블록도이다.
도 28에 도시된 바와 같이, 본 발명의 일 실시예에 따른 단말기(2800)는, 통신부(2810) 및 제어부(2820)를 포함할 수 있다. 그러나 도시된 구성요소 모두가 필수구성요소인 것은 아니다. 도시된 구성요소보다 많은 구성요소에 의해 단말기(2800)가 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 단말기(2800)는 구현될 수 있다.
예를 들어, 도 29에 도시된 바와 같이, 본 발명의 일 실시예에 따른 단말기(2800)는, 통신부(2810) 및 제어부(2820) 이외에 센싱부(2830), 사용자 입력부(2840), 출력부(2850), A/V 입력부(2860) 및 메모리(2870)를 더 포함할 수도 있다.
한편, 도 28 및 29의 단말기(2800)는 도 1 내지 도 27을 참조하여 전술한 그룹 내의 복수의 단말기들(110, 120, 130, 140) 중 어느 하나와 대응될 수 있다.
이하 상기 구성요소들에 대해 차례로 살펴본다.
통신부(2810)는, 복수의 다른 단말기들(120, 130, 140) 에 각각 콜 셋업 메시지를 송신한다.
일 실시예에 따른 통신부(2820)는 그룹 내 단말기들 간의 데이터 송수신 및 세션 설정에 필요한 메시지 또는 데이터를 송수신할 수 있다.
일 실시예에 따른 통신부(2810)는 그룹 내의 다른 단말기들에 각각 콜 셋업 메시지를 멀티캐스팅(multicasting) 할 수 있다. 다른 실시예에 따라, 그룹 내의 다른 단말기들에 각각 콜 셋업 메시지를 유니캐스팅(unicasting) 할 수 있다.
일 실시예에 따른 통신부(2810)는 단말기(2800)가 포함된 그룹 내의 다른 단말기들 중 적어도 하나의 단말기로부터 콜 셋업 메시지를 수신한다.
다른 예에 따라, 통신부(2810)는 기설정된 세션이 존재하는 경우, 단말기(2800)에 기설정된 세션이 존재함을 알리는 콜 셋업 거절 메시지를 송신할 수 있다. 통신부(2810)는 제어부(2820)가 기설정된 범위 내에서 선택한 임의의 값에 대응되는 시간 이후에 콜 셋업 거절 메시지를 송신할 수 있다.
한편, 통신부(2810)는 그룹 내의 다른 단말기들 중 적어도 하나로부터 수신한 콜 셋업 거절 메시지와 통신부(2810)가 송신하고자 하는 콜 셋업 거절 메시지가 동일한 경우에는 다른 단말기에 콜 셋업 거절 메시지를 송신하지 않을 수 있다.
또한, 통신부(2810)는 기설정된 시간 동안 다른 콜 셋업 요청 메시지가 수신되지 않는 경우, 콜 셋업 요청 메시지를 송신할 수 있다. 통신부(2810)는, 제 1 단말기와 그룹 내의 다른 단말기들 간에 기설정된 세션이 존재하는 경우, 송신된 콜 셋업 요청 메시지를 수신한 적어도 하나의 다른 단말기로부터 기설정된 세션이 존재함을 알리는 메시지를 수신할 수 있다.
일 실시예에 따른 통신부(2810)는, 콜 셋업 요청 메시지를 송신한 이후에 개시되는 기설정된 버퍼링 시간 동안 다른 단말기의 콜 셋업 요청 메시지를 수신할 수 있다. 또한, 통신부(2810)는 수신된 콜 셋업 수락 메시지의 정보와 선택된 단말기에 관한 정보가 상이한 경우, 단말기(2800)의 콜 셋업 수락 메시지를 랜덤 백오프 기간 이후에 그룹 내의 다른 단말기들에 송신할 수 있다.
일 실시예에 따른, 통신부(2810)는 송신 권한을 요청하기 위한 송신 권한 요청 메시지를 그룹 내의 다른 단말기들에 각각 송신할 수 있다. 또한, 통신부(2810)는 그룹 내의 다른 단말기들 중 랜덤 백오프 기간이 가장 먼저 종료된 단말기로부터 송신 권한 수락 메시지를 수신하고, 그룹 내의 다른 단말기들에 각각 데이터를 송신할 수 있다.
일 실시예에 따른 통신부(2810)가 데이터를 송신하고 있는 중에 그룹 내의 다른 단말기로부터 송신 권한 요청 메시지를 수신하는 경우, 제어부(2820)는 다른 단말기의 우선 순위 보다 단말기(2800)의 우선 순위가 높은 경우, 다른 단말기에 관한 정보를 저장할 수 있다.
일 실시예에 따른 통신부(2810)는, 그룹 내의 다른 단말기 중 하나로부터 송신 권한 요청 메시지를 수신할 수 있다. 제어부(2820)는 단말기(2800)의 우선 순위보다 다른 단말기의 우선 순위가 높은 경우, 통신부(2810)의 데이터 송신을 중단할 수 있다.
일 실시예에 따른, 통신부(2810)는, 다른 단말기로부터 데이터를 수신할 수 있다. 또한, 통신부(2810)가 다른 단말기기로부터 데이터 송신이 종료됨을 알리는 송신 해제 메시지를 수신함에 따라, 단말기(2800)는 송신 권한을 획득할 수 있다.
일 실시예에 따른 통신부(2810)는, 송신 권한을 요청하기 위한 송신 권한 요청 메시지를 그룹 내의 다른 단말기들에 각각 송신할 수 있다.
일 실시예에 따른 통신부(2810)는, 다른 단말기로부터 송신 권한 요청 메시지를 수신하고, 단말기(2800)의 우선 순위 보다 다른 단말기의 우선 순위가 더 높은 경우 송신 권한 폐지(revoke) 메시지를 수신할 수 있다.
다른 실시예에 따라 제 2 단말기(120)는 제 1 단말기(110) 및 3 단말기(130)로부터 콜 셋업 메시지를 수신한 경우, 제 1 단말기(110)와 제 3 단말기(130)의 우선 순위를 비교하여, 어느 하나의 단말기를 선택할 수 있다. 여기에서, 우선 순위는 통신 시스템(100) 내의 복수의 단말기들(110, 120, 130, 140)간에 기설정될 수 있다. 예를 들어, 제 1 단말기(110)의 우선 순위가 제 3 단말기(130)의 우선 순위 보다 높은 경우, 제 2 단말기(120)는 제 1 단말기(110)를 선택할 수 있다. 이에 대해서는 도 7을 참조하여 보다 구체적으로 후술하도록 한다.
한편, 전술한 예는 우선 순위 정보의 일 예일 뿐, 제 2 단말기(120)는 제 1 단말기(110) 및 제 3 단말기(130)의 콜 셋업 메시지가 수신된 시간에 기초하여, 어느 하나의 단말기를 선택할 수 있다.
일 실시예에 따른 제 2 단말기(120)는 기설정된 버퍼링 기간 동안 수신된 콜 셋업 메시지에 기초하여, 어느 하나의 단말기를 선택할 수 있다. 예를 들어, 제 2 단말기는 기설정된 버퍼링 기간 동안 제 1 단말기(110)의 콜 셋업 메시지를 수신한 경우, 제 1 단말기(110)를 선택할 수 있다.
한편, 일 실시예에 따른 통신 시스템(100)에서는 통신 상황 등으로 인하여 버퍼링 기간 동안 일부 콜 셋업 메시지가 수신되지 못하는 상황에 대비하여, 버퍼링 기간 이후에 수신된 콜 셋업 수락 메시지를 기초하여 선택한 단말기를 변경할 수 있다. 예를 들어, 제 2 단말기(120)는 버퍼링 기간이 종료된 이후, 랜덤 백오프 기간 및 업데이트 기간 동안 수신된 콜 셋업 수락 메시지에 기초하여 선택한 단말기가 적절한지 여부를 판단할 수 있다. 여기에서, 콜 셋업 수락 메시지는 그룹 내의 단말기들(110, 120, 130, 140) 별로, 설정된 랜덤 백오프 기간이 종료된 후 송신될 수 있다. 일 실시예에 따라 랜덤 백오프 기간이 가장 먼저 끝난 단말기에서 송신된 콜 셋업 수락 메시지와 제 2 단말기(120)가 송신하고자 했던 콜 셋업 수락 메시지가 동일한 경우, 제 2 단말기(120)는 콜 셋업 수락 메시지를 송신하지 않을 수 있다.
제 2 단말기(120)는 수신된 콜 셋업 수락 메시지를 기초로 판단한 결과, 수신하지 못한 콜 셋업 메시지가 존재하는 경우, 단말기를 다시 선택할 수 있다. 예를 들어, 제 3 콜 셋업 메시지가 수신되지 못한 경우, 제 2 단말기(120)는 랜덤 백오프 기간 및 업데이트 기간 동안 수신된 다른 단말기의 콜 셋업 수락 메시지에 기초하여, 제 3 단말기를 다시 선택할 수 있다.
단계 S330에서, 제 2 단말기(120)는 선택된 단말기와 세션을 설정할 수 있다. 콜 셋업 메시지에 기초하여 세션을 설정할 수 있다. 예를 들어, 제 2 단말기(120)는 그룹 내에서 콜 셋업 메시지를 송신한 단말기들(110, 130) 중 제 1 단말기(110)를 선택한 경우, 제 1 단말기(110)로부터 수신한 콜 셋업 메시지에 기초하여 세션을 설정할 수 있다.
일 실시예에 따른 제 2 단말기(120)는 세션이 설정된 이후에, 그룹 내의 다른 단말기들(110, 130, 140)에 각각 송신 권한 요청 메시지를 전송할 수 있다.
통신부(2810)는 단말기(2800)와 외부 단말기의 제 2 디스플레이부 간의 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 예를 들어, 통신부(2830)는, 근거리 통신부(2831), 이동 통신부(1832) 및 방송 수신부(2833)를 포함할 수 있다.
근거리 통신부(short-range wireless communication unit)(2831)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
이동 통신부(2832)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
방송 수신부(2833)는, 방송 채널을 통하여 외부로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 구현 예에 따라서 단말기(2800)가 방송 수신부(2833)를 포함하지 않을 수도 있다.
제어부(2820)는, 통상적으로 단말기(2800)의 전반적인 동작을 제어한다. 예를 들어, 제어부(2820)는, 메모리(2870)에 저장된 프로그램들을 실행함으로써, 통신부(2810), 사용자 입력부(2840), 센싱부(2830), 출력부(2860), A/V 입력부(1850) 및 메모리(1880) 등을 전반적으로 제어할 수 있다.
일 실시예에 따른 제어부(1820)는 단계 S220에서, 제 1 단말기(110)는 송신된 콜 셋업 메시지를 수신한 적어도 하나의 단말기(120, 130, 140)와 세션을 설정한다.
일 실시예에 따른 제어부(1820)는 송신된 콜 셋업 메시지에 포함된 포트 정보, 암호화 키 정보 및 코덱 정보 등에 기초하여, 콜 셋업 메시지를 수신한 적어도 하나의 단말기(120, 130, 140)와 제어부(1820)는 송신된 콜 셋업 메시지에 대한 적어도 하나의 단말기(120, 130, 140)의 응답에 기초하여 세션을 설정할 수 있다.
예를 들어, 제 1 단말기(110)는 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 중 적어도 하나로부터 콜 셋업 수락 메시지를 수신할 수 있다. 제 1 단말기(110)는 콜 셋업 수락 메시지를 수신함에 따라, 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140)와 각각 세션을 설정할 수 있다.
다른 예에 따라, 제 1 단말기(110)는 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 중 적어도 하나로부터 기설정된 세션이 존재함을 알리는 콜 셋업 거절 메시지를 수신할 수도 있다. 제 1 단말기(110)가 콜 셋업 거절 메시지를 수신하는 경우, 제 1 단말기(110)에 의해 개시된 세션이 설정되지 않을 수 있다.
한편, 일 실시예에 따라 제 1 단말기(110)는 세션이 설정된 이후, 설정된 세션에 대해 알리는 메시지를 주기적으로 제 2 단말기(120), 제 3 단말기(130), 및 제 4 단말기(140)에 각각 송신할 수 있다. 다만, 이는 일 실시예일 뿐, 그룹 내의 제 1 단말기(110), 제 2 단말기(120), 제 3 단말기(130) 및 제 4 단말기(140) 중 임의의 단말이 주기적으로 설정된 세션에 대해 알리는 메시지를 그룹 내의 다른 단말기들에게 송신할 수 있다. 또한, 그룹 내의 단말기들(110, 120, 130, 140) 중에서 설정된 세션에 대해 알리는 메시지를 송신하는 단말기가 어느 하나의 단말기로 한정되지 않을 수 있다.
일 실시예에 따른 통신 시스템(100)에서 세션이 설정된 단말기들(110, 120, 130, 140)의 우선 순위 정보에 기초하여 송신 권한을 갖는 단말기가 결정될 수 있다.
일 실시예에 따른 단말기(2800)는 세션이 설정됨에 따라, 콜 제어 단말기로 결정될 수 있다. 또한, 제 1 단말기(110)는 송신 제어 단말기로서 세션이 설정된 단말기들(110, 120, 130, 140) 간의 송신 권한을 제어할 수 있다. 다만, 이는 일 실시예일 뿐, 그룹 내의 다른 단말기가 송신 제어 단말기로 결정될 수 있다. 또 다른 예에 따라, 그룹 내에 송신 제어 단말기가 존재하지 않을 수 있다.
제어부(2820)는 단말기(2800)에 기설정된 세션이 존재하는지 여부 및 콜 셋업 메시지에 포함된 우선 순위 정보 중 적어도 하나에 기초하여 적어도 하나의 단말기 중 어느 하나를 선택할 수 있다.
센싱부(2830)는, 지자기 센서(Magnetic sensor)( 2831), 가속도 센서(Acceleration sensor)( 2832), 온/습도 센서(2833), 적외선 센서(2834), 자이로스코프 센서(2835), 위치 센서(예컨대, GPS)( 2836), 기압 센서(2837), 근접 센서(2838) 및 RGB 센서(illuminance sensor)(2839) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다.
사용자 입력부(2840)는, 사용자가 단말기(2800)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력부(2840)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다.
일 실시예에 따른 사용자 입력부(2840)는 단말기(2800)에 설치된 복수의 운영체제 중 제 1 디스플레이부 및 제 2 디스플레이부 중 적어도 하나에 표시되는 운영체제를 선택하기 위한 선택 입력을 수신할 수 있다. 또한, 사용자 입력부(1840)는 제 1 디스플레이부 및 제 2 디스플레이부 중 적어도 하나에 표시되는 운영체제를 변경하기 위한 변경 입력을 수신할 수 있다. 한편, 이는 본 발명의 일 실시예일 뿐, 사용자 입력부(2840)는 도 1 내지 도 27을 참조하여 전술한 단말기(1800)의 동작을 수행하는데 필요한 사용자의 입력을 수신할 수 있다.
출력부(2850)는, 제어부(2820)에서 결정된 동작을 수행하기 위한 것으로, 이에는 디스플레이부(2851), 음향 출력부(2852), 진동 모터(2853) 등이 포함될 수 있다.
한편, 디스플레이부(2851)와 터치패드가 레이어 구조를 이루어 터치 스크린으로 구성되는 경우, 디스플레이부(2851)는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 디스플레이부(2851)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display) 중에서 적어도 하나를 포함할 수 있다. 그리고 단말기(1800)의 구현 형태에 따라 단말기(1800)는 제 1 디스플레이부(1810) 이외에 하나 이상의 디스플레이부를 더 포함할 수도 있다.
음향 출력부(2852)는 통신부(2810)로부터 수신되거나 메모리(2870)에 저장된 오디오 데이터를 출력한다. 또한, 음향 출력부(2852)는 단말기(2800)에서 수행되는 기능(예를 들어, 호신호 수신음, 메시지 수신음, 알림음)과 관련된 음향 신호를 출력한다. 이러한 음향 출력부(2852)에는 스피커(speaker), 버저(Buzzer) 등이 포함될 수 있다.
진동 모터(2853)는 진동 신호를 출력할 수 있다. 예를 들어, 진동 모터(2853)는 오디오 데이터 또는 비디오 데이터(예컨대, 호신호 수신음, 메시지 수신음 등)의 출력에 대응하는 진동 신호를 출력할 수 있다. 또한, 진동 모터(753)는 터치스크린에 터치가 입력되는 경우 진동 신호를 출력할 수도 있다.
A/V(Audio/Video) 처리부(2860)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(2861)와 마이크로폰(2862) 등이 포함될 수 있다. 카메라(2861)는 화상 통화모드 또는 촬영 모드에서 이미지 센서를 통해 정지영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 이미지 센서를 통해 캡쳐된 이미지는 제어부(2820) 또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다.
카메라(2861)에서 처리된 화상 프레임은 메모리(2870)에 저장되거나 통신부(2810)를 통하여 외부로 전송될 수 있다. 카메라(2861)는 단말기의 구성 태양에 따라 2개 이상이 구비될 수도 있다.
마이크로폰(2862)은, 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리한다. 예를 들어, 마이크로폰(2862)은 외부 단말기 또는 화자로부터 음향 신호를 수신할 수 있다. 마이크로폰(1872)는 외부의 음향 신호를 입력 받는 과정에서 발생 되는 잡음(noise)를 제거하기 위한 다양한 잡음 제거 알고리즘을 이용할 수 있다.
메모리(2870)는, 제어부(2820)의 처리 및 제어를 위한 프로그램을 저장할 수도 있고, 입/출력되는 데이터들을 저장할 수도 있다.
일 실시예에 따른 메모리(2870)는 그룹 내 단말기들의 우선 순위, 난수 정보 등을 저장할 수 있다. 또한, 메모리(2870)는 송신 권한 요청 메시지를 송신한 단말기들의 대기 리스트를 저장할 수 있다. 메모리(2870)에는 그룹 내의 단말기들 간에 데이터 송수신을 위한 포트 번호, 암호화키 정보 등 세션 설정에 필요한 파라미터 정보들이 저장될 수 있다.
메모리(2870)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 단말기(2800)는 인터넷(internet)상에서 메모리(2870)의 저장 기능을 수행하는 웹 스토리지(web storage) 또는 클라우드 서버를 운영할 수도 있다.
메모리(2870)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, UI 모듈(2871), 터치 스크린 모듈(2872), 알림 모듈(2873) 등으로 분류될 수 있다.
UI 모듈(2871)은, 애플리케이션 별로 단말기(2800)와 연동되는 특화된 UI, GUI 등을 제공할 수 있다. 터치 스크린 모듈(2872)은 사용자의 터치 스크린 상의 터치 제스처를 감지하고, 터치 제스처에 관한 정보를 제어부(2820)로 전달할 수 있다. 본 발명의 일 실시예에 따른 터치 스크린 모듈(2872)은 터치 코드를 인식하고 분석할 수 있다. 터치 스크린 모듈(2872)은 컨트롤러를 포함하는 별도의 하드웨어로 구성될 수도 있다.
터치스크린의 터치 또는 근접 터치를 감지하기 위해 터치스크린의 내부 또는 근처에 다양한 센서가 구비될 수 있다. 터치스크린의 터치를 감지하기 위한 센서의 일례로 촉각 센서가 있다. 촉각 센서는 사람이 느끼는 정도로 또는 그 이상으로 특정 물체의 접촉을 감지하는 센서를 말한다. 촉각 센서는 접촉면의 거칠기, 접촉 물체의 단단함, 접촉 지점의 온도 등의 다양한 정보를 감지할 수 있다.
또한, 터치스크린의 터치를 감지하기 위한 센서의 일례로 근접 센서가 있다.
근접 센서는 소정의 검출면에 접근하는 물체, 혹은 근방에 존재하는 물체의 유무를 전자계의 힘 또는 적외선을 이용하여 기계적 접촉이 없이 검출하는 센서를 말한다. 근접 센서의 예로는 투과형 광전 센서, 직접 반사형 광전 센서, 미러 반사형 광전 센서, 고주파 발진형 근접 센서, 정전용량형 근접 센서, 자기형 근접 센서, 적외선 근접 센서 등이 있다. 사용자의 터치 제스처에는 탭, 터치&홀드, 더블 탭, 드래그, 패닝, 플릭, 드래그 앤드 드롭, 스와이프 등이 있을 수 있다.
알림 모듈(2873)은 단말기(2800)의 이벤트 발생을 알리기 위한 신호를 발생할 수 있다. 단말기(2800)에서 발생되는 이벤트의 예로는 애플리케이션에 새로운 정보 획득 또는 수신, 수신호 신호 수신, 메시지 수신, 키 신호 입력, 일정 알림 및 사용자 입력의 획득 등이 있다. 알림 모듈(2873)은 제 1 디스플레이부(2851)를 통해 비디오 신호 형태로 알림 신호를 출력할 수도 있고, 음향 출력부(2852)를 통해 오디오 신호 형태로 알림 신호를 출력할 수도 있고, 진동 모터(2853)를 통해 진동 신호 형태로 알림 신호를 출력할 수도 있다.
개시된 실시예에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다.  소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다.  여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다.  컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다.  매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
개시된 실시예에서 인용하는 공개 문헌, 특허 출원, 특허 등을 포함하는 모든 문헌들은 각 인용 문헌이 개별적으로 및 구체적으로 병합하여 나타내는 것 또는 게시된 실시예에서 전체적으로 병합하여 나타낸 것과 동일하게 개시된 실시예에 병합될 수 있다.
개시된 실시예의 이해를 위하여, 도면에 도시된 바람직한 실시 예들에서 참조 부호를 기재하였으며, 개시된 실시 예들을 설명하기 위하여 특정 용어들을 사용하였으나, 특정 용어에 의해 개시된 실시예가 한정되는 것은 아니며, 개시된 실시예들은 당업자에 있어서 통상적으로 생각할 수 있는 모든 구성 요소들을 포함할 수 있다.
개시된 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다.  이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다.  예를 들어, 개시된 실시예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다.  개시된 실시예의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 개시된 실시예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다.  기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.  또한, 개시된 실시예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.  “매커니즘”, “요소”, “수단”, “구성”과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다.  상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
개시된 실시예에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 개시된 실시예의 범위를 한정하는 것은 아니다.  명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다.  또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다.  또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 개시된 실시예의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
2800: 단말기
2810: 통신부
2820: 제어부

Claims (41)

  1. 제 1 단말기에 의해 수행되는 복수의 단말기들의 통신 방법에 있어서,
    MCPTT (Mission Critical Push To Talk) 그룹의 다른 단말과 세션을 설정하는 단계;
    송신 제어 단말기(floor arbitrator)로 동작하는 제 1 단말기로부터, 상기 MCPTT 그룹으로 미디어를 송신하는 단계;
    상기 미디어를 전송하는 동안, 제 2 단말기로부터 상기 MCPTT 그룹으로 전송되는 송신 권한 요청 메시지를 상기 MCPTT 그룹의 상기 제 2 단말기로부터 수신하는 단계;
    중앙 집중식 서버없이 상기 제 1 단말기 및 상기 제 2 단말기의 우선 순위 정보에 기초하여 상기 제 1 단말기의 권한이 취소(revoke)되었는지 여부를 결정하는 단계;
    상기 제 1 단말기의 권한이 취소되었음에 대한 응답으로, 상기 미디어의 전송을 중단하는 단계;
    상기 MCPTT 그룹으로, 상기 제 2 단말기에 대한 송신 권한 승인 메시지를 전송하는 단계; 및
    새로운 송신 제어 단말기로 동작하는 제 2 단말기로부터 상기 송신 권한 승인 메시지에 기초하여 상기 MCPTT 그룹으로 전송되는 제 2 단말기의 미디어를 수신하는 단계;를 포함하는, 단말기들의 통신 방법.
  2. 제 1 항에 있어서,
    기설정된 시간 동안, 다른 단말기의 콜 셋업 요청 메시지가 수신되는지 여부를 모니터링 하는 단계; 및
    상기 기설정된 시간 동안 상기 콜 셋업 요청 메시지가 수신되지 않는 경우, 콜 셋업 요청 메시지를 송신하는 단계;를 더 포함하는, 단말기들의 통신 방법.
  3. 제 1 항에 있어서,
    상기 제 1 단말기와 상기 MCPTT 그룹 내의 다른 단말기들 간에 기설정된 세션이 존재하는 경우, 적어도 하나의 다른 단말기로부터 상기 기설정된 세션이 존재함을 알리는 메시지를 수신하는 단계;를 더 포함하는, 단말기들의 통신 방법.
  4. 제 2 항에 있어서, 상기 콜 셋업 요청 메시지는,
    상기 제 1 단말기와 상기 그룹의 식별 정보, 상기 제 1 단말기의 식별 정보, 상기 그룹에서의 상기 제 1 단말기의 우선 순위 정보 및 상기 제 1 단말기에서 발생된 난수 정보 중 적어도 하나를 포함하는, 단말기들의 통신 방법.
  5. 제 1 항에 있어서, 상기 세션을 설정하는 단계는,
    상기 제 1 단말기의 콜 셋업 요청 메시지가 송신된 이후에 개시되는 기설정된 버퍼링 시간 동안 적어도 하나의 다른 단말기의 콜 셋업 요청 메시지를 수신하는 단계; 및
    상기 적어도 하나의 다른 단말기의 우선 순위 정보와 상기 제 1 단말기의 상기 우선 순위 정보에 기초하여 상기 적어도 하나의 다른 단말기와 상기 제 1 단말기 중에서 선택된 단말기를 선택하는 단계;를 포함하는, 단말기들의 통신 방법.
  6. 제 5 항에 있어서, 상기 세션을 설정하는 단계는,
    상기 기설정된 버퍼링 시간 이후에 개시되는 기설정된 기간 동안 수신된 상기 MCPTT 그룹 내의 단말기의 콜 셋업 수락 메시지에 기초하여, 상기 콜 셋업 요청 메시지를 송신한 적어도 하나의 다른 단말기와 상기 제 1 단말기 중 어느 하나를 업데이트하는 단계;를 포함하는, 단말기들의 통신 방법.
  7. 제 5 항에 있어서, 상기 세션을 설정하는 단계는,
    상기 기설정된 버퍼링 시간 이후에 개시되는 랜덤 백오프 시간 동안 수신된 적어도 하나의 콜 셋업 수락 메시지의 정보와 상기 선택된 단말기에 관한 정보를 비교하는 단계; 및
    상기 수신된 적어도 하나의 콜 셋업 수락 메시지의 정보와 상기 선택된 단말기에 관한 정보가 상이한 경우, 상기 제 1 단말기의 콜 셋업 수락 메시지를 상기 랜덤 백오프 시간 이후에 상기 MCPTT 그룹 내의 다른 단말기들에 송신하는 단계;를 포함하는, 단말기들의 통신 방법.
  8. 제 1 항에 있어서,
    송신 권한을 요청하기 위한 상기 제 1 단말기의 송신 권한 요청 메시지를 상기 MCPTT 그룹 내의 다른 단말기들에 각각 송신하는 단계;
    상기 MCPTT 그룹 내의 다른 단말기들 중 랜덤 백오프 기간이 가장 먼저 종료된 단말기로부터 송신 권한 수락 메시지를 수신하는 단계; 및
    상기 MCPTT 그룹 내의 다른 단말기들에 각각 데이터를 송신하는 단계;를 더 포함하는,단말기들의 통신 방법.
  9. 제 8 항에 있어서,
    상기 MCPTT 그룹 내의 다른 단말기 중 제 3 단말기로부터 상기 제 3 단말기의 송신 권한 요청 메시지를 수신하는 단계를 더 포함하고,
    상기 제 3 단말기의 우선 순위 보다 상기 제 1 단말기의 우선 순위가 높은 경우, 상기 제 1 단말기가 데이터 송신을 종료한 후에 상기 제 3 단말기가 데이터를 송신하는, 단말기들의 통신 방법.
  10. 삭제
  11. 삭제
  12. 제 1 항에 있어서,
    상기 송신 권한을 요청하기 위한 송신 권한 요청 메시지를 상기 MCPTT 그룹 내의 다른 단말기들에 각각 송신하는 단계;
    상기 MCPTT 그룹 내의 다른 단말기들 중 송신 제어 단말기로 동작하는 제 4 단말기로부터 송신 권한 수락 메시지를 수신하는 단계; 및
    상기 그룹 내의 다른 단말기들에 각각 데이터를 송신하는 단계;를 더 포함하는 단말기들의 통신 방법.
  13. 제 12 항에 있어서,
    제 3 단말기로부터 상기 제 3 단말기의 송신 권한 요청 메시지를 수신하는 단계;
    상기 제 1 단말기의 우선 순위 보다 상기 제 3 단말기의 우선 순위가 더 높은 경우 송신 권한 취소(revoke) 메시지를 상기 제 4 단말기로부터 수신하는 단계; 및
    상기 데이터의 송신을 중단하는 단계;를 더 포함하는, 단말기들의 통신 방법.
  14. 제 12 항에 있어서,
    상기 MCPTT 그룹 내의 다른 단말기 중 제 5 단말기로부터 상기 제 5 단말기의 송신 권한 요청 메시지를 수신하는 단계를 더 포함하고,
    상기 제 5 단말기의 우선 순위 보다 상기 제 1 단말기의 우선 순위가 높은 경우, 상기 제 5 단말기는 상기 제 1 단말기의 데이터 송신이 종료된 후에 상기 제 4 단말기로부터 상기 제 5 단말기에 대한 송신 권한 수락 메시지를 수신하는, 단말기들의 통신 방법.
  15. 제 12 항에 있어서,
    상기 송신 제어 단말기인 제 4 단말기로부터 송신 제어권 위임 요청 메시지를 수신하는 단계; 및
    상기 제 4 단말기에 송신 제어권 위임 수락 메시지를 송신하는 단계를 포함하고,
    상기 제 1 단말기는 상기 송신 제어 단말기로 결정되는, 단말기들의 통신 방법.
  16. 제 1 항에 있어서, 상기 제 1 단말기는,
    상기 세션이 설정됨에 따라 콜 제어 단말기(controller)로 결정되고,
    상기 단말기들의 통신 방법은,
    상기 제 1 단말기의 통신 상태에 기초하여, 상기 그룹 내의 다른 단말기들 중 어느 하나에 상기 콜 제어 단말기를 위임하기 위한 콜 제어권 위임 메시지를 송신하는 단계를 더 포함하는 단말기들의 통신 방법.
  17. 제 16 항에 있어서,
    상기 그룹 내의 다른 단말기들 중 제 4 단말기로부터 송신 권한 요청 메시지를 수신하는 단계; 및
    상기 제 4 단말기에 송신 권한 수락 메시지를 송신하는 단계; 및
    상기 제 4 단말기로부터 데이터를 수신하는 단계를 더 포함하는 단말기들의 통신 방법.
  18. 제 17 항에 있어서,
    상기 그룹 내의 다른 단말기들 중 제 3 단말기로부터 송신 권한 요청 메시지를 수신하는 단계; 및
    상기 제 4 단말기에 송신 권한 취소 메시지를 송신하는 단계; 및
    상기 제 3 단말기로부터 데이터를 수신하는 단계를 더 포함하는 단말기들의 통신 방법.
  19. 제 18 항에 있어서,
    상기 제 3 단말기의 데이터 송신이 종료됨에 따라 상기 제 4 단말기로부터 상기 제 4 단말기의 데이터를 수신하는 단계를 더 포함하는 단말기들의 통신 방법.
  20. 제 18 항에 있어서,
    상기 제 4 단말기의 정보를 저장하는 단계;
    상기 제 3 단말기의 데이터 송신이 종료됨에 따라 상기 제 4 단말기에 대한 송신 권한 수락 메시지를 송신하는 단계를 포함하는 단말기들의 통신 방법.
  21. 복수의 단말기들의 통신을 수행하는 제 1 단말기에 있어서,
    통신부; 및
    제어부;를 포함하고,
    상기 제어부는,
    MCPTT (Mission Critical Push To Talk) 그룹의 다른 단말과 세션을 설정하고,
    송신 제어 단말기(floor arbitrator)로 동작하는 제 1 단말기로부터, 상기 MCPTT 그룹으로 미디어를 송신하며,
    상기 미디어를 전송하는 동안, 제 2 단말기로부터 상기 MCPTT 그룹으로 전송되는 송신 권한 요청 메시지를 상기 MCPTT 그룹의 상기 제 2 단말기로부터 수신하고,
    중앙 집중식 서버없이 상기 제 1 단말기 및 상기 제 2 단말기의 우선 순위 정보에 기초하여 상기 제 1 단말기의 권한이 취소(revoke)되었는지 여부를 결정하고,
    상기 제 1 단말기의 권한이 취소되었음에 대한 응답으로, 상기 미디어의 전송을 중단하며,
    상기 MCPTT 그룹으로, 상기 제 2 단말기에 대한 송신 권한 승인 메시지를 전송하고,
    새로운 송신 제어 단말기로 동작하는 제 2 단말기로부터 상기 송신 권한 승인 메시지에 기초하여 MCPTT 그룹으로 전송되는 제 2 단말기의 미디어를 수신하는, 제 1 단말기.
  22. 제 21 항에 있어서, 상기 제어부는,
    기설정된 시간 동안, 다른 단말기의 콜 셋업 요청 메시지가 수신되는지 여부를 모니터링하고,
    상기 통신부는,
    상기 기설정된 시간 동안 상기 콜 셋업 요청 메시지가 수신되지 않는 경우, 상기 콜 셋업 요청 메시지를 송신하는 제 1 단말기.
  23. 제 21 항에 있어서, 상기 통신부는,
    상기 제 1 단말기와 상기 MCPTT 그룹 내의 다른 단말기들 간에 기설정된 세션이 존재하는 경우, 적어도 하나의 다른 단말기로부터 상기 기설정된 세션이 존재함을 알리는 메시지를 수신하는 제 1 단말기.
  24. 제 22 항에 있어서, 상기 콜 셋업 요청 메시지는 상기 제 1 단말기와 상기 그룹의 식별 정보, 상기 제 1 단말기의 식별 정보, 상기 그룹에서의 상기 제 1 단말기의 우선 순위 정보 및 상기 제 1 단말기에서 발생된 난수 정보 중 적어도 하나를 포함하는, 제 1 단말기.
  25. 제 21 항에 있어서, 상기 통신부는,
    상기 제 1 단말기의 콜 셋업 요청 메시지가 송신된 이후에 개시되는 기설정된 버퍼링 시간 동안 적어도 하나의 다른 단말기의 콜 셋업 요청 메시지를 수신하고,
    상기 제어부는,
    상기 적어도 하나의 다른 단말기의 우선 순위 정보와 상기 제 1 단말기의 상기 우선 순위 정보에 기초하여, 상기 적어도 하나의 다른 단말기와 상기 제 1 단말기 중에서 선택된 단말기를 선택하는 제 1 단말기.
  26. 제 25 항에 있어서, 상기 제어부는,
    상기 기설정된 버퍼링 시간 이후에 개시되는 기설정된 기간 동안 수신된 상기 MCPTT 그룹 내의 단말기의 콜 셋업 수락 메시지에 기초하여, 상기 콜 셋업 요청 메시지를 송신한 적어도 하나의 다른 단말기와 상기 제 1 단말기 중 어느 하나를 업데이트하는 제 1 단말기.
  27. 제 25 항에 있어서, 상기 제어부는,
    상기 기설정된 버퍼링 시간 이후에 개시되는 랜덤 백오프 시간 동안 수신된 적어도 하나의 콜 셋업 수락 메시지의 정보와 상기 선택된 단말기에 관한 정보를 비교하고,
    상기 통신부는,
    상기 수신된 적어도 하나의 콜 셋업 수락 메시지의 정보와 상기 선택된 단말기에 관한 정보가 상이한 경우, 상기 제 1 단말기의 콜 셋업 수락 메시지를 상기 랜덤 백오프 시간 이후에 상기 MCPTT 그룹 내의 다른 단말기들에 송신하는 제 1 단말기.
  28. 제 21 항에 있어서, 상기 통신부는,
    송신 권한을 요청하기 위한 상기 제 1 단말기의 송신 권한 요청 메시지를 상기 MCPTT 그룹 내의 다른 단말기들에 각각 송신하고, 상기 MCPTT 그룹 내의 다른 단말기들 중 랜덤 백오프 기간이 가장 먼저 종료된 단말기로부터 송신 권한 수락 메시지를 수신하고, 상기 MCPTT 그룹 내의 다른 단말기들에 각각 데이터를 송신하는 제 1 단말기.
  29. 제 28 항에 있어서, 상기 통신부는,
    상기 MCPTT 그룹 내의 다른 단말기 중 제 3 단말기로부터 상기 제 3 단말기의 송신 권한 요청 메시지를 수신하고, 상기 제 3 단말기의 우선 순위 보다 상기 제 1 단말기의 우선 순위가 높은 경우, 상기 제 1 단말기가 데이터 송신을 종료한 후에 상기 제 3 단말기가 데이터를 송신하는, 제 1 단말기.
  30. 삭제
  31. 삭제
  32. 제 21 항에 있어서, 상기 통신부는,
    상기 송신 권한을 요청하기 위한 송신 권한 요청 메시지를 상기 MCPTT 그룹 내의 다른 단말기들에 각각 송신하고, 상기 MCPTT 그룹 내의 다른 단말기들 중 송신 제어 단말기로 동작하는 제 4 단말기로부터 송신 권한 수락 메시지를 수신하고, 상기 그룹 내의 다른 단말기들에 각각 데이터를 송신하는 제 1 단말기.
  33. 제 32 항에 있어서, 상기 통신부는,
    제 3 단말기로부터 상기 제 3 단말기의 송신 권한 요청 메시지를 수신하고, 상기 제 1 단말기의 우선 순위 보다 상기 제 3 단말기의 우선 순위가 더 높은 경우 송신 권한 폐지(revoke) 메시지를 상기 제 4 단말기로부터 수신하며, 상기 데이터의 송신을 중단하는 제 1 단말기.
  34. 제 32 항에 있어서, 상기 통신부는,
    상기 MCPTT 그룹 내의 다른 단말기 중 제 5 단말기로부터 상기 제 5 단말기의 송신 권한 요청 메시지를 수신하고, 상기 제 5 단말기의 우선 순위 보다 상기 제 1 단말기의 우선 순위가 높은 경우, 상기 제 5 단말기는 상기 제 1 단말기의 데이터 송신이 종료된 후에 상기 제 4 단말기로부터 상기 제 5 단말기에 대한 송신 권한 수락 메시지를 수신하는, 제 1 단말기.
  35. 제 32 항에 있어서, 상기 통신부는,
    상기 송신 제어 단말기인 제 4 단말기로부터 송신 제어권 위임 요청 메시지를 수신하고, 상기 제 4 단말기에 송신 제어권 위임 수락 메시지를 송신하며,
    상기 제 1 단말기는, 상기 송신 제어 단말기로 결정되는, 제 1 단말기.
  36. 제 21 항에 있어서, 상기 제 1 단말기는,
    상기 세션이 설정됨에 따라 콜 제어 단말기(controller)로 결정되고,
    상기 통신부는,
    상기 제 1 단말기의 통신 상태에 기초하여, 상기 그룹 내의 다른 단말기들 중 어느 하나에 상기 콜 제어 단말기를 위임하기 위한 콜 제어권 위임 메시지를 송신하는 제 1 단말기.
  37. 제 36 항에 있어서, 상기 통신부는,
    상기 그룹 내의 다른 단말기들 중 제 4 단말기로부터 송신 권한 요청 메시지를 수신하고, 상기 제 4 단말기에 송신 권한 수락 메시지를 송신하며, 상기 제 4 단말기로부터 데이터를 수신하는 제 1 단말기.
  38. 제 37 항에 있어서, 상기 통신부는,
    상기 그룹 내의 다른 단말기들 중 제 3 단말기로부터 송신 권한 요청 메시지를 수신하고, 상기 제 4 단말기에 송신 권한 취소 메시지를 송신하며, 상기 제 3 단말기로부터 데이터를 수신하는 제 1 단말기.
  39. 제 38 항에 있어서, 상기 통신부는,
    상기 제 3 단말기의 데이터 송신이 종료됨에 따라 상기 제 4 단말기로부터 상기 제 4 단말기의 데이터를 수신하는 제 1 단말기.
  40. 제 38 항에 있어서,
    상기 제 4 단말기의 정보를 저장하는 메모리를 더 포함하고,
    상기 통신부는,
    상기 제 3 단말기의 데이터 송신이 종료됨에 따라 상기 제 4 단말기에 대한 송신 권한 수락 메시지를 송신하는 제 1 단말기.
  41. 제 1 항 내지 제 9 항 및 제 12 항 내지 제 20 항 중 어느 한 항에 의한 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020150091585A 2015-05-11 2015-06-26 단말기들의 통신 방법 및 그 단말기 KR102340796B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020150091585A KR102340796B1 (ko) 2015-05-11 2015-06-26 단말기들의 통신 방법 및 그 단말기
US15/152,067 US10225226B2 (en) 2015-05-11 2016-05-11 Terminals and method of communication between same
EP16792972.8A EP3295767B1 (en) 2015-05-11 2016-05-11 Terminals and method of communication between same
PCT/KR2016/004905 WO2016182326A1 (en) 2015-05-11 2016-05-11 Terminals and method of communication between same

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562159519P 2015-05-11 2015-05-11
US62/159,519 2015-05-11
KR1020150091585A KR102340796B1 (ko) 2015-05-11 2015-06-26 단말기들의 통신 방법 및 그 단말기

Publications (2)

Publication Number Publication Date
KR20160132742A KR20160132742A (ko) 2016-11-21
KR102340796B1 true KR102340796B1 (ko) 2021-12-17

Family

ID=57249571

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150091585A KR102340796B1 (ko) 2015-05-11 2015-06-26 단말기들의 통신 방법 및 그 단말기

Country Status (4)

Country Link
US (1) US10225226B2 (ko)
EP (1) EP3295767B1 (ko)
KR (1) KR102340796B1 (ko)
WO (1) WO2016182326A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3314973B1 (en) * 2015-06-26 2019-10-23 Samsung Electronics Co., Ltd. Communication method in a terminal and terminal suitable for the same
ES2881502T3 (es) * 2015-06-29 2021-11-29 Huawei Tech Co Ltd Método, aparato y sistema para control de palabra en múltiples sistemas de MCPTT
KR102173839B1 (ko) * 2016-07-15 2020-11-04 후아웨이 테크놀러지 컴퍼니 리미티드 미디어 전송 권한을 신청하는 방법, 및 미디어 전송 권한을 취소하는 방법 및 장치
CN109600721B (zh) * 2017-09-30 2021-03-30 华为技术有限公司 一种通信方法及装置
WO2021138894A1 (zh) * 2020-01-10 2021-07-15 海能达通信股份有限公司 一种mcptt组呼方法、服务器及通信***

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110289203A1 (en) * 2010-05-19 2011-11-24 Avaya Inc. Sip monitoring and control anchor points
US20140228011A1 (en) * 2010-07-08 2014-08-14 Qualcomm Incorporated Group communication sessions in a wireless communications system

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2271148B1 (en) * 2000-03-03 2012-10-31 Qualcomm Incorporated Communication device and its corresponding method for providing security in a group communication network
US7274946B2 (en) * 2001-01-19 2007-09-25 Raze Technologies, Inc. Apparatus for establishing a priority call in a fixed wireless access communication system
US8050199B2 (en) * 2003-09-30 2011-11-01 Avaya Inc. Endpoint registration with local back-off in a call processing system
US8804625B2 (en) * 2004-03-08 2014-08-12 Apple Inc. Pre-allocating resources of a wireless network for packet-switched real-time, interactive communications
US7899060B2 (en) * 2004-04-01 2011-03-01 Nortel Networks Limited Method for providing bearer specific information for wireless networks
KR101174525B1 (ko) * 2005-03-08 2012-08-16 삼성전자주식회사 푸쉬투토크 오버 셀룰러 네트워크의 응답 클라이언트 식별방법 및 그 시스템
CN1882125B (zh) * 2005-06-14 2012-10-24 株式会社Ntt都科摩 PoC服务器、PoC终端及其控制方法、发言权控制方法
KR100748695B1 (ko) 2006-02-17 2007-08-13 삼성전자주식회사 하나의 세션을 사용하여 서로 다른 종류의 pta 서비스를동시에 수행하는 pta 서비스 방법 및 그 시스템
US7873067B2 (en) * 2006-12-29 2011-01-18 Alcatel-Lucent Usa Inc. Adaptive method of floor control with fast response time and fairness in communication network
US7813327B2 (en) * 2007-11-30 2010-10-12 Motorola, Inc. Method and system for peer to peer wide area network communication
CN101626548B (zh) * 2008-07-08 2012-10-17 华为技术有限公司 用户话权管理方法和***及无线一键通服务器
US8269817B2 (en) 2008-07-16 2012-09-18 Cisco Technology, Inc. Floor control in multi-point conference systems
CN102469295B (zh) * 2010-10-29 2015-03-11 华为终端有限公司 会议控制方法及相关设备和***
KR20120055872A (ko) * 2010-11-24 2012-06-01 엘지전자 주식회사 이동 단말기 및 그 구동 방법
KR20130004996A (ko) * 2011-07-05 2013-01-15 엘지전자 주식회사 이종망간 VoIP 통신 방법 및 이를 위한 장치
US20140112244A1 (en) 2012-10-19 2014-04-24 Qualcomm Incorporated Synchronizing floor control and media sharing in a half-duplex ptt system
US9060366B2 (en) 2013-06-19 2015-06-16 Verizon Patent And Licensing Inc. Maintaining connectivity during call-setup
US9814037B2 (en) * 2013-06-28 2017-11-07 Intel Corporation Method for efficient channel estimation and beamforming in FDD system by exploiting uplink-downlink correspondence
FR3021482B1 (fr) * 2014-05-23 2016-09-09 Astrium Sas Procede de gestion de prise de parole sur un canal de communication dans le cadre de communications en alternat
WO2016162832A1 (en) * 2015-04-09 2016-10-13 Telefonaktiebolaget Lm Ericsson (Publ) System, method, and apparatus for floor control during push to talk
US10681505B2 (en) * 2015-08-12 2020-06-09 Samsung Electronics Co., Ltd Method and apparatus for performing direct communication with at least one other user equipment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110289203A1 (en) * 2010-05-19 2011-11-24 Avaya Inc. Sip monitoring and control anchor points
US20140228011A1 (en) * 2010-07-08 2014-08-14 Qualcomm Incorporated Group communication sessions in a wireless communications system

Also Published As

Publication number Publication date
US10225226B2 (en) 2019-03-05
US20160337302A1 (en) 2016-11-17
EP3295767B1 (en) 2022-03-30
WO2016182326A1 (en) 2016-11-17
EP3295767A1 (en) 2018-03-21
KR20160132742A (ko) 2016-11-21
EP3295767A4 (en) 2018-05-30

Similar Documents

Publication Publication Date Title
KR102340796B1 (ko) 단말기들의 통신 방법 및 그 단말기
RU2628323C1 (ru) Способы и аппаратура для привязки к устройству
KR102125564B1 (ko) 디바이스들 간의 통신 방법 및 그 디바이스
AU2019202418B2 (en) System and method of providing voice-message call service
KR101685027B1 (ko) 전자 디바이스들에 대한 근접 잠금해제 및 잠금 동작들
CN107690796B (zh) 多个用户设备之间的呼叫管理
JP6097679B2 (ja) 端末間機能共有方法及びその端末
EP3793178B1 (en) System and method of providing voice-message call service
KR102499378B1 (ko) 통신 장치 및 통신 방법
EP3203690B1 (en) Message transmission method and apparatus, and electronic device
JP2017085567A (ja) ユーザ端末、メッセージを送受信する方法及びコンピュータプログラム
KR20160036496A (ko) 무선 거리 측정 장치 및 방법
KR101943989B1 (ko) 데이터를 송수신하는 방법, 서버 및 단말기
EP3314973B1 (en) Communication method in a terminal and terminal suitable for the same
WO2017061081A1 (en) Communication apparatus and control method for the same
JP2015031981A (ja) 画像形成システム
KR20230047019A (ko) 통신 장치, 제어 방법, 및 프로그램을 저장하는 비일시적 컴퓨터 판독가능 저장 매체
JP6204538B2 (ja) 画像形成システム
EP3033919B1 (en) Method and apparatus for setting communication and recording medium thereof
KR102317093B1 (ko) 단말기들의 통신 방법 및 그 단말기
WO2024092796A1 (zh) 信息处理方法及装置、通信设备及存储介质
KR20180051337A (ko) 통신을 수행하는 방법 및 단말기
KR102276858B1 (ko) 단말기들의 통신 방법 및 그 단말기

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