JP2006511865A - Method and apparatus for communicating information in a wide area distributed network - Google Patents

Method and apparatus for communicating information in a wide area distributed network Download PDF

Info

Publication number
JP2006511865A
JP2006511865A JP2004562567A JP2004562567A JP2006511865A JP 2006511865 A JP2006511865 A JP 2006511865A JP 2004562567 A JP2004562567 A JP 2004562567A JP 2004562567 A JP2004562567 A JP 2004562567A JP 2006511865 A JP2006511865 A JP 2006511865A
Authority
JP
Japan
Prior art keywords
information
endpoint
plurality
access devices
received
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2004562567A
Other languages
Japanese (ja)
Inventor
リンドゼイ、テディー・ディー.
Original Assignee
クゥアルコム・インコーポレイテッドQualcomm Incorporated
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
Priority to US10/329,195 priority Critical patent/US20040121789A1/en
Application filed by クゥアルコム・インコーポレイテッドQualcomm Incorporated filed Critical クゥアルコム・インコーポレイテッドQualcomm Incorporated
Priority to PCT/US2003/041312 priority patent/WO2004059871A1/en
Publication of JP2006511865A publication Critical patent/JP2006511865A/en
Application status is Pending legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/28Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network
    • H04L67/2819Enhancement of application control based on intercepted application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/02Network-specific arrangements or communication protocols supporting networked applications involving the use of web-based technology, e.g. hyper text transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/28Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network
    • H04L67/2823Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network for conversion or adaptation of application content or format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/28Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network
    • H04L67/2861Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network for providing operational support to end devices by emulation, e.g. when they are unavailable, or by off-loading in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Application independent communication protocol aspects or techniques in packet data networks
    • H04L69/08Protocols for interworking or protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Application independent communication protocol aspects or techniques in packet data networks
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32High level architectural aspects of 7-layer open systems interconnection [OSI] type protocol stacks
    • H04L69/322Aspects of intra-layer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Aspects of intra-layer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer, i.e. layer seven

Abstract

A method and apparatus for communicating information in a wide area distributed network.
The method and apparatus receive information from a first endpoint, receive information from a second endpoint, and forward the first received information to a destination endpoint. I will provide a. The method and apparatus can also receive an information request from the access device (202) and, if available in a format suitable for delivery to the requesting access device (206), the access device (202). 204) providing information. If the information is not available, the method and apparatus may access the information requested from the destination endpoint, convert the received information into a format suitable for delivery to the requesting access device, and And further distributing the information to the requesting access device. The method and apparatus can also access the information from the endpoint, convert the information to an appropriate format, and the information converted to the access device if the access device is ready to receive the information. , But if the access device is not ready to receive the information, the converted information is queued.

Description

  The present invention relates to transmitting information in a wide area distributed network such as the Internet. In particular, the present invention relates to a method and apparatus for efficiently communicating information between a plurality of information providers and a plurality of remote access devices in a wide area distributed network.

  When a user attempts to access information from a target application or server in a wide area distributed network such as the Internet, the web server provides the necessary interface between the user's access device and the target application or server. . However, the web server is specific to the browser and / or device. That is, the web server is customized for a specific browser running on a user's specific access device. The user's specific access device may be a wireless telephone, a portable computer, or a personal digital assistant (PDA). Furthermore, the target application or server that provides the information needs to know about the specific remote access device type that the user will use to access the information.

  Therefore, there is a need for a web server that is independent of multiple remote access device types, as well as devices that support multiple information providers. In addition, there is a need for a scalable infrastructure that is easy to develop and maintain, highly scalable, and scalable.

[summary]
The disclosed embodiments provide a new and improved method and apparatus for providing information from multiple origin endpoints to a destination endpoint. The method: receiving information from a first originating endpoint, the information identifying the first originating endpoint, the version of information at the first originating endpoint, and the endpoint that last modified the information; Receiving information from the second origination endpoint, the information identifying the second origination endpoint, the version of the information at the second origination endpoint, and the endpoint that last modified the information; and the first Transferring information initially received from either the origin endpoint or the second origin endpoint to the destination endpoint. The method also includes updating the version of the information and the endpoint that last changed the information at the destination endpoint based on the information transferred to the destination endpoint.

  In another aspect, a method for providing information to one of a plurality of access devices: receiving a request for information from one of the plurality of access devices, and to the access device for which the information is requesting Distribution of information to the requesting access device. If the information is not available, the method accesses the requested information from the destination endpoint, converts the received information into a format suitable for delivery to the requesting access device, and requests Further distributing information to the access device.

  In another aspect, a method for providing information to one of a plurality of access devices includes: accessing information from an endpoint; converting information to a plurality of formats, each format being one of the access devices And delivering the converted information to one of the access devices if the access device is ready to receive the converted information. If the access device is not ready to receive the converted information, the method further includes queuing the converted information.

  In another aspect, an apparatus for providing information to one of a plurality of access devices is communicatively connected to a memory unit, a receiver, a transmitter, and a memory unit, a receiver, a transmitter. Processor included. The processor can execute instructions to implement the method described above.

Detailed description

  The features and advantages of the present invention will become more apparent from the detailed description of the disclosed embodiments set forth below with reference to the drawings.

  Before some embodiments are described in detail, it is understood that the scope of the present invention should not be limited to the details of the structure and construction of the components set forth in the following description or illustrated in the drawings. It should be. Moreover, it is to be understood that the terminology and terminology used herein is for the purpose of description and should not be considered limiting.

  FIG. 1 illustrates a configuration for interfacing a plurality of remote access devices 102, 104 to an information provider (warehouse) 122, 124, 126 via an application 120, according to one embodiment. Application 120 can run on a computer that can communicate with web server 110 via protocol adapter 118. The remote access devices 102 and 104 can also communicate with the web server 110 via protocol adapters 106 and 108, respectively.

  The remote access device includes a personal digital assistant (PDA), such as PALM 102 and wireless device 104. The wireless device 104 can be enabled using a binary runtime environment for wireless (BREW) for the radio. The remote access device can also include a portable computer, a video camera, and / or a digital still camera. Each access device operates its own specific browser to access the destination web site, and each access device communicates information using a unique data encryption protocol and / or compression protocol. For example, the PALM device 102 uses an extensible markup language (XML). XML is a data encryption standard (DES), 3 via a hypertext transfer protocol (HTTP) or a hypertext transfer protocol, secure (HTTPS). It can be encrypted using the triple data encryption standard (3DES) or the advanced encryption standard (AES). The wireless device 104 uses DES or 3DES through the HTTPS or HTTP protocol.

  Information provider including MICROSOFT EXCHANGE® 122, Post Office protocol mail server (POP) 124, and Internet message access protocol (IMAP) server 126 (Warehouse) provides raw information managed by the application 120. Application 120 can provide information, eg, video, audio, in a general format unrelated to the device, eg, “full-detail XML”, without specific knowledge of what type of remote access device requests the information. Publish and manipulate images, images and / or data. The remote access device can be any device that can connect to the Internet.

  Application 120 and web server 110 can be encrypted using 3DES, DES or AES via HTTP or HTTPS protocol, simple object access protocol (SOAP) or XML Signaling and data are communicated via a web server interface. The remote access devices 102, 104 communicate requests and data via web service interfaces such as SOAP, XML. SOAP, XML is encrypted using 3DES, DES, or AES via HTTPS or HTTP protocol, encrypted using DES or 3DES via HTTP or HTTPS protocol, and / or using HTTP protocol Can be encrypted using AES.

  Web server 110 communicates with external service 112. The external service 112 can operate on behalf of other devices in the network. The web server 110 may also communicate with, for example, a service provider provisioning and / or payment system 114. The web server 110 further communicates with an external notification provider 116 that provides information such as airline information, eg, schedules, fees, reservations, and / or stock market information. The web server includes a device that provides information to the consuming client. Information served by the web server can take the form of user interface markup such as HTML or WML, or the information can be like XML data called by the SOAP method over HTTP. Can be in the form of remote functionality. Web servers include devices that can serve as content servers or as application servers.

Protocol Adapter The web server 110 service can be provided via the SOAP web service interface, but not all external devices can invoke such an interface. A small module of code called a protocol adapter is provided to interface a specific remote access device or application layer 120 to the web server 110. Protocol adapters provide the freedom to expose many different interfaces that are adapted to the wide range of remote device needs without having to be modified on the core web server or standardized on the lowest common denominator protocol. Protocol adapters can also rewrite security and encryption for remote access devices, including devices that lack portable level security. The protocol adapter can rewrite the device specific request to a standardized request, and conversely, the general response can be rewritten to a device specific response. A protocol adapter is an optional element that can be used with devices that cannot invoke web services via a secure vehicle and / or cannot use small bandwidth connections, You should be careful.

  The protocol adapters 106, 108 receive requests from the respective remote access devices 102, 104 for specific information, e.g., email, contact, calendar, etc., and query the web server 110 for the requested information. . The protocol adapter can decrypt the request and / or return compression if necessary. If the requested information is available at the web server 110, the protocol adapter accesses the requested information from the web server 110 and provides the information to each remote access device. The protocol adapter can encrypt and / or compress the information required for transmission to the respective remote access device. The protocol adapter can convert the received information into an appropriate format for delivery to the requesting device.

  Web server 110 receives a request for information from one of remote access devices 102, 104, sends an acknowledgment to the requesting remote access device, and the requested information is available at web server 110. If so, it provides the requested information to the requesting remote access device. However, if the requested information is not available at the web server 110, the web server 110 sends the request to the application 120, which processes the request and sends the requested information to the web server 110. Wait.

  Web server 110 receives information from application 120 and forwards the requested information to the requesting remote access device if the requesting device is ready to access the requested information. . After receiving information from application 120, web server 110 can queue the information. The information can be accessed by one or more remote access devices 102, 104 when the remote access device is ready to access the information.

  Information generators or information warehouses 122, 124, 126 provide information to application 120. Application 120 manipulates and publishes information that can be accessed by any one of remote devices 102, 104. The application 120 can be device independent, meaning that the published information is in a general device independent format that is generated regardless of the type of remote device in use.

  Information published by the application 120 is communicated with the web server 110 through XML over an HTTPS link via Simple Object Access Protocol (SOAP). Application 120 can also be interfaced with a web server via protocol adapter 118.

  The web server 110 provides a web service interface and converts information unrelated to the device that the web server receives from the application 120 into a format associated with a particular device. Each format associated with a particular device is suitable for distribution to a particular access device, including local and remote access devices. Alternatively, web server 110 receives the requested information from application 120 in a device-independent format and converts it to a format suitable for delivery to the requesting remote access device.

  FIG. 2 illustrates an alternative configuration for interfacing multiple remote access devices 202, 204, 206 to information providers (warehouses) 222, 224, 226, 228 via an application layer 220, according to an embodiment. Will be explained. Application layer 220 can communicate with information providers 222, 224, 226, and 228 via data connector layer 218. Data connector layer 218 obtains information from information providers 222, 224, 226, 228 and passes the information to application layer 220 using one of a plurality of schemas, eg, XML schemas. .

  The remote access devices 202, 204, 206 can also communicate with the web server 210 via the protocol adapter layer 208. Web server 210 may also communicate with management console 230 to manage web server 210 and / or application layer 220. Remote access devices include personal digital assistants (PDAs), such as PALM 202, wireless device 204, and laptop computer 206. The wireless device 204 can be enabled using a binary runtime environment (BREW) for the radio. The remote access device can also include a video camera and / or a digital still camera. As noted above, the remote device can be any device capable of connecting to the Internet. For example, the PALM device 202 uses Advanced Encryption Standard (AES) via the reliable hypertext transfer protocol (HTTPS) or hypertext transfer protocol (HTTP), and the wireless device 204 via HTTP or HTTPS. Data encryption standard (DES) or triple data encryption standard (3DES) is used, and portable computer 206 may be encrypted using DES, 3DES or AES via HTTPS or HTTP. Use extensible markup language (XML).

  Information providers (warehouses) that may include MICROSOFT EXCHANGE (R) 222, DOMINO (R) 224, SIEBEL (R) 226, and UNICENTER (R) 228 are routed through the data connector layer 218 And managed by the application layer 220. Application layer 220 provides information, eg, video, audio, images, and / or data, in a general format independent of the device, without specific knowledge of what type of remote access device can request the information. For example, operate and publish to “Full-Detail XML”. Application layer 220 is a WORKSTYLE LT groupware manager, SIEBEL TM manager, and mobile software delivery asset management (MADAM TM) solution or specific Including any other application layer that performs the functionality of

  FIG. 3 is a simplified block diagram of an embodiment of a web server infrastructure 304 and a remote access device 306 that can implement various disclosed embodiments. For certain communications, voice data, packet data, and / or messages can be exchanged between the web server infrastructure 304 and the remote access device 306 via the wireless interface 308. Various types of messages can be sent. For example, messages used to establish a communication session between the web server infrastructure and a remote access device, registration and paging messages, and data transmission (eg, power control, data rate information, authorization, And other messages). Some of these message types are described in further detail below.

  With respect to the reverse link, at remote access device 306, voice and / or data packets (eg, from data source 310) and messages (eg, from controller 330) are provided to a transmit (TX) data processor 312. Is done. TX data processor 312 encodes and formats data and messages using one or more coding schemes to generate encoded data. Each coding scheme can include any combination of cyclic redundancy check (CRC), convolution, turbo, block, and other coding, or includes no coding at all. be able to. Voice, packet data, and messages can be coded using different schemes, and different types of messages can be coded differently.

  The encoded data is then fed to a modulator (MOD) 314 for further processing (eg, converted, spread using a short PN sequence, and scrambled using a long PN sequence assigned to the user terminal. ) The modulated data is then fed to a transmitter unit (TMTR) 316 where it is conditioned to generate a reverse link signal (eg, converted to one or more analog signals, amplified, filtered And quadrature modulated). The reverse link signal is forwarded via duplexer (D) 318 and transmitted via antenna 320 to web server 304.

  In web server infrastructure 304, the reverse link signal is received by antenna 350, forwarded via duplexer 352, and provided to a receiver unit (RCVR) 354. Alternatively, the antenna can be part of a wireless operator network and the connection between the antenna and the web server can be transferred over the Internet. Web server infrastructure 304 can receive status information and information from remote access device 306. A receiver unit 354 conditions (eg, filters, amplifies, down converts, and digitizes) the received signal and provides samples. A demodulator (DEMOD) 356 receives and processes (eg, despreads, decovers, and pilot demodulates) samples to provide regenerated symbols. Demodulator 356 is provided with a rake receiver that processes multiple requests for received signals and generates integrated symbols. A receive (RX) data processor 358 then decodes the symbols to recover the data and messages transmitted on the reverse link. The reproduced voice / packet data is supplied to the data sink 360 and the reproduced message can be supplied to the controller 370. Controller 370 encrypts information to receive information, update information, queue information, send information, convert information from one format to another And / or instructions for decrypting and for compressing and returning the information. The processing by demodulator 356 and RX data processor 358 is complementary to that performed at remote access device 306. The demodulator 356 and the RX data processor 358 may also be connected via multiple channels, eg, reverse fundamental channel (R-FCH) and reverse supplemental channel (R-SCH). It can be operated to process received multiple transmissions. Moreover, transmissions may be simultaneous from multiple mobile stations, and each mobile station may be transmitting on a reverse basic channel, a reverse auxiliary channel, or both.

  On the forward link, in web server infrastructure 304, voice and data packets (eg, from data source 362) and messages (eg, from controller 370) are transmitted (TX) data processor 364. Processed by (eg, formatted and encoded), further processed by a modulator (MOD) 366 (eg, converted and spread), and a transmitter unit (TMTR) to generate a forward link signal 368 (e.g., converted to an analog signal, amplified, filtered, and quadrature modulated). The forward link signal is forwarded via duplexer 352 and transmitted to remote access device 306 via antenna 350. The forward link signal includes a paging signal.

  At remote access device 306, the forward link signal is received by antenna 320, forwarded via duplexer 318, and provided to receiver unit 322. The receiver unit 322 conditions (eg, down converts, filters, amplifies, quadrature modulates, and digitizes) the received signal and provides samples. The samples are processed by demodulator 324 to provide symbols (eg, despread, decovered, and pilot demodulated), and the symbols recover the data and messages transmitted on the forward link. For further processing (eg, decoded and checked) by the received data processor 326. The regenerated data can be provided to the data sink 328 and the regenerated message can be provided to the controller 330. Controller 330 may include instructions for requesting information, receiving information, encrypting and / or decrypting information, compressing information and / or decompressing information.

Endpoint The term “endpoint” is used in this application to describe a device, a server, or a service that acts on behalf of a device. Each endpoint is uniquely identified within the system by an identifier name, eg, “End_Point_Id”, during the process to be delivered, as will be described in further detail below. The distinguished name is assigned by the web server 110, 210 or one other entity in the network.

  It should be noted that groupware information providers are often referred to as “masters” and may be desktop computers or enterprise groupware providers. The term “master” is used to describe in detail a formal controller or information repository, eg, a common database server, such as 122, 124, 126 in FIG.

Endpoint provisioning During the provisioning process, an endpoint or device that starts for the first time sends a request to the web server 110 or 210 to obtain its End_Point_Id. The request includes a command envelope called “Provision_Request” and causes the web server 110 or 210 to send back a “Provision_Response” containing End_Point_Id. End_Point_Id can be stored and used to uniquely identify the supplied endpoint.

  The system provides a web-based management interface for multiple devices when a user has multiple devices associated with their account. The web-based management interface creates a “slot” for each device and assigns a unique End_Point_Id to each device upon user request. When a new device communicates with the web server for the first time, the new device is assigned its End_Point_Id when it makes a provision_request for the first time. When the device is reset or the client software is reinstalled, the device makes a Provision_Request at the first start.

Item Identifier The system is given a unique system identifier for each item, such as a request, response, or event. This may be different from the unique local distinguished name. The local distinguished name can be used within a device database or a messaging application programming interface (MAPI) storage device. Each endpoint can maintain a table that maps its local distinguished name to its own system distinguished name. The system identifier can be referred to as “Item_Id”. In order to allow the endpoint to generate a guaranteed unique Item_Id, the Item_Id includes an End_Point_Id integrated with the increment value. This value is very similar in function to a globally unique identifier (GUID), but is smaller and only one within the “world” of a particular user and its associated endpoint. It is. For example, a device with 123 End_Point_Id will increase its current value in its local storage, for example 89, and by consolidating 90 newly increased value with 123 End_Point_Id. A new Item_Id is generated. Thus, the generated Item_Id is “123-90”.

Converting service-side data to another code Such data schemas are bandwidth-constrained because the data display schema used by the application layer can be very rich and / or somewhat redundant May not be ideal for use on wireless devices. An endpoint communicates with a web server in a specific format that reflects the inherent capabilities of that endpoint. The rich-data schema used by the application layer is referred to as “Full-Detail Schema” and the concise-data schema used by the web server is “End-Point- Called “Relevant Schema”. A web server converts device-related full-detail schema information into a device-related format before it is queued or sent to the requesting access device. Convert. This transformation is useful for both send and receive operations, so that a specific endpoint does not need to understand the full-detail schema.

Event propagation Event propagation is a mechanism by which events that occur on one particular endpoint are selectively communicated to other endpoints. During event propagation, the master sends an update request to the web server whenever a change occurs, and tags the update request with a reference to who initiated the change. Web servers do not propagate updates to the endpoint that originally initiated a particular event: “selective broadcast” prevents an initiator from receiving the same event that it initiated. The instruction envelope includes an element called Originator_End_Point_Id that identifies the endpoint that initiated the particular instruction envelope. The meaning of the Originator_End_Point_Id element is significantly different in point-to-point communication. In point-to-point communication, the initiating endpoint can request that any response be sent only to the initiating endpoint. Communication between multiple endpoints can occur in multiple ways, the most common being broadcast from one endpoint to all other endpoints, or between two separate endpoints Broadcast as point-to-point communications. The event propagation model described here is a mechanism that enables both cases and prevents unnecessary communication, such as when the endpoint that initiates the broadcast does not receive the same broadcast by itself. including. This is managed by tracking which endpoint initiated the message, so broadcasts should be required. The broadcast is sent to everyone except the initiator.

Concurrency Resolution In asynchronously connected systems, such as those shown in FIGS. 1 and 2, concurrency resolution problems may occur. The concurrency resolution refers to the case where simultaneous changes are made at more than one endpoint and multiple endpoints need to be synchronized with respect to the changes. The concurrency resolution is based on a change tracking system, which can be based on the following assumptions, for example:

    In case of doubt, the master, for example a formal data storage device, always gets support.

    • If a simultaneous message is passing, the first one received by the master gets support.

    Some changes may be lost, but all endpoints will eventually have the same final state.

  An item of information, eg, a request, response, and / or event, is associated with the item's Item_Id, the last endpoint that made a change to that item that can be identified by “Change_End_Point_Id”, and the item. Tracked based on version or number of changes, eg, “Change_Number”. If the system operates asynchronously, the endpoint may not get a formal confirmation of whether the change worked, but the endpoint “opts up” its optimistic assumptions and its Change_Number. And update its Change_End_Point_Id for the item in question. The Change_Number and Change_End_Point_Id attached to the item are called “final known official” values and can be recorded as final official change values. Further, post-incrementing Change_Number and updating Change_End_Point_Id is performed by the endpoint after the endpoint has completed a successful change operation.

  To implement the change, the receiving endpoint Item_Id, Change_Number, and Change_End_Point_Id of the incoming items are the same to verify that they arrive the same as the Item_Id, Change_Number, and Change_End_Point_Id items. If the values match, the receiving endpoint's Change_Number is incremented by 1, and the receiving endpoint's Change_End_Point_Id is modified to reflect the changing endpoint's Change_End_Point_Id. However, if the values do not match, the arriving item is ignored and the corresponding change is effectively lost. Such a endpoint accepts updates because a master always assumes support when a successful update message is sent to an endpoint that did not get support in a simultaneity battle. The newly created item is initialized with 1 Change_Number.

  4-9 illustrate the concurrency resolution process according to an embodiment. The drawing shows one scenario where simultaneous changes are made at two endpoints and an update request is sent so that all endpoints end in the same final state. FIG. 4 shows that all endpoints are in the same initial state, eg, the item “Mail” was last changed by an endpoint with 42 Item_Id, 1 Change_Number, and an item with 100 Change_End_Point_Id. It shows the start state of having.

  FIG. 5 illustrates one scenario where changes occur at the Mail-Item 42 by both “Endpoint 200” and “Endpoint 300” at the same time. Both endpoints “post-increment” their Change_Number to 2 to reflect a state that the master believes is in fact optimistic, and both endpoints send update requests 502, 504 to the web server 110. Send to. Note that update requests 502, 504 use their last known official Change_Number and Change_End_Point_Id respectively. Each of the update requests 502 and 504 includes “Originator_End_Point_Id” that identifies each endpoint that has started the change.

  FIG. 6 shows a case where the update requests 502 and 504 arrive at the web server 110 and the update request 502 from the endpoint 200 arrives first. Change_Number in the update request 502, for example 1, and Change_End_Point_Id, for example 100, match the official values in the endpoint 100, for example, Change_Number and Change_End_Point_Id, so that the endpoint 100 accepts the update request 502 in FIG. As shown, it changes its official Change_Number and Change_End_Point_Id to reflect that the endpoint 200 is the last endpoint that changed the Mail entry. An update request 504 that subsequently arrives from endpoint 300 has its Change_Number, eg, 1 and Change_End_Point_Id, eg, 100, no longer signed with the new official value at endpoint 100, 2 Change_Number and 200 Change_End_Id, , Destroyed.

  After the changes initiated by endpoint 200 are reflected at endpoint 100, the other endpoint (s), in this case endpoint 300, are updated so that all endpoints end in the same final state Is done. FIG. 8 shows that an update request 802 containing new formal values, eg, “Change_Number2” and “Change_End_Point_Id200” is propagated to the remaining endpoints (in this case, endpoint 300). Indicates that it will be returned.

  FIG. 9 shows that the endpoint 300 has received an update request 802 from the master and has received an update request 802 since it is assumed that the master will always get support. Endpoint 300 updates its own Change_Number and Change_End_Point to reflect the new formal values received from the master, eg, “Change_Number2” and “Change_End_Point_Id200”.

  Thus, the disclosed embodiments provide a significant improvement for remote access of information in wide area networks. The disclosed method and apparatus also provides for ensuring that all endpoints have the same final state after a change in an item of information occurs.

  Those skilled in the art will recognize that the various illustrative logic blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein are electronic hardware, computer software, or both. You should appreciate further that it can be implemented as a combination of. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been generally described above in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled craftsmen can perform the functionality described differently for each unique application, but such execution decisions are described as deviating from the scope of the present invention. Should not be done.

  Various illustrative logic blocks, modules, and circuits described in connection with the embodiments disclosed herein are general purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), fields, and the like. A programmable gate array (FPGA) or other programmable logic device, a single gate or transistor logic, a single hardware component, or any combination of these designed to perform the functions described herein Can be implemented or implemented. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. The processor can also be provided as a combination of computing devices. For example, it can be provided as a DSP and microprocessor, a plurality of microprocessors, one or more microprocessors combined with a DSP core, or any other combination of such configurations.

  The method or algorithm steps described in connection with the embodiments disclosed herein may be implemented directly in hardware, in software modules executed by a processor, or in a combination of both. The software module may be RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, removable disk, CD-ROM, or any other storage medium known in the art Can reside inside. An exemplary storage medium is connected to a processor so that the processor can read information from and write information to the storage medium. In the alternative, the storage medium can be integral to the processor. The processor and the storage medium may reside in the ASIC. The ASIC can reside in the user terminal. In the alternative, the processor and the storage medium may reside as a single component in a user terminal.

  The description of the disclosed embodiments provides that anyone skilled in the art can make and use the invention. Various modifications to these embodiments will be readily realized by those skilled in the art. The general principles defined herein apply to other embodiments, such as an instant messaging service or any common data communication application, without departing from the spirit or scope of the present invention. There is a possibility. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be applied in a wide range consistent with the principles and novel features disclosed herein. The term “exemplary” is used broadly herein to mean “serving as an example, instance, or illustration”.

FIG. 1 illustrates a configuration for interfacing multiple remote access devices to multiple information providers, according to one embodiment. FIG. 2 illustrates a configuration for interfacing multiple remote access devices to multiple information providers according to another embodiment. FIG. 3 illustrates an embodiment relating to a web server infrastructure and a remote access device. FIG. 4 illustrates an event propagation scheme. FIG. 5 illustrates an event propagation scheme. FIG. 6 illustrates an event propagation scheme. FIG. 7 illustrates an event propagation scheme. FIG. 8 illustrates an event propagation scheme. FIG. 9 illustrates an event propagation scheme.

Explanation of symbols

  DESCRIPTION OF SYMBOLS 120 ... Application, 304 ... Web server infrastructure, 306 ... Remote access device, 308 ... Wireless interface, 318 ... Duplexer, 320 ... Antenna, 350 ... Web server infrastructure, 502, 504, 802 ... Update request.

Claims (28)

  1. A method for providing information from a plurality of origin endpoints to a destination endpoint, the method comprising:
    Receiving information from the first originating endpoint, the information identifying the first originating endpoint, the version of the information at the first originating endpoint, and the endpoint that last modified the information;
    Receiving information from at least one second origination endpoint, the information identifying the second origination endpoint, the version of information at the second origination endpoint, and the endpoint that last modified the information;
    Forwarding information initially received from either the first origination endpoint or the second origination endpoint to the destination endpoint; and a version of the information based on the information forwarded to the destination endpoint And updating the endpoint that last modified the information at the destination endpoint,
    It comprises.
  2.   The method of claim 1, further comprising preventing information received after the first received information from arriving at the destination endpoint.
  3. The method of claim 1, comprising:
    The information is received after the first received information so that the first endpoint, the second endpoint, and the destination endpoint have the same information version and the same endpoint that last modified the information. Update the version of the information and the endpoint that last changed the information
    Further included.
  4. A computer readable medium embodying a method for providing information from a plurality of origin endpoints to a destination endpoint, the method comprising:
    Receiving information from the first originating endpoint, the information identifying the first originating endpoint, the version of the information at the first originating endpoint, and the endpoint that last modified the information;
    Receiving information from at least one second origination endpoint, the information identifying the second origination endpoint, the version of information at the second origination endpoint, and the endpoint that last modified the information;
    Forwarding information initially received from either the first origination endpoint or the second origination endpoint to the destination endpoint; and a version of the information based on the information forwarded to the destination endpoint And updating the endpoint that last modified the information at the destination endpoint,
    It comprises.
  5.   5. The computer readable medium of claim 4, the method further comprising preventing information received after the first received information from reaching the destination endpoint.
  6. 5. The computer readable medium of claim 4, wherein the method:
    The information is received after the first received information so that the first endpoint, the second endpoint, and the destination endpoint have the same information version and the same endpoint that last modified the information. Update the last modified endpoint and information version at the endpoint
    Further included.
  7. An apparatus for providing information from a plurality of origin endpoints to a destination endpoint, the apparatus comprising:
    Means for receiving information from the first originating endpoint, the information identifying the first originating endpoint, the version of the information at the first originating endpoint, and the endpoint that last modified the information;
    Means for receiving information from at least one second origination endpoint, the information identifying the second origination endpoint, the version of the information at the second origination endpoint, and the endpoint that last modified the information Do;
    Means for forwarding information initially received from either the first origination endpoint or the second origination endpoint to the destination endpoint; and information based on the information forwarded to the destination endpoint Means for updating the version of the endpoint and the endpoint that last modified the information at the destination endpoint,
    It comprises.
  8.   8. The apparatus of claim 7, further comprising means for preventing information received after the first received information from arriving at the destination endpoint.
  9. The apparatus of claim 7, comprising:
    The information is received after the first received information so that the first endpoint, the second endpoint, and the destination endpoint have the same information version and the same endpoint that last modified the information. The endpoint that last changed the information at the selected endpoint and the means for updating the version of the information,
    Further included.
  10. An apparatus for providing information from a plurality of origin endpoints to a destination endpoint, the apparatus comprising:
    A receiver capable of receiving information from a remote access device;
    A transmitter capable of transmitting information to a remote access device; and a processor capable of performing the method, the method comprising:
    Receiving information from the first originating endpoint, the information identifying the first originating endpoint, the version of the information at the first originating endpoint, and the endpoint that last modified the information;
    Receiving information from at least one second origination endpoint, the information identifying the second origination endpoint, the version of information at the second origination endpoint, and the endpoint that last modified the information;
    Forwarding information originally received from either the first origination endpoint or the second origination endpoint to the destination endpoint; and
    Updating the version of the information and the endpoint that last changed the information at the destination endpoint based on the information transferred to the destination endpoint;
    It comprises.
  11.   12. The apparatus of claim 10, wherein the method further comprises preventing information received after the first received information from reaching the destination endpoint.
  12. 12. The apparatus of claim 10, wherein the method is:
    The information is received after the first received information so that the first endpoint, the second endpoint, and the destination endpoint have the same information version and the same endpoint that last modified the information. Update the version of the endpoint and information that last changed the information at the selected endpoint,
    Further included.
  13. A method for providing information to one of a plurality of access devices, the method comprising:
    Receiving a request for information from one of a plurality of access devices;
    Delivering information to one of the plurality of access devices, if the information is available in a format suitable for delivery to one of the plurality of access devices;
    Access information from the destination endpoint if the information is not available;
    Converting the received information into a format suitable for distribution to one of the plurality of access devices; and distributing the information to one of the plurality of access devices;
    It comprises.
  14.   14. The method of claim 13, further comprising queuing the transformed information for delivery to one of the plurality of access devices.
  15. A computer-readable medium embodying a method for providing information to one of a plurality of access devices, the method comprising:
    Receiving a request for information from one of a plurality of access devices;
    Delivering information to one of the plurality of access devices, if the information is available in a format suitable for delivery to one of the plurality of access devices;
    Access information from the destination endpoint if the information is not available;
    Converting the received information into a format suitable for distribution to one of the plurality of access devices; and distributing the information to one of the plurality of access devices;
    It comprises.
  16. 16. The computer readable medium of claim 15, the method further comprising queuing the transformed information for delivery to one of the plurality of access devices.
    Further included.
  17. An apparatus for providing information to one of a plurality of access devices, the device:
    Means for receiving a request for information from one of a plurality of access devices;
    Means for distributing information to one of the plurality of access devices if the information is available in a format suitable for distribution to one of the plurality of access devices;
    Means for accessing information from the destination endpoint if the information is not available;
    Means for converting received information into a format suitable for delivery to one of a plurality of access devices; and means for delivering information to one of the plurality of access devices;
    It comprises.
  18. 18. The apparatus of claim 17, further comprising means for queuing the transformed information for delivery to one of the plurality of access devices.
    Further included.
  19. An apparatus for providing information to one of a plurality of access devices, the device:
    A receiver capable of receiving information from a remote access device;
    A transmitter capable of transmitting information to a remote access device; and a processor capable of performing the method, the method comprising:
    Receiving a request for information from one of a plurality of access devices;
    Delivering information to one of the plurality of access devices, if the information is available in a format suitable for delivery to one of the plurality of access devices;
    Access information from the destination endpoint if the information is not available;
    Converting the received information into a format suitable for delivery to one of a plurality of access devices; and
    Delivering information to one of a plurality of access devices;
    It comprises.
  20.   21. The apparatus of claim 19, further comprising queuing the transformed information for delivery to one of the plurality of access devices.
  21. A method for providing information to one of a plurality of access devices, the method comprising:
    Accessing information from endpoints;
    Converting information into multiple formats, each format suitable for delivery to one of multiple access devices;
    If one of the plurality of access devices is ready to receive the converted information, deliver the converted information to one of the plurality of access devices; and one of the plurality of access devices is converted Queue the converted information if you are not ready to receive the information,
    It comprises.
  22. A computer-readable medium embodying providing information to one of a plurality of access devices, the method comprising:
    Accessing information from endpoints;
    Converting information into multiple formats, each format suitable for delivery to one of multiple access devices;
    If one of the plurality of access devices is ready to receive the converted information, deliver the converted information to one of the plurality of access devices; and one of the plurality of access devices is converted Queue the converted information if you are not ready to receive the information,
    It comprises.
  23. An apparatus for providing information to one of a plurality of access devices, the device:
    Means for accessing information from the endpoint;
    Means for converting information into a plurality of formats, each format suitable for distribution to one of a plurality of access devices;
    Means for distributing the converted information to one of the plurality of access devices; and one of the plurality of access devices, if one of the plurality of access devices is ready to receive the converted information; Means for queuing the converted information if it is not ready to receive the converted information;
    It comprises.
  24. An apparatus for providing information to one of a plurality of access devices, the device:
    A receiver capable of receiving information from a remote access device;
    A transmitter capable of transmitting information to a remote access device; and a processor capable of performing the method, the method comprising:
    Accessing information from endpoints;
    Converting information into multiple formats, each format suitable for delivery to one of multiple access devices;
    Delivering the converted information to one of the plurality of access devices, if one of the plurality of access devices is ready to receive the converted information; and
    If one of the plurality of access devices is not ready to receive the converted information, queue the converted information;
    It comprises.
  25. A device for providing information from one of a plurality of applications to one of a plurality of remote access devices, the device comprising:
    A plurality of protocol adapters each capable of receiving a request from one of a plurality of remote access devices;
    A web server communicatively connected to a plurality of protocol adapters and a plurality of applications, the web server being capable of:
    Receiving device-independent information from one of a plurality of applications; and
    Converting information irrelevant to a received device into a format associated with a plurality of devices, the format associated with each device being suitable for delivery to one of a plurality of remote access devices; Each one of the adapters receives one of the device related formats and provides it to a corresponding one of the plurality of remote access devices;
    It comprises.
  26.   16. The apparatus of claim 15, wherein the plurality of protocol adapters and the plurality of applications communicate with a web service via a simple object access protocol (SOAP).
  27.   26. The device of claim 25, wherein the web server queues a format related to the received device for delivery to a plurality of remote access devices.
  28. A device for providing information from one of a plurality of applications to one of a plurality of remote access devices, the device comprising:
    Means for receiving information irrelevant to the device from one of a plurality of applications; and means for converting information irrelevant to the received device into a format related to the plurality of devices, and a plurality of formats related to each device. Suitable for delivery to one of the remote access devices; and means for queuing a format associated with the received device for delivery to the plurality of remote access devices;
    It comprises.
JP2004562567A 2002-12-23 2003-12-23 Method and apparatus for communicating information in a wide area distributed network Pending JP2006511865A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US10/329,195 US20040121789A1 (en) 2002-12-23 2002-12-23 Method and apparatus for communicating information in a global distributed network
PCT/US2003/041312 WO2004059871A1 (en) 2002-12-23 2003-12-23 Method and apparatus for communicating information in a global distributed network

Publications (1)

Publication Number Publication Date
JP2006511865A true JP2006511865A (en) 2006-04-06

Family

ID=32594689

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004562567A Pending JP2006511865A (en) 2002-12-23 2003-12-23 Method and apparatus for communicating information in a wide area distributed network

Country Status (7)

Country Link
US (1) US20040121789A1 (en)
EP (1) EP1584143A1 (en)
JP (1) JP2006511865A (en)
KR (1) KR20050084488A (en)
CN (1) CN1745521A (en)
AU (1) AU2003299941A1 (en)
WO (1) WO2004059871A1 (en)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7673066B2 (en) * 2003-11-07 2010-03-02 Sony Corporation File transfer protocol for mobile computer
US7870187B2 (en) * 2003-12-31 2011-01-11 Microsoft Corporation Transport agnostic pull mode messaging service
JP4550440B2 (en) * 2004-02-05 2010-09-22 パナソニック株式会社 Broadcast data receiving terminal
US8914518B2 (en) * 2004-04-23 2014-12-16 International Business Machines Corporation Intermediary for satisfying a service requirement established by a service provider
US7422152B2 (en) 2004-05-13 2008-09-09 Cisco Technology, Inc. Methods and devices for providing scalable RFID networks
US7509431B2 (en) * 2004-11-17 2009-03-24 Cisco Technology, Inc. Performing message and transformation adapter functions in a network element on behalf of an application
US7664879B2 (en) * 2004-11-23 2010-02-16 Cisco Technology, Inc. Caching content and state data at a network element
US7987272B2 (en) 2004-12-06 2011-07-26 Cisco Technology, Inc. Performing message payload processing functions in a network element on behalf of an application
US7496750B2 (en) * 2004-12-07 2009-02-24 Cisco Technology, Inc. Performing security functions on a message payload in a network element
US7725934B2 (en) * 2004-12-07 2010-05-25 Cisco Technology, Inc. Network and application attack protection based on application layer message inspection
US7606267B2 (en) * 2004-12-10 2009-10-20 Cisco Technology, Inc. Reducing the sizes of application layer messages in a network element
US8082304B2 (en) * 2004-12-10 2011-12-20 Cisco Technology, Inc. Guaranteed delivery of application layer messages by a network element
US7551567B2 (en) * 2005-01-05 2009-06-23 Cisco Technology, Inc. Interpreting an application message at a network element using sampling and heuristics
US20060155862A1 (en) * 2005-01-06 2006-07-13 Hari Kathi Data traffic load balancing based on application layer messages
US7698416B2 (en) * 2005-01-25 2010-04-13 Cisco Technology, Inc. Application layer message-based server failover management by a network element
US7345585B2 (en) 2005-08-01 2008-03-18 Cisco Technology, Inc. Network based device for providing RFID middleware functionality
US7635083B2 (en) * 2005-09-20 2009-12-22 American Express Travel Related Services Company, Inc. System and method for utilizing a mobile device to obtain a balance on a financial transaction instrument
US7797427B2 (en) * 2005-12-13 2010-09-14 Cisco Technology, Inc. System and method for applying a communication feature extension
US7590661B2 (en) * 2006-07-31 2009-09-15 Ricoh Company, Ltd. Advanced Web Services on a legacy platform
US7873647B2 (en) * 2006-12-18 2011-01-18 Ricoh Company, Ltd. Web services device profile on a multi-service device: device and facility manager
US7987278B2 (en) * 2006-12-18 2011-07-26 Ricoh Company, Ltd. Web services device profile on a multi-service device: dynamic addition of services
US8112766B2 (en) * 2006-12-21 2012-02-07 Ricoh Company, Ltd. Multi-threaded device and facility manager
US8321546B2 (en) * 2007-01-10 2012-11-27 Ricoh Company, Ltd. Integrating discovery functionality within a device and facility manager
US8239876B2 (en) * 2007-06-12 2012-08-07 Ricoh Company, Ltd. Efficient web services application status self-control system on image-forming device
US20100223340A1 (en) * 2009-02-27 2010-09-02 Rob Pope System for remotely scanning a document
US8644804B2 (en) * 2009-10-02 2014-02-04 Badger Meter, Inc. Method and system for providing web-enabled cellular access to meter reading data
CN101909080B (en) * 2010-07-22 2014-04-09 中兴通讯股份有限公司 Method and system for performing data synchronization on high-pass platform terminal and personal computer (PC) side
US20180139103A1 (en) * 2016-11-16 2018-05-17 Lei Guo Management of multiple clusters of distributed file systems

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US48790A (en) * 1865-07-18 Improved harness
US59120A (en) * 1866-10-23 Improvement in machines for making fishing-lines and other small cords
US140745A (en) * 1873-07-08 Improvement in tape-measures
US174218A (en) * 1876-02-29 facer
US194991A (en) * 1877-09-11 Improvement in traces for harness
US219006A (en) * 1879-08-26 Improvement in plow-beams
US4873517A (en) * 1988-06-23 1989-10-10 International Business Machines Corporation Method for selecting least weight end node to end node route in a data communications network
US5442637A (en) * 1992-10-15 1995-08-15 At&T Corp. Reducing the complexities of the transmission control protocol for a high-speed networking environment
US5854898A (en) * 1995-02-24 1998-12-29 Apple Computer, Inc. System for automatically adding additional data stream to existing media connection between two end points upon exchange of notifying and confirmation messages therebetween
US6760307B2 (en) * 1997-08-29 2004-07-06 Intel Corporation Method and apparatus for controlling the flow of data between servers using optimistic transmitter
US6076121A (en) * 1998-03-13 2000-06-13 Levine; Richard C. Method of network addressing and translation
US6501755B1 (en) * 1998-06-11 2002-12-31 Alcatel Canada Inc. Stacked address transport in connection oriented networks
JP3506231B2 (en) * 2000-04-19 2004-03-15 シャープ株式会社 Called party calling method, communication device, calling party information server and call control device
US20020059120A1 (en) * 2000-06-06 2002-05-16 Milton James K. Method and apparatus for creating and maintaining a virtual inventory in a distributed network
AU8007201A (en) * 2000-08-15 2002-02-25 Polycom Israel Ltd A multimedia communication control unit as a secure device for multimedia communication between lan users and other network users
US7069292B2 (en) * 2000-08-29 2006-06-27 Fujitsu Limited Automatic display method and apparatus for update information, and medium storing program for the method
US20020029208A1 (en) * 2000-09-06 2002-03-07 Josephson Daryl Craig Data gathering and distribution apparatus and methods
US7031875B2 (en) * 2001-01-24 2006-04-18 Geo Vector Corporation Pointing systems for addressing objects
US7272650B2 (en) * 2001-04-17 2007-09-18 Intel Corporation Communication protocols operable through network address translation (NAT) type devices
US7464154B2 (en) * 2001-05-18 2008-12-09 Network Resonance, Inc. System, method and computer program product for analyzing data from network-based structured message stream
US7031311B2 (en) * 2001-07-23 2006-04-18 Acme Packet, Inc. System and method for providing rapid rerouting of real-time multi-media flows
US20030191858A1 (en) * 2002-04-05 2003-10-09 Koteshwerrao Adusumilli Response time of transformed documents based on caching and dynamic transformation
EP1580972B1 (en) * 2002-04-15 2006-11-22 Agilent Technologies An Apparatus And Method For Processing Information From A Telecommunications Network
US20030219006A1 (en) * 2002-05-21 2003-11-27 Har Benjamin Yuh Loong Virtual end-to-end coder/decoder capability in H.323 gateways
US6925156B2 (en) * 2002-12-20 2005-08-02 International Business Machines Corporation Pre-connection telephony data synchronization
US7260557B2 (en) * 2003-02-27 2007-08-21 Avaya Technology Corp. Method and apparatus for license distribution

Also Published As

Publication number Publication date
CN1745521A (en) 2006-03-08
KR20050084488A (en) 2005-08-26
EP1584143A1 (en) 2005-10-12
AU2003299941A1 (en) 2004-07-22
WO2004059871A1 (en) 2004-07-15
US20040121789A1 (en) 2004-06-24

Similar Documents

Publication Publication Date Title
US9369424B2 (en) Targeted notification of content availability to a mobile device
US9418132B2 (en) System for an open architecture deployment with centralized synchronization
US20190034970A1 (en) E-commerce messaging using sms
US10516700B2 (en) Synchronous interface to asynchronous processes
CN102238226B (en) Conversation shift on the network centered by content
CA2741164C (en) System and method for performing a light weight, wireless activation of a mobile communication device
Rao et al. iMobile: a proxy-based platform for mobile services
US8122144B2 (en) Reliable messaging using redundant message streams in a high speed, low latency data communications environment
US6195677B1 (en) Distributed network computing system for data exchange/conversion between terminals
US7254579B2 (en) Using endpoint references in a pub-sub system
ES2266456T3 (en) Digital television application protocol for interactive television.
US6101320A (en) Electronic mail communication system and method
US8195745B2 (en) Automatic download of web content in response to an embedded link in an electronic mail message
US6985958B2 (en) Messaging infrastructure for identity-centric data access
US8375094B2 (en) Creating a message readable by a plurality of heterogeneous recipients
US7941488B2 (en) Authorizing message publication to a group of subscribing clients via a publish/subscribe service
US7881661B2 (en) Apparatus and method for providing notification on remote devices
US7870293B2 (en) Header-based network API
US7685287B2 (en) Method and system for layering an infinite request/reply data stream on finite, unidirectional, time-limited transports
US7478402B2 (en) Configurable message pipelines
JP5237298B2 (en) Apparatus and method for client driven server side installation
JP4564697B2 (en) Method and apparatus for activity-based collaboration by a computer system with a communication manager
CN1575461B (en) Mobile client provisioning web service
RU2304851C2 (en) Data synchronization interface
US8972451B2 (en) System and method for event driven publish-subscribe communications

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061212

A977 Report on retrieval

Effective date: 20090513

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090519

A02 Decision of refusal

Effective date: 20091104

Free format text: JAPANESE INTERMEDIATE CODE: A02