KR20020032431A - 인터넷/인트라넷 전화통신을 위한 네트워크 전화통신어플라이언스 및 시스템 - Google Patents

인터넷/인트라넷 전화통신을 위한 네트워크 전화통신어플라이언스 및 시스템 Download PDF

Info

Publication number
KR20020032431A
KR20020032431A KR1020017015821A KR20017015821A KR20020032431A KR 20020032431 A KR20020032431 A KR 20020032431A KR 1020017015821 A KR1020017015821 A KR 1020017015821A KR 20017015821 A KR20017015821 A KR 20017015821A KR 20020032431 A KR20020032431 A KR 20020032431A
Authority
KR
South Korea
Prior art keywords
network
data
call
network appliance
address
Prior art date
Application number
KR1020017015821A
Other languages
English (en)
Other versions
KR100670006B1 (ko
Inventor
슐츠린네헤닝
잉지안콰이
Original Assignee
추후보정
더 트러스티스 오브 콜롬비아 유니버시티 인 더 시티 오브 뉴욕
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 추후보정, 더 트러스티스 오브 콜롬비아 유니버시티 인 더 시티 오브 뉴욕 filed Critical 추후보정
Publication of KR20020032431A publication Critical patent/KR20020032431A/ko
Application granted granted Critical
Publication of KR100670006B1 publication Critical patent/KR100670006B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6486Signalling Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • 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/1069Session establishment or de-establishment
    • 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
    • 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
    • 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/08Protocols for interworking; Protocol conversion
    • 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/08Protocols for interworking; Protocol conversion
    • H04L69/085Protocols for interworking; Protocol conversion specially adapted for interworking of IP-based networks with other networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

패킷 데이터 네트워크로/로부터의 데이터 패킷을 제공 및 수신하기 위한 데이터 네트워크에 어플라이언스(100)를 연결시키기 위한 네트워크 제어기 서브시스템(100)을 포함하는 네트워크 어플라이언스(100)가 제공된다. 디지털 신호 처리 서브시스템(120)은 네트워크 제어기 서브시스템(110)에 연결된다. 신호 변화 서브시스템(130)은 디지털 신호 처리 서브시스템(120)에 연결되고, 사용자 인터페이스 서브시스템(160)은 신호 변화 서브시스템(130)과 디지털 신호 처리 서브시스템(120)에 모두 연결된다. 디지털 신호 처리 서브시스템(120)은 인입 호를 검출하고, 호 세션을 개시하고, 개선된 전화통신 시능을 구현할 수 있는 컴퓨터 프로그램의 제어 하에서 동작한다.

Description

인터넷/인트라넷 전화통신을 위한 네트워크 전화통신 어플라이언스 및 시스템{NETWORK TELEPHONY APPLIANCE AND SYSTEM FOR INTER/INTRANET TELEPHONY}
최근 몇 년 동안에, 인터넷은 사업, 기술 및 교육 분야에서 통신의 편리한 부가 수단에서 가장 중요한 통신 수단으로 발전되고 있다. 이 관점에서, 인터넷의 성장 부분은 개별적인 시그널링 네트워크에 의해 제어되는 종래의 회선-교환 네트워크(circuit-switched network)에 비해 많은 장점을 제공하는 인터넷 전화통신에 관련된다. 첫째로는, 가입자(parties)가 보다 쉽게 그들의 품질 요구에 가장 적합한 다른 데이터 압축 기술 및 인코딩을 선택 및 이용하는 것이 가능해진다. 예를 들면, 가입자는 국제 호에 대해 보다 저렴한 비용과 완전한 톨 품질(toll quality)의 교환을 결정할 수 있는 반면에, 라디오국과 자신의 기사로 통화하는 리포터는 비용에 관계없이 완전한 FM 품질을 원할 것이다. 품질 저하 없이도,5.3kb/s(G.723.1) 내지 8kb/s(G.729)는 종래의 육로 전화 망에 대한 64kb/s와는 달리, 톨 품질(toll quality)에 근접하게 지원하는데 충분하다. 이 유연성(flexibility)은 또한, 예로, 자연 재해 이후와 같은 엄청난 네트워크 오버로드 동안에도, 전화 고객이 여전히 약 3kb/s로 통신할 수 있으므로, 네트워크 용량이 20배 증가하는 장점을 가진다.
인터넷과 같은 현재의 데이터 네트워크에 대해 전화통신 서비스를 확장하는 것이 논리적이지만, 종단 시스템에 요구되는 정보(intelligence)로 인한 비용이 가장 큰 단점이 된다. 저급 꼬임쌍선을 통해 기본 아날로그 전화의 비용으로 수 마일 길이를 동작하는, 외부 전력을 필요로 하지 않는 패킷 음성 "전화"를 만드는 것은 어려웠었다.
또한, 주지된 인터넷 전화 제품의 대부분은 H.323 시그널링 및 제어 프로토콜에 따라 동작하도록 설계되어 있다. H.323 프로토콜은 사용 및 구현이 어려운 복잡한 프로토콜이다. 이 복잡성으로 인해, H.323 장치의 상이한 구현예들은 호환성 문제로 불리하게 영향을 미칠 수 있다. 또한, H.323 프로토콜 하에서 동작하는 장치는 서로 직접 통신할 수 없고, 호는 전화통신 서버에 의해 처리 및 라우팅될 것이다.
따라서, 저렴한 비용으로, 간단한 시그널링 프로토콜을 이용하여 동작하고, 진보된 전화통신 구성의 많은 세트를 제공하는 네트워크 전화통신 장치에 대한 필요성이 존재한다.
본 발명은 일반적으로 인터넷 및 인트라넷 전화통신(telephony) 분야에 관한 것이다. 특히, 본 발명은 인터넷/인트라넷 통신을 위한 네트워크 원격통신(telecommunication) 어플라이언스 및 시스템에 관한 것이다.
본 발명 및 그 장점의 완전한 이해를 위해, 첨부된 도면과 함께 다음의 상세한 설명을 참조하여 설명되는데, 여기서, 동일한 참조 번호는 동일한 기능을 나타낸다.
도1은 음성 패킷 네트워크에 동작가능하게 연결된 종래의 회선교환 음성 네트워크를 도시한 전화통신 시스템의 예시적인 도면.
도2는 패킷 데이터 네트워크 전화 시스템의 블록도.
도3은 도2의 패킷 데이터 네트워크 전화 시스템에서 동작하는 전화통신 장치에 대한 프로토콜 스택을 도시한 도면.
도4는 본 발명에 따른 네트워크 전화통신 어플라이언스의 바람직한 하드웨어 아키텍처의 블록도.
도5는 도4의 네트워크 전화통신 어플라이언스를 다시 도시한 블록도.
도6은 도5의 네트워크 전화통신 어플라이언스의 DSP에 대한 예시적인 메모리 맵을 도시한 도면.
도7은 도5의 네트워크 전화통신 어플라이언스의 DSP에 대한 메모리 인터페이스의 블록도.
도8은 도5의 네트워크 전화통신 어플라이언스의 DSP에 대한 네트워크 제어기 인터페이스의 블록도.
도9는 도5의 네트워크 전화통신 어플라이언스의 DSP에 대한 코덱 인터페이스의 블록도.
도10은 DSP 메모리 어드레스에 대한 LCD 제어 인터페이스의 매핑을 도시한 도5의 DSP에 대한 예시적인 메모리 맵.
도11은 도4의 네트워크 전화통신 어플라이언스에 대한 소프트웨어 아키텍처를 도시한 블록도.
도12는 도11의 프로세스 레벨 소프트웨어의 스케쥴링 메커니즘을 도시한 블록도.
도13a 내지 도13f는 도4 및 도11의 하드웨어 및 소프트웨어 아키텍처에 따른 패킷 데이터 네트워크 전화를 동작시키는 바람직한 방법의 소프트웨어 동작에 대한 예시적인 태스크 정의를 도시한 테이블.
도14는 도4, 도11 및 도13의 하드웨어 및 소프트웨어 아키텍처에 따른 ARP 요구 출력 절차의 흐름도.
도15는 도4, 도11 및 도13의 하드웨어 및 소프트웨어 아키텍처에 따른 SRP 요구 입력 절차의 흐름도.
도16은 도4, 도11 및 도13의 하드웨어 및 소프트웨어 아키텍처에 따른 IP 처리 단계를 도시한 도면.
도17은 도11의 소프트웨어 아키텍처에 따른 예시적인 이더넷 송신 데이터 구소의 리스트.
도18은 도4, 도11 및 도13의 하드웨어 및 소프트웨어 아키텍처에 따른 패킷 전송 절차의 데이터 흐름도.
도19는 도4, 도11 및 도13의 하드웨어 및 소프트웨어 아키텍처에 따른 패킷 수신 절차의 데이터 흐름도.
도20a 및 도20b는 본 네트워크 전화통신 어플라이언스의 소프트웨어에 의해 사용되는 A/D 및 D/A "핑-퐁" 버퍼 스킴을 도시한 도면.
도21은 본 네트워크 전화통신 어플라이언스의Call_task프로세스의 상태 천이도.
도22는 도5의 패킷 데이터 네트워크 전화의 바람직한 실시예에 대한 키패드 값을 정의한 챠트.
도23은 도5의 본 네트워크 전화통신 어플라이언스의 바람직한 실시예에 대한 키 상태 정의를 도시한 데이터 구조.
도24는 도5의 네트워크 전화통신 어플라이언스의 I/O 병렬 포트의 매핑을 도시한 도면.
도25는 도5의 네트워크 전화통신 어플라이언스의 이더넷 제어기 상태를 정의한 데이터 구조.
도26은 도5의 네트워크 전화통신 어플라이언스에서 사용되는 RTP 패킷 처리를 위한 예시적인 RTP 헤더 구조.
도27은 도5의 패킷 데이터 네트워크 전화의 톤 생성 기능에 사용하기 위한 데이터 구조.
도28은 도5의 네트워크 전화통신 어플라이언스의 톤 생성 기능을 위한 타이밍도.
도29는 도5의 네트워크 전화통신 어플라이언스에 따른SIP_task요구 또는 응답을 처리하기 위해 사용되는 데이터 구조의 리스트.
도30은 도5에 따른 클라이언트(호를 개시하는)로 동작하는 네트워크 전화통신 어플라이언스를 도시한 상태 천이도.
도31은 도5의 네트워크 전화통신 어플라이언스에 따른SIP_task응답의 리스트.
도32는 도5의 네트워크 전화통신 어플라이언스에 따른 SIP UAS의 상태 천이도를 도시한 상태도.
도33은 본 발명에 따른 하나 또는 그 이상의 네트워크 전화통신 어플라이언스를 포함한 패킷 데이터 네트워크 전화통신 시스템의 일부를 도시한 블록도.
발명의 요약
전술된 종래 전화통신 시스템 및 주지된 인터넷 전화통신 시스템의 한계 및 불완전성이 본 발명에 의해 실질적으로 극복되는데, 본 발명의 주요 목적은 인터넷 및 인트라넷 전화통신 네트워크를 통해 사용하기 위한 패킷-기반 음성 통신 시스템을 제공하는 것이다.
본 발명의 다른 목적은 이더넷(Ethernet) 네트워크와 같은 데이터 네트워크를 통해 사용하기 위한 패킷 데이터 전화통신 어플라이언스를 제공하는 것이다.
본 발명의 다른 목적은 패킷-기반 전화통신 시스템에서 사용하기 위한 통신 프로토콜을 제공하는 것이다.
본 발명의 다른 목적은 "인터넷 라디오" 및 "인터넷 TV"와 같은 스트리밍 미디어 서비스 또는 그밖의 연속-미디어(continuous-media) 및 전화통신을 지원하는 인터넷 프로토콜 아키텍처를 제공하는 것이다.
본 발명의 다른 목적은 저렴한 비용으로, 다른 네트워크 전화국과 직접 통화(calling)하거나, 또는 리다이렉트 서버(redirect server)를 거치는 것과 같이, 다른 네트워크 전화국 측과 간접적으로 통화할 수 있는 독립형(stand alone) 네트워크 전화통신 어플라이언스를 제공하는 것이다.
본 발명의 제1 실시예에 따르면, 패킷 데이터 네트워크로/로부터의 데이터 패킷을 제공 및 수신하기 위한 데이터 네트워크에 어플라이언스를 연결시키기 위한 네트워크 제어기 서브시스템을 포함하는 네트워크 어플라이언스가 제공된다. 디지털 신호 처리 서브시스템은 네트워크 제어기 서브시스템에 연결된다. 디지털 신호 처리 서브시스템은 인입 호를 검출하고, 호 세션을 개시하고, 개선된 전화통신 시능을 구현할 수 있는 컴퓨터 프로그램의 제어 하에서 동작한다. 신호 변화 서브시스템은 디지털 패킷 정보를 아날로그 신호로 및 그 반대로 변화하기 위해 디지털 신호 처리 서브시스템에 연결된다. 사용자 인터페이스 서브시스템은 사용자 제어 및 장치에 대한 피드백을 제공하기 위해 신호 변화 서브시스템과 디지털 신호 처리 서브시스템에 모두 연결된다. 이 독립형 네트워크 전화통신 장치는 여기서 네트워크 전화통신 어플라이언스로 언급된다.
바람직하게는, 네트워크 전화통신 어플라이언스의 컴퓨터 프로그램은 SIP(Session Initiation Protocol)을 구현한다. 이 경우에, 특유의 SIP 어드레스는 그 장치에 연관되고, 세션 개시 및 제어는 SIP 프로토콜에 따라 수행된다.
네트워크 전화통신 어플라이언스는 모니터링 기능, 호 포워딩, 스트리밍 오디오 모드, 호출자 로깅, 피호출자 로깅 등을 포함한, 고-레벨 전화통신 기능을 구현한다.
네트워크 전화통신 어플라이언스는 센서와 같은 원격 소스로부터 신호를 수신하기 위한 센서 인터페이스 회로를 포함하는 것이 바람직하다. 원격 소스로부터 수신된 신호는 네트워크 전화통신 어플라이언스에 의해 처리되어 적합한 네트워크 목적지로 전송된다.
본 발명의 다른 실시예에서는, 이더넷 프로토콜 계층; 상기 이더넷 프로토콜 계층의 상부에 적층되어, 상기 이더넷 프로토콜 계층과 인터페이스하기 위한 인터넷 프로토콜(IP) 계층; 상기 이더넷 프로토콜 계층의 상부에 적층되어, 상기 이더넷 프로토콜 계층 및 상기 IP 계층과 인터페이스하고, IP 어드레스를 미디어 액세스 제어(MAC) 어드레스로 변환하기 위한 어드레스 도출(resolution) 프로토콜(ARP) 계층; 상기 ARP 및 IP 계층의 상부에 적층되어, 상기 ARP 및 IP 계층과 인터페이스하고, 통신 시스템 내에서의 애플리케이션 데이터 및 제어 신호의 실시간 전송을 제공하기 위한 사용자 데이터그램 프로토콜(UDP) 계층; 상기 UDP 계층의 상부에 적층되어, 상기 UDP 계층과 인터페이스하고, 상기 통신 시스템 내에서의 실시간 오디오 데이터 전송을 제공하기 위한 실시간 전송 프로토콜(RTP) 계층; 상기 UDP 계층의 상부에 적층되어, 상기 UDP 계층과 인터페이스하고, 상기 실시간 오디오 데이터의 등록을 제공하기 위한 하나 또는 그 이상의 제어 프로토콜 계층; 및 상기 RTP 계층의 상부에 적층되어, 상기 실시간 오디오 데이터를 포맷하기 위한 하나 또는 그 이상의 애플리케이션 프로토콜을 포함하는, 패킷-기반 통신 시스템에서 사용되는 통신 프로토콜이 제공된다.
본 발명의 다른 양태에서는 네트워크 전화통신 시스템 아키텍처가 제공된다. 이 시스템은, 본 네트워크 전화통신 어플라이언스 및/또는 적합한 인터페이스 회로 및 PC를 네트워크 전화로 동작시키기 위한 소프트웨어를 가진 다용도 PC와 같은, 적어도 2개의 네트워크 전화통신 장치를 포함한다. 네트워크 전화통신 장치를 통해 데이터 네트워크에 연결되는 리다이렉트 서버(redirect server)가 제공된다. 이 시스템에서, 네트워크 전화통신 장치는 실시간 오디오 접속을 수립하기 위해 서로 직접 어드레싱할 수 있다. 대안적으로, 리다이렉트 서버는 피호출 집단을 가진 호 세션을 식별, 배치 및 개시하기 위해 네트워크 전화통신 장치에 의해 액세스될 수 있다. 리다이렉트 서버는 또한 호 포워딩, 다중-집단 호출, 음성 메일 등과 같은 고-레벨 전화통신 기능을 구현하도록 사용될 수 있다.
본 발명의 다른 목적, 특징 및 장점은 본 발명의 예시적인 실시예를 도시한 첨부된 도면과 함께 제시된 다음의 상세한 설명으로부터 보다 명백해질 것이다.
도1은 종래 전화통신 및 패킷 전화통신 구성요소를 구비한 원격통신 시스템을 도시한 도면이다. 도1에 도시된 바와 같이, 시스템은 제1 게이트웨이(12)를 통해 패킷 네트워크(30)에 연결된 회선-교환 음성 네트워크(20)를 포함한다. 이 구성은 인터넷 전화통신과 종래의 "POTS(plain old telephony service)" 시스템 간에 적어도 3개의 가능한 상호동작, 즉 "엔드-투-엔드(end-to-end)" 패킷 전달, "테일-엔드 홉 오프(tail-end hop off)" 전달 및 로컬 패킷 전달을 보여주고 있다. "엔드-투-엔드" 패킷 전달에 있어서, 인터넷 폰 또는 PC 전용의, 네트워크 컴퓨터와 같은 단말 시스템은, 오디오를 패킷화하여, 오디오 패킷의 플레이백(playback)을 위한 하나 이상의 유사한 단말 시스템에 전달하는데 사용된다. 테일-엔드 홉 오프" 전달에 있어서, 표준 회선-교환 음성 회로는 CPE(customer premise equipment), 즉 표준 아날로그 전화를 패킷 전화통신 게이트웨이에 접속하기 위해 사용되고, 패킷 네트워크는 장거리(long-haul) 음성 전송을 위해 사용된다. "테일-엔드 홉 오프"는 개별적인 음성 회로 뿐만 아니라 PBX 상호접속을 위해서도 사용될 수 있고, 종래의 장거리 서비스의 바이패스(bypass) 및 패킷-기반 오디오 단말 시스템과의 POTS 장비의 상호접속을 가능하게 한다. 로컬 패킷 전달에 있어서, 음성 데이터는 패킷 오디오 단말 시스템에 의해 생성되지만, 임대 또는 공중 설비를 거쳐 회선-교환 음성으로 전달된다.
도2는 본 발명에 따른 패킷 데이터 네트워크 전화 시스템(50)의 바람직한 실시예를 도시하고 있다. 패킷 데이터 네트워크 전화 시스템은 이더넷 LAN(52), 이더넷 전화(54, 56, 58) 워크스테이션(60), 서버(62) 및 이더넷 게이트웨이(64)를 포함한다. 이더넷 전화는, 네트워크 장치와 같은 독립형 장치, 또는 오디오 입력 및 출력 주변장치를 구비하고, 적합한 컴퓨터 프로그램의 제어 하에 동작하는 개인용 컴퓨터 시스템의 형태를 취할 수 있는 네트워크 장치이다. 이러한 패킷 데이터 네트워크 접근법에 있어서, 음성 데이터 트래픽은 가장 가까운 종단 사용자에 패킷화된다. 예를 들면, 도2의 패킷 데이터 네트워크 전화통신 시스템은, 그 각각이 네트워크 말단 장치(network termination unit)로부터, CAT-3S 케이블링 거리 한계인 328 피트 내에 위치되고, 다수의 이더넷 게이트웨이(도2에는 하나만이 도시됨)에 접속되어 있는 수십개의 집, 사무실 또는 아파트를 포함할 수 있다. 그리고, 게이트웨이는 이웃 교환기(미도시)에 광섬유를 통해 접속하거나, 또는 도2에 도시된 것과 같이 라인(66)을 통해 PSTN(Public Switched Telephone Network)에 직접 접속할 수 있다. 이 아키텍처는 저-대역폭 및 고-대역폭 고객의 혼합이 부가적인 선(wire)의 연장없이 수용될 수 있는 장점을 가지고 있다. 교환기 비용은 인터페이스 수보다는 대역폭에 의해 좌우되기 때문에, 이 메커니즘은 훨씬 더 높은 사용자 대역폭(특히 피크 대역폭)을 제공하면서도, 스위칭 비용은 오늘날의 전화 네트워크와 거의 같다. 도2의 아키텍처에서, 각 네트워크 장치는 네트워크 어드레스를 포함하고, 각 장치는 네트워크 어드레스를 통해 모든 다른 네트워크 장치에 직접 액세스할 수 있다. 임의의 구성을 구현하기 위해 특정화된 서버가 바람직하지만, 호 세션(call session), 즉 2개 이상의 네트워크 장치 간의 지점간(point to point) 데이터 통신을 수립할 필요는 없다.
패킷 데이터 네트워크 LAN(52)의 사용은 종래의 PC 인터페이스 및 네트워크 하드웨어가 사용될 수 있는 경우에 비교적 저렴한 솔루션이라는 점에서 유리하다. 패킷 데이터 네트워크 LAN(52)은 많은 미디어를 통해 동작될 수 있고, 다중-액세스 LAN 상에 보다 많은 장치를 쉽게 추가할 수 있다. 게이트웨이(64)는 간단한 패킷음성 모듈로 동작하고, 사용자-투-네트워크 시그널링을 위한 DTMF 승인(recognition)을 구현하는 단일 DSP일 수 있다.
도3은 인터넷 전화통신, 및 "인터넷 라디오" 및 "인터넷 TV"와 같은 그 밖의 연속-미디어("스트리밍 미디어")를 제공하기 위한 패킷 데이터 네트워크 프로토콜 스택 도면을 도시하고 있다. 이 기술분야의 통상의 지식을 가진 자에게는 주지되고 이해되는 바와 같이, "프로토콜"은 일반적으로 컴퓨터 간의 통신을 위한 일련의 접칙이다. 프로토콜은 포맷, 타이밍, 시퀀싱 및 에러 제어를 조절한다. "스택(stack)"이라는 용어는 프로토콜을 처리하여 특정 세트의 프로토콜의 사용를 가능하게 하는 실제적인 소프트웨어를 말한다. 도3에 도시된 도면은 많은 프로토콜들이 본 발명에 따라 어떻게 상호 관련되는지롤 보여준다.
도3의 프로토콜 스택(80)은, 기본적인 이더넷 메시지 포캣 및 타이밍 정보를 제공하기 위한 기본 프로토콜(82), 기본 프로토콜(82)과 인터페이스하고, IP 어드레스를 MAC(Media Access Control) 어드레스로 변환하기 위한 ARP(Address Resolution Protocol)(84), 기본 프로토콜(82)과 인터페이스하기 위한 IP(Internet Protocol) 네트워크층(86), 기본 프로토콜(82)과 인터페이스하기 위한 선택적인 DHCP(Dynamic Host Configuration Protocol)(88), 및 ARP(84), IP(86) 및 DHCP(88) 프로토콜들과 인터페이스하고, 애플리케이션 데이터 및 제어의 실시간 전송을 위한 UDP(User Datagram Protocol)(90)을 포함하는, 많은 적층형 프로토콜을 포함한다. 프로토콜 스택(80)은 또한 각각 음성 정보를 코딩하기 위한 다음의 애플리케이션-특정 프로토콜, 즉, 실시간 오디오 데이터 전송을 위한 RTP(Real-Time TransportProtocol) 프로토콜(92) - 여기서, RTP 프로토콜(92)은 일반적으로 UDP(90)와 인터페이스함 -, 및 변조(modulation), 음성 코덱(speech codec) 및 제어 애플리케이션(94, 96, 98)을 더 포함한다. 애플리케이션 프로토콜(94, 96)은 각각 G.711 펄스 코드 변조 및 G.723 음성 코덱 프로토콜과 같은 몇몇 형식을 취할 수 있다. 또한, RTSP(Real Time Streaming Protocol) 층(97)이 스트리밍 미디어 애플리케이션에 진보된 성능을 제공하기 위해 포함될 수 있다. 제어 프로토콜(98)이 세션 개시 및 시그널링을 위해 사용될 수 있고, SIP(Session Initiation Protocol)의 형식을 취하는 것이 바람직하다.
도3에 도시된 바와 같이, RTP는 인터넷을 통한 실시간 데이터 전송을 위한 바람직한 프로토콜이다. 여기서, 그대로 참조로 포함된, H.Schulzrinne, S.Casner, R.Frederick 및 V.Jacobson의 "RTP: A Transport Protocol for Real-Time Application," Request for Comments(Proposed Standard, RFC 1889, Internet Engineering Task Force, January 1996)를 참조하라. RTP는 타이밍 재구성, 손실 검출, 보안 및 컨텐츠 식별을 포함한, 실시간 특성을 갖는 애플리케이션을 지원하도록 제공하는 "얇은(thin)" 프로토콜이다. 또한, RTP는, 소스 식별을 포함한, 인트라넷 내의 큰 그룹을 위한 실시간 회의의 지원, 및 오디오 및 비디오 브릿지와 같은 게이트웨이 및 멀티캐스트-투-유니캐스트 변환기(multicast-to-unicast translators)를 위한 지원을 제공한다. RTP는 수신기로부터 멀티캐스트 그룹으로의 서비스 품질 피드백을 제공하고, 상이한 미디어 스트림의 동기화를 지원한다.
도3에서, IP, UDP 및 RTP 프로토콜(88, 90, 92)의 결합 층은 저속 링크 및고도로 압축된 오디오에 대한 매 패킷에 대해 40 바이트 및 8kb/sec. 오디오의 20ms에 대해 20 바이트를 추가한다. 따라서, 헤더 압축이 바람직하다.
전술된 바와 같이, 도3의 프로토콜 스택(80)은 하나 또는 그 이상의 집단과의 멀티미디어 교환을 수립하기 위한 SIP(Session Initiation Protocol)을 사용하는 것이 바람직하다. 전화 번호를 사용하는 대신에, SIP는 사용자@ 도메인 또는 사용자@ 호스트 형식으로 어드레스를 사용한다. 이 어드레스는, 예를 들면, 개인의 이-메일 어드레스로 식별될 수 있다.
SIP는 호 포워딩(call forwarding), 호 대기(call waiting), 호출자(caller) M, 호 전환, "캠프-온(camp-on)", "호 파크(call park)" 및 "호 픽업(call pick-up)"과 같은 CLASS 기능 또는 표준 PBX를 제공한다. "캠프-온"은 어텐던트(attendant)가 다른 호를 처리하기 위해 비어 있는 동안에, 단일선(single-line) 음성 국에 대한 어텐던트-발신(attendant-originated) 또는 확장(extended) 호가 그것이 빌 때까지 피호출 국에서 자동적으로 대기하도록 한다. "호 파크"는 사용자가 호를 보류(hold)로 두고 나서, 시스템 내의 다른 국으로부터의 호를 검색하도록 한다. "호 픽업"은 국들이 사용자 특정 호 픽업 그룹(user specified call pickup group) 내의 다른 확장 번호에 대한 호를 응답하도록 한다. 많은 이러한 구성들은 실제적으로 시그널링 지원을 필요로하지 않지만, 종단 시스템 소프트웨어에 의해 구현될 수 있다. SIP는 다양한 HTTP/1.1으로 설계되는데, 이것은 HTTP 보안 및 인증, 컨텐츠 레이블링(content labeling) 및 지불 협상(payment negotiation) 구성을 쉽게 재이용할 수 있게 한다.
SIP는 또한 카렌더-기반 호 핸들러(calendar-based call handler)를 사용한다. 호-처리 소프트웨어는 사용자의 개인적인 일정 카렌더에 액세스하고, 이에 따라 전화에 응답한다. 사용자는 호출자의 카테고리를 정의하고, 카렌더 엔트리에 기반하여, 그들의 호의 포워딩 여부 및 장소를 미리 설정할 수 있다. 호가 포워딩되지 않은 경우에 호출자에 대해 해제된 정보는, 예를 들면, 호출자의 ID에 따라, "현재 이용가능하지 않다"부터 "존 스미스는 제임 도우와 함께 모임에서 오후 3시까지 5621 방에 있다"까지의 범위에 있을 수 있다. 호 핸들러는 또한 호 처리 언어, 즉 음성-메일 시스템 또는 몇몇 라인의 코드에서의 자동 호 핸들링 시스템을 구성하도록 하는 상태-기반 스크립트 언어(state-based scripting language)와 통합될 수도 있다. 호 핸들러는 또한 ISDN 호와 인터넷 전화통신 호 간의 전환을 관리한다.
도4는 본 발명에 따른 패킷 데이터 네트워크 전화(100)의 바람직한 실시예를 보여주는 고레벨 하드웨어 블록도이다. 이 명세서를 통해 명백해지는 바와 같이, 장치(100)는 이더넷 LAN, 인트라넷 및 인터넷과 같은 패킷 데이터 네트워크 상에 음성 및 데이터를 배치하기 위한 비교적 저렴한 비용의 인터페이스 제품이다. 따라서, 장치(100)는 일반적으로, 이 독립형 장치의 광범위한 응용성을 반영하기 위해 네트워크 어플라이언스로 언급될 것이다.
네트워크 어플라이언스(100)는 LAN, 인터넷 또는 다른 이더넷 네트워크를 통한 오디오 및 비디오 통신을 제공하고, 일반적으로, 네트워크(예, 이더넷) 제어기 서브시스템(110), 디지널 신호 처리 서브시스템(120), 신호 변환 서브시스템(130),및 신호 변환 서브시스템(130)과 디지털 신호 처리 서브시스템(102)에 모두 연결된 사용자 인터페이스 서브시스템(160)을 포함한다. 전화기(100)는 또한 전원 공급장치, ROM(142) 및 RAM(152)을 더 포함한다. 사용자 인터페이스 서브시스템은 스피커(161), 마이크로폰(162), 및, 도5를 참조하여 후술되는 바와 같이, 그 밖의 사용자 제어기(169)를 포함할 수 있다. 데이터 획득 및 제어 기능을 위한 인터페이스 회로(135)는 또한 신호 변환 서브시스템(130)에 연결될 수 있다. 대안적으로, 이러한 I/O 회로는 DSP(120)에 직접 연결될 수 있다.
네트워크 제어기 서브시스템(110)은 DSP(120)와 외부 데이터 네트워크 사이에 삽입되어, 데이터 (이더넷) 네트워크로/로부터 데이터 패킷을 제공/수신한다. 이더넷 제어기 서브시스템(110)은 또한 이더넷 네트워크로부터 수신된 데이터를 받거나 또는 이더넷 네트워크로 데이터를 제공하도록 디지털 처리 서브시스템(120)에 명령한다. 또한, 네트워크 제어기 서브시스템은, 이더넷 네트워크로부터 수신된 원치않거나 오염된 데이터 패킷을 거부 및 폐기함으로써, 초기 문지기로서의 역할을 할 수 있다.
도5는 본 네트워크 어플라이언스를 보다 상세히 도시한 블록도이다. 도5에 도시된 바와 같이, 네트워크 제어기 서브시스템(110)의 바람직한 실시예는 이더넷 제어기(112), 서비스 필터(114)(10Base-T 변환기) 및 적어도 하나의 RJ-45 소켓(116)을 포함한다. 다른 것들 중에서, 네트워크 제어기 서브시스템(110)은 다음의 기능, 즉, 네트워크 어플라이언스와 이더넷 네트워크와의 인터페이스 기능, 이더넷 패킷의 송신 및 수신 기능, 이더넷으로부터의 데이터가 이용가능한 경우에데이터를 수락하도록 DSP 서브시스템(120)에 통지하는 기능, DSP 서브시스템(120)으로부터 패킷 수신하여 이것을 이더넷으로 송신하는 기능을 수행한다.
도5에 도시된 바와 같이, 이더넷 제어기(112)는 AMD(Advanced Micro Device)로부터 이용가능한 AM79C940 MACE(Media Access Controller for Ethernet)가 바람직하다. MACE 장치는 종속 레지스터 기반 주변장치(slave register based peripheral)이다. 시스템으로/으로부터의 모든 전송은 간단한 메모리 또는 I/O 판독 및 기록 커맨드를 이용하여 수행된다. 사용자 정의 DMA 엔진과 함께, MACE 칩은 특정 애플리케이션에 대해 주문된 IEEE 802.3 인터페이스를 제공한다.
독립적인 송수신 FIFO들은 시스템 지연을 감소시키고, 다음의 기능, 즉, FIFO 재로딩없이 자동 재송신, 스트립핑(stripping) 자동 수신 및 패딩(padding) 송신, 자동 손상 패킷 거부, 충돌 프레임의 자동 제거, DMA 제어기 또는 I/O 프로세서에 대한 간단한 인터페이스로의 판독/기록 액세스를 FIFO에 지시, 임의의 바이트 정렬 및 작은/큰/중간 메모리 인터페이스 지원, 및 5MHZ - 25MHZ 시스템 클럭 속도를 지원한다.
도5를 다시 참조하면, 디지털 신호 처리 서브시스템(120)은 디지털 신호 프로세서(DSP)(122), 및 ROM(142), RAM(152) 및 EPLD(erasable programmable logic device)를 포함한, 관련 논리 회로를 포함한다. 디지털 신호 처리 서브시스템(120)은 다음의 기능, 즉, 음성 압축과 같은 디지털 신호 처리 기능, 호 진행 톤 발생 및 링 신호 발생 기능, DSP, 메모리 및 I/O 장치의 상호접속을 위한 일반적인 "글루(glue)" 로직 기능, 네트워크 프로토콜 처리 기능, 호 흐름 제어 및 유한-상태-머신 구현 기능, 키패드 동작 검출 및 디코딩 기능, 및 디스플레이 제어 기능을 제공한다.
도5에 도시된 바와 같이, 네트워크 어플라이언스의 바람직한 실시예에 사용된 DSP(122)는 Texas Instrument의 TMS320C32와 같은, 모든 알맞은 상업적으로 이용가능한 DSP가 될 수 있다. TMS320C32 DSP는 다음의 기능, 즉, 단일 사이클 동안 정수 또는 부동 소수점 데이터에 대한 병렬 승산 및 ALU(arithmetic logic unit) 동작, 다용도 레지스터 파일, 프로그램 캐시, 전용 ARAU(auxiliary register arithmetic units), 내부 듀얼-액세스 메모리(512 듀얼 워드), 2개의 DMA(direct memory access) 채널, 1개의 직렬 포트, 2개의 타이머, 1개의 외부 메모리 포트, 및 다중-인터럽트 구조를 갖는다.
또한, TMS320C32 DSP는 4개의 외부 인터럽트 및 6개의 내부 인터럽트 자원을 포함한다. 외부 인터럽트는 외부 핀에 의해 직접 트리거될 수 있다, 내부 인터럽트는 직렬 포트, DMA 제어기 및 타이머와 같은 독립적인 주변장치를 프로그래밍함으로써 트리거될 수 있다. 또한, 이러한 모든 인터럽트 소스는 CPU/DMA 인에이블 레지스터 IE를 통해 DMA 채널 인터럽트로서 프로그램될 수 있다. TMS320C32 DSP는 또한 3개의 상이한 외부 메모리 공간 또는 직렬 포트 중의 하나 - 파워온 시와 같이, DSP가 초기화될 때, INT0 내지 INT3의 외부 인터럽트의 동작에 의해 결정된 적합한 어느 하나 - 로부터 자동적으로 로딩되는 네트워크 어플라이언스를 위한 주 제어 프로그램을 인에이블하는 플렉서블 부트 로더(flexible boot loader)를 포함한다.
DSP(122)는 일반적으로 다음의 자원 할당을 포함하도록 구성된다. 외부 인터럽트는, INT0:"0x1000로부터 시스템 부팅" 지시, - 시스템이 파워온되고 int0이 액티브되면, DSP는 외부 메모리 공간 0x1000으로부터 프로그램을 부팅함 -, INT1: DMA0 외부 인터럽트 신호 - 네트워크 제어기(112)로부터 패킷을 수신하는데 사용됨 -, INT2: DMA1 외부 인터럽트 신호 - 네트워크 제어기(112)로 패팃을 송신하는데 사용함 -, INT3: AM79C940 패킷 상태 및 에러 메시지 인터럽트를 포함한다. 본 네트워크 어플라이언스의 실시예에서 사용되는 샘플 DSP 메모리 맵이 도6에 도시되어 있다.
다시 도5를 참조하면, 본 네트워크 어플라이언스는, 키 인코더(166), LCD(liquid crystal display)(164), 핸드 셋(163), 키패드(165), 마이크로폰(162) 및 스피커(161)를 포함하는 사용자 인터페이스 서브시스템(160)을 구비한다. 사용자 인터페이스 서브시스템(160)은, 다음의 기능, 즉, 입력(키패드) 및 출력(LCD)을 위한 사용자 인터페이스, 음성 인터페이스, 스피커를 통한 링 경보 출력 및 핸드셋 또는 핸즈프리(마이크로폰 및 스피커) 통신을 제공함으로써, 사용자가 네트워크 어플라이언스와 상호동작이 가능하게 한다. 이 인터페이스(160)를 통해 사용자 커맨드가 입력되고, 오디오가 사용자에서 송신 및 수신된다.
또한, LCD는 화면의 옆 및 아래에 버튼을 구비할 수 있다. 이들 버튼의 기능은 시스템의 현재 상태에 따라 기능하는 "소프트 키(soft keys)"로서 동작할 수 있다. 예를 들면, 호에 대한 응답이 없을 때에, 디스플레이는 단축 다이얼 리스트 및 시각을 보여줄 수 있다. 또한, 호가 무음답되거나 음성 메일로 전환된 후에, 디스플레이는 수신된 번호 리스트를 보여줄 수 있다. 통화 중에는, 다른 수신 호를 디스플레이하여, 가입자가 통화 사이에, 또는 현재 통화로의 통화 전환을 할 수 있게 한다.
대안적으로, 본 네트워크 어플라이언스(100)의 사용자 인터페이스(160)는 LCD 디스플레이 및 버튼을 대신 또는 보충하여 작은 터치 스크린(미도시)으로 구성될 수 있다. 이용가능한 기능 및 동작을 그래픽으로 디스플레이하고, 디스플레이 상의 사용자 연락에 응답하는 터치 스크린은, 수문자 네트워크 어드레스 및 다른 전화통신 동작의 엔트리로서와 같이, 진보된 사용자 인터페이스를 제공한다.
도5는 또한 PCM 인코더 및 A/D(analog-to-digital) 및 D/A(digital-to-anlalog) 변환을 수행하는 인코더, 및 핸드셋 및 대응하는 스피커(161) 및 마이크로폰(162)에 연결된 오디오 증폭기(134)를 포함하는 신호 처리 시스템(130)을 도시하고 있다. 또한, 단일 AC 또는 DC 전원 공급 어댑터("wall wart")로부터 + 및 - 5V 레벨을 공급하기 위한 전원 공급장치가 제공된다. 도5의 바람직한 실시예에서, - 전압 레벨은 LCD(164) 및 PCM 코덱(132)에 필요하다.
도7은 도5의 네트워크 어플라이언스에 사용하는데 적합한 메모리 인터페이스(700)를 도시한 블록도이다. 메모리 인터페이스(700)는 프로그램 저장을 위한 128 Kbyte의 ROM(152) 및 적어도 32 kbyte의 더블 워드(32비트) 정적 RAM(702, 704, 706, 708)을 포함하는, 외부 메모리 모듈(142, 152)을 포함한다. ROM(142)의 상대적으로 낮은 속도로 인해, 네트워크 어플라이언스는 ROM으로부터 주 프로그램을 초기화하여 이 프로그램을 실행시간이 비교적 빠른 RAM에 저장하는 것이 바람직하다.
도8은 본 발명의 바람직한 실시예에 따른, DSP(122)와 이더넷 제어기(124) 사이의 예시적인 인터페이스를 도시한 블록도이다. 이더넷 제어기(124)의 32개의 레지스터들은, 도6에 도시된 바와 같이, DSP(122)를 0x810000 메모리 공간에 매핑된 메모리이다. 바람직하게는, 첫번째 2개의 레지스터가 "선입 선출(first in, first out"(FIFO) 순서로 수신 및 송신한다. DSP(122)는 그 데이터를 16 비트 데이터 버스(802)를 통해 이더넷 제어기(124)와 교환한다.
도9는 본 발명의 바람직한 실시예에 따른 DSP(122) 및 PCM 코덱(132) 사이의 인터페이스를 도시한 구조도이다. 도9에 도시된 바와 같이, DSP(122)는 내부 직렬 포트(902)를 통해 PCM 코덱에 접속한다. DSP(122) 상의 직렬 포트는 독립적인 양방향 직렬 포트이다.
도5에 도시된 바와 같이, DSP(122)는 또한 LCD(164)에 동작가능하게 연결된다. LCD 제어 인터페이스는 도10에 도시된 DSP 어드레스에 매핑된다. 본 발명의 일실시예에서, LCD(164)는 Vazitronics에 의해 제조된 MGLS-12032AD LCD와 같은 120 x 32 픽셀 LCD이다. LCD의 액세스 속도가 일반적으로 느리기 때문에, LCD에 의해 디스플레이되는 데이터는 DSP(122)의 STRB0(1X1000) 메모리 공간으로 매핑될 수 있고, 이것은 ROM 메모리 공간과 동일한 메모리 공간이다. 바람직하게는, LCD 타이밍 로직은 DSP(120)에 대한 타이밍 로직과 동일하다. 그러나, LCD가 MGLS-12032와 같이, 좌측-절반과 우측-절반으로 구성되는 경우, 전체 라인 메시지를 디스플레이할 때에는 LCD의 양쪽 절반 모두에 대해 제어 및 프로그램할 필요가 있다.
도11은 본 네트워크 어플라이언스에 대한 소프트웨어 아키텍처를 도시한 블록도이다. 도11에 도시된 바와 같이, 본 네트워크 어플라이언스에 대한 처리 아키텍처는 일반적으로 3 레벨, 즉, ISR(Interrupt Sevice Routine) 레벨(1110), OS 또는 프로세스 레벨(1120), 및 애플리케이션 또는 태스크 레벨(1130)으로 구성된다. 각 소프트웨어 레벨에서 수행될 수 있는 기능 및 태스크의 예시적인 리스트가 도13에서 제공된다.
최하위 레벨인 ISR 레벨(1110)은 인터럽트 핸들러 및 I/O 인터페이스 기능을 포함한다. ISR 레벨(1110)은 프로세스 레벨(1120)과 도4 및 도5에 도시된 네트워크 어플라이언스 하드웨어 사이의 인터페이스로서 제공된다.
ISR 레벨(1110) 위에 프로세스 레벨(1120) 또는 OS(operating system)가 있는데, 이것은 StarCom의 CRTX 장착 실시간 마이크로-커널과 같은 실시간 멀티태스킹 마이크로-커널이 바람직하다. 일반적으로, 프로세스 레벨 소프트웨어(1120) (마이크로-커널)는 메모리 관리, 프로세스 및 태스크 관리 및 디스크 관리 기능을 수행한다. 도12에 도시된 바와 같이, 본 발명의 바람직한 실시예에서, 마이크로-커널은 3개의 스케쥴링 메커니즘, 즉, 실시간 이벤트 플래그 관리자(1222), 지연 태스크 관리자(1224) 및 스케쥴링 관리자(1226)를 지원한다. 마이크로-커널은 상기의 3개의 상이한 메커니즘을 위한 각각의 분리된 3개의 큐를 구비한다.
실시간 이벤트 플래그 관리자(1222)는 플래그를 세팅하기 위해 실시간 에벤트의 실행을 트리거하는데 사용된다. 플래그가 "ON" 상태로 설정되면, 그 플래그와 연관된 태스크가 즉시 실행된다. 예를 들면, 임의의 이벤트가 발생되면 인터럽트 서비스 루틴은 특정 플래그를 설정하게 된다. 플래그 이벤트는 연관된 태스크 어드레스와 함께 플래그 큐에 입력된다.
지연 태스크 관리자(1224)는 시간이 정해진 에벤트(timed events)에 대한 책임을 가진다. 보안장치(fail-safe) 또는 "감시(watchdog)" 태스크와 같은, 시간이 정해진 태스크는 임의의 시간 지연 후에 실행될 수 있다. 임의의 이벤트가 임의의 시간 프레임 내에 발생하지 않는 경우, 타이머는 그것이 실행되도록 태스크를 트리거한다. 다른 예는 주기적인 타이머에 의해 제어되는 태스크의 반복 실행이다. 예시적인 실시예에서는, 10개의 타이머 엔트리가 존재한다. 각 타이머는 틱(tick) 수로써 로딩되고, 하드웨어의 간격 타이머로부터의 타이머 틱마다 감소된다. 그 수가 0에 도달하면, 그 타이머와 연관된 태스크는 태스크 큐상에 스케쥴된다. 스케쥴링 관리자(1226)는 스케쥴된 태스크를 찾는 태스크 스케쥴 큐를 스캔한다. 큐에서 엔트리를 발견하면, 스케쥴된 태스크로 제어가 패스된다.
도13a 내지 도13f는 태스크 레벨 소프트웨어(도13a 내지 도13c), 프로세스 레벨 소프트웨어(도13d) 및 ISR 레벨 소프트웨어(도13e 내지 도13f)의 일부인 예시적인 소프트웨어 태스크 및 기능을 리스트한 테이블이다. 본 발명을 위해, 소프트웨어 아키텍처에 관해 언급된 "태스크(task)" 및 "기능(function)"이라는 용어는 유사한 것으로 고려된다. 그러나, "태스크"는 일반적으로 스케쥴링 관리자(1226)에 의해 실행되는 반면에, "기능"은 일반적으로 태스크 또는 다른 기능에 의해 호출된다. 호 처리(Call_task) 및 IP 처리(IP_Send_taskErcv_task, 등) 태스크와 같은 애플리케이션 태스크는 프로세스 레벨 소프트웨어(1120)에 의해 스케쥴된다. 이러한 태스크의 실행은 ISR, 다른 태스크 또는 현재 태스크에 의한 이전의 스케쥴링의 결과이다.
도13a 내지 도13f는 도11의 본 패킷 데이터 네트워크 전화기에 의해 수행되는 이벤트 구동 동작에서 호출되는 예시적인 기능 및 절차 정의를 도시하고 있다. 여러 이벤트의 발생 후에 호출되는 기능은 패킷 데이터 네트워크 전화기/시스템의 동작을 인에이블시키고, 패킷 데이터 네트워크 전화기/시스템의 초기화, ARP 데이터 처리, 음성 데이터 인코딩, 메시지 데이터 처리, IP 데이터 처리, 음성 데이터 디코딩, 아날로그 및 디지털 데이터를 대응하는 버퍼로/로부터 전송, 및 "감시" 기능 수행과 같은 많은 동작을 포함한다.
패킷 데이터 네트워크 전화 어플라이언스의 초기화는 하드웨어 초기화 및 태스크 스케쥴링 단계를 포함한다. 파워-온 후에, DSP(122)는 메인 프로그램을 ROM(142)으로부터 RAM(152)으로 자동적으로 전송할 것이다(부팅 동작). 하드웨어 초기화는, 스택 포인터, 외부 버스 인터페이스 제어 레지스터, DSP의 글로벌 제어 레지스터, ISR에 대한 인터럽트 벡터 등의 초기화 단계를 포함하는, 전형적인 방식으로 발생한다. 하드웨어 초기화 및 예비 태스크 스케쥴링의 완료 후에, 처리 제어는 프로세스 레벨 (마이크로-커널)(1120)로 리턴된다.
도13a를 다시 참조하면, 본 네트워크 어플라이언스의 태스크 레벨 소프트웨어는 ARP(Address Resolution Protocol) 처리를 포함한다. ARP는 IP 어드레스를 이더넷 어드레스와 같은 물리적 어드레스(DLC(Data Link Control) 어드레스라 부름)로 변환하는데 사용되는 주지된 TCP/IP 프로토콜이다. 물리적 어드레스를 획득하기 위한 호스트 컴퓨터는 ARP 요구를 TCP/IP 네트워크 상에 브로드캐스트한다. 그리고나서, 그 요구에서 IP 어드레스를 가진 네트워크 상의 호스트 컴퓨터가 그것의 물리적인 하드웨어 어드레스로 응답한다.
도14는 ARP 요구 출력 절차(1400)ARP_Out()를 도시한 흐름도이다. 도13b에 도시된 바와 같이,ARP_Out()은 분석될 IP 어드레스를 수신하는 태스크 레벨 소프트웨어의 구성요소이다. ARP 요구가 시작하면(단계 1402)ARP_Out()기능은 먼저 로컬 ARP 캐시 테이블arptable로부터 요구된 IP 어드레스를 체크한다(단계 1404). 단계(1406)에서, 대응하는 엔트리가 RESOLVED 인 경우,ARP_Out()arptable로부터의 MAC 어드레스를 요구된 파라미터로 카피하고, ARPOK 상태 플래그를 리턴한다(단계 1408). 그렇지 않으면, 이 절차는arptable내의 엔트리를 할당하고 ARP 요구를 스케쥴할 것이다(단계 1410). 단계(1410)에 의해 더 도시된 바와 같이, MAC 어드레스, 즉,arptable의 "핸들(handle)"는 메인 프로그램(c_int00())으로 리턴된다. 핸들에 따라, 소프트웨어는 대응하는 엔트리의 ae_state를 체크한다.
도15는 도13a에 리스트된 태스크 레벨 소프트웨어의 구성요소인, 예시적인 ARP 요구 입력 절차(1500)ARP_In_task()의 흐름도이다.ARP_In_task는 ARP 패킷을 수신하여, 입력되는 패킷이 ARP 요구인 경우,arptable을 수정하거나 또는 ARP 응답을 큐잉한다. ARP 패킷을 수신하면(단계 1502), 소프트웨어는 패킷의 ARP 하드웨어 또는 프로토콜 타입이 매칭되는지의 여부를 체크한다(단계 1504). 타입이 매칭되지 않는 경우, 제어는 메인 프로그램으로 리턴된다(단계 1506), 타입 중 하나 또는 둘 모두가 매칭되는 경우, 소프트웨어는 목적지 호스트가 현재 호스트인지를 체크한다(단계 1510). 목적지 호스트가 현재 호스트가 아닌 경우, 제어는 메인 프로그램으로 리턴된다(단계 1508).
도15에 더 도시된 바와 같이, 목적지 호스트가 현재 호스트인 경우,ARP_In_task는 다음으로 입력되는 패킷에 대한 대응하는 ARP 엔트리가 있는지를 판단하기 위해 ARP 테이블을 체크한다(단계 1512). 엔트리가 발견된 경우(단계 1514), 새로운 MAC 어드레스가 현재 엔트리에 카피되고, 엔트리의 "Time to Live"(TTL)를 신규 값으로 수정한다(단계 1516). TTL은 이 기술분야의 통상의 지식을 가진 자에게는 얼마나 많은 홉 패킷이 송신기로 리턴되거나 또는 폐기되기 전에 진행될 수 있는지를 특정하는 IP내의 필드로 이해된다. 그러나, 단계(1513)에 따라 이러한 MAC 엔트리가 발견되지 않은 경우,ARP_In_task는 ARP 테이블에 신규 MAC 엔트리를 추가한다(단계 1518). MAC 엔트리가 PENDING 상태인 경우(단계 1520), 그것이 RESOLVED 상태로 변경되고, MAC 어드레스는 타깃 엔트리에 카피된다(단계 1522). 입력되는 ARP 패킷이 다른 호스트로부터의 ARP 요구인 경우,IP_Send_task를 큐잉함으로써 ARP 응답 패킷이 전송된다(단계 1524 및 1526). 그리고 나서, 단계는 메인 프로그램으로 리턴된다(단계 1528).
ARP 입력 및 출력 프로세스에 추가로, 태스크 레벨에서의 ARP 처리는 ARP 엔트리 테이블arpentry를 유지하도록 사용되는 지연 루프 태스크인ARPtimer_task()를 포함한다. 명목상,ARPTimer_task()는 초당 한번 생성된다.ARPTimer_task()의 주요 목적은 ARP 엔트리의 "TTL"을 감소시키고, 이전의 ARP 요구가 손실된 경우에, 펜딩(pending) 상태 동안에 ARP 요구를 재전송하기 위한 것이다.
태스크 레벨 처리는 또한 오디오 패킷의 코딩 및 디코딩에 연관된 처리 동작을 포함한다.Codec_task는 일반적으로, "타입" 파라미터에 의해 표시되는 알고리즘에 따라,ADBuf버퍼로부터의 음성 데이터를EmcodeBuf로 인코딩하는SpeechEncode()기능을 포함한다. 그리고 나서, 코딩된 데이터는 큐IP_Send_task를 통해 "RTP" 파라미터와 함께 밖으로 전송된다.
태스크 레벨 동작은 또한 IP 처리를 포함한다. 일반적인 IP 처리 동작이 도16의 블록도에 도시되어 있다. 도16에 도시된 바와 같이, IP 처리는, 이더넷 패킷의 송신 및 수신 단계(단계 1602), IP 패킷의 다중화 및 역다중화 단계(단계 1604), 및 이더넷, IP, UDP, RTP 및 ARP 패킷의 패킷화 및 역패킷화 단계(단계 1606)를 포함한다.
도16의 단계(1602)에 따르면, 이더넷 패킷 송신은 이더넷 제어기(112)의 DMA 채널을 이용하여 수행될 수 있다. DMA는, CPU를 통하지 않고, 데이터를 메인 메모리로부터 장치로 전송하기 위한 기술이다. DMA 채널이 종래의 수단에 비해 보다 빠르게 장치로/로부터 데이터를 전송할 수 있기 때문에, DMA 채널의 사용은 본 네트워크 전화통신 시스템과 같은 실시간 애플리케이션에서 특히 유용하다.
네트워크 제어기(110)는, 패킷 전송을 위해 사용될 수 있는 이더넷 제어기(112)의 DMA1 채널과 같은, 다수의 DMA 채널을 지원하는게 바람직하다. 이더넷 패킷이 전송 준비가 되면, 소스 어드레스(이더넷 패킷 버퍼,ESend), 목적지 어드레스(이더넷 제어기의 송신 FIFO) 및 카운터(패킷 길이)를 설정함으로써,DMA1()기능, ISR 레벨 기능이 호출된다. 이더넷 송신 데이터 구조의 예가 도17에 도시되어 있다.DMA1()기능이 DMA1 채널을 개시한다. 카운터가 0에 도달하면, DMA1은 정지하고 다음의 호출을 대기한다.
도18은 이더넷 네트워크 제어기(112)의 이더넷 인터페이스(이더넷 송신 FIFO)에 대한 오디오 입력 버퍼(1802), UDP 버퍼(1804) 및 ARP 테이블(1806) 간의 데이터 흐름을 도시한 블록도이다. 도18에 도시된 바와 같이, 오디오 입력 버퍼(1802), UDP 버퍼(1804) 및 ARP 테이블(1806)로부터의 데이터는 IP 출력 큐(1810)로 전송되고, 프로토콜 타입, 소스 포인터 및 데이터 길이를 나타내도록 배열된다. 전송 데이터를 큐잉하는 대신에,IP_Send_task가 프로세스 레벨 소프트웨어(마이크로-커널)(1120)에 의해 큐잉된다.IP_Send_task에 의해 지원된 프로토콜 타입은 일반적으로 UDP, RTP, ARP_REQUEST, ARP_REPLY를 포함한다.IP_Send_task는 패킷 송신 및 이더넷 패킷화를 위해 사용된다. 바람직하게는,IP_Send_taskSIP_task,ARP_Out(), SpeechEncode()등과 같은 다른 태스크 또는 기능에 의해 스케쥴된다.IP_Send_task가 실행되면, 데이터의 프로토콜 타입을 체크한다. 그리고 나서, 이 태스크는 출력 데이터를ESend버퍼에 대응하는 이더넷 패킷으로 저장한다. 마지막으로, 패킷은 할당된 DMA 채널(DMA1)을 통해 밖으로 전송된다.
도19는 패킷 수신 및 역다중화 동작을 도시한 데이터 흐름도이다. 역다중화는Ercv_task내의 상이한 프로토콜에 대한 상이한 태스크를 스케쥴함으로써 실현된다. 도16의 단계(1602)에 따르면, 이더넷 패킷은 수신 데이터 FIFO 메모리에 수신되고(단계 1902), DMA0 채널 제어기에 의해 처리된다(단계 1904). DSP(122)가 패킷이 도착할 때를 알지 못하기 때문에, DMA0 채널은 항상 액티브이다(즉, 카운터가 0에 도달하더라도 정지하지 않는다). 패킷이 도착하면, DMA0 채널은 이것을 이더넷 제어기의 수신 FIFO로부터 이더넷 수신 버퍼 Ercv로 자동적으로 카피하게 된다(단계1906). FIFO에 이용가능한 데이터가 존재하지 않으면, DMA0 채널이 정지한다.
ERcv_task는 이더넷 패킷 역패킷화 및 IP 패킷 역다중화를 위한 플래그 트리거 태스크이다(단계 1908).Ercv_task가능은 다음과 같다. 먼저,packetCheck()기능이 입력 패킷을 체크하기 위해 호출된다.PacketCheck()는, 그 패킷이 무효인 경우, 패킷의 프로토콜 타입을 리턴하거나 NULL로 한다. 두 번째로, 리턴된 패킷 타입에 따라.ERcv_task는 수신된 패킷을 처리하기 위해 상이한 태스크, 예를 들면, "RTP" 패킷에 대한 RTP_In_task(단계 1910), "ARP" 패킷에 대한ARP_In_task(단계 1912), 또는 UDP 패킷에 대한 UDP 처리 태스크(단계 1912)를 트리거하게 된다.
도13c를 참조하면,SpeechDecode()는 단계(1810)의 RTP 처리에 연관된 음성 디코딩 기능이다. 먼저,SpeechDecode()태스크는 디코딩 버퍼DecodeBuf에 이용가능한 데이터가 존재하는지를 체크한다. 데이터가 존재하는 경우, 예로, RcvFlag가 SET인 경우,SpeechDecode()는 수신 데이터의 데이터 타입, 예를 들면, PCM(G.711), G.723, G.729에 따라 그것을 디코딩한다. 디코딩된 데이터는 D/A 버퍼DABuf로 전송된다.
A/D 및 D/A 인터럽트 루틴은 내부 인터럽트 소스, 예로,Rint0()에 의해 트리거될 수 있다. 바람직하게, A/D 및 D/A 인터럽트 루틴은 DSP에 의해 제공된 8kHz 샘플링 주파수에 의해 트리거된다. 이 루틴은 자주 호출되기 때문에,Rint0()는 어셈블리 언어로 기록되는 것이 바람직하다.Rint0()에 의해 수행되는 단계는, D/A 버퍼DABuf로부터 D/A 샘플을 판독하는 단계, 샘플을 직렬 D/A 포트에 전송하는 단계, 직렬 A/D 포트로부터 샘플을 획득하는 단계, A/D 샘플을 A/D 버퍼에 저장하는 단계, 및 A/D 및 D/A 버퍼 포인터ADpntDAPnt를 1씩 증가시키는 단계를 포함한다.
도20a 및 도20b는 본 발명의 소프트웨어에 의해 사용되는 A/D 및 D/A "핑-퐁(ping-pong)" 버퍼 스킴을 도시한 블록도이다. 또한, 현재 A/D 포인터 값(ADPnt)이 소정의 버퍼 임계값(ADTh)을 초과하면, 그 서비스가 필요하다는 것을 나타내는 플래그가 플래그 태스크 큐에 설정된다.
A/D 및 D/A 버퍼가 2개의 부분, 즉 상위 버퍼(2002a) 및 하위 버퍼(2002b)로 각각 나눠질 수 있다. 두 버퍼는 모두 순환형 버퍼로 설계될 수 있다. 이 방식에서, 현재 포인터가 버퍼 바닥에 도달하면, 이것은 그 시작점으로 돌아간다. 그러나, 인코더 및 디코더 관점에서, 이것은 2-프레임 핑-퐁 버퍼(상위 프레임 및 하위 프레임으로 정의됨) 스킴으로 사용된다. 이 프로세스의 동작이 도20a 및 도20b에 도시되어 있다. A/D 변환에 있어서, 상위(또는 하위)가 가득찬 경우, 상위(또는 하위) 버퍼내의 데이터는 핑퐁 스위치(2004)를 관통하여, 음성 인코딩 버퍼EncodeBuf(2006)로 카피된다. D/A 변환에 있어서, 상위(또는 하위) 버파가 완료된 경우, 데이터의 새로운 프레임이 음성 디코딩 버퍼DecodeBuf(2010)로부터 상위 버퍼(2008a)(또는 하위 버퍼(2008b))로 카피된다. 이 메커니즘은 인코딩(또는 디코딩) 알고리즘이 버퍼의 일부분으로부터 판독(기록)하는 동안에, A/D(또는 D/A) 샘플링 ISR은 충돌없이 버퍼의 다른 부분을 기록(판독)할 수 있게 한다.
도21은 본 네트워크 어플라이언스의 예시적인 실시예에서 사용되는Call_task서브루틴의 상태 천이도이다.Call_task는 호 절차를 조정하는 루프형 태스크이다. 도21에 도시된 바와 같이, "유휴(Idle)" 상태(2102)는 호가 이루어지지 않고 인입 호가 없는 경우에 발생한다. 이 상태가 존재하면, Call_task는 "Idle" 상태(2102)에서 순환한다. "다이얼톤(DialTone)" 상태(2104)는 수신기 상태가 OFFHOOK이거나, 핸드셋 상태가 HANDSFREE를 나타낼 때에 존재하며, 이에 따라, OFFHOOK 또는 HANDSFREE 상태가 존재하면, Call_task 상태는 "Idle" 상태(2102)로부터 "DialTone" 상태(2104)로 변경된다. 이들 상태는 일반적으로 호의 시작을 나타내는, 사용자 제어 장치(160)를 통한 사용자에 의한 입력에 의해 들어온다. Call_task 상태가 "DialTone" 상태(2104)인 경우,Codec_task는 "ToneMode, DialTone"으로 구성되며, 다이얼톤은 사용자 인터페이스(160)의 핸드셋 구성요소로 전송된다.
도21을 다시 참조하면, "DialTone" 상태(2104) 동안에, 숫자 키('0'...'9', '*' 및 '#') 또는 재다이얼 버튼이 입력되는 경우, 호 상태는 "DialTone" 상태(2104)로부터 "GetDigit" 상태(2106)로 변경된다. "GetDigit" 상태(2106)에서, 다이얼톤은 핸드셋에서 정지된다.
호출자의 번호가 입력되고, 다이얼링이 완료되었음을 나타내기 위해 사용자에 의해 엔터 버튼이 입력된 후에,Call_task는 그 입력이 유효한지를 체크한다. 그 번호가 유효한 경우,CreateSipCall()기능에 의해 호 엔트리가 생성되고,Call_task가 "SIP" 상태(2108)로 이동한다. 반면에, 입력 번호가 무효인 경우, 번호가 다시 요구되고, 상태는 "GetDigit" 상태(2106)로 남아 잇는다.
SIP_task처리를 기다리는 동안에, "SIP" 상태(2108)에 따라 몇몇 판정이 이루어질 수 있다. "SIP" 상태(2108)는, 그것의 상태 천이에 따른SIP_task에 의해 수정되는 글로벌 변수SIP_status이다. "SIP" 상태(2108)가 RIP_RING 으로 변경되는 경우,Call_task는 "RingBack" 상태(2114)로 변경되고,Codec_task는 "ToneMode, RingBack" 모드로 구성될 수 있다.Codec_task가 "ToneMode, RingBack"에 있으면, 링백 톤이 핸드셋으로 전송된다.
"SIP" 상태(2108)가SIP_busy로 변경되는 경우,Call_task와 그에 따른 호는 "BusyTone" 상태(2120)로 변경되고, 통화중 톤이 핸드셋에 재생될 것이다. "SIP" 상태(2108)가SIP_Refused로 변경되면,SIP_Refused상태에 관련된 적합한 메시지가 LCD 스크린상에 디스플레이된다.
"RingBack" 상태(2118)로부터, "SIP" 상태가SIP_Connected가 되면, Call_task 상태는 "Talk" 상태(2116)로 변경된다.Call_task상태가 "Talk" 상태(2116)에 있으면,Codec_taskSpeechEncodeSpeechDecode모드로서 구성된다.
인입 호에 대하여, "Idle" 상태(2102) 중에, "SIP" 상태(2108)가SIP_Invite인 경우,Call_task상태는 "Ring" 상태(2114)로 변경되고,Codec_task는 "ToneMode, RingTone"으로서 구성된다.Codec_task가 "ToneMode, RingTone"으로 구성되면, 링톤이 확성기 상에 플레이된다. SIP 상태가SIP_Connected가 된 후,Call_task상태는 "Talk" 상태(2116)로 변경된다. 반면에, 호출자가 호를 포기한 경우에 발생하는, SIP 상태가SIP_Cancel이 되는 경우,Call_task상태는 "Idle" 상태(2108)로 리턴한다.
"Idle" 상태(2102) 중에, ENTER 버튼이 눌려지면,Call_taskSetting_task를 호출한다. 파라미터 설정 프로그램이 종료되면,Call_task로 리턴한다.
Call_task실행 동안에, 후크 상태가 수신기가 ONHOOK임을 나타내거나 또는 시스템 에러가 발견된 경우, 이전의 상태에 관계없이("Ring"상태(2114)는 제외),Call_task는 "Idle" 상태(2102)로 변경된다.
도5에 도시된 바와 같이, 네트워크 어플라이언스의 바람직한 실시예에서, 전화기의 키패드는 사용자 입력 및 커맨드를 제공하기 위한 17개의 키를 구비하고 있다. 전화 키패드는, 도22에 도시된 바와 같이, 10개의 숫자키, 2개의 특수키 및 5개의 기능키로 정의된다.
Key_task는 예로, 매 0.1초마다 주기적으로 실행되는 루프 지연 태스크이다. 시작되면,Key_task는 먼저Key()기능을 호출한다. 리턴값이 "-1"이 아닌 경우에는, 키가 눌려졌다는 것을 의미한다. 그후,KeyMap()기능은 입력 2진 키워드를 ACCII 키 워드로 매핑한다. 그리고 나서,Key_task는 FuncKey 구조의 대응하는 멤버를 설정한다. 시스템이 키 입력 수락이 준비된 경우(KeyRegEnable이 표시됨), 입력 키 워드는KeyBuf에 저장된다.
또한,Key_task는 숫자 입력 모드, IP 어드레스 입력 모드, 알파벳 입력 모드 및 리스트 어드레스 입력 모드의 4개의 상이한 입력 모드를 지원하는 것이 바람직하다. 4개 모드 간의 스위칭은, 핸드셋을 픽업하고 다이얼톤이 들리면, 어떤 수 또는 알파벳을 다이얼하기 전에, ENTER 버튼을 누름으로써 수행될 수 있다. 입력이 완료되고 ENTER 버튼이 눌려진 후, 입력 번호는 메시지 파이프에 의해 현재 태스크(Call_task또는Setting_task)로 전환될 수 있다. 재다이얼 키가 입력되면, 태스크는 백업 버퍼KeyBackup로부터 이번의 입력을KeyBuf로 카피한다. 그리고 나서, 데이터는Call_task로 전환된다.
본 네트워크 어플라이언스의 OS는 지연 태스크 스케쥴 스킴을 지원하는게 바람직하다. 지연 태스크는 UNIX에서의sleep()기능과 유사하다. 그러나, 지연 태스크는, 태스크의 반복 플래그가 설정될 때에, 주기적인 타이머로부터의 연속적인 태스크 실행일 수도 있다. 지연 태스트에 대하여, 프로세스 레벨 소프트웨어(1120)는 시스템 틱(tick)을 제공하기 위해 간격 타이머를 필요로 한다. 도5의 시스템은 시스템 타이머 베이스로서 TMS320C32 타이머1, TCLK1를 사용한다.
Clock_task는 실시간 클럭 및 카렌더 기능을 수행하는 루프형 지연 태스크이다. 이것은 시, 분 및 초를 포함하는 현재 시각을 계산 및 디스플레이 하기 위한 일반적인 클럭으로 제공된다. 호가 접속되면, 이것은 호 시간을 디스플레이할 수 있다. 전화가 온후크(on hook)인 경우, 현재 년, 월, 일이 LCD 상에 디스플레이될 수도 있다.
도11을 다시 참조하면, 본 발명의 네트워크 전화 소프트웨어는 소프트웨어 ISR 레벨의 부분으로서 포함되는 몇몇 저-레벨 기능을 포함한다. 이들 저-레벨 기능 중 일부는 도24에 정의된 전화기의 8-비트 I/O 병렬 포트와 함께 사용되는 I/O관련 기능이다. 저-레벨의 I/O 관련 기능은, "Hook" 상태 모니터Hookst(), 티 입력 이용가능성 체크 및 판독 Key(), 핸드셋 및 핸즈프리 제어Handset(), 이더넷 제어기 리셋ENET_reset(), 볼륨 제어AmpControl()및 시스템의 소프트웨어 리셋을 포함한다.
LM4830의 형식을 취하는게 바람직한, 오디오 인터페이스 칩(136)은 핸드셋과 핸즈프리 모드 사이의 스위칭을 제어하는데 사용될 수 있다. 예를 들면,HandSet()기능은 "핸즈프리" 모드가 요구된 경우에는 I/O 포트에 '0'을 기록하고, "핸드셋" 모드가 요구된 경우에는 적합한 포트에 '1'을 기록할 수 있다.
본 발명의 저-레벨 기능은 이더넷 제어기 인터럽트 ISRc_int03()를 포함할 수도 있다.c_int03()과 함께 사용하기 위한 글로벌 메시지 구조는 도25에 도시된 바와 같이 이더넷 제어기의 상태에 대해 정의된다. 패킷이 전송되거나 또는 수신된 패킷이 완료될 때마다, 이더넷 제어기는 인터럽트를 나타내기 위해 DSP(122)를 인터럽트한다. DSP(122)는 이더넷 제어기의 레지스터로부터의 송신 및 수신 상태를 판독하여, 상기 상태 구조로 상태를 저장한다. 이 정보는 다른 태스크에 의해 체크될 수 있다. 또한, 이들 메시지는 각 패킷의 전송 후에 판독된다. 그렇지 않으면, 이더넷 제어기는 블로킹될 수 있다.
전술한 바와 같이, 본 발명의 네트워크 어플라이언스는 실시간으로 음성 패킷을 송수신하기 위해 RTP 프로토콜을 사용한다. RTP 패킷은 UDP 패킷에 캡슐화된다.IP_Send_taskRTP_In_task모듈은 RTP 패킷을 생성 및 분석하도록 동작한다. 도26은 RTP 패킷 처리를 위한 RTP 헤더 구조를 도시하고 있다.
IP_Send_task는 RTP 패킷을 전송하기 위한 요구를 획득하면, 먼저 이더넷 및 UDP 헤더를 생성한다. 다음으로, 이더넷 패킷 송신 버퍼에 RTP 헤더를 추가한다. 마지막으로, RTP 데이터는 RTP 데이터 영역에 카피되고 데이터 네트워크를 통해 전송된다.
도27은 톤 생성 기능Tone_task()에 사용하기 위한 데이터 구조를 도시하고 있다. 도27에 도시된 파라미터가 도28의 톤 생성 타이밍도에 도시되어 있다.
Tone_task는 매 약 0.1초마다 실행될 수 있는 지연 태스크이다. 이것은 ToneType 구조에 정의된 톤 액티브 및 정지 기간을 카운트하는데 사용된다.Tone_task는 ToneStste를 버스트(busrt) 동안에는 ACTIVE로, 사일런스(silence) 동안에는 STOP으로 설정한다. 상이한 액티브 및 정지 기간은 상이한 톤을 생성한다. 이들은 다이얼 톤 (연속 톤(정지없이)), 통화중 톤(버스트 0.5 및 사일런스 0.5초), 링백 톤(버스트 2초 및 사일런스 4초), 링 신호(2초에 버스트 0.8초 2번 사일런스 4초)이다.
바람직하게는,ToneGenerate()모듈은, ToneState가 ACTIVE인 경우, "모드" 파라미터에 의해 정의된 2400 Hz 링 신호 또는 400Hz 톤 1프레임을 생성한다. 그렇지 않은 경우, 1 프레임 사일런스 신호가 제공된다.
본 발명의 네트워크 어플라이언스는 SIP에 대한 전송 프로토콜로서 UDP를 사용한다.SIP_task는 SIP 시그널링을 조정하는 루프형 태스크이다. 본 네트워크 어플라이언스가 호출자 또는 피호출자로 사용될 수 있기 때문에,SIP_task는 UAC(User Agent Client) 및 UAS(User Agent Server)로 모두 동작한다.
도29는 SIP 프로토콜에 따른 SIP 요구 또는 응답을 처리하는데 사용되는 데이터 구조를 도시한 소스 코드이다. Tstate는 SIP 상태 천이에 대한 SIP_In_task 및SIP_task에서 사용되는 상태 천이 구조이다. 분석된 SIP 메시지는 데이터 구조 메시지_t에 있다. 구조 호는 각 호에 대해 정의되고 전체 호 엔트리는 msg[MaxSipEntry]에 의해 정의된다.
도30은 클라이언트(예, 호출자)로 동작하는SIP_task의 상태 천이도를 보여준다. SIP 폰이 호를 시작하면, 이것은 클라이언트로 동작한다. 호는 다음의 단계를 통해 생성된다. 전화기가 픽업되고 호의 플래그가 SET인 경우, 호 엔트리 msg[CurrentIndex]가 할당된다.CreateSipCall()이 현재 설정 및 다이얼 입력에 따라 SIP 패킷을 생성하는데, 여기서 SIP 패킷은 호의 기준으로 사용되고,us_state는 UAC로 설정된다.SIPParse()는 상기 패킷으로부터의 호에 대한 메시지 구조(msg[CurrentIndex].m)를 생성한다.SIP_task는 액티브 호가 있는지는 체크하고, 호(msg[i].플래그가 SET)가 존재하는 경우,SIP_task는 SIP 스펙에 따라 대응 요구를 생성하고, SIP 상태는 도30에 도시된 바와 같이SIP_task에서 갱신된다.
도30은SIP_task의 UAC 상태 천이도라 불리는, 클라이언트(호출자) 동작에 대한 예시적인 상태도를 도시하고 있다. 초기 상태로부터(단계 3002), 호출 상태가 입력되고,SIP_task는, 응답이 수신될 때까지. SIP INVITE 요구를 주기적으로(T1) 재송신한다(단계 3004). T1은 처음에 500ms이고, 각 패킷의 송신 후에는 2배가 된다(단계 3006). T2는 32초이다. 클라이언트가 응답을 수신하지 못한 경우,SIP_task는, T2 타이머가 만료되면 제송신을 멈추고, SIP 상태는 Cancel로 변경된다(단계 3008). 응답이 일시적인 경우, 클라이언트는 7번까지 요구의 재송신 계속한다. 최종 응답이 수신되면, 상태는 Completed로 변경되고, ACK가 생성된다(단계 3010). 호출자가 포기한 경우, 상태는 Bye 상태로 변경된다(단계 3012). BYE 요구는, 신뢰할 수 있는 송신을 위해, T2가 만료될 때까지 T1의 시간 동안에 재송신될 수 있다. 변수 SIP_Status는 도31에 도시된 바와 같이 수신된 응답에 따라 변경된다. 예를 들면, 3xx 응답이 수신되면,SIP_task는 리다이렉트된 어드레스에 대해 다른 호를 시작한다. 그밖의 최종 응답은 LCD상에 디스플레이될 수 있다.
네트워크 어플라이언스가 호를 수신한 경우,SIP_task는 SIP UAS(서버)로 기능한다. 인입 패킷은 다음과 같이 처리된다.UDP_In_task는 인입 UDP 패킷을 수신하여, 그것의 소스 IP 어드레스 및 포트 번호에 따라SIP_In_task로 패킷을 송신한다.SIP_In_task는 SIP 스펙에 따라 패킷을 처리하고, 이에 따라 상태를 갱신한다.SIP_task는 수신기 상태를 모니터하고, 각 호의 T1 및 T2 타이머를 설정 및 감소하고, 필요에 따라 SIP 상태를 갱신한다.
도32는 SIP UAS의 예시적인 상태 천이도를 도시하고 있다.SIP_task가 초기 상태로 남아 잇는 동안에(단계 3205), 인입 SIP 패킷을 들을 수 있다. INVITE 요구가 수신되면, Ringing(180) 응답이 생성되고, 그 상태가 Invite로 변경되고,SIP_task모듈은 다음의 단계를 진행된다(단계 3210). 피호출 측에서 전화를 들면, 상태는 PicksUp으로 변경되고, 그 프로세스는 성공적인 세션이 수립되었음을 나타내는 Success로 진행된다(단계 3215). 피호출 측이 전화를 들지 않는 경우, 상태는 Failure로 변경되고, 프로세스는 Failure 상태로 진행된다(단계 3220). 성공 또는실패 후에, 클라이언트는 현재 상태를 인식하고, 프로세스를 Confirmed 상태로 진행한다(단계 3225). 호출자 측이 세션을 종료하면, 상태는 Onhook로 변경되고 프로세스는, 현재 세션이 완료되었음을 나타내는 Bue로 진행된다(단계 3230).
여기서 제시된 바와 같이, 네트워크 어플라이언스는 패킷 데이터 네트워크 상에서 전화 호를 시작 및 수신할 수 있는 독립형 장치이다. 여기에 기재된 독립형 아키텍처가, 구현하는데 비교적 저렴한 비용과 같은 많은 장점을 제공하고, 독립형 어플라이언스(100)와 함께 기재된 유사한 소프트웨어 아키텍처 및 기능적인 정의들은 PC 기반의 전화 장치에 제공될 수도 있다. 이러한 경우에, 마이크로폰, 스피커 및 적합한 네트워크 인터페이스 카드를 구비한 종래의 개인용 컴퓨터는 전술된 방식과 같이 동작하는 소프트웨어가 제공된다. 물론, 사용자 인터페이스 구성요소 및 예로, 키보드, 모니터, 마우스 등과 같은 PC의 종래 구성요소로 수행되는 기능과 같은, 명백한 변경들이 본 실시예에 영향을 미칠 수 있다. 전화 설비에 대한 GUI 인터페이스가 요구된 전화통신 기능을 인에이블하기 위해 소프트웨어에 의해 제공된다.
본 발명의 네트워크 어플라이언스는, 전형적인 전화통신 기능의 수행에 추가로, 네트워크와 환경 사이에 비용면에서 효율적인 인터페이스를 제공할 수도 있다. 이더넷 인터페이스에 장착한 센서가 실행될 수 없는 동안에, 필요한 많은 수의 포트 및 최소한의 하드웨어 비용으로 인해, 본 발명의 네트워크 어플라이언스는 많은 디지털 및 아날로그 센서에 대한 수집 지점(gathering point)이 될 수 있다. 이것은 일반적으로 DSP(122)에 연결되는 종래의 I/O 회로(135)를 통해 네트워크 어플라이언스에 외부 센서를 결합함으로써 성립된다. I/O 회로는 샘플 버퍼, A/D 변환기, 레지스터 등의 형태를 취할 수 있다. 이 구성은 특히 보안성 문제에 대한 전화를 구비한, 예로, 엘리베이터, 로비, 샵 플로어, 주차장 등의 환경에서 특히 유용하다. 예들은, 사람의 존재를 검출하기 위한 패시브 적외선 (PIR) 디지털 센서 - 이것은 사무실 내에 아무도 없을 때에 자동적으로 호를 포워딩하거나, 보안 또는 에너지 관리 시스템의 일부로서 사용될 수 있음 -, 사무실이 사용 중인지의 여부를 검출하는 아날로그 또는 디저털 광 센서, 스모크, 카본 일산화물 및 방사 검출기, 및 보안 시스템에 대한 접촉 폐쇄 등을 포함한다. 따라서, 본 네트워크 어플라이언스는 시스템 통합점을 제공한다.
보다 강화된 I/O 능력을 제공하기 위해, I/O 회로는 조명 또는 어플라이언스와 같은 라인-전원형 장치를 제공하기 위한 표준을 인지하는 X10 및 CEbus 프로토콜과 같은 로컬 제어 프로토콜과 호환될 수 있다. 이것에 추가로 전화에 대한 인터페이스는 이러한 장치의 네트워크-기반 제어로 제공한다.
도33은 네트워크 상에서의 2개 또는 그 이상의 집단간에 호를 수립하기 위한 본 네트워크 어플라이언스를 적용한 시스템을 도시하고 있다. 시스템은 일반적으로, 전술된 것과 같은, 하나 또는 그 이상의 독립형 네트워크 어플라이언스(100)를 포함한다. 또한, 시스템은 네트워크 어플라이언스(100)와 함께하는 프로토콜인 적합한 네트워크 전화통신 소프트웨어를 동작시키는, 네트워크 인에이블형 PC와 같은 PC 기반 전화통신 장치(3320)를 포함할 수도 있다. 각 전화통신의 종단점은 노드라고 불리고, 특정 SIP 어드레스를 가질 수 있다. 이 특정 어드레스를 이용함으로써,호출측(클라이언트)으로 동작하는 노드는 네트워크(서버) 상의 다른 노드와 함께 호 세션을 직접 개시할 수 있다.
이 시스템은 또한 디렉토리 서비스, 호 포워딩, 호 브랜칭, 호 메시징 등과 같은 개선된 서비스를 제공하기 위해, 네트워크 상의 많은 노드에 의해 엑세스 될 수 있는 리다이렉트 서버(3325)를 포함할 수도 있다. 예를 들면, JOHN SMITH에 대한 sip:john.smith@work.com과 같이 알고 있는 경우에, JOHN SMITH에 대한 호를 개시하기 위한 호출측은 SIP 어드레스를 입력할 수 있다. 한편, 호출측에서 SIP 어드레스를 모르는 경우, 호출측은 JOHN SMITH로써 세션을 시작하기 위해 요구로 리다이렉트 서버(3325)에 연결할 수 있다. 리다이렉트 서버는 여러 집단에 대한 등록 정보를 가진 데이터베이스를 포함하고, SIP 어드레스를 호출측에 리턴하거나 호 요구를 적당한 SIP 어드레스로 포워딩할 수 있다. 또한, 피호출 측은 john.smith@home, john,smith@office, john.smith@lab 등과 같은 많은 SIP 어드레스를 가질 수 있다. 리다이렉트 서버는 이들 각 어드레스에 대해 세션 개시 신호를 제공할 수 있고, 호출측과 개시 요구에 대해 응답하는 제1 접속 노드 사이에 접속을 수립할 수 있다. 유사하게, 파티들은 그들이 접속될 수 있는 경우에 현재의 SIP 어드레스를 나타내기 위해 리다이렉트 서버로 주기적으록 등록할 수 있다(호 포워딩 기능).
네트워크 어플라이언스(3305)는 하나 또는 그 이상의 센서(3310)에 대해 인터페이스하기 위해 구성될 수 있다. 센서로부터의 신호는 네트워크 어플라이언스(3305)에 의해 수신되고, 네트워크를 따라 요구된 네트워크 노드로 전송될 수 있다. 센서로부터의 신호는 네트워크 어플라이언스내의 타이머에 의해 주기적으로 검출될 수 있고, 메모리에 저장된 SIP 어드레스로 전송된다. 대안적으로, 센서 신호는 다른 노드(원격 네트워크 노드에 의해 등록됨)로부터 수신된 커맨드에 기반하여, 네트워크 어플라이언스(100)에 의해 측정될 수 있고, 또는 센서(인터럽트 구동됨)의 상태 변경을 나타내는 수신 인터럽트 신호에 기반하여 측정될 수 있다. 예를 들면, 네트워크 어플라이언스(100)는 중앙 감시국으로 많은 보안 센서 지점의 상태를 보고하는 보안 시스템 통신 장치로 사용될 수 있다. 이러한 경우에, 어플라이언스는 도어 센서, 화재 센서, 패시브 적외선 검출 등과 같은, 접속된 센서의 상태를 주기적으로 체크하여, 중앙국 노드에 현재 상태를 보고할 수 있다. 경보 상황을 나타내는 상태 변경 이벤트에서, 어플라이언스(100)는 중앙국과 호 세션을 생성하고 이 상태를 보고할 수 있다. 물론, 경보 전달자로 동작하는 동일한 어플라이언스가 완전한 전화통신 기능을 제공할 수도 있다. 또한, 간단한 보안 애플리케이션이 설명되었지만, 일반적으로 SCADA(site control and data acquisition)으로 알려진, 많은 다른 데이터 수집 및 제어 애플리케이션이 본 네트워크 어플라이언스(100)를 이용하여 구현될 수 있다.
정정 동안에 라이프라인(lifeline) 서비스를 유지하기 위해, 본 발명의 네트워크 어플라이언스는 재충전가능한 배터리가 내장되어 월 변환기(wall transformer)에 통합될 수 있다.
많은 위치들이 단지 하나의 이더넷 인터페이스와 함께 현재 설비됨에 따라, 본 발명의 네트워크 어플라이언스는 외부 RJ-45 인터페이스를 갖는 2-포트 이더넷허브를 제공해야 한다. 이것은 전화통신 장치와 네트워크 인에이블형 컴퓨터 모두의 동시 동작을 제공한다.
오디오 데이터에 추가로, 본 네트워크 어플라이언스는 비디오 데이터를 수신 및 전송할 수도 있다. 예를 들면, 아날로그 또는 USB(Universal Serial Bus)를 통한 비디오 입력 인터페이스가 이 기능을 구현하기 위해 DSP(122)에 동작가능하게 연결될 수 있다.
본 네트워크 어플라이언스(100)는 무선 전화와 같은 것을 허용하기 위해 적합한 무선 이더넷 인터페이스에 연결될 수도 있다.
확장된 기능성을 제공하기 위해, 다음의 프로토콜들, 즉, IP 어드레스의 자동 정렬을 위한 DHCP 및 RARP, 멀티캐스트 그룹에 가입하기 위한 IGMP, 음성 메일 및 특유의 링 신호를 검색하기 위한 RTSP, 멀티캐스트 "라디오"의 발표를 청취하기 위한 SAP, 및 이름 분석을 위한 DNS(이용가능한 프로그램 메모리 공간에 지시됨)가 본 네트워크 어플라이언스(100)에 추가될 수 있다.
기본적인 전화통신 동작에 추가로, 본 네트워크 어플라이언스는 고 레벨 전화통신 기능을 제공할 수도 있다. 예를 들면, "Do not disturb" 기능은 사용자의 SIP 어드레스 입력에 의해 특정됨에 따라, 지명된 위치에 대한 임의 기간 동안의 호를 자동적으로 포워딩하도록 제공될 수 있다. 사용자 인터페이스 상에 버튼을 누름으로써 각 시간에 기능이 선택되는데, 그 시간은 소정의 간격(예, 15분)으로 증가된다.
또한, "호 로깅(Call logging)"이 제공될 수 있는데, 여기서, SIP 어드레스및 인입 호에 관한 관련 정보는 메모리에 정보를 저장함으로써 로깅되는데, 리스트를 통해 스크롤링하거나 사용자 인터페이스 서브시스템(160)을 통해 사용자 상호동작에 의해 로그로부터 호출자의 SIP 어드레스를 선택함으로써, 호출측을 다시 호출하는 기능을 가진다.
네트워크 어플라이언스는 또한 "자동 어드레스 북"을 포함한다. 사용자 입력 또는 네트워크 상에 접속된 서버를 통해, 네트워크 어플라이언스는 단축 다이얼 리스트 또는 사용자가 스크롤할 수 있는 로컬 메모리에 저장된 이름의 리스트를 획득할 수 있다(SIP "다수 선택" 응답을 이용함).
"음성 메일 시스템에 대한 인터페이스" 기능은 인입되어 응답하지 못한 모든 호를 디스플레이할 수 있는데, 호출 시각, 호출자, 호의 주제 및 긴급성 및 호출자가 음성 메일을 남겼는지의 여부를 포함한다. 호는 순서대로 또는 긴급한 순서도 정렬될 수 있다. 호 디스플레이는, 엔트리 삭제, 리스트를 통해 앞쪽 또는 뒤쪽으로 이동, 호 리턴, 및 메시지 검색 등의 5개 소프트 버튼을 가지는게 바람직하다.
"독특한 벨소리(Distinctive ringing)"는, 독특한 링, 멜로디 또는 호출자의 이름과 같은 독특한 사운드 클립에 의해 임의의 호출자를 나타내도록 프로그램된다. 이 경우에, 작은 데이터베이스는 호출자 또는 호출자의 분류(예, 친구, 고랙, 긴급)를 특정 선택 링 응답에 대해 연관시킨다. 이 사운드 클립은 메모리로부터 재생되거나 또는 서버로부터 검색된다.
"호 포워딩"은 어플라이언스(100)내에 구현될 수 있는 다른 기능이다. 통상적으로, 호는 프록시 리다이렉트 서버에 의해 포워딩된다. 그러나, 네트워크 어플라이언스(100)는, 전술한 "do not disturb" 버튼과 같이, 자체적으로 간단히 포워딩을 수행할 수도 있다. 리다이렉트(redirection)은, follow-me 호를 구현하기 위해, REGISTER 커맨드와 함께 다른 전화로부터 전화를 호출하는 형식을 취할 수 있다. 또한, 임의의 도메인 또는 임의 시간 동안의 호의 자동 포워딩은 리다이렉트 서버의 사용없이 쉽게 구현된다.
"인터콤(Intercon)" 모드는, 마이크로폰이 push-to-talk 버튼이 눌려지거나 수신기가 들여 올려질 때까지 디스에이블 됨과 동시에, 인입 호가 자동으로 "픽업" 되는 경우의 기능이다. 이것은 또한 보안 공중 어드레스 시스템의 일부로 사용될 수 있다.
"베이비 모니터링(Baby monitoring)" 기능은 네트워크 어플라이언스가 원격 오디오 모니터링 징치로 동작할 수 있게 한다. 예를 들면, 인입 호가 수신되면, 네트워크 어플라이언스(100)는 액티브되고, 스피커는 디스에이블되고, 마이크로폰이 자동으로 인에이블되어, 호출자가 피호출 어플라이언스가 위치된 곳의 상황을 등을 수 있게 된다. 이 기능은 소정의 코드 또는 호출자 ID로 선택적으로 계약될 수 있다.
"인터넷 라이오" 기능은, 호가 수신되지 않거나 개시되지 않을 때에, 로컬 RTP 멀티캐스트 서버 또는 다른 스트리밍 미디어 소스에 의해 제공되는 라디오국을 자동적으로 재생할 수 있게 한다. 어플라이언스(100)는 SAP 방송을 청취할 수 있고, 소프트 버튼과 함께 디스플레이 상에 국을 디스플레이할 수 있다. 모든 인입 전화 호는 현재 라디오 프로그램을 인터럽트한다.
본 네트워크 어플라이언스는 또한 "피호출자 리스트"를 저장할 수 있다. 이전의 호가 성공적인 경우, 피호출자의 어드레스는 로컬 가이드-다이얼 리스트로 사용되는 메모리의 일부분에 자동적으로 입력된다. 이 집단을 다시 다이얼하는 경우, 피호출자는 피호출자 리스트로부터 위쪽 또는 아래쪽 키에 의해 선택된다. 이것은 일반적으로 오래된 엔트리를 자동적으로 제거하고, 새로운 엔트리를 대체하는 FIFO 타입 메모리 구조이다.
"재다이얼"은 마지막으로 누른 번호 또는 마지막 피호출자를 1개의 키로 다이얼링할 수 있는 기능이다.
또한, 사일런스 억제, 편한 잡음 생성 및 에코 제거와 같은 "음성 처리 강화(Speech processing enhancement)"가 전화통신 분야에서 주지된 방식으로 본 네트워크 어플라이언스에 포함될 수도 있다.
따라서, 사용자가 LAN 내 또는 인터넷을 통한 전화 호를 수행하게 하는 독립형 "인터넷 어플라이언스"인 네트워크-기반 전화가 기재되었다. 이것의 핵심은 단일 DSP(오디오 및 비디오 데이터를 처리하도록 최적화된 마이크로컨트롤러)이다. 이것은 일반적인 전화의 수퍼세트(superset)인 서비스를 제공하지만, PSTN 대신에 이더넷 데이터 네트워크에 접속한다. 100 Mb/s로 동작하는 이더넷이 아날로그 및 디지털 전화에 사용되는 동일한 꼬임쌍선을 사용할 수 있기 때문에, 패킷 데이터 네트워크 전화는 재배선을 필요로 하지 않는다. 최소 시스템은 이더넷 크로스-오버(cross-over) 케이블에 의해 접속된 2개의 패킷 데이터 네트워크로 구성된다. 다중-라인 기본 PBX는 이더넷 허브 또는 교환기에 접속되는 모든 수의 패킷 데이터 네트워크 전화로 구성되도록 구현될 수 있다. 이 "PBX"는 간단히 이더넷 용량 및 포트를 추가함으로써 어떤 수의 전화로 스케일링 할 수 있다. 패킷 데이터 네트워크 전화는 다른 LAN 서비스와 함께 이더넷을 공유한다. 대부분의 모든 경우에, 음성 트래픽은 네트워크 용량의 적은 비율이 된다(단일 음성 호는 약 10Mb/s 용량의 약 16kb/s를 소비함). 패킷 데이터 네트워크 전화는 PBX의 일반적인 기능을 구현하는 음성 통신을 제공한다. 그러나, 본 네트워크 어플라이언스는 사용자 위치 및 디렉토리 서비스, 호 포워딩, 음성 메일 및 부가 서비스와 같은, 부가적인 기능을 제공하기 위해 LAN 또는 인터넷에 위치된 서버를 이용할 수 있다.
본 네트워크 어플라이언스 기반의 PBX는 인터넷 전화통신 게이트웨이(ITG)를 통해 통상적인 전화에 도달할 수 있다. 이러한 게이트웨이는 아날로그 라인, ISDN 기본 또는 우선 속도 인터페이스 또는 디지털 트렁크(T1/E1과 같은)를 이용하여 PSTN에 접속한다. ITG는 약 240 라인에 대해 하나의 용량을 갖는 상업 제품으로 현재 소개되어 있다.
이상에서, 본 발명이 특정 실시예에 대해 기재되었지만, 본 발명의 사상 및 범위에서 벗어나지 않는 한, 이 기술분야의 통상의 지식을 가직 자에 의해 다양한 수정, 대안 및 변형이 이루어질 수 있다. 본 발명은 첨부된 청구범위에 의해서만 제한되어야 할 것이다.

Claims (56)

  1. 패킷 데이터 네트워크를 통해 패킷화된 데이터를 제공하기 위한 네트워크 어플라이언스에 있어서,
    상기 패킷 데이터 네트워크에 연결된 네트워크 제어기 서브시스템;
    상기 네트워크 제어기 서브시스템에 연결되어 있으며, 인입(incoming) 호를 검출하고 호 세션을 개시하기 위한 컴퓨터 프로그램을 포함하는 디지털 신호 처리 서브시스템;
    상기 디지털 시호 처리 서브시스템에 연결된 신호 변환 서브시스템; 및
    상기 신호 변환 서브시스템 및 상기 디지털 신호 처리 서브시스템에 연결된 사용자 인터페이스 서브시스템
    을 포함하는 네트워크 어플라이언스.
  2. 제1항에 있어서,
    상기 디지털 신호 처리 서브시스템은 디지털 신호 처리기(DSP) 및 상기 디지털 신호 처리기에 연결된 하나 또는 그 이상의 메모리 장치를 포함하는
    네트워크 어플라이언스.
  3. 제2항에 있어서,
    상기 컴퓨터 프로그램은 호 세션을 검출 및 개시하고 호 세션 제어를 수행하기 위한 세션 개시 프로토콜을 구현하는
    네트워크 어플라이언스.
  4. 제3항에 있어서,
    상기 네트워크 어플라이언스에는 고유의 SIP 어드레스가 연관되고, 상기 어드레스는 상기 메모리 장치 중 적어도 하나의 장치에 저장되는
    네트워크 어플라이언스.
  5. 제4항에 있어서,
    상기 패킷화된 데이터는 오디오 데이터를 포함하고, 상기 사용자 인터페이스 서브시스템은,
    입력장치, 마이크로폰 및 스피커를 구비한 핸드셋; 및
    디스플레이 장치를 포함하는
    네트워크 어플라이언스.
  6. 제5항에 있어서,
    상기 컴퓨터 프로그램은 모니터 기능을 구현하고, 호출자로부터 상기 네트워크 어플라이언스로 향하는 호의 검출시, 호 세션이 자동적으로 개시되고, 상기 호 세션 동안에 상기 마이크로폰은 인에이블되고 상기 스피커는 디스에이블되는
    네트워크 어플라이언스.
  7. 제6항에 있어서,
    적어도 하나의 승인된 호출자의 식별 기준이 상기 메모리 장치 중 적어도 하나의 장치에 저장되고, 상기 디지털 신호 처리기는 호출자로부터 식별 기준을 수신하고, 그 수신된 식별 기준이 적어도 하나의 소정의 승인된 호출자의 상기 저장된 식별 기준 중 적어도 하나의 기준에 부합하는 경우에만 모니터 기능을 활성화시키는
    네트워크 어플라이언스.
  8. 제7항에 있어서,
    상기 식별 기준은 이름, SIP 어드레스 및 패스워드를 포함하는 그룹으로부터 선택되는
    네트워크 어플라이언스.
  9. 제3항에 있어서,
    상기 컴퓨터 프로그램은 호 포워딩(call forwarding) 기능을 포함하고, 적어도 하나의 포워딩 SIP 어드레스가 상기 메모리 장치 중 적어도 하나의 장치에 저장되고, 상기 포워딩 SIP 어드레스 중 적어도 하나의 어드레스는 상기 사용자 인터페이스를 통해 사용자에 의해 선택 가능하며, 호출자로부터 상기 네트워크 어플라이언스로 향하는 호의 검출시, 상기 호는 상기 선택된 포워딩 SIP 어드레스로 리다이렉트되는
    네트워크 어플라이언스.
  10. 제9항에 있어서,
    상기 호 포워딩 기능은 사용자로부터의 입력에 응답하여 소정의 시간 동안 활성화되는
    네트워크 어플라이언스.
  11. 제9항에 있어서,
    상기 네트워크 어플라이언스에 연결되어, 사람의 부재를 검출하기 위한 센서를 더 포함하고, 상기 호 포워딩 기능은 상기 센서로부터의 신호에 응답하여 활성화되는
    네트워크 어플라이언스.
  12. 제1항에 있어서,
    상기 사용자 인터페이스 서브시스템은 출력장치를 포함하고, 상기 컴퓨터 프로그램은 스트리밍 미디어 모드를 구현하고, 여기서, 스트리밍 데이터는 상기 네트워크로부터 수신되어, 상기 출력장치로 제공되는 지각가능한(perceptable) 신호로 변환되는
    네트워크 어플라이언스.
  13. 제12항에 있어서,
    상기 출력장치는 스피커를 포함하고, 진행중인 호 세션이 없을 때, 스트리밍 데이터는 상기 네트워크로부터 수신되어, 상기 스피커에 제공되는 오디오 신호로 변환되는
    네트워크 어플라이언스.
  14. 제13항에 있어서,
    상기 프로그램은 새로운 호 세션이 개시되는 경우에 스트리밍 미디어 모드로부터 복귀되는
    네트워크 어플라이언스.
  15. 제12항에 있어서,
    상기 출력장치는 스피커를 포함하고, 상기 스트리밍 데이터는 상기 네트워크로부터 선택적으로 수신되어, 상기 스피커로 제공되는 오디오 신호로 변환되는
    네트워크 어플라이언스.
  16. 제12항에 있어서,
    상기 스트리밍 데이터가 다른 장치에 의해 지각가능한 신호로 변환될 수 있는 호 세션 동안에, 상기 스트리밍 데이터는 상기 네트워크로부터 수신되어 상기 다른 장치로 선택적으로 포워딩되는
    네트워크 어플라이언스.
  17. 제12항에 있어서,
    상기 출력장치는 비디오 디스플레이를 포함하고, 상기 스트리밍 데이터는 스트리밍 비디오 데이터를 포함하고, 상기 스트리밍 비디오 데이터는 상기 네트워크로부터 선택적으로 수신되어, 상기 디스플레이에 제공되는 비디오 신호로 변환되는
    네트워크 어플라이언스.
  18. 제3항에 있어서,
    상기 사용자 인터페이스 서브시스템은 디스플레이 장치를 포함하고, 상기 디지털 신호 처리기는 호출자의 SIP 어드레스를 검출하고 다수의 호출자 SIP 어드레스를 상기 메모리 장치 중 적어도 하나의 장치에 저장하고, 상기 다수의 호출자 SIP 어드레스는 상기 디스플레이 장치 상에 디스플레이될 수 있으며, 상기 사용자 인터페이스 서브시스템으로부터의 입력에 응답하여 선택가능한
    네트워크 어플라이언스.
  19. 제3항에 있어서,
    상기 사용자 인터페이스 서브시스템은 디스플레이 장치를 포함하고, 상기 디지털 신호 처리기는 다수의 피호출(called) SIP 어드레스를 상기 메모리 장치에 저장하고, 상기 다수의 피호출 SIP 어드레스는 성공적으로 개시되는 호 세션의 어드레스에 대응하고, 상기 디스플레이 장치 상에 디스플레이될 수 있으며, 상기 사용자 인터페이스 서브시스템으로부터의 입력에 응답하여 선택가능한
    네트워크 어플라이언스.
  20. 제1항에 있어서,
    상기 네트워크 제어기 서브시스템은 이더넷 제어기 및 서비스 필터를 포함하는
    네트워크 어플라이언스.
  21. 제2항에 있어서,
    상기 디지털 신호 처리 서브시스템은,
    인입 오디오 데이터를 디지털 인입 오디오 데이터로 변환하기 위한 아날로그-디지털(A/D) 변환기;
    상기 A/D 변환기에 연결되어, 상기 디지털 인입 오디오 데이터를 인코딩하기 위한 인코더;
    상기 디지털 신호 처리 서브시스템에 의해 제공되는 디지털 송출(outgoing) 오디오 데이터를 디코딩하기 위한 디코더;
    상기 디코더에 연결되어, 상기 디지털 송출 오디오 데이터를 송출 오디오 데이터로 변환하기 위한 디지털-아날로그(D/A) 변환기; 및
    핸드셋 및 대응하는 스피커와 마이크로폰에 연결되어, 상기 인입 및 송출 오디오 데이터를 조절하기(conditioning) 위한 오디오 증폭기를 포함하는
    네트워크 어플라이언스.
  22. 제1항에 있어서,
    상기 컴퓨터 프로그램은,
    이더넷 프로토콜 계층;
    상기 이더넷 프로토콜 계층의 상부에 적층되어, 상기 이더넷 프로토콜 계층과 인터페이스하기 위한 인터넷 프로토콜(IP) 계층;
    상기 이더넷 프로토콜 계층의 상부에 적층되어, 상기 이더넷 프로토콜 계층 및 상기 IP 계층과 인터페이스하고, IP 어드레스를 미디어 액세스 제어(MAC) 어드레스로 변환하기 위한 어드레스 도출(resolution) 프로토콜(ARP) 계층;
    상기 ARP 및 IP 계층의 상부에 적층되어, 상기 ARP 및 IP 계층과 인터페이스하고, 통신 시스템 내에서의 애플리케이션 데이터 및 제어 신호의 실시간 전송을 제공하기 위한 사용자 데이터그램 프로토콜(UDP) 계층;
    상기 UDP 계층의 상부에 적층되어, 상기 UDP 계층과 인터페이스하고, 상기 통신 시스템 내에서의 실시간 오디오 데이터 전송을 제공하기 위한 실시간 전송 프로토콜(RTP) 계층;
    상기 UDP 계층의 상부에 적층되어, 상기 UDP 계층과 인터페이스하고, 상기 실시간 오디오 데이터의 등록을 제공하기 위한 하나 또는 그 이상의 제어 프로토콜 계층; 및
    상기 RTP 계층의 상부에 적층되어, 상기 실시간 오디오 데이터를 포맷하기 위한 하나 또는 그 이상의 애플리케이션 프로토콜을 더 포함하는
    네트워크 어플라이언스.
  23. 제22항에 있어서,
    상기 애플리케이션 프로토콜은 RTSP 프로토콜 계층을 포함하는
    네트워크 어플라이언스.
  24. 제1항에 있어서,
    적어도 하나의 센서 인터페이스 회로를 더 포함하고,
    상기 센서 인터페이스 회로는 상기 디지털 신호 처리 서브시스템에 동작가능하게 연결되고, 상기 네트워크 어플라이언스를 원격 센서에 동작가능하게 연결하기 위한 포트를 포함하는
    네트워크 어플라이언스.
  25. 제24항에 있어서,
    상기 디지털 신호 처리 서브시스템은 소정의 시간 간격으로 상기 센서 인터페이스 회로로부터 데이터를 획득하고, 그 획득된 데이터를 네트워크 패킷 데이터로서 포맷하고, 상기 데이터를 네트워크 상에서 소정의 목적지로 전송하는
    네트워크 어플라이언스.
  26. 제24항에 있어서,
    상기 디지털 신호 처리 서브시스템은 실질적으로 연속적인 방식으로 상기 센서 인터페이스 회로로부터 데이터를 획득하고, 그 획득된 데이터를 네트워크 패킷 데이터로서 포맷하고, 상기 획득된 데이터가 적어도 하나의 소정의 기준을 충족시키는 경우에 상기 데이터를 네트워크로 전송하는
    네트워크 어플라이언스.
  27. 제24항에 있어서,
    상기 센서 인터페이스 회로는 인터럽트 서비스 요구 입력을 포함하고, 상기 디지털 신호 처리 서브시스템은 상기 인터럽트 서비스 요구 입력 상의 신호에 응답하여 상기 센서 인터페이스 회로로부터 데이터를 획득하고, 그 획득된 데이터를 네트워크 패킷 데이터로서 포맷하고, 상기 데이터를 네트워크 상에서 소정의 목적지로 전송하는
    네트워크 어플라이언스.
  28. 제24항에 있어서,
    상기 컴퓨터 프로그램은 상기 센서 인터페이스 회로에 인가되는 신호에 응답하여 선택적으로 인에이블되는 호 포워딩 기능을 포함하는
    네트워크 어플라이언스.
  29. 제28항에 있어서,
    상기 센서 인터페이스 회로에 연결되어 사람의 존재를 검출하고, 상기 호 포워딩 기능을 선택적으로 인에이블시키기 위한 신호를 제공하는 센서
    를 더 포함하는 네트워크 어플라이언스.
  30. 패킷 데이터 네트워크 시스템에 있어서,
    패킷화된 데이터를 수신하고 및 생성하기 위한 적어도 하나의 데이터 네트워크 어플라이언스
    를 포함하고,
    상기 데이터 네트워크 어플라이언스는,
    상기 패킷 데이터 네트워크에 연결된 네트워크 제어기 서브시스템;
    상기 네트워크 제어기 서브시스템에 연결되어 있으며, 인입 호를 검출하고 호 세션을 개시하기 위한 컴퓨터 프로그램을 포함하는 디지털 신호 처리 서브시스템;
    상기 디지털 시호 처리 서브시스템에 연결된 신호 변환 서브시스템;
    상기 신호 변환 서브시스템 및 상기 디지털 신호 처리 서브시스템에 연결된 사용자 인터페이스 서브시스템;
    상기 데이터 네트워크 어플라이언스에 연결되어, 상기 데이터 네트워크 어플라이언스를 네트워킹하기 위한 근거리 통신망; 및
    상기 근거리 통신망에 연결되어, 종래의 전화망으로부터의 음성 데이터를 수신하고, 상기 데이터 네트워크 어플라이언스로/로부터 패킷화된 음성 데이터를 제공하고 수신하기 위한 게이트웨이를 포함하는
    패킷 데이터 네트워크 시스템.
  31. 패킷 데이터 전화 시스템에 있어서,
    패킷 데이터 네트워크;
    음성 데이터를 포함하는 패킷화된 데이터를 수신하고 생성하기 위한 적어도2개의 데이터 네트워크 전화 노드 - 여기서, 상기 각각의 노드는 고유의 네트워크 어드레스를 가지며, 상기 전화 노드들은 상기 패킷 데이터 네트워크에 동작가능하게 연결되고, 상기 어드레스를 이용하여 각각의 다른 전화 노드에 의해 직접 액세스가능함 - ; 및
    상기 네트워크에 동작가능하게 연결되고 상기 네트워크 상의 각각의 노드에 의해 액세스가능한 리다이렉트(redirect) 서버 - 상기 서버는 상기 네트워크 상의 적어도 하나의 노드의 고유의 네트워크 어드레스를 적어도 하나의 파라미터에 연관시키는 적어도 하나의 데이터베이스를 구비함 -
    를 포함하는 패킷 데이터 전화 시스템.
  32. 제31항에 있어서,
    상기 고유의 네트워크 어드레스는 SIP 어드레스인
    패킷 데이터 전화 시스템.
  33. 제31항에 있어서,
    상기 적어도 하나의 파라미터는 등록된 전화 노드의 상기 고유의 네트워크 어드레스와 관련된 리다이렉션 네트워크 어드레스이고, 상기 서버는 상기 등록된 전화 노드와의 호를 개시하기 위해 상기 서버에 액세스하는 노드로 상기 리다이렉션 네트워크 어드레스를 제공하는
    패킷 데이터 전화 시스템.
  34. 제31항에 있어서,
    상기 적어도 하나의 파라미터는 등록된 전화 노드의 상기 고유의 네트워크 어드레스와 관련된 다수의 리다이렉션 네트워크 어드레스이고, 상기 서버는 상기 등록된 전화 노드와의 호를 개시하기 위해 상기 서버에 액세스하는 노드에 응답하여 상기 각각의 리다이렉션 네트워크 어드레스로 호 요구를 방송하고, 상기 서버는 상기 서버에 액세스하는 노드와 상기 방송에 응답하는 제1 리다이렉션 네트워크 어드레스 노드 사이에 호 세션을 개시하는
    패킷 데이터 전화 시스템.
  35. 제31항에 있어서,
    상기 적어도 하나의 파라미터는 등록된 전화 노드의 상기 고유의 네트워크 어드레스와 관련된 다수의 리다이렉션 네트워크 어드레스이고, 상기 데이터베이스는 적어도 제2 파라미터를 더 포함하고, 상기 서버는 상기 제2 파라미터에 따라 상기 등록된 전화 노드와의 호를 개시하기 위해 상기 서버에 액세스하는 노드로 선택된 리다이렉션 네트워크 어드레스를 제공하는
    패킷 데이터 전화 시스템.
  36. 제35항에 있어서,
    상기 제2 파라미터는 요일(the day of week)인
    패킷 데이터 전화 시스템.
  37. 제35항에 있어서,
    상기 제2 파라미터는 시각(the time of day)인
    패킷 데이터 전화 시스템.
  38. 제35항에 있어서,
    상기 제2 파라미터는 호출측의 SIP 어드레스인
    패킷 데이터 전화 시스템.
  39. 제31항에 있어서,
    상기 제1 파라미터는 노드의 이름 및 물리적 어드레스인
    패킷 데이터 전화 시스템.
  40. 제31항에 있어서,
    상기 전화 노드 중 적어도 하나는 제1항에 따른 네트워크 어플라이언스인
    패킷 데이터 전화 시스템.
  41. 패킷-기반 통신 시스템에 사용하기 위한 통신 프로토콜에 있어서,
    이더넷 프로토콜 계층;
    상기 이더넷 프로토콜 계층의 상부에 적층되어, 상기 이더넷 프로토콜 계층과 인터페이스하기 위한 인터넷 프로토콜(IP) 계층;
    상기 이더넷 프로토콜 계층의 상부에 적층되어, 상기 이더넷 프로토콜 계층 및 상기 IP 계층과 인터페이스하고, IP 어드레스를 미디어 액세스 제어(MAC) 어드레스로 변환하기 위한 어드레스 도출(resolution) 프로토콜(ARP) 계층;
    상기 ARP 및 IP 계층의 상부에 적층되어, 상기 ARP 및 IP 계층과 인터페이스하고, 통신 시스템 내에서의 애플리케이션 데이터 및 제어 신호의 실시간 전송을 제공하기 위한 사용자 데이터그램 프로토콜(UDP) 계층;
    상기 UDP 계층의 상부에 적층되어, 상기 UDP 계층과 인터페이스하고, 상기 통신 시스템 내에서의 실시간 오디오 데이터 전송을 제공하기 위한 실시간 전송 프로토콜(RTP) 계층;
    상기 UDP 계층의 상부에 적층되어, 상기 UDP 계층과 인터페이스하고, 상기 실시간 오디오 데이터의 등록을 제공하기 위한 하나 또는 그 이상의 제어 프로토콜 계층; 및
    상기 RTP 계층의 상부에 적층되어, 상기 실시간 오디오 데이터를 포맷하기 위한 하나 또는 그 이상의 애플리케이션 프로토콜을 더 포함하는
    통신 프로토콜.
  42. 제41항에 있어서,
    상기 애플리케이션 프로토콜은 RTSP 프로토콜 계층을 포함하는
    통신 프로토콜.
  43. 네트워크 어플라이언스를 동작시키기 위한 컴퓨터 프로그램에 있어서,
    인터럽트 서비스 및 저-레벨 기능을 제공하기 위한 제1 계층의 명령어;
    프로세스 레벨 기능을 수행하기 위한 명령어 및 운영체제를 포함하는 제2 계층의 명령어; 및
    호 세션을 검출 및 개시하고 호 세션 제어를 수행하기 위한 세션 개시 프로토콜을 포함하며, 애플리케이션-특유의 태스크 및 고-레벨 기능을 수행하기 위한제3 계층의 명령어
    를 포함하는 컴퓨터 프로그램.
  44. 제43항에 있어서,
    상기 컴퓨터 프로그램은 모니터 기능을 구현하고, 호출자로부터 상기 네트워크 어플라이언스로 향하는 호의 검출시, 상기 호 동안에 마이크로폰은 자동적으로 인에이블되고 스피커는 자동적으로 디스에이블되는
    컴퓨터 프로그램.
  45. 제44항에 있어서,
    적어도 하나의 승인된 호출자의 식별 기준이 상기 장치에 저장되고, 호출자로부터 식별 기준을 수신되고, 상기 프로그램은 상기 호출자가 소정의 승인된 호출자인 경우에만 모니터 기능을 활성화시키는
    컴퓨터 프로그램.
  46. 제45항에 있어서,
    상기 식별 기준은 이름, SIP 어드레스 및 패스워드를 포함하는 그룹으로부터선택되는
    컴퓨터 프로그램.
  47. 제43항에 있어서,
    호 포워딩(call forwarding) 기능이 제공되고, 적어도 하나의 포워딩 SIP 어드레스가 상기 장치에 저장되고, 상기 포워딩 SIP 어드레스 중 적어도 하나의 어드레스는 사용자에 의해 선택 가능하며, 호출자로부터 상기 장치로 향하는 호의 검출시, 상기 호는 상기 선택된 포워딩 SIP 어드레스로 리다이렉트되는
    컴퓨터 프로그램.
  48. 제47항에 있어서,
    상기 호 포워딩 기능은 사용자로부터의 입력에 응답하여 소정의 시간 동안 활성화되는
    컴퓨터 프로그램.
  49. 제47항에 있어서,
    사람의 부재를 검출하기 위한 센서로부터의 신호가 하나의 입력으로서 상기프로그램에 제공되고, 상기 호 포워딩 기능은 상기 신호에 응답하여 선택적으로 활성화되는
    컴퓨터 프로그램.
  50. 제43항에 있어서,
    상기 컴퓨터 프로그램은 스트리밍 미디어 모드를 구현하고, 여기서, 스트리밍 데이터는 상기 네트워크로부터 수신되어, 상기 네트워크 장치에 의해 지각가능한 신호로 변환되는
    컴퓨터 프로그램.
  51. 제50항에 있어서,
    진행중인 호 세션이 없을 때, 스트리밍 데이터는 상기 네트워크로부터 수신되어, 상기 장치로 제공되는 오디오 신호로 변환되는
    컴퓨터 프로그램.
  52. 제51항에 있어서,
    상기 프로그램은 새로운 호 세션이 개시되는 경우에 스트리밍 미디어 모드로부터 복귀되는
    컴퓨터 프로그램.
  53. 제50항에 있어서,
    상기 스트리밍 데이터가 다른 장치에 의해 지각가능한 신호로 변환될 수 있는 호 세션 동안에, 상기 스트리밍 데이터는 상기 네트워크로부터 수신되어 상기 다른 장치로 선택적으로 포워딩되는
    컴퓨터 프로그램.
  54. 제50항에 있어서,
    상기 네트워크 장치는 비디오 디스플레이를 포함하고, 상기 스트리밍 데이터는 스트리밍 비디오 데이터를 포함하고, 상기 스트리밍 비디오 데이터는 상기 네트워크로부터 선택적으로 수신되어, 상기 디스플레이에 제공되는 비디오 신호로 변환되는
    컴퓨터 프로그램.
  55. 제43항에 있어서,
    상기 프로그램은 호출자의 SIP 어드레스를 검출하고 다수의 호출자 SIP 어드레스를 상기 네트워크 장치에 저장하고, 상기 다수의 호출자 SIP 어드레스는 상기 네트워크 장치 상에 디스플레이될 수 있으며, 사용자로부터의 입력에 응답하여 선택가능한
    컴퓨터 프로그램.
  56. 제43항에 있어서,
    다수의 피호출(called) SIP 어드레스가 저장되고, 상기 피호출 SIP 어드레스는 성공적으로 개시되는 호 세션의 어드레스에 대응하고, 상기 디스플레이 장치 상에 디스플레이될 수 있으며, 사용자 인터페이스로부터의 입력에 응답하여 선택가능한
    컴퓨터 프로그램.
KR1020017015821A 1999-06-08 2000-06-08 인터넷/인트라넷 전화통신을 위한 네트워크 전화통신어플라이언스 및 시스템 KR100670006B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13883299P 1999-06-08 1999-06-08
US60/138,832 1999-06-08

Publications (2)

Publication Number Publication Date
KR20020032431A true KR20020032431A (ko) 2002-05-03
KR100670006B1 KR100670006B1 (ko) 2007-01-18

Family

ID=22483871

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017015821A KR100670006B1 (ko) 1999-06-08 2000-06-08 인터넷/인트라넷 전화통신을 위한 네트워크 전화통신어플라이언스 및 시스템

Country Status (10)

Country Link
US (4) US7610384B1 (ko)
EP (1) EP1186144B1 (ko)
JP (1) JP4999244B2 (ko)
KR (1) KR100670006B1 (ko)
AU (1) AU6120900A (ko)
CA (1) CA2376214A1 (ko)
ES (1) ES2441203T3 (ko)
IL (2) IL146885A0 (ko)
MX (1) MXPA01012622A (ko)
WO (1) WO2000076158A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772172B1 (ko) * 2005-11-21 2007-10-31 한국전자통신연구원 실시간 멀티캐스트 패킷 스트림을 위한 이더넷 기반 스위칭방법 및 장치, 이를 구비한 이더넷 기반 스위칭 시스템

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7126942B2 (en) 1997-10-21 2006-10-24 Intel Corporation Apparatus and method for integrated computer controlled call processing in packet switched telephone networks
US6876633B2 (en) * 1997-10-21 2005-04-05 Intel Corporation Apparatus and method for computer telephone integration in packet switched telephone networks
US6201805B1 (en) 1997-10-21 2001-03-13 Dialogic Corporation Apparatus and method for computer telephone integration in packet switched telephone networks
US6901068B1 (en) 1997-10-21 2005-05-31 Intel Corporation Apparatus and method for computer controlled call processing applications in packet switched telephone networks
US7068648B2 (en) 1997-10-21 2006-06-27 Intel Corporation Apparatus and method for computer controlled call processing and information provision
US6856618B2 (en) 1997-10-21 2005-02-15 Intel Corporation Apparatus and method for computer telephone integration in packet switched telephone networks
US7072308B2 (en) 1997-10-21 2006-07-04 Intel Corporation Apparatus and method for computer controlled call processing applications in packet switched telephone networks
US6958994B2 (en) 1998-09-24 2005-10-25 Genesys Telecommunications Laboratories, Inc. Call transfer using session initiation protocol (SIP)
US7120141B2 (en) 1998-09-24 2006-10-10 Genesys Telecommunications Laboratories, Inc. Integrating SIP control messaging into existing communication center routing infrastructure
US20070121601A1 (en) * 1998-09-24 2007-05-31 Genesys Telecommunications Laboratories, Inc Integrating SIP Control Messaging into Existing Communication Center Routing Infrastructure
CA2376214A1 (en) * 1999-06-08 2000-12-14 The Trustees Of Columbia University In The City Of New York Network telephony appliance and system for inter/intranet telephony
US9607041B2 (en) 1999-07-15 2017-03-28 Gula Consulting Limited Liability Company System and method for efficiently accessing internet resources
US20060121938A1 (en) * 1999-08-12 2006-06-08 Hawkins Jeffrey C Integrated handheld computing and telephony device
US7286521B1 (en) * 2000-07-21 2007-10-23 Tellme Networks, Inc. Localized voice over internet protocol communication
CN101695058A (zh) 2000-08-11 2010-04-14 纽约市哥伦比亚大学托管会 在数据网络通话系统中提供通信服务的方法
AU2002235472A1 (en) * 2001-01-26 2002-08-06 Netbotz, Inc. Method and system for a set of network appliances which can be connected to provide enhanced collaboration, scalability, and reliability
US7379543B2 (en) 2001-03-09 2008-05-27 Ayman, Llc. Universal point of contact identifier system and method
US7002987B2 (en) * 2001-06-07 2006-02-21 Motorola, Inc. Common services and applications agent
US7746848B2 (en) 2002-12-05 2010-06-29 Resource Consortium Limited Virtual PBX based on feature server modules
WO2004057846A1 (en) * 2002-12-20 2004-07-08 Nimcat Networks Inc. Voice mail system for packet switched networks
DE10301262A1 (de) * 2003-01-15 2004-08-05 Siemens Ag Verfahren und Anordnung zum Aufbau einer Kommunikationsverbindung mittels eines Übertragungsnetzes
US7751546B2 (en) * 2003-01-22 2010-07-06 Avaya Canada Corp. Call transfer system, method and network devices
US7394345B1 (en) * 2003-12-08 2008-07-01 At&T Corp. Arrangement for indicating presence of individual
HUP0400899A2 (en) * 2004-04-30 2006-02-28 Zoltan Kuthi Voice controlled call divert
US7881446B1 (en) 2004-09-03 2011-02-01 Confinement Telephony Technology, Llc Telephony system and method with enhanced validation
US7680256B2 (en) 2005-08-18 2010-03-16 One Number Corporation Contact number encapsulation system
US20070115926A1 (en) * 2005-10-27 2007-05-24 3Com Corporation System and method for receiving a user message at a packet-network telephone
WO2007129942A1 (en) * 2006-05-05 2007-11-15 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for a virtual meeting
US20080259918A1 (en) 2007-04-19 2008-10-23 Craig Elliott Walker Method and apparatus for managing telephone calls
EP2147585B1 (en) 2007-05-15 2016-11-02 Schneider Electric IT Corporation Method and system for managing facility power and cooling
US8290133B2 (en) 2007-05-31 2012-10-16 Centurylink Intellectual Property Llc System and method for remote home monitoring and intercom communication
US8290138B2 (en) * 2007-07-20 2012-10-16 Ipc Systems, Inc. Systems, methods, apparatus and computer program products for sharing resources between turret systems and PBXS using SIP
WO2009029296A1 (en) 2007-08-31 2009-03-05 At & T Mobility Ii Llc Enhanced messaging with language translation feature
US8321557B2 (en) * 2007-10-10 2012-11-27 Sony Mobile Communications Ab Web feeds over SIP
US8411669B2 (en) * 2008-04-18 2013-04-02 Cisco Technology, Inc. Distributed transcoding on IP phones with idle DSP channels
US8402267B1 (en) 2009-03-18 2013-03-19 University Of Louisville Research Foundation, Inc. Security enhanced network device and method for secure operation of same
US8868907B2 (en) 2009-03-18 2014-10-21 University Of Louisville Research Foundation, Inc. Device, method, and system for processing communications for secure operation of industrial control system field devices
EP2438749A1 (en) * 2009-06-01 2012-04-11 Telefonaktiebolaget LM Ericsson (publ) Graphical user- interface for terminals with visual call progress indicator
DE102009042354C5 (de) * 2009-09-23 2017-07-13 Phoenix Contact Gmbh & Co. Kg Verfahren und Vorrichtung zur sicherheitsgerichteten Kommunikation im Kommunikations-Netzwerk einer Automatisierungs-Anlage
US8804513B2 (en) 2010-02-25 2014-08-12 The Trustees Of Columbia University In The City Of New York Methods and systems for controlling SIP overload
US9246952B2 (en) * 2010-06-30 2016-01-26 International Business Machines Corporation Controlling telephone call processing using global signaling codes
US9824334B2 (en) 2011-07-11 2017-11-21 ClearCare, Inc. System for updating a calendar or task status in home care scheduling via telephony
US9471145B2 (en) 2011-01-06 2016-10-18 Blackberry Limited Electronic device and method of displaying information in response to a gesture
US9423878B2 (en) 2011-01-06 2016-08-23 Blackberry Limited Electronic device and method of displaying information in response to a gesture
US9477311B2 (en) 2011-01-06 2016-10-25 Blackberry Limited Electronic device and method of displaying information in response to a gesture
US9766718B2 (en) 2011-02-28 2017-09-19 Blackberry Limited Electronic device and method of displaying information in response to input
US9015641B2 (en) 2011-01-06 2015-04-21 Blackberry Limited Electronic device and method of providing visual notification of a received communication
US9465440B2 (en) 2011-01-06 2016-10-11 Blackberry Limited Electronic device and method of displaying information in response to a gesture
US9213421B2 (en) 2011-02-28 2015-12-15 Blackberry Limited Electronic device and method of displaying information in response to detecting a gesture
CN104137105B (zh) 2011-12-22 2017-07-11 施耐德电气It公司 关于瞬时事件对数据中心中的温度的影响分析
US9058168B2 (en) 2012-01-23 2015-06-16 Blackberry Limited Electronic device and method of controlling a display
US9619038B2 (en) 2012-01-23 2017-04-11 Blackberry Limited Electronic device and method of displaying a cover image and an application image from a low power condition
US9106673B2 (en) 2012-12-28 2015-08-11 Vonage Network, Llc Systems and methods for connecting telephony communications
US9690476B2 (en) 2013-03-14 2017-06-27 Blackberry Limited Electronic device and method of displaying information in response to a gesture
US9507495B2 (en) 2013-04-03 2016-11-29 Blackberry Limited Electronic device and method of displaying information in response to a gesture
DE102013219543A1 (de) * 2013-09-27 2015-04-02 Siemens Aktiengesellschaft Kommunikationsgerät und Verfahren zur Kommunikation zwischen einem Kommunikationsgerät und einer zentralen Einrichtung
US10078635B2 (en) * 2013-11-22 2018-09-18 Genband Us Llc Systems and methods for customizing SIP message processing
US9912783B2 (en) 2016-01-29 2018-03-06 Veritas Technologies Llc Securing internal services in a distributed environment
US11029998B2 (en) * 2016-06-03 2021-06-08 International Business Machines Corporation Grouping of tasks for distribution among processing entities
US11230495B2 (en) 2017-04-25 2022-01-25 Gcp Applied Technologies Inc. Agents for enhancing cement strength
US11601827B2 (en) * 2019-12-05 2023-03-07 Cubic Corporation Radio gateway tranmission failure notification
US11425247B1 (en) * 2021-02-11 2022-08-23 Verizon Patent And Licensing Inc. Methods and systems for reducing resource usage for call originations

Family Cites Families (153)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6165555A (ja) 1984-09-05 1986-04-04 Mitsubishi Electric Corp ホームコントロールシステムおよびインターホンシステム
JPH0754933B2 (ja) * 1986-08-14 1995-06-07 日本電気株式会社 パケツトネツトワ−クにおける回線交換方法及び装置
JPS63286044A (ja) 1987-05-19 1988-11-22 Tamura Electric Works Ltd 機能電話機
JPH0368063A (ja) 1989-08-07 1991-03-25 Seiko Epson Corp 文書作成装置
JPH0521914A (ja) 1991-07-17 1993-01-29 Tatsuta Electric Wire & Cable Co Ltd フレキシブルプリント回路基板
JPH05207023A (ja) * 1992-01-24 1993-08-13 Hitachi Ltd 大量データ伝送方法
US6018771A (en) 1992-11-25 2000-01-25 Digital Equipment Corporation Dynamic assignment of multicast network addresses
JPH07283815A (ja) 1994-04-08 1995-10-27 Hitachi Ltd 音声通信システム
US5675507A (en) 1995-04-28 1997-10-07 Bobo, Ii; Charles R. Message storage and delivery system
US5757798A (en) * 1994-07-21 1998-05-26 Hitachi, Ltd. Image information distribution system
US5742905A (en) * 1994-09-19 1998-04-21 Bell Communications Research, Inc. Personal communications internetworking
US5647002A (en) 1995-09-01 1997-07-08 Lucent Technologies Inc. Synchronization of mailboxes of different types
US6009469A (en) * 1995-09-25 1999-12-28 Netspeak Corporation Graphic user interface for internet telephony application
US6108704A (en) * 1995-09-25 2000-08-22 Netspeak Corporation Point-to-point internet protocol
JPH09168063A (ja) * 1995-12-18 1997-06-24 Sony Corp 通話システムの端末装置
EP0885530B1 (en) * 1996-02-21 2001-09-12 International Business Machines Corporation Distributed architecture for services in a telephony system
GB2310970A (en) 1996-03-05 1997-09-10 Ibm Voice mail on the Internet
US6125113A (en) * 1996-04-18 2000-09-26 Bell Atlantic Network Services, Inc. Internet telephone service
US5892535A (en) * 1996-05-08 1999-04-06 Digital Video Systems, Inc. Flexible, configurable, hierarchical system for distributing programming
US5778187A (en) * 1996-05-09 1998-07-07 Netcast Communications Corp. Multicasting method and apparatus
US6085101A (en) * 1996-05-17 2000-07-04 Telcordia Technologies, Inc. Communications network having a multicast capability
US5748736A (en) * 1996-06-14 1998-05-05 Mittra; Suvo System and method for secure group communications via multicast or broadcast
AU4353097A (en) 1996-09-12 1998-04-02 Dialnet, Inc. Dedicated system and process for distributed communication on a packet-switched network
US6101180A (en) * 1996-11-12 2000-08-08 Starguide Digital Networks, Inc. High bandwidth broadcast system having localized multicast access to broadcast content
AP9901547A0 (en) * 1996-11-18 1999-06-30 Mci Worldwide Inc A communication system architecture.
US5867495A (en) 1996-11-18 1999-02-02 Mci Communications Corporations System, method and article of manufacture for communications utilizing calling, plans in a hybrid network
JP3085216B2 (ja) * 1996-11-28 2000-09-04 日本電気株式会社 電話通信端末及びそれを使用した通信方法
FR2756998A1 (fr) 1996-12-06 1998-06-12 Philips Electronics Nv Dispositif de telecommunication comportant une base et au moins un appareil mobile muni d'un mode d'interphonie particulier, et procede d'initialisation de ce mode
US6011579A (en) 1996-12-10 2000-01-04 Motorola, Inc. Apparatus, method and system for wireline audio and video conferencing and telephony, with network interactivity
US5903559A (en) * 1996-12-20 1999-05-11 Nec Usa, Inc. Method for internet protocol switching over fast ATM cell transport
US5909183A (en) * 1996-12-26 1999-06-01 Motorola, Inc. Interactive appliance remote controller, system and method
GB2322767B (en) * 1997-03-01 2001-05-16 Motorola Ltd A method of transmitting call information
US6144671A (en) * 1997-03-04 2000-11-07 Nortel Networks Corporation Call redirection methods in a packet based communications network
US6075796A (en) 1997-03-17 2000-06-13 At&T Methods and apparatus for providing improved quality of packet transmission in applications such as internet telephony
US5893091A (en) * 1997-04-11 1999-04-06 Immediata Corporation Multicasting with key words
CA2286338A1 (en) 1997-04-22 1998-10-29 Telcordia Technologies, Inc. Apparatus and method for internet telephony routing
US5990883A (en) * 1997-04-28 1999-11-23 Microsoft Corporation Unified presentation of programming from different physical sources
US6108706A (en) * 1997-06-09 2000-08-22 Microsoft Corporation Transmission announcement system and method for announcing upcoming data transmissions over a broadcast network
JPH113072A (ja) 1997-06-12 1999-01-06 Sony Corp 情報ネットワークシステム及び通信端末
JP3263339B2 (ja) 1997-07-18 2002-03-04 日本電信電話株式会社 インターネット・電話網統合利用方法及びそのシステム
US6243376B1 (en) * 1997-08-13 2001-06-05 Mediaring.Com Ltd. Method and apparatus for making a phone call connection over the internet connection
JP3844026B2 (ja) 1997-08-15 2006-11-08 ソニー株式会社 情報通信方法、情報通信システム、通信端末およびサーバ装置
DE69836070T2 (de) * 1997-08-19 2007-01-11 Yugen Kaisha Ls Net Verfahren zur kommunikation mit teilnehmergeräten über ein globales kommunikationsnetz
US6199068B1 (en) * 1997-09-11 2001-03-06 Abb Power T&D Company Inc. Mapping interface for a distributed server to translate between dissimilar file formats
US6088659A (en) * 1997-09-11 2000-07-11 Abb Power T&D Company Inc. Automated meter reading system
US6608832B2 (en) * 1997-09-25 2003-08-19 Telefonaktiebolaget Lm Ericsson Common access between a mobile communications network and an external network with selectable packet-switched and circuit-switched and circuit-switched services
JPH11112677A (ja) * 1997-09-30 1999-04-23 Canon Inc 通話端末
US6337858B1 (en) 1997-10-10 2002-01-08 Nortel Networks Limited Method and apparatus for originating voice calls from a data network
US6034621A (en) * 1997-11-18 2000-03-07 Lucent Technologies, Inc. Wireless remote synchronization of data between PC and PDA
US6671276B1 (en) 1997-11-18 2003-12-30 Nec Corporation Switch based network architecture for IP multicast and integrated services
US6690663B1 (en) 1998-01-15 2004-02-10 Mci Communications Corporation Internet telephony system with automated call answering
US6529501B1 (en) 1998-05-29 2003-03-04 3Com Corporation Method and apparatus for internet telephony
US6763020B1 (en) 1998-06-24 2004-07-13 Innomedia, Inc. Call establishment method for dial-up internet telephony appliances
US6360265B1 (en) * 1998-07-08 2002-03-19 Lucent Technologies Inc. Arrangement of delivering internet protocol datagrams for multimedia services to the same server
US6707797B1 (en) * 1998-10-23 2004-03-16 Verizon Corporate Services Group Inc. Multi-line telephony via network gateways
US6275574B1 (en) * 1998-12-22 2001-08-14 Cisco Technology, Inc. Dial plan mapper
US7216348B1 (en) * 1999-01-05 2007-05-08 Net2Phone, Inc. Method and apparatus for dynamically balancing call flow workloads in a telecommunications system
US6741575B1 (en) * 1999-02-26 2004-05-25 Hughes Electronics Corporation Apparatus and method for efficient delivery of multicast data over personal access communications system (PACS)
US6493324B1 (en) * 1999-03-29 2002-12-10 Worldcom, Inc. Multimedia interface for IP telephony
US6842505B1 (en) * 1999-04-05 2005-01-11 Estech Systems, Inc. Communications system enhanced with human presence sensing capabilities
US6564261B1 (en) * 1999-05-10 2003-05-13 Telefonaktiebolaget Lm Ericsson (Publ) Distributed system to intelligently establish sessions between anonymous users over various networks
US7006616B1 (en) * 1999-05-21 2006-02-28 Terayon Communication Systems, Inc. Teleconferencing bridge with EdgePoint mixing
US6614805B1 (en) 1999-05-27 2003-09-02 Nortel Networks Limited Method and apparatus for media access control for packet transmission over a buffer insertion ring
CA2376214A1 (en) 1999-06-08 2000-12-14 The Trustees Of Columbia University In The City Of New York Network telephony appliance and system for inter/intranet telephony
US6842447B1 (en) 1999-06-14 2005-01-11 Mci, Inc. Internet protocol transport of PSTN-to-PSTN telephony services
AU5879800A (en) * 1999-06-18 2001-01-09 Trustees Of Columbia University In The City Of New York, The System and method for receiving over a network a broadcast from a broadcast source
US6832254B1 (en) * 1999-08-23 2004-12-14 Nortel Networks Limited Method and apparatus for associating an end-to-end call identifier with a connection in a multimedia packet network
US6782412B2 (en) * 1999-08-24 2004-08-24 Verizon Laboratories Inc. Systems and methods for providing unified multimedia communication services
US6636596B1 (en) * 1999-09-24 2003-10-21 Worldcom, Inc. Method of and system for providing intelligent network control services in IP telephony
US6795444B1 (en) * 1999-10-26 2004-09-21 Telefonaktiebolaget L M Ericsson (Publ) System and method for providing wireless telephony over a packet-switched network
US6434143B1 (en) 1999-11-08 2002-08-13 Mci Worldcom, Inc. Internet protocol telephony voice/video message deposit and retrieval
US6701366B1 (en) * 1999-11-09 2004-03-02 Nortel Networks Corporation Providing communications services
EP1102498B1 (en) * 1999-11-09 2004-02-25 Nortel Networks Corporation Telephony services in a communications network
US6625258B1 (en) * 1999-12-27 2003-09-23 Nortel Networks Ltd System and method for providing unified communication services support
US6826173B1 (en) * 1999-12-30 2004-11-30 At&T Corp. Enhanced subscriber IP alerting
US7069432B1 (en) * 2000-01-04 2006-06-27 Cisco Technology, Inc. System and method for providing security in a telecommunication network
US6678735B1 (en) * 2000-01-26 2004-01-13 Nortel Networks Limited Method and apparatus for a sip client manager
US6839323B1 (en) * 2000-05-15 2005-01-04 Telefonaktiebolaget Lm Ericsson (Publ) Method of monitoring calls in an internet protocol (IP)-based network
US6850496B1 (en) * 2000-06-09 2005-02-01 Cisco Technology, Inc. Virtual conference room for voice conferencing
US7286521B1 (en) * 2000-07-21 2007-10-23 Tellme Networks, Inc. Localized voice over internet protocol communication
US7088720B1 (en) * 2000-08-07 2006-08-08 Sbc Technology Resources, Inc. Multiservice use of network connection capability under user-to-network interface signaling
CN101695058A (zh) * 2000-08-11 2010-04-14 纽约市哥伦比亚大学托管会 在数据网络通话系统中提供通信服务的方法
US6674852B1 (en) * 2000-08-31 2004-01-06 Cisco Technology, Inc. Call management implemented using call routing engine
US6934756B2 (en) * 2000-11-01 2005-08-23 International Business Machines Corporation Conversational networking via transport, coding and control conversational protocols
US7072303B2 (en) * 2000-12-11 2006-07-04 Acme Packet, Inc. System and method for assisting in controlling real-time transport protocol flow through multiple networks
US6865681B2 (en) * 2000-12-29 2005-03-08 Nokia Mobile Phones Ltd. VoIP terminal security module, SIP stack with security manager, system and security methods
WO2002069608A2 (en) * 2001-01-16 2002-09-06 Akamai Technologies, Inc. Using virtual domain name service (dns) zones for enterprise content delivery
US6728358B2 (en) * 2001-01-25 2004-04-27 Paltalk Holdings, Inc. Efficient buffer allocation for current and predicted active speakers in voice conferencing systems
US20020103850A1 (en) * 2001-01-31 2002-08-01 Moyer Stanley L. System and method for out-sourcing the functionality of session initiation protocol (SIP) user agents to proxies
WO2002063828A1 (en) * 2001-02-06 2002-08-15 Polycom Israel Ltd. Control unit for multipoint multimedia/audio conference
US7266091B2 (en) * 2001-02-28 2007-09-04 The Trustees Of Columbia University In City Of New York System and method for conferencing in inter/intranet telephony
US6898188B1 (en) * 2001-04-19 2005-05-24 3Com Corporation Gatekeeper simulator in a LAN telephony system
GB2370448B (en) * 2001-04-28 2003-03-26 Ericsson Telefon Ab L M Cost control in a SIP based network
US20040255039A1 (en) * 2001-05-10 2004-12-16 Bernard Honeisen Method, system and network element device for controlling sessions between terminals
US20040044791A1 (en) * 2001-05-22 2004-03-04 Pouzzner Daniel G. Internationalized domain name system with iterative conversion
US20020049817A1 (en) * 2001-07-12 2002-04-25 Eatamar Drory Storageless system and method for unified messaging on existing mail accounts via standard internet mail protocols
US6970909B2 (en) * 2001-10-11 2005-11-29 The Trustees Of Columbia University In The City Of New York Multi-protocol data communication system supporting wireless telephony and content delivery
US7016343B1 (en) * 2001-12-28 2006-03-21 Cisco Technology, Inc. PSTN call routing control features applied to a VoIP
US7640326B2 (en) * 2002-04-03 2009-12-29 Cisco Technology, Inc. Relaying of message waiting indications to support distributed telephony networks
US7139797B1 (en) * 2002-04-10 2006-11-21 Nortel Networks Limited Presence information based on media activity
US8255501B2 (en) * 2002-05-15 2012-08-28 Motorola Mobility Llc Establishing an IP session between a host using SIP and a device without an IP address
KR100453350B1 (ko) * 2002-06-17 2004-10-15 엘지전자 주식회사 차세대 개방형 네트워크에서 비아이씨씨 프로토콜을이용한 라우팅 장치 및 방법
KR100914949B1 (ko) * 2002-07-04 2009-08-31 스파이더 네비게이션즈 엘.엘.씨. 패킷 교환 회의 통화 관리
US7167912B1 (en) * 2002-08-09 2007-01-23 Cisco Technology, Inc. Method and apparatus for detecting failures in network components
US7826868B2 (en) * 2002-10-10 2010-11-02 Robbins Barry R Extension of a local area phone system to a wide area network
US7066616B2 (en) * 2003-06-20 2006-06-27 Howell Jay E Modular temporary lighting assembly
US20050041646A1 (en) * 2003-06-27 2005-02-24 Marconi Communications, Inc. Audio mixer and method
EP1507395A1 (de) * 2003-08-14 2005-02-16 Siemens Aktiengesellschaft Verfahren zur Einrichtung einer Anrufumleitung für eine SIP-Telefonnummer eines SIP Clients in einem gemischten leitungsgebundenen und paketvermittelten Netz
JP4728586B2 (ja) * 2004-03-16 2011-07-20 Necインフロンティア株式会社 Ip電話方法
US7301938B2 (en) * 2004-04-14 2007-11-27 Lucent Technologies Inc. Method of transferring a packet switched to a circuit switched call
US8027335B2 (en) * 2004-05-05 2011-09-27 Prodea Systems, Inc. Multimedia access device and system employing the same
US8218457B2 (en) * 2004-06-29 2012-07-10 Stmicroelectronics Asia Pacific Pte. Ltd. Apparatus and method for providing communication services using multiple signaling protocols
US7613170B1 (en) * 2004-06-29 2009-11-03 3Com Corporation Method and apparatus for PSTN-based IP active call recovery and re-routing
US7840681B2 (en) * 2004-07-30 2010-11-23 International Business Machines Corporation Method and apparatus for integrating wearable devices within a SIP infrastructure
US7983245B2 (en) * 2004-09-13 2011-07-19 Tekelec Methods and systems for converting an internet protocol (IP)-based message containing subscriber content to a public switched telephone network (PSTN)-based message including subscriber content
US7593390B2 (en) * 2004-12-30 2009-09-22 Intel Corporation Distributed voice network
US8194640B2 (en) * 2004-12-31 2012-06-05 Genband Us Llc Voice over IP (VoIP) network infrastructure components and method
US7483416B2 (en) * 2005-04-01 2009-01-27 Cml Emergency Services Inc. Internet protocol radio dispatch system and method
JP4690767B2 (ja) * 2005-05-11 2011-06-01 株式会社日立製作所 ネットワークシステム、サーバ装置および通信方法
US8401004B2 (en) * 2005-06-21 2013-03-19 Lg Electronics Inc. Terminal, method and system for performing combination service using terminal capability version
US8019986B2 (en) * 2005-08-12 2011-09-13 Comcast Cable Holdings, Llc Method and system for booting, provisioning and activating hardware and software clients
US20070115919A1 (en) * 2005-10-14 2007-05-24 3Com Corporation Method and system for using a packet-network telephone to schedule a conference call
US7643472B2 (en) * 2005-10-19 2010-01-05 At&T Intellectual Property I, Lp Methods and apparatus for authorizing and allocating outdial communication services
JP4585480B2 (ja) * 2006-03-30 2010-11-24 株式会社東芝 電話システム及び電話交換装置
US9219686B2 (en) 2006-03-31 2015-12-22 Alcatel Lucent Network load balancing and overload control
US8837704B2 (en) * 2006-08-31 2014-09-16 Microsoft Corporation Client controlled dynamic call forwarding
US7620167B2 (en) * 2006-09-21 2009-11-17 Siemens Communications, Inc. Apparatus to override the redirect or reject feature at an SIP end point
US20080123627A1 (en) * 2006-09-26 2008-05-29 Moreman Charles S Media terminal adapter with session initiation protocol (sip) proxy
EP2824902B1 (en) * 2006-10-19 2020-01-22 BlackBerry Limited Client device method and apparatus for routing a call
US20080130628A1 (en) * 2006-11-07 2008-06-05 Shiejye Geoffrey Lin Systems and methods for providing advanced call processing features to analog telephone subscribers
CN1988546A (zh) * 2006-12-15 2007-06-27 华为技术有限公司 获取会话起始协议消息传输路径的方法及系统
JP2008153896A (ja) * 2006-12-15 2008-07-03 Nec Corp コンテンツ配信システム、コンテンツ配信側ユーザー端末、コンテンツ被配信側ユーザー端末、コンテンツ配信システムの認証方法
US8873405B2 (en) * 2006-12-15 2014-10-28 Verizon Patent And Licensing Inc. Automated session initiation protocol (SIP) device
US8189570B2 (en) * 2006-12-28 2012-05-29 Alcatel Lucent System and method for processing calls to VoIP devices using the called party's email address
ES2608030T3 (es) * 2007-01-16 2017-04-05 Telefonaktiebolaget Lm Ericsson (Publ) Evaluación de criterios iniciales de filtro
KR101429712B1 (ko) * 2007-01-19 2014-08-12 삼성전자주식회사 Sip 기반의 네트워크에서 무조건/응답 후 호 전환시스템 및 그 제어방법
US8085742B2 (en) * 2007-01-31 2011-12-27 Research In Motion Limited Call forwarding methods and apparatus for mobile communication devices which operate in WWANS and WLANS
US20080219241A1 (en) * 2007-03-09 2008-09-11 Nokia Corporation Subscriber access authorization
US8223757B2 (en) * 2007-06-11 2012-07-17 At&T Intellectual Property I, L.P. Methods and apparatus to perform call screening in a voice over internet protocol (VOIP) network
WO2009056171A1 (en) * 2007-10-31 2009-05-07 Telefonaktiebolaget Lm Ericsson (Publ) Session initiation protocol message payload compression
US7614384B2 (en) * 2007-11-02 2009-11-10 Gm Global Technology Operations, Inc. Engine torque control with desired state estimation
US8855103B2 (en) * 2008-01-17 2014-10-07 Blackberry Limited Personal network access control system and method
WO2009129487A2 (en) * 2008-04-17 2009-10-22 Tekelec Methods, systems, and computer readable media for session initiation protocol (sip) overload control
US8838819B2 (en) * 2009-04-17 2014-09-16 Empirix Inc. Method for embedding meta-commands in normal network packets
US8804513B2 (en) 2010-02-25 2014-08-12 The Trustees Of Columbia University In The City Of New York Methods and systems for controlling SIP overload
US20120014375A1 (en) * 2010-07-16 2012-01-19 Avaya Inc. Method for Telephone Connection Preservation
US8811393B2 (en) * 2010-10-04 2014-08-19 Cisco Technology, Inc. IP address version interworking in communication networks
EP2656571B1 (en) * 2010-12-21 2018-05-23 Telefonaktiebolaget LM Ericsson (publ) Delivery and execution of logic in user terminal in ims session
US8890925B2 (en) * 2011-12-07 2014-11-18 Positron Telecommunication Systems, Inc. Systems and methods for mapping a URI to a plurality of endpoints for a SIP communication
EP2640030B1 (en) * 2012-03-12 2014-11-12 Telefonaktiebolaget LM Ericsson (publ) Capability update in a telecommunications network
US9294618B2 (en) * 2012-04-03 2016-03-22 Telefonaktiebolaget L M Ericsson (Publ) Call-back to a UE that has made an emergency call via a visited IMS network
US9407672B2 (en) * 2013-10-30 2016-08-02 Vonage America Inc. Systems and methods for reducing signalling in an internet protocol telephony system
US9178773B1 (en) * 2014-04-15 2015-11-03 Green Key Technologies Llc Computer-programmed telephone-enabled devices for processing and managing numerous simultaneous voice conversations conducted by an individual over a computer network and computer methods of implementing thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772172B1 (ko) * 2005-11-21 2007-10-31 한국전자통신연구원 실시간 멀티캐스트 패킷 스트림을 위한 이더넷 기반 스위칭방법 및 장치, 이를 구비한 이더넷 기반 스위칭 시스템

Also Published As

Publication number Publication date
AU6120900A (en) 2000-12-28
CA2376214A1 (en) 2000-12-14
US8271660B2 (en) 2012-09-18
WO2000076158A1 (en) 2000-12-14
US20090290695A1 (en) 2009-11-26
EP1186144B1 (en) 2013-10-23
US7610384B1 (en) 2009-10-27
IL146885A (en) 2007-03-08
US20100002690A1 (en) 2010-01-07
EP1186144A4 (en) 2009-09-09
JP4999244B2 (ja) 2012-08-15
ES2441203T3 (es) 2014-02-03
US20130016715A1 (en) 2013-01-17
EP1186144A1 (en) 2002-03-13
US9413585B2 (en) 2016-08-09
MXPA01012622A (es) 2002-06-21
JP2004500744A (ja) 2004-01-08
IL146885A0 (en) 2002-08-14
KR100670006B1 (ko) 2007-01-18

Similar Documents

Publication Publication Date Title
KR100670006B1 (ko) 인터넷/인트라넷 전화통신을 위한 네트워크 전화통신어플라이언스 및 시스템
US6970909B2 (en) Multi-protocol data communication system supporting wireless telephony and content delivery
US6131121A (en) Point-to-point computer network communication utility utilizing dynamically assigned network protocol addresses
US6009469A (en) Graphic user interface for internet telephony application
US6434528B1 (en) Computer network telephony
US7715413B2 (en) Multi-network exchange system for telephony applications
CA2394008C (en) A client-server network for managing internet protocol voice packets
JP2002519891A (ja) 呼出通知を同報送信するための方法およびシステム
US20020071424A1 (en) Packet voice telephony apparatus and method
US6956848B1 (en) Computer network-based auto-attendant method and apparatus
KR20020064889A (ko) 프로그래머블 기능을 가지는 1 이상의 텔레포니 통신장치를 포함하는 분산형 통신 네트워크
CA2422922C (en) Network telephony appliance and system supporting wireless internet telephony

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee