KR101402367B1 - 전화 호출 관리 방법 및 호출 관리 시스템 - Google Patents
전화 호출 관리 방법 및 호출 관리 시스템 Download PDFInfo
- Publication number
- KR101402367B1 KR101402367B1 KR1020100041988A KR20100041988A KR101402367B1 KR 101402367 B1 KR101402367 B1 KR 101402367B1 KR 1020100041988 A KR1020100041988 A KR 1020100041988A KR 20100041988 A KR20100041988 A KR 20100041988A KR 101402367 B1 KR101402367 B1 KR 101402367B1
- Authority
- KR
- South Korea
- Prior art keywords
- bandwidth
- call processing
- processing server
- server
- call
- Prior art date
Links
- 238000012545 processing Methods 0.000 claims abstract description 141
- 238000000034 method Methods 0.000 claims description 97
- 230000004044 response Effects 0.000 claims description 17
- 241000772415 Neovison vison Species 0.000 claims description 11
- 238000007726 management method Methods 0.000 claims description 11
- 238000012550 audit Methods 0.000 claims description 5
- 230000001934 delay Effects 0.000 claims description 2
- 230000000977 initiatory effect Effects 0.000 claims 1
- 230000003068 static effect Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 12
- 230000015654 memory Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 229920000742 Cotton Polymers 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1046—Call controllers; Call servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/0016—Arrangements providing connection between exchanges
- H04Q3/0062—Provisions for network management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명에 따르면 여러 호출 컨트롤러 사이에서 대역폭을 할당할 수 있는 분산 호출 제어 시스템이 제공된다. 분산 호출 제어 시스템은 호출 제어를 관리하는 둘 이상의 호출 프로세싱 서버를 실행하는 하나 이상의 서버를 포함한다. 호출 프로세싱 서버는 클러스터 또는 그룹을 형성한다. 클러스터 멤버는 멤버들 간의 대역폭 할당을 협상 및 결정한다. 만약 멤버가 보다 큰 대역폭을 요구하면, 그 멤버의 호출 프로세싱 서버는 자신의 필요성을 평가하고 다른 멤버로부터 보다 많은 대역폭을 요청한다. 대역폭에 대한 협상 및 요청은 대역폭의 제어를 연대화하는 동적 및 정적 대역폭 데이터의 세트로 달성된다.
Description
본 출원은 2009년 5월 4일 출원된 미국 가특허출원 제61/175,310호의 우선권을 주장하며, 이는 그 전부가 본 명세서에 참조로서 포함되었다.
기업 호출 시스템(예컨대, 사업체 또는 그외의 엔티티에 의해 사용되는 전화 시스템) 또는 호출 센터는 일반적으로 하루에 수천 통의 전화를 받을 수 있다. 호출은 다양한 위치로부터 수신될 수 있다. 모든 호출은 호출을 전달하는 네트워크로부터 소정의 크기의 대역폭을 필요로 한다. 불행히도, 네트워크 대역폭은 제한되어 있다. 이렇게 각 호출에서, 네트워크 내의 시스템은 각 호출을 다루기 위해 사용되지 않은 충분한 대역폭이 존재하는지를 결정해야만 한다. 일반적으로, 중앙 시스템은 이용가능한 대역폭의 크기에 대한 계산을 유지한다. 각 호출 컨트롤러가 새로운 호출에 대한 요청을 수신하기 때문에, 호출 컨트롤러는 중앙 시스템에게 전화 호출을 진행하기 위한 충분한 대역폭이 있는지를 문의한다. 불행히도, 네트워크가 여러 호출 컨트롤러들로 더 다양해짐에 따라, 중앙 시스템으로부터 대역폭을 요청하는 프로세스는 효율성이 떨어지고 추가적인 네트워크 트래픽을 발생시킨다.
본 명세서에 기술된 실시예들은 전술된 문제점과 그외의 문제점과 관련하여 고안된 것이다. 본 명세서에서, 여러 호출 컨트롤러들 사이에서 대역폭을 할당할 수 있는 분산 호출 제어 시스템(distributed call control system)이 제공된다. 분산 호출 제어 시스템의 실시예는 호출 제어를 관리하는 호출 프로세싱 서버들의 둘 이상의 인스턴스(instance)를 실행시키는 하나 이상의 서버를 포함한다. 호출 프로세싱 서버는 클러스터 또는 그룹을 형성한다. 중앙 시스템이 대역폭 할당을 제어하지 않고, 클러스터가 멤버들 간의 대역폭 할당을 협상 및 결정한다. 만약 멤버가 보다 많은 대역폭을 필요로 하면, 호출 프로세싱 서버는 스스로의 필요성을 평가하고 다른 멤버로부터 보다 많은 대역폭을 요청한다. 대역폭에 대한 협상 및 요청은 대역폭의 제어를 연대화하는 동적 및 정적 대역폭 데이터의 세트로 달성된다. 실시예에 대한 예시적인 애플리케이션은 기업 호출 센터 구조의 지원 또는 큰 규모의 전화 트래픽 운영 시스템의 지원을 포함한다. 그외의 애플리케이션들도 당업자에게 명백할 것이다.
본 발명의 실시예는 다수의 장점을 가질 수 있다. 예를 들어, 이러한 설계는 개별적인 호출 프로세싱 서버 인스턴스의 트래픽 특징에 따라, 복수의 호출 프로세싱 서버 인스턴스에 걸쳐 호출 대역폭을 동적으로 관리한다. "동적"이라는 것은 만약 특정한 호출 프로세싱 서버 인스턴스가 호출을 허용하는 자신의 능력을 제한하는 고-대역폭 사용 기간을 발생시키면, 해당 인스턴스는 보다 많은 호출을 허용하는 보다 큰 대역폭을 획득할 수 있음을 의미한다. 획득된 대역폭은, 대역폭 요청이 너무 빈번한 것을 막기 위해서 일부 시간 동안 동작을 허용하는 대역폭 레벨에 도달하도록 호출 프로세싱 서버 인스턴스에 대해 이상적으로 충분해야 한다. 또한, 호출 거절을 가능한 한 최소화하기 위해, 대역폭 요청은 가능한 한 대역폭 고갈 상태가 발생하기 이전에 발행되어야 한다(예측적 접근법).
"적어도 하나", "하나 이상", 및 "및/또는"이라는 표현은 동작시에 결합적 또는 개별적일 수 있는 열린(open-ended) 표현이다. 예를 들어, 각각의 표현 "A, B 및 C 중 적어도 하나", "A, B, 또는 C 중 적어도 하나", "A, B 및 C 중 하나 이상", "A, B, 또는 C 중 하나 이상" 및 "A, B 및/또는 C"는 A만, B만, C만, A 및 B, B 및 C, C 및 A, 또는 A, B, C 모두를 의미한다.
단수형으로 기재된 용어들은 해당 요소가 하나 이상 존재한다는 것을 의미한다. 이렇게 "하나 이상의" 및 "적어도 하나의"와 같은 표현은 본 명세서에서 상호교환가능하게 사용될 수 있다. 또한 "포함하는", "구비하는" 및 "구성되는"과 같은 용어들도 상호교환가능하게 사용될 수 있다.
"자동"이라는 표현과 본 명세서에서 사용된 그의 파생어는 프로세스 또는 동작이 수행될 때 물리적인(material) 사람의 입력 없이 수행되는 임의의 프로세스 또는 동작을 지칭한다. 그러나, 입력이 프로세스 또는 동작의 수행 전에 수신되면, 프로세스 또는 동작의 수행이 물리적 또는 비물리적인 사람의 입력을 사용한다 할지라도 프로세스 또는 동작은 자동이 될 수 있다. 사람의 입력은 그러한 입력이 프로세스 또는 동작이 수행되는 향방에 영향을 미친 경우 물리적인 것으로 간주된다. 프로세스 또는 동작의 수행을 인가하는 사람의 입력은 "물리적"인 것으로 간주되지 않는다.
본 명세서에서 사용된 "컴퓨터 판독가능한 매체"라는 용어는 실행을 위해 프로세서에게 명령어를 제공하는, 임의의 실재하는 저장부를 지칭하는 데에 사용되었다. 이러한 매체는 비휘발성 매체, 휘발성 매체 및 전송 매체를 포함하는 다수의 형태를 가질 수 있지만, 이것으로 한정되지는 않는다. 비휘발성 매체는 예를 들어 NVRAM, 또는 자기 또는 광학 디스크를 포함한다. 휘발성 매체는 주 메모리와 같은 동적 메모리를 포함한다. 컴퓨터-판독가능한 매체의 일반적인 형태는, 예를 들어 플로피 디스크, 가용성 디스크, 하드 디스크, 자기 테이프 또는 임의의 다른 자기 매체, 자기-광학 매체, CD-ROM, 임의의 다른 광학적 매체, 펀치 카드, 종이 테이프, 홀의 패턴을 갖는 임의의 다른 물리적 매체, RAM, PROM, EPROM, FLASH-EPROM, 메모리 카드와 같은 고체 상태 매체, 임의의 다른 메모리 칩 또는 카트리지, 또는 컴퓨터가 판독할 수 있는 임의의 다른 매체를 포함한다. 컴퓨터-판독가능한 매체가 데이터베이스로서 구성되었을 때, 데이터베이스가 관계, 계층, 객체-지향 등과 같은 임의의 유형의 데이터베이스일 수 있음을 이해해야 한다. 따라서, 본 발명은 본 발명의 소프트웨어 구현물이 저장되는, 실재하는 저장 매체 및 종래 기술에서 인지되는 동등물 및 계승 매체를 포함하는 것으로 간주된다.
본 명세서에서 사용되는 "결정", "계산" 및 "컴퓨팅"과 같은 용어와 이들의 파생어들은 상호교환적으로 사용되었으며 임의의 유형의 방법론, 프로세스, 수학적 동작 또는 기술을 포함한다.
본 명세서에서 사용되는 "모듈"이라는 용어는 임의의 알려진 또는 후에 개발되는 하드웨어, 소프트웨어, 펌웨어, 인공 지능, 퍼지 논리, 또는 해당 소자와 연관된 기능을 수행할 수 있는 하드웨어와 소프트웨어의 조합을 지칭한다. 또한, 본 발명이 예시적인 실시예의 측면에서 기술되었지만, 본 발명의 각각의 측면들이 개별적으로 청구될 수 있음을 이해해야 한다.
도 1은 호출 서버들 사이에서 네트워크 대역폭을 분산할 수 있는 분산 호출 시스템의 실시예의 블록도,
도 2는 호출 서버의 실시예의 블록도,
도 3은 대역폭을 분산 및 요청하는 하나 이상의 호출 서버에 의해 저장, 전송 또는 수신되는 데이터 구조의 블록도,
도 4는 초기 대역폭 할당을 개시 및 결정하기 위한 서버에 대한 프로세스의 실시예의 순서도,
도 5는 요청 서버로의 대역폭의 초기 할당을 관리하기 위한 서버에 대한 프로세스의 실시예의 순서도,
도 6은 보다 많은 대역폭이 필요하고 필요한 대역폭을 요청하는지를 판정하는 요청 서버에 대한 프로세스의 실시예의 순서도,
도 7은 초기 대역폭에 대한 요청에 응답하여 서버를 제공하는 프로세스의 실시예의 순서도,
도 8은 서버 그룹의 멤버들을 위한 대역폭 사용을 감사(audit)하는 프로세스의 실시예의 순서도,
도 9는 시스템 및 방법이 실행될 수 있는 컴퓨터 시스템 환경의 실시예의 블록도,
도 10은 시스템 및 방법이 실행될 수 있는 컴퓨터 시스템의 블록도.
도 2는 호출 서버의 실시예의 블록도,
도 3은 대역폭을 분산 및 요청하는 하나 이상의 호출 서버에 의해 저장, 전송 또는 수신되는 데이터 구조의 블록도,
도 4는 초기 대역폭 할당을 개시 및 결정하기 위한 서버에 대한 프로세스의 실시예의 순서도,
도 5는 요청 서버로의 대역폭의 초기 할당을 관리하기 위한 서버에 대한 프로세스의 실시예의 순서도,
도 6은 보다 많은 대역폭이 필요하고 필요한 대역폭을 요청하는지를 판정하는 요청 서버에 대한 프로세스의 실시예의 순서도,
도 7은 초기 대역폭에 대한 요청에 응답하여 서버를 제공하는 프로세스의 실시예의 순서도,
도 8은 서버 그룹의 멤버들을 위한 대역폭 사용을 감사(audit)하는 프로세스의 실시예의 순서도,
도 9는 시스템 및 방법이 실행될 수 있는 컴퓨터 시스템 환경의 실시예의 블록도,
도 10은 시스템 및 방법이 실행될 수 있는 컴퓨터 시스템의 블록도.
본 명세서는 첨부된 도면을 참조하여 기술되었다.
첨부된 도면에서, 유사한 구성요소 및/또는 특징부들이 동일한 참조번호를 가질 수 있다. 또한, 동일한 유형의 다양한 구성요소들은 이어지는 참조번호로 유사한 구성요소들을 구분하는 문자에 의해 구별될 수 있다. 만약 명세서에서 제 1 참조번호만이 사용되었으면, 설명은 제 2 참조번호와 무관하게 동일한 제 1 참조번호를 갖는 유사한 구성요소들 중 하나에 대해 적용가능하다.
아래의 설명은 본 발명의 실시예를 제공하지만, 본 발명의 범주, 적용가능성 또는 구성을 한정짓는 것은 아니다. 오히려, 아래의 설명은 실시예를 구현하는 것을 가능하게 하는 설명을 당업자에게 제공할 것이다. 첨부된 특허청구범위에서 설정된 바와 같은 본 발명의 사상 및 범주로부터 벗어나지 않는 한, 기능 및 소자들의 구성에 대해 다양한 변화가 이루어질 수 있음을 이해해야 한다.
전화 호출을 관리하는 시스템(100)의 실시예가 도 1에 도시되었다. 시스템(100)의 여러 구성요소는 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합일 수 있다. 컴퓨터 시스템 환경 및 시스템(100)의 여러 구성요소들을 구현할 수 있는 컴퓨터 시스템에 대한 설명이 도 9 및 10을 참조로 하여 기술되었다. 이렇게, 시스템(100)의 여러 구성요소에 대한 기능적인 설명이 아래에 이어질 것이다.
실시예에서, 시스템은 호출을 관리하고 네트워크(114)를 통해 통신하도록 동작할 수 있는 둘 이상의 서버(102, 104), 및/또는 서버(106)를 포함한다. 각 서버(102, 104) 및/또는 서버(106)는 네트워크(114, 116) 및/또는 네트워크(118)를 통해 브랜치(108, 110) 및/또는 브랜치(112)에 대한 전화 호출을 운영할 수 있다. 브랜치(108, 110) 및/또는 브랜치(112)는 전화기와 같은 복수의 통신 디바이스들의 세트를 포함할 수 있다. 예를 들어, 브랜치는 엔터프라이즈 네트워크의 호출 센터 또는 지점일 수 있다. 전형적으로, 브랜치(108, 110) 및/또는 브랜치(112)는 IP 어드레스 및/또는 전화 번호의 집합이다. 네트워크(114, 116) 및/또는 네트워크(118)는 브랜치(108, 110) 및/또는 브랜치(112)와 서버(102, 104) 및/또는 서버(106) 사이의 데이터 통신을 가능케 하는, 도 9 및 10을 참조로 하여 논의된 바와 같은 임의의 신뢰성 있는 또는 신뢰성 없는 네트워크일 수 있다.
시스템(100)은 하나 이상의 브랜치에서의 하나 이상의 IP 어드레스로부터의 대역폭 요청 또는 전화 호출을 관리한다. 예로서, 전화 호출이 브랜치(108)로부터 요청될 수 있다. 이 요청은 네트워크(114) 상에서 서버(102)로 전달될 수 있다. 호출을 허용하기 전에, 서버(102)는 네트워크(114)가 충분한 대역폭을 갖는지를 판정해야만 한다. 일반적으로, 네트워크(114, 116) 및/또는 네트워크(118) 및 서버(102, 104) 및/또는 서버(106) 사이의 통신은 대역폭이 제한되어 있다. 이렇게, 서버(102, 104) 및/또는 서버(106)의 그룹은 대역폭을 공유해야만 한다. 따라서, 서버 A(102)는 전화 호출이 시스템(100) 내에서 충분한 대역폭을 가질 것인지를 판정할 수 있어야만 한다.
서버(102, 104) 및/또는 서버(106)는 이들이 이용가능한 대역폭을 공유하는 그룹의 일부이다. 대역폭을 공유하기 위해서, 서버(102, 104) 및/또는 서버(106)는 자신들 각각에 대해 대역폭의 크기를 할당한다. 각 서버(102, 104) 및/또는 서버(106)가 호출을 관리 또는 제어하기 때문에, 할당된 대역폭의 일부분이 사용된다. 그러나, 일부 경우에, 서버(102, 104) 및/또는 서버(106)는 호출을 관리하기 위해 보다 많은 대역폭을 요청한다. 이러한 경우, 서버(102, 104) 및/또는 서버(106)는 그룹의 다른 멤버들로부터 보다 많은 대역폭을 요청할 수 있다.
서버(200)의 실시예가 도 2에 도시되었다. 서버(200)는 서버(102, 104) 및/또는 서버(106)(도 1)와 동일할 수 있다. 실시예에서, 서버(200)는 도 7을 참조로 하여 기술되는 바와 같은 컴퓨터 시스템이다. 서버(200)는 컴퓨터 모듈로서 실행할 수 있는 하나 이상의 구성요소를 구비할 수 있다. 서버(200)는 하나 이상의 호출 프로세싱 서버(202) 및/또는 제어 테이블(204)을 포함할 수 있지만, 이것으로 제한되는 것은 아니다.
호출 프로세싱 서버(202)는 서버에 대한 호출을 관리 또는 제어한다. 호출 프로세싱 서버(202)는 브랜치(108, 110) 및/또는 브랜치(112)(도 1)의 멤버의 IP 어드레스로부터 전화 호출에 대한 요청을 수신한다. 호출 프로세싱 서버(202)는 완료하도록 요청된 호출을 라우팅할 수 있다. 그러나, 실시예에서, 호출 프로세싱 서버(202)는 호출이 적절한 대역폭을 갖는지를 판정한다. 만약 보다 많은 대역폭이 필요하면, 호출 프로세싱 서버는 추가의 대역폭을 요청한다. 일부 실시예에서, 호출 프로세싱 서버는 아래에서 설명되는 바와 같은 그룹 관리자로서의 역할을 할 수도 있다.
제어 테이블(204)은 충분한 대역폭을 이용할 수 있는지와 보다 많은 대역폭을 위해 그룹 멤버에게 접촉해야 하는지 여부를 판정하기 위해 호출 프로세싱 서버(202)를 호출하는 것을 허용하는 제어 정보를 저장할 수 있다. 제어 테이블의 실시예가 도 3에 도시되었다. 일반적으로, 모든 서버(102, 104) 및/또는 서버(106)는 제어 테이블(204)을 포함한다. 호출 프로세싱 서버(202) 및 제어 테이블(204)은 서버(102, 104) 및/또는 서버(106) 각각이 중앙 시스템 없이 대역폭 요청을 개별적으로 다루는 것을 허용한다.
제어 테이블(204)(도 2) 내에 포함될 수 있는 제어 정보를 구현하는 데이터 구조(300)의 실시예가 도 3에 도시되었다. 제어 정보(300)는 둘 이상의 데이터 필드(302, 304, 306, 308, 310, 312) 및/또는 제어 필드(314)로 이루어질 수 있다. 생략 부호로 표시된 것처럼, 도 3에 도시된 것보다 더 많거나 더 적은 제어 필드가 존재할 수도 있다. 제어 정보(300)의 일부는 안정적인 값을 갖는 안정된 상태일 수 있다. 그러나, 다른 제어 정보(300)는 동적이고 변화적일 수 있다. 동적 정보는 주기적으로 계산될 수 있거나(예컨대, 매일, 매시간 등) 또는 이벤트(예컨대, 새로운 호출 수신, 서버 그룹으로 새로운 멤버 합류 등)에 응답하여 계산될 수도 있다.
관리자 필드(302)는 서버(102, 104) 및/또는 서버(106)가 서버 그룹의 멤버들에 대한 관리자인 하나의 비트 또는 다른 표시를 포함한다. 관리자는 서버 그룹의 재확립을 요청하는 일부 이벤트(예컨대, 네트워크 고장, 서버 실패 등) 후에 또는 서버 그룹의 초기 확립 후에 판정된다. 관리자는 그룹 멤버들에 대한 대역폭의 초기 할당을 결정하고 아래에 기술되는 바와 같이 여러 그룹에 대한 주기적인 감사(audit)를 수행하는 것을 돕는다. 위치 필드(304)는 서버(102, 104) 및/또는 서버(106)(도 1)의 위치 또는 서버(102, 104) 및/또는 서버(106)(도 1)에 의해 관리되는 브랜치(108, 110) 및/또는 브랜치(112)(도 1)의 식별을 포함한다. 위치 필드(304)는 서버(102, 104) 및/또는 서버(106)(도 1)를 관리자 또는 다른 서버로 식별할 수 있다. 최대 허용된 대역폭 필드(306)는 전체 시스템(100)(도 1)이 이용가능한 대역폭을 저장한다. 최대 허용된 대역폭(306)은 시스템(100)(도 1)에 의해 사용되는 대역폭을 감사하기 위해 서버(102, 104) 및/또는 서버(106)에 대한 할당을 결정하는 데에 사용될 수 있다. 일반적으로, 관리자는 서버(102, 104) 및/또는 서버(106)에 대한 최대 할당 대역폭(306)을 유지한다. 서버 그룹이 확립된 후에, 관리자 필드(302), 위치 필드(304) 및 최대 할당 대역폭(306)은 어떤 상황(예컨대, 서버 실패 등)이 서버 그룹을 변경하지 않는 한 고정적이다.
할당 대역폭 필드(308)는 서버(102, 104) 및/또는 서버(106)에 대해 할당된 현재 대역폭 값을 저장한다. 호출 당 대역폭(310)은 각 호출 당 필요한 대역폭의 크기이다. 호출 당 대역폭(310)은 호출 당 사용된 대역폭의 평균 크기를 포함할 수 있거나 또는 호출에 필요한 기록상 가장 높은 대역폭을 표시할 수 있다. 현재 사용 대역폭 필드(312)는 서버(102, 104) 및/또는 서버(106)(도 1)에 의해 현재 관리되는 모든 호출을 수행하기 위해서 서버(102, 104) 및/또는 서버(106)(도 1)에 의해 사용되는 대역폭의 크기를 저장한다. 호출이 시작 또는 완료됨에 따라, 현재 사용 대역폭(312)이 변화한다. 대역폭 문턱값(314)은 서버(102, 104) 및/또는 서버(106)(도 1)가 보다 많은 대역폭을 요청할 필요가 있는 대역폭의 레벨일 수 있다. 예를 들어, 대역폭 문턱값(314)은 할당 대역폭(308)의 80%일 수 있다. 만약 현재 사용 대역폭(312)이 대역폭 문턱값(314)을 초과하면, 서버(102, 104) 및/또는 서버(106)(도 1)는 보다 많은 대역폭을 요청해야할 것이다. 다른 값, 측정값 및 계산 결과가 아래에서 제공되는 바와 같이 제어 정보(300) 내에 저장될 수 있다.
처음 대역폭을 할당하기 위한 요청 서버의 관점으로부터의 방법(400)의 실시예가 도 4에 도시되었다. 일반적으로, 방법(400)은 시작 동작(402)으로 시작하여 종료 동작(416)으로 끝난다. 방법(400)의 단계들에 대한 일반적인 순서가 도 4에 도시되었지만, 방법(400)은 도 4에 도시된 것과는 다른 단계의 순서로 구성될 수 있고, 더 많거나 더 적은 단계들을 포함할 수 있다. 방법(400)은 컴퓨터 시스템에 의해 실행되는 컴퓨터-실행가능한 명령어의 세트로서 실행될 수 있거나 또는 컴퓨터 판독가능한 매체 상에 저장되거나 인코딩될 수 있다. 아래에서는, 방법(400)이 도 1-3를 참조로 하여 설명된 시스템, 구성요소, 모듈, 데이터 구조 등을 참조로 하여 기술될 것이다. 또한, 요청 서버는 서버(102)로 기술될 수 있고 제공 서버는 서버(104)로서 기술될 수 있다. 임의의 서버(102, 104) 및/또는 서버(106)가 요청 서버 또는 제공 서버로서의 역할을 할 수 있음을 인지해야 한다.
요청 서버(102)는 단계(404)에서 자극을 수신한다. 자극은 실패 이벤트(예컨대, 네트워크 고장)로부터의 복구 또는 서버 그룹의 초기 생성일 수 있다. 요청 서버(102)는 자극에 응답하여 재시작 또는 초기화할 수 있다. 초기화함에 따라, 요청 서버(102)는 서버 그룹에 합류하기 위해 시도할 것이다. 요청 서버(102)는 다른 호출 프로세싱 서버(202)가 단계(406)에서 활성화되었는지를 판정한다. 판정을 확립하기 위해서, 요청 서버(102)는 위치 정보(304)에 대한 제어 테이블(204) 또는 다른 가능한 서버 그룹 멤버에 대한 다른 식별 정보를 검색할 수 있다. 요청 서버(102)는 적어도 하나의 그룹 멤버가 활성화되었는지를 판정하도록 다른 그룹 멤버에 대한 문의를 생성한다. 만약 그룹 멤버들 중 하나가 활성화되면, 제공 서버(104)의 호출 프로세싱 서버(202)는 상기 문의에 대한 답변으로 응답을 전송할 수 있다. 만약 활성화된 다른 호출 프로세싱 서버(202)가 존재하면, 방법(400)은 "예"를 택하고 요청 단계(412)로 진행한다. 만약 활성화된 다른 호출 프로세싱 서버(202)가 존재하지 않으면, 이 방법은 단계를 설정하기 위해 "아니오"를 택한다.
요청 서버(102)의 호출 프로세싱 서버(202)는 단계(408)에서 서버 그룹에 대한 최대 할당 대역폭인 수신 대역폭에 대해 할당 대역폭(308)을 설정한다. 다시 말하면, 단계(406)에서 결정된 바와 같이 만약 활성화된 다른 호출 프로세싱 서버(202)가 존재하지 않으면, 호출 프로세싱 서버(202)는 서버 그룹에 대한 모든 대역폭을 이용할 수 있다. 또한, 호출 프로세싱 서버(202)는 그룹을 위한 관리자가 되기 위해 관리자 비트(302)를 설정할 수 있다. 따라서, 실시예에서, 제 1 활성화 호출 프로세싱 서버(202)가 관리자가 된다. 다른 실시예에서, 관리자는 투표 또는 위임 프로세스를 통해 선택될 수 있다.
만약 다른 호출 프로세싱 서버(202)가 활성화되었으면, 요청 서버(102)의 호출 프로세싱 서버(202)는 대역폭 할당을 위해 적어도 하나의 다른 서버(102, 104) 및/또는 서버(106)에게 요청을 전달할 수 있다. 문의 프로세스 동안에, 이미 활성화된 제공 서버(104)의 호출 프로세싱 서버(202)는 자신을 새롭게 합류된 그룹 멤버들에 대해 관리자(104)로서 식별할 수 있다. 관리자(104)는 둘 이상의 합류 서버(102) 및/또는 서버(106)로부터의 대역폭 요청을 수신할 수 있다. 요청에 응답하여, 관리자(104)는 합류 멤버들 각각에 대한 관리 또는 최대 대역폭의 공유를 할당할 수 있다. 공유는 다양한 방식으로 계산될 수 있지만, 일반적으로, 관리자(104)는 각각의 합류 서버(102) 및/또는 서버(106)에게 대역폭의 동일한 공유를 제공한다. 요청 서버(102)는 할당 대역폭(308)을 단계(414)에서 수신된 대역폭의 크기로 설정한다.
대역폭 제공 서버의 측면에서, 요청 서버에게 대역폭을 제공하는 방법(500)의 실시예가 도 5에 도시되었다. 일반적으로, 방법(500)은 시작 동작(502)에서 시작하여 종료 동작(518)에서 끝난다. 방법(500)의 단계들에 대한 일반적인 순서가 도 5에 도시되었지만, 방법(500)은 도 5에 도시된 것과는 다른 단계의 순서로 구성될 수 있고, 더 많거나 더 적은 단계들을 포함할 수 있다. 방법(500)은 컴퓨터 시스템에 의해 실행되는 컴퓨터-실행가능한 명령어의 세트로서 실행될 수 있거나 또는 컴퓨터 판독가능한 매체 상에 저장되거나 인코딩될 수 있다. 아래에서는, 방법(500)이 도 1-3를 참조로 하여 설명된 시스템, 구성요소, 모듈, 데이터 구조 등을 참조로 하여 기술될 것이다. 또한, 요청 서버는 서버(102)로 기술될 수 있고 제공 서버는 서버(104)로서 기술될 수 있다. 임의의 서버(102, 104) 및/또는 서버(106)가 요청 서버 또는 제공 서버로서의 역할을 할 수 있음을 인지해야 한다.
제공 서버(104)는 요청 서버(102)로부터 대역폭에 대한 요청을 수신한다. 대역폭 요청은 초기 할당(즉, 요청 서버(102)는 현존하는 할당의 증가가 아닌 제 1 할당을 필요로 함)을 요청할 수 있다. 따라서, 제공 서버(104)는 요청 서버에게 설정 값이 아닌 최대한 많은 대역폭을 제공하고자 시도할 수 있다. 제공 서버(104)는 단계(506)에서 서버가 유지해야 하는 최소 대역폭(minK), 제공되는 최대 대역폭(MaxG) 및 이용가능한 대역폭을 판정한다. MinK는 사용 대역폭(312)의 최대, 저 대역폭 문턱값(314) 또는 호출 당 대역폭(310)이다. MaxG는 그룹 내의 서버(102, 104) 및/또는 서버(106)의 개수로 나눈 관리 대역폭(306)의 크기이다(예를 들어, 60,000MBps/6 서버=10,000MBps 당 서버). 이용가능한 대역폭은 할당 대역폭(308)에서 사용 대역폭(312)을 뺀 결과이다.
제공 서버(104)는 그 다음 단계(508)에서 이용가능한 대역폭이 MaxG보다 큰지를 판정한다. 다시 말하면, 제공 서버(104)가 보다 많은 이용가능한 대역폭을 가지면 그룹 내의 각 서버에는 최대 크기가 할당되어야만 한다. 만약 이용가능한 대역폭이 MaxG보다 크면, 방법(500)은 "예"를 택하여 단계(516)에서 제공 서버(104)가 요청 서버(102)에게 MaxG를 제공한다. 만약 이용가능한 대역폭이 MaxG보다 크지 않으면, 방법(500)은 "아니오"를 택하고 단계(510)로 진행한다.
제공 서버(104)는 단계(510)에서 이용가능한 대역폭이 minK보다 큰지를 판정할 수 있다. 다시 말하면, 제공 서버(104)가 제공 서버(104)의 현재 필요성보다 더 많은 이용가능한 대역폭을 가지는지를 판정한다. 만약 이용가능한 대역폭이 minK보다 크면, 방법(500)은 "예"를 택하여 제공 서버(104)가 단계(512)에서 이용가능한 대역폭에서 minK를 뺀 결과와 같은 대역폭을 제공한다. 다시 말하면, 제공 서버(104)는 요청 서버(102)에게 제공 서버(104)의 필요성보다 많은 만큼의 대역폭을 제공한다. 만약 이용가능한 대역폭이 minK보다 크지 않으면, 방법(500)은 "아니오"를 택하여 제공 서버(104)가 요청 서버(102)에게 아무것도 제공하지 않는다. 따라서, 제공 서버(104)는 이것이 오직 자신의 필요성을 만족시키기에 충분한 대역폭만을 가지면 아무것도 제공하지 않을 수 있다.
요청 서버(102)의 측면에서 본, 호출을 관리하는 방법(600)의 실시예가 도 6에 도시되었다. 일반적으로, 방법(600)은 시작 동작(602)으로 시작하여 종료 동작(626)으로 끝난다. 방법(600)의 단계들에 대한 일반적인 순서가 도 6에 도시되었지만, 방법(600)은 도 6에 도시된 것과는 다른 단계의 순서로 구성될 수 있고, 더 많거나 더 적은 단계들을 포함할 수 있다. 방법(600)은 컴퓨터 시스템에 의해 실행되는 컴퓨터-실행가능한 명령어의 세트로서 실행될 수 있거나 또는 컴퓨터 판독가능한 매체 상에 저장되거나 인코딩될 수 있다. 아래에서는, 방법(600)이 도 1-3를 참조로 하여 설명된 시스템, 구성요소, 모듈, 데이터 구조 등을 참조로 하여 기술될 것이다. 또한, 요청 서버는 서버(102)로 기술될 수 있고 제공 서버는 서버(104)로서 기술될 수 있다. 임의의 서버(102, 104) 및/또는 서버(106)가 요청 서버 또는 제공 서버로서의 역할을 할 수 있음을 인지해야 한다.
요청 서버(102)의 호출 프로세싱 서버(202)는 단계(604)에서 브랜치(108)로부터의 착신 호출을 수신한다. 이 호출을 수용하여 라우팅하기 전에, 호출 프로세싱 서버(202)는 단계(606)에서 서버(102)가 호출을 완료하기에 충분한 대역폭을 갖는지 여부를 판정한다. 호출 프로세싱 서버(202)는 사용 대역폭(312)과 새로운 호출을 위한 대역폭(310)을 더한 것이 할당 대역폭(308)보다 작은지 여부를 판정할 수 있다. 만약 서버(102)가 충분한 대역폭을 갖는다면, 방법(600)은 "예"를 택하여 단계(618)에서 호출 프로세싱 서버(202)가 호출을 허용한다. 만약 서버(102)가 충분한 대역폭을 갖지 않는다면, 방법은 "아니오"를 택하여 단계(608)에서 호출 프로세싱 서버(202)가 호출 라우팅을 지연시킨다.
단계(608)에서의 호출 라우팅 지연 후에, 호출 프로세싱 서버(202)는 제공 서버(104)와 같은 서버 그룹 멤버로부터 대역폭을 요청한다. 이 요청은 대역폭에 대한 요청 및 필요한 대역폭의 크기에 대한 값을 나타내는 메시지일 수 있다. 제공 서버(104)로부터 응답을 수신한 후에, 호출 프로세싱 서버(202)는 단계(612)에서 충분한 대역폭이 수신되었는지를 판정할 수 있다. 응답은 대역폭의 공급을 거절할 수 있다. 다른 경우에서, 응답은 요청된 대역폭의 일부 또는 전부를 포함한다. 일 실시예에서, 만약 호출 프로세싱 서버(202)가 제공 서버(104)로부터 요청된 대역폭의 전체 크기를 수신하지 않으면, 방법은 "아니오"를 택할 수 있고 단계(616)에서 호출 프로세싱 서버(202)가 호출을 거절한다. 선택적으로, 만약 호출 프로세싱 서버(202)가 제공 서버(104)로부터 요청된 대역폭의 전체 크기를 수신하지 않으면, 이방법은 "아니오"를 택하여 단계(610)에서 모든 서버가 사전결정된 횟수만큼 문의될 때까지 호출 프로세싱 서버(202)가 다른 서버(106)에 대해 요청을 반복할 수 있다. 만약 호출 프로세싱 서버(202)가 제공 서버(104) 및/또는 다른 서버로부터 요청된 대역폭의 전체 크기를 수신하면, 이 방법은 "예"를 택하여 호출 프로세싱 서버(202)가 단계(614)에서의 호출을 허용한다.
단계(618)에서의 호출을 허용한 후에, 호출 프로세싱 서버(202)가 단계(620)에서 새로운 사용 대역폭 값(312)을 설정한다. 새로운 사용 대역폭 값(312)은 이전에 허용된 호출과 방금 허용된 새로운 호출을 포함한다. 호출 프로세싱 서버(202)는 그 다음 새로운 사용 대역폭(312)이 저 대역폭 문턱값(314) 이상인지 여부를 판정한다. 일반적으로, 저 대역폭 문턱값(314)은 할당 대역폭보다 적은 값이며(예컨대, 할당 대역폭의 80%), 대역폭의 부족이 문제화되기 이전에 호출 프로세싱 서버(202)가 대역폭을 더 요청할 것을 보장한다. 만약 새로운 사용 대역폭(312)이 저 대역폭 문턱값(314) 이상이면, 이 방법은 "예"를 택하여 단계(624)에서 호출 프로세싱 서버(202)가 보다 많은 대역폭을 요청한다. 추가 대역폭에 대한 요청은 단계(610, 612)와 유사하게 달성된다. 만약 새로운 사용 대역폭(312)이 저 대역폭 문턱값(314) 이상이 아니라면, 이 방법은 "아니오"를 택하여 동작이 종료된다(626).
제공 서버(104)의 측면에서 본, 요청에 대해 응답하는 방법(700)의 실시예가 도 7에 도시되었다. 일반적으로, 방법(700)은 시작 동작(702)으로 시작하여 종료 동작(718)으로 끝난다. 방법(700)의 단계들에 대한 일반적인 순서가 도 7에 도시되었지만, 방법(700)은 도 7에 도시된 것과는 다른 단계의 순서로 구성될 수 있고, 더 많거나 더 적은 단계들을 포함할 수 있다. 방법(700)은 컴퓨터 시스템에 의해 실행되는 컴퓨터-실행가능한 명령어의 세트로서 실행될 수 있거나 또는 컴퓨터 판독가능한 매체 상에 저장되거나 인코딩될 수 있다. 아래에서는, 방법(700)이 도 1-3를 참조로 하여 설명된 시스템, 구성요소, 모듈, 데이터 구조 등을 참조로 하여 기술될 것이다. 또한, 요청 서버는 서버(102)로 기술될 수 있고 제공 서버는 서버(104)로서 기술될 수 있다. 임의의 서버(102, 104) 및/또는 서버(106)가 요청 서버 또는 제공 서버로서의 역할을 할 수 있음을 인지해야 한다.
제공 서버(104)는 단계(704)에서 요청 서버(102)로부터 대역폭 요청을 수신한다. 요청은 요청 서버(102) 및 필요한 대역폭의 크기를 식별할 수 있다. 제공 서버(104)의 호출 프로세싱 서버(202)는 단계(706)에서 서버의 할당 대역폭(308)이 서버의 사용 대역폭(312)보다 큰지를 판정할 수 있다. 다시 말하면, 호출 프로세싱 서버(202)는 제공 서버(104)가 여분의 대역폭을 갖는지 여부를 판정한다. 만약 서버의 할당 대역폭(308)이 서버의 사용 대역폭(312)보다 크면, 방법(700)은 "예"를 택하여 단계(710)로 진행한다. 그러나, 만약 서버의 할당 대역폭(308)이 서버의 사용 대역폭(312)보다 크지 않으면, 이 방법(700)은 "아니오"를 택하여 호출 프로세싱 서버(202)가 단계(708)에서 요청을 거절하고 요청 서버(102)에게 대역폭을 제공하지 않는다. 호출 프로세싱 서버(202)는 요청 서버(102)에게 거절 응답을 전송할 수 있다.
그 다음 호출 프로세싱 서버(202)는 단계(710)에서 이용가능한 대역폭 크기가 주어지는 공급 문턱값보다 작은지를 판정할 수 있다. 공급 문턱값은 호출 프로세싱 서버(202)가 대역폭을 공급할 수 있는 만큼인 할당 대역폭(308)의 백분율 크기를 설정하는 제어 데이터(300)의 데이터 필드일 수 있다(예를 들어, 호출 프로세싱 서버(202)는 할당 대역폭의 0.98배로 규정되는 크기와 동일한, 할당 대역폭(308)의 98% 정도까지의 대역폭을 제공할 수 있다). 따라서, 호출 프로세싱 서버(202)는 할당 대역폭(308)에서 요청된 크기를 뺀 값이 공급 문턱값보다 작은지를 판정한다. 만약 이용가능한 크기가 공급 문턱값보다 작으면, 방법(700)은 "예"를 택하여 단계(716)에서 요청된 대역폭의 총 크기를 요청 서버(102)로 제공한다. 만약 이용가능한 크기가 공급 문턱값보다 작지 않으면, 방법(700)은 "아니오"를 택하여 판정 동작(712)으로 진행한다.
단계(712)에서 공급할 크기를 결정하기 위해서, 호출 프로세싱 서버(202)는 할당 대역폭(308)에서 사용 대역폭(312)을 뺀 값이 평균 호출 당 대역폭(310)보다 큰지 판정할 수 있다. 만약 할당 대역폭(308)에서 사용 대역폭(312)을 뺀 값이 평균 호출 당 대역폭(310)보다 크면, 호출 프로세싱 서버(202)는 단계(714)에서 할당 대역폭(308)에서 사용 대역폭(312)을 뺀 결과와 같은 대역폭의 크기를 제공하도록 결정한다. 그러나, 만약 할당 대역폭(308)에서 사용 대역폭(312)을 뺀 값이 평균 호출 당 대역폭(310)보다 크면, 호출 프로세싱 서버(202)는 단계(714)에서 평균 호출 당 대역폭(310)을 제공할 수 있다.
관리자 서버의 측면에서 본, 대역폭 사용의 감사를 수행하는 방법(800)의 실시예가 도 8에 도시되었다. 일반적으로, 방법(800)은 시작 동작(802)으로 시작하여 종료 동작(822)으로 끝난다. 방법(800)의 단계들에 대한 일반적인 순서가 도 8에 도시되었지만, 방법(800)은 도 8에 도시된 것과는 다른 단계의 순서로 구성될 수 있고, 더 많거나 더 적은 단계들을 포함할 수 있다. 방법(800)은 컴퓨터 시스템에 의해 실행되는 컴퓨터-실행가능한 명령어의 세트로서 실행될 수 있거나 또는 컴퓨터 판독가능한 매체 상에 저장되거나 인코딩될 수 있다. 아래에서는, 방법(800)이 도 1-3를 참조로 하여 설명된 시스템, 구성요소, 모듈, 데이터 구조 등을 참조로 하여 기술될 것이다. 또한, 요청 서버는 서버(102)로 기술될 수 있고 제공 서버는 서버(104)로서 기술될 수 있다. 임의의 서버(102, 104) 및/또는 서버(106)가 관리자로서 설계되었다면 관리자의 기능을 할 수 있음을 인지해야 한다.
단계(804)에서 관리자 서버(102)는 감사를 시작한다. 감사는 주기적으로, 예컨대 매일, 매시간 등으로 개시될 수 있거나, 또는 어떠한 이벤트, 예컨대 서버가 대역폭을 거절한 경우에 응답하여 수행될 수 있다. 관리자로서 설계된 서버(102)는 감사를 시작하고 수행한다. 감사 시작에 응답하여, 관리자 서버(102)는 단계(806)에서 서버의 사용 대역폭과 할당 대역폭을 요청하는 각 호출 프로세싱 서버(202)로 요청을 전송한다. 각 호출 프로세싱 서버(202)는 할당 대역폭(308)과 사용 대역폭(312)을 갖는 응답을 전송할 수 있다.
관리자 서버(102)는 그 다음 단계(808)에서 할당되지 않은 대역폭이 존재하는지를 판정한다. 먼저, 관리자 서버(102)는 할당된 대역폭에 대한 모든 응답을 합산한다. 그 다음, 관리자 서버(102)는 할당 대역폭에 대한 합산을 모든 호출 프로세싱 서버에 대해 관리되는 대역폭의 크기에 비교한다. 만약 할당 대역폭의 합이 관리 대역폭과 같으면, 방법(800)은 "예"를 택하여 관리자 서버(102)가 단계(810)에서 감사를 중단하도록 한다. 그러나, 만약 할당 대역폭의 합산이 관리 대역폭과 같지 않으면, 방법(800)은 "아니오"를 택하여 단계(814)로 진행한다.
관리자 서버(102)는 단계(814)에서 각 서버에 대한 사용 대역폭이 할당된 또는 최대 허용 대역폭(306)보다 작은지를 판정할 수 있다. 만약 사용 대역폭이 최대 허용 대역폭(306)보다 작으면, 방법(800)은 "예"를 택하여 단계(818)로 진행한다. 만약 사용 대역폭의 합이 최대 허용 대역폭(306)보다 작지 않으면, 방법(800)은 "아니오"를 택하여 단계(820)로 진행한다. 관리자 서버(102)는 단계(816)에서 각 호출 프로세싱 서버(202)에 대한 할당 대역폭의 새로운 비율을 결정한다. 여기에서, 관리자 서버(102)는, 각 호출 프로세싱 서버(202)가 호출 프로세싱 서버(202)에 대한 사용 대역폭을 호출 프로세싱 서버(202)에 대한 할당 대역폭에 비교함으로써 이용하는 대역폭의 비율을 결정한다. 하나 이상의 호출 프로세싱 서버(202)에 대한 초과 대역폭의 크기를 결정한 후에, 관리자 서버(102)는 초과 대역폭을 어디에 재분산할 것인지를 결정할 수 있다. 따라서, 관리자 서버(102)는 어느 호출 프로세싱 서버(202)가 보다 많은 대역폭을 이용할 수 있는지, 즉 호출 프로세싱 서버(202)가 호출 프로세싱 서버(202)에 대한 할당 대역폭과 같거나 거의 같은 사용 대역폭을 갖는지를 결정할 수 있다. 초과 대역폭은 할당 대역폭과 동일하거나 거의 동일한 사용 대역폭을 갖는 호출 프로세싱 서버(202)에 제공될 수 있다. 이런 식으로, 더 높은 용도를 갖는 호출 프로세싱 서버(202)는 더 많은 대역폭을 수신한다. 다른 실시예에서, 관리자 서버(102)는 단순히 호출 프로세싱 서버(202)의 개수로 관리 대역폭(306) 나눔으로써 대역폭을 동일하게 분산한다.
만약 사용 대역폭이 단계(816)에서 결정된 바와 같이 호출 프로세싱 서버(202)에 대한 최대 허용 대역폭(306)보다 작으면, 방법(800)은 "예"를 택하여 단계(818)로 진행한다. 단계(818)에서, 관리자 서버(102)는 단계(816)에서 결정된 바와 같이 사용되지 않은 대역폭을 재할당하기 위해 호출 프로세싱 서버의 할당 대역폭을 감소시킨다. 만약 사용 대역폭이 단계(814)에서 결정된 바와 같이 호출 프로세싱 서버(202)에 대한 최대 허용 대역폭(306)보다 작지 않으면, 방법(800)은 "아니오"를 택하고, 이때 관리자 서버(102)는 초과 대역폭의 일부 또는 전부를 단계(816)에서 결정된 바와 같이 호출 프로세싱 서버의 할당 대역폭으로 할당한다. 할당 대역폭을 감소 또는 증가시키기 위해, 관리자 서버(102)는 간단히 단계(818, 820)에서 제어 테이블(204) 내에 저장될 새로운 할당 대역폭(308)을 각 호출 프로세싱 서버로 전송한다.
도 9는 대역폭을 관리하기 위한 시스템(100)으로서의 기능을 할 수 있는 컴퓨팅 환경(900)의 블록도를 도시한다. 시스템(900)은 하나 이상의 사용자 컴퓨터(905, 910, 915)를 포함한다. 사용자 컴퓨터(905, 910, 915)는 범용 개인 컴퓨터(예시적으로, 마이크로소프트 사의 Windows™ 및/또는 애플 사의 Macintosh™ 운영 시스템의 다양한 버전을 구동하는 개인 컴퓨터 및/또는 랩탑 컴퓨터를 포함함) 및/또는 상업적으로 입수가능한 UNIX™ 또는 UNIX와 유사한 다양한 운영 시스템을 구동하는 워크스테이션 컴퓨터일 수 있다. 이러한 사용자 컴퓨터(905, 910, 915)는 예를 들어 데이터베이스 클라이언트 및/또는 서버 애플리케이션 및 웹 브라우저 애플리케이션을 포함하는 임의의 다양한 애플리케이션을 구비할 수 있다. 이와 달리, 사용자 컴퓨터(905, 910, 915)는 네트워크(예컨대, 아래에서 기술되는 네트워크(920))를 통해 통신할 수 있고/있거나 전자 문서의 웹 페이지 또는 다른 유형을 디스플레이 및 네이게이팅하는 씬(thin)-클라이언트 컴퓨터, 인터넷 가능 모바일 폰 및/또는 PDA와 같은 임의의 다른 전자 디바이스일 수 있다. 예시적인 시스템(900)이 세 개의 사용자 컴퓨터를 갖도록 도시되었지만, 임의의 개수의 사용자 컴퓨터가 지원될 수 있다.
시스템(900)은 네트워크(920)를 추가로 포함한다. 네트워크(920)는 TCP/IP, SNA, IPX, AppleTalk, 등을 포함하지만 이것으로 제한되는 것은 아닌 임의의 다양한 상업적으로 입수가능한 프로토콜들을 이용하여 데이터 통신을 지원할 수 있는 당업계에서 잘 알려진 임의의 유형의 네트워크일 수 있다. 예시로서, 네트워크(920)는 이더넷 네트워크, Token-Ring 네트워크 등과 같은 로컬 영역 네트워크("LAN"); 광역 네트워크; 가상 사설 네트워크("VPN") 등을 포함하는 가상 네트워크; 인터넷; 인트라넷; 익스트라넷; PSTN(public switched telephone network); 적외선 네트워크; 무선 네트워크(예컨대, 임의의 IEEE 902.11 스위트 프로토콜, 당업계에서 알려진 Bluetooth™ 프로토콜 및/또는 임의의 다른 무선 프로토콜 하에서 운영되는 네트워크); 및/또는 이들 네트워크들과 그외의 네트워크들의 조합일 수 있다. 네트워크(920)는 네트워크(114, 116) 및/또는 네트워크(118)와 동일하거나 유사할 수 있다.
시스템(900)은 하나 이상의 서버 컴퓨터(925, 930)를 포함할 수 있다. 하나의 서버는 사용자 컴퓨터(905, 910, 915)로부터 웹 페이지 또는 다른 전자 문서에 대한 요청을 프로세싱하는 데에 사용될 수 있는 웹 서버(925)일 수 있다. 웹 서버는 임의의 상업적으로 입수가능한 서버 운영 시스템뿐 아니라, 전술된 임의의 시스템을 포함하는 운영 시스템을 구동할 수 있다. 웹 서버(925)는 HTTP 서버, FTP 서버, CGI 서버, 데이터베이스 서버, 자바 서버 등을 포함하는 다양한 서버 애플리케이션을 구동시킬 수 있다. 일부 예에서, 웹 서버(925)는 하나 이상의 웹 서비스로서 이용가능한 동작을 공개할 수 있다.
시스템(900)은 또한 운영 시스템에 더하여 하나 이상의 사용자 컴퓨터(905, 910, 915) 상에서 구동되는 클라이언트에 의해 액세스 가능한 하나 이상의 애플리케이션을 포함할 수 있는 하나 이상의 파일 및/또는 애플리케이션 서버(930)를 포함할 수도 있다. 서버(들)(930)는 사용자 컴퓨터(905, 910, 915)에 응답하여 프로그램 또는 스크립트를 실행할 수 있는 하나 이상의 범용 컴퓨터일 수 있다. 일례로서, 서버는 하나 이상의 웹 애플리케이션을 실행할 수 있다. 웹 애플리케이션은 Java™, C, C#™ 또는 C++과 같은 임의의 프로그래밍 언어 및/또는 Perl, Python 또는 TCL과 같은 임의의 스크립팅 언어 및 임의의 프로그래밍/스크립팅 언어의 조합으로 기록된 하나 이상의 스크립트 또는 프로그램으로서 구현될 수 있다. 애플리케이션 서버(들)(930)는 사용자 컴퓨터(905) 상에서 구동되는 데이터베이스 클라이언트로부터의 요청을 프로세싱할 수 있는 Oracle, Microsoft, Sybase™, IBM™ 등으로부터 상업적으로 입수가능한 데이터베이스 서버를 포함할 수 있지만, 이것으로 한정되는 것은 아니다.
웹 애플리케이션 서버(930)에 의해 생성된 웹 페이지는 웹 서버(925)를 통해 사용자 컴퓨터(905)로 전달될 수 있다. 유사하게, 웹 서버(925)는 웹 페이지 요청, 웹 서비스 발동 및/또는 사용자 컴퓨터(905)로부터의 입력 데이터를 수신할 수 있고, 웹 페이지 요청 및/또는 입력 데이터를 웹 애플리케이선 서버(930)로 전달할 수 있다. 다른 실시예에서, 서버(930)는 파일 서버로서의 기능을 할 수 있다. 설명의 용이함을 위해 도 9는 개별적인 웹 서버(925) 및 파일/애플리케이션(930)을 도시하고 있지만, 당업자는 서버(925, 930)와 관련하여 기술되는 기능이 구현-특정 필요성 및 파라미터에 따라서 단일 서버 및/또는 복수의 특정화된 서버에 의해 수행될 수도 있음을 인지할 것이다. 컴퓨터 시스템(905, 910, 915), 파일 서버(925) 및/또는 애플리케이션 서버(930)는 서버(102, 104) 및/또는 서버(106) 또는 본 명세서에 기술된 것 외의 시스템으로서의 기능을 할 수 있다.
시스템(900)은 데이터베이스(230, 302, 309)와 동일하거나 유사할 수 있는 데이터베이스(935)를 포함할 수 있다. 데이터베이스(935)는 다양한 위치에 존재할 수 있다. 예를 들어, 데이터베이스(935)는 컴퓨터(905, 910, 915, 925, 930) 중 하나 이상에 대해 국부적인 (및/또는 여기에 존재하는) 저장 매체 상에 존재할 수 있다. 이와 달리, 컴퓨터(905, 910, 915, 925, 930) 중 하나 또는 이들 모두로부터 원거리에 있을 수 있고, 이들 중 하나 이상과 통신할 수 있다(예컨대, 네트워크(920)를 통해). 특정한 실시예의 세트에서, 데이터베이스(935)는 당업자에게 친숙한 저장 영역 네트워크("SAN") 내에 존재할 수 있다. 유사하게, 컴퓨터(905, 910, 915, 925, 930)로 속성화되는 기능들을 수행하는 임의의 필요한 파일이 각각의 컴퓨터에서 국부적으로 및/또는 원격적으로 적절하게 저장될 수 있다. 실시예의 하나의 세트에서, 데이터베이스(935)는 SQL-포맷된 커맨드에 응답하여 데이터를 저장, 업데이트 및 검색하도록 구성되는 Oracle 10i™과 같은 관계적 데이터베이스일 수 있다. 데이터베이스(935)는 제어 테이블(204)을 저장하는 데에 사용되는 데이터베이스와 동일하거나 유사할 수 있다.
도 10은 서버(102, 104) 및/또는 서버(106) 또는 본 명세서에 기술된 다른 시스템이 사용되거나 실행될 수 있는 컴퓨터 시스템(1000)의 일 실시예를 도시한다. 컴퓨터 시스템(1000)은 버스(1055)를 통해 전기적으로 연결될 수 있는 하드웨어 소자를 포함하도록 도시되었다. 하드웨어 소자는 하나 이상의 중앙 처리 장치(CPU)(1005), 하나 이상의 입력 디바이스(1010)(예컨대, 마우스, 키보드, 등); 및 하나 이상의 출력 디바이스(1015)(예컨대, 디스플레이 디바이스, 프린터 등)을 포함할 수 있다. 컴퓨터 시스템(1000)은 하나 이상의 저장 디바이스(1020)를 포함할 수 있다. 예시로서, 저장 디바이스(들)(1020)는 디스크 드라이브, 광학 저장 디바이스, 랜덤 액세스 메모리("RAM")와 같은 고체-상태 저장 디바이스 및/또는 프로그램가능하고 플래쉬-업데이트가능할 수 있는 판독 전용 메모리("ROM") 등 일 수 있다.
컴퓨터 시스템(1000)은 컴퓨터-판독가능한 저장 매체 판독기(1025); 통신 시스템(1030)(예컨대, 모뎀, 네트워크 카드(무선 또는 유선), 적외선 통신 디바이스 등); 및 전술된 RAM 및 ROM 디바이스를 포함할 수 있는 작업 메모리(1040)를 추가로 포함할 수 있다. 일부 실시예에서, 컴퓨터 시스템(1000)은 또한 DSP, 전용 프로세서 등을 포함할 수 있는 프로세싱 가속 유닛(1035)을 포함할 수 있다.
컴퓨터-판독가능한 저장 매체 판독기(1025)는 임시로 및/또는 보다 지속적으로 포함하는 컴퓨터-판독가능한 정보를 위한 원거리, 지역, 고정 및/또는 제거가능한 저장 디바이스와 저장 매체를 이해하기 쉽게 함께 나타내는 (또한, 선택적으로 저장 디바이스(들)(1020)와의 조합을 함께) 컴퓨터-판독가능한 저장 매체에 접속될 수 있다. 통신 시스템(1030)은 데이터가 시스템(1000)과 관련하여 전술된 네트워크(1020) 및/또는 임의의 다른 컴퓨터와 교환되도록 할 수 있다. 또한, 본 명세서에 기술된 바와 같이, "저장 매체"라는 용어는 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 자기 RAM, 코어 메모리, 자기 디스크 저장 매체, 광학적 저장 매체, 플래쉬 메모리 디바이스 및/또는 정보를 저장하기 위한 그외의 장치 판독가능한 매체를 포함하는, 데이터를 저장하기 위한 하나 이상의 디바이스를 나타낼 수 있다.
컴퓨터 시스템(1000)은 서버(300)를 구현하는 프로그램 코드와 같은 운영 시스템(1045) 및/또는 다른 코드(1050)를 포함하는 작업 메모리(1040) 내에 현재 위치된 것으로 도시된 소프트웨어 소자를 포함할 수도 있다. 컴퓨터 시스템(1000)의 다른 실시예는 전술된 다수의 변화들을 가질 수 있음을 이해해야 한다. 예를 들어, 맞춤화된 하드웨어가 사용될 수 있고/있거나 특정한 소자가 하드웨어, 소프트웨어(애플릿과 같은 이동가능한 소프트웨어를 포함) 또는 이들 모두에서 구현될 수 있다. 또한, 네트워크 입력/출력 디바이스와 같이 다른 컴퓨팅 디바이스로의 접속이 사용될 수도 있다.
전술된 설명에서, 방법들이 예시의 목적으로 특정한 순서로 기술되었다. 그러나 다른 실시예에서는 이 방법들이 기술된 것과 다른 순서로 수행될 수 있음을 이해해야 한다. 전술된 방법들은 하드웨어 구성요소에 의해 수행될 수 있거나 또는 명령어로 프로그램된 범용 또는 전용 프로세서 또는 로직 회로와 같은 장치로 하여금 이 방법들을 수행하도록 하기 위해 사용될 수 있는, 장치-실행가능한 명령어들의 시퀀스로 구현될 수 있음을 이해해야 한다. 이들 장치-실행가능한 명령어들은 CD-ROM 또는 다른 유형의 광학 디스크, 플로피 디스켓, ROM, RAM, EPROM, EEPROM, 자기 또는 광학 카드, 플래쉬 메모리, 또는 전자 명령어를 저장하기에 적합한 다른 유형의 장치-판독가능한 매체들과 같은 하나 이상의 장치 판독가능한 매체 상에 저장될 수 있다. 이와 달리, 이 방법들은 하드웨어와 소프트웨어의 조합에 의해 수행될 수 있다.
특정한 세부사항들이 실시예들에 대한 철저한 이해를 제공하도록 주어졌다. 그러나, 당업자는 실시예들이 이러한 특정 세부사항 없이도 실시될 수 있음을 이해할 것이다. 예를 들어, 회로들은 불필요한 세부사항으로 실시예를 흐리지 않도록 블록도로 도시될 수 있다. 다른 예에서, 잘 알려진 회로, 프로세스, 알고리즘, 구조 및 기술이 실시예를 흐리지 않도록 불필요한 세부사항 없이 도시되었을 수 있다.
또한, 실시예는 순서표, 순서도, 데이터 흐름도, 구조도, 또는 블록도로서 도시된 프로세스로서 기술되었다. 순서표가 시간순서적인 프로세스로서 동작을 기술할 수 있지만, 다수의 동작들이 동시에 또는 병렬로 수행될 수 있다. 또한, 동작의 순서들이 재배열될 수 있다. 프로세스는 그 동작이 완료되었을 때 종료되지만, 도면에 포함되지 않은 추가적인 단계들을 가질 수도 있다. 프로세스는 방법, 기능, 절차, 서브루틴, 서브프로그램 등에 해당할 수 있다. 프로세스가 기능에 해당하는 경우에, 이것의 종료는 기능이 호출 기능 또는 메인 기능으로 복귀하는 것에 해당한다.
또한, 실시예들이 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 디스크립션 언어, 또는 이들의 임의의 조합에 의해 구현될 수 있다. 소프트웨어, 펌웨어, 미들웨어 또는 마이크로코드로 구현되었을 때, 필요한 태스크를 수행하기 위한 프로그램 코드 또는 코드 세그먼트는 저장 매체와 같은 장치 판독가능한 매체 내에 저장될 수 있다. 프로세서(들)는 필요한 태스크를 수행할 수 있다. 코드 세그먼트는 절차, 기능, 서브프로그램, 프로그램, 루틴, 서브루틴, 모듈, 소프트웨어 패키지, 클래스, 또는 명령어, 데이터 구조 또는 프로그램 상태의 임의의 조합을 나타낼 수 있다. 코드 세그먼트는 정보, 데이터, 인수(argument), 파라미터, 또는 메모리 콘텐츠를 전달 및/또는 수신함으로써 다른 코드 세그먼트 또는 하드웨어 회로로 연결될 수 있다. 정보, 인수, 파라미터, 데이터 등은 메모리 공유, 메시지 전달, 코튼 전달, 네트워크 전송 등을 포함하는 임의의 적절한 수단을 통해 전달, 포워딩, 또는 전송될 수 있다.
본 발명의 예시적인 실시예들이 본 명세서에 자세히 기술되었지만, 본 발명의 컨셉은 그외의 방식으로 다양하게 구현 및 이용될 수 있으며, 첨부된 특허청구범위는 종래기술에 의해 한정되는 것을 제외하고는 이러한 변경을 포함하는 것으로 해석되어야 한다.
Claims (10)
- 전화 호출을 관리하는 방법에 있어서,
제 1 호출 프로세싱 서버가 자극(stimulus)을 수신하는 단계 - 상기 제 1 호출 프로세싱 서버는 기업 네트워크 내에서 전화 호출을 관리하는 분산 호출 프로세싱 서버들의 그룹의 멤버임 - 와,
상기 자극에 응답하여 상기 그룹 내의 다른 호출 프로세싱 서버가 활성화되어 있는지를 판정하는 단계와,
만약 다른 호출 프로세싱 서버가 활성화되어 있지 않으면, 상기 제 1 호출 프로세싱 서버에 대한 할당 대역폭을 상기 기업 네트워크에 대한 총 대역폭인 관리 대역폭과 동일하게 설정하는 단계와,
만약 다른 호출 프로세싱 서버가 활성화되어 있으면, 상기 제 1 호출 프로세싱 서버가 상기 그룹 내의 다른 호출 프로세싱 서버로부터 대역폭의 할당을 수신하는 단계를 포함하는
전화 호출 관리 방법.
- 제 1 항에 있어서,
만약 다른 호출 프로세싱 서버가 활성화되어 있지 않으면, 상기 제 1 호출 프로세싱 서버를 상기 분산 호출 프로세싱 서버들의 그룹에 대한 관리자로 설정하는 단계를 더 포함하는
전화 호출 관리 방법.
- 제 1 항에 있어서,
관리자가 제 2 호출 프로세싱 서버로부터 초기 대역폭 할당 요청을 수신하는 단계와,
상기 제 1 호출 프로세싱 서버가, 상기 제 1 호출 프로세싱 서버가 대역폭 할당을 제공할 수 있는지 여부를 판정하는 단계와,
만약 상기 제 1 호출 프로세싱 서버가 대역폭 할당을 제공할 수 있으면, 상기 제 1 호출 프로세싱 서버가, 어느 정도의 대역폭을 제공할지를 결정하는 단계와,
상기 제 1 호출 프로세싱 서버가 상기 제 2 호출 프로세싱 서버에게 상기 결정된 대역폭을 상기 대역폭 할당으로서 제공하는 단계와,
만약 상기 호출 프로세싱 서버가 상기 대역폭 할당을 제공할 수 없으면, 상기 제 1 호출 프로세싱 서버가 상기 제 2 호출 프로세싱 서버로부터의 상기 요청을 거절하는 단계를 더 포함하는
전화 호출 관리 방법.
- 제 3 항에 있어서,
상기 제 1 호출 프로세싱 서버가 대역폭 할당을 제공할 수 있는지를 판정하는 단계는,
상기 제 1 호출 프로세싱 서버가, 상기 제 1 호출 프로세싱 서버가 유지해야 할 최소 대역폭(minK), 제공할 최대 대역폭(MaxG) 및 이용가능한 대역폭을 결정하는 단계와,
상기 제 1 호출 프로세싱 서버가, 상기 이용가능한 대역폭이 상기 제공할 최대 대역폭(MaxG)보다 큰지를 판정하는 단계와,
만약 상기 이용가능한 대역폭이 상기 제공할 최대 대역폭(MaxG)보다 크면, 상기 제 1 호출 프로세싱 서버가 MaxG를 상기 대역폭 할당으로 제공하는 단계와,
만약 상기 이용가능한 대역폭이 MaxG보다 크지 않으면, 상기 제 1 호출 프로세싱 서버가 상기 이용가능한 대역폭이 minK보다 큰지를 판정하는 단계와,
만약 상기 이용가능한 대역폭이 minK보다 크면, 상기 제 1 호출 프로세싱 서버가, 이용가능한 대역폭에서 minK를 뺀 대역폭 할당을 제공하는 단계와,
만약 상기 이용가능한 대역폭이 minK보다 크지 않으면, 상기 제 1 호출 프로세싱 서버가 상기 요청을 거절하는 단계를 포함하는
전화 호출 관리 방법.
- 제 1 항에 있어서,
관리자가 감사(audit)를 개시하는 단계와,
상기 관리자가 상기 분산 호출 프로세싱 서버들의 그룹 내의 각 호출 프로세싱 서버에게 호출 프로세싱 서버의 사용 대역폭과 할당 대역폭을 문의하는 단계와,
상기 관리자가 상기 분산 호출 프로세싱 서버들의 그룹 내의 모든 호출 프로세싱 서버들의 할당 대역폭의 합이 상기 관리 대역폭과 같은지를 판정하는 단계와,
만약 상기 분산 호출 프로세싱 서버들의 그룹 내의 상기 모든 호출 프로세싱 서버들의 상기 할당 대역폭의 합이 상기 관리 대역폭과 같으면, 상기 관리자가 상기 감사를 중단하는 단계와,
만약 상기 분산 호출 프로세싱 서버들의 그룹 내의 상기 모든 호출 프로세싱 서버들의 상기 할당 대역폭의 합이 상기 관리 대역폭과 같지 않으면, 상기 관리자가 상기 분산 호출 프로세싱 서버들의 그룹 내의 상기 모든 호출 프로세싱 서버들의 상기 할당 대역폭과 상기 관리 대역폭 사이의 차를 결정하는 단계와,
상기 관리자가 적어도 하나의 호출 프로세싱 서버에 대해 변경할 대역폭의 크기를 결정하는 단계와,
상기 관리자가 상기 적어도 하나의 호출 프로세싱 서버에 대한 새로운 할당을 상기 적어도 하나의 호출 프로세싱 서버로 전송하는 단계를 더 포함하는
전화 호출 관리 방법.
- 제 1 항에 있어서,
상기 제 1 호출 프로세싱 서버는 상기 대역폭의 할당을 제어 테이블 내의 할당 대역폭으로 설정하는
전화 호출 관리 방법.
- 제 6 항에 있어서,
상기 제 1 호출 프로세싱 서버가 착신 호출을 수신하는 단계와,
상기 제 1 호출 프로세싱 서버가 상기 착신 호출을 위한 대역폭과 사용 대역폭의 값의 합이 상기 제어 테이블 내의 상기 할당 대역폭보다 더 작은지를 판정하는 단계와,
만약 상기 착신 호출을 위한 대역폭과 사용 대역폭의 값의 합이 상기 제어 테이블 내의 상기 할당 대역폭보다 더 작으면, 상기 제 1 호출 프로세싱 서버가 상기 착신 호출을 허용하는 단계와,
만약 상기 착신 호출을 위한 대역폭과 사용 대역폭의 값의 합이 상기 제어 테이블 내의 상기 할당 대역폭보다 더 크면, 상기 제 1 호출 프로세싱 서버가 상기 착신 호출을 지연시키는 단계와,
상기 제 1 호출 프로세싱 서버가 상기 그룹의 적어도 하나의 멤버로부터 대역폭을 더 요청하는 단계와,
상기 제 1 호출 프로세싱 서버가 수신된 대역폭이 상기 착신 호출을 허용하기에 충분한지를 판정하는 단계와,
만약 상기 수신된 대역폭이 상기 착신 호출을 허용하기에 충분하면, 상기 제 1 호출 프로세싱 서버가 상기 호출을 허용하는 단계와,
만약 상기 수신된 대역폭이 상기 착신 호출을 허용하기에 충분하지 않으면, 상기 착신 호출을 거절하는 단계를 더 포함하는
전화 호출 관리 방법.
- 제 1 항에 있어서,
제 2 호출 프로세싱 서버가 대역폭에 대한 요청을 수신하는 단계와,
상기 제 2 호출 프로세싱 서버가, 할당 대역폭이 상기 제 2 호출 프로세싱 서버에 대한 사용 대역폭보다 큰지를 판정하는 단계와,
만약 할당 대역폭이 사용 대역폭보다 크지 않으면, 상기 제 2 호출 프로세싱 서버가 상기 제 1 호출 프로세싱 서버에게 대역폭을 제공하지 않는 단계와,
만약 할당 대역폭이 사용 대역폭보다 크면, 상기 제 2 호출 프로세싱 서버가 문턱값 크기까지 제공할지를 판정하는 단계와,
만약 상기 제 2 호출 프로세싱 서버가 문턱값 크기까지 제공할 수 있으면, 상기 제 2 호출 프로세싱 서버가 상기 요청된 대역폭을 제공하는 단계와,
만약 상기 제 2 호출 프로세싱 서버가 상기 문턱값 크기까지 제공할 수 없으면, 제공할 대역폭의 크기를 결정하는 단계와,
상기 제 2 호출 프로세싱 서버가 상기 결정된 크기를 제공하는 단계를 더 포함하는
전화 호출 관리 방법.
- 제 8 항에 있어서,
상기 문턱값 크기까지 제공할지를 판정하는 단계는, 요청된 대역폭의 크기와 상기 사용 대역폭의 합이 하위 대역폭 문턱값보다 낮은지를 판정하는 단계를 포함하는
전화 호출 관리 방법.
- 제 1 항 내지 제 9 항 중 어느 한 항의 방법을 수행하는 수단을 포함하는
전화 호출 관리 시스템.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17531009P | 2009-05-04 | 2009-05-04 | |
US61/175,310 | 2009-05-04 | ||
US12/554,714 US8311207B2 (en) | 2009-05-04 | 2009-09-04 | Efficient and cost-effective distribution call admission control |
US12/554,714 | 2009-09-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100120093A KR20100120093A (ko) | 2010-11-12 |
KR101402367B1 true KR101402367B1 (ko) | 2014-06-03 |
Family
ID=42355385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100041988A KR101402367B1 (ko) | 2009-05-04 | 2010-05-04 | 전화 호출 관리 방법 및 호출 관리 시스템 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8311207B2 (ko) |
EP (1) | EP2249544B1 (ko) |
JP (1) | JP5661328B2 (ko) |
KR (1) | KR101402367B1 (ko) |
CN (1) | CN101883145B (ko) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7536002B1 (en) | 1999-07-09 | 2009-05-19 | Jpmorgan Chase Bank, National Association | System and method of intelligent call routing for cross sell offer selection based on optimization parameters or account-level data |
US8782240B2 (en) * | 2010-10-18 | 2014-07-15 | Avaya Inc. | Resource allocation using shared resource pools |
US8718261B2 (en) * | 2011-07-21 | 2014-05-06 | Avaya Inc. | Efficient and cost-effective distributed call admission control |
US9451483B2 (en) * | 2012-02-16 | 2016-09-20 | Ntt Docomo, Inc. | Mobile communication system, communication system, control node, call-processing node, and communication control method |
JP5978891B2 (ja) * | 2012-09-26 | 2016-08-24 | 沖電気工業株式会社 | コールセンタ装置、通信装置、通信方法及び通信装置のプログラム |
US10291503B2 (en) * | 2013-09-26 | 2019-05-14 | Taiwan Semiconductor Manufacturing Co., Ltd. | File block placement in a distributed network |
CN105530202B (zh) * | 2015-12-31 | 2019-04-02 | 迈普通信技术股份有限公司 | 一种带宽分配方法及服务器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001148713A (ja) * | 1999-11-18 | 2001-05-29 | Matsushita Joho System Kk | 通話システム |
KR20060065391A (ko) * | 2004-12-10 | 2006-06-14 | 삼성전자주식회사 | 네트워크에서의 자원 관리 장치 및 방법 |
EP1806875A1 (en) | 2006-01-10 | 2007-07-11 | Alcatel Lucent | Method and apparatus for providing call admission control |
KR20080071925A (ko) * | 2007-01-31 | 2008-08-05 | 아바야 테크놀러지 엘엘씨 | 트래픽 부하 분산 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US1004A (en) * | 1838-11-09 | Abnee e | ||
CA2015248C (en) * | 1989-06-30 | 1996-12-17 | Gerald R. Ash | Fully shared communications network |
US6647008B1 (en) * | 1997-12-19 | 2003-11-11 | Ibm Corporation | Method and system for sharing reserved bandwidth between several dependent connections in high speed packet switching networks |
US6862622B2 (en) * | 1998-07-10 | 2005-03-01 | Van Drebbel Mariner Llc | Transmission control protocol/internet protocol (TCP/IP) packet-centric wireless point to multi-point (PTMP) transmission system architecture |
US6233223B1 (en) * | 1999-08-03 | 2001-05-15 | Nortel Networks Limited | Control of distributed allocation of channels |
US7260635B2 (en) * | 2000-03-21 | 2007-08-21 | Centrisoft Corporation | Software, systems and methods for managing a distributed network |
US6961318B2 (en) * | 2000-05-12 | 2005-11-01 | International Business Machines Corporation | Data transmission system for reserving a virtual connection over multiple IP networks by means of a reservation |
US6917622B2 (en) * | 2000-05-19 | 2005-07-12 | Scientific-Atlanta, Inc. | Allocating access across a shared communications medium in a carrier network |
US20030236887A1 (en) * | 2002-06-21 | 2003-12-25 | Check Point Software Technologies Ltd. | Cluster bandwidth management algorithms |
JP2004241948A (ja) | 2003-02-05 | 2004-08-26 | Nec Corp | パケット通信システム、ネットワーク機器及びそれに用いるリソース管理方法 |
US7219691B2 (en) * | 2003-02-07 | 2007-05-22 | Fisher Controls International Llc | Control valve positioner mounting system |
JPWO2004073269A1 (ja) * | 2003-02-13 | 2006-06-01 | 富士通株式会社 | 伝送システム,配信経路制御装置,負荷情報収集装置および配信経路制御方法 |
JP2005006062A (ja) * | 2003-06-12 | 2005-01-06 | Nec Corp | 音声通信帯域管理システム、方法、通信接続サーバ、ネットワーク装置、及び音声通信帯域管理プログラム |
JP2005051556A (ja) * | 2003-07-29 | 2005-02-24 | Matsushita Electric Ind Co Ltd | エッジスイッチ装置 |
US7630401B2 (en) * | 2005-04-28 | 2009-12-08 | Sony Corporation | Bandwith management in a network |
JP4597038B2 (ja) * | 2005-11-07 | 2010-12-15 | 株式会社日立製作所 | 計算機システム、帯域制御方法及びプログラム |
US8307065B2 (en) * | 2006-08-22 | 2012-11-06 | Centurylink Intellectual Property Llc | System and method for remotely controlling network operators |
US8743703B2 (en) * | 2006-08-22 | 2014-06-03 | Centurylink Intellectual Property Llc | System and method for tracking application resource usage |
JP2009111498A (ja) * | 2007-10-26 | 2009-05-21 | Nec Corp | 無線制御装置、無線基地局、無線通信システム、呼受付制御方法、プログラム、及び記録媒体 |
US8819261B2 (en) * | 2008-10-15 | 2014-08-26 | Aster Risk Management Llc | Load-balancing an asymmetrical distributed erasure-coded system |
-
2009
- 2009-09-04 US US12/554,714 patent/US8311207B2/en active Active
-
2010
- 2010-04-30 EP EP10161659.7A patent/EP2249544B1/en not_active Not-in-force
- 2010-04-30 JP JP2010104822A patent/JP5661328B2/ja active Active
- 2010-05-04 CN CN201010213945.3A patent/CN101883145B/zh not_active Expired - Fee Related
- 2010-05-04 KR KR1020100041988A patent/KR101402367B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001148713A (ja) * | 1999-11-18 | 2001-05-29 | Matsushita Joho System Kk | 通話システム |
KR20060065391A (ko) * | 2004-12-10 | 2006-06-14 | 삼성전자주식회사 | 네트워크에서의 자원 관리 장치 및 방법 |
EP1806875A1 (en) | 2006-01-10 | 2007-07-11 | Alcatel Lucent | Method and apparatus for providing call admission control |
KR20080071925A (ko) * | 2007-01-31 | 2008-08-05 | 아바야 테크놀러지 엘엘씨 | 트래픽 부하 분산 |
Also Published As
Publication number | Publication date |
---|---|
EP2249544A1 (en) | 2010-11-10 |
JP5661328B2 (ja) | 2015-01-28 |
JP2010268454A (ja) | 2010-11-25 |
EP2249544B1 (en) | 2018-05-30 |
US8311207B2 (en) | 2012-11-13 |
US20100278327A1 (en) | 2010-11-04 |
KR20100120093A (ko) | 2010-11-12 |
CN101883145A (zh) | 2010-11-10 |
CN101883145B (zh) | 2015-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9442769B2 (en) | Generating cloud deployment targets based on predictive workload estimation | |
KR101402367B1 (ko) | 전화 호출 관리 방법 및 호출 관리 시스템 | |
US10129177B2 (en) | Inter-cloud broker for hybrid cloud networks | |
US11252220B2 (en) | Distributed code execution involving a serverless computing infrastructure | |
US9870541B2 (en) | Service level backup using re-cloud network | |
US10009284B2 (en) | Policy-based session establishment and transfer in a virtualized/cloud environment | |
US8190740B2 (en) | Systems and methods for dynamically provisioning cloud computing resources | |
US10574758B2 (en) | Server connection capacity management | |
US9059944B2 (en) | Method and arrangement for enabling service delivery in a telecommunications network | |
US8849971B2 (en) | Load balancing in cloud-based networks | |
US8904005B2 (en) | Indentifying service dependencies in a cloud deployment | |
US9442771B2 (en) | Generating configurable subscription parameters | |
US10942769B2 (en) | Elastic load balancing prioritization | |
JP2013506908A (ja) | 企業ネットワーク内の割り当てられたクラウドリソースの動的な負荷分散およびスケーリング | |
JP5000456B2 (ja) | 資源管理システム、資源管理装置およびその方法 | |
JP6881575B2 (ja) | 資源割当システム、管理装置、方法およびプログラム | |
CN102137014A (zh) | 资源管理方法、系统和资源管理器 | |
US9819626B1 (en) | Placement-dependent communication channels in distributed systems | |
US20170111279A1 (en) | Methods, systems, and computer readable media diverting diameter traffic from an overloaded policy and charging rules function (pcrf) | |
US10212286B2 (en) | System and method for allocation and management of shared virtual numbers | |
US8718261B2 (en) | Efficient and cost-effective distributed call admission control | |
US20060200469A1 (en) | Global session identifiers in a multi-node system | |
US11113119B2 (en) | Managing computer resources | |
Richa | A Review of SaaS Profit Maximization in Cloud Computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170518 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180518 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190516 Year of fee payment: 6 |