WO2007085592A1 - A type of method and system for providing network services using p2p entities - Google Patents
A type of method and system for providing network services using p2p entities Download PDFInfo
- Publication number
- WO2007085592A1 WO2007085592A1 PCT/EP2007/050645 EP2007050645W WO2007085592A1 WO 2007085592 A1 WO2007085592 A1 WO 2007085592A1 EP 2007050645 W EP2007050645 W EP 2007050645W WO 2007085592 A1 WO2007085592 A1 WO 2007085592A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- service
- network
- service provider
- peer
- requester
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1034—Reaction to server failures by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1076—Resource dissemination mechanisms or network resource keeping policies for optimal resource availability in the overlay network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
Definitions
- This invention involves a type of method and system for providing network services, specifically a method and system for providing network services using P2P entities.
- Web services use service orientated architecture (SOA), as shown in Figure 1.
- SOA service orientated architecture
- the SOA structure has three roles:
- Service provider Provides external services, also publishes service information by registering with a service broker.
- Service broker Provides service publication and location functions .
- Service requester Checks the required service through the service broker, also binds services through the service provider .
- Bind operation Allows the service requester to make proper use of the service provider.
- any deterioration in the communications environment can cause problems in the connection with the service provider which will probably cause the connection to be broken, thereby rendering the service requester unable to continue providing services .
- the connection with the service provider may be restored and the service provider may continue once again to provide services for the service requester.
- Such changes in service provision status caused by network instability make it difficult to provide a stable and reliable network service environment for the service requester.
- the current status information for the service requester may be lost.
- the service requester recovers network services and begins to request services, the service provider must repeat its service requests, resulting in inconsistent services from the perspective of the service requester .
- server cluster technology may be used in network services to deal with the problem of single points of failure.
- a request originally directed to a single service provider can be allocated to different servers within the cluster depending on the performance, load and status of each server within the cluster, and if a failure occurs in any single server, other servers within the cluster will continue to provide the service.
- Cluster technology usually employs middleware such as gateways to control servers within the cluster.
- Mirroring involves manipulating a website or a series of files on a server so that the websites or files are copied to another server in order that they may be obtained from more than one address. Mirroring can help to disperse network traffic and reduce service load, ensuring that websites or files are readily accessible and enabling sites or file downloads to reach the service requester more quickly.
- IP addresses of mirror sites are fixed, the individual mirrors are still vulnerable to attack, and the problem of single point failures is therefore still likely to occur.
- UDDI Universal Description, Discovery and Integration
- XML Extensible Mark-up Language
- P2P Peer-to-Peer
- Similar in functionality to UDDI, P2P provides service publishing and location functions.
- this type of solution can only help to resolve the problem of single point failures from the perspective of the service broker, and the issues described above still exist for the service provider and the service requester. Consequently, this type of network service is by no means consistent from a usage perspective.
- the main object of this invention is to propose a method of providing network services using P2P network entities which can solve the instability problems of existing network services and avoid the occurrence of single point failures in network services, while ensuring consistency of service for the end user.
- a method of providing network services using peer-to-peer (P2P) entities in which the network includes at least one service provider, at least one service broker and at least one service requester, and each P2P entity consists of the individual service provider, service broker or service requester mentioned above or a combination thereof; the service broker distributes and stores the search engine or registration information for the service provider within the P2P entity, and the service provider distributes its service resources on additional P2P network entities; the service requester distributes and stores its serviced status information on additional P2P network entities .
- P2P peer-to-peer
- the service provider distributes the service resources to additional P2P network entities through a mobile agent. Before these resources are distributed, the additional P2P network entities mentioned above first request that the service provider authenticate the additional P2P network entities, and once authentication is complete, the resources are distributed.
- Said mobile agent operates within a mobile agent environment.
- the mobile agent environment is located on a P2P network entity substrate, and this P2P network substrate is used to implement routing selection and service resource location within the network.
- the P2P network entity which hosts the service broker checks the address of the service provider through a type of dispatch algorithm, which may be a distributed hash algorithm or an overflow algorithm.
- a table is stored on the P2P network entity hosting the service requester, and this table records information on the service providers providing services for this service requester. This information includes the service provider name, the service provider address, and the priority of the service provider providing services to the service requester.
- the service requester records current information on service provider services at regular intervals. If changes occur to at least one service provider of the highest priority on the service requester table, the service requester shall send the current recorded information on the service provider to the service provider with the highest priority.
- the P2P network entity determines additional P2P network entities in the distributed and stored status information using a type of dispatch algorithm.
- This dispatch algorithm may be a distributed hash algorithm or an overflow algorithm.
- the service requester distributes its status information at regular intervals to the additional P2P network entities determined by said dispatch algorithm.
- the technical solution for this invention also includes a type of system for providing network services using peer-to-peer (P2P) entities, in which the network includes at least one service provider, at least one service broker and at least one service requester, and each P2P entity consists of the individual service provider, service broker or service requester mentioned above or a combination thereof; and each P2P network entity includes hardware and operating systems; each P2P network entity also includes at least one P2P network entity substrate.
- P2P peer-to-peer
- the P2P network entity acting as the service provider also includes at least one mobile agent environment and at least one mobile agent.
- the service provider assigns service resources to the additional P2P network entities through the mobile agent, and the service requester distributes and stores its status information on the additional P2P network entities.
- the P2P network entity determines the additional P2P network entities in the distributed and stored status information using a type of dispatch algorithm.
- the method according to this invention uses P2P network technology to provide network services.
- the service provider distributes its resources to additional P2P network entities through a mobile agent, if the service provider fails and is unable to provide services, other P2P network entities are able to continue to provide services, thereby ensuring the consistency and continuity of service provision from the provider end.
- the method according to this invention enables the service requester to distribute its status information to other P2P network entities. If the service requester fails, existing service requests can quickly be recovered using the status information distributed on additional P2P network entities, thereby ensuring the consistency and continuity of service requests from the requester end.
- the method according to this invention ensures the consistency and continuity of services within P2P network entities from the perspective of the service provider, the service broker and the service requester, thereby solving the problem of instability in network services. As these three elements are all distributed P2P network entities, the possibility of single point failures in network services can also be avoided.
- Figure 1 is a system structure schematic for existing SOA technology.
- Figure 2 is a system structure diagram for the network services using P2P network entities in this invention.
- Figure 3 is a schematic of the distribution of service provider resources to additional P2P network entities using the mobile agents in this invention.
- Figure 4 is a schematic of an exemplary embodiment of this invention.
- FIG. 2 is a system structure diagram for the network services using P2P network entities in this invention.
- Each box in Figure 2 shows a P2P network entity, which may represent any one of the three roles, "service provider P", “service broker B” or “service requester R”, or any combination of the three.
- the three operations - “publish”, “find” and “bind” are divided between these three roles, such that: service provider P registers its functions and access address with service broker B (e.g. information such as IP address and access port) , as shown by the dashed line in the diagram; service requester R finds specific types of services at service broker B, as shown by the dotted line in the diagram; service requester R makes a request to service provider P for the use of its services, as shown by the solid line in the diagram.
- service broker B e.g. information such as IP address and access port
- the service provider' s search engine or registered information is distributed and stored in the service broker.
- This search engine or registered information may be entirely stored in a single service broker, or may be distributed and stored on two or more service brokers. Where two or more service brokers are used, complete service provider search engines or registered information are obtained on the basis of a specific algorithm.
- Figure 3 is a schematic of the distribution of service provider resources to additional P2P network entities using the mobile agents in this invention.
- Figure 3 contains four P2P network entities - Peer Al, Peer A2, Peer A3 and Peer A4.
- Peer Al can provide service S, and is known as service provider P.
- Peer Al itself has a specific structure, in which the lowest level is hardware, above which is the operating system, and on top of which is a P2P substrate.
- This P2P substrate functions by discovering and selecting routes using the application layer in order to carry out resource location, and implementing management and framework maintenance for the P2P network.
- Above the P2P substrate is the mobile agent environment (MAE) , within which mobile agents (MA) may be produced, run and managed. Mobile agents run within the mobile agent environment and provide service S.
- MAE mobile agent environment
- the mobile agent is generally an application which is initiated by a server within the network, and which may move freely between network servers and perform complete preset tasks.
- mobile agent MA runs within service provider Peer Al's MAE.
- the mobile agent MA is hosted by Peer Al, performs certain operations and provides a certain service S, and is known as host mobile agent (H-MA), which is able to perform cloning.
- H-MA host mobile agent
- the mobile agent MA or the cloned mobile agent MA is able to implement movement to additional P2P network entities within the network, becoming moving mobile agent M-MA.
- M-MA carries service S, and when M-MA reaches an additional P2P network entity it is hosted in the entity, where this then becomes H-MA.
- Figure 4 is a schematic of an exemplary embodiment of this invention.
- Figure 4 contains four P2P network entities which make up service provider P, which are Peer A, Peer B, Peer C and Peer D, three P2P entities which make up service requester R, which are Peer E, Peer F and Peer G, and one service broker Peer M (not shown in the diagram) .
- P2P network entities which make up service provider P
- Peer A Peer A
- Peer B and Peer D wish to share Peer A' s services
- Peer B and Peer D must first issue respective requests to Peer A.
- the request provides certain information, such as Peer B and Peer D' s storage volumes and identification information, and requests that service provider Peer A authenticates the two P2P network entities Peer B and Peer C.
- Peer B and Peer D are assumed to have been successfully authenticated by Peer A.
- Peer C must also be authenticated by Peer B if Peer C wishes to share Peer B' s
- a game service is running on service provider Peer A.
- Peer B and Peer D have both been successfully authenticated by Peer A and send respective service sharing requests to Peer A. Once Peer A receives the request, it sends separate response information to Peer B and Peer D.
- the host mobile agent H-MA located on Peer A moves the cloned H-MA to Peer B and Peer D to become moving mobile agent M-MA.
- the M-MA carries the game service data or code, and once this reaches the authenticated Peer B or Peer D, becomes hosted on Peer B or Peer D, where it continues to perform its own operations and provide said game service, becoming the host mobile agent H-MA in Peer B or Peer D.
- Peer B and Peer D also become service providers for the game service at this moment.
- the game services on Peer B and Peer D are identical to that provided by Peer A; however, the data within the game services provided by Peer B and Peer D are not necessarily the same as those of the game service provided by Peer A.
- Peer B and Peer D above carry out registration of the information that provides the gaming services with the service broker M, including the registration of the name of the game services provided and the addresses of the two peers .
- Peer M is located on a P2P network entity, and so Peer M could be situated on the same P2P network entity as the service requester Peer E, or could share a single P2P network entity with the service provider Peer D (or Peer B) .
- Peer E If service requester Peer E wishes to request services from the game service provider, Peer E must first find the P2P network entity hosting the service broker Peer M, and this P2P network entity will then execute the hash algorithm. As there is a corresponding relationship between the game service's hash number and the P2P network entity on which the game service is stored, the result of the hash calculation can be used to check the hash address and IP address of the service provider providing the game service, and thus locate the service provider, e.g. Peer A, Peer B or Peer D.
- the service provider e.g. Peer A, Peer B or Peer D.
- Service broker Peer M reports the results of the checks to service requester Peer E, and a table is stored on Peer E.
- This table lists information for service providers Peer A, Peer B and Peer D, as well as the priority rating of the three service providers for providing services to Peer E.
- Peer E can then issue a request to the one or more service providers with the highest priority rating. For example, if Peer A has the highest priority and only one service provider can provide services to Peer E at any given moment, then Peer E will issue a service request to service provider Peer A.
- Peer E will service requests simultaneously to Peer A and Peer B.
- service requester Peer E is using a game service provided by service provider Peer A, and two other service requesters Peer F and Peer G establish a trust relationship with service requester Peer E, after which Peer E successfully authenticates Peer F and Peer G.
- the P2P network entity system uses distributed hash algorithms through the P2P substrate to determine that the nearest P2P network entities to Peer E are Peer F and Peer G. Consequently, Peer E distributes and stores its status information (such as settings and parameters for the environment landscape in the game service, game service device parameters, score parameters and other interactive information for gamers) on Peer F and Peer G at regular intervals.
- Distribution and storage here means that the status information to be stored is encrypted and divided into n parts; any m parts of these n parts may be used to recover the status information (where n is greater than m) ; the n parts are finally stored on entities p (where n is greater than or equal to p) .
- Peer E's status information may be distributed and stored on a status information file such as a cookie on Peer F and Peer G.
- Peer E When Peer E discovers that Peer A has not responded within the specified period of time, Peer E revises the table stored in the game service provider above it and reduces the priority of Peer A or deletes Peer A from the service table and switches to another service provider, e.g. Peer E switches to continuing to receive services from one or more service providers with the highest priority in the revised table.
- Peer E reports the cut-off point information recorded to the replacement service providers, and the new service providers continue to provide services for Peer E from the cut-off point.
- service requester Peer E fails, it will be unable to use the services provided by the service provider.
- the status information file such as a cookie
- Peer E when Peer E recovers, it can find the cut-off point from the status information file stored on Peer F and Peer G prior to the failure, and is able to continue from the cut-off point to receive the game service provided by the service provider.
- the method according to this invention ensures the consistency of services in P2P network entities from the perspectives of the service provider, the service broker and the service requester, and solves the problem of network service instability.
- distributed P2P network entities are used for all three areas mentioned above, the possibility of single point failures within network services is also avoided.
Abstract
This invention proposes a method of providing effective network services using peer-to-peer (P2P) entities, in which the network includes at least one service provider, at least one service broker and at least one service requester, and each P2P entity consists of the individual service provider, service broker or service requester mentioned above or a combination thereof; the service broker distributes and stores the search engine or registration information for the service provider within the P2P entity, and the service provider distributes its service resources on additional P2P network entities; the service requester distributes and stores its service status information on additional P2P network entities. The method according to this invention ensures consistency of service for P2P network entities between the three service provider, service broker and service requester components, thus solving the problem of unstable network services. As these three components are all distributed P2P network entities, the possibility of single points of failure occurring within network services is avoided.
Description
A type of method and system for providing network services using P2P entities
Technology
This invention involves a type of method and system for providing network services, specifically a method and system for providing network services using P2P entities.
Technical background
One of the main philosophies behind web services is the future application of services combining different web services. As long as two equivalent services use uniform standards and neutral methods to announce themselves on the network, an application can choose between the two competing services on the basis of price or performance standards . Some services also allow replication between machines, and therefore the performance of applications that may be run on specific computers (clusters) can be improved by replicating useful services to a local database. Web services use service orientated architecture (SOA), as shown in Figure 1.
As shown in Figure 1, the SOA structure has three roles:
• Service provider: Provides external services, also publishes service information by registering with a service broker.
• Service broker: Provides service publication and location functions .
• Service requester: Checks the required service through the service broker, also binds services through the service provider .
Three types of operations are used between these roles:
• Publish operation: Allows the service provider to register its functions with the service broker and to access a port.
• Find operation: Allows the service requester to find specific types of services through the service broker.
• Bind operation: Allows the service requester to make proper use of the service provider.
The following problems may occur when using a SOA structure for network services: First, in ad-hoc networks such as mobile IP networks, as services are provided by a single service provider, any deterioration in the communications environment can cause problems in the connection with the service provider which will probably cause the connection to be broken, thereby rendering the service requester unable to continue providing services . Once the communications environment improves, the connection with the service provider may be restored and the service provider may continue once again to provide services for the service requester. Such changes in service provision status caused by network instability make it difficult to provide a stable and reliable network service environment for the service requester.
Second, fixed IP addresses are used in all three network services roles described above. Hackers and others wishing to attack the
system structure can easily identify the system server on the basis of these fixed IP addresses, thus making service providers particularly vulnerable to attack. This means that attacks on the service provider can result in services being cut off, causing a single point of failure to occur.
In addition to this, if single points of failure occur in the network service structure described above, the current status information for the service requester may be lost. When the service requester recovers network services and begins to request services, the service provider must repeat its service requests, resulting in inconsistent services from the perspective of the service requester .
A number of solutions to improve the web service problems described above have already been proposed. For example, server cluster technology may be used in network services to deal with the problem of single points of failure. In this way, a request originally directed to a single service provider can be allocated to different servers within the cluster depending on the performance, load and status of each server within the cluster, and if a failure occurs in any single server, other servers within the cluster will continue to provide the service. Cluster technology usually employs middleware such as gateways to control servers within the cluster. These techniques can partially resolve the problems of single point failures. However, as the cluster middleware remains vulnerable to attack and to the occurrence of single point failures, the problem of single point failures cannot be truly eliminated.
Another method used to solve the problem of single point failures
is mirroring. Mirroring involves manipulating a website or a series of files on a server so that the websites or files are copied to another server in order that they may be obtained from more than one address. Mirroring can help to disperse network traffic and reduce service load, ensuring that websites or files are readily accessible and enabling sites or file downloads to reach the service requester more quickly. However because the IP addresses of mirror sites are fixed, the individual mirrors are still vulnerable to attack, and the problem of single point failures is therefore still likely to occur.
A further step to resolve the service broking issues described above was the proposal of Universal Description, Discovery and Integration (UDDI) . UDDI is a cross-platform description standard based on Extensible Mark-up Language (XML) which enables globalized businesses to publish their services on the internet. A solution that has been proposed and is already in use is Peer-to-Peer (P2P) . Similar in functionality to UDDI, P2P provides service publishing and location functions. However, this type of solution can only help to resolve the problem of single point failures from the perspective of the service broker, and the issues described above still exist for the service provider and the service requester. Consequently, this type of network service is by no means consistent from a usage perspective.
Invention content
As a result of the factors mentioned above, the main object of this invention is to propose a method of providing network services using P2P network entities which can solve the instability problems of
existing network services and avoid the occurrence of single point failures in network services, while ensuring consistency of service for the end user.
In order to achieve this object, the specific technical solution for this invention is as follows: A method of providing network services using peer-to-peer (P2P) entities, in which the network includes at least one service provider, at least one service broker and at least one service requester, and each P2P entity consists of the individual service provider, service broker or service requester mentioned above or a combination thereof; the service broker distributes and stores the search engine or registration information for the service provider within the P2P entity, and the service provider distributes its service resources on additional P2P network entities; the service requester distributes and stores its serviced status information on additional P2P network entities .
In the exemplary embodiments for this invention, the service provider distributes the service resources to additional P2P network entities through a mobile agent. Before these resources are distributed, the additional P2P network entities mentioned above first request that the service provider authenticate the additional P2P network entities, and once authentication is complete, the resources are distributed.
Said mobile agent operates within a mobile agent environment. The mobile agent environment is located on a P2P network entity substrate, and this P2P network substrate is used to implement routing selection and service resource location within the network.
The P2P network entity which hosts the service broker checks the address of the service provider through a type of dispatch algorithm, which may be a distributed hash algorithm or an overflow algorithm.
In addition to this, a table is stored on the P2P network entity hosting the service requester, and this table records information on the service providers providing services for this service requester. This information includes the service provider name, the service provider address, and the priority of the service provider providing services to the service requester.
The service requester records current information on service provider services at regular intervals. If changes occur to at least one service provider of the highest priority on the service requester table, the service requester shall send the current recorded information on the service provider to the service provider with the highest priority.
The P2P network entity determines additional P2P network entities in the distributed and stored status information using a type of dispatch algorithm. This dispatch algorithm may be a distributed hash algorithm or an overflow algorithm. The service requester distributes its status information at regular intervals to the additional P2P network entities determined by said dispatch algorithm.
Status information for the service requester is distributed and stored in a status information file, such as a cookie, on additional P2P network entities.
The technical solution for this invention also includes a type of system for providing network services using peer-to-peer (P2P) entities, in which the network includes at least one service provider, at least one service broker and at least one service requester, and each P2P entity consists of the individual service provider, service broker or service requester mentioned above or a combination thereof; and each P2P network entity includes hardware and operating systems; each P2P network entity also includes at least one P2P network entity substrate.
The P2P network entity acting as the service provider also includes at least one mobile agent environment and at least one mobile agent.
In the system described above, the service provider assigns service resources to the additional P2P network entities through the mobile agent, and the service requester distributes and stores its status information on the additional P2P network entities. In addition, the P2P network entity determines the additional P2P network entities in the distributed and stored status information using a type of dispatch algorithm.
It is therefore apparent that the method and system for providing network services using P2P network technology provided in this invention has the following benefits and characteristics:
(1) The method according to this invention uses P2P network technology to provide network services. As the service provider distributes its resources to additional P2P network entities through a mobile agent, if the service provider fails and is unable
to provide services, other P2P network entities are able to continue to provide services, thereby ensuring the consistency and continuity of service provision from the provider end.
(2) The method according to this invention enables the service requester to distribute its status information to other P2P network entities. If the service requester fails, existing service requests can quickly be recovered using the status information distributed on additional P2P network entities, thereby ensuring the consistency and continuity of service requests from the requester end.
(3) The method according to this invention ensures the consistency and continuity of services within P2P network entities from the perspective of the service provider, the service broker and the service requester, thereby solving the problem of instability in network services. As these three elements are all distributed P2P network entities, the possibility of single point failures in network services can also be avoided.
Graphical explanations
More detailed explanations of specific methods of implementation for this invention are given below with the aid of the drawings, wherein :
Figure 1 is a system structure schematic for existing SOA technology.
Figure 2 is a system structure diagram for the network services using P2P network entities in this invention.
Figure 3 is a schematic of the distribution of service provider resources to additional P2P network entities using the mobile agents in this invention. Figure 4 is a schematic of an exemplary embodiment of this invention.
Exemplary embodiment
Figure 2 is a system structure diagram for the network services using P2P network entities in this invention. Each box in Figure 2 shows a P2P network entity, which may represent any one of the three roles, "service provider P", "service broker B" or "service requester R", or any combination of the three. The three operations - "publish", "find" and "bind" are divided between these three roles, such that: service provider P registers its functions and access address with service broker B (e.g. information such as IP address and access port) , as shown by the dashed line in the diagram; service requester R finds specific types of services at service broker B, as shown by the dotted line in the diagram; service requester R makes a request to service provider P for the use of its services, as shown by the solid line in the diagram.
The service provider' s search engine or registered information is distributed and stored in the service broker. This search engine or registered information may be entirely stored in a single service broker, or may be distributed and stored on two or more service brokers. Where two or more service brokers are used, complete service provider search engines or registered information are obtained on the basis of a specific algorithm.
Figure 3 is a schematic of the distribution of service provider
resources to additional P2P network entities using the mobile agents in this invention. Figure 3 contains four P2P network entities - Peer Al, Peer A2, Peer A3 and Peer A4. Peer Al can provide service S, and is known as service provider P. Peer Al itself has a specific structure, in which the lowest level is hardware, above which is the operating system, and on top of which is a P2P substrate. This P2P substrate functions by discovering and selecting routes using the application layer in order to carry out resource location, and implementing management and framework maintenance for the P2P network. Above the P2P substrate is the mobile agent environment (MAE) , within which mobile agents (MA) may be produced, run and managed. Mobile agents run within the mobile agent environment and provide service S.
The mobile agent is generally an application which is initiated by a server within the network, and which may move freely between network servers and perform complete preset tasks. In Figure 3, mobile agent MA runs within service provider Peer Al's MAE. The mobile agent MA is hosted by Peer Al, performs certain operations and provides a certain service S, and is known as host mobile agent (H-MA), which is able to perform cloning. The mobile agent MA or the cloned mobile agent MA is able to implement movement to additional P2P network entities within the network, becoming moving mobile agent M-MA. M-MA carries service S, and when M-MA reaches an additional P2P network entity it is hosted in the entity, where this then becomes H-MA.
Figure 4 is a schematic of an exemplary embodiment of this invention. Figure 4 contains four P2P network entities which make up service provider P, which are Peer A, Peer B, Peer C and Peer D, three P2P
entities which make up service requester R, which are Peer E, Peer F and Peer G, and one service broker Peer M (not shown in the diagram) . If Peer B and Peer D wish to share Peer A' s services, Peer B and Peer D must first issue respective requests to Peer A. The request provides certain information, such as Peer B and Peer D' s storage volumes and identification information, and requests that service provider Peer A authenticates the two P2P network entities Peer B and Peer C. In Figure 4, Peer B and Peer D are assumed to have been successfully authenticated by Peer A. In the same way, Peer C must also be authenticated by Peer B if Peer C wishes to share Peer B' s services.
In Figure 4, a game service is running on service provider Peer A. Peer B and Peer D have both been successfully authenticated by Peer A and send respective service sharing requests to Peer A. Once Peer A receives the request, it sends separate response information to Peer B and Peer D. Next, the host mobile agent H-MA located on Peer A moves the cloned H-MA to Peer B and Peer D to become moving mobile agent M-MA. The M-MA carries the game service data or code, and once this reaches the authenticated Peer B or Peer D, becomes hosted on Peer B or Peer D, where it continues to perform its own operations and provide said game service, becoming the host mobile agent H-MA in Peer B or Peer D. In other words, Peer B and Peer D also become service providers for the game service at this moment. The game services on Peer B and Peer D are identical to that provided by Peer A; however, the data within the game services provided by Peer B and Peer D are not necessarily the same as those of the game service provided by Peer A.
Peer B and Peer D above carry out registration of the information
that provides the gaming services with the service broker M, including the registration of the name of the game services provided and the addresses of the two peers . Peer M is located on a P2P network entity, and so Peer M could be situated on the same P2P network entity as the service requester Peer E, or could share a single P2P network entity with the service provider Peer D (or Peer B) .
If service requester Peer E wishes to request services from the game service provider, Peer E must first find the P2P network entity hosting the service broker Peer M, and this P2P network entity will then execute the hash algorithm. As there is a corresponding relationship between the game service's hash number and the P2P network entity on which the game service is stored, the result of the hash calculation can be used to check the hash address and IP address of the service provider providing the game service, and thus locate the service provider, e.g. Peer A, Peer B or Peer D.
Service broker Peer M reports the results of the checks to service requester Peer E, and a table is stored on Peer E. This table lists information for service providers Peer A, Peer B and Peer D, as well as the priority rating of the three service providers for providing services to Peer E. Peer E can then issue a request to the one or more service providers with the highest priority rating. For example, if Peer A has the highest priority and only one service provider can provide services to Peer E at any given moment, then Peer E will issue a service request to service provider Peer A. Alternatively, if the priority settings for Peer A and Peer B are the highest and the second highest respectively, and two service providers may provide services to Peer E at any given moment, then Peer E will service requests simultaneously to Peer A and Peer B.
Let us suppose that service requester Peer E is using a game service provided by service provider Peer A, and two other service requesters Peer F and Peer G establish a trust relationship with service requester Peer E, after which Peer E successfully authenticates Peer F and Peer G. The P2P network entity system uses distributed hash algorithms through the P2P substrate to determine that the nearest P2P network entities to Peer E are Peer F and Peer G. Consequently, Peer E distributes and stores its status information (such as settings and parameters for the environment landscape in the game service, game service device parameters, score parameters and other interactive information for gamers) on Peer F and Peer G at regular intervals.
Distribution and storage here means that the status information to be stored is encrypted and divided into n parts; any m parts of these n parts may be used to recover the status information (where n is greater than m) ; the n parts are finally stored on entities p (where n is greater than or equal to p) . For instance, in this exemplary embodiment, Peer E's status information may be distributed and stored on a status information file such as a cookie on Peer F and Peer G.
While using services provided by Peer A, service requester Peer E records current information on the services at regular intervals. If problems occur with the connection between Peer A and Peer E or Peer A itself fails, rendering Peer E unable to continue to use the service provided by game service provider Peer A, the most recent information recorded on Peer E will become the cut-off point information. When Peer E discovers that Peer A has not responded
within the specified period of time, Peer E revises the table stored in the game service provider above it and reduces the priority of Peer A or deletes Peer A from the service table and switches to another service provider, e.g. Peer E switches to continuing to receive services from one or more service providers with the highest priority in the revised table. Peer E reports the cut-off point information recorded to the replacement service providers, and the new service providers continue to provide services for Peer E from the cut-off point.
If service requester Peer E fails, it will be unable to use the services provided by the service provider. As Peer E distributes its status information at regular intervals to the status information file (such as a cookie) on Peer F and Peer G, when Peer E recovers, it can find the cut-off point from the status information file stored on Peer F and Peer G prior to the failure, and is able to continue from the cut-off point to receive the game service provided by the service provider.
It is apparent from the exemplary embodiment above that the method according to this invention ensures the consistency of services in P2P network entities from the perspectives of the service provider, the service broker and the service requester, and solves the problem of network service instability. In addition, as distributed P2P network entities are used for all three areas mentioned above, the possibility of single point failures within network services is also avoided.
Claims
1. A method of providing network services using peer-to-peer (P2P) entities, in which the network includes at least one service provider, at least one service broker and at least one service requester, and each P2P entity comprise the individual service provider, service broker or service requester mentioned above or a combination thereof; and the service broker distributes and stores the search engine or registration information for the service provider on the P2P entity, and is characterized in that the service provider distributes its service resources on additional P2P network entities; the service requester distributes and stores its serviced status information on additional P2P network entities.
2. The method as claimed in claim 1, characterized in that the service provider distributes the service resources on additional P2P network entities through mobile agents.
3. The method as claimed in claim 2, characterized in that the additional P2P network entities mentioned above first request the service provider to authenticate the additional P2P network entities, and after authentication is complete, the service provider distributes the service resources on additional P2P network entities through mobile agents.
4. The method as claimed in claim 2 or 3, characterized in that the mobile agent operates within a mobile agent environment.
5. The method as claimed in claim 4, characterized in that the mobile agent environment is located on a P2P network entity substrate, and this P2P network substrate is used to implement routing selection and service resource location within the network.
6. The method as claimed in claim 1, characterized in that the P2P network entity which hosts the service broker checks the address of the service provider through a type of dispatch algorithm.
7. The method as claimed in claim 6, characterized in that the dispatch algorithm is a distributed hash algorithm or overflow algorithm.
8. The method as claimed in any of claims 1 to 3, characterized in that a table is stored on the P2P network entity hosting the service requester, which records information on the service providers providing services for this service requester.
9. The method as claimed in claim 8, characterized in that the service provider information recorded in said table includes the service provider name, the service provider address, and the priority rating of the service provider providing services to the service requester.
10. The method as claimed in any of claims 1 to 3, characterized in that the service requester records current information on service provider services at regular intervals.
11. The method as claimed in claim 10, characterized in that if changes occur to at least one service provider with the highest priority rating on the service requester table, the service requester shall send the current recorded information on the service provider to the service provider with the highest priority.
12. The method as claimed in claim 1, characterized in that the P2P network entity determines additional P2P network entities in the distributed and stored status information using a type of dispatch algorithm.
13. The method as claimed in claim 12, characterized in that the service requester distributes its status information at regular intervals to the additional P2P network entities determined by said dispatch algorithm.
14. The method as claimed in claim 13, characterized in that the dispatch algorithm mentioned above may be a distributed hash algorithm or an overflow algorithm.
15. The method as claimed in claim 1, 12 or 13, characterized in that status information for the service requester is distributed and stored in a status information file on additional P2P network entities .
16. The method as claimed in claim 15, characterized in that said status information file is a cookie.
17. A type of system for providing network services using peer-to-peer (P2P) entities, in which the network includes at least one service provider, at least one service broker and at least one service requester, and each P2P entity comprise the individual service provider, service broker or service requester mentioned above or a combination thereof; and each P2P network entity includes hardware and operating systems characterized in that each P2P network entity also includes at least one P2P network entity substrate .
18. The system as claimed in claim 17, characterized in that the P2P network entity acting as the service provider also includes at least one mobile agent environment and at least one mobile agent.
19. The system as claimed in claim 18, characterized in that the service provider assigns service resources to the additional P2P network entities through the mobile agent.
20. The system as claimed in claim 17 or 18, characterized in that the service requester distributes and stores its status information on additional P2P network entities.
21. The system as claimed in claim 20, characterized in that the P2P network entity determines the additional P2P network entities on which status information is distributed and stored using a type of dispatch algorithm.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610002616.8A CN101009567A (en) | 2006-01-26 | 2006-01-26 | A method and system utilizing peer-to-peer network entity to provide the network service |
CN200610002616.8 | 2006-01-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2007085592A1 true WO2007085592A1 (en) | 2007-08-02 |
Family
ID=38069298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2007/050645 WO2007085592A1 (en) | 2006-01-26 | 2007-01-23 | A type of method and system for providing network services using p2p entities |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101009567A (en) |
WO (1) | WO2007085592A1 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010059302A1 (en) * | 2008-11-24 | 2010-05-27 | Plantronics, Inc. | Portable network device for the discovery of nearby devices and services |
GB2473109A (en) * | 2009-08-24 | 2011-03-02 | Gen Electric | Media sharing in peer overlay networks via distributed media brokers |
CN102402587A (en) * | 2011-10-25 | 2012-04-04 | 上海聚力传媒技术有限公司 | Method, device and system for establishing index in the peer-to-peer network |
US8530842B2 (en) | 2008-08-20 | 2013-09-10 | Bsh Bosch Und Siemens Hausgeraete Gmbh | Cooking hob device |
US9730108B2 (en) | 2012-12-14 | 2017-08-08 | Plantronics, Inc. | Network architecture using Wi-Fi devices |
EP3154304A4 (en) * | 2014-06-09 | 2018-01-24 | Nanchang Coolpad Intelligent Technology Company Limited | Server and data transmission method |
US11457082B2 (en) | 2017-09-29 | 2022-09-27 | Huawei Technologies Co., Ltd. | Service processing method and apparatus of service-based architecture |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101471954A (en) * | 2007-12-28 | 2009-07-01 | 华为技术有限公司 | Method for implementing network service, network service entity and intelligent network system |
CN101499903B (en) * | 2008-02-02 | 2012-11-21 | 华为技术有限公司 | Method, apparatus, system, customer node, peer node and convergent point for preventing node forged identity |
US8196186B2 (en) * | 2008-05-20 | 2012-06-05 | Microsoft Corporation | Security architecture for peer-to-peer storage system |
CN101309218B (en) * | 2008-07-09 | 2010-09-15 | 南京邮电大学 | Hierarchical peer-to-peer network traffic detection and control method based on mobile proxy |
CN101989918A (en) * | 2009-08-04 | 2011-03-23 | 中兴通讯股份有限公司 | Peer-to-peer network management system and method |
CN102082830B (en) * | 2011-01-18 | 2013-03-06 | 浙江大学 | Unstable network-oriented distributed file storage method based on quality perception |
WO2018084825A1 (en) * | 2016-11-01 | 2018-05-11 | Hewlett-Packard Development Company, L.P. | Service implementations via resource agreements |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040088646A1 (en) * | 2002-10-31 | 2004-05-06 | Yeager William J. | Collaborative content coherence using mobile agents in peer-to-peer networks |
US20040148344A1 (en) * | 2003-11-19 | 2004-07-29 | Serenade Systems | Content distribution architecture |
-
2006
- 2006-01-26 CN CN200610002616.8A patent/CN101009567A/en active Pending
-
2007
- 2007-01-23 WO PCT/EP2007/050645 patent/WO2007085592A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040088646A1 (en) * | 2002-10-31 | 2004-05-06 | Yeager William J. | Collaborative content coherence using mobile agents in peer-to-peer networks |
US20040148344A1 (en) * | 2003-11-19 | 2004-07-29 | Serenade Systems | Content distribution architecture |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8530842B2 (en) | 2008-08-20 | 2013-09-10 | Bsh Bosch Und Siemens Hausgeraete Gmbh | Cooking hob device |
WO2010059302A1 (en) * | 2008-11-24 | 2010-05-27 | Plantronics, Inc. | Portable network device for the discovery of nearby devices and services |
US9014736B2 (en) | 2008-11-24 | 2015-04-21 | Plantronics, Inc. | Portable network device for the discovery of nearby devices and services |
GB2473109A (en) * | 2009-08-24 | 2011-03-02 | Gen Electric | Media sharing in peer overlay networks via distributed media brokers |
US8868635B2 (en) | 2009-08-24 | 2014-10-21 | Nbcuniversal Media, Llc | System and method for near-optimal media sharing |
GB2473109B (en) * | 2009-08-24 | 2015-06-03 | Nbcuniversal Media Llc | System and method for near-optimal media sharing |
CN102402587A (en) * | 2011-10-25 | 2012-04-04 | 上海聚力传媒技术有限公司 | Method, device and system for establishing index in the peer-to-peer network |
US9730108B2 (en) | 2012-12-14 | 2017-08-08 | Plantronics, Inc. | Network architecture using Wi-Fi devices |
EP3154304A4 (en) * | 2014-06-09 | 2018-01-24 | Nanchang Coolpad Intelligent Technology Company Limited | Server and data transmission method |
US10136463B2 (en) | 2014-06-09 | 2018-11-20 | Nanchag Coolpad Intelligent Technology Company Limited | Server and data transmission method |
US11457082B2 (en) | 2017-09-29 | 2022-09-27 | Huawei Technologies Co., Ltd. | Service processing method and apparatus of service-based architecture |
Also Published As
Publication number | Publication date |
---|---|
CN101009567A (en) | 2007-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2007085592A1 (en) | A type of method and system for providing network services using p2p entities | |
WO2020253266A1 (en) | Method for providing edge service, apparatus and device | |
US10956377B2 (en) | Decentralized data management via geographic location-based consensus protocol | |
US7788522B1 (en) | Autonomous cluster organization, collision detection, and resolutions | |
US20150046591A1 (en) | Dynamic edge server allocation | |
US8819137B2 (en) | System and method for sharing mobile internet service | |
US20150341448A1 (en) | Method, system, service selection entity, and service management entity for selectingservice provision entity | |
US11818209B2 (en) | State management and object storage in a distributed cloud computing network | |
Confais et al. | Performance analysis of object store systems in a fog and edge computing infrastructure | |
CN111131345B (en) | Distributed node finder in multi-cloud computing environment | |
US10187458B2 (en) | Providing enhanced access to remote services | |
Hao et al. | Dynamic service and data migration in the clouds | |
El Dick et al. | Building a peer-to-peer content distribution network with high performance, scalability and robustness | |
Rawadi et al. | Providing local cloud services to mobile devices with inter-cloudlet communication | |
Urdaneta et al. | A decentralized wiki engine for collaborative wikipedia hosting | |
CN114466344A (en) | Edge cloud discovery and selection method suitable for wireless self-organizing network environment | |
EP3817335B1 (en) | System operating using opc ua, communication method using opc ua, and load balancer | |
Kaneda et al. | Virtual private grid: A command shell for utilizing hundreds of machines efficiently | |
CN116708538A (en) | Micro-service system based on peer-to-peer network | |
Suto et al. | An overlay-based data mining architecture tolerant to physical network disruptions | |
Hassanzadeh-Nazarabadi et al. | DHT-based edge and fog computing systems: infrastructures and applications | |
CN110611688A (en) | Method, electronic device and computer program product for searching nodes | |
WO2006091178A1 (en) | A method of obtaining presence information and a method of maintaining an updated membership list of communication devices in a decentralised network | |
Yalagandula et al. | Shruti: A self-tuning hierarchical aggregation system | |
KR100706961B1 (en) | Method and System for Providing Blog Service by Using Peer to Peer Communications |
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 |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 07704079 Country of ref document: EP Kind code of ref document: A1 |