KR20160114618A - Voip 시스템에서의 페일오버 동안 사용자들의 구별 또는 우선순위화 - Google Patents

Voip 시스템에서의 페일오버 동안 사용자들의 구별 또는 우선순위화 Download PDF

Info

Publication number
KR20160114618A
KR20160114618A KR1020167022097A KR20167022097A KR20160114618A KR 20160114618 A KR20160114618 A KR 20160114618A KR 1020167022097 A KR1020167022097 A KR 1020167022097A KR 20167022097 A KR20167022097 A KR 20167022097A KR 20160114618 A KR20160114618 A KR 20160114618A
Authority
KR
South Korea
Prior art keywords
server
client device
voice communication
packet
based voice
Prior art date
Application number
KR1020167022097A
Other languages
English (en)
Inventor
비자이 아난드라오 수르야반시
모하메드 아타울 라흐만 슈만
마크 마겐티
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20160114618A publication Critical patent/KR20160114618A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • 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/10Architectures or entities
    • H04L65/1063Application servers providing network services
    • 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/80Responding to QoS
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1036Load balancing of requests to servers for services different from user content provisioning, e.g. load balancing across domain name servers
    • H04L67/2814
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0081Network operation, administration, maintenance, or provisioning
    • H04M7/0084Network monitoring; Error detection; Error recovery; Network testing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 개시의 양태는 서버 고장 동안 사용자들을 우선순위화하는 것에 관련된다. 클라이언트 디바이스 또는 중앙 비-지역적 컴포넌트는, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하고, 제 1 지역에서 패킷 기반 음성 통신 서비스를 활용하도록 등록된 클라이언트 디바이스를 패킷 기반 음성 통신 서비스를 제공하는 제 2 서버로 리디렉션하며, 여기서 리디렉션하는 것은 클라이언트 디바이스의 사용자의 우선순위 레벨에 기반한다. 본 개시의 양태는 피어-지원 페일오버 복구에 관련된다. 제 1 클라이언트 디바이스는, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하고, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 제 1 지역에서의 제 2 클라이언트 디바이스에 통지한다.

Description

VOIP 시스템에서의 페일오버 동안 사용자들의 구별 또는 우선순위화{DISCRIMINATING OR PRIORITIZING USERS DURING FAILOVER IN A VOIP SYSTEM}
본 개시는 보이스 오버 인터넷 프로토콜 (VoIP) 시스템에서의 페일오버 동안 사용자들을 구별하거나 또는 우선순위화는 것에 관한 것이다.
무선 통신 시스템들은 1 세대 아날로그 무선 전화 서비스 (1G), (중간 2.5G 및 2.75G 네트워크들을 포함하는) 2 세대 (2G) 디지털 무선 전화 서비스, 3 세대 (3G) 고속 데이터, 인터넷-케이블 무선 서비스 및 4 세대 (4G) 서비스 (예컨대, 롱 텀 에볼루션 (LTE) 또는 WiMax) 를 포함하는 다양한 세대들을 통해 개발되었다. 현재, 셀룰러 및 퍼스널 통신 서비스 (PCS) 시스템들을 포함하는 다수의 상이한 타입들의 무선 통신 시스템들이 사용중에 있다. 공지된 셀룰러 시스템들의 예들은 셀룰러 아날로그 어드밴스드 모바일 전화 시스템 (AMPS), 및 코드 분할 다중 액세스 (CDMA), 주파수 분할 다중 액세스 (FDMA), 시분할 다중 액세스 (TDMA), TDMA 의 모바일용 글로벌 시스템 액세스 (GSM) 변형, 등에 기반하는 디지털 셀룰러 시스템들을 포함한다.
본 개시의 양태는 서버 고장 동안 사용자들을 우선순위화하는 것에 관련된다. 서버 고장 동안 사용자들을 우선순위화하기 위한 방법은, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하는 것, 및 제 1 지역에서 패킷 기반 음성 통신 서비스를 활용하도록 등록된 클라이언트 디바이스를 패킷 기반 음성 통신 서비스를 제공하는 제 2 서버로 리디렉션하는 것을 포함하며, 여기서 리디렉션하는 것은 클라이언트 디바이스의 사용자의 우선순위 레벨에 기반한다.
서버 고장 동안 사용자들을 우선순위화하기 위한 장치는, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하도록 구성된 로직, 및 제 1 지역에서 패킷 기반 음성 통신 서비스를 활용하도록 등록된 클라이언트 디바이스를 패킷 기반 음성 통신 서비스를 제공하는 제 2 서버로 리디렉션하도록 구성된 로직을 포함하며, 여기서 리디렉션하는 것은 클라이언트 디바이스의 사용자의 우선순위 레벨에 기반한다.
본 개시의 양태는 피어-지원 페일오버 복구에 관련된다. 피어-지원 페일오버 복구를 위한 방법은, 제 1 클라이언트 디바이스에 의해, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하는 것, 및 제 1 클라이언트 디바이스에 의해, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 제 1 지역에서의 제 2 클라이언트 디바이스에 통지하는 것을 포함한다.
피어-지원 페일오버 복구를 위한 장치는, 제 1 클라이언트 디바이스에 의해, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하도록 구성된 로직, 및 제 1 클라이언트 디바이스에 의해, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 제 1 지역에서의 제 2 클라이언트 디바이스에 통지하도록 구성된 로직을 포함한다.
본 발명의 실시형태들의 더 완전한 인식 및 다수의 부수적 장점들은 본 발명의 한정없이 오직 예시를 위해서만 제시된 첨부된 도면들과 관련하여 고려될 경우, 이하 상세한 설명의 참조에 의해 더 잘 이해되는 것과 같이 용이하게 획득될 것이다.
도 1 은 본 발명의 일 실시형태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 도시한다.
도 2 는 본 발명의 실시형태들에 따른 사용자 장비들 (UE들) 의 예들을 도시한다.
도 3 은 본 개시물의 일 실시형태에 따른 기능성을 수행하도록 구성된 로직을 포함하는 통신 디바이스를 도시한다.
도 4 는 본 발명의 일 실시형태에 따른 서버를 도시한다.
도 5 는 예시적인 보이스 오버 인터넷 프로토콜 (VoIP) 전개를 도시한다.
도 6 은 이차 지역/서버에 대한 예시적인 페일오버를 도시하는 호출 흐름이다.
도 7 은 서버 고장 동안 사용자들을 우선순위화하기 위한 예시적인 흐름을 도시한다.
도 8 은 피어-지원 페일오버 복구를 위한 예시적인 흐름을 도시한다.
도 9 는 상호 관련된 기능 모듈들의 시리즈들로서 표현된, 서버 고장 동안 사용자들을 우선순위화하기 위한 예시적인 장치를 도시한다.
도 10 은 상호 관련된 기능 모듈들의 시리즈들로서 표현된, 피어-지원 페일오버 복구를 위한 예시적인 클라이언트 디바이스 장치를 도시한다.
본 발명의 양태들은 본 발명의 특정 실시형태들에 관한 다음의 설명 및 관련 도면에 개시된다. 대안적인 실시형태들은 본 발명의 범위로부터 벗어나지 않으면서 고안될 수도 있다. 추가로, 본 발명의 잘 알려진 엘리먼트들은 본 발명의 관련 세부사항들을 불명료하게 하지 않도록 상세하게는 설명되지 않거나 생략될 것이다.
단어들 "예시적인" 및/또는 "예의" 은 본원에서 "예, 예증, 또는 예시로서 기능하는" 것을 의미하기 위해 사용된다. 본원에서 "예시적인" 및/또는 "예의" 것으로서 설명되는 임의의 실시형태는 다른 실시형태들에 비해 반드시 바람직하거나 유리한 것으로서 해석되지는 않는다. 마찬가지로, 용어 "본 발명의 실시형태들" 은 본 발명의 모든 실시형태들이 논의되는 특징, 이점 또는 동작 모드를 포함하는 것을 요구하지는 않는다.
또한, 많은 실시형태들이, 예를 들어 컴퓨팅 디바이스의 엘리먼트들에 의해 수행될 액션들의 시퀀스들과 관련하여 설명된다. 본 명세서에서 설명되는 다양한 액션들은 특정 회로들 (예컨대, 주문형 반도체 회로들 (ASIC들)) 에 의해, 하나 이상의 프로세서들에 의해 실행되는 프로그램 명령들에 의해, 또는 이들 양자의 조합에 의해 수행될 수 있다. 추가로, 본 명세서에서 설명되는 액션들의 이들 시퀀스는, 실행 시, 연관된 프로세서로 하여금, 본 명세서에서 설명되는 기능을 수행하게 하는 컴퓨터 명령들의 대응하는 세트를 내부에 저장하는 임의의 형태의 컴퓨터 판독가능 저장 매체 내에 전체적으로 구현되는 것으로 간주될 수 있다. 따라서, 본 발명의 다양한 양태들은 다수의 상이한 형태들로 구현될 수도 있으며, 이들 모두는 청구되는 주제의 범위 내에 있는 것으로 간주된다. 부가적으로, 본 명세서에서 설명된 실시형태들 각각에 대해, 임의의 그러한 실시형태들의 대응하는 형태는, 예를 들어, 설명된 액션을 수행 "하도록 구성된 로직" 으로서 본 명세서에서 설명될 수도 있다.
또한 본 명세서에서 사용자 장비 (UE) 로 지칭되는 클라이언트는, 이동가능하거나 정지할 수도 있고, 무선 액세스 네트워크 (RAN) 와 통신할 수도 있다. 본원에서 사용되는 것과 같이, 용어 "UE" 는 "액세스 단말기" 또는 "AT", "무선 디바이스", "가입자 디바이스", "가입자 단말기", "가입자국", "사용자 단말기" 또는 UT, "모바일 단말기", "모바일 스테이션" 및 그 변형물들로서 상호교환가능하게 지칭될 수도 있다. 일반적으로, UE들은 RAN 을 통해 코어 네트워크와 통신할 수 있고, 코어 네트워크를 통해 UE들은 인터넷과 같은 외부 네트워크들과 접속될 수 있다. 물론, 코어 네트워크 및/또는 인터넷에 접속하는 다른 메커니즘들은 예컨대 유선 액세스 네트워크들, (예컨대, IEEE 802.11 등을 기반으로 하는) WiFi 네트워크들, 등등을 통해 UE들에 대해서도 가능하다. UE들은 PC 카드들, 소형 플래시 디바이스들, 외부 또는 내부 모뎀들, 무선 또는 유선 전화들, 등등을 포함하지만, 이에 제한되지 않는 다수의 디바이스 타입들 중 임의의 것에 의해 구현될 수 있다. 그를 통해 UE들이 신호들을 RAN 로 전송할 수 있는 통신 링크는 업링크 채널 (예컨대, 역방향 트래픽 채널, 역방향 제어 채널, 액세스 단말, 등) 로 불린다. 그를 통해 RAN 이 신호들을 UE들로 전송할 수 있는 통신 링크는 다운링크 또는 순방향 링크 채널 (예컨대, 페이징 채널, 제어 채널, 브로드캐스트 채널, 순방향 트래픽 채널, 등) 로 불린다. 본 명세서에서 사용된 것가 같이, 용어 트래픽 채널 (TCH) 은 업링크 / 역방향 또는 다운링크 / 순방향 트래픽 채널을 지칭할 수 있다.
도 1 은 본 발명의 일 실시형태에 따른 무선 통신 시스템 (100) 의 하이 레벨 시스템 아키텍처를 도시한다. 무선 통신 시스템 (100) 은 UE들 (1...N) 을 포함한다. UE들 (1...N) 은 셀룰러 전화들, 개인 디지털 보조장치 (PDA들), 페이저들, 랩톱 컴퓨터, 데스크톱 컴퓨터, 등등을 포함할 수 있다. 예를 들어, 도 1 에서, UE들 (1...2) 은 셀룰러 호출 전화기들로서 도시되고, UE들 (3...5) 은 셀룰러 터치스크린 폰들 또는 스마트폰들로서 도시되고, UE (N) 는 데스크톱 컴퓨터 또는 PC 로서 도시된다.
도 1 을 참조하여, UE들 (1...N) 은 도 1 에 공중 인터페이스들 (104, 106, 108) 및/또는 직접 유선 접속으로서 도시된, 물리적 통신 인터페이스 또는 계층을 통해 액세스 네트워크 (예컨대, RAN (120), 액세스 포인트 (125), 등) 와 통신하도록 구성된다. 공중 인터페이스들 (104 및 106) 은 소정의 셀룰러 통신 프로토콜 (예컨대, CDMA, EVDO, eHRPD, GSM, EDGE, W-CDMA, LTE, 등)에 부합할 수 있고, 공중 인터페이스 (108) 는 무선 IP 프로토콜 (예컨대, IEEE 802.11) 에 부합할 수 있다. RAN (120) 은 공중 인터페이스들 (104 및 106) 과 같은 공중 인터페이스들을 통해 UE들을 서빙하는 복수의 액세스 포인트들을 포함한다. RAN (120) 에서의 액세스 포인트들은 액세스 노드들 또는 AN들, 액세스 포인트들 또는 AP들, 기지국들 또는 BS들, 노드 B들, e노드 B들, 등으로 지칭될 수 있다. 이들 액세스 포인트들은 육상 액세스 포인트들 (또는 지상국들), 또는 위성 액세스 포인트들일 수 있다. RAN (120) 은 RAN (120) 에 의해 서빙되는 UE들과, RAN (120) 또는 다른 RAN 에 의해 함께 서빙되는 다른 UE들 간에 회선 교환 (CS) 호출들을 브리징하는 것을 포함하는 다양한 기능들을 수행할 수 있고, 또한 인터넷 (175) 과 같은 외부 네트워크들과의 패킷-교환 (PS) 데이터의 교환을 중재할 수 있는 코어 네트워크 (140) 에 접속하도록 구성된다. 인터넷 (175) 은 (편의를 위해 도 1 에 도시되지 않은) 다수의 라우팅 에이전트들 및 프로세싱 에이전트들을 포함한다. 도 1 에서, UE (N) 은 인터넷 (175) 에 직접 (즉, 코어 네트워크 (140) 로부터 분리되어, 예컨대 WiFi 또는 802.11-기반 네트워크의 이더넷 접속을 통해) 접속하는 것으로 도시된다. 따라서, 인터넷 (175) 은 코어 네트워크 (140) 를 통해 UE (N) 과 UE들 (1...N) 간에 패킷-교환 데이터 통신들을 브리징하도록 기능할 수 있다. 또한 도 1 에 도시된 것은, RAN (120) 로부터 분리된 액세스 포인트 (125) 이다. 액세스 포인트 (125) 는 (예컨대, FiOS, 케이블 모뎀, 등과 같은 광학 통신 시스템을 통해) 코어 네트워크 (140) 와 독립적으로 인터넷 (175) 에 접속될 수도 있다. 공중 인터페이스 (108) 는 일 예에서 IEEE 802.11 와 같은 로컬 무선 접속을 통해 UE (4) 또는 UE (5) 를 서빙할 수도 있다. UE (N) 는 (예컨대, 유선 및 무선 접속성 양자를 갖는 WiFi 라우터에 대하여) 일 예에서 액세스 포인트 (125) 자체에 대응할 수 있는, 모뎀 또는 라우터로의 직접 접속과 같은, 인터넷 (175) 으로의 유선 접속을 갖는 데스크톱 컴퓨터로서 도시된다.
도 1 을 참조하면, 서버 (170) 는 인터넷 (175), 코어 네트워크 (140), 또는 이들 양자에 접속된 것으로 도시된다. 서버 (170) 는 복수의 구성적으로 별개의 서버들로서 구현될 수 있거나, 또는 대안적으로 단일 서버에 대응할 수도 있다. 하기에 더 상세히 설명되는 것과 같이, 서버 (170) 는 코어 네트워크 (140) 및/또는 인터넷 (175) 을 통해 서버 (170) 에 접속할 수 있는 UE들에 대하여 하나 이상의 통신 서비스들 (예컨대, 보이스-오버-인터넷 프로토콜 (VoIP) 세션들, 푸시-투-토크 (PTT) 세션들, 그룹 통신 세션들, 소셜 네트워킹 서비스들, 등) 을 지원하고, 및/또는 컨텐츠 (예컨대, 웹 페이지 다운로드들) 를 UE들로 제공하도록 구성된다.
도 2 는 본 발명의 실시형태들에 따른 UE들 (즉, 클라이언트 디바이스들) 의 예들을 도시한다. 도 2 를 참조하여, UE (200A) 는 호출 전화기로서 도시되고, UE (200B) 는 터치스크린 디바이스 (예컨대, 스마트폰, 태블릿 컴퓨터, 등) 로서 도시된다. 도 2 에 도시된 것과 같이, UE (200A) 의 외부 케이싱은 당업계에 공지된 것과 같은 다른 컴포넌트들 중에서, 안테나 (205A), 디스플레이 (210A), 적어도 하나의 버튼 (215A) (예컨대, PTT 버튼, 전원 버튼, 볼륨 조절 버튼, 등등) 및 키패드 (220A) 로 구성된다. 또한, UE (200B) 의 외부 케이싱은 당업계에 공지된 것과 같은 다른 컴포넌트들 중에서, 터치스크린 디스플레이 (205B), 주변장치 버튼들 (210B, 215B, 220B 및 225B) (예컨대, 전원 조절 버튼, 볼륨 또는 진동 조절 버튼, 비행기 모드 토글 버튼, 등등), 적어도 하나의 정면 패널 버튼 (230B) (예컨대, 홈 버튼, 등) 으로 구성된다. UE (200B) 의 부분으로서 맹백하게 도시된 것은 아니지만, UE (200B) 는, WiFi 안테나들, 셀룰러 안테나들, 위성 포지션 시스템 (SPS) 안테나들 (예컨대, 글로벌 포지셔닝 시스템 (GPS) 안테나들) 등을 포함하지만 이에 제한되지 않는, UE (200B) 의 외부 케이싱 내에 장착된 하나 이상의 외부 안테나들 및/또는 외부 집적 안테나들을 포함할 수 있다.
UE들 (200A 및 200B) 과 같은 UE들의 내부 컴포넌트들은 상이한 하드웨어 구성들로 구현될 수 있지만, 내부 하드웨어 컴포넌트들에 대한 기본 하이 레벨 UE 구성은 도 2 에 플랫폼 (202) 으로서 도시된다. 플랫폼 (202) 은 궁극적으로 코어 네트워크 (140), 인터넷 (175) 및/또는 다른 원격 서버들 및 네트워크들 (예컨대, 애플리케이션 서버 (170), 웹 URL들, 등) 으로부터 비롯될 수도 있는, RAN (120) 로부터 송신된 소프트웨어 애플리케이션들, 데이터 및/또는 커맨드들을 수신하고 실행할 수 있다. 플랫폼 (202) 은 또한 로컬로 저장된 애플리케이션들을 RAN 상호작용 없이 독립적으로 실행할 수 있다. 플랫폼 (202) 은 주문형 반도체 회로 (ASIC; 208), 또는 다른 프로세서, 마이크로프로세서, 로직 회로, 또는 다른 데이터 프로세싱 디바이스에 동작가능하게 커플링된 트랜시버 (206) 를 포함할 수 있다. ASIC (208) 또는 다른 프로세서는 무선 디바이스의 메모리 (212) 에서 임의의 상주하는 프로그램들과 인터페이싱하는 애플리케이션 프로그래밍 인터페이스 (API; 210) 를 실행한다. 메모리 (212) 는 판독 전용 또는 랜덤 액세스 메모리 (RAM 및 ROM), EEPROM, 플래시 카드들, 또는 컴퓨터 플랫폼들에 공통인 임의의 메모리로 구성될 수 있다. 플랫폼 (202) 은 또한, 메모리 (212) 에서 능동적으로 사용되지 않은 애플리케이션들뿐만 아니라 다른 데이터를 저장할 수 있는 로컬 데이터베이스 (214) 를 포함할 수 있다. 로컬 데이터베이스 (214) 는 통상적으로 플래시 메모리 셀이지만, 자기 매체, EEPROM, 광학 매체, 테이프, 소프트 또는 하드 디스크, 등등고 같이 당업계에 공지된 것과 같은 임의의 이차 저장 디바이스일 수 있다.
따라서, 본 발명의 일 실시형태는 본 명세서에 설명된 기능들을 수행하기 위한 능력을 포함하는 UE (예컨대, UE (200A), UE (200B), 등) 를 포함할 수 있다. 당업자에 의해 인식되는 것과 같이, 다양한 로직 엘리먼트들은 별개의 엘리먼트들, 프로세서에서 실행되는 소프트웨어 모듈들, 또는 본원에 개시된 기능을 달성하기 위한 소프트웨어와 하드웨어의 임의의 조합으로 구현될 수 있다. 예를 들어, ASIC (208), 메모리 (212), API (210) 및 로컬 데이터베이스 (214) 는 모두 본 명세서에 개시된 다양한 기능들을 로딩하고, 저장하고, 실행하기 위해 협력하여 사용될 수도 있고, 따라서 이들 기능들을 수행하기 위한 로직은 다양한 엘리먼트들에 걸쳐 분포될 수도 있다. 대안적으로, 그 기능은 하나의 별개의 컴포넌트 내에 통합될 수 있다. 그러므로, 도2 에서 UE들 (200A 및 200B) 의 특징들은 거의 예시적인 것으로 간주될 것이며, 본 발명은 도시된 특징들 또는 배열들에 제한되지 않는다.
UE들 (200A 및/또는 200B) 과 RAN (120) 간의 무선 통신은, CDMA, W-CDMA, 시분할 다중 액세스 (TDMA), 주파수 분할 다중 액세스 (FDMA), 주파수 분할 다중 액세스 (FDMA), 직교 주파수 분할 멀티플렉싱 (OFDM), 또는 무선 통신 네트워크 또는 데이터 통신 네트워크에서 사용될 수도 있는 다른 프로토콜들과 같은, 상이한 무선 기술들에 기초할 수 있다. 앞의 설명에서 논의되고 당업계에 공지된 것과 같이, 음성 송신 및 데이터는 다양한 네트워크들 및 구성들을 사용하여 RAN 으로부터 UE들로 송신될 수 있다. 따라서, 본원에서 제공된 도면들은 본 발명의 실시형태들을 제한하기 위한 것은 아니며, 단지 본 발명의 실시형태들의 양태들의 설명을 돕기 위한 것이다.
도 3 은 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스 (300) 를 도시한다. 통신 디바이스 (300) 는 UE들 (200A 또는 200B), RAN (120) 의 임의의 컴포넌트, 코어 네트워크 (140) 의 임의의 컴포넌트, 코어 네트워크 (140) 및/또는 인터넷 (175) 에 커플링된 임의의 컴포넌트들 (예컨대, 서버 (170)), 등을 포함하지만 이에 제한되지 않는 전술된 통신 디바이스들 중 임의의 것에 대응할 수 있다. 따라서, 통신 디바이스 (300) 는 도 1 의 무선 통신 시스템 (100) 을 통해 하나 이상의 다른 엔티티들과 통신하도록 (또는 그들과의 통신을 용이하게 하도록) 구성된 임의의 전자 디바이스에 대응할 수 있다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 을 포함한다. 일 예에서, 통신 디바이스 (300) 가 무선 통신 디바이스 (예를 들어, UE (200A 또는 200B), AP (125), BS, RAN (120) 에서의 노드 B 또는 e노드B, 등) 에 대응한다면, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 무선 트랜시버 및 관련 하드웨어 (예를 들어, RF 안테나, MODEM, 변조기 및/또는 복조기 등) 와 같은 무선 통신 인터페이스 (예를 들어, 블루투스, WiFi, 2G, CDMA, W-CDMA, 3G, 4G, LTE 등) 를 포함할 수 있다. 다른 예에서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 유선 통신 인터페이스 (예컨대, 직렬 접속, USB 또는 파이어웨어 접속, 인터넷 (175) 이 액세스될 수 있는 이더넷 접속, 등) 에 대응할 수 있다. 따라서, 통신 디바이스 (300) 가 몇몇 타입의 네트워크 기반 서버 (예컨대, 서버 (170), 등) 에 대응한다면, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은, 일 예에서, 이더넷 프로토콜을 통해 네트워크 기반 서버를 다른 통신 엔티티들에 접속하는, 이더넷 카드에 대응할 수 있다. 일 예로서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하도록 구성된 로직, 및 제 1 지역에서 패킷 기반 음성 통신 서비스를 활용하도록 등록된 클라이언트 디바이스를 패킷 기반 음성 통신 서비스를 제공하는 제 2 서버로 리디렉션하도록 구성된 로직을 포함할 수도 있고, 여기서 리디렉션하는 것은 클라이언트 디바이스의 사용자의 우선순위 레벨에 기반한다. 다른 예로서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은, 제 1 클라이언트 디바이스에 의해, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하도록 구성된 로직, 및 제 1 클라이언트 디바이스에 의해, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 제 1 지역에서의 제 2 클라이언트 디바이스에 통지하도록 구성된 로직을 포함할 수도 있다. 추가의 예에서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 통신 디바이스 (300) 가 그의 로컬 환경 (예컨대, 가속도계, 온도 센서, 광 센서, 로컬 RF 신호들을 모니터링하는 안테나, 등) 을 모니터링할 수 있게 하는 센서류 또는 계측 하드웨어를 포함할 수 있다. 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 또한, 실행될 경우, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 의 연관된 하드웨어가 그의 수신 및/또는 송신 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 소프트웨어 자체에만 대응하는 것은 아니며, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 그의 기능을 달성하도록 하는 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 프로세싱하도록 구성된 로직 (310) 을 더 포함한다. 일 예에서, 정보를 프로세싱하도록 구성된 로직 (310) 은 적어도 프로세서를 포함할 수 있다. 정보를 프로세싱하도록 구성된 로직 (310) 에 의해 수행될 수 있는 프로세싱 타입의 예시적 구현들은 결정들을 수행하는 것, 접속들을 확립하는 것, 상이한 정보 옵션들 사이에서 선택들을 하는 것, 데이터에 관련된 평가들을 수행하는 것, 통신 디바이스 (300) 에 커플링된 센서들과 상호작용하여 측정 동작들을 수행하는 것, 하나의 포맷으로부터 다른 포맷으로 (예컨대, .wmv 내지 .avi 등과 같은 상이한 프로토콜들 사이에서) 정보를 변환하는 것을 포함하지만, 이들에 한정되지는 않는다. 예를 들어, 정보를 프로세싱하도록 구성된 로직 (310) 에 포함된 프로세서는 범용 프로세서, 디지털 신호 프로세서 (DSP), ASIC, 필드 프로그래밍가능 게이트 어레이 (FPGA) 또는 다른 프로그래밍가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본 명세서에서 설명된 기능들을 수행하도록 설계된 이들의 임의의 조합에 대응할 수 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로, 그 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로 제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합, 예를 들면, DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 연계한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로서 구현될 수도 있다. 정보를 프로세싱하도록 구성된 로직 (310) 은 또한, 실행될 경우, 정보를 프로세싱하도록 구성된 로직 (310) 의 연관된 하드웨어가 그의 프로세싱 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 프로세싱하도록 구성된 로직 (310) 은 소프트웨어 자체에만 대응하는 것은 아니며, 정보를 프로세싱하도록 구성된 로직 (310) 은 그의 기능을 달성하도록 하는 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 저장하도록 구성된 로직 (315) 을 더 포함한다. 일 예에서, 정보를 저장하도록 구성된 로직 (315) 은 적어도 비-일시적 메모리 및 연관된 하드웨어 (예컨대, 메모리 제어기, 등) 을 포함할 수 있다. 예를 들어, 정보를 저장하도록 구성된 로직 (315) 에 포함된 비-일시적 메모리는 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 탈착가능한 디스크, CD-ROM, 또는 당업계에 공지된 임의의 다른 형태의 저장 매체에 대응할 수 있다. 정보를 저장하도록 구성된 로직 (315) 은 또한, 실행될 경우, 정보를 저장하도록 구성된 로직 (315) 의 연관된 하드웨어가 그의 저장 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 저장하도록 구성된 로직 (315) 은 소프트웨어 자체에만 대응하는 것은 아니며, 정보를 저장하도록 구성된 로직 (315) 은 그의 기능을 달성하도록 하는 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 제시하도록 구성된 로직 (320) 을 옵션으로 더 포함한다. 일 예에서, 정보를 제시하도록 구성된 로직 (320) 은 적어도 출력 디바이스 및 연관된 하드웨어를 포함할 수 있다. 예를 들어, 출력 디바이스는 비디오 출력 디바이스 (예컨대, 디스플레이 스크린, USB, HDMI 와 같이 비디오 전달할 수 있는 포트, 등) 및 오디오 출력 디바이스 (예컨대, 스피커들, 마이크로폰 잭, USB, HDMI 와 같은 오디오 정보를 전달할 수 있는 포트, 등), 진동 디바이스 및/또는 정보가 출력을 위해 포맷화될 수 있게 하거나 또는 통신 디바이스 (300) 의 사용자 또는 오퍼레이터에 의해 실질적으로 출력될 수 있게 하는 임의의 다른 디바이스를 포함할 수 있다. 예를 들어, 통신 디바이스 (300) 가 도 2 에 도시된 것과 같은 UE (200A) 또는 UE (200B) 에 대응한다면, 정보를 제시하도록 구성된 로직 (320) 은 UE (200A) 의 디스플레이 (210A) 또는 UE (200B) 의 터치스크린 디스플레이 (205B) 를 포함할 수 있다. 추가 예에서, 정보를 제시하도록 구성된 로직 (320) 은 어떤 통신 디바이스들, 이를테면 로컬 사용자를 갖지 않는 네트워크 통신 디바이스들 (예컨대, 네트워크 스위치들 또는 라우터들, 서버 (170) 와 같은 원격 서버들, 등) 에 대해 생략될 수 있다. 정보를 제시하도록 구성된 로직 (320) 은 또한, 실행될 경우, 정보를 제시하도록 구성된 로직 (320) 의 연관된 하드웨어가 그의 프리젠테이션 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 제시하도록 구성된 로직 (320) 은 소프트웨어 자체에만 대응하는 것은 아니며, 정보를 제시하도록 구성된 로직 (320) 은 그의 기능을 달성하도록 하는 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 을 옵션으로 더 포함한다. 일 예에서, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 적어도 사용자 입력 디바이스 및 연관된 하드웨어를 포함할 수 있다. 예를 들어, 사용자 입력 디바이스는 버튼들, 터치스크린 디스플레이, 키보드, 카메라, 오디오 입력 디바이스 (예컨대, 마이크로폰, 또는 마이크로폰 잭 등과 같이 오디오 정보를 전달할 수 있는 포트, 등), 및/또는 정보가 통신 디바이스 (300) 의 사용자 또는 오퍼레이터로부터 수신될 수 있게 하는 임의의 다른 디바이스를 포함할 수 있다. 예를 들어, 통신 디바이스 (300) 가 도 2 에 도시된 것과 같은 UE (200A) 또는 UE (200B) 에 대응한다면, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 키패드 (220A), 임의의 버튼들 (215A 또는 210B 내지 225B), 터치스크린 디스플레이 (205B), 등을 포함할 수 있다. 추가 예에서, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 어떤 통신 디바이스들, 이를테면 로컬 사용자를 갖지 않는 네트워크 통신 디바이스들 (예컨대, 네트워크 스위치들 또는 라우터들, 서버 (170) 와 같은 원격 서버들, 등) 에 대해 생략될 수 있다. 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 또한, 실행될 경우, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 의 연관된 하드웨어가 그의 입력 수신 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 소프트웨어 자체에만 대응하는 것은 아니며, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 그의 기능을 달성하도록 하는 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 구성된 로직들 (305 내지 325) 이 도 3 에서 분리된 또는 별개의 블록들로서 도시되지만, 각각의 구성된 로직이 그의 기능을 수행하게 하는 하드웨어 및/또는 소프트웨어는 부분적으로 중첩할 수 있음이 인식될 것이다. 예를 들어, 구성될 로직들 (305 내지 325) 의 기능을 용이하게 하는 데 이용되는 임의의 소프트웨어는 정보를 저장하도록 구성된 로직 (315) 과 연관된 비-일시적 메모리에 저장되어, 구성된 로직들 (305 내지 325) 각각이 정보를 저장하도록 구성된 로직 (315) 에 의해 저장된 소프트웨어의 동작에 부분적으로 기초하여 그들의 기능 (즉, 이 경우에, 소프트웨어 실행) 을 수행하도록 할 수 있다. 마찬가지로, 구성된 로직들 중 하나와 직접적으로 연관된 하드웨어는 시간의 경과에 따라 다른 구성된 로직들에 의해 대여되거나 또는 이용될 수 있다. 예를 들어, 정보를 프로세싱하도록 구성된 로직 (310) 의 프로세서는, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 에 의해 송신되기 전에, 데이터를 적절한 포맷으로 포맷화하여, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 이 정보를 프로세싱하도록 구성된 로직 (310) 과 연관된 하드웨어 (즉, 프로세서) 의 동작에 부분적으로 기초하여 그의 기능 (즉, 이 경우에서, 데이터의 송신) 을 수행하게 할 수 있다.
일반적으로, 명백히 다르게 언급되지 않는다면, 본 개시물 전체에서 사용된 것과 같은 어구 "하도록 구성된 로직" 은 적어도 부분적으로 하드웨어로 구현되는 실시형태를 호출하기 위한 것이며, 하드웨어와 독립적인 소프트웨어 전용 구현들에 맵핑하기 위한 것은 아니다. 또한, 다양한 블록들에서 구성된 로직 또는 "하도록 구성된 로직" 은 특정 로직 게이트들 또는 엘리먼트들에 제한되는 것이 아니며, 일반적으로 (하드웨어 또는 하드웨어와 소프트웨어의 조합을 통해) 본원에 설명된 기능을 수행하기 위한 능력을 지칭한다. 따라서, 다양한 블록들에서 구성된 로직 또는 "하도록 구성된 로직" 은 단어 "로직" 을 공유하지만 로직 게이트들 또는 로직 엘리먼트들로 구현되어야만 하는 것은 아니다. 다양한 블록들에서의 로직 간에 다른 상호작용들 또는 협력은 이하 더 상세히 설명되는 실시형태들의 검토를 통해 당업자에게 명확해질 것이다.
다양한 실시형태들은 도 4 에 도시된 서버 (400) 와 같은 다양한 상업적으로 입수가능한 서버 디바이스들 중 임의의 것에서 구현될 수도 있다. 일 예에서, 서버 (400) 는 전술된 애플리케이션 서버 (170) 의 일 예시적인 구성에 대응할 수도 있다. 도 4 에서, 서버 (400) 는 휘발성 메모리 (402) 및 대용량 비휘발성 메모리, 예컨대 디스크 드라이브 (403) 에 커플링된 프로세서 (400) 를 포함한다. 서버 (400) 는 또한 프로세서 (401) 에 커플링된 플로피 디스크 드라이브, 컴팩트 디스크 (CD) 또는 DVD 디스크 드라이브 (406) 를 포함할 수도 있다. 서버 (400) 는 또한, 다른 브로드캐스트 시스템 컴퓨터들과 서버들에 또는 인터넷에 커플링된 로컬 영역 네트워크와 같은, 네트워크 (407) 와의 데이터 접속들을 확립하기 위해 프로세서 (401) 에 커플링된 네트워크 액세스 포트들 (404) 을 포함할 수도 있다. 도 3 과의 문맥에서, 도 4 의 서버 (400) 는 통신 디바이스 (300) 의 일 예시적인 구현을 도시하며, 따라서 정보를 송신 및/또는 수신하도록 구성된 로직 (305) 은 네트워크 (407) 와 통신하기 위해 서버 (400) 에 의해 사용된 네트워크 액세스 포트들 (304) 에 대응하고, 정보를 프로세싱하도록 구성된 로직 (310) 은 프로세서 (401) 에 대응하며, 정보를 저장하기 위한 로직 구성 (315) 은 휘발성 메모리 (402), 디스크 드라이브 (403) 및/또는 디스크 드라이브 (406) 의 임의의 조합에 대응하는 것이 인식될 것이다. 정보를 제시하도록 구성된 옵션의 로직 (320) 및 로컬 사용자 입력을 수신하도록 구성된 옵션의 로직 (325) 은 도 4 에 명백히 도시되지 않으며, 도 4 에 포함될 수도 있거나 포함되지 않을 수도 있다. 따라서, 도 4 는, 통신 디바이스 (300) 가, 도 2 에서와 같은 205A 또는 205B 에서의 UE 구현에 부가하여, 서버로서 구현될 수도 있음을 설명하는 것을 돕는다.
VoIP 는 인터넷과 같은 IP 네트워크를 통해 음성 통신들 및 멀티미디어 세션들을 전달하기 위한 방법이다. VoIP 호출을 발신하는데 수반되는 단계들은, 종래의 디지털 전화와 유사하고, 시그널링, 채널 셋업, 아날로그 음성 신호들의 디지털화, 및 인코딩을 수반한다. 그러나 회선-교환 네트워크를 통해 송신되고 있는 것 대신, 호출 정보는 패킷화되고 패킷-교환 네트워크를 통해 IP 패킷들로서 송신된다.
도 5 는 예시적인 VoIP 전개를 도시한다. 통상의 VoIP 전개는 VoIP 서비스 영역을 유지보수의 용이함을 위해 다수의 지역들로 분해하는 것, 과금 및 인증과 같은 자율 프로세스들을 보장하는 것, 및 단일 지역 고장의 경우에 서비스 연속성을 보장하는 것으로 이루어진다. 도 5 의 예에서, 서비스 제공자는 VoIP 서비스 영역을 3 개의 상이한 지리적 존들 또는 지역들, 예컨대 지역 1 (510), 지역 2 (520), 및 지역 3 (530) 으로 분할할 수도 있다. 도 5 에 도시된 지역들은 지리적인 지역들이지만, 그 지역들은 리소스 타입 및/또는 사용가능성에 기초하여 분할된 지역들과 같은, 임의의 타입의 VoIP 서비스 영역 분할일 수도 있다.
도 5 에 도시된 것과 같이, 각각의 지역은 도 1 에서의 애플리케이션 서버 (170) 와 같은 몇몇 VoIP 애플리케이션 서버들 및 다수의 클라이언트 디바이스들을 포함한다. VoIP 애플리케이션 서버들은 당업계에 공지된 것과 같이, 개별 지역들에서 VoIP 서비스들을 제공하기 위해, 클라이언트 디바이스들과 및 서로 통신할 수도 있다. 구체적으로, VoIP 애플리케이션 서버들 (512a - 512c) 은 클라이언트 디바이스들 (514) 에 대한 VoIP 서비스들을 제공하고, VoIP 애플리케이션 서버들 (522a - 522c) 은 클라이언트 디바이스들 (524) 에 대한 VoIP 서비스들을 제공하고, VoIP 애플리케이션 서버들 (532a - 532c) 은 클라이언트 디바이스들 (534) 에 대한 VoIP 서비스들을 제공한다. 개별 지역들에서 고장들을 검출할 수 있는 임의의 네트워크 컴포넌트일 수도 있는 중앙 비-지역적 컴포넌트 (540) 는 지역들 (510 - 530) 과 통신하고 협력한다.
도 5 는 각 지역에서 3 개의 VoIP 애플리케이션 서버들 및 4 개의 클라이언트 디바이스들을 도시하지만, 각 지역에서 임의의 수의 VoIP 애플리케이션 서버들 및 클라이언트 디바이스들이 존재할 수도 있음이 인식될 것이다. 추가로, 도 5 는 VoIP 서비스를 제공하는 지역들을 도시하지만, 이들은 임의의 패킷 기반 음성 통신 서비스를 제공하는 영역들일 수 있다.
간헐적으로, 영역에서의 하나 이상의 서버들은 "중단될 (go down)" 수도 있거나, 그렇지 않으면 기능하지 않을 수도 있다. 그런 일이 일어나면, 서버들에 접속된 사용자들 (즉, 사용자들의 대응하는 클라이언트 디바이스들) 서비스를 수신할 수 없을 것이다. 그 경우, 사용자들은 다른 지역 또는 동일한 지역의 다른 서버에게 페일오버될 수도 있다. 서비스 레벨 동의 (SLA) 에 의존하는 페일오버는, 그 영향을 받은 사용자들이 가능하면 빨리 복구되게 하기 위한 서비스를 요구한다. 이는 통상적으로 고장난 지역에서 영향을 받은 사용자들을 여전히 활성인 다른 지역으로 리디렉션하는 것을 수반한다.
본 명세서에서 사용되는 것과 같이, 서버 고장은 지역 고장과 등가일 수도있음에 유의하여야 한다. 특정 서버가 소정 지역에서 다운되고 클라이언트 디바이스가 그 지역의 다른 서버와 접촉하기 위해 어떤 다른 수단도 가지지 않는다면, 그 지역은 클라이언트의 관점에서 실질적으로 "다운"된다. 예컨대, 본 명세서에 설명된 기술들은 전체 지역의 고장 및 지역 내의 단일 서버의 고장에 동등하게 적용된다. 예를 들어, 영향받은 클라이언트 디바이스들을 상이한 지역으로 이동시키는 것보다, 동일한 지역 내의 다른 서버가 사용가능하고 본 명세서에서 설명된 다른 기준들이 충족된다면, 동일한 지역 내의 다른 서버로 이동될 수도 있다.
도 6 은 이차 지역/서버에 대한 예시적인 페일오버를 도시하는 호출 흐름이다. 605 에서, 클라이언트 디바이스들 (514, 524, 또는 534) 중 하나와 같은 클라이언트 디바이스 (600) 는 이미 그 일차 지역/서버 및 이차 지역/서버에 대한 등록 서버 및 VoIP/PTT 호출 핸들러를 발견하였고, 각각의 등록 서버 및 VoIP/PTT 호출 핸들러에 대한 일차 및 이차 DNS 기록들을 캐싱하였고, 일차 지역/서버를 성공적으로 등록하였다. 일 예로서, 클라이언트 디바이스 (600) 는 클라이언트 디바이스들 (514) 중 하나에 대응할 수도 있고, 일차 지역/서버는 지역 1 (510) / VoIP 애플리케이션 서버 (512a) 에 대응할 수도 있다.
610 에서, 일차 지역 (예컨대, 지역 1 (510)) 또는 일차 서버 (예컨대, VoIP 애플리케이션 서버 (512a)) 는 중단된다. 615 에서, 클라이언트 디바이스 (600) 는 고장을 검출하고, 페일오버를 개시한다. 620 에서, 클라이언트 디바이스 (600) 는 이차 지역/서버와의 VoIP 서비스 등록을 개시하기 위해, 캐싱된 등록 서버 및 VoIP/PTT 호출 핸들러 정보를 사용한다. 일 예로서, 이차 지역/서버는 도 5 에서의 지역 3 (530)/VoIP 애플리케이션 서버 (512b) 일 수도 있다. 625 에서, 클라이언트 디바이스 (600) 는 SIP REGISTER 메세지를 VoIP 애플리케이션 서버 (670) 로 전송한다. VoIP 애플리케이션 서버 (670) 는 VoIP 애플리케이션 서버들 (532a - 532c) 중 하나와 같은 이차 지역에서의 애플리케이션 서버, 또는 VoIP 애플리케이션 서버 (512b) 와 같은 제 1 지역에서의 다른 애플리케이션 서버일 수도 있다. 630 에서, VoIP 애플리케이션 서버 (670) 는 200 OK 확인응답으로 응답한다. 635 에서, VoIP 애플리케이션 서버 (670) 는 INFO-서비스 사용가능 메세지를 클라이언트 디바이스 (600) 로 전송한다. 640 에서, 클라이언트 디바이스 (600) 는 확인응답 (ACK) 으로 응답한다.
서버 중심의 페일오버 접근방식에서, 도 5 에서의 중앙 비-지역적 컴포넌트 (540) 와 같은 중앙 비-지역적 컴포넌트는, 지역이 고장난 것을 검출하고, 고장난 지역에 있는 클라이언트들을 활성 지역으로 리디렉션 또는 이동시키는 페일오버 프로세스를 시작할 수 있다. 도 6 의 예에서, 클라이언트 디바이스 (600) 는 고장을 표시하는 중앙 비-지역적 컴포넌트로부터의 통신을 수신하는 것에 의해 또는 지역이 활성인지의 여부를 검사하기 위한 주기적인 테스트 (ping) 들을 전송하는 것에 의해, 615 에서 고장을 검출할 수도 있다. 그러나, 무분별한 페일오버는 네트워크 오버로드 및/또는 용량 오버로드를 발생할 수도 있다. RAN 및/또는 백엔드 정보 기술 인프라구조 레벨에서와 같은 네트워크 오버로드는 고장난 지역에서 영향받은 사용자들에게 호출 메세지들을 전송해야만 하는 것에 의해 발생될 수도 있다. 용량 오버로드는, 영향받은 사용자들이 지금부터 활성 지역들의 부분이고 활성 지역들이 지금부터 더 많은 수의 사용자들에게 서비스를 제공해야만 하기 때문에, 발생할 수도 있다.
그러한 오버로드를 완화시키기 위해, 중앙 비-지역적 컴포넌트는 활성 지역으로 페일오버되어야만 하는 사용자들을 우선순위화할 수 있다. 우선순위화는, 예컨대 사용자의 타입, 사용자의 활성도, 또는 등록 TTL (time to live) 에 기초할 수 있다. 사용자의 타입에 기초하여 우선순위화하는 것의 예들로서, 응급 구조 대원들 또는 법 집행관들은 다른 사용자들보다 우선순위가 될 수 있고, 프리미엄 가입자들은 비-프리미엄 가입자들보다 우선순위가 될 수 있고, 및/또는 기업 사용자들은 비-기업 사용자들보자 우선순위가 될 수 있다.
활성도에 기초한 우선순위화의 일 예로서, 더 활성인, 즉 그 지역에서 더 빈번하게 제공되는 통신 서비스를 사용하는 사용자들은 비-활성의 사용자들보다 우선순위가 될 수 있다. 등록 TTL 에 기초한 우선순위화의 일 예로서, 곧 종료하지 않을 TTL 을 갖는 사용자들이 우선순위가 될 수 있는데, 이는 그러한 사용자들이 더 긴 시간주기 동안 재등록을 트리거하지 않을 것이기 때문이다. 유사하게, 그 TTL 이 곧 종료할 사용자들은 우선순위가 되지 않을 수 있는데, 이는 그 사용자들이 곧 재등록을 시도할 것이고, 예컨대 사용자들을 서비스하고 있는 지역이 고장난 것을 검출할 것이기 때문이다.
도 7 은 서버 고장, 또는 서버에 의해 서빙되는 클라이언트 디바이스들의 관점에서는 지역 고장 동안 사용자들을 우선순위화하기 위한 예시적인 흐름을 도시한다. 도 7 에 도시된 흐름은 도 5 의 중앙 비-지역적 컴포넌트 (540) 와 같은 중앙 비-지역적 컴포넌트, 또는 도 5 와 도 6 의 임의의 클라이언트 디바이스들 (514, 524, 534, 또는 600) 과 같은 클라이언트 디바이스에 의해 수행될 수 있다.
710 에서, 중앙 비-지역적 컴포넌트 또는 클라이언트 디바이스는 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출한다. 패킷 기반 음성 통신 서비스는 VoIP 서비스일 수도 있고, 서버는 VoIP 애플리케이션 서버일 수도 있다. 클라이언트 디바이스는 제 1 지역에서 패킷 기반 음성 통신 서비스를 활용하도록 등록될 수도 있다. 클라이언트 디바이스는 당업계에 공지된 것과 같이, 서버로 전송된 테스트에 대한 응답을 수신하지 않는 것에 의해, 또는 중앙 비-지역적 컴포넌트로부터 통지를 수신하는 것에 의해 고장을 검출할 수도 있다.
720 에서, 중앙 비-지역적 컴포넌트 또는 클라이언트 디바이스는 클라이언트 디바이스를 패킷 기반 음성 통신 서비스를 제공하는 (동일하거나 상이한 지역에 있을 수도 있는) 제 2 서버로 리디렉션한다. 리디렉션하는 것은 클라이언트 디바이스의 사용자의 우선순위 레벨에 기초할 수도 있다. 클라이언트 디바이스의 우선순위 레벨은 클라이언트 디바이스의 사용자의 분류에 기초할 수도 있다. 분류는 예컨대, 응급 구조 대원, 프리미엄 가입자, 또는 기업 사용자 중 하나 이상일 수도 있다. 이 경우, 그러한 분류를 갖는 클라이언트 디바이스들은 분류를 가지지 않는 클라이언트 디바이스들보다 더 높은 우선순위 레벨을 할당받을 수도 있다.
대안적으로 또는 부가적으로, 클라이언트 디바이스의 우선순위 레벨은 클라이언트 디바이스의 사용자의 활성도 레벨에 기초할 수도 있다. 이 경우, 활성도 임계치 이상의 활성도 레벨을 갖는 클라이언트 디바이스들은 활성도 임계치 미만의 활성도 레벨을 갖는 클라이언트 디바이스들보다 더 높은 우선순위 레벨을 할당받을 수도 있다.
다른 대안으로서, 클라이언트 디바이스의 우선순위 레벨은 등록 TTL 에 기초할 수도 있다. 이 경우, 임계 시간 주기 이후에 만료하는 등록 TTL 을 갖는 클라이언트 디바이스들은 임계 시간 주기 이전에 만료하는 등록 TTL 을 갖는 클라이언트 디바이스들보다 더 높은 우선순위 레벨을 할당받을 수도 있다.
클라이언트 디바이스가 도 7 에 도시된 흐름을 수행하고 있는 경우에, 클라이언트 디바이스가 예컨대 일차 지역과 이차 지역에 대한 등록 서버 및 VoIP/PTT 호출 핸들러를 발견할 경우, 클라이언트 디바이스에 우선순위 레벨이 프로비저닝될 수도 있다. 대안적으로, 중앙 비-지역적 컴포넌트는 서버 고장시, 클라이언트 디바이스에 우선순위 레벨을 프로비저닝할 수도 있다. 중앙 비-지역적 컴포넌트가 도 7 에 도시된 흐름을 수행하고 있는 경우에, 그 컴포넌트는 서버 고장을 검출하는 것에 응답하여 클라이언트의 우선순위 레벨을 결정할 수도 있거나, 우선순위 레벨을 이전에 할당하였을 수도 있다.
사용자가 제 1 지역에서 패킷 기반 음성 통신 서비스를 활용하도록 등록된 다수의 클라이언트 디바이스들을 가질 경우, 중앙 비-지역적 컴포넌트는 사용자의 우선순위 레벨에 기초하여 다수의 클라이언트 디바이스들의 각각을 제 2 지역으로 리디렉션할 수 있다.
본 개시의 다양한 양태들은 또한, 피어-지원 페일오버를 제공한다. 먼저, 제 1 클라이언트 디바이스 및 제 2 클라이언트 디바이스 양자는 제 1 의, 또는 일차의 지역/서버에 등록된다. 이후에, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하고 있을 수도 있는 서버가 고장난다. 그 시점에, 제 1 클라이언트 디바이스가 제 2 클라이언트 디바이스와의 패킷 기반 음성 통신 호출을 개시할 것을 시도한다면, 제 1 사용자는 당업계에 공지된 것과 같이, 제 1 지역이 고장난 것을 검출할 것이다. 예를 들어, 제 1 클라이언트 디바이스는 호출을 개시하는 것을 시도할 경우, 임계 시간 주기 내에 응답을 수신하지 않을 수도 있다.
그에 응답하여, 제 1 클라이언트 디바이스는 이차 지역/서버로 페일오버하고, 다시 제 2 클라이언트 디바이스와의 호출을 개시하는 것을 시도할 것이다. 이 때, 호출은 제 2 클라이언트 디바이스가 여전히 IP 접속을 가지기 때문에 성공해야 하며, 호출은 제 1 지역에서 또는 이차 지역에서 패킷 기반 음성 통신 서비스를 또한 중재하고 있는 이차 서버에 의해 호스팅된다. 호출 동안, 제 1 클라이언트 디바이스는 그 클라이언트 디바이스가 이전에 제 1 지역에 등록되었지만 이차 지역/서버로 페일오버된 것을 제 2 클라이언트 디바이스에 전달한다. 제 1 클라이언트 디바이스는 이 정보를 대역 내에서 또는 대역 외에서 통신할 수도 있다.
호출이 종료하면, 제 2 클라이언트 디바이스는 예컨대, 당업계에 공지된 것과 같이, 제 1 지역에서 서버를 테스트하는 것에 의해, 제 1 지역/서버가 고장난 것을 검출한다. 제 2 클라이언트 디바이스가 테스트에 대한 응답을 수신하지 않을 경우, 이차 지역/서버로 페일오버한다.
도 8 은 피어-지원 페일오버 복구를 위한 예시적인 흐름을 도시한다. 도 8 에 도시된 흐름은 도 5 와 도 6 의 임의의 클라이언트 디바이스들 (514, 524, 534, 또는 600) 과 같은 제 1 클라이언트 디바이스에 의해 수행될 수도 있다.
810 에서, 제 1 클라이언트 디바이스는 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출한다. 패킷 기반 음성 통신 서비스는 VoIP 서비스일 수도 있고, 제 1 서버는 도 5 의 임의의 VoIP 애플리케이션 서버들 (512a - 512c, 522a - 522c, 및 532a - 532c) 과 같은 VoIP 애플리케이션 서버일 수도 있다. 제 1 클라이언트 디바이스는 제 1 지역에서 패킷 기반 음성 통신 서비스를 활용하도록 등록될 수도 있다. 제 1 클라이언트 디바이스는 제 1 지역에서 패킷 기반 음성 통신 서비스를 통해 제 2 클라이언트 디바이스와의 호출을 개시하는 것을 시도하는 것에 응답하여, 패킷 기반 음성 통신 서비스가 고장난 것을 검출할 수도 있다. 대안적으로, 제 1 클라이언트 디바이스는 당업계에 공지된 것과 같이, 제 1 서버로 전송된 테스트에 대한 응답을 수신하지 않는 것에 의해, 고장을 검출할 수도 있다.
820 에서, 제 1 클라이언트 디바이스는 제 1 지역에서 패킷 기반 음성 통신 서비스가 고장난 것을 검출하는 것에 응답하여 제 2 지역/서버로 스위칭한다. 제 2 지역/서버는 또한, 패킷 기반 음성 통신 서비스를 제공할 수도 있다.
830 에서, 제 1 클라이언트 디바이스는 제 2 지역에서의 패킷 기반 음성 통신 서비스를 통해 제 1 지역에서의 제 2 클라이언트 디바이스와 호출을 확립한다.
840 에서, 제 1 클라이언트 디바이스는 패킷 기반 음성 통신 서비스를 중재하는 제 1 서버가 고장난 것을 제 2 클라이언트 디바이스에 통지한다. 통지하는 것은 제 2 클라이언트 디바이스로의 통지를 대역 내에서 또는 대역 외에서 송신하는 것을 포함할 수도 있다. 호출이 종료할 경우, 제 2 클라이언트 디바이스는 제 1 지역에서 패킷 기반 음성 통신 서비스가 고장난 것을 검출할 수도 있다. 이에 응답하여, 제 2 클라이언트 디바이스는 제 2 지역/서버로 스위칭할 수도 있다.
도 9 는 상호 관련된 기능 모듈들의 시리즈들로서 표현된, 클라이언트 디바이스 또는 중앙 비-지역적 컴포넌트와 같은 서버 고장 동안의 사용자들을 우선순위화하기 위한 예시적인 장치 (900) 를 도시한다. 검출하기 위한 모듈 (910) 은 적어도 일부 양태들에서, 본 명세서에서 논의된 것과 같은 예컨대 통신 디바이스 (예컨대, 송신기/트랜시버) 에 대응할 수도 있다. 리디렉션하기 위한 모듈 (920) 은 적어도 일부 양태들에서, 본 명세서에서 논의된 것과 같은 예컨대 통신 디바이스 (예컨대, 수신기/트랜시버) 에 대응할 수도 있다.
도 9 의 모듈들의 기능은 본 명세서에서의 교시들과 일치하는 다양한 방식들로 구현될 수도 있다. 일부 양태들에 있어서, 이들 모듈들의 기능은 하나 이상의 전기 컴포넌트들로서 구현될 수도 있다. 일부 양태들에 있어서, 이들 블록들의 기능은 하나 이상의 프로세서 컴포넌트들을 포함한 프로세싱 시스템으로서 구현될 수도 있다. 일부 양태들에 있어서, 이들 모듈들의 기능은, 예를 들어, 하나 이상의 집적회로들 (예를 들어, ASIC) 의 적어도 일부를 이용하여 구현될 수도 있다. 본 명세서에서 논의된 바와 같이, 집적회로는 프로세서, 소프트웨어, 다른 관련된 컴포넌트들, 또는 이들의 일부 조합을 포함할 수도 있다. 따라서, 상이한 모듈들의 기능은, 예를 들어, 집적회로의 상이한 서브세트들로서, 소프트웨어 모듈들의 세트의 상이한 서브세트들로서, 또는 이들의 조합으로서 구현될 수도 있다. 또한, (예를 들어, 집적회로의 및/또는 소프트웨어 모듈들의 세트의) 소정의 서브세트가 1 초과의 모듈들에 대한 기능의 적어도 일부를 제공할 수도 있음이 인식되어야 한다.
부가적으로, 도 9 에 의해 표현된 컴포넌트들 및 기능들뿐 아니라 본 명세서에서 설명된 다른 컴포넌트들 및 기능들은 임의의 적합한 수단들을 사용하여 구현될 수도 있다. 그러한 수단들은 또한, 적어도 부분적으로, 본 명세서에서 교시된 바와 같은 대응하는 구조를 사용하여 구현될 수도 있다. 예를 들어, 도 9 의 컴포넌트들을 "위한 모듈" 과 함께 상기 설명된 컴포넌트들은 또한 유사하게 지정된 기능을 "위한 수단" 에 대응할 수도 있다. 따라서, 일부 양태들에 있어서, 그러한 수단들 중 하나 이상은 프로세서 컴포넌트들, 집적회로들, 또는 본 명세서에서 교시된 바와 같은 다른 적합한 구조 중 하나 이상을 이용하여 구현될 수도 있다.
도 10 은 상호 관련된 기능 모듈들의 시리즈들로서 표현된 피어-지원 페일오버 복구를 위한 예시적인 클라이언트 디바이스 장치 (1000) 를 도시한다. 검출하기 위한 모듈 (1010) 은 적어도 일부 양태들에서, 본 명세서에서 논의된 것과 같은 예컨대 통신 디바이스 (예컨대, 송신기/트랜시버) 에 대응할 수도 있다. 스위칭하기 위한 모듈 (1020) 은 적어도 일부 양태들에서, 본 명세서에서 논의된 것과 같은 예컨대 통신 디바이스 (예컨대, 수신기/트랜시버) 에 대응할 수도 있다. 확립하기 위한 모듈 (1030) 은 적어도 일부 양태들에서, 본 명세서에서 논의된 것과 같은 예컨대 통신 디바이스 (예컨대, 수신기/트랜시버) 에 대응할 수도 있다. 통지하기 위한 모듈 (1040) 은 적어도 일부 양태들에서, 본 명세서에서 논의된 것과 같은 예컨대 통신 디바이스 (예컨대, 수신기/트랜시버) 에 대응할 수도 있다.
도 10 의 모듈들의 기능은 본 명세서에서의 교시들과 일치하는 다양한 방식들로 구현될 수도 있다. 일부 양태들에 있어서, 이들 모듈들의 기능은 하나 이상의 전기 컴포넌트들로서 구현될 수도 있다. 일부 양태들에 있어서, 이들 블록들의 기능은 하나 이상의 프로세서 컴포넌트들을 포함한 프로세싱 시스템으로서 구현될 수도 있다. 일부 양태들에 있어서, 이들 모듈들의 기능은, 예를 들어, 하나 이상의 집적회로들 (예를 들어, ASIC) 의 적어도 일부를 이용하여 구현될 수도 있다. 본 명세서에서 논의된 바와 같이, 집적회로는 프로세서, 소프트웨어, 다른 관련된 컴포넌트들, 또는 이들의 일부 조합을 포함할 수도 있다. 따라서, 상이한 모듈들의 기능은, 예를 들어, 집적회로의 상이한 서브세트들로서, 소프트웨어 모듈들의 세트의 상이한 서브세트들로서, 또는 이들의 조합으로서 구현될 수도 있다. 또한, (예를 들어, 집적회로의 및/또는 소프트웨어 모듈들의 세트의) 소정의 서브세트가 1 초과의 모듈들에 대한 기능의 적어도 일부를 제공할 수도 있음이 인식되어야 한다.
부가적으로, 도 10 에 의해 표현된 컴포넌트들 및 기능들뿐 아니라 본 명세서에서 설명된 다른 컴포넌트들 및 기능들은 임의의 적합한 수단들을 사용하여 구현될 수도 있다. 그러한 수단들은 또한, 적어도 부분적으로, 본 명세서에서 교시된 바와 같은 대응하는 구조를 사용하여 구현될 수도 있다. 예를 들어, 도 10 의 컴포넌트들을 "위한 모듈" 과 함께 상기 설명된 컴포넌트들은 또한, 유사하게 지정된 기능을 "위한 수단" 에 대응할 수도 있다. 따라서, 일부 양태들에 있어서, 그러한 수단들 중 하나 이상은 프로세서 컴포넌트들, 집적회로들, 또는 본 명세서에서 교시된 바와 같은 다른 적합한 구조 중 하나 이상을 이용하여 구현될 수도 있다.
일부 양태들에 있어서, 장치 또는 장치의 임의의 컴포넌트는 본 명세서에서 교시된 바와 같은 기능을 제공하도록 구성될 (또는 제공하도록 동작가능하거나 적응될) 수도 있다. 이는, 예를 들어, 기능을 제공하도록 장치 또는 컴포넌트를 제조함 (예를 들어, 제작함) 으로써; 기능을 제공하도록 장치 또는 컴포넌트를 프로그래밍함으로써; 또는 기타 다른 적합한 구현 기법의 사용을 통해 달성될 수도 있다. 일 예로서, 집적회로는 필수 기능을 제공하도록 제작될 수도 있다. 다른 예로서, 집적회로는 필수 기능을 지원하도록 제작되고 그 후 필수 기능을 (예를 들어, 프로그래밍을 통해) 제공하도록 구성될 수도 있다. 또 다른 예로서, 프로세서 회로는 필수 기능을 제공하기 위한 코드를 실행할 수도 있다.
당업자라면, 정보 및 신호들이 임의의 다양한 상이한 기술들 및 기법들을 사용하여 표현될 수도 있음을 인식할 것이다. 예를 들어, 상기 설명 전반에 걸쳐 참조될 수도 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 심볼들, 및 칩들은 전압, 전류, 전자기파, 자계 또는 자성 입자, 광계 또는 광자, 또는 이들의 임의의 조합에 의해 표현될 수도 있다.
또한, 당업자들이라면, 본 명세서에 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들은 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양측 모두의 조합들로서 구현될 수도 있음을 인식할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 교환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들, 및 단계들이 그들의 기능적 관점에서 일반적으로 상술되었다. 그러한 기능이 하드웨어로 구현되는지 또는 소프트웨어로 구현되는지의 여부는 특정 애플리케이션 및 전체 시스템에 부과되는 설계 제약들에 따라 달라진다. 당업자라면, 상기 상술한 기능성을 각각의 특정 어플리케이션에 대해 다양한 방식으로 구현할 수도 있지만, 이러한 구현 결정은 본 발명의 범위를 벗어나게 하는 것으로 이해되어서는 안된다.
본 명세서에서 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들은 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적회로 (ASIC), 필드 프로그램가능 게이트 어레이 (FPGA) 또는 다른 프로그래머블 로직 디바이스, 별개의 게이트 또는 트랜지스터 로직, 별개의 하드웨어 컴포넌트들, 또는 본 명세서에서 설명된 기능들을 수행하도록 설계되는 이들의 임의의 조합으로 구현 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로, 그 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로 제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합, 예를 들면, DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 연계한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로서 구현될 수도 있다.
본 명세서에서 개시된 실시형태들과 관련하여 설명된 방법들, 순차들 및/또는 알고리즘들은 하드웨어로, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이 둘의 조합으로 직접적으로 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 착탈가능 디스크, CD-ROM, 또는 당업계에 공지된 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링되어, 프로세가 저장 매체로부터 정보를 판독하거나 저장 매체에 정보를 기록할 수 있다. 대안에서, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 ASIC 에 상주할 수도 있다. ASIC 는 사용자 단말 (예컨대, UE) 내에 상주할 수도 있다. 대안에서, 프로세서와 저장 매체는 사용자 단말기에서 개별 컴포넌트들로서 상주할 수도 있다.
하나 이상의 예시적인 실시형태들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현된다면, 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독 가능한 매체 상에 저장되거나 또는 전송될 수도 있다. 컴퓨터 판독가능 매체들은 한 장소에서 다른 장소로 컴퓨터 프로그램의 전송을 가능하게 하는 임의의 매체를 포함하여 컴퓨터 저장 매체들 및 통신 매체들 양자를 포함한다. 저장 매체는, 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수도 있다. 제한이 아닌 예로서, 이러한 컴퓨터 판독 가능한 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 스토리지, 자기 디스크 스토리지 또는 다른 자기 스토리지 디바이스들, 또는 요구되는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 이송 또는 저장하기 위해 사용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속물은 컴퓨터 판독가능 매체로서 적절히 칭해진다. 예를 들면, 소프트웨어가 동축 케이블, 광섬유 케이블, 연선, 디지털 가입자 회선, 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 전송되면, 동축 케이블, 광섬유 케이블, 연선, 디지털 가입자 회선, 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들은 매체의 정의 내에 포함된다. 본원에서 사용된 디스크 (disk) 와 디스크 (disc) 는, 컴팩트 디스크 (CD), 레이저 디스크, 광학 디스크, 디지털 다기능 디스크 (DVD), 플로피디스크 및 블루레이 디스크를 포함하며, 여기서 디스크 (disk) 는 통상 자기적으로 데이터를 재생하고, 디스크 (disc) 는 레이저를 이용하여 광학적으로 데이터를 재생한다. 위의 조합들도 컴퓨터 판독가능 매체들의 범위 내에 포함되어야 한다.
전술한 개시가 본 발명의 예시적 실시형태들을 도시하고 있지만, 첨부한 청구범위에 의해 정의되는 본 발명의 범주로부터 벗어나지 않으면서 다양한 변경들 및 수정들이 행해질 수 있음에 유의해야 한다. 본 명세서에서 설명된 본 발명의 실시형태들에 따른 방법 청구항의 기능들, 단계들 및/또는 액션들은 임의의 특정 순서로 수행되어야 하는 것은 아니다. 또한, 본 발명의 엘리먼트들이 단수형으로 설명되거나 청구될 수도 있지만, 단수로의 제한이 명백히 언급되지 않는다면, 복수형이 고려된다.

Claims (30)

  1. 서버 고장 동안 사용자들을 우선순위화하기 위한 방법으로서,
    제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하는 단계; 및
    상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스를 활용하도록 등록된 클라이언트 디바이스를 상기 패킷 기반 음성 통신 서비스를 제공하는 제 2 서버로 리디렉션하는 단계를 포함하며,
    상기 리디렉션하는 단계는 상기 클라이언트 디바이스의 사용자의 우선순위 레벨에 기반하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 클라이언트 디바이스의 우선순위 레벨은 상기 클라이언트 디바이스의 사용자의 분류에 기반하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  3. 제 1 항에 있어서,
    상기 클라이언트 디바이스의 우선순위 레벨은 상기 클라이언트 디바이스의 사용자의 활성도 레벨에 기반하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  4. 제 3 항에 있어서,
    활성도 임계치 이상의 활성도 레벨을 갖는 클라이언트 디바이스들은 상기 활성도 임계치 미만의 활성도 레벨을 갖는 클라이언트 디바이스들보다 더 높은 우선순위 레벨을 할당받는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  5. 제 1 항에 있어서,
    상기 클라이언트 디바이스의 우선순위 레벨은 등록 TTL (time to live) 에 기반하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  6. 제 5 항에 있어서,
    임계 시간 주기 이후에 만료하는 등록 TTL 을 갖는 클라이언트 디바이스들은 상기 임계 시간 주기 이전에 만료하는 등록 TTL 을 갖는 클라이언트 디바이스들보다 더 높은 우선순위 레벨을 할당받는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  7. 제 1 항에 있어서,
    상기 패킷 기반 음성 통신 서비스는 보이스 오버 인터넷 프로토콜 (VoIP) 서비스를 포함하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  8. 제 1 항에 있어서,
    상기 검출하는 단계 및 상기 리디렉션하는 단계는 중앙 비-지역적 컴포넌트에 의해 수행되는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  9. 제 1 항에 있어서,
    상기 검출하는 단계 및 상기 리디렉션하는 단계는 상기 클라이언트 디바이스에 의해 수행되는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  10. 제 1 항에 있어서,
    상기 사용자는 상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스를 활용하도록 등록된 다수의 클라이언트 디바이스들을 가지고,
    상기 리디렉션하는 단계는 상기 다수의 클라이언트 디바이스들을 상기 제 2 서버로 리디렉션하는 단계를 포함하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 방법.
  11. 피어-지원 페일오버 복구를 위한 방법으로서,
    제 1 클라이언트 디바이스에 의해, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하는 단계; 및
    상기 제 1 클라이언트 디바이스에 의해, 상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스를 중재하는 상기 서버가 고장난 것을 상기 제 1 지역에서의 제 2 클라이언트 디바이스에 통지하는 단계를 포함하는, 피어-지원 페일오버 복구를 위한 방법.
  12. 제 11 항에 있어서,
    상기 제 1 클라이언트 디바이스는 상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스를 통해 상기 제 2 클라이언트 디바이스와의 호출을 개시하는 것을 시도하는 것에 응답하여, 상기 패킷 기반 음성 통신 서비스를 중재하는 상기 서버가 고장난 것을 검출하는, 피어-지원 페일오버 복구를 위한 방법.
  13. 제 11 항에 있어서,
    상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스가 고장난 것을 검출하는 것에 응답하여 제 2 서버로 스위칭하는 단계를 더 포함하며,
    상기 제 2 서버는 상기 패킷 기반 음성 통신 서비스를 제공하는, 피어-지원 페일오버 복구를 위한 방법.
  14. 제 13 항에 있어서,
    상기 제 2 서버에 의해 제공된 상기 패킷 기반 음성 통신 서비스를 통해 상기 제 2 클라이언트 디바이스와 호출을 확립하는 단계를 더 포함하는, 피어-지원 페일오버 복구를 위한 방법.
  15. 제 11 항에 있어서,
    상기 제 2 클라이언트 디바이스는 상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스가 고장난 것을 검출하고, 그에 응답하여 상기 패킷 기반 음성 통신 서비스를 제공하는 제 2 서버로 스위칭하는, 피어-지원 페일오버 복구를 위한 방법.
  16. 제 15 항에 있어서,
    제 2 사용자 디바이스는 호출의 종료에 응답하여, 상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스가 고장난 것을 검출하는, 피어-지원 페일오버 복구를 위한 방법.
  17. 제 13 항에 있어서,
    상기 제 2 서버는 제 2 지역에 있는, 피어-지원 페일오버 복구를 위한 방법.
  18. 제 11 항에 있어서,
    상기 통지하는 단계는 대역 내에서 상기 제 2 클라이언트 디바이스로 통지를 송신하는 단계를 포함하는, 피어-지원 페일오버 복구를 위한 방법.
  19. 제 11 항에 있어서,
    상기 통지하는 단계는 대역 외에서 상기 제 2 클라이언트 디바이스로 통지를 송신하는 단계를 포함하는, 피어-지원 페일오버 복구를 위한 방법.
  20. 제 11 항에 있어서,
    상기 패킷 기반 음성 통신 서비스는 보이스 오버 인터넷 프로토콜 (VoIP) 서비스를 포함하는, 피어-지원 페일오버 복구를 위한 방법.
  21. 서버 고장 동안 사용자들을 우선순위화하기 위한 장치로서,
    제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하도록 구성된 로직; 및
    상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스를 활용하도록 등록된 클라이언트 디바이스를 상기 패킷 기반 음성 통신 서비스를 제공하는 제 2 서버로 리디렉션하도록 구성된 로직을 포함하며,
    상기 리디렉션하는 것은 상기 클라이언트 디바이스의 사용자의 우선순위 레벨에 기반하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 장치.
  22. 제 21 항에 있어서,
    상기 클라이언트 디바이스의 우선순위 레벨은 상기 클라이언트 디바이스의 사용자의 분류에 기반하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 장치.
  23. 제 21 항에 있어서,
    상기 클라이언트 디바이스의 우선순위 레벨은 상기 클라이언트 디바이스의 사용자의 활성도 레벨에 기반하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 장치.
  24. 제 21 항에 있어서,
    상기 클라이언트 디바이스의 우선순위 레벨은 등록 TTL (time to live) 에 기반하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 장치.
  25. 제 21 항에 있어서,
    상기 사용자는 상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스를 활용하도록 등록된 다수의 클라이언트 디바이스들을 가지고,
    상기 리디렉션하는 것은 상기 다수의 클라이언트 디바이스들을 상기 제 2 서버로 리디렉션하는 것을 포함하는, 서버 고장 동안 사용자들을 우선순위화하기 위한 장치.
  26. 피어-지원 페일오버 복구를 위한 장치로서,
    제 1 클라이언트 디바이스에 의해, 제 1 지역에서 패킷 기반 음성 통신 서비스를 중재하는 서버가 고장난 것을 검출하도록 구성된 로직; 및
    상기 제 1 클라이언트 디바이스에 의해, 상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스를 중재하는 상기 서버가 고장난 것을 상기 제 1 지역에서의 제 2 클라이언트 디바이스에 통지하도록 구성된 로직을 포함하는, 피어-지원 페일오버 복구를 위한 장치.
  27. 제 26 항에 있어서,
    상기 패킷 기반 음성 통신 서비스를 중재하는 상기 서버가 고장난 것을 검출하도록 구성된 로직은, 상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스를 통해 상기 제 2 클라이언트 디바이스와의 호출을 개시하는 것을 시도하는 것에 응답하여, 상기 패킷 기반 음성 통신 서비스를 중재하는 상기 서버가 고장난 것을 검출하도록 구성된 로직을 포함하는, 피어-지원 페일오버 복구를 위한 장치.
  28. 제 26 항에 있어서,
    상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스가 고장난 것을 검출하는 것에 응답하여 제 2 서버로 스위칭하도록 구성된 로직을 더 포함하며,
    상기 제 2 서버는 상기 패킷 기반 음성 통신 서비스를 제공하는, 피어-지원 페일오버 복구를 위한 장치.
  29. 제 28 항에 있어서,
    상기 제 2 서버에 의해 제공된 상기 패킷 기반 음성 통신 서비스를 통해 상기 제 2 클라이언트 디바이스와 호출을 확립하도록 구성된 로직을 더 포함하는, 피어-지원 페일오버 복구를 위한 장치.
  30. 제 26 항에 있어서,
    상기 제 2 클라이언트 디바이스는 상기 제 1 지역에서 상기 패킷 기반 음성 통신 서비스가 고장난 것을 검출하고, 그에 응답하여 상기 패킷 기반 음성 통신 서비스를 제공하는 제 2 서버로 스위칭하는, 피어-지원 페일오버 복구를 위한 장치.
KR1020167022097A 2014-01-28 2015-01-26 Voip 시스템에서의 페일오버 동안 사용자들의 구별 또는 우선순위화 KR20160114618A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/166,748 US20150215158A1 (en) 2014-01-28 2014-01-28 Discriminating or prioritizing users during failover in a voip system
US14/166,748 2014-01-28
PCT/US2015/012910 WO2015116535A1 (en) 2014-01-28 2015-01-26 Discriminating or prioritizing users during failover in a voip system

Publications (1)

Publication Number Publication Date
KR20160114618A true KR20160114618A (ko) 2016-10-05

Family

ID=52474083

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167022097A KR20160114618A (ko) 2014-01-28 2015-01-26 Voip 시스템에서의 페일오버 동안 사용자들의 구별 또는 우선순위화

Country Status (6)

Country Link
US (1) US20150215158A1 (ko)
EP (1) EP3100433A1 (ko)
JP (1) JP2017508360A (ko)
KR (1) KR20160114618A (ko)
CN (1) CN105940656A (ko)
WO (1) WO2015116535A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107171885B (zh) * 2017-03-31 2019-11-15 北京奇艺世纪科技有限公司 一种检测服务器运行状态的方法、装置和系统
JP6795527B2 (ja) * 2018-02-14 2020-12-02 日本電信電話株式会社 通信システム、及び、サーバ切替方法
JP6635525B1 (ja) 2018-10-29 2020-01-29 Necプラットフォームズ株式会社 交換機、通信システム、登録方法及び登録プログラム

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10224467A (ja) * 1997-02-05 1998-08-21 Hitachi Ltd 交換網
US7532568B1 (en) * 2002-07-09 2009-05-12 Nortel Networks Limited Geographic redundancy for call servers in a cellular system based on a bearer-independent core network
EP1515487B1 (en) * 2003-09-10 2010-05-05 Delta Networks, Inc. Qos Based load-balance policy for WLAN
WO2005081447A1 (en) * 2004-02-13 2005-09-01 Alcatel Wireless, Inc. Method and system for providing availability and reliability for a telecommunication network entity
US7804952B2 (en) * 2006-03-06 2010-09-28 Alcatel Lucent Prioritized call load balancing
US8584199B1 (en) * 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
JP2008244685A (ja) * 2007-03-27 2008-10-09 Nec Corp 輻輳制御システム、サービスエッジノード、ガイダンスサーバ、輻輳制御方法、そのプログラム及び記録媒体
US9143558B2 (en) * 2007-05-09 2015-09-22 Radware, Ltd. Geographic resiliency and load balancing for SIP application services
US7971099B2 (en) * 2008-04-02 2011-06-28 International Business Machines Corporation Method for enabling faster recovery of client applications in the event of server failure
US8892658B2 (en) * 2008-04-07 2014-11-18 Microsoft Corporation Break-through mechanism for personas associated with a single device
EP2139195B1 (en) * 2008-06-23 2015-11-11 Alcatel Lucent Method, apparatus and system for registering a terminal with an application server in an IMS
JP2010147788A (ja) * 2008-12-18 2010-07-01 Toshiba Corp 通信システムとその端末登録方法、サーバユニットおよび端末デバイス
KR101156164B1 (ko) * 2008-12-22 2012-06-18 한국전자통신연구원 주파수 집합 통신 환경에서의 단말 및 기지국, 이를 이용한호 접속 처리 방법
EP2394458B1 (en) * 2009-02-03 2024-01-31 Lenovo Group Limited Method and apparatus for estimating a quantity of mobile terminals per quality of service class identifier
JP2010239216A (ja) * 2009-03-30 2010-10-21 Toshiba Corp 呼制御方法
JP2011082868A (ja) * 2009-10-08 2011-04-21 Oki Electric Industry Co Ltd 呼救済システム、呼救済サーバ、呼救済サーバの呼救済プログラム
US20110271005A1 (en) * 2010-04-30 2011-11-03 Sonus Networks, Inc. Load balancing among voip server groups
US8671206B2 (en) * 2011-02-28 2014-03-11 Siemens Enterprise Communications Gmbh & Co. Kg Apparatus and mechanism for dynamic assignment of survivability services to mobile devices
WO2013019153A1 (en) * 2011-08-04 2013-02-07 Telefonaktiebolaget L M Ericsson (Publ) Improved handover robustness in cellular radio communications
EP2789138B1 (en) * 2011-12-06 2016-09-14 Seven Networks, LLC A mobile device and method to utilize the failover mechanisms for fault tolerance provided for mobile traffic management and network/device resource conservation
JP5895642B2 (ja) * 2012-03-22 2016-03-30 日本電気株式会社 SIP(SessionInitiationProtocol)システム、SIPサーバ、加入者端末及びプログラム
US9021301B2 (en) * 2012-06-14 2015-04-28 Logitech Europe S.A. High availability conferencing architecture
JP2014007617A (ja) * 2012-06-26 2014-01-16 Mitsubishi Electric Corp 呼制御サーバ、通信システム、および呼制御方法
US9426021B2 (en) * 2013-04-29 2016-08-23 Avaya Inc. Communication failover in a distributed network
US9407721B2 (en) * 2013-10-16 2016-08-02 Red Hat, Inc. System and method for server selection using competitive evaluation

Also Published As

Publication number Publication date
EP3100433A1 (en) 2016-12-07
CN105940656A (zh) 2016-09-14
WO2015116535A1 (en) 2015-08-06
US20150215158A1 (en) 2015-07-30
JP2017508360A (ja) 2017-03-23

Similar Documents

Publication Publication Date Title
US11943676B2 (en) Switching between network based and relay based operation for mission critical voice call
US10356684B2 (en) Method and apparatus for selecting an access point based on direction of movement
US10492243B2 (en) Fallback indicators in session initiation protocol (SIP) signaling
CN106471841B (zh) 用于对移动网络进行拥塞控制的系统、方法和设备
US10567216B2 (en) Fault detection method, gateway, user equipment, and communications system
EP2898723B1 (en) Providing a reason for suspending minimization of drive tests (mdt) measurements from a user equipment to a base station
US20140258367A1 (en) Renewing registrations for a plurality of client applications that are associated with the same host server via an implicit piggybacking scheme
US11218929B2 (en) Information transmission method and apparatus and communication system
KR20180008503A (ko) 상이한 근접 클라이언트 디바이스들 상에 설치된 클라이언트 애플리케이션들에 대한 등록들 갱신
US9584996B2 (en) Selectively triggering a communicative action based on whether a quorum condition for a peer-to-peer group is satisfied
KR20150138288A (ko) 잠재적인 접속성 서비스 단절의 검출, 보고, 및 복구
US9986525B1 (en) Error handling during IMS subscription for registration status
KR20160114618A (ko) Voip 시스템에서의 페일오버 동안 사용자들의 구별 또는 우선순위화
US11589328B2 (en) Systems and methods for network categorization
WO2022244533A1 (ja) Smfノード、afノード、ue、及びこれらの方法
WO2016162047A1 (en) Facilitating effective isolated wireless network operation
US9100487B1 (en) Conditional voicemail routing in wireless communication networks
US9883435B2 (en) Soft handover for a voice over internet protocol service
US9479927B1 (en) Wireless communication system to provide call routing when connection to a core network is lost
US11930133B2 (en) Systems and methods for redirecting an emergency callback to a contact of an emergency caller
US9241359B1 (en) Delayed authentication following a radio link failure
KR20190056586A (ko) 패킷 처리 장치 및 방법
WO2015018442A1 (en) Method and apparatus

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid