WO2002027997A2 - Computer program for maintaining persistent firewall-compliant connections - Google Patents
Computer program for maintaining persistent firewall-compliant connections Download PDFInfo
- Publication number
- WO2002027997A2 WO2002027997A2 PCT/US2001/030488 US0130488W WO0227997A2 WO 2002027997 A2 WO2002027997 A2 WO 2002027997A2 US 0130488 W US0130488 W US 0130488W WO 0227997 A2 WO0227997 A2 WO 0227997A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- computer
- server
- client
- gateway
- subsystem
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/029—Firewall traversal, e.g. tunnelling or, creating pinholes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
Definitions
- the present invention is directed to computer networks, such as the Internet, and more
- the Internet serves as a sort of meta-network to connect a great many
- TCP transmission control protocol
- connections are characterized by the reliable, in-order delivery of all data they carry.
- communicating computers intermittently establish, break and reestablish multiple virtual
- server computer side of things, because a server computer may need to handle many
- polling where the a client
- client end (to facilitate real-time collaboration) can cause a large drain on the computer
- a streaming feed from a server computer to a client For example, a streaming feed from a server computer to a client,
- data e.g., audio-video data
- dedicated software such as Internet Relay
- chat is used to set up chat rooms, wherein a multiplicity of remote computers can
- connections such as audio-video streaming and chat rooms.
- remote clients concurrently and simultaneously access and control an application (e.g., a word processing application on a remote server machine) over a computer network across one
- application e.g., a word processing application on a remote server machine
- the present application deals with manipulation of computer network transport
- firewalls operate so that persistent connections, blocking-on-a-read communications, keep-
- This optimization can also involve sensitivity to transport protocols in
- firewalls are highly amenable to stateful, HTTP 1.1
- firewalls are other types of firewalls (usually server firewalls).
- the present invention can help achieve persistent (and preferably real-time) communication over a computer network
- server computer system for a real-time, collaborative application e.g., a
- collaborative scheduling program may use multiple threads for multiple client-collaborator
- the present invention deals with computer network architecture and software for
- the present invention is thought to be especially
- remote client-collaborators can truly work together in real-time on the subj ect matter of the
- a computer system includes a
- the first computer subsystem includes application software comprising machine readable instructions for generating a first network communication.
- communication is structured and arranged according to a first transport protocol.
- the second computer subsystem is remote from the first computer subsystem.
- second computer subsystem is structured to receive a second network communication through
- the data of the second network communication is
- the first computer subsystem includes gateway software.
- the gateway software includes gateway software.
- Fig. 1 is a block diagram of a first embodiment of a computer system according to the
- FIG. 2 is a flowchart of exemplary process flow for establishing persistent connections
- Fig. 3 is a flowchart of exemplary process flow of gateway software accordingto the present invention.
- Fig. 4 is a diagram of an exemplary transport protocol 0 data packet
- Fig. 5 is a diagram of an exemplary transport protocol 1 data packet
- Fig. 6 is a block diagram of a second embodiment of a computer system according to the
- gateway software machine readable instructions for translating data (e.g. data
- computer network is inclusive of wired networks, wireless networks and hybrid
- networks including wireless and wired portions.
- computer system computer or network of computers.
- computer subsystem a computer or network of computers; usually part of a larger
- transport protocol any computer data protocol that affects the manner in which
- transport protocol is protocol data at
- firewalls may scrutinize protocols at more
- protocols as that term is used herein is made up of protocols, or
- collaborative application an application capable of concurrently receiving input from and
- stateless and stateful are words that denote whether or not a
- thread a sequence of computer program instructions that are scheduled
- multi-tasking, communication software software that helps control network communications located or
- Fig. 1 shows an exemplary computer system 100 according to the present invention.
- server computer subsystem 102 As shown in Fig. 1, server computer subsystem 102, client A computer subsystem 106 and
- client B computer subsystem 108 are connected by wide area network (“WAN") 132.
- WAN wide area network
- computer subsystem 102 is a computer system designed to run business collaboration
- Client A computer subsystem 106 and client B computer subsystem 108 are the same
- WAN 132 collaboratively connects the users to each other through
- WAN 132 is preferably the Internet.
- WAN 132 could be any other kind of computer network, capable of connecting
- WAN 132 may be
- server computer subsystem 102 The architecture of server computer subsystem 102 will now be discussed in detail.
- Server computer subsystem 102 includes server computer 110, server firewall 120, local area
- LAN 130 gateway computer 112
- gateway firewall 122 gateway computer 112
- Server computer 110 includes central processing unit (CPU) 140, collaborative tasks
- server computer is shown as a single block in Fig. 1, in many alternative embodiments, server
- computer 110 will be distributed over several interconnected computers. For example,
- collaborative application database 160 may reside on a separate computer, preferably
- ORACLE may be subject to trademark rights.
- server computer 110 hosts the application that will be
- application may be a word processor, a task scheduling tool, a graphics program, a
- presentation program a spreadsheet, a game, a music studio or any other type of computer
- invention can help client A and client B truly work together, preferably in real-time, on the
- the subject matter may be a text
- Server computer 110 is preferably a conventional server or mini-server computer.
- the server computer utilizes "Java Distributed Oriented Technology” (or "JDOT”)
- JDOT "Java Distributed Oriented Technology
- JAVA and JDOT and/or the phrase "Java Distributed Oriented Technology" may be subject
- a JDOT server provides a framework for fine-grained data security
- collaborative data distribution services are based algorithmically at the highest level on the
- JDOT servers and other similar servers, are examples of JDOT servers.
- JDOT servers are
- CPU 140 receives data from client A and client B, and uses this data to manipulate
- collaborative application data such as a text document that client A and client B are working
- CPU 140 performs the collaborative application work by following the machine
- Collaborative application software 150 is the application. In other preferred embodiments
- collaborative application software 150 is designed to receive data from client A, client B, and
- Collaborative application database 160 is preferably a conventional computer
- Collaborative application database 160 stores the data for the
- collaborative application For example, if the application is a collaborative word processor,
- the word processor program would comprise collaborative application software 150, and the
- word processing file that is, machine readable data representing the actual document text
- application database 160 may store other data related to the collaborative application
- server computer 110 is positioned behind server firewall 120.
- Server firewall 120 is a conventional hardware-based and or software-based fire wall.
- server firewall 120 may take the form of software residing on server
- computer 110 software on a dedicated computer, or it may take the form of a hardware
- server firewall 120 is configured to have a plurality
- Each port has an associated set of rules for scrutinizing data packets attempting to
- a port may only let data of certain protocols through.
- the rules may require the firewall to extract the substantive data from the data packet, in
- firewall 120 applies different, and much stricter, rules to data packets coming into server 110 than to data packets emanating from server computer 110. However, if a persistent
- connection is established, then data passage is persistent, fast and efficient in both directions.
- server firewall 120 stands between a local area network (LAN 130) and
- server computer 110 a server computer (server computer 110). As a practical matter, this may have an effect on
- server firewall 120 how the operator of server computer subsystem 102 chooses to configure server firewall 120.
- server computers can be extremely sensitive, this may also have an
- server firewall 122 for these types of
- Fig. 1 such as gateway firewall 122, client A firewall 124 and client B firewall 126. Because
- server firewall 122 is differently configured, it may not be able to establish the same variety
- this component is formed as a conventional local area
- This LAN 130, and the rest of server computer system 102, may be
- LAN 130 allows communication of data related to the
- the LAN may allow communication between
- gateway computer 112 and several server computers, which cooperatively share in implementing a collaborative application.
- Other embodiments will not include a LAN at all.
- the server computer subsystem 102 may take the form of
- gateway software 152 a single computer having both gateway software 152 and collaborative application software
- Gateway computer 112 includes CPU 142 and gateway software 152.
- CPU 142 the central processing unit 142
- gateway software 152 the gateway software 152.
- gateway computer 112 is implemented as a stand-alone computer, a server computer or a
- Gateway computer 138 is preferably a Web server with Web server
- Gateway software 152 is a set of machine readable instructions that are executed by
- Gateway software 142 may be stored in read-only memory, random access
- Gateway software 152 routes and manipulates data packets coming into server
- gateway software 152 primarily insures that data packets get
- gateway software 152 would be any combination of application software (as in many preferred embodiments). If gateway software 152 would be any combination of application software (as in many preferred embodiments), then gateway software 152 would be any combination of application software (as in many preferred embodiments).
- routing function is then thought to be a matter of ordinary and routine skill.
- Gateway software 152 also changes the transport protocol of both the incoming (from
- Gateway software 152 translates
- HTTP 1.1 "HTTP 1.1" into corresponding data packets having a protocol for object serialization
- Gateway software 152 also serves as a gateway to gateway 130, server firewall 120 and server computer 110, as appropriate. Gateway software 152 also serves as Gateway 130, server firewall 120 and server computer 110, as appropriate. Gateway software 152 also serves as Gateway 130, server firewall 120 and server computer 110, as appropriate. Gateway software 152 also serves as Gateway 130, server firewall 120 and server computer 110, as appropriate. Gateway software 152 also serves as Gateway 130, server firewall 120 and server computer 110, as appropriate. Gateway software 152 also serves to the public Internet Protocol, or a packet data network.
- gateway firewall 122 WAN 132
- clients as
- gateway computer 112 While the data transmission connections on the client side of gateway computer 112 are not
- HTTP 1.1 data packets work better with gateway firewall 122, client A firewall
- HTTP 1.1 packets work better in the sense that they can
- OS transport protocol data packets to freely pass through an unreserved port (e.g., port 8899).
- OS data packets or with data according to other transport protocols, such as raw sockets.
- gateway computer adds an extra layer of
- server computer resources 110 do not need to be used to either translate protocol or to otherwise deal with incoming data that does not exhibit a transport protocol
- gateway computer 152 one central location (ie, gateway computer 152), rather than at several different places in the
- Gateway firewall 122 is interposed between WAN 132 and gateway computer 112.
- Gateway firewall 122 is configured to allow a persistent, blocking on a read, keep-alive type
- Gateway firewall 122 is a conventional gateway firewall 122
- Gateway firewall 122 applies different, and
- Client A computer subsystem 106 will be discussed.
- subsystem 106 includes client A firewall 124, client A computer 114, display device 174 and
- Client A firewall 124 is configured to allow a persistent, blocking on a read, keep-
- connection is preferably originated through port 80 of the firewall. It is an important feature
- the persistent connection across the firewall allows the computer behind the firewall to block on a read, instead of having to expend the resources necessary to
- Client A firewall 124 also provides a firewall for remote users want to participate in the collaborative application.
- Client A firewall 124 also provides a firewall for remote users want to participate in the collaborative application.
- Client A 114 computer is preferably a conventional desktop or laptop personal
- Display device 174 preferably includes a monitor or LCD display, and may also
- Input device 184 includes other output devices, such as a printer, audio speakers and the like.
- Input device 184 includes other output devices, such as a printer, audio speakers and the like.
- Client B computer system 108 includes client B firewall 126, client B computer 116,
- client B computer system 108 The components of client B computer system 108
- the collaborative application software is a graphics program.
- client B are collaborating in generating a new graphic, which is turning out to be a happy
- her input device 184 uses her input device 184.
- client A manipulates input device 184 to indicate the addition of the second eye
- client A computer 114 converts this input into appropriate HTTP 1.1 data packets.
- data packets include substantive application input data to be used by the collaborative
- Gateway computer has established a client thread ready to receive this communication
- gateway software 152 translates these data packets from
- Server computer 110 up appropriate components in server computer 110 when the communication arrives.
- collaborative application software 150 recognizes that the
- the happy face is complete, at least in the server computer subsystem 102.
- server computer 110 sends this data back, initially as OS
- the OS data packets are converted to corresponding HTTP 1.1 data packets at
- gateway computer 112 and then sent the rest of the way back to client A computer 114 and
- the second eye data packets preferably reach the client computers with sufficient
- gateway software 152 translates transport protocols so that
- client A computer 112 creates an application data thread in the client A
- step S2 the application data thread in the client A
- Gateway computer 112 command to gateway computer 112, through WAN 132 and gateway firewall 122.
- firewall 122 is configured to allow passage of such a GET and "setup" command.
- the GET is configured to allow passage of such a GET and "setup" command.
- connection be a keep-alive connection, suitable for
- step S3 gateway computer 112 creates two threads in
- Gateway computer 112 creates a client proxy
- Gateway computer 112 also creates
- gateway a server proxy thread for communications with server computer 110.
- computer 112 also initiates a TCP connection with "setup" command to server computer 110.
- This TCP connection is a persistent data communication path for data according to the OS protocol (as opposed to HTTP 1.1), because this transport protocol works better with server
- step S5 server computer 126, after accepting the new
- computer 110 preferably has one thread for each client. If client A is the only one working
- the server computer may have but one client synch
- server computer 110 will often need to set up and maintain more than one
- the collaborative application becomes highly scalable, because the plurality of
- client synch threads at the server computer will permit communication with many parties
- server computer 110 writes a handshake back to the gateway computer's server proxy thread.
- step S6 where the client A synch thread is put to sleep, to
- step S7 where the client application data thread of client A
- client A computer 114 blocks on a read of the socket
- gateway computer 114 (and ultimately server computer 110) and client A
- server proxy thread is put to sleep, to conserve computing resources, when
- application data is not being sent from the gateway to the server.
- the gateway software receives
- the gateway software verifies the transport protocol of the data packet
- protocol 1 data (but not transport protocol 0 data).
- Fig. 4 shows data packet 200, according to transport protocol 0.
- transport protocol 1 the transport protocol
- transport protocol 0 is the transport protocol used for communication between gateway
- Transport protocol 0 data packets can be identified
- Transport protocol 0 also has a
- gateway software 152 verifies that the transport
- protocol of the data packet received from client A is transport protocol 0 by checking the
- process for verifying the transport protocol may be more complex, depending on the nature of
- packet may be checked, such as source or routing information.
- step S 102 the data 204 is extracted from data
- step SI 03 where the transport protocol 0 data packet is
- transport protocol 1 data packet 201 also has a three-bit header 206. However, this header
- Gateway 001 takes the value 001 in order to identify packet 201 as a transport protocol 1 packet.
- the data of packet 201 is in the reverse order as the data in
- gateway software in order to keep the substantive data identical.
- transport protocols may have profound effects on the structure of a data packet, as a whole.
- Gateway software 152 must take care of effecting all of the necessary data packet structural
- step SI 04 where the protocol 1 data packet is sent from
- gateway computer 112 to server computer 110.
- the packet now has the appropriate transport
- protocol 1 to be communicated by a persistent connection to server computer 100.
- step SI 05 gateway software 152 block on a read
- gateway software 152 verifies that the transport
- protocol is transport protocol 1 by checking the header to determine that its value is 001.
- other aspects of the data packet may be checked, such as source or routing
- step SI 07 the data 208 is extracted from data
- step SI 08 where the transport protocol 1 data packet is
- Gateway software reformatted as a transport protocol 0 packet (example shown in Fig. 4).
- Gateway software reformatted as a transport protocol 0 packet (example shown in Fig. 4).
- the substantive data from data packet 201 is used as substantive data portion 206 of
- step SI 09 where the transport protocol 0 data packet is sent
- gateway computer 112 transfers data from gateway computer 112 to client A computer 114 and client B computer 116. Because
- the packet now has the appropriate transport protocol 0 for the client firewalls 124, 126 and
- client computers 114, 116 it can travel by a persistent connection to client computers 114,
- server to the client may be subject to transport protocol conversion (for the purpose of maintaining persistent connections in the server-to-client direction), while data going from
- client to server may not require transport protocol conversion or persistent connections.
- Fig. 6 shows an alternative embodiment of a computer system 300 according to the
- This alternative embodiment features a dual server computer architecture
- gateway software provided by the gateway software and also to demonstrate that data routed to different server
- server computer may be controlled by the gateway software to be structured according to
- components 306, 308, and 332 are respectively similar to
- Gateway computer 312 includes CPU 342 and gateway software 352. On the server
- gateway computer 312 side of gateway computer 312 are two server computers, server A computer 311 and server B
- Server A 311 stands behind server A's firewall 321.
- Server B 313 stands behind server A's firewall 321.
- server A computer 311 handles connection control
- server B computer 313 handles data transport data. Because of the way server A
- connection control data is best
- server B computer 313 and server B firewall 323 are configured to handle application data in the form of raw socket transport protocol. More particularly, raw socket data is sometimes
- sockets will generally have an impact on the way that data is handled at a firewall (see
- a firewall 321 is configured to allow a persistent connection, as long as the
- server B firewall 323 is configured such that a persistent connection is established
- gateway software includes code
- connection control data to be sent to server A computer 311, or data transport data packets,
- Gateway software 352 includes logic to route the data
- Gateway software includes code that handles two server synch '
- gateway software 352 also does transport
- gateway software translates data packets headed to server A
- gateway software 352 translates data packets headed for server B computer 313 from
- HTTP1.1 transport protocol into raw sockets, so that this data can pass through a persistent connection at server B firewall 323.
Abstract
Description
Claims
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002531663A JP2005502929A (en) | 2000-09-29 | 2001-09-28 | A computer program for maintaining a persistent connection that conforms to a firewall |
EP01975570A EP1334430A4 (en) | 2000-09-29 | 2001-09-28 | Computer program for maintaining persistent firewall-compliant connections |
CA002433192A CA2433192A1 (en) | 2000-09-29 | 2001-09-28 | Computer program for maintaining persistent firewall-compliant connections |
BR0114356-5A BR0114356A (en) | 2000-09-29 | 2001-09-28 | Computer program to maintain persistent connections from compliant protection barriers |
NZ525356A NZ525356A (en) | 2000-09-29 | 2001-09-28 | Computer system which maintains persistent firewall-compliant connections |
AU2001294885A AU2001294885A1 (en) | 2000-09-29 | 2001-09-28 | Computer program for maintaining persistent firewall-compliant connections |
MXPA03002837A MXPA03002837A (en) | 2000-09-29 | 2001-09-28 | Computer program for maintaining persistent firewall-compliant connections. |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US67570800A | 2000-09-29 | 2000-09-29 | |
US09/675,708 | 2000-09-29 |
Publications (3)
Publication Number | Publication Date |
---|---|
WO2002027997A2 true WO2002027997A2 (en) | 2002-04-04 |
WO2002027997A3 WO2002027997A3 (en) | 2002-06-20 |
WO2002027997A9 WO2002027997A9 (en) | 2003-01-30 |
Family
ID=24711645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2001/030488 WO2002027997A2 (en) | 2000-09-29 | 2001-09-28 | Computer program for maintaining persistent firewall-compliant connections |
Country Status (8)
Country | Link |
---|---|
EP (1) | EP1334430A4 (en) |
JP (1) | JP2005502929A (en) |
AU (1) | AU2001294885A1 (en) |
BR (1) | BR0114356A (en) |
CA (1) | CA2433192A1 (en) |
MX (1) | MXPA03002837A (en) |
NZ (1) | NZ525356A (en) |
WO (1) | WO2002027997A2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1504356A1 (en) * | 2002-05-03 | 2005-02-09 | Coco Communications Corp. | Method and apparatus for persistent connections to a device through the use of multiple physical network connections and connection hand-offs between multiple bands, modes and networks |
EP1940126A3 (en) * | 2006-12-19 | 2008-07-09 | Murata Machinery Ltd. | Relay server and client terminal |
US9560524B1 (en) | 2013-12-03 | 2017-01-31 | Sprint Communications Company L.P. | Wireless network application access by a wireless communication device via an untrusted access node |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6161123A (en) * | 1997-05-06 | 2000-12-12 | Intermec Ip Corporation | Providing reliable communication over an unreliable transport layer in a hand-held device using a persistent session |
US6273622B1 (en) * | 1997-04-15 | 2001-08-14 | Flash Networks, Ltd. | Data communication protocol for maximizing the performance of IP communication links |
US6282580B1 (en) * | 1996-07-02 | 2001-08-28 | Sun Microsystems, Inc. | Bridge providing communication between different implementations of object request brokers |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5485369A (en) * | 1993-09-28 | 1996-01-16 | Tandata Corporation | Logistics system for automating tansportation of goods |
US5550984A (en) * | 1994-12-07 | 1996-08-27 | Matsushita Electric Corporation Of America | Security system for preventing unauthorized communications between networks by translating communications received in ip protocol to non-ip protocol to remove address and routing services information |
US5754830A (en) * | 1996-04-01 | 1998-05-19 | Openconnect Systems, Incorporated | Server and web browser terminal emulator for persistent connection to a legacy host system and method of operation |
EP0858201A3 (en) * | 1997-02-06 | 1999-01-13 | Sun Microsystems, Inc. | Method and apparatus for allowing secure transactions through a firewall |
US6421733B1 (en) * | 1997-03-25 | 2002-07-16 | Intel Corporation | System for dynamically transcoding data transmitted between computers |
AU9093798A (en) * | 1998-09-10 | 2000-04-03 | Sanctum, Inc. | Method and system for protecting operations of trusted internal networks |
KR100847596B1 (en) * | 2000-03-02 | 2008-07-21 | 소니 가부시끼 가이샤 | Communication network system, gateway, data communication method and program providing medium |
-
2001
- 2001-09-28 BR BR0114356-5A patent/BR0114356A/en not_active IP Right Cessation
- 2001-09-28 NZ NZ525356A patent/NZ525356A/en unknown
- 2001-09-28 AU AU2001294885A patent/AU2001294885A1/en not_active Abandoned
- 2001-09-28 EP EP01975570A patent/EP1334430A4/en not_active Withdrawn
- 2001-09-28 MX MXPA03002837A patent/MXPA03002837A/en unknown
- 2001-09-28 JP JP2002531663A patent/JP2005502929A/en active Pending
- 2001-09-28 CA CA002433192A patent/CA2433192A1/en not_active Abandoned
- 2001-09-28 WO PCT/US2001/030488 patent/WO2002027997A2/en not_active Application Discontinuation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6282580B1 (en) * | 1996-07-02 | 2001-08-28 | Sun Microsystems, Inc. | Bridge providing communication between different implementations of object request brokers |
US6273622B1 (en) * | 1997-04-15 | 2001-08-14 | Flash Networks, Ltd. | Data communication protocol for maximizing the performance of IP communication links |
US6161123A (en) * | 1997-05-06 | 2000-12-12 | Intermec Ip Corporation | Providing reliable communication over an unreliable transport layer in a hand-held device using a persistent session |
Non-Patent Citations (1)
Title |
---|
See also references of EP1334430A2 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1504356A1 (en) * | 2002-05-03 | 2005-02-09 | Coco Communications Corp. | Method and apparatus for persistent connections to a device through the use of multiple physical network connections and connection hand-offs between multiple bands, modes and networks |
EP1504356A4 (en) * | 2002-05-03 | 2014-04-30 | Coco Communications Corp | Method and apparatus for persistent connections to a device through the use of multiple physical network connections and connection hand-offs between multiple bands, modes and networks |
US8996678B2 (en) | 2002-05-03 | 2015-03-31 | Coco Communications Corp | Method and apparatus for persistent connections to a device through the use of multiple physical network connections and connection hand-offs between multiple bands, modes and networks |
US9277376B2 (en) | 2002-05-03 | 2016-03-01 | Coco Communications Corp. | Method and apparatus for persistent connections to a device through the use of multiple physical network connections and connection hand-offs between multiple bands, modes and networks |
US10142806B2 (en) | 2002-05-03 | 2018-11-27 | Coco Communications Corp | Method and apparatus for persistent connections to a device through the use of multiple physical network connections and connection hand-offs between multiple bands, modes and networks |
EP1940126A3 (en) * | 2006-12-19 | 2008-07-09 | Murata Machinery Ltd. | Relay server and client terminal |
US9560524B1 (en) | 2013-12-03 | 2017-01-31 | Sprint Communications Company L.P. | Wireless network application access by a wireless communication device via an untrusted access node |
Also Published As
Publication number | Publication date |
---|---|
AU2001294885A1 (en) | 2002-04-08 |
BR0114356A (en) | 2004-07-20 |
WO2002027997A3 (en) | 2002-06-20 |
MXPA03002837A (en) | 2004-09-10 |
NZ525356A (en) | 2004-05-28 |
EP1334430A4 (en) | 2005-04-20 |
CA2433192A1 (en) | 2002-04-04 |
EP1334430A2 (en) | 2003-08-13 |
JP2005502929A (en) | 2005-01-27 |
WO2002027997A9 (en) | 2003-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7028051B1 (en) | Method of real-time business collaboration | |
KR100711661B1 (en) | Method and apparatus for prioritizing data change requests and maintaining data consistency in a distributed computer system equipped for activity-based collaboration | |
US6128645A (en) | Hyper and client domain servers | |
US8176189B2 (en) | Peer-to-peer network computing platform | |
EP1177666B1 (en) | A distributed system to intelligently establish sessions between anonymous users over various networks | |
US6446116B1 (en) | Method and apparatus for dynamic loading of a transport mechanism in a multipoint data delivery system | |
US20130132058A1 (en) | Creating and managing virtual areas | |
JP2013524632A (en) | Management of network communication between network nodes and stream transport protocol | |
US20100223320A1 (en) | Data distribution efficiency for online collaborative computing sessions | |
US20080263132A1 (en) | Apparatus and method for efficient real time web language translations | |
Xuefu et al. | Design and implementation of web Instant Message System based on XMPP | |
KR100341395B1 (en) | Collaborative group editor system using JAVA specific property on internet and method thereof | |
WO2002027997A2 (en) | Computer program for maintaining persistent firewall-compliant connections | |
Ma et al. | A P2P groupware system with decentralized topology for supporting synchronous collaborations | |
JP2002009846A (en) | Communication system employing multimedia proxy server | |
da Silva et al. | CUBE system: a REST and RESTful based platform for liquid software approaches | |
Reed | A Discussion on Computer Network Conferencing | |
Prideaux | Implementing Java Based Telecollaboration Groupware | |
Kamolphiwong et al. | A design framework of interactive distance learning in distributed systems | |
Daadoo | Developing and Implementation of Distributed Chat Applications using WPF and WCF | |
Brookshier | The Socket API in JXTA 2.0 | |
Hutchison | gGSS—API: a group enhanced generic security service | |
Smith et al. | Towards a standards-based, message-oriented advanced collaboration system | |
Mekki et al. | A sample chat application based on JXTA | |
US20050060376A1 (en) | Secure computer telephony integration access |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
COP | Corrected version of pamphlet |
Free format text: PAGES 1-32, DESCRIPTION, REPLACED BY NEW PAGES 1-32; PAGES 33-38, CLAIMS, REPLACED BY NEW PAGES 33-38; PAGES 1/5-5/5, DRAWINGS, REPLACED BY NEW PAGES 1/5-5/5; DUE TO LATE TRANSMITTAL BY THE RECEIVING OFFICE |
|
WWE | Wipo information: entry into national phase |
Ref document number: PA/a/2003/002837 Country of ref document: MX Ref document number: 2433192 Country of ref document: CA Ref document number: 2002531663 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 525356 Country of ref document: NZ |
|
WWE | Wipo information: entry into national phase |
Ref document number: 605/DELNP/2003 Country of ref document: IN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2001975570 Country of ref document: EP Ref document number: 2001294885 Country of ref document: AU |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWP | Wipo information: published in national office |
Ref document number: 2001975570 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 525356 Country of ref document: NZ |
|
WWG | Wipo information: grant in national office |
Ref document number: 525356 Country of ref document: NZ |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 2001975570 Country of ref document: EP |