KR20010091910A - 무선 네트워크에서의 애플리케이션간 통신 방법 및 장치 - Google Patents

무선 네트워크에서의 애플리케이션간 통신 방법 및 장치 Download PDF

Info

Publication number
KR20010091910A
KR20010091910A KR1020010009501A KR20010009501A KR20010091910A KR 20010091910 A KR20010091910 A KR 20010091910A KR 1020010009501 A KR1020010009501 A KR 1020010009501A KR 20010009501 A KR20010009501 A KR 20010009501A KR 20010091910 A KR20010091910 A KR 20010091910A
Authority
KR
South Korea
Prior art keywords
data item
devices
wireless network
identifier
application
Prior art date
Application number
KR1020010009501A
Other languages
English (en)
Other versions
KR100496712B1 (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 KR20010091910A publication Critical patent/KR20010091910A/ko
Application granted granted Critical
Publication of KR100496712B1 publication Critical patent/KR100496712B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

무선 네트워크 내의 송신 디바이스와 하나 이상의 수신 디바이스들 사이의 애플리케이션간 통신 (inter-application communication)을 제공하는 방법에 있어서, (ⅰ) 송신 디바이스에서, 데이터 항목에 송신 디바이스와 하나 이상의 수신 디바이스들 사이의 의도된 통신에 대한 유일한 식별자 태그를 부착하는(tagging) 단계; (ⅱ) 송신 디바이스에서, 태그 부착된 데이터 항목을 무선 네트워크에서 브로드캐스팅하는 단계; (ⅲ) 수신 디바이스에서, 수신 디바이스가 송신 디바이스의 라디오 범위 내에 있을 때 브로드캐스트 데이터 항목을 수신하는 단계; 및 (ⅳ) 수신 디바이스에서, 식별자가 수신 디바이스와 관련된 애플리케이션에 의해 기대되는 식별자와 실제로 매칭될 때 프로세싱을 위한 데이터 항목을 수락하는 단계를 포함하고, 송신 디바이스와 수신 디바이스는 서로의 존재를 알지 못한다.

Description

무선 네트워크에서의 애플리케이션간 통신 방법 및 장치{METHOD AND APPARATUS FOR INTER-APPLICATION COMMUNICATION IN WIRELESS NETWORKS}
본 발명은 애플리케이션간 통신(inter-application communication)의 기술 분야에 관한 것으로, 특히 무선 네트워크를 이용하여 상호 동작을 수행하는 디바이스들에 대한 애플리케이션간 통신을 가능하게 하는 방법 및 장치에 관한 것이다.
본 명세서의 기재를 위하여, 우리는 무선 네트워크를 이동 네트워크(mobile network)로서 규정하였고, 이는 무선 링크들, [도메인명 서비스(Domain Name Service)과 같은] 중앙 인프라구조의 결함, 및 (디바이스들 간의 통신 용량의 변화를 야기하는) 빈번한 호스트 이동을 특징으로 하고 있다. 무선 네트워크의 일례로서 통신용 라디오 신호들을 이용하는 네트워크가 있다. 본래, 라디오 신호의 세기는 이 신호의 수신가능 범위 내에서 결정된다. 본 명세서에서는 이 범위를 송신 디바이스에 대한 "라디오 범위(radio range)"로서 정의한다. 라디오 기반 무선 네트워크에서, 2개의 디바이스들은, 상호간의 라디오 범위 내에 있기 때문에, (동일 주파수를 이용하는) 통신을 위해 동조되어, 상호 통신가능하게 된다. 2개의 디바이스들은, 이들 중의 하나의 디바이스가 다른 디바이스의 라디오 범위 밖으로 이동하게 되면 통신을 중단한다. 디바이스의 라디오 범위는 개개의 디바이스를 위한 라디오 송신기의 세기의 함수이다. 이 범위는 (Bluetooth 인에이블 디바이스에서는) 수십 피트 내지 (무선 LAN 인에이블 디바이스에서는) 수백 피트에서 (라디오국에 의한 방송에서는) 수십 마일로 다양하다. 무선 네트워크에서 디바이스의 라디오 범위는 중계기 노드들을 설치함으로써 확장될 수 있다. 중계기 노드들은 송신된 신호들을 중계 방송하고, 이에 의해서 단일 송신 디바이스에 대한 라디오 범위가 증가하게 된다. 본 명세서 기재의 실시예에서는, 무선 네트워크 내의 두 개의 디바이스들은 서로간의 라디오 범위 내에서 동일한 라디오 주파수를 이용하여 상호 통신가능하게 된다. 도 1a는 2개의 디바이스들(102)이 상호간의 라디오 범위(104) 내에 위치하여 상호 통신가능하게 되는 일례를 도시한 도면이다. 이들 2개의 디바이스들이 이동하여 서로 멀어지는 경우, 이들은 서로간의 라디오 범위의 밖으로 이동하게 되자마자 통신이 불가능하게 된다. 이것이 도 1b에 도시되어 있다.
종래의 애플리케이션간 통신의 예로 통신 애플리케이션들이 서로 상대방을직접 알고 있는 직접 통신(direct communication) 또는 통신 애플리케이션들이 공동으로 알려져 있고 액세스가능한 중개자를 이용하는 중개 통신(mediated communication)을 포함한다.
중개 통신의 한 특징은 수신기가 송신기 (예를 들어, 웹 브라우징)로부터의 데이터를 "인입(pull)"시킨다는 것이다. 여기서, 수신기는 송신기를 명확히 알고 있으며 공지된 네트워크명이나 어드레스를 이용하여 송신기와 통신한다. 이와 같은 직접 통신의 수신기 "인입" 모델이 도 2에 도시된다. 이 예에서, 송신기(208)로부터 데이터를 수신하는데 관여하는 수신기(202)의 각 애플리케이션은, 요청 메시지(204)를 송신기의 특정 부분으로 송신한다. 요청 메시지의 헤더는 (만일 존재한다면) 데이터 식별(data identity)과 함께 상기 요청의 유형을 식별한다. 송신기에서의 애플리케이션은 이 요청을 처리하여 응답(206)의 일부로서 요청된 데이터를 수신기 애플리케이션으로 되돌려 보낸다. 이러한 예의 주요 단점은, 이를 무선 네트워크에 적용했을 때, 수신기 상의 각 애플리케이션이 송신기에서의 애플리케이션의 위치와 어드레스를 미리 알고 있어야 한다는 것이다.
직접 통신의 다른 특징은 수신기가 우선적으로 데이터 항목들을 수신하겠다는 취지를 송신기에 "등록(register)"한다는 것이다. 이러한 직접 통신의 수신기 "인입(push)" 모델은 도 3a 및 도 3b에 도시되어 있다. (도 3a의) 등록 기간 동안, 수신기(302)는 수신하고자 하는 데이터의 유형에 대해 송신기(306)에 통보한다 (등록 단계 304). 이 데이터가 유효하게 되면, (도 3b)의 응답 기간 동안, 송신기(306)는 데이터를 수신기 [예를 들어, 마림바 채널들 (Marimba channels); -http://www.marimba.com; 및 포인트케스트(PointCast)-http://www.pointcast.com]로 "인출(push)"한다. 이러한 접근 방법의 주 문제점은, 이를 무선 네트워크에 적용했을 때, 송신기와 수신기 모두가 이들이 송수신할 수 있는 네트워크 명칭 또는 네트워크 어드레스에 의해 상대방의 소재를 알 수 있어야 한다는 것이다.
문헌에 발표되어 있는 직접 통신의 대안적 수단은, [1995년 5월, ACM SIGMOD 컨퍼런스의 회보지에서, S. Acharya, R. Alonso, M.Franklin 및 S.Zdonik에 의해 "브로드캐스트 디스크(Broadcast Disks): 비대칭 통신 환경에 대한 데이터 관리(Data Management for Asymmetric Communication Environments)"로 기술된] 소위 브로드캐스트 디스크 기술을 기반으로 한다. 이 기술은 데이터를 고정 서버로부터 (이동가능한) 별로 유력하지 않은 기계들을 갖는 클라이언트로 브로드캐스팅함으로써 비대칭 통신 환경에서의 클라이언트의 메모리 계층을 증대시킨다. 클라이언트들은 데이터가 "지나갈(go by)" 때 브로드캐스트 채널로부터 이들의 로컬 기억 검색 데이터 내에서 분실된 데이터 항목들을 추적하는 것에 관여한다. 이 기술은 주로 단일 소스로부터의 정보 보급을 위한 것이기 때문에, 이동 클라이언트들 간의 정교한 임의의 애플리케이션간 통신을 지원하지는 않는다.
중개 통신은 터플-베이스(tuple-based) 시스템 (예를 들어, "Generative Communication in Linda," David Gelernter, ACM Transactions in Programming languages and Systems, Vol.7, No.1, 1985년 1월, pp. 80-112에 기재된 Linda tuples; "Distributed Communication via Global Buffer," David Gelernter 및 A.J.Bernstein, Distributed Computing Conference의 ACM 개념에 관한 회보지,1982년, pp.10-18; "JavaSpace Specification,"http://java.sun.com/products/javaspaces/specs/js.pdf, Sun Microsystems, 1998년 7월에 개시된 자바스페이스; 및 "TSpaces", P. Wycoff, S.W.McLaugry, T.J.Lehman, D.A.Ford, The IBM Systems Journal, 1998년 8월에 기재된 TSPaces), 또는 큐-베이스(queue-based) 시스템 (예를 들어, "MQSeries,"http://www.software.ibm.com/mqseries, IBM에 기재된 MQSeries)에서 이용된다. 이들 시스템들에서, 2개의 애플리케이션들은 서로 상대방을 명백히 알고 있지 않고도, 터플스페이스(tuplesplace) 또는 큐(queue) 내에 태그 부착 데이터 값을 인입 및 인출함으로써 통신가능하게 된다.
도 4는 직접 통신의 큐-베이스 모델의 일례를 도시한다. 수신기(402)는 큐 관리자(408)를 사용하여 요청 메시지를 큐에 기입한다 (단계 404). 송신기(414)는 큐로부터 요청 메시지를 검색한다 (단계 412). 요청을 처리한 후, 송신기는 큐 관리자를 이용하여 응답 메시지를 큐에 기입한다 (단계 410). 그 다음, 수신기는 큐로부터의 응답 메시지를 판독한다 (단계 406). 터플스페이스 또는 큐의 구현은 제3의 엔터티(entity)에 의해서 실현된다. 이 엔터티는 통신 애플리케이션들에 독립적이다. 이러한 접근 방법의 주된 문제점은 중개자 (예를 들어, 큐 관리자)가 항시 존재해야만 한다는 것이다. 몇몇 이유로 인해, 중개자 노드가 소실되거나 고장이 난다면, 2개의 애플리케이션은 통신을 계속할 수 없다. (디바이스들이 서로간의 통신 범위 안으로 들어왔을 때) 설정 및 (디바이스들이 서로간의 통신 범위로부터 벗어날 때) 동적으로 해체되는 무선 네트워크에서는 중개하는 제3 자의 유용성 및 액세스 능력이 존재할 것 같지는 않다.
본 발명은 종래의 애플리케이션들간 통신 예들에 의해 설명된 상기의 어려운 요건들을 요구하지 않고도 특별한 애플리케이션간 통신을 실현하기 위해 무선 네트워크들의 브로드캐스트 능력들을 유일한 태그 부착된 데이터 항목들과 조합한다. 즉, 데이터 항목들의 발신자는 데이터 항목 수신자의 존재를 알고 있을 필요가 없다. 마찬가지로, 수신자는 발신자의 존재를 알고 있을 필요가 없다. 본 발명에서 데이터 항목의 발신자는 데이터 항목에 의도된 통신 환경에서의 유일한 식별자의 태그를 부착한 다음, 무선 네트워크에서 이 태그 부착된 데이터 항목들을 브로드캐스트한다. 데이터 항목을 수신하고자 하는 애플리케이션은, 부착된 태그가 수신중인 애플리케이션에 의해 기대되는 태그와 매칭하는 경우, 이 데이터 항목을 받아들인다. 그러므로, 두 개 (또는 그 이상의) 애플리케이션들은 상호간의 (물리적으로 근접한) 라디오 범위 내에서 태그 값들을 일치시킴으로써 간단하게 통신한다. 발신자 및 수신자 애플리케이션들이 태그 값들을 일치시킬 수 있는 다수의 수단들이 존재한다. 일례에 의하면, 데이터 항목들을 위한 태그 값들은 애플리케이션 내에서 사전 구성될 수 있거나 애플리케이션 사용자로의 대역 외 통신을 가능하게 할 수 있다. 예를 들어, 스탁 인용 부호들(stock quotes)만을 디스플레이하는 애플리케이션은 스탁 인용 부호 태그들만을 처리하도록 하드와이어될 수 있다. 주문 가능 애플리케이션은 사용자에게 이 애플리케이션이 처리할 수 있는 데이터 태그 값들을 입력하도록 요청할 수 있다. 유효한 태그들의 유형에 관한 정보는 사용자 매뉴얼 또는 광고와 같은 대역 외 수단을 이용하여 사용자에게 전송될 수 있다. 그러나, 본 발명이 임의의 특정한 태그 값 일치 수단에 제한되지 않음은 자명하다. 용어 "애플리케이션(application)"은 일반적으로 하나 이상의 특정 함수들을 수행 또는 제공하기 위해 기록된 하나 이상의 소프트웨어 프로그램들로서 참조된다. 이 애플리케이션들은 간단한 함수를 완성하는 것에서부터 함수들을 합성하는 것까지를 포함할 수 있다. 그러나, 본 발명의 방법들은 임의의 특정 애플리케이션에 제한되는 것이 아니며, 사실상 네트워크 내의 2개의 디바이스들 사이의 간단한 데이터 통신 또는 소정의 다른 신호 전송에도 적용될 수 있다.
본 발명에 따르면, 통신 애플리케이션들은 더 이상 서로 상대방의 존재를 예를 들어 소정의 어드레스의 형태로 직접 알고 있을 필요 없으며, 또한 이들이 공동의 중개자를 이용할 필요도 없다는 점에서 잇점이 있다.
본 발명의 상기 목적 및 기타 목적, 특징 및 장점들은 첨부된 도면들과 관련하여 설명되는 실시예들에 대한 다음 상세한 설명으로부터 보다 명백해질 것이다.
도 1a 및 도 1b는 무선 네트워크에서의 라디오 범위(radio range)의 개념을 설명하기 위한 도면들.
도 2는 직접 통신의 수신기 "인입(pull)" 예를 도시한 도면.
도 3a 및 도 3b는 직접 통신의 송신기 "인출(push)" 예를 도시한 도면.
도 4는 애플리케이션들간 통신의 중개 모델을 도시한 도면.
도 5는 본 발명이 적용가능한 예시적인 시스템 환경을 도시한 도면.
도 6은 본 발명의 애플리케이션간 통신 방법을 이용하여 무선 네트워크에서 디바이스의 예시적인 소프트웨어 아키텍쳐를 도시한 블록도.
도 7은 본 발명의 애플리케이션간 통신 방법을 이용하여 무선 네트워크에서 디바이스의 데이터 교환 서비스 (Data Exchange Service)에 의해 인출되는 애플리케이션 프로그램 인터페이스를 도시한 도면.
도 8은 본 발명의 실시예에 따라 애플리케이션에 의해 데이터를 송신하는 단계들을 설명하기 위한 흐름도.
도 9는 본 발명의 애플리케이션간 통신 실시예에 따라 데이터 교환 서비스에 의해 디바이스에 의해 수신된 브로드캐스트 메시지를 처리하여 애플리케이션으로전송하는 단계들을 설명하기 위한 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
504 : 페이저
506 : 무선 네트워크
508 : 스마트 폰
510 : 프린터
512 : 랩탑 컴퓨터
604 : 데이터 교환 서비스
606 : 통신 모듈
608 : 송신기
610 : 수신기
이하 예시적인 무선 네트워크의 환경에서의 본 발명이 설명될 것이다. 그러나, 본 발명은 임의의 특정 무선 네트워크 구현에만 제한되지 않는다는 것이 명백하다. 대개, 본 발명은 일반적으로 애플리케이션들이 서로 상대방의 존재를, 예를 들어 소정의 어드레스 형태로 직접 알고 있지 않아도 통신가능하며, 공통의 중개자를 이용할 필요없이 통신가능한 임의의 네트워크에 적용가능하다.
이제, 도 5를 참조하면, 본 발명이 적용가능한 예시적인 시스템 환경이 도시된다. 이 환경에서는, 랩탑 컴퓨터(512), 초소형 전화기(hand held phone)와 오거나이저(organizer; 502), 스마트 폰(508), 페이저(504) 및 프린터(510) 등과 같은 주변 디바이스들을 포함한다. 각 디바이스는 무선 매체를 이용하여 다른 디바이스와 통신가능하게 된다. 이 때문에, 각 디바이스는 무선 수신기와 무선 송신기를 포함한다. 두 개의 디바이스들은, 도 1a에 도시된 바와 같이, 이들이 서로 간의 라디오 범위 내에서 존재할 때 통신을 행한다. 통신은, 두 개의 디바이스들이 라디오 범위 안으로 들어와 통신 설비를 위한 네트워크를 설정한 후에 설정된다. 수개의 디바이스들은 이들이 상호간의 라디오 범위 내에 있는 동안, 네트워크(506) 상에서 상호 통신가능하다. 네트워크(506)는 디바이스들 사이의 통신을 가능하게 하는데 적합한 임의의 네트워크일 수 있다. 본 발명은 임의의 특정 네트워크 구현에 제한되지는 않는다. 본 실시예에서, 주요 통신 방식은 브로드캐스트, 즉 디바이스가 정보를 전송하길 원할 때, 그의 무선 송신기를 이용하여 정보의 내용을 브로드캐스트하는 것이다. 브로드캐스트의 수신 범위 내에 있는 임의의 다른 디바이스는 이 통신을 수신할 수 있다. 이는 송신기가 수신기가 되는 것을 알지 못하고 수신기는 송신기가 되는 것을 알지 못한다는 것을 의미한다.
도 5에 도시된 각 디바이스는 메모리와 I/O 디바이스들에 동작적으로 결합된 프로세서를 포함한다. 본 명세서에서 사용되는 용어 "프로세서"는 예를 들어, CPU (중앙 처리 장치)를 포함하는 디바이스와 같은 임의의 프로세싱 디바이스를 포함함을 의도한다. 용어 "메모리"는 예를 들어, RAM, ROM, 고정 메모리 디바이스 (예를 들어, 하드 드라이브), 이동가능한 메모리 디바이스 (예를 들어, 디스켓), 플래시메모리 등과 같이, 프로세서나 CPU와 결합된 메모리를 포함함을 의도한다. 또한, 본 명세서에서 사용된 용어 "입력/출력 디바이스" 또는 "I/O 디바이스"는 예를 들어, 프로세싱 유닛에 데이터를 입력하기 위한 하나 이상의 입력 디바이스, 예를 들어, 키보드, 마이크로폰 등; 및/또는 프로세싱 유닛과 관련하여 얻어진 결과들을 제공하기 위한 하나 이상의 출력 디바이스, 예를 들어, CRT 디스플레이, 스피커 등 포함함을 의도한다. 또한, "프로세서"는 하나 이상의 프로세싱 디바이스로 참조될 수 있고 프로세싱 디바이스와 관련된 다양한 소자들이 다른 프로세싱 디바이스들에 의해 공유될 수 있음이 자명하다. 따라서, 본 명세서에 기재된 바와 같이, 본 발명의 방법을 수행하기 위한 명령 또는 코드를 포함하는 소프트웨어 구성 요소 또는 모듈들은, 하나 이상의 관련 메모리 디바이스들 (예를 들어, ROM, 고정 또는 이동가능한 메모리) 내에 기억될 수 있고, 이용하고자 할 때, 일부 또는 전체를 (예를 들어, ROM 안으로) 로드하여 CPU에 의해 실행될 수 있다.
이제 도 6을 참조하면, 무선 네트워크 내의 각 디바이스들과 관련된 예시적인 소프트웨어 스택이 도시된다. 각 디바이스는 무선 송신기(608)와 수신기(610)를 구비하고 있다. 송신기(608)는 네트워크에 의해 사용되는 특정 주파수 상의 무선 신호들을 송신하고, 수신기(610)는 다른 디바이스들로부터 데이터를 수신하기 위해 특정 주파수를 청취한다 (여기서는 2개의 디바이스들이 통신을 유지하기 위해 동일한 주파수 호핑 스킴을 이용한다고 가정한다). 송신기와 수신기는 데이터를 송신 및 수신하기 위해 통신 모듈(606)에 의해 이용된다. 통신 모듈(606)은 이 송신기와 수신기를 이용하여 메시지를 송신 및 수신하기 위해 함수들을 데이터 교환서비스(DES; 604)라 불리는 소프트웨어 모듈에 제공한다. DES 모듈은 상기 통신층에 상주한다. DES 모듈은, 본 명세서에서 설명된 매카니즘들을 이용하여 데이터를 송신 및 수신하기 위해 애플리케이션 프로그래밍 인터페이스 (API)를 애플리케이션에 제공한다. API들은 도 7에 도시된다. 디바이스(602)에 기입된 애플리케이션들은 다른 디바이스들에서 실행되는 다른 애플리케이션들과의 통신을 위해 DES API를 이용한다.
본 발명은 애플리케이션간 통신 환경에서 통합 유일 데이터 식별자 (Globally Unique Data Identifier; GUDI)를 이용하는 개념을 도입한다. GUDI는 (Microsoft Corporation, Redmond, WA 로부터 입수가능한) Microsoft Visual C++ Software Development Kit에서 개시된 바와 같은, 128비트 통합 유일 식별자이다. 예를 들어, 12345678-1234-1234-123456789ABC는 구문 정정 GUDI이다. GUDI는 현재의 데이터와 시간, 현재의 클럭 시퀀스, 강제 증분시킨 카운터 값 및 머신 (디바이스) 식별자의 조합을 이용하여 발생된다. GUDI는 특정한 데이터 값 클래스 또는 단일 데이터 값을 나타낸다. 본 발명에 따르면, 이는 애플리케이션간 통신 동안 교환되는 모든 데이터 항목들에 태그를 부가하는데 사용된다.
도 7은 DES 모듈이 애플리케이션들에 전달되는 프로그램 인터페이스를 도시한다. DES 모듈을 이용하기 전에, 애플리케이션은 DESInitialize() 함수(704)를 이용하여 모듈을 초기화한다. 각 애플리케이션은 다른 애플리케이션들로부터의 통신을 비동기적으로 수신할 지 또는 동기적으로 수신할 지를 선택할 수 있다. 다른 애플리케이션들로부터의 비동기 통신을 수신하기 위해, 애플리케이션은DESRegister() 함수(706)를 이용한다. 이 함수는 인수(argument)로서 GUDI 리스트 및 애플리케이션이 구현되는 콜백 함수로의 포인터를 갖는다. 콜 백 함수(702)의 기호는 도 7에 도시된다. 데이터 항목을 다른 애플리케이션들로 송신하기 위해, 애플리케이션은 DESSend() 함수(708)를 이용한다. 이 함수는 인수로서 GUDI 리스트 및 애플리케이션이 송신하고자 하는 버퍼에 대한 포인터를 갖는다. GUDI 리스트는 DES 실행시간까지 송신 이전에 데이터 항목들에 태그를 부착하는데 사용된다. 애플리케이션은 또한 DESReceive() 함수(710)를 이용하여 다른 애플리케이션들로부터 데이터를 동기적으로 수신하도록 선택될 수 있다. DESReceive 함수는, 함수 내에 지정된 GUSI와 매칭되는 데이터 항목이 유효하게 될 때까지 블로킹(대기)한다. 애플리케이션은 데이터를 동기적으로 또는 비동기적으로 수신할 것인지의 여부를 결정한다. 애플리케이션은 DESTerminate() 함수(712)를 호출함으로써 미래에 데이터 수신을 종료할 수 있다. DESTerminate 함수 호출 이후에는, 데이터 항목들이 더 이상 애플리케이션으로 전송되지 않는다.
이제, 도 8을 참조하면, 애플리케이션에 의해 본 발명에 따른 애플리케이션간 통신을 이용하기 위해 수행되는 단계들을 도시한 흐름도가 도시된다. 초기화 시에, 애플리케이션은 DESInitialize() 함수를 실행한다(단계 802). 단계 804에서, 애플리케이션은, 애플리케이션이 데이터 수신에 관여하고 있는 GUDI의 리스트를 등록한다. 애플리케이션은 또한 단계 806에서 콜백 함수를 DES 모듈에 등록한다. 콜백 함수는 GUDI를 갖는 데이터 항목이 수신될 때 DES에 의해 해당 애플리케이션을 통보하는데 이용된다. 단계 806의 등록 프로세스에 응답하여, DES 모듈은GUDI 리스트를 기억하고 애플리케이션 콜 백은 내부 데이터 구조에서 처리된다. 애플리케이션은 단계 808에서 DESSend() 함수를 이용하여 데이터를 다른 애플리케이션들로 송신할 수 있다. 단계 810에서, DES는 브로드캐스트하고자 하는 데이터 항목들에 애플리케이션에 의해 지정된 GUDI 태그를 부착한다. 그 다음, 이 태그 부착된 데이터 항목들은 네트워크로 송신된다. 그 다음 애플리케이션은 다른 애플리케이션 로직을 지속할 수 있다.
이제 도 9를 참조하면, 본 발명의 애플리케이션간 통신 실시예에 따라 데이터 교환 서비스에 의해 디바이스에 의해 수신된 GUDI 브로드캐스트 메시지를 처리하기 위한 단계들을 도시한 도면이다. DES 모듈은 단계 902에서 임의의 브로드캐스트 메시지들을 수신하기 위해 대기한다. 메시지의 수신 시, 단계 904에서는, 메시지가 유효 포맷을 갖는지의 여부, 즉 유효 GUDI를 포함하고 있는지의 여부를 검사한다. 만일 메시지가 유효하지 않다면, DES가 다시 보다 많은 메시지들의 대기를 시작, 즉 단계 902로 복귀한다. 만일 메시지가 유효 포맷을 갖는다면, 단계 906에서, DES는 메시지로부터 GUDI와 메시지 내용을 추출한다. 그 다음, 단계 908에서는 이러한 GUDI를 대기하거나 블로킹하는 임의의 애플리케이션들을 식별하기 위해 내부 데이터 구조를 검사한다. 단계 910에서, 어떠한 애플리케이션도 대기중이거나 블로킹되지 않았다면, 메시지는 중단되어 DES가 새로운 브로드캐스트 메시지를 위한 대기를 재시작하는 단계 902로 돌아간다. 만일 애플리케이션이 대기중이라면, 단계 912에서 DES 모듈이 애플리케이션 콜 백 핸들을 추출하여 애플리케이션에게 메시지에 대하여 통보한다. 모든 블록킹된 애플리케이션들이 또한 통보된다. 대기 및 블록킹된 애플리케이션들로의 메시지의 전달이 성공적으로 완료되면, DES는 보다 많은 메시지들의 청취를 시작한다.
본 명세서에서는, 본 발명의 예시적인 실시예가 첨부된 도면들을 참조하여 설명되었지만, 본 발명은 이들 규정된 실시예들로 한정되지 않으며, 본 발명의 기술 범위 또는 기술 사상으로부터 이탈되지 않는 범위 내에서 다양하게 변경 및 변형가능함은 자명하다.
본 발명에 따르면, 데이터 항목에 송신 디바이스와 하나 이상의 다른 디바이스들 간의 의도된 통신에 대한 유일한 식별자 태그를 부착하고, 이 태그 부착된 데이터 항목을 무선 네트워크에서 브로드캐스팅하여 송신 디바이스와 관련된 라디오 범위(radio range) 내에 위치하는 무선 네트워크 내의 다른 디바이스들에서 수신가능하게 함으로써, 통신 애플리케이션들이 더 이상 통신 상대방의 존재를 직접 알고 있지 않아도, 또한 공동의 중개자를 사용할 필요도 없이 통신을 행할 수 있다는 장점이 있다.

Claims (19)

  1. 송신 디바이스에서 이용하기 위해 무선 네트워크 내의 상기 송신 디바이스와 하나 이상의 다른 디바이스들 사이의 애플리케이션간 통신(inter-application communication)을 제공하는 방법에 있어서,
    데이터 항목에 상기 송신 디바이스와 상기 하나 이상의 다른 디바이스들 사이의 의도된 통신에 대한 유일한 식별자 태그를 부착하는(tagging) 단계; 및
    상기 하나 이상의 디바이스들의 존재를 알고 있지 않아도, 상기 송신 디바이스와 관련된 라디오 범위(radio range) 내에 위치하는 상기 무선 네트워크 내의 하나 이상의 다른 디바이스들에 의한 수신을 위해 상기 태그 부착된 데이터 항목을 상기 무선 네트워크에서 브로드캐스팅하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서, 상기 식별자는 현재의 데이터와 시간, 현재의 클럭 시퀀스, 증분된 카운터 값 및 디바이스 식별자 중 적어도 하나를 이용하여 발생되는 방법.
  3. 제1항에 있어서, 상기 태그 부착 동작 및 상기 브로드캐스트 동작 단계들은 애플리케이션 프로그래밍 인터페이스에 따라 상기 송신 디바이스와 관련된 애플리케이션에 의해 수행되는 방법.
  4. 수신 디바이스에서 이용하기 위해 무선 네트워크 내의 상기 수신 디바이스와 하나 이상의 다른 디바이스들 사이에 애플리케이션간 통신을 제공하는 방법에 있어서,
    송신 디바이스의 존재를 알고 있지 않아도, 상기 수신 디바이스가 상기 데이터 항목을 송신하는 디바이스의 라디오 범위 내에 있을 때 브로드캐스트 데이터 항목을 수신하는 단계 -상기 데이터 항목에는 상기 무선 네트워크 내의 상기 송신 디바이스와 하나 이상의 다른 디바이스들 사이의 의도된 통신에 대한 유일한 식별자 태그가 부착되어 있음-; 및
    상기 식별자가 상기 수신 디바이스와 관련된 애플리케이션에 의해 기대되는 식별자와 실제로 매칭할 때 프로세싱을 위한 상기 데이터 항목을 수락하는 단계
    를 포함하는 방법.
  5. 제4항에 있어서, 상기 식별자는 현재의 데이터와 시간, 현재의 클럭 시퀀스, 증분된 카운터 값 및 디바이스 식별자 중 적어도 하나를 이용하여 발생되는 방법.
  6. 제4항에 있어서, 상기 수신 동작 및 상기 수락 동작 단계들은 애플리케이션 프로그래밍 인터페이스에 따라 상기 애플리케이션에 의해 수행되는 방법.
  7. 제4항에 있어서, 브로드캐스트 데이터 항목을 수신하기 전에, 하나 이상의 데이터 항목들을 수신하기를 희망하는 상기 수신 디바이스를 위해 하나 이상의 식별자들을 등록하는 단계를 더 포함하는 방법.
  8. 제7항에 있어서, 상기 수락 동작 단계는, 상기 데이터 항목이 상기 수신 디바이스가 수신하고자 하는 것인지의 여부를 결정하기 위해 상기 수신된 데이터 항목의 상기 식별자를 상기 하나 이상의 등록된 식별자들과 매칭시키는 단계를 포함하는 방법.
  9. 무선 네트워크 내의 송신 디바이스와 하나 이상의 수신 디바이스들과의 사이에 애플리케이션간 통신을 제공하는 방법에 있어서,
    상기 송신 디바이스에서, 데이터 항목에 상기 송신 디바이스와 상기 하나 이상의 수신 디바이스들 사이의 의도된 통신에 대한 유일한 식별자 태그를 부착하는 단계;
    상기 송신 디바이스에서, 상기 태그 부착된 데이터 항목을 상기 무선 네트워크에서 브로드캐스팅하는 단계;
    수신 디바이스에서, 상기 수신 디바이스가 상기 송신 디바이스의 라디오 범위 내에 있을 때 상기 브로드캐스트 데이터 항목을 수신하는 단계; 및
    수신 디바이스에서, 상기 식별자가 상기 수신 디바이스와 관련된 애플리케이션에 의해 기대되는 식별자와 실제로 매칭할 때 프로세싱을 위한 상기 데이터 항목을 수락하는 단계
    를 포함하고,
    상기 송신 디바이스와 상기 수신 디바이스는 서로 상대방의 존재를 알지 못 하는 방법.
  10. 무선 네트워크 내의 하나 이상의 디바이스들 사이의 애플리케이션간 통신을 제공하는 장치에 있어서,
    (ⅰ) 데이터 항목에 송신 디바이스와 하나 이상의 다른 디바이스들 사이의 의도된 통신에 대한 유일한 식별자 태그를 부착하는 동작; 및 (ⅱ) 상기 하나 이상의 디바이스들의 존재를 알고 있지 않아도, 상기 태그 부착된 데이터 항목을 상기 송신 디바이스와 관련된 라디오 범위 내에 위치한 상기 무선 네트워크 내의 하나 이상의 다른 디바이스들에 의한 수신을 위해 상기 무선 네트워크에서 브로드캐스트하는 동작을 행하는 송신 디바이스
    를 포함하는 장치.
  11. 제10항에 있어서, 상기 식별자는 현재의 데이터와 시간, 현재의 클럭 시퀀스, 증분된 카운터 값 및 디바이스 식별자 중 적어도 하나를 이용하여 발생되는 장치.
  12. 제10항에 있어서, 상기 태그 부착 동작 및 상기 브로드캐스팅 동작은 애플리케이션 프로그래밍 인터페이스에 따라 상기 송신 디바이스와 관련된 애플리케이션에 의해 수행되는 장치.
  13. 무선 네트워크 내의 하나 이상의 디바이스들 사이에 애플리케이션간 통신을 제공하는 장치에 있어서,
    (ⅰ) 송신 디바이스의 존재를 알고 있지 않아도, 수신 디바이스가 상기 데이터 항목을 송신하는 디바이스의 라디오 범위 내에 있을 때 브로드캐스트 데이터 항목을 수신하는 동작 -상기 데이터 항목에는 상기 무선 네트워크 내의 상기 송신 디바이스와 하나 이상의 다른 디바이스들 사이의 의도된 통신에 대한 유일한 식별자 태그가 부착되어 있음-; 및 (ⅱ) 상기 식별자가 상기 수신 디바이스와 관련된 애플리케이션에 의해 기대되는 식별자와 실제로 매칭할 때 프로세싱을 위한 상기 데이터 항목을 수락하는 동작을 행하는 수신 디바이스
    를 포함하는 장치.
  14. 제13항에 있어서, 상기 식별자는 현재의 데이터와 시간, 현재의 클럭 시퀀스, 증분된 카운터 값 및 디바이스 식별자 중 적어도 하나를 이용하여 발생되는 장치.
  15. 제13항에 있어서, 상기 수신 동작 및 상기 수락 동작은 애플리케이션 프로그래밍 인터페이스에 따라 상기 애플리케이션에 의해 수행되는 장치.
  16. 제13항에 있어서, 브로드캐스트 데이터 항목을 수신하기 전에, 하나 이상의데이터 항목들을 수신하기를 희망하는 상기 수신 디바이스를 위해 하나 이상의 식별자들을 등록하는 동작을 더 포함하는 장치.
  17. 제16항에 있어서, 상기 수락 동작은, 상기 데이터 항목이 상기 수신 디바이스가 수신하고자 하는 것인지의 여부를 결정하기 위해 상기 수신된 데이터 항목의 상기 식별자를 상기 하나 이상의 등록된 식별자들과 매칭시키는 동작을 포함하는 장치.
  18. 송신 디바이스에서 이용하기 위해 무선 네트워크 내의 상기 송신 디바이스와 하나 이상의 다른 디바이스들 사이에 애플리케이션간 통신을 제공하기 위한 제품에 있어서,
    데이터 항목에 상기 송신 디바이스와 상기 하나 이상의 다른 디바이스들 사이의 의도된 통신에 대한 유일한 식별자 태그를 부착하는 단계; 및
    상기 하나 이상의 디바이스들의 존재를 알고 있지 않아도, 상기 송신 디바이스와 관련된 라디오 범위 내에 위치한 상기 무선 네트워크 내의 하나 이상의 다른 디바이스들에 의한 수신을 위해 상기 태그 부착된 데이터 항목을 상기 무선 네트워크에서 브로드캐스트하는 단계
    를 실행 시에 구현하는 하나 이상의 프로그램들을 포함하는 기계적 판독 매체를 포함하는 제품.
  19. 수신 디바이스에서 이용하기 위해 무선 네트워크 내의 상기 수신 디바이스와 하나 이상의 다른 디바이스들 사이의 애플리케이션간 통신을 제공하기 위한 제품에 있어서,
    상기 송신 디바이스의 존재를 알고 있지 않아도, 상기 수신 디바이스가 상기 데이터 항목을 송신하는 디바이스의 라디오 범위 내에 있을 때 브로드캐스트 데이터 항목을 수신하는 단계 -상기 데이터 항목에는 상기 무선 네트워크 내의 상기 송신 디바이스와 하나 이상의 다른 디바이스들 사이의 의도된 통신에 대한 유일한 식별자 태그가 부착되어 있음-; 및
    상기 식별자가 상기 수신 디바이스와 관련된 애플리케이션에 의해 기대되는 식별자와 실제로 매칭될 때 프로세싱을 위한 상기 데이터 항목을 수락하는 단계
    를 실행 시에 구현하는 하나 이상의 프로그램들을 포함하는 기계적 판독가능 매체를 포함하는 제품.
KR10-2001-0009501A 2000-03-13 2001-02-24 무선 네트워크에서의 애플리케이션간 통신 방법 및 장치 KR100496712B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/523,894 US6816881B1 (en) 2000-03-13 2000-03-13 Method and apparatus for inter-application communication in wireless networks
US09/523,894 2000-03-13

Publications (2)

Publication Number Publication Date
KR20010091910A true KR20010091910A (ko) 2001-10-23
KR100496712B1 KR100496712B1 (ko) 2005-06-27

Family

ID=24086871

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0009501A KR100496712B1 (ko) 2000-03-13 2001-02-24 무선 네트워크에서의 애플리케이션간 통신 방법 및 장치

Country Status (4)

Country Link
US (1) US6816881B1 (ko)
KR (1) KR100496712B1 (ko)
DE (1) DE10107207B4 (ko)
TW (1) TW507439B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101157232B1 (ko) * 2002-05-06 2012-06-15 콸콤 인코포레이티드 무선 통신 시스템에서의 멀티-미디어 브로드캐스트 및멀티캐스트 서비스(mbms)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7024464B1 (en) * 2000-06-29 2006-04-04 3Com Corporation Dynamic content management for wireless communication systems
US7136363B2 (en) 2001-01-09 2006-11-14 Nokia Corporation Method and apparatus for improving radio spectrum usage and decreasing user data delay when providing packet PSI status
US7715533B2 (en) * 2001-04-27 2010-05-11 Hewlett-Packard Development Company, L.P. Brokering of information acquisition by devices in a wireless network
US6968178B2 (en) * 2001-04-27 2005-11-22 Hewlett-Packard Development Company, L.P. Profiles for information acquisition by devices in a wireless network
US20040203350A1 (en) * 2002-05-07 2004-10-14 Intel Corporation Wireless communication device and method for information retrieval using a universal identity metatag
US7551199B2 (en) * 2003-05-05 2009-06-23 Microsoft Corporation Computer camera system and method for reducing parallax
US7827232B2 (en) * 2003-05-05 2010-11-02 Microsoft Corporation Record button on a computer system
US7221331B2 (en) 2003-05-05 2007-05-22 Microsoft Corporation Method and system for auxiliary display of information for a computing device
US20040240650A1 (en) 2003-05-05 2004-12-02 Microsoft Corporation Real-time communications architecture and methods for use with a personal computer system
US20040235520A1 (en) 2003-05-20 2004-11-25 Cadiz Jonathan Jay Enhanced telephony computer user interface allowing user interaction and control of a telephone using a personal computer
GB0313473D0 (en) * 2003-06-11 2003-07-16 Koninkl Philips Electronics Nv Configuring a radio network for selective broadcast
US7548255B2 (en) 2003-09-30 2009-06-16 Microsoft Corporation Method and system for capturing video on a personal computer
US7216221B2 (en) 2003-09-30 2007-05-08 Microsoft Corporation Method and system for unified audio control on a personal computer
US9098826B2 (en) * 2004-09-30 2015-08-04 The Invention Science Fund I, Llc Enhanced user assistance
US7798401B2 (en) * 2005-01-18 2010-09-21 Invention Science Fund 1, Llc Obtaining user assistance
US7922086B2 (en) 2004-09-30 2011-04-12 The Invention Science Fund I, Llc Obtaining user assistance
US10687166B2 (en) * 2004-09-30 2020-06-16 Uber Technologies, Inc. Obtaining user assistance
US9038899B2 (en) * 2004-09-30 2015-05-26 The Invention Science Fund I, Llc Obtaining user assistance
US9307577B2 (en) * 2005-01-21 2016-04-05 The Invention Science Fund I, Llc User assistance
US20060206817A1 (en) * 2005-02-28 2006-09-14 Jung Edward K User assistance for a condition
US8341522B2 (en) 2004-10-27 2012-12-25 The Invention Science Fund I, Llc Enhanced contextual user assistance
US9747579B2 (en) 2004-09-30 2017-08-29 The Invention Science Fund I, Llc Enhanced user assistance
US8282003B2 (en) * 2004-09-30 2012-10-09 The Invention Science Fund I, Llc Supply-chain side assistance
US8762839B2 (en) * 2004-09-30 2014-06-24 The Invention Science Fund I, Llc Supply-chain side assistance
US20060090132A1 (en) * 2004-10-26 2006-04-27 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Enhanced user assistance
US8704675B2 (en) * 2004-09-30 2014-04-22 The Invention Science Fund I, Llc Obtaining user assistance
US7664736B2 (en) * 2005-01-18 2010-02-16 Searete Llc Obtaining user assistance
US10445799B2 (en) 2004-09-30 2019-10-15 Uber Technologies, Inc. Supply-chain side assistance
US10514816B2 (en) 2004-12-01 2019-12-24 Uber Technologies, Inc. Enhanced user assistance
US7694881B2 (en) * 2004-09-30 2010-04-13 Searete Llc Supply-chain side assistance
US20100146390A1 (en) * 2004-09-30 2010-06-10 Searete Llc, A Limited Liability Corporation Obtaining user assestance
US7581034B2 (en) * 2004-11-23 2009-08-25 Microsoft Corporation Sending notifications to auxiliary displays
US7711868B2 (en) 2004-11-23 2010-05-04 Microsoft Corporation Waking a main computer system to pre-fetch data for an auxiliary computing device
US7634780B2 (en) * 2004-11-23 2009-12-15 Microsoft Corporation Method and system for exchanging data between computer systems and auxiliary displays
US7784065B2 (en) * 2005-02-07 2010-08-24 Microsoft Corporation Interface for consistent program interaction with auxiliary computing devices
US8358976B2 (en) 2006-03-24 2013-01-22 The Invention Science Fund I, Llc Wireless device with an aggregate user interface for controlling other devices
US20100274568A1 (en) * 2009-04-22 2010-10-28 Nokia Corporation Method and apparatus for monitoring user activity in linked services
US20100318987A1 (en) * 2009-06-15 2010-12-16 Microsoft Corporation Bootstrapping streamed and virtualized applications
US20160044621A1 (en) * 2013-03-15 2016-02-11 Interdigital Patent Holdings, Inc. Method and apparatus for context-aware synchronization for peer-to-peer communication
US10458801B2 (en) 2014-05-06 2019-10-29 Uber Technologies, Inc. Systems and methods for travel planning that calls for at least one transportation vehicle unit
US9483744B2 (en) 2014-05-06 2016-11-01 Elwha Llc Real-time carpooling coordinating systems and methods
US9552559B2 (en) 2014-05-06 2017-01-24 Elwha Llc System and methods for verifying that one or more directives that direct transport of a second end user does not conflict with one or more obligations to transport a first end user
US11100434B2 (en) 2014-05-06 2021-08-24 Uber Technologies, Inc. Real-time carpooling coordinating system and methods
US9591685B2 (en) * 2015-07-21 2017-03-07 Qualcomm Incorporated Efficient application synchronization using out-of-band device-to-device communication

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4430755A (en) * 1981-05-14 1984-02-07 Motorola, Inc. Portable radio telephone
IT1183820B (it) * 1985-05-06 1987-10-22 Fiat Auto Spa Sistema di comunicazione e segnalazione automatica fra una pluralita di autoveicoli
DE4034681A1 (de) * 1990-10-31 1992-05-14 Norm Pacific Automat Corp System zur uebertragung von verkehrsinformationen zwischen fahrzeugen und zur steuerung
JP2864743B2 (ja) * 1990-12-20 1999-03-08 日本電気株式会社 無線選択呼出し方式およびそれに用いる受信機
US5561702A (en) * 1994-01-18 1996-10-01 Uniden America Corporation Pager having remotely programmable canned messages
US5701418A (en) * 1994-03-31 1997-12-23 Chrysler Corporation Intra-vehicular LAN and method of routing messages along it using hash functions
US5522077A (en) * 1994-05-19 1996-05-28 Ontos, Inc. Object oriented network system for allocating ranges of globally unique object identifiers from a server process to client processes which release unused identifiers
FR2720580B1 (fr) * 1994-05-26 1996-06-21 France Telecom Procédé de programmation à distance de terminaux de communication et dispositif de mise en Óoeuvre de ce procédé.
US5481532A (en) * 1994-06-29 1996-01-02 General Electric Company Mobile telecommunications device and service
US5732282A (en) * 1995-06-30 1998-03-24 Sun Microsystems, Inc. Virtual device driver registry having a globally unique identifier supplying virtual driver call information to the requesting program
US6694372B1 (en) * 1997-06-17 2004-02-17 Advanced Micro Devices, Inc. Method and system for effective network communication of an unsupported media standard by encapsulated packet tagging
DE19903909A1 (de) * 1999-02-01 2000-08-03 Delphi 2 Creative Tech Gmbh Verfahren und Vorrichtung zur Gewinnung von relevanter Verkehrsinformation und zur dynamischen Routenoptimierung

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101157232B1 (ko) * 2002-05-06 2012-06-15 콸콤 인코포레이티드 무선 통신 시스템에서의 멀티-미디어 브로드캐스트 및멀티캐스트 서비스(mbms)

Also Published As

Publication number Publication date
TW507439B (en) 2002-10-21
DE10107207A1 (de) 2001-09-27
KR100496712B1 (ko) 2005-06-27
US6816881B1 (en) 2004-11-09
DE10107207B4 (de) 2010-03-18

Similar Documents

Publication Publication Date Title
KR100496712B1 (ko) 무선 네트워크에서의 애플리케이션간 통신 방법 및 장치
US7761522B2 (en) System and method for providing asynchronous notifications using synchronous data sources
US6202099B1 (en) Method and apparatus for providing inter-application program communication using a common view and metadata
EP1526457B1 (en) Context-aware automatic service discovery and execution engine in mobile ad-hoc networks
US8195757B2 (en) Method, apparatus and computer program for controlling retention of publications
US6868544B2 (en) Method and system for general-purpose interactive notifications
US6804818B1 (en) Integration mechanism for object-oriented software and message-oriented software
US20040078424A1 (en) Web services via instant messaging
CN102263830B (zh) 便于推送内容的后台处理的装置和相关方法
US6405266B1 (en) Unified publish and subscribe paradigm for local and remote publishing destinations
US20030009539A1 (en) Distributed object middleware connection method
EP1230597B1 (en) Communication architecture for distributed computing environment
KR20040053165A (ko) 발행/구독 시스템을 이용한 무선 메시징 서비스 방법 및시스템
GB2428828A (en) Publish/subscribe messaging system
US6370590B1 (en) Method and apparatus for providing inter-application program communication using a common view
EP1917580B1 (en) Peer-to-peer communication system
CN114500481A (zh) 业务请求处理方法、系统和装置
US8005923B2 (en) System and method of obfuscating queue management
US8200845B2 (en) Queuing of invocations for mobile web services
US20090276789A1 (en) Universal client and framework
CN111756836A (zh) 一种基于事件管理模型的信息发送方法及装置
CN116954934A (zh) 消息处理方法、装置、设备、系统和可读存储介质
CN114513548B (zh) 定向调用信息处理方法及装置
JP4959339B2 (ja) ウェブ・サービス・インターメディアリ用のポート・タイプ非依存型プロキシ・サポート
US20020188764A1 (en) Method and apparatus for asynchronous component invocation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20031105

Effective date: 20050429

S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee