← Back to Patent Explorer
US6865599B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Browser-to-browser, dom-based, peer-to-peer communication with delta synchronization

Assignee: Individual
•
Filing: 2002-09-03
•
Granted: 2005-03-08
•
Expires: 2022-09-03
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A peer-to-peer communication system for use over an underlying computer network system, the peer-to-peer communication system comprising: a web browser; and a broker interposed between the browser and the underlying computer network system, with the broker being adapted to (1) monitor a first event taking place within the browser, encode the first event and associated changes in a first event message, and push the first event message to the at least one other peer over the underlying computer network system.

Inventors

  • 👤 Chenglin Zhang

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 20:26
CPC Classifications
H; H04; H04L; H04L51/00; H04L51/04; H04L67/00; H04L67/01; H04L67/02; H04L67/10; H04L67/1095; H04L12/00; H04L12/02; H04L12/16; H04L12/18; H04L12/1813; H04L12/1827; H04L51/07; H04L51/18; H04L67/104; H04L69/00; H04L69/30; H04L69/32; H04L69/322; H04L69/329

Claims Analysis

Total Claims: 79
Claim 1
Independent Claim 176 words
A peer-to-peer communication system for use over an underlying computer network system, said peer-to-peer communication system comprising: at least two peers, each said peer comprising: a Web browser; and a broker interposed between said browser and the underlying computer network system, with said broker being adapted to (1) monitor a first event taking place within said browser, encode said first event and associated changes in a first event message, and push said first event message to said at least one other peer over the underlying computer network system, whereby said at least one other peer can reproduce on said at least one other peer the changes associated with the first event; and (2) receive a second event message from said at least one other peer, where said second event message has been encoded to correspond to a second event and associated changes taking place on said at least one other peer, decode said second event message and push the results to said browser, whereby to recreate the changes associated with the second event within said browser.
Claim 2
Dependent Claim 176 words
A peer-to-peer communication system for use over an underlying computer network system, said peer-to-peer communication system comprising: at least two peers, each said peer comprising: a Web browser; and a broker interposed between said browser and the underlying computer network system, with said broker being adapted to (1) monitor a first event taking place within said browser, encode said first event and associated changes in a first event message, and push said first event message to said at least one other peer over the underlying computer network system, whereby said at least one other peer can reproduce on said at least one other peer the changes associated with the first event; and (2) receive a second event message from said at least one other peer, where said second event message has been encoded to correspond to a second event and associated changes taking place on said at least one other peer, decode said second event message and push the results to said browser, whereby to recreate the changes associated with the second event within said browser.
Claim 3
Dependent Claim 26 words
A peer-to-peer communication system according to claim 1 wherein the changes are recreated by creating the second event and reposting the second event on the browser.
Claim 4
Dependent Claim 39 words
A peer-to-peer communication system according to claim 1 wherein the underlying computer network system comprises an Instant Messenger (IM) system, and said broker is adapted to communicate with said at least one other peer over the Instant Messenger system.
Claim 5
Dependent Claim 36 words
A peer-to-peer communication system according to claim 3 wherein the Instant Messenger (IM) system comprises one of the group consisting of AOL AIM Instant Messenger; Microsoft MSN Messenger; Yahoo! Messenger; ICQ; Jabber; Groove; and Sun JXTA.
Claim 6
Dependent Claim 19 words
A peer-to-peer communication system according to claim 1 wherein said browser and said broker comprise two distinct software programs.
Claim 7
Dependent Claim 16 words
A peer-to-peer communication system according to claim 1 wherein said broker is built into said browser.
Claim 8
Dependent Claim 15 words
A peer-to-peer communication system according to claim 1 wherein said broker comprises a browser plug-in.
Claim 9
Dependent Claim 19 words
A peer-to-peer communication system according to claim 1 wherein said browser and said broker reside on the same machine.
Claim 10
Dependent Claim 29 words
A peer-to-peer communication system according to claim 1 wherein the contents of said browser are represented in one of the group consisting of HTML; XHTML; XML; and their variations.
Claim 11
Dependent Claim 17 words
A peer-to-peer communication system according to claim 9 wherein said first event message is an XML message.
Claim 12
Dependent Claim 17 words
A peer-to-peer communication system according to claim 9 wherein said second event message is an XML message.
Claim 13
Dependent Claim 21 words
A peer-to-peer communication system according to claim 9 wherein said first event message and said second event message are XML messages.
Claim 14
Dependent Claim 16 words
A peer-to-peer communication system according to claim 9 wherein said browser comprises Microsoft Internet Explorer (IE).
Claim 15
Dependent Claim 22 words
A peer-to-peer communication system according to claim 9 wherein said browser comprises one from the group consisting of Mozilla and its variants.
Claim 16
Dependent Claim 14 words
A peer-to-peer communication system according to claim 9 wherein said browser comprises Netscape Navigator.
Claim 17
Dependent Claim 25 words
A peer-to-peer communication system according to claim 1 wherein the contents of said browser are uniquely addressable by said broker using an established identification mechanism.
Claim 18
Dependent Claim 31 words
A peer-to-peer communication system according to claim 16 wherein the contents of said browser are uniquely addressable using the Document Object Model (DOM) defined by The World Wide Web Consortium (WC3).
Claim 19
Dependent Claim 23 words
A peer-to-peer communication system according to claim 16 wherein the contents of said browser are uniquely addressable using a stream-based HTML document model.
Claim 20
Dependent Claim 27 words
A peer-to-peer communication system according to claim 18 wherein the contents of the browser are uniquely addressable using a stream-based HTML document model with absolute character position.
Claim 21
Dependent Claim 21 words
A peer-to-peer communication system according to claim 16 wherein the contents of said browser are uniquely addressable using a DHTML model.
Claim 22
Dependent Claim 69 words
A peer-to-peer communication system according to claim 16 wherein said identification mechanism comprises one of the group consisting of an ID attribute for a DOM element in a browser; an XPATH expression; and XPointer expression; an XLINK expression; an Internet Explorer (IE) Markup Pointer identifying contents in a browser; an absolute character position in a stream-based HTML document model; and an object naming identification mechanism in a DHTML model.
Claim 23
Dependent Claim 46 words
A peer-to-peer communication system according to claim 21 wherein said identification mechanism comprises an XPointer expression, and further wherein said XPointer expression is constructed by walking backwards through the DOM tree until finding the earlier of the root or the ID attribute of a containing object.
Claim 24
Dependent Claim 34 words
A peer-to-peer communication system according to claim 21 wherein said XPointer expression is resolved by searching the DOM tree from the root of the sub tree to the final node of the XPointer path.
Claim 25
Dependent Claim 24 words
A peer-to-peer communication system according to claim 23 wherein the root of the subtree is an object ID or the root of the document.
Claim 26
Dependent Claim 34 words
A peer-to-peer communication system according to claim 1 wherein the browser-broker connection is implemented in one of the group consisting of the Component Object Model (COM); and the Cross Platform Component Object Model (XPCOM).
Claim 27
Dependent Claim 30 words
A peer-to-peer communication system according to claim 1 wherein the browser-broker connection is implemented in one of the group consisting of HTTP; XML-RPC; and the Simple Object Access Protocol (SOAP).
Claim 28
Dependent Claim 18 words
A peer-to-peer communication system according to claim 1 wherein the contents of said browser comprise an embedded object.
Claim 29
Dependent Claim 24 words
A peer-to-peer communication system according to claim 27 wherein said embedded object exposes only a specific set of properties and procedures to its host.
Claim 30
Dependent Claim 52 words
A peer-to-peer communication system according to claim 28 wherein said embedded object comprises one of the group consisting of the Microsoft Media Player; the Microsoft Visio ActiveX plug-in; the Macromedia Flash Player ActiveX control; the Macromedia Flash Player Java applet; and the WildTangent Web Driver Java Plug-in for 3D graphics and games.
Claim 31
Dependent Claim 22 words
A peer-to-peer communication system according to claim 27 wherein said embedded object exposes its internal components, properties and procedures to its host.
Claim 32
Dependent Claim 43 words
A peer-to-peer communication system according to claim 30 wherein said embedded object comprises one of the group consisting of Mozilla's support for MathML and SVG; IE's support for VML, HTML+TIME; the Adobe SVGViewer plug-in; and the Macromedia Flash Player implemented in IE's behavior.
Claim 33
Dependent Claim 52 words
A peer-to-peer communication system according to claim 27 wherein said embedded object is configured to release said first event to said browser, whereupon said broker can monitor said first event, encode said first event in said first event message, and push said first event message to said at least on other peer.
Claim 34
Dependent Claim 31 words
A peer-to-peer communication system according to claim 27 wherein said second event message is configured so that said broker activates a specific set of properties and procedures of said embedded object.
Claim 35
Dependent Claim 28 words
A peer-to-peer communication system according to claim 27 wherein said second event message is configured so that said broker will repost said second event to said embedded object.
Claim 36
Dependent Claim 18 words
A peer-to-peer communication system according to claim 1 wherein only changes to a document are pushed to peers.
Claim 37
Dependent Claim 14 words
A peer-to-peer communication system according to claim 35 wherein said changes comprise content changes.
Claim 38
Dependent Claim 14 words
A peer-to-peer communication system according to claim 35 wherein said changes comprise style changes.
Claim 39
Dependent Claim 14 words
A peer-to-peer communication system according to claim 35 wherein said changes comprise view changes.
Claim 40
Dependent Claim 14 words
A peer-to-peer communication system according to claim 35 wherein said changes comprise navigation changes.
Claim 41
Dependent Claim 39 words
A peer-to-peer communication system according to claim 35 wherein said broker is configured so that when it pushes the results of said second event message to said browser, it marks the same to prevent re-transmission to the other peers.
Claim 42
Dependent Claim 23 words
A peer-to-peer communication system according to claim 1 wherein said second event message contains information regarding which peer originated said second event message.
Claim 43
Dependent Claim 26 words
A peer-to-peer communication system according to claim 41 wherein said broker is configured to take selective action according to which peer originated said second event message.
Claim 44
Dependent Claim 40 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to push the results to said browser so that said browser will utilize its script engine to respond to events and associated changes originated at other peers.
Claim 45
Dependent Claim 16 words
A peer-to-peer communication system according to claim 1 wherein concurrency control is maintained among the peers.
Claim 46
Dependent Claim 27 words
A peer-to-peer communication system according to claim 44 wherein concurrency control is maintained by using at least one of the group consisting of locks; and timestamp ordering.
Claim 47
Dependent Claim 32 words
A peer-to-peer communication system according to claim 45 wherein said broker is configured so that said locks may be applied on the basis of one or more objects and/or portions of objects.
Claim 48
Dependent Claim 29 words
A peer-to-peer communication system according to claim 46 wherein said broker is configured so that said timestamp ordering accommodates changes to objects and/or portions of objects on multiple peers.
Claim 49
Dependent Claim 34 words
A peer-to-peer communication system according to claim 47 wherein said broker is configured so that said timestamp ordering comprises a base time synchronization and, for each change, a starting timestamp and an ending timestamp.
Claim 50
Dependent Claim 24 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to send a tool to said at least one another peer.
Claim 51
Dependent Claim 20 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to push a tool to said browser.
Claim 52
Dependent Claim 20 words
A peer-to-peer communication system according to claim 50 wherein said tool was received from said at least one other peer.
Claim 53
Dependent Claim 16 words
A peer-to-peer communication system according to claim 50 wherein said tool was resident with said broker.
Claim 54
Dependent Claim 20 words
A peer-to-peer communication system according to claim 50 wherein said broker is configured to request a tool from a peer.
Claim 55
Dependent Claim 48 words
A peer-to-peer communication system according to claim 53 wherein said broker is configured so that when it decodes said second event message, it will determine whether a non-resident tool is required and, if so, it will request the non-resident tool from the peer originating said second event message.
Claim 56
Dependent Claim 29 words
A peer-to-peer communication system according to claim 50 wherein said tool comprises at least one from the group consisting of scripts, style sheets, HTML/XHTML/XML contents and other special markups.
Claim 57
Dependent Claim 27 words
A peer-to-peer communication system according to claim 50 wherein said tool comprises at least one from the group consisting of an ActiveX control and a Java applet.
Claim 58
Dependent Claim 14 words
A peer-to-peer communication system according to claim 50 wherein said tool comprises a plug-in.
Claim 59
Dependent Claim 33 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to observe the screen position of said browser and to advise the at least one other peer of the same.
Claim 60
Dependent Claim 24 words
A peer-to-peer communication system according to claim 58 wherein said broker is configured to encode a position relative to the contents of said browser.
Claim 61
Dependent Claim 22 words
A peer-to-peer communication system according to claim 59 wherein said broker is configured to encode a position relative to a containing object.
Claim 62
Dependent Claim 36 words
A peer-to-peer communication system according to claim 60 wherein said broker is configured to encode a position relative to a containing object and the character position relative to the beginning or ending of that containing object.
Claim 63
Dependent Claim 22 words
A peer-to-peer communication system according to claim 61 wherein said broker is configured to determine the character position using a range object.
Claim 64
Dependent Claim 31 words
A peer-to-peer communication system according to claim 60 wherein said broker is configured to encode a position relative to a containing object and the relative proportional position within the containing object.
Claim 65
Dependent Claim 25 words
A peer-to-peer communication system according to claim 59 wherein said broker is configured to reflect the screen position on said browser using a range object.
Claim 66
Dependent Claim 34 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to receive the screen position of said at least one other peer and to reflect the same on its associated browser.
Claim 67
Independent Claim 112 words
A method for operating a peer-to-peer communication system over an underlying computer network system, said method comprising: (1) initiating a first event in a first browser; (2) capturing the first event and associated changes with a first broker; (3) encoding the first event and associated changes in a first event message; (4) pushing the first event message to a second broker over the underlying computer network system; (5) decoding the first event message into corresponding commands for recreating the first event and associated changes on a second browser; and (6) pushing the corresponding commands to the second browser, whereby to recreate the changes associated with said second event on said second browser.
Claim 68
Independent Claim 112 words
A method for operating a peer-to-peer communication system over an underlying computer network system, said method comprising: (1) initiating a first event in a first browser; (2) capturing the first event and associated changes with a first broker; (3) encoding the first event and associated changes in a first event message; (4) pushing the first event message to a second broker over the underlying computer network system; (5) decoding the first event message into corresponding commands for recreating the first event and associated changes on a second browser; and (6) pushing the corresponding commands to the second browser, whereby to recreate the changes associated with said second event on said second browser.
Claim 69
Dependent Claim 18 words
A method according to claim 66 wherein said underlying computer network system comprises an Instant Messenger (IM) system.
Claim 70
Dependent Claim 15 words
A method according to claim 66 wherein said first event message is encoded in XML.
Claim 71
Dependent Claim 18 words
A method according to claim 66 wherein object references for said first event are serialized in XPointer expressions.
Claim 72
Dependent Claim 17 words
A method according to claim 66 wherein the peer-to-peer dialogue is initiated with a blank Web page.
Claim 73
Dependent Claim 17 words
A method according to claim 66 wherein the peer-to-peer dialogue is initiated with an existing Web page.
Claim 74
Dependent Claim 30 words
A method according to claim 71 wherein the existing Web page originates at one of the peers, and the originating peer pushes the existing Web page to the other peers.
Claim 75
Dependent Claim 29 words
A method according to claim 71 wherein the existing Web page originates at a non-peer site, and all of peers obtain the existing Web page from that non-peer site.
Claim 76
Dependent Claim 42 words
A method according to claim 71 wherein the existing Web page originates at a non-peer site, one of the peers obtains the existing Web page from the non-peer site, and the obtaining peer pushes the existing Web page to the other peers.
Claim 77
Dependent Claim 27 words
A method according to claim 66 wherein, upon receiving said corresponding commands, the second broker causes the first broker to push a tool to the second browser.
Claim 78
Dependent Claim 167 words
A peer-to-peer communication system for use over an underlying computer network system, said peer-to-peer communication system comprising: a broker interposed between a browser located on a peer and the underlying computer network system, with said broker being adapted to (1) monitor a first event taking place within said browser, encode said first event and associated changes in a first event message, and push said first event message to at least one other peer over the underlying computer network system, whereby said at least one other peer can reproduce on said at least one other peer the changes associated with the first event; and (2) receive a second event message from said at least one other peer, where said second event message has been encoded to correspond to a second event and associated changes taking place on said at least one other peer, decode said second event message and push the results to said browser, whereby to recreate the changes associated with the second event within said browser.
Claim 79
Dependent Claim 167 words
A peer-to-peer communication system for use over an underlying computer network system, said peer-to-peer communication system comprising: a broker interposed between a browser located on a peer and the underlying computer network system, with said broker being adapted to (1) monitor a first event taking place within said browser, encode said first event and associated changes in a first event message, and push said first event message to at least one other peer over the underlying computer network system, whereby said at least one other peer can reproduce on said at least one other peer the changes associated with the first event; and (2) receive a second event message from said at least one other peer, where said second event message has been encoded to correspond to a second event and associated changes taking place on said at least one other peer, decode said second event message and push the results to said browser, whereby to recreate the changes associated with the second event within said browser.

References Cited (Backward Citations)

US6199082B1 Cited
US6643652B2 Cited
US6725203B1 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2008-03-07 2008-09-06 2009-03-08 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2012-03-07 2012-09-06 2013-03-08 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2016-03-07 2016-09-06 2017-03-08 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag