WO1998059460A1 - Information transfer system with dynamic distribution of data, control and management of information - Google Patents

Information transfer system with dynamic distribution of data, control and management of information Download PDF

Info

Publication number
WO1998059460A1
WO1998059460A1 PCT/US1998/012947 US9812947W WO9859460A1 WO 1998059460 A1 WO1998059460 A1 WO 1998059460A1 US 9812947 W US9812947 W US 9812947W WO 9859460 A1 WO9859460 A1 WO 9859460A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
servers
client terminals
network
terminals
Prior art date
Application number
PCT/US1998/012947
Other languages
French (fr)
Other versions
WO1998059460A8 (en
Inventor
Uri Raz
Original Assignee
Uri Raz
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Uri Raz filed Critical Uri Raz
Priority to JP50494099A priority Critical patent/JP2002508907A/en
Priority to EP98930450A priority patent/EP0990327A4/en
Publication of WO1998059460A1 publication Critical patent/WO1998059460A1/en
Publication of WO1998059460A8 publication Critical patent/WO1998059460A8/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • the present invention relates generally to information transfer systems, and more particularly to the dynamic distribution and transfer of information over a data communications network, for example, the Internet.
  • the transfer of information using the Internet is not centrally managed.
  • the Internet is an amalgam of many networks and many host computers. Using the Internet, information is stored on host servers and is requested using a static address location of that host server. The Internet does not redistribute data according to user requests. Furthermore, the Internet is organized into a hierarchy of two tiers, a client tier and a server tier. Thus, the Internet does not efficiently manage the location of information. Furthermore, the Internet does not enjoy the advantages of a four tier system, and its system resources are not managed .
  • the Internet is not a consistent behaving network.
  • the traffic and load on parts of its infrastructure can largely vary.
  • the response time is inconsistent, unstable, and unexpected. Therefore, traditional Internet tools (i.e. servers, clients) cannot be used "as is”, if a professional level of interactivity is required.
  • WANs Wide Area Networks
  • WANs Wide Area Networks
  • these assumptions can not be made, thus eliminating the use of traditional LANs or WANs.
  • the invention is directed to a system for transferring data over a network having a plurality of client terminals, and a plurality of servers connected to a network.
  • An operations management system connected to the network monitors and stores characteristic data about the client terminals and the servers.
  • An interfacing system connected to the network dynamically distributes data between the servers and the terminals as a function of the characteristic data. As a result, a portion of the data is stored at the client terminal .
  • Implementations of the invention may include one or more of the following.
  • the network may be a LANnet, a WANnet, the Internet or an Intranet.
  • Each of the client terminals may be a personal computer, an organizational personal computer, or a stand-alone terminal.
  • the stand- alone terminal may further include hardware to execute the loading of smart cards, the reading of magnetic cards, or the processing of videographics.
  • the servers may include an information server, a transactional server, or an external server.
  • the transactional server may perform a financial transaction or a personal transaction.
  • the network may be described as a four-tier model.
  • the system may also include a graphical user interface to display a portion of the data on the client terminal.
  • the system may also be operable to interact with a plurality of third party applications.
  • the interfacing system may be a request broker system.
  • the system may also include a telecommunications device to connect to the network to access data from the servers.
  • the system may also include an optimization system to distribute data between the client terminals and the servers.
  • the characteristic data may include a plurality of static or dynamic parameters associated with each of the client terminals, or a usage pattern associated with the client terminals.
  • the invention is directed towards a method for transferring data over a network having a plurality of client terminals and a plurality of servers.
  • the method includes establishing a data communication path between the client terminals and the servers.
  • a database of characteristic data associated with the client terminals and the servers may be generated.
  • the method further includes dynamically distributing data between the client terminals and the servers as a function of the characteristic data and the database. As a result, a portion of the data resides in the client terminals, and a portion of the data resides at the servers .
  • the establishing step may further include loading an application onto one of the terminals, and establishing the data communication as a function of specifications of the application.
  • the invention is directed to a computer-based method of processing information dynamically between a plurality of client terminals and a plurality of servers.
  • the method includes the steps of establishing a data communication path between the client terminals and the servers; generating a database of characteristic data associated with the client terminals and the servers; and dynamically distributing data between the client terminals and the servers as a function of the characteristic data in the database.
  • a portion of the data resides at the client terminals and a portion of the data resides at the servers .
  • FIG. 1 is a constructional diagram of an Information Transfer Network System in accordance with the present invention.
  • FIG. 2 is a block diagram of the components and architecture of the Information Transfer Network System of FIG. 1.
  • FIG. 3 is a block diagram of the client and the server of the Information Transfer Network System.
  • FIG. 4 is a constructional diagram of the general architecture of the Information Transfer Network System.
  • FIG. 5 is a block diagram and flowchart of the processing sequence of a presentation system in accordance with the system of FIG. 1.
  • FIG. 5A is a block diagram of the object oriented data model used to transfer information between the presentation system and a request broker.
  • FIG. 5B is a block diagram of a bandwidth optimization system.
  • FIG. 5C is a block diagram of the request broker data model .
  • FIG. 6 is a block diagram of the JAVA Applet for the client terminals of the Information Transfer Network System.
  • FIG. 7 is a flowchart of the server of FIG. 3.
  • FIGS. 8a and 8b are a block diagram of a database design in accordance with the present invention.
  • FIG. 9 is a block diagram of a visual data management tool .
  • FIG. 10 is a table of a database example depicting the structure of a database of the system of FIG. 1.
  • FIG. 11 is a table of the database example depicting the object link types of the database of FIG. 10.
  • FIG. 12a is part A of the table of the database example depicting the data in the database of FIG. 11.
  • FIG. 12b is part B of the table of the database example depicting the data in the database of FIG. 11.
  • FIG. 12c is part C of the table of the database example depicting the data in the database of FIG. 11.
  • FIG. 13 is an illustration of a classification tree and associated data items of the database example of FIG. 11.
  • FIG. 1 shows a block diagram of an implementation of an Information Transfer Network System 100.
  • system 100 provides a medium for presenting visual information (multimedia) , performing business transactions, and providing advanced services to customers through publicly accessible terminals or home personal computers connected to a network.
  • the system includes an infrastructure 2.
  • Infrastructure 2 may be a LANnet , WANnet , Internet or Intranet.
  • References to the terms "backbone” and “infrastructure” are to be similarly construed to represent a network for supporting the distribution of information, for example, data to and from a multitude of terminals and servers connected to the network.
  • the system also includes one or more client terminals 1 connected to backbone 2.
  • Client terminals 1 may be stand-alone terminals which are able to process, for example, credit card information or execute video applications.
  • the system also includes a plurality of personal computers "PCs" 3, an organization network 5, a data management system 6 , and a control management system 7.
  • the data management system 6, the control management system 7, the organization network 5 and PCs 3 are connected to infrastructure 2.
  • Data management system 6 manages existing and new entry data tasks.
  • Data management system includes a copy of information located in the database of information server 8. At predefined periods, the database of the information server 8 is updated by the data management system 6.
  • the database of information server 8 is the "formal" active database of system 100.
  • Stand-alone terminals 1 and 1' are connected to infrastructure 2 via organizational network 5.
  • Stand-alone terminals 1 and 1', PCs 3 and OPCs 4 may execute similar applications. It should be noted, however, that stand-alone terminals 1 and 1 ' may include hardware and peripherals which may execute additional applications, for example, loading smart cards, reading magnetic cards, and processing video graphics .
  • System 100 also includes an information server 8, a transaction server 9, and an external server 10.
  • a content provider server 11 is also shown connected to the network backbone 2 via external server 10.
  • the system 100 may also include thousands of terminals, servers, and network facilities.
  • PCs 3 connect to infrastructure 2 in a conventional manner using the hypertext transfer protocol
  • HTTP HyperText Transfer Protocol
  • a financial or personal transaction may be requested by one of the terminals.
  • the information server 8 connects the application with the transaction server 9 via the information server 8.
  • Transaction server 9 may process the request locally, or may establish a remote connection to a third party clearing system.
  • the application may require additional information that is not located on either of the information server 8 or transaction server 9.
  • the information may be retrieved from content provider server 11.
  • information server 8 establishes a connection via an external server 10 to a content provider server 11.
  • external server 10 establishes a gateway to content provider 11.
  • an application channel is formed.
  • the application channel is used to transmit information from the database of server 8 to PC 3 upon the request of the user.
  • the information may be stored or displayed by the user.
  • FIG. 2 is a more detailed block diagram of the components and architecture of the system 100.
  • the Client 12 includes Smart Decompression Engine 13 connected to Browser 14.
  • Browser 14 includes Java Applet 15. Browser 14 is connected to External Devices 16.
  • External Devices 14 is connected to Control and Management Agent 17.
  • Client 12 is connected to Secure HTTP Channel 31, which is connected to Server 18.
  • Server 18 comprises Smart Compression Engine 19 connected to a Control and Management Agent 21, which is connected to services and a database.
  • Control and Management system 23 includes Configuration Database 26, Agent Manager 27, and Optimizing Engine 28.
  • Optimizing Engine 28 includes Mathematical model 24 and Optimization Algorithms 25.
  • Data Entry System 29 includes Visual database manipulation tool 30.
  • FIG. 3 is a detailed block diagram of the Browser 14, Java Applet 15, Secure HTTP Channel 31 and Database 22 components and architecture.
  • Browser 14 comprises Java Virtual Machine 14.
  • Java Applet 15 comprises Application Classes 34.
  • External Devices 16 are connected to Java Applet 15 by Com Bridge 32.
  • External Devices 16 are connected to Control and Management Agent 17 by SNMP 33.
  • Visual Data Management 29 is connected to database 22 by Visual Data Insertion channel 31' .
  • External Services 39 are connected to Services Database 20.
  • Services Database 20 includes Service Broker 35, Java Classes 36, Application Data 37 and Multimedia Data 38.
  • FIG. 4 shows a constructional diagram of the general system architecture of the Information Transfer
  • Request Broker 40 comprises a HTTP Request Broker 41 connected to Request Broker Interface Modules 42, and a Content and Software Transmitter 43 connected to the Profiles Manager 44.
  • the Request Broker Interface Modules 42 are connected to Clients 12 and
  • the Information Transfer Network system architecture is based on a unique 4 -Tier model architecture system that allows third-party components to be integrated in a plug-and-play fashion. This architecture allows the Information Transfer Network system to use different Graphical User Interface ("GUI") and multimedia interfaces to distribute software and information over the network, and to interact with third party applications and databases.
  • GUI Graphical User Interface
  • the Information Transfer Network system uses Object Oriented Design
  • OOD/OOP a component based system, which permits the re-use and re-purposing of functions.
  • the first tier resides on the client machine.
  • the other tier systems may also reside on the client machine, on a single server, or across multiple servers over the network. Tiers can be duplicated on multiple servers for security, load balancing and optimization of system performance. The separation of these functions into tiers enables the system to adapt to different environments and technology standards. For example, the Presentation system can adapt itself for use by a home PC user (Internet) , or specialized terminals.
  • FIG. 5 shows an implementation of the processing sequence of the presentation system.
  • the presentation system incorporates a thin-client methodology, thereby containing only minimal functions required to display (GUI) , and the drivers for essential internal devices (sound card, video card, network card, etc.) . All advanced interface features, business logic, and services may be loaded onto the client terminal dynamically on system demand. The information or intelligence at the client terminal varies according to the services demanded by the user.
  • the Presentation system is implemented using Java architecture, and executes inside a standard web browser that supports a Java virtual Machine.
  • Suitable browsers include the Microsoft Internet Explorer version 3 (IE3) or the Netscape Navigator version 3.
  • Java is a commercially available multi-platform Object Oriented language that adheres to the Client/Server model, and may run on any machine that has a Java Virtual
  • the Presentation system passes all requests for information or services through the Request Broker system 40.
  • the presentation system may interact with the Request Broker system through the
  • Java Applets are small blocks of computer code which may be loaded onto the Client 12 from the Server 18 to be executed by the Client 12. Java Applets may perform interfacing between the Presentation system and the Request Broker 40. The following are protocols which may be used to perform various functions of the presentation system.
  • Java Database Connection (“JDBC”) is an incarnation of the well- known Open Data Base Connection (“ODBC”) protocol that interfaces with different types of databases.
  • ODBC Open Data Base Connection
  • the JDBC is the Java flavor of ODBC developed for the Java language.
  • the Common Gateway Interface may run scripts on the server 18 to translate client requests into calls for information to external programs, applications, or servers.
  • ActiveX is Microsoft's product based upon Objects interfacing model (OCX) adopted for internet components interfacing.
  • An ActiveX component is a code that may run on the client 12 to handle interfacing with the server 18.
  • Common Object Request Broker Architecture (“CORBA") allows applications to communicate with each other irrespective of the type and location of the application.
  • CORBA defines an Interface Definition Language (IDL) and the Application Programming Interface that enable client to server object interaction.
  • IDL Interface Definition Language
  • API Application Programming Interface
  • Network Pipe is a dedicated protocol used for streaming data. This protocol is used to establish or maintain a continuous flow of data, for example, in a telephone conversation or video clip.
  • the presentation system is insensitive to the content being presented, since the functions required to display material are downloaded as objects with the material .
  • Multiple GUI templates may be created to offer different displays for the same content without duplicating the other tiers.
  • client terminals such as PC 3 and OPC 4 could display different views of the same content using the same tiers.
  • the presentation system will start the application by executing HTML File 50, and will load main Java application 52.
  • the presentation system using main java applets 52, will present Java screen A 54 to the user.
  • Java screen A 54 comprises Java object-Movie 60, Java object -Button 56, and Java object -Button 56. If Java object-button 56 is activated, the presentation system will load Java Screen B 54 ' . If Java object-button 58 is activated, the presentation system will load Java Screen C 54".
  • FIG. 5A shows a block diagram of the data model used to transfer information between the presentation system and the request broker.
  • the Presentation system includes a Graphical User Interface.
  • the GUI Multimedia Components of the Information Transfer Network system include: I a) JAVA-HTML Classes that enable the use of HTML within Java applets, including rich text format, pages layout, and hyperlinks (between items in Java application) ; b) controlled WWW Links Java applets that can completely control a standard HTML session. This includes replacing browser toolbars and menus with Java navigation toolbars, and capturing and filtering all hyperlinks; c) peripherals interaction applets.
  • Object 60 comprises various data objects to be presented by GUI to the presentation system.
  • FIG. 5B shows a block diagram of the bandwidth optimization system.
  • the optimization system includes Bandwidth Optimization Methods for compression and decompression of GUI components and Java Classes.
  • the Client 12 comprises Control and Management Agent 17.
  • Server 18 comprises Control and Management Agent 21.
  • Control and system 23 comprises Configuration Database 26, Agent Manager 27, and Optimizing Engine 28.
  • Optimization Engine 28 includes Mathematical model 24 and Optimization Algorithms 25.
  • Control and Management Agent 23 is connected to the Client 12 and Server 18 using
  • Agent Manager 27 Agent Manager 27 is connected to C&M Agent 17 and C&M Agent 21.
  • FIG. 5C shows a block diagram of Request Broker data model.
  • Java Screen 90 comprises Java Object-Item List 92 and Java Object -Keyboard 94.
  • Request Broker 40 is connected to database 22 using Database Driver 106.
  • Request Broker 40 is connected to presentation system through Java Screen 90 using Optimization Agent 104 and Translator 102.
  • the Information Transfer Network system 100 utilizes a Forms Generator/Processor that includes: a) Form Filling system that enables users to complete self- service forms on screen for electronic submission or printing; and b) Validity Checking system.
  • the Forms may have embedded validity checking, which runs on the client 12.
  • the Information Transfer Network system 100 utilizes Authoring and Data Management Tools including: a) Application Generator- Rapid Application Development (RAD) tools for building self-service applications; b) Object-Oriented Dynamic Display System that Reads GUI objects from databases on-the- fly, and displays them according to Properties and Methods; and c) Visual Data Management- Visual tools for organizing, classifying, and maintaining data items.
  • Authoring and Data Management Tools including: a) Application Generator- Rapid Application Development (RAD) tools for building self-service applications; b) Object-Oriented Dynamic Display System that Reads GUI objects from databases on-the- fly, and displays them according to Properties and Methods; and c) Visual Data Management- Visual tools for organizing, classifying, and maintaining data items.
  • RAD Application Generator- Rapid Application Development
  • Visual Data Management- Visual tools for organizing, classifying, and maintaining data items.
  • the Information Transfer Network system 100 utilizes Database Technology that includes a Generic Database Design, a Standardized Data Modeling may be used to represent all applications, and GUI objects. This permits search, data entry, and database distribution tools to be operated on every application without modification.
  • FIG. 6 illustrates a start-up routine for the JAVA Applet for the Information Transfer Network System 100 client terminals.
  • FIG. 7 shows a flowchart of the processing sequence of the applications system of Server 18.
  • FIGS. 8a and 8b show a block diagram of the generic database design.
  • the basic concept of the database model is based on three components: OBJECTS, the PROPERTIES of each object, and the LINKS between the objects.
  • the database model contains the META-DATA which represents the structure of the data, and determines the laws of data including OBJECT_TYPES : the types that the objects may be; PROPERTY_TYPES : the types of properties each object may have; DATA TYPES : the data types (numeric, string, etc.) a property may be; LINK_TYPES : the kinds of links that may be between object types; and - 13/1 -
  • the Request Broker system 40 acts as a link between the Applications system and the Presentation system.
  • the Request Broker system 40 interprets the request from the Presentation system, and locates the appropriate Request Broker Interface server. Suitable servers include Oracle, Lotus Notes, and GIS.
  • Request Broker System 40 passes the request to the server application, receives the results, and returns the results to the Presentation system. Because the Presentation system interacts with the servers only through the Request Broker system 40, the Presentation Layer does not maintain information concerning the location of the loading of the application.
  • a single Request Broker system may serve multiple applications, or a specialized Request Broker system may be implemented for a single application.
  • the Request Broker system interfaces to the
  • Request Broker system architecture results in an open environment that can integrate new types of servers. For example, a new third-party electronic commerce server that implements SET security may be integrated into the Request Broker system.
  • a single Request Broker system may handle multiple, simultaneous requests. This allows traffic to be monitored and controlled, and eliminates the need to run a separate process for each request as would be - 15 - required using the CGI protocol, or direct requests from the client terminals to the applications.
  • the Application system tier contains all of the applications and services to be used by the end-user.
  • This tier may include applications developed specifically for the Information Transfer Network system 100, or applications from third parties, written in any standard language or with any tool .
  • third-party applications that utilize a world-wide- web interface may interface with the Request Broker system using the World Wide Web Request Broker Interface.
  • Applications that do not utilize a world wide web interface may interface with the CORBA to Java, and Java to CORBA Request Broker Interface modules.
  • the Information Transfer Network system 100 has the ability to incorporate or integrate third-party applications which may run on separate computers, or even within legacy systems such as mainframes.
  • the Information Transfer Network system 100 may use the industry standard Oracle 7.3 RDBMS engine for its applications, and meta data storage.
  • the applications may interact with most standard RDBMS (Informix DB/2 SQL Server) or non-RDBMS (Xbase, IMS) .
  • Third-party applications may use any database or combination of databases on any platform.
  • Databases may be distributed across multiple servers over the network as required to optimize performance. For example, video clips can be considered as part of the same logical database as other content (from the Request Broker system point of view) , even though the data may be physically located on a - 16 - specialized video server, or possibly on the client terminal machine .
  • the architecture of system 100 is based on object oriented design using, for example, Sun Java architecture.
  • Java provides the ability to download objects (classes) as they are required.
  • Suitable development systems include Sun Microsystems JDK 1.1.1, Microsoft J++, Symantec Visual CafJ Pro, Borland Jbuilder and Microsoft SDK 2 for Java, and Java Beans.
  • a single Java Bean component may function as a first-class component within a range of applications, including applications developed in Visual Basic, Visual C++, Word, Excel, and Internet Explorer.
  • An Active-X bridge Java Bean will enable the
  • the present invention provides the following Java Packages: a) Dynamic Display Package: which reads the properties and methods of objects to be displayed, and displays them according to these properties; b) Display Package which displays and fully controls an HTML window within a Java page; executes hyperlinks to related content, browses Web sites from within the Java environment using a customized toolbar, and controls and filters links to the WWW; c) Internet Optimization Package compression graphic classes for low-bandwidth users; d) Database Connection and Manipulation Package connects to Oracle DB and other databases, searches and retrieve information, and e) Peripheral Support Package which handles Device drivers to communicate with peripherals . - 17 -
  • the Information Transfer System thin-client is designed to operate inside any standard web browser with a Java Virtual Machine.
  • the browser may be customized to fully control the GUI.
  • the standard browser buttons, toolbars, and menus may be replaced with a multimedia GUI that is suitable for mouse or touchscreen use.
  • Java Classes, help functions, sounds, and other multimedia capabilities may also be added to the interface .
  • COM Object Software running within the browser environment communicates with the hardware through a Component Object Model Object (COM Object) that controls device drivers
  • COM Object Component Object Model Object
  • the COM object can interface with and activate Microsoft Active-X controls, such as NetMeeting Video Conferencing.
  • Microsoft Active-X controls such as NetMeeting Video Conferencing.
  • This integration of Java and Active-X may - 18 - be facilitated through the Java Active-X Bridge Java Bean, rather than through the COM object.
  • the thin- client may be extended and enhanced using third-party browser plug-ins. This is particularly beneficial for providing enhanced multimedia effects for the GUI, such as Virtual Reality Modeling Language (VRML) for 3-D interfaces .
  • VRML Virtual Reality Modeling Language
  • the Information Network System client integrates the Java Classes, which support HTML 3.2 documents for display of Rich Text Format (fonts, colors, point size) and images on-screen.
  • the HTML document may contain hyperlinks to related information items within the application, or to related sites on the World Wide Web (“WWW”) .
  • WWW World Wide Web
  • the screen Upon linking to a WWW site, the screen displays the site in a frame on the upper portion of the screen.
  • the Java-based navigation GUI panel interface is displayed on the lower portion of the screen.
  • the GUI provides the essential functions for Web Browsing, with all browser toolbars and menus removed from the screen.
  • This feature is achieved by first loading a special HTML page which consists of two frames.
  • the lower frame displays a Java applet containing a multimedia GUI .
  • the lower frame controls the upper frame, which contains the linked HTML page. This is implemented completely in
  • WWW links may be filtered in order to control or limit access to specific sites.
  • An on-screen keyboard may be used to enter specific URLs through a touchscreen.
  • Real-time compression techniques may be implemented to move information and applets from the server 18 to the client 12.
  • the server determines what type of network connection exists.
  • a fast LAN connection may be sent full quality, uncompressed files including text, images, video, and Java Classes.
  • the server may compress the files in real-time, which may then be transmitted over the network and decompressed at runtime by the client.
  • Each type of information item has a unique compression method, which is most suitable for the specific item. For example, JPEG compression is used for images, and CAB or JAR compression is used for Java Classes.
  • the JAR technology is also capable of compressing data information and graphics in addition to the Java classes. For images, compression ratios of 1:10 may be achieved using JPEG.
  • One standard for accessing information through the Internet is known as pulling, whereby users request specific sites through a Web browser. The sites are then viewed in real-time, as they are loaded.
  • Another standard for accessing information on the Internet is pulling, whereby users request specific sites through a Web browser. The sites are then viewed in real-time, as they are loaded.
  • Push technology which sends information to a client terminal automatically.
  • Information may be general purpose content, or specific content based on a profile or set of parameters established in advance by/for the user.
  • Content is delivered as different channels. Each channel offers different types of content, and the user may specify how often the channel should be updated. For example, a user could subscribe to a newspaper channel in order to receive a customized daily (or more frequent) newspaper based on his/her specific topics of interest.
  • the Information Transfer Network 100 may integrate standard Internet-based applications. For example, e- - 20 - mail clients, newsgroup readers, chat rooms, and access to proprietary online services (AOL, CompuServe, MSN, etc.) may be integrated into specific applications.
  • the integration may be performed by Active-X to Java COM bridge, or through a CORBA server to activate remote objects in third-party applications.
  • an application may offer an electronic suggestion box, which will forward suggestions via e-mail to the intended recipient.
  • the HTML interface allows users to search the Internet within a controlled and filtered environment.
  • the Information Transfer Network system 100 integrates a "firewall" to secure servers and systems residing on the Internet infrastructure. This allows the system terminals to be networked through the Internet, or through private Intranets. When connected through an Intranet, the terminals may still offer access to the Internet via a firewall protected gateway at the server. The firewall encrypts data between the client and server when networked through the Internet, and controls access in and out of the system.
  • a SSL secure channel method may be used to provide additional security for transaction data, for example, when performing a financial transaction with server 9.
  • NC Network Computer
  • the Java-based system may be executed on NC machines being developed by, for example, Sun, Oracle, and IBM.
  • the system may be downloaded to the terminal and run under the Java OS .
  • the Information Transfer Network System 100 incorporates full multimedia and graphics capabilities. - 21 -
  • Video and audio may be streamed when delivered from the server to the client. This allows the user to view the video concurrently, while it is being downloaded.
  • the Information Transfer Network System 100 may also show video clips as part of the Interface (in MOV or MPEG format using H.263 standard for video and G723 format for audio.
  • Video Conferencing (2 -Way Video) may be employed, such as video conferencing, including white board, document sharing, audio-only Conferencing, and group Conferencing.
  • video cameras may be used to identify users at a terminal, and as part of applications that may require a photo such as a Drivers License application.
  • Other applications include Rich Text Format and HTML and virtual Reality Modeling Language (VRML) Interface in which 3-D interfaces can emulate real -word situations. For example, a VRML supermarket, which allows a user to stroll the aisles, and place items in a 3-D virtual shopping cart, may be employed.
  • VRML virtual Reality Modeling Language
  • Cosmo VRML plug-in for displaying 3-D virtual world interfaces may also be employed.
  • Applications may relate from 3-D items in the virtual world to information items in a database.
  • a user could select a grocery item in a 3-D interface, and retrieve nutrition information from the database.
  • Geographic Information Systems which include vector and raster maps of the entire United States and other countries may be implemented. Any address (such as ATM locations) can be geocoded and plotted on a map, and a routing system can produce point- to-point driving directions to provide transit maps and point-to-point directions.
  • the forms generator scans paper-based forms and converts them to HTML documents using OCR technology. - 22 -
  • Form blanks are automatically converted to fields which may accept data.
  • Java Applet may be used to process the forms from the form generator.
  • Validation functions may be added to each field to perform data checking and validation at the client. For example, an account number may be verified by the form processor using a check- digit .
  • Blank or completed forms may be outputted to a printer or form input may be submitted to an application, or a database on the server.
  • CTI Computer-Telephone Integration
  • Server-based software modules enable users at a terminal to connect into a public switched telephone network to access information for example, a hotel location.
  • the CTI applications are implemented using Microsoft standard Telephone API (TAPI) , running on a
  • Windows NT server with a Dialogic voice/modem card or any other voice/modem card which is Microsoft TAPI compliant.
  • the server side of the application is developed using JTAPI .
  • a two-way CTI application where an application can interact with a person on the other line, is also possible. In this type of application, the end-user would not speak directly to the other end-user. Instead, a server may "speak" using text-to-speech synthesis (DSP) , and receive responses using touch-tones (DTMF) . The responses may then be converted to messages for display on the end-user's screen, and the session may continue.
  • DSP text-to-speech synthesis
  • DTMF touch-tones
  • the responses may then be converted to messages for display on the end-user's screen, and the session may continue.
  • the system allows users to connect with businesses (e.g. small hotels) that are not computerized, while still allowing the content provider server 11 to control the transaction.
  • the system may also allow
  • the Information Transfer Network system 100 supports multilingual audio and bi-directional text display, including Latin and non-Latin characters. Languages may be switched on demand, for example, between English, Spanish, French, German and Hebrew. Multilingual technology through special Unicode character sets may be controlled by Java Classes on Windows-based on non-Windows based machines.
  • the Dynamic Presentation Generator (described in detail below) provides for multiple languages within an application.
  • Rapid Application Development contains a set of tools that enable non-programmers to design, build and administrate complete applications, which include GUI, interactive features, data modeling, and content management.
  • Each application contains META data to describe the application's structure. Therefore, every application data model and GUI is modeled as a set of objects that have properties (attributes) , methods
  • An application may be loaded using the following steps.
  • a graphics template (buttons, backgrounds, logos, etc.) is chosen from a library.
  • GUI and user interactions are defined. For example, when the application uses buttons, one has to define the buttons' shape, color, x-y coordinates, and actions that are executed when the button is pressed. The related objects are then linked, and the resulting application model is stored in the generic database model .
  • the dynamic presentation generator reads all the GUI objects of the application from the database model for display.
  • One routine, Reflection (during runtime) allows the application to identify every object type (loaded dynamically), retrieves information about the object's capabilities, and links to other objects.
  • Another routine, Transparent Canvas allows new objects to be displayed without interfering with background objects or currently displayed objects.
  • the data entry tool enables insertion and management of content and classification data that relates to the application.
  • the data entry tool visually browses the classifications and data. Once the database updates are inserted, the system's distribution tools distributes all the information to the appropriate databases, according to the optimization algorithm.
  • the Information Transfer Network 100 allows application data and GUI to be described as a set of Objects that have Properties (attributes) , Methods (actions) , and links (connections to other objects) .
  • a unique generic database model may model, store, and manipulate the Objects, Methods, Properties, and object links of any type of application data model.
  • the generic model also stores Meta Data, which is used to display and interact with the GUI of the application. - 25 -
  • FIGS. 10, 11, 12a-c and 13 illustrate an exemplary application using system 100.
  • Two main classifications are shown: Computers and Food. Within each classification, there are associated companies: G, M, and I . Each Company has products such as Multimedia Stations and Terminals.
  • Table 1 of FIG. 10 and Table 2 of FIG. 11 show the "META data" which describes the Object Types, Properties, and Link Types.
  • Table 3 of FIGS. 12a - 12c show sample data filled into the model established in Tables 1 and 2.
  • FIG. 13 is an illustration of the classification tree and associated data items of the example. This model permits many different applications to share a common database design. Therefore, the same search and statistical analysis tools may be used within any application without modification. Thus, the database design, search, data entry, and statistics tools are independent of the content being represented.
  • Application databases (which contain information, pictures, video, etc.) may be distributed and replicated across the network to optimize overall system performance. Due to the frequently changing environment in application and information demand, communications bandwidth, and the facilities in the station, information may be redistributed across the network. For example, if there is high demand for a certain video clip, the clip may be distributed for storage on a server near the terminal , or even on the terminal hard drive .
  • the decision of where and how to distribute databases is made by the system.
  • the decision is a function of all system parameters.
  • the system also - 26 - determines the optimal distribution of information to achieve the most efficient performance.
  • the application is not modified upon changes in the database distribution.
  • the following describes the process and architecture of the dynamic distribution and system optimization systems.
  • Every operation (menu choices, coordinates of screen touches) within the system is recorded in a database table.
  • This data may be analyzed using statistical analysis tools, including Oracle tools, in order to determine usage patterns, and to improve or alter system performance.
  • Usage patterns such as printer usage may be analyzed to predict, for example, when the printer will run out of paper.
  • the number of screen touches of a component of the GUI may also be monitored.
  • a text entry is added to a log file which maintains a statistical record.
  • Each entry line of the log file records the time and date stamp of the action, the type of action, and some general system status information the status information may be used to decode the action recorded in relation to the system's operation status.
  • the log file is transmitted to the control and management system on predefined schedules or on a specific request from the control and management system. The log file may then be analyzed to determine the needs of the system including maintenance and correction.
  • the Information Transfer Network system 100 is a large, complex, changing, non-deterministic network, handling massive amounts of information, transactions, and services. To manage this network, an Optimized
  • OISMA Integrated System Management Architecture
  • the OISMA may perform the following functions: a) consolidate a central console that monitors all system components; b) distribute regional and functional specific consoles; c) determine various system alerts of system B, (pager, fax, sound, send messages to subcontractor system) ; d) perform automatic recovery actions to recover from problems; e) takeover any station and execute commands from a remote source; f) track and analyze problems on system using help desk tools; g) track and manage the flow of system transactions; h) monitor usage patterns and statistics; i) record automatically inventory related to network inventory autodetect and control B plug-and-play installation of components; j) control hardware/Software version and configuration; k) perform preventive Maintenance Management and 1) maintain Central backup.
  • Simple Network Management Protocol SNMP
  • OISMA Simple Network Management Protocol
  • Each tier will have agents that receive orders, collect data, and report back to the management system. - 28 -
  • Agents for specific software e.g. Oracle Database
  • hardware devices e.g., Apple MacBook Air, or Windows Azure.
  • operating systems e.g., Windows Azure, Windows Azure, or Windows Azure.
  • HP Open View Network Management Framework - GS intends to integrate this set of network and hardware management tools.
  • control and management systems such as the Trivoli system from IBM and the SMS system from Microsoft, may be used in the information transfer network 100.
  • System Optimization provides the optimal service on all terminals over time. Services include fast response time, availability of services and peripherals (printer, network, etc.), and appropriate adaptation to terminal capabilities (e.g. home PC with low-bandwidth, machine without video capability, etc.)
  • Optimization may be achieved by one or more of the following.
  • Static parameters of the hardware and peripheral on any of the terminals may be measured.
  • the type of memory, the type of terminal, or the type of network connection to the terminal may be measured.
  • Dynamic parameters including the current available bandwidth, server utilization, the location and nature of the data, and the location of the selective application or service may be monitored.
  • the system may track the number of uses of a particular application or service over time. - 29 -
  • the system determines the optimal message to fulfill user request. Further, this optimization may be performed at preset schedules during operation to redistribute applications and content across the network.

Abstract

A method and system (100) for dynamically distributing information across a network is provided. Client terminals (1, 1', and 3) and servers (8, 9, 10) are in data communication with a network (2), for example, the Internet. A database of characteristic data describing characteristics of the client terminals and the servers is generated by a data management system (6). The information residing on the network is dynamically distributed between the client terminals and the servers as a function of the characteristic data in the database, such that a portion of the data resides in the client terminals and in the servers.

Description

INFORMATION TRANSFER SYSTEM WITH DYNAMIC DISTRIBUTION OF DATA, CONTROL AND MANAGEMENT OF INFORMATION
Background of the Invention
The present invention relates generally to information transfer systems, and more particularly to the dynamic distribution and transfer of information over a data communications network, for example, the Internet. The transfer of information using the Internet is not centrally managed. The Internet is an amalgam of many networks and many host computers. Using the Internet, information is stored on host servers and is requested using a static address location of that host server. The Internet does not redistribute data according to user requests. Furthermore, the Internet is organized into a hierarchy of two tiers, a client tier and a server tier. Thus, the Internet does not efficiently manage the location of information. Furthermore, the Internet does not enjoy the advantages of a four tier system, and its system resources are not managed .
The Internet is not a consistent behaving network. The traffic and load on parts of its infrastructure can largely vary. Thus, the response time is inconsistent, unstable, and unexpected. Therefore, traditional Internet tools (i.e. servers, clients) cannot be used "as is", if a professional level of interactivity is required. Traditional Local Area Networks ("LANs") or Wide
Area Networks ("WANs") that employ dedicated infrastructure gain stability and dependability based on the assumption that the users, the amount of users, and the content that ran over the network are expected. In the case of the Internet, these assumptions can not be made, thus eliminating the use of traditional LANs or WANs.
Summary of the Invention In one embodiment, the invention is directed to a system for transferring data over a network having a plurality of client terminals, and a plurality of servers connected to a network. An operations management system connected to the network monitors and stores characteristic data about the client terminals and the servers. An interfacing system connected to the network dynamically distributes data between the servers and the terminals as a function of the characteristic data. As a result, a portion of the data is stored at the client terminal . Implementations of the invention may include one or more of the following. The network may be a LANnet, a WANnet, the Internet or an Intranet. Each of the client terminals may be a personal computer, an organizational personal computer, or a stand-alone terminal. The stand- alone terminal may further include hardware to execute the loading of smart cards, the reading of magnetic cards, or the processing of videographics. The servers may include an information server, a transactional server, or an external server. The transactional server may perform a financial transaction or a personal transaction. The network may be described as a four-tier model. The system may also include a graphical user interface to display a portion of the data on the client terminal. The system may also be operable to interact with a plurality of third party applications. The interfacing system may be a request broker system. The system may also include a telecommunications device to connect to the network to access data from the servers. The system may also include an optimization system to distribute data between the client terminals and the servers. The characteristic data may include a plurality of static or dynamic parameters associated with each of the client terminals, or a usage pattern associated with the client terminals.
In another aspect, the invention is directed towards a method for transferring data over a network having a plurality of client terminals and a plurality of servers. The method includes establishing a data communication path between the client terminals and the servers. A database of characteristic data associated with the client terminals and the servers may be generated. The method further includes dynamically distributing data between the client terminals and the servers as a function of the characteristic data and the database. As a result, a portion of the data resides in the client terminals, and a portion of the data resides at the servers .
Implementations of the invention include the following. The establishing step may further include loading an application onto one of the terminals, and establishing the data communication as a function of specifications of the application.
In another aspect, the invention is directed to a computer-based method of processing information dynamically between a plurality of client terminals and a plurality of servers. The method includes the steps of establishing a data communication path between the client terminals and the servers; generating a database of characteristic data associated with the client terminals and the servers; and dynamically distributing data between the client terminals and the servers as a function of the characteristic data in the database. As a result, a portion of the data resides at the client terminals and a portion of the data resides at the servers .
Other advantages and features of the present invention will become apparent from the following description, including the drawings and claims.
Brief Description of the Drawing FIG. 1 is a constructional diagram of an Information Transfer Network System in accordance with the present invention. FIG. 2 is a block diagram of the components and architecture of the Information Transfer Network System of FIG. 1.
FIG. 3 is a block diagram of the client and the server of the Information Transfer Network System. FIG. 4 is a constructional diagram of the general architecture of the Information Transfer Network System.
FIG. 5 is a block diagram and flowchart of the processing sequence of a presentation system in accordance with the system of FIG. 1. FIG. 5A is a block diagram of the object oriented data model used to transfer information between the presentation system and a request broker.
FIG. 5B is a block diagram of a bandwidth optimization system. FIG. 5C is a block diagram of the request broker data model .
FIG. 6 is a block diagram of the JAVA Applet for the client terminals of the Information Transfer Network System. FIG. 7 is a flowchart of the server of FIG. 3.
FIGS. 8a and 8b are a block diagram of a database design in accordance with the present invention. FIG. 9 is a block diagram of a visual data management tool .
FIG. 10 is a table of a database example depicting the structure of a database of the system of FIG. 1. FIG. 11 is a table of the database example depicting the object link types of the database of FIG. 10.
FIG. 12a is part A of the table of the database example depicting the data in the database of FIG. 11. FIG. 12b is part B of the table of the database example depicting the data in the database of FIG. 11.
FIG. 12c is part C of the table of the database example depicting the data in the database of FIG. 11.
FIG. 13 is an illustration of a classification tree and associated data items of the database example of FIG. 11.
Description of the Preferred Embodiments FIG. 1 shows a block diagram of an implementation of an Information Transfer Network System 100. Generally, system 100 provides a medium for presenting visual information (multimedia) , performing business transactions, and providing advanced services to customers through publicly accessible terminals or home personal computers connected to a network. The system includes an infrastructure 2. Infrastructure 2 may be a LANnet , WANnet , Internet or Intranet. References to the terms "backbone" and "infrastructure" are to be similarly construed to represent a network for supporting the distribution of information, for example, data to and from a multitude of terminals and servers connected to the network. The system also includes one or more client terminals 1 connected to backbone 2. Client terminals 1 may be stand-alone terminals which are able to process, for example, credit card information or execute video applications. The system also includes a plurality of personal computers "PCs" 3, an organization network 5, a data management system 6 , and a control management system 7. The data management system 6, the control management system 7, the organization network 5 and PCs 3 are connected to infrastructure 2. Data management system 6 manages existing and new entry data tasks. Data management system includes a copy of information located in the database of information server 8. At predefined periods, the database of the information server 8 is updated by the data management system 6. The database of information server 8 is the "formal" active database of system 100.
Organization PC terminals ("OPCs") 4 and stand- alone networks 1' are connected to infrastructure 2 via organizational network 5. Stand-alone terminals 1 and 1', PCs 3 and OPCs 4 may execute similar applications. It should be noted, however, that stand-alone terminals 1 and 1 ' may include hardware and peripherals which may execute additional applications, for example, loading smart cards, reading magnetic cards, and processing video graphics .
System 100 also includes an information server 8, a transaction server 9, and an external server 10. A content provider server 11 is also shown connected to the network backbone 2 via external server 10. The system 100 may also include thousands of terminals, servers, and network facilities.
Generally, PCs 3 connect to infrastructure 2 in a conventional manner using the hypertext transfer protocol
(HTTP) . This initiates a request for a secure or non- secure connection to information server 8 via backbone 2. Once the PC is verified and identified, a connection between the information server 8, and the PC 3 is established. Once the connection is established, the type of application to be executed is determined. The specifications of the application may be loaded onto the terminal from the server or from a hard disk. The specifications are used to determine if a non-secure or secure connection should be used. (See FIG. 6) For example, financial transactions or transactions containing personal information may require a secure connection.
In one operating process, a financial or personal transaction may be requested by one of the terminals. In this regime, the information server 8 connects the application with the transaction server 9 via the information server 8. Transaction server 9 may process the request locally, or may establish a remote connection to a third party clearing system.
In another processing regime, the application may require additional information that is not located on either of the information server 8 or transaction server 9. In such a case, the information may be retrieved from content provider server 11. To receive the necessary information, information server 8 establishes a connection via an external server 10 to a content provider server 11. In this regime, external server 10 establishes a gateway to content provider 11. Once the type of connection is established, an application channel is formed. The application channel is used to transmit information from the database of server 8 to PC 3 upon the request of the user. The information may be stored or displayed by the user. FIG. 2 is a more detailed block diagram of the components and architecture of the system 100. The Client 12 includes Smart Decompression Engine 13 connected to Browser 14. Browser 14 includes Java Applet 15. Browser 14 is connected to External Devices 16. External Devices 14 is connected to Control and Management Agent 17. Client 12 is connected to Secure HTTP Channel 31, which is connected to Server 18. Server 18 comprises Smart Compression Engine 19 connected to a Control and Management Agent 21, which is connected to services and a database. Control and Management system 23 includes Configuration Database 26, Agent Manager 27, and Optimizing Engine 28. Optimizing Engine 28 includes Mathematical model 24 and Optimization Algorithms 25. Data Entry System 29 includes Visual database manipulation tool 30.
FIG. 3 is a detailed block diagram of the Browser 14, Java Applet 15, Secure HTTP Channel 31 and Database 22 components and architecture. Browser 14 comprises Java Virtual Machine 14. Java Applet 15 comprises Application Classes 34. External Devices 16 are connected to Java Applet 15 by Com Bridge 32. External Devices 16 are connected to Control and Management Agent 17 by SNMP 33. Visual Data Management 29 is connected to database 22 by Visual Data Insertion channel 31' . External Services 39 are connected to Services Database 20. Services Database 20 includes Service Broker 35, Java Classes 36, Application Data 37 and Multimedia Data 38.
FIG. 4 shows a constructional diagram of the general system architecture of the Information Transfer
Network System 100. Request Broker 40 comprises a HTTP Request Broker 41 connected to Request Broker Interface Modules 42, and a Content and Software Transmitter 43 connected to the Profiles Manager 44. The Request Broker Interface Modules 42 are connected to Clients 12 and
Application Services 20. Content and Software Transmitter 43 is connected to Clients 12 and Databases 22. External Services 39 are connected to Application Services 20. The Information Transfer Network system architecture is based on a unique 4 -Tier model architecture system that allows third-party components to be integrated in a plug-and-play fashion. This architecture allows the Information Transfer Network system to use different Graphical User Interface ("GUI") and multimedia interfaces to distribute software and information over the network, and to interact with third party applications and databases. The Information Transfer Network system uses Object Oriented Design
(OOD/OOP) , a component based system, which permits the re-use and re-purposing of functions.
The first tier, the Presentation system, resides on the client machine. The other tier systems may also reside on the client machine, on a single server, or across multiple servers over the network. Tiers can be duplicated on multiple servers for security, load balancing and optimization of system performance. The separation of these functions into tiers enables the system to adapt to different environments and technology standards. For example, the Presentation system can adapt itself for use by a home PC user (Internet) , or specialized terminals.
FIG. 5 shows an implementation of the processing sequence of the presentation system. The presentation system incorporates a thin-client methodology, thereby containing only minimal functions required to display (GUI) , and the drivers for essential internal devices (sound card, video card, network card, etc.) . All advanced interface features, business logic, and services may be loaded onto the client terminal dynamically on system demand. The information or intelligence at the client terminal varies according to the services demanded by the user. The Presentation system is implemented using Java architecture, and executes inside a standard web browser that supports a Java virtual Machine.
Suitable browsers include the Microsoft Internet Explorer version 3 (IE3) or the Netscape Navigator version 3.
Java is a commercially available multi-platform Object Oriented language that adheres to the Client/Server model, and may run on any machine that has a Java Virtual
Machine .
Referring to FIG. 4, the Presentation system passes all requests for information or services through the Request Broker system 40. The presentation system may interact with the Request Broker system through the
Request Broker Interface using, for example, Java, JDBC,
CGI, ActiveX, CORBA, HTTP, Network Pipe or other interface protocols. Java Applets are small blocks of computer code which may be loaded onto the Client 12 from the Server 18 to be executed by the Client 12. Java Applets may perform interfacing between the Presentation system and the Request Broker 40. The following are protocols which may be used to perform various functions of the presentation system. Java Database Connection ("JDBC") is an incarnation of the well- known Open Data Base Connection ("ODBC") protocol that interfaces with different types of databases. The JDBC is the Java flavor of ODBC developed for the Java language.
The Common Gateway Interface ("CGI") may run scripts on the server 18 to translate client requests into calls for information to external programs, applications, or servers.
ActiveX is Microsoft's product based upon Objects interfacing model (OCX) adopted for internet components interfacing. An ActiveX component is a code that may run on the client 12 to handle interfacing with the server 18. Common Object Request Broker Architecture ("CORBA") allows applications to communicate with each other irrespective of the type and location of the application. CORBA defines an Interface Definition Language (IDL) and the Application Programming Interface that enable client to server object interaction.
Network Pipe is a dedicated protocol used for streaming data. This protocol is used to establish or maintain a continuous flow of data, for example, in a telephone conversation or video clip.
The presentation system is insensitive to the content being presented, since the functions required to display material are downloaded as objects with the material . Multiple GUI templates may be created to offer different displays for the same content without duplicating the other tiers. For example, two different client terminals, such as PC 3 and OPC 4 could display different views of the same content using the same tiers.
Generally, the presentation system will start the application by executing HTML File 50, and will load main Java application 52. The presentation system, using main java applets 52, will present Java screen A 54 to the user. Java screen A 54 comprises Java object-Movie 60, Java object -Button 56, and Java object -Button 56. If Java object-button 56 is activated, the presentation system will load Java Screen B 54 ' . If Java object-button 58 is activated, the presentation system will load Java Screen C 54".
FIG. 5A shows a block diagram of the data model used to transfer information between the presentation system and the request broker. The Presentation system includes a Graphical User Interface. The GUI Multimedia Components of the Information Transfer Network system include: I a) JAVA-HTML Classes that enable the use of HTML within Java applets, including rich text format, pages layout, and hyperlinks (between items in Java application) ; b) controlled WWW Links Java applets that can completely control a standard HTML session. This includes replacing browser toolbars and menus with Java navigation toolbars, and capturing and filtering all hyperlinks; c) peripherals interaction applets. Object 60 comprises various data objects to be presented by GUI to the presentation system. FIG. 5B shows a block diagram of the bandwidth optimization system. The optimization system includes Bandwidth Optimization Methods for compression and decompression of GUI components and Java Classes. The Client 12 comprises Control and Management Agent 17. Server 18 comprises Control and Management Agent 21. Control and system 23 comprises Configuration Database 26, Agent Manager 27, and Optimizing Engine 28. Optimization Engine 28 includes Mathematical model 24 and Optimization Algorithms 25. Control and Management Agent 23 is connected to the Client 12 and Server 18 using
Agent Manager 27. Agent Manager 27 is connected to C&M Agent 17 and C&M Agent 21.
FIG. 5C shows a block diagram of Request Broker data model. Java Screen 90 comprises Java Object-Item List 92 and Java Object -Keyboard 94. Request Broker 40 is connected to database 22 using Database Driver 106. Request Broker 40 is connected to presentation system through Java Screen 90 using Optimization Agent 104 and Translator 102. The Information Transfer Network system 100 utilizes a Forms Generator/Processor that includes: a) Form Filling system that enables users to complete self- service forms on screen for electronic submission or printing; and b) Validity Checking system. The Forms may have embedded validity checking, which runs on the client 12.
The Information Transfer Network system 100 utilizes Authoring and Data Management Tools including: a) Application Generator- Rapid Application Development (RAD) tools for building self-service applications; b) Object-Oriented Dynamic Display System that Reads GUI objects from databases on-the- fly, and displays them according to Properties and Methods; and c) Visual Data Management- Visual tools for organizing, classifying, and maintaining data items.
The Information Transfer Network system 100 utilizes Database Technology that includes a Generic Database Design, a Standardized Data Modeling may be used to represent all applications, and GUI objects. This permits search, data entry, and database distribution tools to be operated on every application without modification.
FIG. 6 illustrates a start-up routine for the JAVA Applet for the Information Transfer Network System 100 client terminals.
FIG. 7 shows a flowchart of the processing sequence of the applications system of Server 18.
FIGS. 8a and 8b show a block diagram of the generic database design. The basic concept of the database model is based on three components: OBJECTS, the PROPERTIES of each object, and the LINKS between the objects. The database model contains the META-DATA which represents the structure of the data, and determines the laws of data including OBJECT_TYPES : the types that the objects may be; PROPERTY_TYPES : the types of properties each object may have; DATA TYPES : the data types (numeric, string, etc.) a property may be; LINK_TYPES : the kinds of links that may be between object types; and - 13/1 -
LANGUAGES the different languages that the data may be translated to.
- 14 -
Several architectural and functional components of system 100 will now be described in detail.
Request Broker System
The Request Broker system 40 acts as a link between the Applications system and the Presentation system. The Request Broker system 40 interprets the request from the Presentation system, and locates the appropriate Request Broker Interface server. Suitable servers include Oracle, Lotus Notes, and GIS. Request Broker System 40 passes the request to the server application, receives the results, and returns the results to the Presentation system. Because the Presentation system interacts with the servers only through the Request Broker system 40, the Presentation Layer does not maintain information concerning the location of the loading of the application. A single Request Broker system may serve multiple applications, or a specialized Request Broker system may be implemented for a single application. The Request Broker system interfaces to the
Applications system (Business Logic) layer using specific protocols for each type of server. For example, information applications will use the Oracle Web Server protocol, and Java will be used to connect with servlets (server-side applets) .
Request Broker system architecture results in an open environment that can integrate new types of servers. For example, a new third-party electronic commerce server that implements SET security may be integrated into the Request Broker system.
A single Request Broker system may handle multiple, simultaneous requests. This allows traffic to be monitored and controlled, and eliminates the need to run a separate process for each request as would be - 15 - required using the CGI protocol, or direct requests from the client terminals to the applications.
Application System (Business Logic System)
The Application system tier contains all of the applications and services to be used by the end-user.
This tier may include applications developed specifically for the Information Transfer Network system 100, or applications from third parties, written in any standard language or with any tool . For example, third-party applications that utilize a world-wide- web interface may interface with the Request Broker system using the World Wide Web Request Broker Interface. Applications that do not utilize a world wide web interface may interface with the CORBA to Java, and Java to CORBA Request Broker Interface modules. Thus, the Information Transfer Network system 100 has the ability to incorporate or integrate third-party applications which may run on separate computers, or even within legacy systems such as mainframes.
Database System
The Information Transfer Network system 100 may use the industry standard Oracle 7.3 RDBMS engine for its applications, and meta data storage. The applications may interact with most standard RDBMS (Informix DB/2 SQL Server) or non-RDBMS (Xbase, IMS) . Third-party applications may use any database or combination of databases on any platform.
Databases may be distributed across multiple servers over the network as required to optimize performance. For example, video clips can be considered as part of the same logical database as other content (from the Request Broker system point of view) , even though the data may be physically located on a - 16 - specialized video server, or possibly on the client terminal machine .
Java Architecture
The architecture of system 100 is based on object oriented design using, for example, Sun Java architecture. Java provides the ability to download objects (classes) as they are required. Suitable development systems include Sun Microsystems JDK 1.1.1, Microsoft J++, Symantec Visual CafJ Pro, Borland Jbuilder and Microsoft SDK 2 for Java, and Java Beans. A single Java Bean component may function as a first-class component within a range of applications, including applications developed in Visual Basic, Visual C++, Word, Excel, and Internet Explorer. An Active-X bridge Java Bean will enable the
Information Transfer System to incorporate a wide range of available Active-X controls, without relying on its proprietary Active-X/Java COM Object solution.
The present invention provides the following Java Packages: a) Dynamic Display Package: which reads the properties and methods of objects to be displayed, and displays them according to these properties; b) Display Package which displays and fully controls an HTML window within a Java page; executes hyperlinks to related content, browses Web sites from within the Java environment using a customized toolbar, and controls and filters links to the WWW; c) Internet Optimization Package compression graphic classes for low-bandwidth users; d) Database Connection and Manipulation Package connects to Oracle DB and other databases, searches and retrieve information, and e) Peripheral Support Package which handles Device drivers to communicate with peripherals . - 17 -
The system may also include the following: a) forms generator that includes off-line tools to scan, OCR, and create electronic forms, display forms onscreen, real-time filling of forms with basic validity checking; submitting and processing of form results, and printing of forms (blank or completed) ; b) Advanced Search Engine: Soundex; Thesaurus; Morphology (example: lingual = language) ; expand search to WWW; c) Virtual Reality Interface which simulate real world reality in an interactive 3-D world (e.g. a virtual supermarket that a user can "shop in".); Browse the 3-D world connects items in the 3-D world to Database items; and d) Advanced multimedia capabilities, which include streamed Video, and Audio-supports rich video and audio; Full motion Animation - high performance 2.5D animations; Spatial Audio for Java- provides 3D sound.
Internet Technologies Browser
The Information Transfer System thin-client is designed to operate inside any standard web browser with a Java Virtual Machine. The browser may be customized to fully control the GUI. For example, the standard browser buttons, toolbars, and menus may be replaced with a multimedia GUI that is suitable for mouse or touchscreen use. Using Java Classes, help functions, sounds, and other multimedia capabilities may also be added to the interface .
Software running within the browser environment communicates with the hardware through a Component Object Model Object (COM Object) that controls device drivers
(e.g. card readers, coin machines, laserdiscs, and video cameras) . The COM object can interface with and activate Microsoft Active-X controls, such as NetMeeting Video Conferencing. This integration of Java and Active-X may - 18 - be facilitated through the Java Active-X Bridge Java Bean, rather than through the COM object. The thin- client may be extended and enhanced using third-party browser plug-ins. This is particularly beneficial for providing enhanced multimedia effects for the GUI, such as Virtual Reality Modeling Language (VRML) for 3-D interfaces .
HTML Manipulation
The Information Network System client integrates the Java Classes, which support HTML 3.2 documents for display of Rich Text Format (fonts, colors, point size) and images on-screen. The HTML document may contain hyperlinks to related information items within the application, or to related sites on the World Wide Web ("WWW") . Upon linking to a WWW site, the screen displays the site in a frame on the upper portion of the screen. The Java-based navigation GUI panel interface is displayed on the lower portion of the screen. The GUI provides the essential functions for Web Browsing, with all browser toolbars and menus removed from the screen.
This feature is achieved by first loading a special HTML page which consists of two frames. The lower frame displays a Java applet containing a multimedia GUI . The lower frame controls the upper frame, which contains the linked HTML page. This is implemented completely in
Java, and does not rely on a browser or platform specific API. WWW links may be filtered in order to control or limit access to specific sites. An on-screen keyboard may be used to enter specific URLs through a touchscreen.
Optimization of Network Traffic
Real-time compression techniques may be implemented to move information and applets from the server 18 to the client 12. Upon receiving a request, - 19 - the server determines what type of network connection exists. A fast LAN connection may be sent full quality, uncompressed files including text, images, video, and Java Classes. For slower WAN connections, the server may compress the files in real-time, which may then be transmitted over the network and decompressed at runtime by the client. Each type of information item has a unique compression method, which is most suitable for the specific item. For example, JPEG compression is used for images, and CAB or JAR compression is used for Java Classes. The JAR technology is also capable of compressing data information and graphics in addition to the Java classes. For images, compression ratios of 1:10 may be achieved using JPEG.
Channel Technology (push)
One standard for accessing information through the Internet is known as pulling, whereby users request specific sites through a Web browser. The sites are then viewed in real-time, as they are loaded. Another standard for accessing information on the Internet is
Push technology, which sends information to a client terminal automatically. Information may be general purpose content, or specific content based on a profile or set of parameters established in advance by/for the user. Content is delivered as different channels. Each channel offers different types of content, and the user may specify how often the channel should be updated. For example, a user could subscribe to a newspaper channel in order to receive a customized daily (or more frequent) newspaper based on his/her specific topics of interest.
Integrated Internet Applications
The Information Transfer Network 100 may integrate standard Internet-based applications. For example, e- - 20 - mail clients, newsgroup readers, chat rooms, and access to proprietary online services (AOL, CompuServe, MSN, etc.) may be integrated into specific applications. The integration may be performed by Active-X to Java COM bridge, or through a CORBA server to activate remote objects in third-party applications. For example, an application may offer an electronic suggestion box, which will forward suggestions via e-mail to the intended recipient. The HTML interface allows users to search the Internet within a controlled and filtered environment.
Firewall and Security
The Information Transfer Network system 100 integrates a "firewall" to secure servers and systems residing on the Internet infrastructure. This allows the system terminals to be networked through the Internet, or through private Intranets. When connected through an Intranet, the terminals may still offer access to the Internet via a firewall protected gateway at the server. The firewall encrypts data between the client and server when networked through the Internet, and controls access in and out of the system. A SSL secure channel method may be used to provide additional security for transaction data, for example, when performing a financial transaction with server 9.
Network Computer (NC)
The Java-based system may be executed on NC machines being developed by, for example, Sun, Oracle, and IBM. The system may be downloaded to the terminal and run under the Java OS .
Advanced Multimedia and Graphics Technologies
The Information Transfer Network System 100 incorporates full multimedia and graphics capabilities. - 21 -
Video and audio may be streamed when delivered from the server to the client. This allows the user to view the video concurrently, while it is being downloaded.
The Information Transfer Network System 100 may also show video clips as part of the Interface (in MOV or MPEG format using H.263 standard for video and G723 format for audio. Video Conferencing (2 -Way Video) may be employed, such as video conferencing, including white board, document sharing, audio-only Conferencing, and group Conferencing. Also, video cameras may be used to identify users at a terminal, and as part of applications that may require a photo such as a Drivers License application. Other applications include Rich Text Format and HTML and virtual Reality Modeling Language (VRML) Interface in which 3-D interfaces can emulate real -word situations. For example, a VRML supermarket, which allows a user to stroll the aisles, and place items in a 3-D virtual shopping cart, may be employed. Cosmo VRML plug-in for displaying 3-D virtual world interfaces may also be employed. Applications may relate from 3-D items in the virtual world to information items in a database. In the example above, a user could select a grocery item in a 3-D interface, and retrieve nutrition information from the database. Geographic Information Systems (GIS) which include vector and raster maps of the entire United States and other countries may be implemented. Any address (such as ATM locations) can be geocoded and plotted on a map, and a routing system can produce point- to-point driving directions to provide transit maps and point-to-point directions.
Advanced Services and Applications Forms Generator/Processor
The forms generator scans paper-based forms and converts them to HTML documents using OCR technology. - 22 -
Form blanks are automatically converted to fields which may accept data. Java Applet may be used to process the forms from the form generator. Validation functions may be added to each field to perform data checking and validation at the client. For example, an account number may be verified by the form processor using a check- digit . Blank or completed forms may be outputted to a printer or form input may be submitted to an application, or a database on the server.
Computer-Telephone Integration (CTI)
Server-based software modules enable users at a terminal to connect into a public switched telephone network to access information for example, a hotel location. The CTI applications are implemented using Microsoft standard Telephone API (TAPI) , running on a
Windows NT server with a Dialogic voice/modem card or any other voice/modem card which is Microsoft TAPI compliant. The server side of the application is developed using JTAPI . A two-way CTI application, where an application can interact with a person on the other line, is also possible. In this type of application, the end-user would not speak directly to the other end-user. Instead, a server may "speak" using text-to-speech synthesis (DSP) , and receive responses using touch-tones (DTMF) . The responses may then be converted to messages for display on the end-user's screen, and the session may continue. The system allows users to connect with businesses (e.g. small hotels) that are not computerized, while still allowing the content provider server 11 to control the transaction. The system may also allow communication to take place across language barriers. - 23 -
Multilingual Capabilities
The Information Transfer Network system 100 supports multilingual audio and bi-directional text display, including Latin and non-Latin characters. Languages may be switched on demand, for example, between English, Spanish, French, German and Hebrew. Multilingual technology through special Unicode character sets may be controlled by Java Classes on Windows-based on non-Windows based machines. The Dynamic Presentation Generator (described in detail below) provides for multiple languages within an application.
Authoring and Data Entry Tools
Rapid Application Development (RAD) contains a set of tools that enable non-programmers to design, build and administrate complete applications, which include GUI, interactive features, data modeling, and content management. Each application contains META data to describe the application's structure. Therefore, every application data model and GUI is modeled as a set of objects that have properties (attributes) , methods
(actions that are made during the user interaction) , and links to other objects to which they relate.
When an application is running, all the objects which contain the current GUI interaction are loaded dynamically to the presentation system, and display themselves according to their own display methods . When a user executes a function, e.g. pressing a button, the appropriate Object Method is activated, which may then activate another object (e.g. display a screen, play a video, run search, etc.)
An application may be loaded using the following steps. A graphics template (buttons, backgrounds, logos, etc.) is chosen from a library. The data Objects, Properties, and Actions that implement the application - 24 -
GUI and user interactions are defined. For example, when the application uses buttons, one has to define the buttons' shape, color, x-y coordinates, and actions that are executed when the button is pressed. The related objects are then linked, and the resulting application model is stored in the generic database model . During operation (runtime) , the dynamic presentation generator reads all the GUI objects of the application from the database model for display. One routine, Reflection (during runtime) , allows the application to identify every object type (loaded dynamically), retrieves information about the object's capabilities, and links to other objects. Another routine, Transparent Canvas, allows new objects to be displayed without interfering with background objects or currently displayed objects.
The data entry tool enables insertion and management of content and classification data that relates to the application. The data entry tool visually browses the classifications and data. Once the database updates are inserted, the system's distribution tools distributes all the information to the appropriate databases, according to the optimization algorithm.
Database Technologies The Information Transfer Network 100 allows application data and GUI to be described as a set of Objects that have Properties (attributes) , Methods (actions) , and links (connections to other objects) . A unique generic database model may model, store, and manipulate the Objects, Methods, Properties, and object links of any type of application data model. The generic model also stores Meta Data, which is used to display and interact with the GUI of the application. - 25 -
Example of using the Generic Model to implement a Company' s data system
FIGS. 10, 11, 12a-c and 13 illustrate an exemplary application using system 100. Two main classifications are shown: Computers and Food. Within each classification, there are associated companies: G, M, and I . Each Company has products such as Multimedia Stations and Terminals.
Table 1 of FIG. 10 and Table 2 of FIG. 11 show the "META data" which describes the Object Types, Properties, and Link Types. Table 3 of FIGS. 12a - 12c show sample data filled into the model established in Tables 1 and 2. FIG. 13 is an illustration of the classification tree and associated data items of the example. This model permits many different applications to share a common database design. Therefore, the same search and statistical analysis tools may be used within any application without modification. Thus, the database design, search, data entry, and statistics tools are independent of the content being represented.
Dynamic Distribution
Application databases (which contain information, pictures, video, etc.) may be distributed and replicated across the network to optimize overall system performance. Due to the frequently changing environment in application and information demand, communications bandwidth, and the facilities in the station, information may be redistributed across the network. For example, if there is high demand for a certain video clip, the clip may be distributed for storage on a server near the terminal , or even on the terminal hard drive .
The decision of where and how to distribute databases is made by the system. The decision is a function of all system parameters. The system also - 26 - determines the optimal distribution of information to achieve the most efficient performance. The application is not modified upon changes in the database distribution. The following describes the process and architecture of the dynamic distribution and system optimization systems.
Statistical Analysis
Every operation (menu choices, coordinates of screen touches) within the system is recorded in a database table. This data may be analyzed using statistical analysis tools, including Oracle tools, in order to determine usage patterns, and to improve or alter system performance. Usage patterns, such as printer usage may be analyzed to predict, for example, when the printer will run out of paper. The number of screen touches of a component of the GUI may also be monitored.
For each user operation, and some of the system' s activities, a text entry is added to a log file which maintains a statistical record. Each entry line of the log file records the time and date stamp of the action, the type of action, and some general system status information the status information may be used to decode the action recorded in relation to the system's operation status. The log file is transmitted to the control and management system on predefined schedules or on a specific request from the control and management system. The log file may then be analyzed to determine the needs of the system including maintenance and correction.
Other types of information may also be retrieved from the log file, including specific application's parts usage and user interface usage . - 27 -
Systems Management Tools
The Information Transfer Network system 100 is a large, complex, changing, non-deterministic network, handling massive amounts of information, transactions, and services. To manage this network, an Optimized
Integrated System Management Architecture (OISMA) may be used. The OISMA may perform the following functions: a) consolidate a central console that monitors all system components; b) distribute regional and functional specific consoles; c) determine various system alerts of system B, (pager, fax, sound, send messages to subcontractor system) ; d) perform automatic recovery actions to recover from problems; e) takeover any station and execute commands from a remote source; f) track and analyze problems on system using help desk tools; g) track and manage the flow of system transactions; h) monitor usage patterns and statistics; i) record automatically inventory related to network inventory autodetect and control B plug-and-play installation of components; j) control hardware/Software version and configuration; k) perform preventive Maintenance Management and 1) maintain Central backup.
Systems Management Technologies
The following are management tools which may be incorporated into system 100.
Simple Network Management Protocol (SNMP) - Framework of OISMA, enables agents across the network to communicate with central management tools.
Integration of management tools into a four tier Architecture: Each tier will have agents that receive orders, collect data, and report back to the management system. - 28 -
Integration of third-party SNMP agents: Agents for specific software (e.g. Oracle Database), hardware devices, or operating systems.
Software and Information Deployment and Synchronization: Oracle tools, SMS, and other tools for distribution and synchronization.
HP Open View Network Management Framework - GS intends to integrate this set of network and hardware management tools.
Network Control and Management
Commercially available control and management systems, such as the Trivoli system from IBM and the SMS system from Microsoft, may be used in the information transfer network 100.
System Optimization
System Optimization provides the optimal service on all terminals over time. Services include fast response time, availability of services and peripherals (printer, network, etc.), and appropriate adaptation to terminal capabilities (e.g. home PC with low-bandwidth, machine without video capability, etc.)
Optimization may be achieved by one or more of the following. Static parameters of the hardware and peripheral on any of the terminals may be measured. For example, the type of memory, the type of terminal, or the type of network connection to the terminal may be measured. Dynamic parameters including the current available bandwidth, server utilization, the location and nature of the data, and the location of the selective application or service may be monitored. The system may track the number of uses of a particular application or service over time. - 29 -
Using the above techniques, the system determines the optimal message to fulfill user request. Further, this optimization may be performed at preset schedules during operation to redistribute applications and content across the network.
The present invention has been described in terms of number of embodiments. The invention, however, is not limited to the embodiments depicted and described.

Claims

- 30 -What is claimed is:
1. A system for transferring data over a network comprising : a plurality of client terminals connected to the network; a plurality of servers connected to the network; an operations management system connected to said network for monitoring and storing characteristic data about said client terminals and said servers; and an interfacing system connected to said network for dynamically distributing said data between said servers and said terminals as a function of said characteristic data, such that a portion of said data is stored at said client terminals.
2. The system of claim 1, wherein said network is one of a LANnet, a WANnet, the Internet and an Intranet .
3. The system of claim 1, wherein each of said client terminals are one of a personal computer, an organization personal computer, and a stand-alone terminal .
4. The system of claim 3, wherein said standalone terminals further comprise hardware for executing one of loading smart cards, reading magnetic cards, and processing videographics.
5. The system of claim 1, wherein each of said servers are one of an information server, a transactional server, and an external server. - 31 -
6. The system of claim 5, wherein said transactional server is operable to perform one of a financial transaction and a personal transaction.
7. The system of claim 1, wherein said network is a four tier model.
8. The system of claim 1, wherein said network further comprises a graphical user interface for displaying a portion of said data on said client terminals .
9. The system of claim 1, wherein the system is operable to interact with a plurality of third party applications .
10. The system of claim 1, wherein said interfacing system is a request broker system.
11. The system of claim 1, further comprising a telecommunications device connected to said network for accessing said data from said servers.
12. The system of claim 1, further comprising an optimization system for distributing data between said client terminals and said servers.
13. The system of claim 1, wherein said characteristic data is one of a plurality of static or dynamic parameters associated with each of said client terminals and a usage pattern associated with said terminals.
14. A method for transferring data over a network comprising : - 32 - providing a plurality of client terminals; providing a plurality of servers; establishing a data communication between said client terminals and said servers; and generating a database of characteristic data associated with said clients terminals and servers; and dynamically distributing said data between said client terminals and said servers as a function of said characteristic data in said database such that a portion of said data resides at said client terminals and a portion of said data resides at said servers.
15. The method of claim 14, further comprising providing said client terminals with hardware for one of loading smart cards, reading magnetic cards, and processing videographics.
16. The method of claim 14, wherein each of said client terminals are one of a personal computer, an organizational computer, and a stand-alone terminal.
17. The method of claim 14, further comprising providing each of said servers as one of a transactional server, an information server, and an external server.
18. The method of claim 17, further comprising performing one of a financial transaction and a personal transaction.
19. The method of claim 14, further comprising providing a graphical user interface to display data on said client terminals.
20. The method of claim 14, wherein the network is one of a WANnet, LANnet, Internet, and an Intranet. - 33 -
21. The method of claim 14, wherein said establishing step further comprises loading an application onto one of said terminals and establishing said data communication as a function of specifications of said application.
22. The method of claim 14, further comprising a telecommunications device connected to said network for accessing data from said servers.
23. The method of claim 14, further comprising providing an optimization system for distributing said data between said client terminals and said servers.
24. The method of claim 14, wherein said characteristic data is one of a plurality of static or dynamic parameters associated with each of said client terminals and a usage pattern associated with said terminals .
25. The method of claim 14, wherein said network is a four-tier model.
26. A computer-based method of processing information dynamically between a plurality of client terminals and a plurality of servers comprising: establishing a data communication path between said client terminals and said servers; generating a database of characteristic data associated with said clients terminals and servers; and dynamically distributing said data between said client terminals and said servers as a function of said characteristic data in said database such that a portion of said data resides at said client terminals and a portion of said data resides at said servers. - 34 -
27. The method of claim 26, further comprising providing said client terminals with hardware for one of loading smart cards, reading magnetic cards, and processing videographics.
28. The method of claim 26, wherein each of said terminals are one of a personal computer, an organizational computer, and a stand-alone terminal.
29. The method of claim 26, further comprising providing each of said servers as one of a transactional server, an information server, and an external server.
30. The method of claim 29, further comprising performing one of a financial transaction and a personal transaction.
31. The method of claim 26, further comprising providing a graphical user interface to display data on said client terminals.
32. The method of claim 26, wherein the network is one of a WANnet , LANnet , Internet, and an Intranet.
33. The method of claim 26, wherein said establishing step further comprises loading an application onto one of said terminals and establishing said data communication as a function of specifications of said application.
34. The method of claim 26, further comprising a telecommunications device connected to said network for accessing data from said servers. - 35 -
35. The method of claim 26, further comprising providing an optimization system for distributing said data between said client terminals and said servers.
36. The method of claim 26, wherein said characteristic data is one of a plurality of static or dynamic parameters associated with each of said client terminals and a usage pattern associated with said terminals .
37. The method of claim 26, wherein said network is a four-tier model.
38. A computer program residing in a computer- readable medium, comprising instructions for causing a computer system to: establish a data communication path between a plurality of client terminals and a plurality of servers; generate a database of characteristic data associated with said client terminals and said servers; and
- 36 - dynamically distribute data between said client terminals and said servers as a function of said characteristic information in said database such that a portion of said distributed data resides at the client terminal and a portion of said distributed resides at said servers.
PCT/US1998/012947 1997-06-20 1998-06-22 Information transfer system with dynamic distribution of data, control and management of information WO1998059460A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP50494099A JP2002508907A (en) 1997-06-20 1998-06-22 An information transfer system that dynamically distributes data and controls and manages information
EP98930450A EP0990327A4 (en) 1997-06-20 1998-06-22 Information transfer system with dynamic distribution of data, control and management of information

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/879,859 1997-06-20
US08/879,859 US6292827B1 (en) 1997-06-20 1997-06-20 Information transfer systems and method with dynamic distribution of data, control and management of information

Publications (2)

Publication Number Publication Date
WO1998059460A1 true WO1998059460A1 (en) 1998-12-30
WO1998059460A8 WO1998059460A8 (en) 1999-05-06

Family

ID=25375029

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1998/012947 WO1998059460A1 (en) 1997-06-20 1998-06-22 Information transfer system with dynamic distribution of data, control and management of information

Country Status (4)

Country Link
US (1) US6292827B1 (en)
EP (1) EP0990327A4 (en)
JP (1) JP2002508907A (en)
WO (1) WO1998059460A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000062483A1 (en) * 1999-04-13 2000-10-19 Nortel Networks, Inc. System for tracing data channels through a channel-based network
WO2001003399A2 (en) * 1999-07-06 2001-01-11 At & T Laboratories Cambridge Ltd. A thin multimedia communication device and method
WO2001041089A1 (en) * 1999-12-03 2001-06-07 Ncr International. Inc Self-service terminal
WO2001077897A2 (en) * 1999-09-27 2001-10-18 Torveo Technologies System and method using a web catalog with dynamic multimedia data using java
WO2002003649A1 (en) 2000-06-30 2002-01-10 Nokia Corporation Opimization of service access
EP1488324A1 (en) * 2002-03-26 2004-12-22 Accenture LLP Single access point for filing of converted electronic forms to multiple processing entities
US9009721B2 (en) 2007-10-20 2015-04-14 Citrix Systems, Inc. Method and system for communicating between isolation environments

Families Citing this family (286)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555529B2 (en) * 1995-11-13 2009-06-30 Citrix Systems, Inc. Interacting with software applications displayed in a web page
US6950991B2 (en) * 1995-11-13 2005-09-27 Citrix Systems, Inc. Interacting with software applications displayed in a web page
US6088515A (en) 1995-11-13 2000-07-11 Citrix Systems Inc Method and apparatus for making a hypermedium interactive
WO1998024050A1 (en) * 1996-11-25 1998-06-04 Metrologic Instruments, Inc. System and method for accessing internet-based information resources by scanning java-applet encoded bar code symbols
JPH11284978A (en) * 1997-11-27 1999-10-15 Canon Inc Image distributor, image distribution system and image distribution method
US6324685B1 (en) 1998-03-18 2001-11-27 Becomm Corporation Applet server that provides applets in various forms
US6378005B1 (en) * 1998-06-12 2002-04-23 Microsoft Corporation Method, computer program product, and system for separating connection management functionality from a connection-oriented device driver
FR2780178B1 (en) * 1998-06-18 2001-08-10 Inst Nat Rech Inf Automat METHOD FOR TRANSFORMING AND TRANSPORTING DATA BETWEEN AGENT SERVERS PRESENT ON MACHINES AND A CENTRAL AGENT SERVER PRESENT ON ANOTHER MACHINE
US6092120A (en) * 1998-06-26 2000-07-18 Sun Microsystems, Inc. Method and apparatus for timely delivery of a byte code and serialized objects stream
US6591305B2 (en) * 1998-06-30 2003-07-08 Sun Microsystems, Inc. Method and system for delivering data from a server object to a client object using a non-proprietary data transfer protocol
US6865604B2 (en) * 1998-08-26 2005-03-08 Sts Software Systems Ltd. Method for extracting a computer network-based telephone session performed through a computer network
DE69913181D1 (en) * 1998-09-03 2004-01-08 Kimono Ltd DEVELOPMENT METHOD FOR A DATA PROCESSING SYSTEM
US6636893B1 (en) * 1998-09-24 2003-10-21 Itron, Inc. Web bridged energy management system and method
AU6410699A (en) 1998-10-13 2000-05-01 Chris Cheah Method and system for controlled distribution of information over a network
US7043529B1 (en) * 1999-04-23 2006-05-09 The United States Of America As Represented By The Secretary Of The Navy Collaborative development network for widely dispersed users and methods therefor
US6637020B1 (en) * 1998-12-03 2003-10-21 International Business Machines Corporation Creating applications within data processing systems by combining program components dynamically
US7328405B1 (en) * 1998-12-09 2008-02-05 Netscape Communications Corporation Smart browsing providers
US6604106B1 (en) * 1998-12-10 2003-08-05 International Business Machines Corporation Compression and delivery of web server content
US6393416B1 (en) * 1998-12-16 2002-05-21 International Business Machines Corporation Method for entering bidirectional and DBCS languages in tier-0 devices
US6928469B1 (en) 1998-12-29 2005-08-09 Citrix Systems, Inc. Apparatus and method for determining a program neighborhood for a client node in a client-server network using markup language techniques
US7555721B2 (en) 1998-12-30 2009-06-30 Aol Llc, A Delaware Limited Liability Company Customized user interface
US7353234B2 (en) 1998-12-30 2008-04-01 Aol Llc, A Delaware Limited Liability Company Customized user interface based on user record information
US6445776B1 (en) * 1998-12-31 2002-09-03 Nortel Networks Limited Abstract interface for media and telephony services
GB2346990B (en) * 1999-02-20 2003-07-09 Ibm Client/server transaction data processing system with automatic distributed coordinator set up into a linear chain for use of linear commit optimization
IL130688A0 (en) * 1999-02-26 2000-06-01 Ibm Bidirectional network language support
US20030167403A1 (en) * 1999-03-02 2003-09-04 Mccurley Kevin Snow Secure user-level tunnels on the internet
US7468934B1 (en) * 1999-07-12 2008-12-23 Ez4Media, Inc. Clock with link to the internet
US20050210101A1 (en) * 1999-03-04 2005-09-22 Universal Electronics Inc. System and method for providing content, management, and interactivity for client devices
US7003548B1 (en) * 1999-03-29 2006-02-21 Gelco Corporation Method and apparatus for developing and checking technical configurations of a product
US6618742B1 (en) 2000-01-10 2003-09-09 Imagex.Com, Inc. Method for job impact learning
US6618820B1 (en) 2000-01-10 2003-09-09 Imagex.Com, Inc. Method for configuring an application server system
FR2793982B1 (en) * 1999-05-19 2001-11-02 Bull Sa METHOD FOR OPTIMIZING, IN A COMPUTER SYSTEM, THE TRANSFER OF DATA BETWEEN A CUSTOMER APPLICATION AND A SERVER
US6542932B1 (en) * 1999-06-11 2003-04-01 Sun Microsystems, Inc. Domain access control for logging systems
US7424543B2 (en) * 1999-09-08 2008-09-09 Rice Iii James L System and method of permissive data flow and application transfer
US7818233B1 (en) 1999-11-01 2010-10-19 Accenture, Llp User interface for a financial modeling system
US7401040B2 (en) 1999-11-01 2008-07-15 Accenture Llp Financial modeling and counseling system
US7921048B2 (en) 1999-11-01 2011-04-05 Accenture Global Services Gmbh Financial planning and counseling system projecting user cash flow
US7315837B2 (en) * 1999-11-01 2008-01-01 Accenture Llp Communication interface for a financial modeling and counseling system
US7831494B2 (en) 1999-11-01 2010-11-09 Accenture Global Services Gmbh Automated financial portfolio coaching and risk management system
US7783545B2 (en) * 1999-11-01 2010-08-24 Accenture Global Services Gmbh Automated coaching for a financial modeling and counseling system
US7016977B1 (en) * 1999-11-05 2006-03-21 International Business Machines Corporation Method and system for multilingual web server
US6629163B1 (en) 1999-12-29 2003-09-30 Implicit Networks, Inc. Method and system for demultiplexing a first sequence of packet components to identify specific components wherein subsequent components are processed without re-identifying components
US6457016B1 (en) * 2000-01-04 2002-09-24 International Business Machines Corporation Timestamp commit
US6718372B1 (en) * 2000-01-07 2004-04-06 Emc Corporation Methods and apparatus for providing access by a first computing system to data stored in a shared storage device managed by a second computing system
US7260581B1 (en) * 2000-01-31 2007-08-21 General Electric Company Method and apparatus for error proofing
US7421480B2 (en) * 2000-02-28 2008-09-02 O2 Micro International Limited Personal computing environment using mozilla
WO2001065360A2 (en) * 2000-02-28 2001-09-07 360 Degree Web, Inc. Smart card enabled mobile personal computing environment
JP2001243157A (en) * 2000-02-28 2001-09-07 Canon Inc Network system, downloading device, server and network management method
US8024213B1 (en) 2000-03-08 2011-09-20 Accenture Global Services Limited System and method and article of manufacture for making financial decisions by balancing goals in a financial manager
US7725812B1 (en) * 2000-03-31 2010-05-25 Avid Technology, Inc. Authoring system for combining temporal and nontemporal digital media
US6647480B1 (en) * 2000-03-31 2003-11-11 International Business Machines Corporation Data block update utilizing flash memory having unused memory size smaller than the data block size
US6968366B1 (en) * 2000-05-12 2005-11-22 International Business Machines Corporation System and method for management, creation, storage, search and delivery of rich media optimized for e-commerce in a distributed information network
US20040083226A1 (en) * 2000-05-31 2004-04-29 Alan Eaton System, mehtods, and data structures for transmitting genealogical information
US7037886B2 (en) * 2000-06-01 2006-05-02 Ecolab Inc. Method for manufacturing a molded detergent composition
US20020013820A1 (en) * 2000-06-20 2002-01-31 Crandall Evan Stephen Private performance transmission
US8037152B2 (en) * 2000-06-20 2011-10-11 At&T Intellectual Property Ii, L.P. Active requesting of information for psuedo-live performance
US8090791B1 (en) 2000-06-20 2012-01-03 At&T Intellectual Property Ii, L.P. Active requesting of information for pseudo-live performance
US6684252B1 (en) * 2000-06-27 2004-01-27 Intel Corporation Method and system for predicting the performance of computer servers
US7353188B2 (en) * 2000-06-30 2008-04-01 Lg Electronics Product selling system and method for operating the same
US7529750B2 (en) * 2000-08-11 2009-05-05 International Business Machines Corporation Accessing information on a network
WO2002019134A1 (en) * 2000-08-28 2002-03-07 Digitalowl.Com, Inc. System and methods for the flexible usage of electronic content in heterogeneous distributed environments
AU2001288640A1 (en) * 2000-09-01 2002-03-13 Tut Systems, Inc. A method and system to pre-compile configuration information for a data communications device
US8161081B2 (en) 2001-03-16 2012-04-17 Michael Philip Kaufman System and method for generating automatic user interface for arbitrarily complex or large databases
US7885981B2 (en) * 2000-10-31 2011-02-08 Michael Philip Kaufman System and method for generating automatic user interface for arbitrarily complex or large databases
US6983263B1 (en) 2000-11-10 2006-01-03 General Electric Capital Corporation Electronic boardroom
US7020868B2 (en) * 2000-11-22 2006-03-28 General Electric Company Graphic application development system for a medical imaging system
GB2369738B (en) * 2000-11-29 2004-12-15 Agency Com Interactive Tv As Method and apparatus for building a platform specific data service
US20020091732A1 (en) * 2000-12-29 2002-07-11 Pedro Justin E. Displaying forms and content in a browser
US7958027B2 (en) * 2001-03-20 2011-06-07 Goldman, Sachs & Co. Systems and methods for managing risk associated with a geo-political area
US8121937B2 (en) 2001-03-20 2012-02-21 Goldman Sachs & Co. Gaming industry risk management clearinghouse
US7249242B2 (en) 2002-10-28 2007-07-24 Nvidia Corporation Input pipeline registers for a node in an adaptive computing engine
US7752419B1 (en) 2001-03-22 2010-07-06 Qst Holdings, Llc Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US7962716B2 (en) 2001-03-22 2011-06-14 Qst Holdings, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US7653710B2 (en) 2002-06-25 2010-01-26 Qst Holdings, Llc. Hardware task manager
US6836839B2 (en) 2001-03-22 2004-12-28 Quicksilver Technology, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US6742165B2 (en) * 2001-03-28 2004-05-25 Mips Technologies, Inc. System, method and computer program product for web-based integrated circuit design
FR2823932B1 (en) * 2001-04-23 2003-06-27 Intaan Technology SYSTEM AND METHOD FOR DYNAMIC DISTRIBUTION OF DATA AND / OR SERVICES
JP2004526264A (en) * 2001-04-26 2004-08-26 ニューズグレード コーポレーション Dynamic generation of personal presentation of domain specific information content
US7346921B2 (en) * 2001-04-30 2008-03-18 Ge Capital Corporation Definition of low-level security rules in terms of high-level security concepts
US7519546B2 (en) * 2001-04-30 2009-04-14 General Electric Company Maintaining synchronization of information published to multiple subscribers
US20020198931A1 (en) * 2001-04-30 2002-12-26 Murren Brian T. Architecture and process for presenting application content to clients
US20030078949A1 (en) * 2001-04-30 2003-04-24 Scholz Bernhard J. Automatic generation of forms with input validation
US20030009433A1 (en) * 2001-04-30 2003-01-09 Murren Brian T. Automatic identification of computer program attributes
US6577678B2 (en) 2001-05-08 2003-06-10 Quicksilver Technology Method and system for reconfigurable channel coding
US20020174094A1 (en) * 2001-05-21 2002-11-21 Serge Loffe Dataless applications
US6748396B2 (en) * 2001-06-01 2004-06-08 International Business Machines Corporation Independent class loader for dynamic class loading
WO2003001389A1 (en) * 2001-06-20 2003-01-03 Matsushita Electric Industrial Co., Ltd. Network system and agent server
JP2003030141A (en) * 2001-07-13 2003-01-31 Hitachi Ltd Cooperation type outsourcing service system
US7007236B2 (en) * 2001-09-14 2006-02-28 Accenture Global Services Gmbh Lab window collaboration
US8042132B2 (en) 2002-03-15 2011-10-18 Tvworks, Llc System and method for construction, delivery and display of iTV content
US8365230B2 (en) 2001-09-19 2013-01-29 Tvworks, Llc Interactive user interface for television applications
US8413205B2 (en) 2001-09-19 2013-04-02 Tvworks, Llc System and method for construction, delivery and display of iTV content
US11388451B2 (en) * 2001-11-27 2022-07-12 Comcast Cable Communications Management, Llc Method and system for enabling data-rich interactive television using broadcast database
CA2404552C (en) * 2001-09-21 2008-12-09 Corel Corporation System and method for secure communication
US7283538B2 (en) * 2001-10-12 2007-10-16 Vormetric, Inc. Load balanced scalable network gateway processor architecture
US20030229549A1 (en) 2001-10-17 2003-12-11 Automated Media Services, Inc. System and method for providing for out-of-home advertising utilizing a satellite network
US7614065B2 (en) 2001-12-17 2009-11-03 Automated Media Services, Inc. System and method for verifying content displayed on an electronic visual display
US6889252B2 (en) * 2001-10-22 2005-05-03 Jetcaps International Business Strategy Sas Method and system for using a selected peripheral of a network using a server as a re-router
US20030084008A1 (en) * 2001-10-31 2003-05-01 Simpson Shell Sterling System for purchasing postage electronically in a distributed processing environment
US20030093498A1 (en) * 2001-11-14 2003-05-15 Simpson Shell S. System for identifying and extracting text information using web based imaging
US7046635B2 (en) 2001-11-28 2006-05-16 Quicksilver Technology, Inc. System for authorizing functionality in adaptable hardware devices
US8412915B2 (en) 2001-11-30 2013-04-02 Altera Corporation Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements
US6986021B2 (en) 2001-11-30 2006-01-10 Quick Silver Technology, Inc. Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US20030105830A1 (en) * 2001-12-03 2003-06-05 Duc Pham Scalable network media access controller and methods
US7215701B2 (en) 2001-12-12 2007-05-08 Sharad Sambhwani Low I/O bandwidth method and system for implementing detection and identification of scrambling codes
US7403981B2 (en) 2002-01-04 2008-07-22 Quicksilver Technology, Inc. Apparatus and method for adaptive multimedia reception and transmission in communication environments
US20030131009A1 (en) * 2002-01-07 2003-07-10 International Business Machines Corporation Transaction method and system
US6658091B1 (en) 2002-02-01 2003-12-02 @Security Broadband Corp. LIfestyle multimedia security system
US20030149742A1 (en) * 2002-02-06 2003-08-07 Chris Bollerud Method and system for staging content
US7703116B1 (en) 2003-07-11 2010-04-20 Tvworks, Llc System and method for construction, delivery and display of iTV applications that blend programming information of on-demand and broadcast service offerings
US8707354B1 (en) 2002-06-12 2014-04-22 Tvworks, Llc Graphically rich, modular, promotional tile interface for interactive television
US7257640B1 (en) * 2002-04-16 2007-08-14 At&T Corp. System and method for bandwidth monitoring and allocation in networks
US7346652B2 (en) * 2002-05-13 2008-03-18 First Data Corporation Asynchronous data validation
US7660984B1 (en) 2003-05-13 2010-02-09 Quicksilver Technology Method and system for achieving individualized protected space in an operating system
US7328414B1 (en) 2003-05-13 2008-02-05 Qst Holdings, Llc Method and system for creating and programming an adaptive computing engine
EP1520224A4 (en) * 2002-06-19 2009-11-11 Jmarc Technologies Llc Creating an html document from a source document
US8352983B1 (en) 2002-07-11 2013-01-08 Tvworks, Llc Programming contextual interactive user interface for television
US7334124B2 (en) * 2002-07-22 2008-02-19 Vormetric, Inc. Logical access block processing protocol for transparent secure file storage
US6931530B2 (en) 2002-07-22 2005-08-16 Vormetric, Inc. Secure network file access controller implementing access control and auditing
US6678828B1 (en) * 2002-07-22 2004-01-13 Vormetric, Inc. Secure network file access control system
US11070890B2 (en) 2002-08-06 2021-07-20 Comcast Cable Communications Management, Llc User customization of user interfaces for interactive television
US7558198B2 (en) * 2002-08-19 2009-07-07 Motorola, Inc. Method and apparatus for data transfer
US8108656B2 (en) 2002-08-29 2012-01-31 Qst Holdings, Llc Task definition for specifying resource requirements
US20080313282A1 (en) 2002-09-10 2008-12-18 Warila Bruce W User interface, operating system and architecture
US7370092B2 (en) * 2002-09-12 2008-05-06 Computer Sciences Corporation System and method for enhanced software updating and revision
US8220018B2 (en) 2002-09-19 2012-07-10 Tvworks, Llc System and method for preferred placement programming of iTV content
US7143288B2 (en) * 2002-10-16 2006-11-28 Vormetric, Inc. Secure file system server architecture and methods
US7613630B2 (en) 2002-10-17 2009-11-03 Automated Media Services, Inc. System and method for editing existing footage to generate and distribute advertising content to retail locations
US7937591B1 (en) 2002-10-25 2011-05-03 Qst Holdings, Llc Method and system for providing a device which can be adapted on an ongoing basis
US8276135B2 (en) * 2002-11-07 2012-09-25 Qst Holdings Llc Profiling of software and circuit designs utilizing data operation analyses
US7225301B2 (en) 2002-11-22 2007-05-29 Quicksilver Technologies External memory controller node
US20040107274A1 (en) * 2002-12-03 2004-06-03 Mastrianni Steven J. Policy-based connectivity
US7546234B1 (en) 2003-01-08 2009-06-09 Xambala, Inc. Semantic processing engine
US8578411B1 (en) 2003-03-14 2013-11-05 Tvworks, Llc System and method for controlling iTV application behaviors through the use of application profile filters
US10664138B2 (en) 2003-03-14 2020-05-26 Comcast Cable Communications, Llc Providing supplemental content for a second screen experience
US11381875B2 (en) 2003-03-14 2022-07-05 Comcast Cable Communications Management, Llc Causing display of user-selectable content types
US9615061B2 (en) * 2003-07-11 2017-04-04 Tvworks, Llc System and method for creating and presenting composite video-on-demand content
US8416952B1 (en) 2003-07-11 2013-04-09 Tvworks, Llc Channel family surf control
US7890540B2 (en) * 2003-07-22 2011-02-15 Sap Ag Browsing meta data for an enterprise service framework
US8819734B2 (en) 2003-09-16 2014-08-26 Tvworks, Llc Contextual navigational control for digital television
US7346168B2 (en) * 2003-09-29 2008-03-18 Avaya Technology Corp. Method and apparatus for secure wireless delivery of converged services
CA2445220C (en) * 2003-10-10 2009-03-17 Nav Canada Air traffic information display system
US8055996B2 (en) * 2003-11-13 2011-11-08 International Business Machines Corporation Lightweight form pattern validation
US10156959B2 (en) 2005-03-16 2018-12-18 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US11582065B2 (en) 2007-06-12 2023-02-14 Icontrol Networks, Inc. Systems and methods for device communication
US20090077623A1 (en) 2005-03-16 2009-03-19 Marc Baum Security Network Integrating Security System and Network Devices
US11677577B2 (en) 2004-03-16 2023-06-13 Icontrol Networks, Inc. Premises system management using status signal
US11916870B2 (en) 2004-03-16 2024-02-27 Icontrol Networks, Inc. Gateway registry methods and systems
US10721087B2 (en) 2005-03-16 2020-07-21 Icontrol Networks, Inc. Method for networked touchscreen with integrated interfaces
US8988221B2 (en) 2005-03-16 2015-03-24 Icontrol Networks, Inc. Integrated security system with parallel processing architecture
US11343380B2 (en) 2004-03-16 2022-05-24 Icontrol Networks, Inc. Premises system automation
US11244545B2 (en) 2004-03-16 2022-02-08 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US10382452B1 (en) 2007-06-12 2019-08-13 Icontrol Networks, Inc. Communication protocols in integrated systems
US20050216302A1 (en) 2004-03-16 2005-09-29 Icontrol Networks, Inc. Business method for premises management
US9191228B2 (en) 2005-03-16 2015-11-17 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US10522026B2 (en) 2008-08-11 2019-12-31 Icontrol Networks, Inc. Automation system user interface with three-dimensional display
US10348575B2 (en) 2013-06-27 2019-07-09 Icontrol Networks, Inc. Control system user interface
US11159484B2 (en) 2004-03-16 2021-10-26 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US11113950B2 (en) 2005-03-16 2021-09-07 Icontrol Networks, Inc. Gateway integrated with premises security system
US11277465B2 (en) 2004-03-16 2022-03-15 Icontrol Networks, Inc. Generating risk profile using data of home monitoring and security system
US20170118037A1 (en) 2008-08-11 2017-04-27 Icontrol Networks, Inc. Integrated cloud system for premises automation
US8635350B2 (en) 2006-06-12 2014-01-21 Icontrol Networks, Inc. IP device discovery systems and methods
US9729342B2 (en) 2010-12-20 2017-08-08 Icontrol Networks, Inc. Defining and implementing sensor triggered response rules
US10200504B2 (en) 2007-06-12 2019-02-05 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US9609003B1 (en) 2007-06-12 2017-03-28 Icontrol Networks, Inc. Generating risk profile using data of home monitoring and security system
US10444964B2 (en) 2007-06-12 2019-10-15 Icontrol Networks, Inc. Control system user interface
US8963713B2 (en) 2005-03-16 2015-02-24 Icontrol Networks, Inc. Integrated security network with security alarm signaling system
US10339791B2 (en) 2007-06-12 2019-07-02 Icontrol Networks, Inc. Security network integrated with premise security system
US10375253B2 (en) 2008-08-25 2019-08-06 Icontrol Networks, Inc. Security system with networked touchscreen and gateway
US10313303B2 (en) 2007-06-12 2019-06-04 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US11201755B2 (en) 2004-03-16 2021-12-14 Icontrol Networks, Inc. Premises system management using status signal
US11811845B2 (en) 2004-03-16 2023-11-07 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US11316958B2 (en) 2008-08-11 2022-04-26 Icontrol Networks, Inc. Virtual device systems and methods
US9531593B2 (en) 2007-06-12 2016-12-27 Icontrol Networks, Inc. Takeover processes in security network integrated with premise security system
US7711796B2 (en) 2006-06-12 2010-05-04 Icontrol Networks, Inc. Gateway registry methods and systems
US10062273B2 (en) 2010-09-28 2018-08-28 Icontrol Networks, Inc. Integrated security system with parallel processing architecture
US9141276B2 (en) 2005-03-16 2015-09-22 Icontrol Networks, Inc. Integrated interface for mobile device
US11489812B2 (en) 2004-03-16 2022-11-01 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US10142392B2 (en) 2007-01-24 2018-11-27 Icontrol Networks, Inc. Methods and systems for improved system performance
US10237237B2 (en) 2007-06-12 2019-03-19 Icontrol Networks, Inc. Communication protocols in integrated systems
US11368429B2 (en) 2004-03-16 2022-06-21 Icontrol Networks, Inc. Premises management configuration and control
US7636922B2 (en) * 2004-05-03 2009-12-22 Microsoft Corporation Generic user interface command architecture
US8812613B2 (en) * 2004-06-03 2014-08-19 Maxsp Corporation Virtual application manager
US9357031B2 (en) 2004-06-03 2016-05-31 Microsoft Technology Licensing, Llc Applications as a service
US7908339B2 (en) * 2004-06-03 2011-03-15 Maxsp Corporation Transaction based virtual file system optimized for high-latency network connections
US8996481B2 (en) 2004-07-02 2015-03-31 Goldman, Sach & Co. Method, system, apparatus, program code and means for identifying and extracting information
US8442953B2 (en) 2004-07-02 2013-05-14 Goldman, Sachs & Co. Method, system, apparatus, program code and means for determining a redundancy of information
US8510300B2 (en) 2004-07-02 2013-08-13 Goldman, Sachs & Co. Systems and methods for managing information associated with legal, compliance and regulatory risk
US8762191B2 (en) 2004-07-02 2014-06-24 Goldman, Sachs & Co. Systems, methods, apparatus, and schema for storing, managing and retrieving information
US7664834B2 (en) * 2004-07-09 2010-02-16 Maxsp Corporation Distributed operating system management
US8171479B2 (en) 2004-09-30 2012-05-01 Citrix Systems, Inc. Method and apparatus for providing an aggregate view of enumerated system resources from various isolation layers
US8095940B2 (en) 2005-09-19 2012-01-10 Citrix Systems, Inc. Method and system for locating and accessing resources
US7853947B2 (en) * 2004-09-30 2010-12-14 Citrix Systems, Inc. System for virtualizing access to named system objects using rule action associated with request
US8117559B2 (en) 2004-09-30 2012-02-14 Citrix Systems, Inc. Method and apparatus for virtualizing window information
US7680758B2 (en) 2004-09-30 2010-03-16 Citrix Systems, Inc. Method and apparatus for isolating execution of software applications
US7752600B2 (en) * 2004-09-30 2010-07-06 Citrix Systems, Inc. Method and apparatus for providing file-type associations to multiple applications
US20060141983A1 (en) * 2004-12-23 2006-06-29 Srinivasan Jagannathan Network usage analysis system using customer and pricing information to maximize revenue and method
US20060140369A1 (en) * 2004-12-23 2006-06-29 Jorn Altmann Network usage analysis system using revenue from customers in allocating reduced link capacity and method
EP1695749A1 (en) * 2005-02-28 2006-08-30 Koninklijke KPN N.V. Device and method for the provisioning of personal service hosting
US7624086B2 (en) * 2005-03-04 2009-11-24 Maxsp Corporation Pre-install compliance system
US8234238B2 (en) 2005-03-04 2012-07-31 Maxsp Corporation Computer hardware and software diagnostic and report system
US7512584B2 (en) * 2005-03-04 2009-03-31 Maxsp Corporation Computer hardware and software diagnostic and report system
US8589323B2 (en) 2005-03-04 2013-11-19 Maxsp Corporation Computer hardware and software diagnostic and report system incorporating an expert system and agents
US11496568B2 (en) 2005-03-16 2022-11-08 Icontrol Networks, Inc. Security system with networked touchscreen
US20120324566A1 (en) 2005-03-16 2012-12-20 Marc Baum Takeover Processes In Security Network Integrated With Premise Security System
US11700142B2 (en) 2005-03-16 2023-07-11 Icontrol Networks, Inc. Security network integrating security system and network devices
US11615697B2 (en) 2005-03-16 2023-03-28 Icontrol Networks, Inc. Premise management systems and methods
US20170180198A1 (en) 2008-08-11 2017-06-22 Marc Baum Forming a security network including integrated security system components
US9306809B2 (en) 2007-06-12 2016-04-05 Icontrol Networks, Inc. Security system with networked touchscreen
US20110128378A1 (en) 2005-03-16 2011-06-02 Reza Raji Modular Electronic Display Platform
US10999254B2 (en) 2005-03-16 2021-05-04 Icontrol Networks, Inc. System for data routing in networks
US7818667B2 (en) 2005-05-03 2010-10-19 Tv Works Llc Verification of semantic constraints in multimedia data and in its announcement, signaling and interchange
EP1737178A1 (en) * 2005-06-24 2006-12-27 Axalto SA Method and system using a portable object for providing an extension to a server
US7917537B2 (en) * 2005-09-26 2011-03-29 Oracle International Corporation System and method for providing link property types for content management
US7818344B2 (en) 2005-09-26 2010-10-19 Bea Systems, Inc. System and method for providing nested types for content management
US20070073663A1 (en) * 2005-09-26 2007-03-29 Bea Systems, Inc. System and method for providing full-text searching of managed content
US7779034B2 (en) 2005-10-07 2010-08-17 Citrix Systems, Inc. Method and system for accessing a remote file in a directory structure associated with an application program executing locally
US8131825B2 (en) 2005-10-07 2012-03-06 Citrix Systems, Inc. Method and a system for responding locally to requests for file metadata associated with files stored remotely
US20070083620A1 (en) * 2005-10-07 2007-04-12 Pedersen Bradley J Methods for selecting between a predetermined number of execution methods for an application program
US8898319B2 (en) 2006-05-24 2014-11-25 Maxsp Corporation Applications and services as a bundle
US8811396B2 (en) 2006-05-24 2014-08-19 Maxsp Corporation System for and method of securing a network utilizing credentials
US10079839B1 (en) 2007-06-12 2018-09-18 Icontrol Networks, Inc. Activation of gateway device
US7778994B2 (en) * 2006-11-13 2010-08-17 Google Inc. Computer-implemented interactive, virtual bookshelf system and method
US7844686B1 (en) 2006-12-21 2010-11-30 Maxsp Corporation Warm standby appliance
US11706279B2 (en) 2007-01-24 2023-07-18 Icontrol Networks, Inc. Methods and systems for data communication
US7633385B2 (en) 2007-02-28 2009-12-15 Ucontrol, Inc. Method and system for communicating with and controlling an alarm system from a remote server
US10127480B1 (en) 2007-03-09 2018-11-13 R. B. III Associates, Inc. System for automated decoration
US8451986B2 (en) 2007-04-23 2013-05-28 Icontrol Networks, Inc. Method and system for automatically providing alternate network access for telecommunications
US10498830B2 (en) 2007-06-12 2019-12-03 Icontrol Networks, Inc. Wi-Fi-to-serial encapsulation in systems
US11601810B2 (en) 2007-06-12 2023-03-07 Icontrol Networks, Inc. Communication protocols in integrated systems
US11646907B2 (en) 2007-06-12 2023-05-09 Icontrol Networks, Inc. Communication protocols in integrated systems
US10523689B2 (en) 2007-06-12 2019-12-31 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US11089122B2 (en) 2007-06-12 2021-08-10 Icontrol Networks, Inc. Controlling data routing among networks
US10389736B2 (en) 2007-06-12 2019-08-20 Icontrol Networks, Inc. Communication protocols in integrated systems
US11218878B2 (en) 2007-06-12 2022-01-04 Icontrol Networks, Inc. Communication protocols in integrated systems
US11212192B2 (en) 2007-06-12 2021-12-28 Icontrol Networks, Inc. Communication protocols in integrated systems
US10051078B2 (en) 2007-06-12 2018-08-14 Icontrol Networks, Inc. WiFi-to-serial encapsulation in systems
US11423756B2 (en) 2007-06-12 2022-08-23 Icontrol Networks, Inc. Communication protocols in integrated systems
US11316753B2 (en) 2007-06-12 2022-04-26 Icontrol Networks, Inc. Communication protocols in integrated systems
US10616075B2 (en) 2007-06-12 2020-04-07 Icontrol Networks, Inc. Communication protocols in integrated systems
US10423309B2 (en) 2007-06-12 2019-09-24 Icontrol Networks, Inc. Device integration framework
US11237714B2 (en) 2007-06-12 2022-02-01 Control Networks, Inc. Control system user interface
US10666523B2 (en) 2007-06-12 2020-05-26 Icontrol Networks, Inc. Communication protocols in integrated systems
US11831462B2 (en) 2007-08-24 2023-11-28 Icontrol Networks, Inc. Controlling data routing in premises management systems
US8645515B2 (en) 2007-10-26 2014-02-04 Maxsp Corporation Environment manager
US8175418B1 (en) 2007-10-26 2012-05-08 Maxsp Corporation Method of and system for enhanced data storage
US20090109857A1 (en) * 2007-10-31 2009-04-30 Microsoft Corporation Resource connection monitor utility
US7792934B2 (en) * 2008-01-02 2010-09-07 Citrix Systems International Gmbh Loading of server-stored user profile data
US11916928B2 (en) 2008-01-24 2024-02-27 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
WO2009097431A1 (en) * 2008-01-29 2009-08-06 Telcordia Technologies, Inc. System for extracting and combining information from ip device configurations, inventory systems, and real-time network monitoring
US20170185278A1 (en) 2008-08-11 2017-06-29 Icontrol Networks, Inc. Automation system user interface
US10530839B2 (en) 2008-08-11 2020-01-07 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US11758026B2 (en) 2008-08-11 2023-09-12 Icontrol Networks, Inc. Virtual device systems and methods
US11729255B2 (en) 2008-08-11 2023-08-15 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US11258625B2 (en) 2008-08-11 2022-02-22 Icontrol Networks, Inc. Mobile premises automation platform
US11792036B2 (en) 2008-08-11 2023-10-17 Icontrol Networks, Inc. Mobile premises automation platform
US8875156B2 (en) * 2008-09-30 2014-10-28 Rockwell Automation Technologies, Inc. Remote object data property replication method and system
US20100088364A1 (en) * 2008-10-08 2010-04-08 International Business Machines Corporation Social networking architecture in which profile data hosting is provided by the profile owner
US8149431B2 (en) 2008-11-07 2012-04-03 Citrix Systems, Inc. Systems and methods for managing printer settings in a networked computing environment
US11832024B2 (en) * 2008-11-20 2023-11-28 Comcast Cable Communications, Llc Method and apparatus for delivering video and video-related content at sub-asset level
US8700072B2 (en) 2008-12-23 2014-04-15 At&T Mobility Ii Llc Scalable message fidelity
US20100235750A1 (en) * 2009-03-12 2010-09-16 Bryce Douglas Noland System, method and program product for a graphical interface
US8261126B2 (en) * 2009-04-03 2012-09-04 Microsoft Corporation Bare metal machine recovery from the cloud
US20100257403A1 (en) * 2009-04-03 2010-10-07 Microsoft Corporation Restoration of a system from a set of full and partial delta system snapshots across a distributed system
US8638211B2 (en) 2009-04-30 2014-01-28 Icontrol Networks, Inc. Configurable controller and interface for home SMA, phone and multimedia
US8862574B2 (en) * 2009-04-30 2014-10-14 Microsoft Corporation Providing a search-result filters toolbar
US8090797B2 (en) 2009-05-02 2012-01-03 Citrix Systems, Inc. Methods and systems for launching applications into existing isolation environments
JP5990466B2 (en) 2010-01-21 2016-09-14 スビラル・インコーポレーテッド Method and apparatus for a general purpose multi-core system for implementing stream-based operations
AU2011250886A1 (en) 2010-05-10 2013-01-10 Icontrol Networks, Inc Control system user interface
US8836467B1 (en) 2010-09-28 2014-09-16 Icontrol Networks, Inc. Method, system and apparatus for automated reporting of account and sensor zone information to a central station
US11750414B2 (en) 2010-12-16 2023-09-05 Icontrol Networks, Inc. Bidirectional security sensor communication for a premises security system
US9147337B2 (en) 2010-12-17 2015-09-29 Icontrol Networks, Inc. Method and system for logging security event data
US9112623B2 (en) 2011-06-06 2015-08-18 Comcast Cable Communications, Llc Asynchronous interaction at specific points in content
US9665905B2 (en) * 2012-08-21 2017-05-30 Matthew Lehrer Three dimensional shopping cart
US11115722B2 (en) 2012-11-08 2021-09-07 Comcast Cable Communications, Llc Crowdsourcing supplemental content
US9110572B2 (en) * 2013-02-04 2015-08-18 Visible Spectrum, Inc. Network based video creation
US9553927B2 (en) 2013-03-13 2017-01-24 Comcast Cable Communications, Llc Synchronizing multiple transmissions of content
US10880609B2 (en) 2013-03-14 2020-12-29 Comcast Cable Communications, Llc Content event messaging
US10025839B2 (en) * 2013-11-29 2018-07-17 Ca, Inc. Database virtualization
US9454840B2 (en) * 2013-12-13 2016-09-27 Blake Caldwell System and method for interactive animations for enhanced and personalized video communications
US11405463B2 (en) 2014-03-03 2022-08-02 Icontrol Networks, Inc. Media content management
US11146637B2 (en) 2014-03-03 2021-10-12 Icontrol Networks, Inc. Media content management
US9727314B2 (en) 2014-03-21 2017-08-08 Ca, Inc. Composite virtual services
US20160110791A1 (en) * 2014-10-15 2016-04-21 Toshiba Global Commerce Solutions Holdings Corporation Method, computer program product, and system for providing a sensor-based environment
US11783382B2 (en) 2014-10-22 2023-10-10 Comcast Cable Communications, Llc Systems and methods for curating content metadata
CN104539677A (en) * 2014-12-19 2015-04-22 华南理工大学 Numerically-controlled machine tool sharing system and method based on Internet of Things

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5799318A (en) * 1993-04-13 1998-08-25 Firstfloor Software Method and apparatus for collecting and displaying information from diverse computer resources
US5802306A (en) * 1995-10-31 1998-09-01 International Business Machines Corporation Supporting multiple client-server sessions from a protocol stack associated with a single physical adapter through use of a plurality of logical adapters
US5802296A (en) * 1996-08-02 1998-09-01 Fujitsu Software Corporation Supervisory powers that provide additional control over images on computers system displays to users interactings via computer systems
US5802292A (en) * 1995-04-28 1998-09-01 Digital Equipment Corporation Method for predictive prefetching of information over a communications network

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2025160A1 (en) * 1989-09-28 1991-03-29 John W. White Portable and dynamic distributed applications architecture
US5204897A (en) * 1991-06-28 1993-04-20 Digital Equipment Corporation Management interface for license management system
FI91456C (en) * 1992-07-29 1994-06-27 Nokia Telecommunications Oy A method for managing the resources allocated on a computer
US5560005A (en) * 1994-02-25 1996-09-24 Actamed Corp. Methods and systems for object-based relational distributed databases
GB2296799A (en) * 1995-01-06 1996-07-10 Ibm Processing parallel data queries
US5581552A (en) * 1995-05-23 1996-12-03 At&T Multimedia server
US5949998A (en) * 1996-07-03 1999-09-07 Sun Microsystems, Inc. Filtering an object interface definition to determine services needed and provided
US5774660A (en) * 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
US5826265A (en) * 1996-12-06 1998-10-20 International Business Machines Corporation Data management system having shared libraries
US5826239A (en) * 1996-12-17 1998-10-20 Hewlett-Packard Company Distributed workflow resource management system and method
US5966702A (en) * 1997-10-31 1999-10-12 Sun Microsystems, Inc. Method and apparatus for pre-processing and packaging class files

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5799318A (en) * 1993-04-13 1998-08-25 Firstfloor Software Method and apparatus for collecting and displaying information from diverse computer resources
US5802292A (en) * 1995-04-28 1998-09-01 Digital Equipment Corporation Method for predictive prefetching of information over a communications network
US5802306A (en) * 1995-10-31 1998-09-01 International Business Machines Corporation Supporting multiple client-server sessions from a protocol stack associated with a single physical adapter through use of a plurality of logical adapters
US5802296A (en) * 1996-08-02 1998-09-01 Fujitsu Software Corporation Supervisory powers that provide additional control over images on computers system displays to users interactings via computer systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP0990327A4 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000062483A1 (en) * 1999-04-13 2000-10-19 Nortel Networks, Inc. System for tracing data channels through a channel-based network
WO2001003399A2 (en) * 1999-07-06 2001-01-11 At & T Laboratories Cambridge Ltd. A thin multimedia communication device and method
WO2001003399A3 (en) * 1999-07-06 2001-05-25 At & T Lab Cambridge Ltd A thin multimedia communication device and method
WO2001077897A3 (en) * 1999-09-27 2002-05-02 Torveo Technologies System and method using a web catalog with dynamic multimedia data using java
WO2001077897A2 (en) * 1999-09-27 2001-10-18 Torveo Technologies System and method using a web catalog with dynamic multimedia data using java
WO2001041089A1 (en) * 1999-12-03 2001-06-07 Ncr International. Inc Self-service terminal
WO2002003649A1 (en) 2000-06-30 2002-01-10 Nokia Corporation Opimization of service access
EP1488324A1 (en) * 2002-03-26 2004-12-22 Accenture LLP Single access point for filing of converted electronic forms to multiple processing entities
EP1488324A4 (en) * 2002-03-26 2008-04-16 Accenture Global Services Gmbh Single access point for filing of converted electronic forms to multiple processing entities
US7669116B2 (en) 2002-03-26 2010-02-23 Accenture Global Services, Gmbh Single access point for filing of converted electronic forms to multiple processing entities
EP2290556A1 (en) * 2002-03-26 2011-03-02 Accenture Global Services GmbH Single access point for filing of converted electronic forms to multiple processing entities
US8392818B2 (en) 2002-03-26 2013-03-05 Accenture Global Services Limited Single access point for filing of converted electronic forms to multiple processing entities
US9009721B2 (en) 2007-10-20 2015-04-14 Citrix Systems, Inc. Method and system for communicating between isolation environments
US9009720B2 (en) 2007-10-20 2015-04-14 Citrix Systems, Inc. Method and system for communicating between isolation environments
US9021494B2 (en) 2007-10-20 2015-04-28 Citrix Systems, Inc. Method and system for communicating between isolation environments

Also Published As

Publication number Publication date
EP0990327A1 (en) 2000-04-05
JP2002508907A (en) 2002-03-19
EP0990327A4 (en) 2005-07-20
WO1998059460A8 (en) 1999-05-06
US6292827B1 (en) 2001-09-18

Similar Documents

Publication Publication Date Title
US6292827B1 (en) Information transfer systems and method with dynamic distribution of data, control and management of information
TW388824B (en) Http caching proxy to filter and control display of data in a web browser
US5799157A (en) System and method for creating interactive electronic systems to present information and execute transactions
US7406498B2 (en) Dynamic integration of web sites
TW420953B (en) Content modification of internet web pages for a television class display
US6901428B1 (en) Accessing data from a database over a network
US6151622A (en) Method and system for portably enabling view synchronization over the world-wide web using frame hierarchies
US6961737B2 (en) Serving signals
WO2003021798A2 (en) Browser-to-browser, dom-based, peer-to-peer communication with delta synchronization
WO1996018952A9 (en) System and method for creating interactive electronic systems to present information and execute transactions
JPH0926970A (en) Method and apparatus for execution by computer for retrievalof information
EP0889420A2 (en) Media manager for access to multiple media types
JP2003512666A (en) Intelligent harvesting and navigation systems and methods
WO2000077661A2 (en) Information processing method, information terminal support server, collaboration system, and storage medium storing an information processing program
KR20050052421A (en) Creative method and active viewing method for a electronic document
US6665573B1 (en) System and method for matching a creative expression with an order for goods
JP2003345697A (en) Method, apparatus, and storage medium for providing integrated interface
US7127453B1 (en) Gathering data from a database for display
US20030131092A1 (en) System for sending messages to all users in a web hosting environment
Dennis et al. Online R&D management: the way forward
CA2243701A1 (en) Multi-dimensional data storage and presentation using a standard internet web browser
JP2001109776A (en) Web browser
CA2580499A1 (en) Serving signals

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA IL JP

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: C1

Designated state(s): CA IL JP

AL Designated countries for regional patents

Kind code of ref document: C1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

CFP Corrected version of a pamphlet front page

Free format text: REVISED ABSTRACT RECEIVED BY THE INTERNATIONAL BUREAU AFTER COMPLETION OF THE TECHNICAL PREPARATIONS FOR INTERNATIONAL PUBLICATION

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 1998930450

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1998930450

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: CA

WWW Wipo information: withdrawn in national office

Ref document number: 1998930450

Country of ref document: EP