WO2006116427A2 - Creating or maintaining relationships within a private network or virtual private network of servers and clients - Google Patents

Creating or maintaining relationships within a private network or virtual private network of servers and clients Download PDF

Info

Publication number
WO2006116427A2
WO2006116427A2 PCT/US2006/015678 US2006015678W WO2006116427A2 WO 2006116427 A2 WO2006116427 A2 WO 2006116427A2 US 2006015678 W US2006015678 W US 2006015678W WO 2006116427 A2 WO2006116427 A2 WO 2006116427A2
Authority
WO
WIPO (PCT)
Prior art keywords
network
virtual
system
server
systems
Prior art date
Application number
PCT/US2006/015678
Other languages
French (fr)
Other versions
WO2006116427A3 (en
Inventor
John Jason Gentry Mullins
Original Assignee
Boloto Group, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US67491105P priority Critical
Priority to US60/674,911 priority
Application filed by Boloto Group, Inc. filed Critical Boloto Group, Inc.
Publication of WO2006116427A2 publication Critical patent/WO2006116427A2/en
Publication of WO2006116427A3 publication Critical patent/WO2006116427A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance or administration or management of packet switching networks
    • H04L41/02Arrangements for maintenance or administration or management of packet switching networks involving integration or standardization
    • H04L41/0233Arrangements for maintenance or administration or management of packet switching networks involving integration or standardization using object oriented techniques, e.g. common object request broker architecture [CORBA] for representation of network management data

Abstract

The present invention provides computer systems, private computer networks or private virtual networks for managed peer to peer communications and to methods and software for accessing, utilizing and managing private computer networks or virtual private networks including servers and clients. More particularly, the present invention provides a system, methods and software for creating, maintaining, accessing, navigating and persisting relationship between servers with other servers and/or clients within a private or virtual private network for managed peer to peer communications. In one aspect, the invention also relates to an application programming interface ('API') and software useful for creating, maintaining, accessing, navigating, and persisting such relationships as a complex relationship graph, or as a set of complex relationship graphs.

Description

SYSTEM, METHOD AND SOFTWARE FOR CREATING, MAINTAINING,

NAVIGATING OR MANIPULATING RELATIONSHIPS AND

COMMUNICATIONS WITHIN A PRIVATE NETWORK OR PRIVATE

VIRTUAL NETWORK OF SERVERS AND CLIENTS

FIELD OF THE INVENTION

The field of the present invention relates generally to computer systems, private computer networks or private virtual networks for managed peer to peer comrnunications and to methods and software for accessing, utilizing and managing private computer networks or virtual private networks including servers and clients. More particularly, the present invention relates to a system, methods and software for creating, maintaining, accessing, navigating and persisting relationship between servers with other servers and/or clients within a private or virtual private network for managed peer to peer communications. In one aspect, the invention also relates to an application programming interface ("API") and software useful for creating, maintaining, accessing, navigating and persisting such relationships as a complex relationship graph, or as a set of complex relationship graphs.

BACKGROUND OF THE TNVENTION

Systems for creating or accessing networks for server to peer and peer to peer communications have been used in the past few years. A frequent approach to accomplish access to such private networks is to have an unmanageάV or a limited management of the virtual private networks consisting of little other than granting permission to access the network and giving the user network communication addresses relating to peers or servers on the network. The actual management of attachments is controlled by the- user, which has led to abuse of the system and impermissible file sharing via unmanaged peer to peer communications where the identity of the peers is unknown to the network administrator. U.S. Patent Number 5,884,031, Issued to Ice on March 16, 1999 is an example of such a virtually unmanaged network of the type frequently used by peer to peer file swappers. In such systems, there is no structure for a multi-tier structured network or other, structured managed network, and generally no effective mechanism or messaging system to manage the connections and disconnections from the network once a peer to peer communication is initiated between two parties. The essence of such a network type is analogous to a "matchmaker" who simply introduces two potentially interested parties and then disappears after the physical introduction is complete. There is no mechanism to manage communications between the parties after introduction;, or any mechanism to detect the need to intervene, or means to intervene and disconnect the communications due to unacceptable communication behavior from one or more of the introduced parties.

Accordingly, there is a need for a managed network or virtual network that is generally not limited in size with respect to servers and client for peer to peer communications wherein the identity of each client is known to the network, the structure of the network includes the communicating parties within a dynamic structure as parties connect and disconnect, but the network has an identifiable and changing structure, and the structure is not necessarily known by the individual peers who communicate with each other and swap files or transmit other communications within the context of the private network or private virtual network. There is particularly a need for such a system where reporting of or sampling of communication occurs and parties violating the rules of communication can be disconnected from each other, and from the network by one or more network administrators.

MANAGING NETWORKS AS AN OB JECT GRAPH

A geographic problem of physical locations complicates the creation, access, changing or deleting of a set of network relationships between clients and servers within a dynamic, changing structure network, or between two clients (peer to peer where one or more may also be acting as a server for a particular transaction) within the network. The network or virtual network may be distributed over multiple physical computer machine locations or even distributed over multiple Internet website locations that may be independent of the core private network or from a central machine. Thus, in the context of this invention, the relationships between such entities may be managed as an object graph of complex object relationships using object based programming languages and software along with a logically implemented and integrated messaging service1 that may include one or more local objects with logic for monitoring and reporting peer to peer communications and network communications within established network connections.

Importantly, relationships may exist between two servers, between a client and a server, or between two clients that may be represented using an object model and object programming software according to the present invention. A relationship between one such entity and another may be member selected from the group of three relationship types consisting of 1 to 1 (1-1), 1 to many (1-M) or many to many (M-M). Complex combinations of these relationships may be thought of in the context of this invention of managing network relationships as an object graphs as existing in data object relationships definitions for a given data object for management. These relationships are described or illustrated in further detail later in this document. Such relationships may be captured, added, deleted or otherwise changed by utilizing a data source to store the data or data objects that represent or encapsulate such relationships.

When such a data source is used, objects may logically span multiple relational tables or multiple object databases, and may even be distributed over a logical (or hypothetical) computer system involving multiple physically independent computer systems or even multiple website locations. Creating, accessing, maintaining or updating an object application model can require working with multiple translation modules and require tedious and repetitive updating of multiple individual computer systems or multiple data sources in order to do useful work and keep the object application model synchronized. Such approaches are both costly and unwieldy in terms of computing and development resources, particularly with respect to Internet based private network and virtual private network communications and transactions object application models.

Data objects of an object application model are often a feature of eCommerce object programming applications, where information is obtained from a data source and the data is defined as a data object (e.g., as a Java class) for use with another computer application. However, the present invention modifies and applies this practice to a network in order to provide network management utilizing an object programming language with objects describing and encapsulating the relationships of entities utilizing and serving the private network and persisting them to a data store. In practice, a data object or model of data objects may exist only in the random access memory of a computer memory system, or may be saved to either a data source or to some other type of retrievable information repository. A programmer or administrator of an object data application may not be able to exhaustively display the overall model or diagram of data objects for an object application model or to display some of its specific elements. Unfortunately, tools for accessing and displaying data objects and associated data object relationships as a complex data object graph model have not been well implemented in the field of object language programming.

A computer application can execute one or more of the following non-limiting actions with respect to one or more of the members selected from the group consisting of data, a data object, and a data object definition: access data, change data, create data, create a new relationship between one or more data objects by creating or changing at least one data object relationship definition, change or delete a relationship between one or more data objects by changing or deleting at least one data object relationship definition, access a data object relationship definition and use its parameters to access a data source or a data object, and access one or more data object relationship definitions or data objects to create a new data object or data object relationship. Any changes executed by a computer application with respect to one or more of the members selected from the group consisting of data, data object or data object definition may need to be properly persisted (permanently stored) to preserve any changes to one or more of the members selected from the group consisting of data, a data object and a data object definition,

A data object and an associated data object relationship definition may be represented by a complex data object graph as described in published U.S. patent application serial number 10/158,672 to Ward Mullins (assignee Thought, Inc.). A

Complex Data Object Graph (CDOG), for the purposes of this document, may be thought of as a computer program data object graph that represents a data object having at least one relationship with at least one other data object or with itself via a circular link. When the data object of a CDOG is implemented in the Java computer program language, the CDOG may be further defined as being a Java Data Object Graph ("JDOG").

There is a need for an easily navigable tool, messaging system, and associated reporting objects for detecting any relationships of a data object in the context of a private network or a virtual private network in order to provide both a full description and management of servers and clients within the network as CDOG definitions and for persisting any changes to at least one member selected from the group consisting of a data object, any data associated with the related object, or any associated CDOG definition (i.e., an changes to the data object, data or to a relationship of the data object with another data object). For example, there is a need to be able to properly create, manage and sever relationships between at least two data objects in a convenient and efficient manner by simply making a change to the CDOG definition for one of the two related data objects.

There is currently no computer programmer or system administrator tool that is efficiently adapted for managing a private network or virtual private network as an object application using a CDOG model with features that permit convenient and efficient accessing and deleting of a single instance of a complex data object and (without further input) results in the tool automatically deleting all existing associated data objects and relationships and the tool automatically updating all local and distributed instances of the CDOG and its associated data, data objects and data object relationships on the local or distributed computer system. Instead, a server checks which registered servers are available for connections in a peer to peer context and sends the connection address to the person requesting a connection. Afterwards, the structure of the overall network and the type of peer to peer communications between the connection requesters and the servers whose addresses are given to requesters for connection as introduced servers and clients are not managed or their structure understood by the initial server or server system from which connection was requested by client user connection requesters.

Accordingly, there is a strong need in the art for a computer applications programmer tool designed to assist a programmer or administrator in the actions of deleting, inactivating or updating of relationships and communications within a private network or a virtual private network as a complex data object graph, wherein the computer applications programmer tool can be configured to automatically delete, inactivate or update at least one member selected from the group consisting of associated data, associated data objects and associated data object relationship definitions to reflect the deleting, inactivating or updating of a CDOG. A particularly strong need exists for such a tool having the further ability to be configured to persist, propagate and reflect system wide (in a local or distributed computer system) any such changes to a CDOG instance to all instances of the CDOG and to all instances of associated data, data objects and data object relationships that represent relationships and communications within a private network or a virtual private network.

DEFINITIONS

The following non-exhaustive list of definitions is used herein to define terms that may otherwise be confusing or can sometimes have multiple meanings. Each occurrence of a defined term in the above text, in the text that follows, or in the claims of this document, is to be given the meaning ascribed to it in the list of definitions below.

"Instance" as referred to in this document in the context of computer software applications is a single occurrence of a software logical element in the memory of a computer system, such as a "class", an "object", a "data object", and the like,

"Class" as referred to in this document in the context of computer software applications is a logic unit in a computer application or a computer software program where the application or program is based upon an objected oriented programming language (e,g.^ Java), In practice, a class is a logical unit used as a logical template in an object oriented language from which to allocate new instances of objects.

"Object" as used in the context of this document is a general term referring to a logic unit in a computer application or a computer software program where the application or program is based upon an objected oriented programming language (e.g., Java). The term "object" may ordinarily be used interchangeably with the term "class" as a template or as an instance depending on the context.

"Data object" as referred to in the context of this document represents the concept of the occurrence of an object that holds data within a specific computer application domain and is likely to have its contents stored in a persistent data source of a computer system (e.g., a database server, a binary file, a text file, or even in a combination of two or more of such a persistent data sources of a computer system). A data object may exist as an independent data object without any relationship to any other data object or it may have one or more relationships with itself or with one or more other data objects.

"Complex data object" (or "CDO") as used in the context of this document refers to the occurrence of a data object that has at least one or more relationships with itself, or at least one or more relationships with one or more other data object(s). In a given instance of a CDO at least one relationship is populated as a link, as defined below. A CDO may have a multiplicity of different relationships with itself or with one or more additional CDOs.

"Relationship" or "data relationship" as used in the context of a CDO refers to the type of logical combination that occurs between a data object with itself, or refers to the type of logical combination that occurs between a data object and at least one another data object. Among other references or descriptions, such a relationship is always referred to or partially described by a "relationship type". This term is used in an object oriented language context to reference or describe any expectations, actions and limitations possible between two or more data objects.

"Relationship type" in the context of this document is a label that specifies the possible multiple combinations that can occur between a CDO and itself or with at least one other CDO. The possible relationship type labels are 1-1 (one to one), 1-M (one to many) and M-M (many to many). A given CDO may be simultaneously related to more than one other CDO through several different types of relationship.

"Link" as used in this document with respect to a CDO identifies a particular occurrence of a relationship between a CDO and itself, between a CDO and another CDO. The occurrence of at least one populated link results in an instance of the CDO.

"Circular link" as used in this document with respect to a CDO identifies a particular occurrence of a relationship between a CDO and itself that may be direct or indirect (e.g., linked to itself through another CDO).

"Relationship definition" or "relationship description" in the context of this document and computer software applications refers to information, or an abstraction of information, regarding a "relationship", "data relationship" "relationship type" or a "link" that can be stored, accessed, transferred, communicated, displayed or edited. "Complex data object graph" or "CDOG" is a term employed herein as an abstraction to logically represent a set of complex data objects and a set of their corresponding relationships.

"Java data object graph" or "JDOG" is a term employed herein as an abstraction to logically represent a set of complex data objects and a set of their corresponding relationships that are part of a Java programming application.

"Application model" or simply "model" are essentially interchangeable terms employed herein as abstractions to logically convey a collective description or other representation for a set of complex data objects and a corresponding description or other representation of their relationships. In one respect, these terms are used logically herein provide a general way of efficiently communicating when referring to set of metadata (i.e., data about data) that describes possible data entities (e.g., objects, database tables, maps, etc.) data relationship types, and data constraints involved in a computer system or application, or in a specific instance of an application. It is important to understand the context in which the terms "application model" and "model" are used in this document. Ordinarily computer engineers refer to the "model as an abstraction rather than a specific possibility or instance of the model as applied. However, in this document for the ease of communication abstractions of the model, possible implementations of the model and instances of the model are all referred to generally as "application model" or "model". From the context of its use the term will be clear.

"Multi-tier network structure", "managed network connection structure" in the context of the present document refers to a bank of primary connection servers that are logically connected in a branched or ring structure, or both, and connections requests are received, managed, and connected or not connected utilizing complex data objects that represent network connections within a group, sub-group (or branch), or otherwise logically associated group of services.

"Managed Transaction and Communication Monitor" in the-context of the-present document refers to an action implementing at least one object to interact with a set of related objects for the purposes of managing the connections of peer-to-peer connections within an ascertainable structured network, including access or denial of access to the network due to compliance or non compliance with network communication rules, by utilizing methods such as creation, access, insertion, modification and deletion of an object, or of one of its relationships within the complex data object schema that represents a private network or virtual private network.

"Navigation", "navigating" or "navigated" in the context of the present document refers to an action implementing at least one object to interact with a set of related objects for a certain purpose, such as creation, access, insertion, modification and deletion of an object, or of one of its relationships.

"Navigation model" as used herein is a special type of application model that is applied specifically to a description (or other representation) of how objects can relate to each other and what might be the expected behavior when a CDOG is navigated for a certain purpose.

"Object schema" is a term employed herein as an abstraction referring to the set of data object classes that describe the possible data objects that can be created, modified or maintained in an application, or describing an instance of a set of data object classes in an application.

SUMMARY OF THE INVENTION

An object of the present invention is to provide a system for creating, maintaining, accessing, navigating and persisting relationships between servers, between servers and clients, and between clients, as complex data objects within a complex data object graph (CDOG) model. In a preferred embodiment, an object of the present invention is to provide such a system that can display and manage the relationships within a private network or within a virtual private network as CDOG model that may be represented as a graph or table of complex data objects. A further object is to provide such a system that is located on, or is part of, a local or distributed computer system.

A further object of the invention is to provide such a system with software implemented methods for managing such a private network or virtual private network that is generally not limited in size with respect to servers and clients for peer to peer communications wherein the identity of each client is known to the network, the structure of the network includes the communicating parties within its dynamic structure CDOG representation as parties connect and disconnect, the network has an identifiable and changing structure, and the structure is not necessarily known by the individual peers who communicate with each other and swap files or transmit other communications within the context of such a private network or private virtual network.

A preferred object of the invention is to provide such a system for managing communications between the parties after their network introduction or connection, including a system and software implemented methods for detecting the need to intervene in peer to peer communication of the parties and a method for intervening and optionally disconnecting communications between parties due to an unacceptable communication behavior from one or more of the introduced parties. In a more preferred object, the system includes software implemented methods for sampling communications and reporting communications to network administrators or administrative software such that parties violating rules of network communication can be disconnected from each other by the network.

In a preferred object, the network includes software implemented methods and procedures for collecting money or collecting credits for money, coupons, or other valuables for services related to network communications.

An object of the present invention is to provide a method for creating, maintaining, accessing, navigating and persisting network relationships as complex data objects stores as a complex data object graph. In a preferred embodiment, an object of the present invention is to provide such a method having the step of displaying or printing a representation of the relationships within a private network and a virtual private network as a CDOG model as a graph or table of complex data objects. In a further object, such a method involves a local or distributed computer system.

An object of the present invention is to provide a computer software program having at least one user interface and having at least one feature for at least one action selected from the group consisting of creating, maintaining, accessing, navigating and persisting relationships within a private network or within a virtual private network as complex data objects via a complex data object graft model. In a preferred aspect, an object of the present invention is to provide software program with a module or associated software program having a feature for displaying or printing a representation of the relationships as a CDOG model as a graph or table of complex data objects, hi a preferred object of the invention, such a software program has an editing interface for editing a CDOG model, or an editable input or source, such as a file, that can be modified to implement changes to a CDOG model. A further object is to provide such a software program adapted for a local or distributed computer system.

An object of the present invention is to provide an application programming interface ("API"), as a preferred embodiment of the invention, wherein the API can be accessed to create, maintain, access, navigate and persist network relationships as complex data objects while representing such relationships as a CDOG model, or as an object schema. In one aspect the API can be accessed by a computer software program, or by a computer software program module that is part of a software package including the API, to provide at least one action selected from the group consisting of creating, maintaining, accessing, navigating and persisting network relationships as complex data objects within a complex data object model. In a preferred aspect, an object of the present invention is to provide such an API as part of a software package having a component or method for displaying or printing a representation of such relationships as a CDOG model illustrated or represented as a graph or as a table(s) of complex data objects. In another preferred object, such a software tool package including the API would be provided with an editing interface for editing the network relationships as a CDOG model, or has an editable input or source, such as a filer that can be modified to implement changes to the complex data object model. It is a particularly preferred object to provide such an interface as a point and click graphical user interface that may be displayed and/or edited. A further object is to provide such an API for operation on a local or distributed computer system.

A preferred object of the present invention is to provide a software tool comprising the API according ( as described above), adapted for a local network or a distributed network environment, wherein said software tool provides persistence in an object oriented language environment transparently by implementing a configurable network component capable of acquiring and persisting network relationships through network APIs. A further object of the present invention is to a software tool capable of reading a source programming object logic model or a database file in a format selected from the group consisting of a UML data file, a XMI data file, and a XML file and converting the information into a target member selected from the group consisting of a database definition XML file, a database mapping definition file, and a CDOG definition file. In a preferred object, the- software- can automatically generate- a persistence layer that corresponds to the object model information of the source file.

DISCRIPTION THE INVENTION

The present invention provides a system for creating, maintaining, accessing, navigating and persisting network relationships as complex data objects in the form of a complex data object graph modeL In one embodiment, the system comprises a computer system having a user interface, a working memory storage area and at least one device for permanently storing information, and said system being loaded with at least one portion of a computer software program, wherein said software program comprises at least one user access interface and a set of programming routines designed for creating, maintaining, accessing, navigating and persisting network relationships statically or dynamically as complex data objects corresponding to a complex data object graphs. In a preferred embodiment, the present invention provides such a system that can display the CDOG model as a graph or set of tables of complex data objects and provides a creating or editing interface for the CDOG model. Most preferred is such, a system providing a point and click graphical user interface.

In one embodiment the present invention provides a process for connecting and centrally managing a plurality of multi-tier server computer systems as a single virtual structured network of unlimited size having a network ring structure, atcee structure, or a combination of a network ring and network tree structure, and managing the virtual structured network of tiered server systems from a central location that has access to a repository of information with details regarding each server system included within the network, wherein said process comprises the steps of: (a) creating one to many and many to many connections between a central server or central server network and two or more second tier server systems that may serve as a node whereby they are in turn optionally connected in a similar manner to form a tree structure, a ring network or a combination thereof, wherein nodes on theiring or tree structure can be connected to one or more sub-tier server systems,

(b) loading from or persisting to at least one storage facility system the information and Connection parameters with respect to th& server systems managed in the virtual structured network that are necessary to manage the virtual structure network,

(c) loading into the memory of at least one computer system in a network one or more software modules capable of:

(i) monitoring any additions, deletions or changes to server computer systems within the virtual structured network,

(ii) monitoring any additions, deletions, or changes to one or more clients connected to a server within the virtual structured network, and

(iii) persisting such information to at least one repository of information utilized to manage the virtual structured network,

(d) connecting to one or more a client systems directly to a central server system portal through an intranet or internet network connection, accessing information in a repository regarding said one or more client systems, and delegating the connection to one or more tiered servers within the virtual single network system based upon accessed information regarding said one or more client systems, including the steps of:

(i) accessing information in a repository regarding said one or more client systems that have connected to a central server system portal through an intranet or internet connection; (ii) transmitting a request to transfer a connection with a client system to one or more tiered servers within said plurality of tiered server systems;

(iii) transmitting one or more addresses, of said available server systems connected within said virtual structured network to said client system attached to the portal, or transmitting the address of the client system to one or more server systems; and

(iv) establishing connections between said one or more tiered server systems and the client system within said virtual structured network,

(v) monitoring or delegating the monitoring of maintenance of connections between the client system and said one or more tiered server systems within said structured network.

In a preferred embodiment, the above described process additionally comprises a step (e) of maintaining a pre-determined number of connections between each client system that is connected to one or more servers in the plurality of tiered server systems and monitoring the connections with the software of (c) to receive information from said tiered server systems and the connected client system adequate to maintain the status of connections, to establish new connections, or to both maintain the status of connections and establish new of the client system with the tiered server system when a disconnection from at least one server occurs.

In a preferred embodiment the invention provides such a system with software implemented methods for managing such a private network or virtual private network that is generally not limited in size with respect to servers and clients for peer to peer communications wherein the identity of each client is known to the network, the structure of the network includes the communicating parties within its dynamic structure CDOG representation as parties connect and disconnect, the network has an identifiable and changing structure, and the structure is not necessarily known by the individual peers who communicate with each other and swap files or transmit other communications within the context of such a private network or private virtual network. In another preferred embodiment, the invention provides such a system with software implemented methods for managing communications between the parties after their network introduction or connection, including systems and software implemented methods for detecting the need to intervene in peer to peer communication of the parties and a method for intervening and optionally disconnecting communications between parties due to an unacceptable communication behavior from one or more of the introduced parties. In a more preferred embodiment, the system includes software implemented methods for sampling communications and reporting communications to network administrators or administrative software such that parties violating rules of network communication can be disconnected from each other by the network.

In another preferred embodiment, the present invention provides such a network that includes software implemented methods and procedures for collecting money or for collecting credits relating to money, coupons, or other valuables for goods and services related to or provided by network communications.

In another preferred embodiment, the process described above is a process wherein each node on the virtual network that is available for connections with client systems has a pre-determined number of possible connections to existing or new clients systems as a capacity that is stored as information maintained and updated in an information repository that can be accessed by software, which is used to monitor or delegate the monitoring of maintenance of connections between the virtual network and client systems.

Ih another preferred embodiment, the above process ϊs a process wherein said step (c) includes the steps of:

(f) transmitting a disconnection notification from a server system to said monitoring software of (c) that a server system has partly or fuliy disconnected from a client system within said plurality thereof, wherein said partly disconnected client system has been connected for receiving information from said server system;

(g) said software of (f) responding to said notification of partial disconnection by at least one of the following actions (i) transmitting instructions to other servers on the network to creating additional connections of the client system to the virtual network,

(ϋ) transmitting addresses and connection information to the partially disconnected client system to permit it to connect with other servers within the virtual network, and

(iii) transmitting instructions to the servers having current connections with said client system to disconnect said client system from the virtual network

In one embodiment, a process executing within the virtual network as described above includes a process step for establishing a parent-child relationship between the virtual network and sub-branches of the of virtual network server tree system, between the virtual network and a subordinate circular network, or a combination thereof, and providing a virtual private network for a pre-determined plurality of server systems, client systems or a combination thereof within the virtual network.

In a preferred embodiment, a process executing within said server system further providing logic and means for establishing a private network of client systems within a plurality thereof such that server systems and client systems may transmit information, receive information, or a combination thereof, said process comprising the steps of:

(a) receiving a request for connection to a virtual private network from a client system issuing said request;

(b) determining if said client system has permission to connect to said virtual private network and executing one or more of the following actions

(i) refusing connection to the virtual private network,

(iϊ) requiring actions from said requesting client system in order to receive permission to connect to said virtual private network, and

(iii) verifying that said client system has permission for connecting to said virtual private network; (c) after verifying that client system has permission for connecting, determining if a port of said server system within said virtual private network is available for connection with said requesting client system;

(d) if a port of said server system within said virtual private network is available for connection, as determined in step (c), executing actions for connecting said client system issuing said request to said virtual private network;

(e) if a port of said server system is not available for connection within said private network, as determined in step (b), sending to said client system issuing said request a first pre-determined number of addresses of available client systems within said plurality thereof connected within said private network, or suggesting postponing connection to the virtual private network; and

(f) adding information to one or more repositories within the virtual network regarding the said client system issuing said request and their level of permission to join or participate in the virtual private network.

The present may be embodied in specific forms other than those particularly described above or illustrated by the appended, drawings. Upon viewing the present application preferred embodiments and other descriptions herein of the present invention, variations and other implementations that do not depart from the spirit and scope of the present invention will be apparent to one of routine skill in this field. Such variations and other implementations are considered part of the present invention and within the scope of the appended claims. Accordingly, reference should be made to the appended claims, rather than to the forgoing specification and drawings, as indicating the scope of the present invention.

Claims

1. A process for connecting and centrally managing a plurality of multi-tier server computer systems as a single virtual structured network of unlimited size having a network ring structure, a tree structure, or a combination of a network ring and network tree structure, and managing the virtual structured network of tiered server systems from a central location that has access to a repository of information with details regarding each server system included within the network, wherein said process comprises the steps of;
(a) creating one to many and many to many connections between a central server or central server network and two or more second tier server systems that may serve as anode whereby they are in turn optionally connected in a similar manner to form a tree structure, a ring network or a combination thereof, wherein nodes on the ring or tree structure can be connected to one or more sub-tier server systems,
(b) loading from or persisting to at least one storage facility system the information and connection parameters with respect to the server systems managed in the virtual structured network that are necessary to manage the virtual structure network,
(c) loading into the memory of at least one computer system in a network one or more software modules capable of;
(i) monitoring any additions, deletions or changes to server computer systems within the virtual structured network,
(ii) monitoring any additions, deletions, or changes to one or more clients connected to a server within the virtual structured network, and
(iii) persisting such information to at least one repository of information utilized to manage the virtual structured network,
(d) connecting to one or more a client systems directly to a central server system portal through an intranet or internet network connection, accessing information in a repository regarding said one or more client systems, and delegating the connection to one or more tiered servers within the virtual single network system based upon accessed information regarding said one or more client systems, including the steps of:
(i) accessing information in a repository regarding said one or more client systems that have connected to a central server system portal through an intranet or internet connection;
(ii) transmitting a request to transfer a connection with a client system to one or more tiered servers within said plurality of tiered server systems;
(iii) transmitting one or more addresses, of said available server systems connected within said virtual structured network to said client system attached to the portal, or transmitting the address of the client system to one or more server systems; and
(iv) establishing connections between said one or more tiered server systems and the client system within said virtual structured network,
(v) monitoring or delegating the monitoring of maintenance of connections between the client system and said one or more tiered server systems within said structured network.
2. The process of claim 1, additionally comprising a step (e) of mamtaining a predetermined number of connections between each client system that is connected to one or more servers in the plurality of tiered server systems and monitoring the connections with the software of (c) to receive information from said tiered server systems and the connected client system adequate to maintain the status of connections, to establish new connections, or to both maintain the status of connections and establish new connections of the client system with the tiered server system when a disconnection from at least one server occurs.
3. The process of claim 1 , wherein the system includes software implemented methods for managing such a private network or virtual private network that is generally not limited in size with respect to servers and clients for peer to peer communications wherein the identity of each client is known to the network, the structure of the network includes the communicating parties within its dynamic structure CDOG representation as parties connect and disconnect, the network has an identifiable and changing structure, and the structure is not necessarily known by the individual peers who communicate with each other and swap files or transmit other communications within the context of such a private network or private virtual network.
4. The process of claim 3, wherein the system includes software implemented methods for managing communications between the parties after their network introduction or connection, including systems and software implemented methods for detecting the need to intervene in peer to peer communication of the parties and a method for intervening and optionally disconnecting communications between parties due to an unacceptable communication behavior from one or more of the introduced parties.
5. The process of claim 4, wherein the system includes software implemented methods for sampling Communications and reporting communications to network administrators or to administrative software such that parties violating rules of network communication can be notified or the violation or optionally be disconnected from each other by the network.
6. The process of claim 3, wherein the system includes software implemented methods and procedures for collecting money or for collecting credits relating to money, coupons, or other valuables for goods and services related to or provided by network communications.
7. The process of claim 1, wherein each node on the virtual network that is available for connections with client systems has a pre-determined number of possible connections to existing or new clients systems as a capacity that is stored as information maintained and updated in an information repository that can be accessed by software, which is used to monitor or delegate the monitoring of maintenance of connections between the virtual network and client systems.
8. The process of claim 2, wherein said step (c) includes the steps of:
(f) transmitting a disconnection notification from a server system to said monitoring software of (c) that a server system has partly or fully disconnected from a client system within said plurality thereof, wherein said partly disconnected client system has been connected for receiving information from said server system;
(g) said software of (f) responding to said notification of partial disconnection by at least one of the following actions
(i) transmitting instructions to other servers on the network to creating additional connections of the client system to the virtual network,
(ii) transmitting addresses and connection information to the partially disconnected client system to permit it to connect with other servers within the virtual network, and
(iii) transmitting instructions to the servers having current connections with said client system to disconnect said client system from the virtual network
9. A process executing within the virtual network of claim 1 for establishing a parent- child relationship between the virtual network and sub-branches of the of virtual network server tree system, between the virtual network and a subordinate circular network, or a combination thereof, and providing a virtual private network for a pre-determined plurality of server systems, client systems or a combination thereof within the virtual network.
10. The process of claim 9, executing within said server system further providing logic and means for establishing a private network of client systems within a plurality thereof such that server systems and client systems may transmit information, receive information, or a combination thereof, said process comprising the steps of: (a) receiving a request for connection to a virtual private network from a client system issuing said request;
(b) determining if said client system has permission to connect to said virtual private network and executing one or more of the following actions
(i) refusing connection to the virtual private network,
(ii) requiring actions from said requesting client system in order to receive permission to connect to said virtual private network, and
(iii) verifying that said client system has permission for connecting to said virtual private network;
(c) after verifying that client system has permission for connecting, deterrnining if a port of said server system within said virtual private network is available for connection with said requesting client system;
(d) if a port of said server system within said virtual private network is available for connection, as determined in step (c), executing actions for connecting said client system issuing said request to said virtual private network;
(e) if a port of said server system is not available for connection within said private network, as determined in step (b), sending to said client system issuing said request a first pre-determined number of addresses of available client systems within said plurality thereof connected within said private network, or suggesting postponing connection to the virtual private network; and
(f) adding information to one or more repositories within the virtual network regarding the said client system issuing said request and their level of permission to join or participate in the virtual private network.
PCT/US2006/015678 2005-04-26 2006-04-26 Creating or maintaining relationships within a private network or virtual private network of servers and clients WO2006116427A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US67491105P true 2005-04-26 2005-04-26
US60/674,911 2005-04-26

Publications (2)

Publication Number Publication Date
WO2006116427A2 true WO2006116427A2 (en) 2006-11-02
WO2006116427A3 WO2006116427A3 (en) 2009-04-16

Family

ID=37215432

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/015678 WO2006116427A2 (en) 2005-04-26 2006-04-26 Creating or maintaining relationships within a private network or virtual private network of servers and clients

Country Status (1)

Country Link
WO (1) WO2006116427A2 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6035405A (en) * 1997-12-22 2000-03-07 Nortel Networks Corporation Secure virtual LANs
US6581088B1 (en) * 1998-11-05 2003-06-17 Beas Systems, Inc. Smart stub or enterprise javaTM bean in a distributed processing system
US6615253B1 (en) * 1999-08-31 2003-09-02 Accenture Llp Efficient server side data retrieval for execution of client side applications
US20030169766A1 (en) * 2002-03-05 2003-09-11 Jun Ogawa Communications apparatus and network system
US20040078334A1 (en) * 2000-11-08 2004-04-22 Malcolm Peter Bryan Information management system
US20050055371A1 (en) * 2003-06-05 2005-03-10 Singam Sunder Method and system to manage a network connection application

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6035405A (en) * 1997-12-22 2000-03-07 Nortel Networks Corporation Secure virtual LANs
US6581088B1 (en) * 1998-11-05 2003-06-17 Beas Systems, Inc. Smart stub or enterprise javaTM bean in a distributed processing system
US20030204647A1 (en) * 1998-11-05 2003-10-30 Bea Systems, Inc. Smart stub or enterprise JAVA™ bean in a distributed processing system
US6615253B1 (en) * 1999-08-31 2003-09-02 Accenture Llp Efficient server side data retrieval for execution of client side applications
US20040078334A1 (en) * 2000-11-08 2004-04-22 Malcolm Peter Bryan Information management system
US20030169766A1 (en) * 2002-03-05 2003-09-11 Jun Ogawa Communications apparatus and network system
US20050055371A1 (en) * 2003-06-05 2005-03-10 Singam Sunder Method and system to manage a network connection application

Also Published As

Publication number Publication date
WO2006116427A3 (en) 2009-04-16

Similar Documents

Publication Publication Date Title
KR101041319B1 (en) Systems and methods for providing conflict handling for peer-to-peer synchronization of units of information manageable by a hardware/software interface system
US8166101B2 (en) Systems and methods for the implementation of a synchronization schemas for units of information manageable by a hardware/software interface system
US5724575A (en) Method and system for object-based relational distributed databases
US7310653B2 (en) Method, system, and product for maintaining software objects during database upgrade
US8825502B2 (en) System and method for providing patient record synchronization in a healthcare setting
EP2260413B1 (en) Web content management
US7483923B2 (en) Systems and methods for providing relational and hierarchical synchronization services for units of information manageable by a hardware/software interface system
US5857197A (en) System and method for accessing data stores as objects
JP4240930B2 (en) Provisional Okuso centralized method and apparatus for multiple network storage
US9317706B2 (en) Multi-tenant system
US7634455B1 (en) Method and apparatus for providing controlled access to software objects and associated documents
US8046424B2 (en) Systems and methods for the utilization of metadata for synchronization optimization
US6484177B1 (en) Data management interoperability methods for heterogeneous directory structures
US6510429B1 (en) Message broker apparatus, method and computer program product
US6895586B1 (en) Enterprise management system and method which includes a common enterprise-wide namespace and prototype-based hierarchical inheritance
US6222533B1 (en) System and process having a universal adapter framework and providing a global user interface and global messaging bus
US7827138B2 (en) Method and system for synchronizing a server and an on-demand database service
CN1703048B (en) Web service application protocol and SOAP processing model
US8458142B2 (en) Method and system for deploying an asset over a multi-tiered network
CN101652787B (en) Method and system for processing customizable multi-tenant data
JP4429908B2 (en) The Central Master Data Management
US7389335B2 (en) Workflow management based on an integrated view of resource identity
US7685577B2 (en) System and method for translating an asset for distribution over multi-tiered networks
US8812444B2 (en) Managing disconnected investigations
RU2425417C2 (en) Platform for services of transmitting data between disparate objective application structures

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase in:

Ref country code: DE

NENP Non-entry into the national phase in:

Ref country code: RU

122 Ep: pct application non-entry in european phase

Ref document number: 06758581

Country of ref document: EP

Kind code of ref document: A2