WO2005055519A1 - Node clustering based on user interests, application requirements and network characteristics - Google Patents

Node clustering based on user interests, application requirements and network characteristics Download PDF

Info

Publication number
WO2005055519A1
WO2005055519A1 PCT/GB2004/004984 GB2004004984W WO2005055519A1 WO 2005055519 A1 WO2005055519 A1 WO 2005055519A1 GB 2004004984 W GB2004004984 W GB 2004004984W WO 2005055519 A1 WO2005055519 A1 WO 2005055519A1
Authority
WO
WIPO (PCT)
Prior art keywords
network
clustering
attributes
nodes
communication
Prior art date
Application number
PCT/GB2004/004984
Other languages
French (fr)
Inventor
George Popescu
Zhen Liu
Sambit Sahu
Original Assignee
International Business Machines Corporation
Ibm United Kingdom Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corporation, Ibm United Kingdom Limited filed Critical International Business Machines Corporation
Publication of WO2005055519A1 publication Critical patent/WO2005055519A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks

Definitions

  • Embodiments of the present invention generally relate to group communications. More particularly, embodiments of the present invention relate to communication management based on network attributes and on application attributes .
  • Real-time collaborative applications such as on-line gaming, enable large numbers of users (participants) to interact to achieve mutually dependent outcomes. Because of their collaborative nature, collaborative applications often have numerous quality of service (QoS) constraints such as end-to-end communication delays, frequency of state updates, quality of data received by the users, which must be met. Meeting such constraints over a distributed communication network requires effective communication management.
  • QoS quality of service
  • Clustering reduces wasted bandwidth and aids in constructing distribution trees that satisfy real-time QoS constraints and network node forwarding capacity constraints. While QoS constraints and network constraints can be addressed independently, a more efficient distribution tree can be constructed by addressing QoS constraints and network constraints at the same time.
  • a communication network can be characterized by a large number of network parameters, such as communication delays between pairs of network nodes, the forwarding capacity of the network nodes, and the packet loss ratios between pairs of network nodes .
  • These network parameters can be mapped into delay maps, capacity maps, and loss maps.
  • network delay maps that map network nodes into multi-dimensional network coordinate spaces which are constructed from selective measurements between pairs of network nodes can be used to improve network communications . While improving network communications using network maps is beneficial, such network parameters have nothing to do with the communication requirements of a user at the application level. That is, collaborating participants may interact in an application differently, and thus have different communication interests .
  • a user's communication interest can be modeled as a multidimensional interval within an N-dimensional interest space.
  • Each coordinate can represent a topic of interest for one or more participating users, and thus the N-coordinates represent a union of all user communication interests .
  • Clustering users according to application attributes and clustering of network nodes based on network attributes are both known. However, such clustering methods may not be optimal in collaborative applications. Therefore, a new method of communication clustering based on both network attributes and on application attributes would be useful.
  • the principles of the present invention generally provide for new methods of network modeling and clustering using both network attributes and application attributes.
  • Embodiments of the present invention provide for clustering network overlays used by distributed collaborative applications running on the network based .on network attributes (network delays, forwarding capacity) , communication interest attributes (multidimensional communication interest vectors) to satisfy network constraints (e.g. end- to-end delay constraints, bandwidth constraints) and application constraints (e.g. resolution of transmitted data) .
  • network attributes network delays, forwarding capacity
  • communication interest attributes multidimensional communication interest vectors
  • network constraints e.g. end- to-end delay constraints, bandwidth constraints
  • application constraints e.g. resolution of transmitted data
  • a multi-attribute communication feature vector comprised of network characteristics (such as available bandwidth, client location in the IP address map) , communication interests (client request for content updates, client subscription to specific data items or to a set of proximal data sources in network space or application/virtual space) and quality of service requirements (such as delay and loss constraints) is formed. That vector can be used for managing a group communication mechanism.
  • a network node clustering method based on a weighted distance function using normalized attribute subspace metrics is used.
  • a fusion-based network node clustering method in which network nodes are clustered in each attribute space followed by a combination of subspace classifiers.
  • Another embodiment incorporates a nested network node clustering method in which network nodes are initially clustered based on a sub-set of attributes and then re-clustered by iteratively considering additional attributes .
  • Figure 1 is a flow diagram that illustrates the construction of a multi-type attribute space and its clustering
  • Figure 2 is a high level block diagram of a computer for performing the tasks shown in Figure 1.
  • the present invention models a communication network using multi- attribute feature vectors, one for each node of an overlay network.
  • Each vector represents its node as a point in a multi-type attribute space that spans network and system attributes and communication interest attributes.
  • the nodes are then clustered into sets based on their multi-attribute feature vectors .
  • Network and system attributes include network delay attributes that are represented as either network delay position attributes (nodes positioned in an N-dimensional network delay space) or as relative network delay attributes indexed in a network distance map containing the delay distances obtained from round trip time (RTT) measurements between selected pairs of overlay nodes .
  • Network and system attributes also include: network bandwidth attributes that represent the available network bandwidth between pairs of overlay nodes that are indexed in a network capacity map, network loss attributes that represent the packet loss rate between pairs of overlay network nodes that are indexed in a network loss map; and node fanout attributes that represents the available node forwarding capacity that are indexed in a forwarding capacity map.
  • Communication interest attributes include: communication interest items that represents the set of communication interest items of a user (participant/ client) ; communication interest domains that represent a Cartesian product of communication interest intervals that represent client communication interest; and a combination of interest items and interest domains which represent each client's interest as a union of interest items and/or multi-dimensional interest domains .
  • the multi-attribute feature vectors further include the application's QoS requirements/preferences which act as constraints on sets of overlay nodes or groups of clients .
  • QoS constraints include network QoS constraints such as model end-to-end delay requirements, bandwidth requirements, reliability requirements, and application-level quality constraints such as model application specific data transmission requirements
  • Each attribute space uses a distinct metric.
  • each point represents "virtual" coordinates of the nodes in the network overlay.
  • the Euclidean distance in the virtual network delay space approximates the relative network delay between the overlay nodes measured on the shortest network path.
  • FIG. 1 is a flow diagram 100 that illustrates the construction of a multi-type attribute space and clustering based on network and application constraints.
  • Step 102 comprises constructing network attribute maps .
  • Those maps include delay maps 104 that are constructed using measured network delays, a path loss map 106 based on path losses, a bandwidth map based on the bandwidths at the nodes, and a forwarding capacity map 110 based on the forwarding capacity at the nodes.
  • a communication interest space map is formed.
  • feature vectors are extraction from the communication map formed in step 112.
  • network feature vectors 118 are extracted from the network attribute maps constructed in step 102.
  • a clustering method is selected based on the available set of features (subsets of features are used by the clustering methods) and the classification objective.
  • clustering is performed on the feature vectors. That clustering is based on network QoS constraints obtained at a step 124 and application quality constraints obtained at a step 126. The result is a step 128 of forming a list of labeled nodes 128 based on network and application constraints.
  • the construction of the multi-type attribute feature space including the selection of feature vectors and of distance function, is presented subsequently, as is the clustering algorithms .
  • Step 112 the construction of a communication interest space, is based on distance measurements of the similarity between communication interest vectors or between groups of nodes with common interest.
  • Communication interest can be modeled as a point (e.g. a subscription described by a descriptor set), a cell (e.g. an area of interest expressed as an interval on a virtual application map) , or a reunion of points and cells.
  • point e.g. a subscription described by a descriptor set
  • a cell e.g. an area of interest expressed as an interval on a virtual application map
  • a reunion of points and cells e.g. an area of interest expressed as an interval on a virtual application map
  • non-linear distance functions may be used to measure similarity.
  • the communication interest space can be mapped into a partition domain representation, where the space is partitioned in a set of domains and nodes are indexed based on the overlapping between their communication interest and the interest domains .
  • a membership list - the set of nodes with non-null overlapping of communication interest with the interest domain - is defined for each domain.
  • a distance function for this mapping measure the commonality between membership lists associated with the interest domains.
  • the distance between a node's cell communication interest and a cluster can be computed as the average overlap between node's communication interest and the reunion of the interest domains of the nodes in the cluster.
  • the distance between two clusters is the average overlap between the reunions of the set of cells representing the communication interest of each cluster.
  • the definition can be extended for partition domain clustering (instead of node clustering) .
  • the matrix entry r(i,j) represents in this case the interest of node n t in the subject t- .
  • Wd(c.,c .) - ⁇ (m- n)), N m e c.,N n e C j , (2.10), here ⁇ (i) is the discrete (Kronecker) delta Dirac function.
  • the distance to a cluster of partition domains C L is: card(C t )
  • Step 102 the construction of network attribute maps, is performed generally as follows.
  • the d(N 1 ,N 2 ) is defined as the shortest path distance on the overlay between the two nodes .
  • the distance from a node to a cluster of nodes is defined as the average distance to the nodes within the cluster. When nodes are represented by their network position vector this corresponds to the distance between the node and the center of the cluster; when network maps containing the delays between pairs of nodes are used, this distance is computed by simply averaging the delays to the nodes in the cluster.
  • Another distance measure that is used is the network path distance on a tree constructed using the nodes in the cluster. This distance function embeds constraints on how nodes in the cluster are organized (using a tree structure in this case) . The distance to the cluster of nodes is evaluated on the topology constructed with the nodes in the cluster.
  • Another metric for evaluating the clustering of nodes with topology constraints is the maximum delay on the tree constructed with the nodes of the cluster.
  • This metric can be used as a measure a quality of the clustering solution; it can be employed as stop criteria in the clustering algorithms .
  • ), V c e T c , f(c) - 1 ⁇ max_fbut(c), max_fout(c) - maximum (2.15) fanout ofnodec; T c Tree (cluster C nodes)
  • a loss rate distance between the root node of a tree and a tree node on the network overlay can be computed with:
  • Tr(k) i.s the overlay path from root to the node n(k)
  • Construction of a unified communication feature space based on the application space, the network space and on user requirement attribute space uses a non-linear mapping of the metrics in each space.
  • the mapping parameters are chosen according to a heuristic that consider the trade off between network space optimized or application (interest) optimized communication primitives.
  • the stopping criteria for the clustering algorithms are derived from network and application quality of service requirements and/or preferences.
  • Step 120 selecting a clustering method, is not necessarily a simple task.
  • Clustering heterogeneous data from a multi-type attribute space constructed with application interest attributes and network maps requires new clustering methods that take into account specific criteria derived from the application constraints.
  • a nested multi-type attribute clustering the nodes are clustered using one set of attributes - e.g. communication interest - followed by an iteration of a succession of cluster modifications obtained by considering the metrics in each of the attribute spaces.
  • An example of the nested method is presented subsequently.
  • the last general method is the fusion-based multi-type attribute clustering method that comprising clustering nodes independently in each space (e.g. cluster only based on node communication interest, cluster nodes in the network delay space) , followed by creating multi-type attribute clusters by classifying the nodes based on the output of each attribute space classifier output.
  • This approach uses the attribute-space distances as defined above; however instead of defining a generalized distance function as a combination of distances for each attribute space, the fusion-based method performs classification in each attribute space independently and then uses the outputs to feed a classifier that performs the final clustering.
  • a fusion classifier is presented subsequently.
  • One multi-type attribute clustering technique uses normalized sub-space distance metrics .
  • the set of nodes to be clustered (which may be part of a network overlay) have network attributes (network maps) and communication interest attributes .
  • the network attribute vector consists of node fanout (the number of children that can be supported per node) and network delay space positions (the set of coordinates that describe the relative position of the overlay nodes in a N-dimensional space constructed based on relative measurements between overlay nodes) .
  • the network position attributes are used to approximate the distance between any two nodes in the overlay within an error bound that depends on the dimensionality of the space.
  • the network attributes can be the direct distance (shortest distance computed on the network overlay path) between a node and any other node in the overlay. Relative positioning of overlay nodes using direct measurements requires the definition of an equivalent distance function that preserves the convergence of the average distance-based clustering algorithm.
  • the first step of this multi-type attribute clustering method is defining a generalized distance function.
  • distance functions can be defined for each method of representing network delay parameters.
  • the distance between a node and a cluster in the network attribute space can be computed as: A. Distance between a node and the center of each cluster, whose coordinates are computed by averaging the coordinates of the nodes in the cluster.
  • the algorithm proceeds by iterating through the set of nodes and assigning the node to the closest cluster (according to the distance computing using A. or B) until the stopping criteria is met.
  • the cluster mean (for A) or membership (for B) is updated after each node classification.
  • the first case corresponds to k-Means clustering, where the feature space is the network delay space.
  • the clustering algorithm for the second case selects the cluster C L which corresponds to the X ⁇ O.D(n,C L ) (3.2). It can be shown that for this distance function definition the iterative clustering algorithm also converges to the average distance between nodes and the corresponding clusters : C L (3.3)
  • Clustering client's communication interest nodes can have multiple labels depending on the span of their communication interest.
  • Clustering communication interest domains consist in partitioning of the interest space followed by the clustering of partitions based on the similarity of their node membership list.
  • the distance for clustering node's communication interest is defined as :
  • the preference-based grouping algorithm assigns a node to the cluster C L corresponding to the min(w(n, C L )) (3.6), updating the cluster membership after each iteration; it can be shown that the iterative algorithm converges to a solution that minimizes the overall waste:
  • A) network attribute space distance is the sum of all members of the partition to the nodes in the cluster:
  • a fanout function is defined as the average fanout of partition domain member nodes as :
  • the multi-type attribute clustering approach uses, in addition to the network attributes and communication interest attributes, the node fanout f(n k ) attribute to define a generalized distance function as follows :
  • MD(ci,C L ) wl*Df(ci,C L ) + w2 *Di(n, C L ) + w3 *Dn(n, C L ) (3.11) ,- the k-Means using this generalized distance function will converge to a target solution that minimizes a linear combination of the distance between cluster nodes, the communication waste and the average difference between per/cluster fanout.
  • Another example of clustering of multi-type attribute feature vectors is using minimization of a generalized objective function that includes waste and delay penalties .
  • the waste function is computed assuming that all nodes transmit at the same rate:
  • the delay penalty considers the delay in each source tree constructed within the group is :
  • the maximum delay distance on the tree where the delay on a path from the root of the tree is defined as in 2.13.
  • E(x, Ck) wl* W(x, Ck) + w2* Dp(x, Ck) (3.15).
  • the base line algorithm is :
  • node clustering can be performed using a nested multi- type attribute clustering approach.
  • An example of such an approach is iterative split and merge clustering in which multiple clustering criteria are used on an attribute spaces in succession.
  • a cluster is composed of the nodes that belong to the union of membership sets of all partition domains in the cluster.
  • a first method uses a cluster splitting conditioned on the communication interest of the nodes and a merging condition on the network attribute space.
  • This model considers that the normalized interest attribute space is partitioned in a uniform grid of M n (1/M - resolution of partitioning, n - cardinality of the attribute space) and cluster the nodes in L clusters by; Partitioning the interest attribute space to create an n-dim grid and then computing the density of nodes interested in each partition; and cluster the partitions according to density of the nodes using a mode detection method.
  • One a cluster is formed it can be split using a cluster splitting algorithm to split the cluster into two clusters:
  • Stop condition combines : a condition on a threshold on the reduction in the total grouping waste (3.12); a condition in the modification of cluster membership between successive iterations, where the membership is defined as:
  • the iterations are stopped when there is no reduction in total grouping waste of when the cluster membership does not change between successive iterations .
  • a second method of using the split-merge algorithm splits the clusters into p sub-clusters based on network distance constraints (diameter of the cluster in the network attribute space) , followed by merging the clusters with high overlap (to obtain maximum reduction of waste) .
  • the model considers that the normalized interest attribute space is partitioned in a uniform grid of M n (1/M - resolution of partitioning, n - cardinality of the attribute space) .
  • the nodes are assigned to L clusters such that the average distance between nodes in a cluster and the communication waste are minimized.
  • the algorithm proceeds as the one above except that the splitting condition is on the distance waste and merging is on the overlap between clusters.
  • a cluster is split in p sub-clusters while the merging reduces in the same step the number of clusters to by merging p-1 clusters.
  • the splitting section of the second method split the cluster with the maximum network distance between nodes into p sub-clusters such that the overlap between sub-clusters is minimized.
  • That splitting method is: Select p partition domains which are the most distant - using the weighted distance function in (3.16a)) - by calculating the distances between partitions sorting the distances and selecting a partition corresponding to the maximum distance between a partition domain in the list and the remaining partition domains; use the p partition domains as starting points for p sub-clusters;
  • the merging section of the second method is as follows:
  • the clusters are merged in the order of their overlap (function for the overlap between two cluster) until the number of clusters is L.
  • the stop criterion is a threshold on the reduction in the total grouping waste and a threshold on the change in cluster membership.
  • the third approach to clustering is the fusion-based multi-type attribute clustering method that comprising clustering nodes independently in each space (e.g. cluster only based on node communication interest, cluster nodes in the network delay space) , followed by creating multi-type attribute clusters by classifying the nodes based on the output of each attribute space classifier output.
  • An example of this approach is the fusion clustering of grouping servers and receiver overlay nodes .
  • the receivers have a communication interest and network position vector defined as network position vector, communication interest vector; the servers are described by their forwarding capacity, and the network position vector.
  • the clustering in network delay space involves two steps.
  • the first step is clustering of nodes according to prefix match/network delay map information and refinement of the clustering according to group size and delay constraints.
  • Each network bin corresponds to a range of IP addresses.
  • the classifier maintains a table with an entry for each of the prefix-based clusters.
  • the first step of clustering uses the longest prefix matching of IP address to assign the node to a network bin.
  • the second step clusters the receivers according to constraints of group size (which are imposed by fanout limitations of the nodes in the cluster) and delay constraints .
  • After assignment to a prefix bin the nodes are further clustered within the bin by selecting a set of cluster leaders and partitioning the network delay space using Delaunay triangulation.
  • nodes are clustered using the overlap distance function (waste distance function only - (3.5)) using k-Means, using the method described in section 3.1.
  • the fusion classifier labels the nodes using a non-linear combination of the output of the network distance classifier and communication interest classifier such that cardinality constraints are satisfied (the number of nodes in the cluster is bounded) .
  • the steps of the clustering method are as follows:
  • the final clusters will contain nodes that are close in network distance and have similar communication interest .
  • the clusters can be mapped to a set of L cluster leaders (servers) , such that the constraint on the forwarding capacity of the servers is satisfied, and the number of communication groups supported per cluster leader and the average network distance between the nodes in the cluster is jointly minimized.
  • a straightforward approach for small overlays is the centralized management of network and client communication interest.
  • Large network overlays may use a distributed management of network overlay, delegating the communication interest clustering to several control nodes that manage partitions of the overlay.
  • Multi-type attribute clustering has application in various group communication and data distribution areas.
  • the participants are grouped dynamically based on their communication interest while the underlying network overlay minimizes the delay between participants in the same group.
  • Session management for distributed interactive applications requires optimal grouping of receivers to minimize the communication waste, especially when the data rate is high, while also imposing constraints on the end-to-end delay.
  • Such problem can be modeled as a multi-type attribute clustering with constraints formulated in the network delay domain.
  • Multi-type attribute clustering also provides the mechanisms that support network virtualization: assignments of node identifiers based on application-level semantics and network position parameters.
  • the virtualized ID allocated to network overlay node uses node position coordinates in the virtual network delay space and the mapped parameter representing node communication interest.
  • Distributed look-up applications use such mappings to increase the efficiency (e.g. by directing the search to selected nodes based on their identifier instead of flooding the search query to all nodes in the overlay) of the distributed search by reducing the communication bandwidth per each search operation and increasing the response time of the distributed search (e.g. reducing the average hop count of search query routing) .
  • Multi-type attribute clustering can be used to support location- based services in mobile applications.
  • the participating nodes have a network position obtained by referencing to a local or global positioning system.
  • selected nodes provide services (such as streaming data services) , which can be accessed by mobile receiver nodes based on their interest and proximity to the nodes providing the service.
  • Receiver nodes are clustered according to their communication interests (data requests), network proximity to server nodes, and capacity limitations of the node providing the service.
  • FIG. 2 a high level block diagram of a computer 200 for performing the tasks shown in Figure 1.
  • the computer 200 comprises a processor 210 as well as a memory 220 for storing control programs 221, including clustering algorithms 222, and data structures 223 and the like.
  • the processor 210 cooperates with conventional support circuitry 230 such as power supplies, clock circuits, cache memory and the like as well as circuits that assist in executing the software routines stored in the memory 220.
  • conventional support circuitry 230 such as power supplies, clock circuits, cache memory and the like as well as circuits that assist in executing the software routines stored in the memory 220.
  • the computer also includes input-output circuitry 240 that forms an interface between the various functional elements communicating with the computer 200.
  • the computer 200 is depicted as a general purpose computer that is programmed to perform various control functions in accordance with the present invention, the invention can be implemented in hardware, for example, as an application specified integrated circuit (ASIC) . As such, the process steps described herein are intended to be broadly interpreted as being equivalently performed by software, hardware, or a combination thereof .
  • ASIC application specified integrated circuit

Abstract

A method of clustering communication nodes based on network attributes such as network delays and forwarding capacity; on communication interest attributes; and on application attributes such as quality of service preferences/constraints (e.g. end-to-end delay constraints, bandwidth constraints) in providing communications between users and application servers. A multi-attribute communication feature vector is formed. That vector is comprised of network attributes (such as available bandwidth, client location attributes in the IP map), communication interests attributes (client request for content updates, client subscription to specific data items or to a set of proximal data sources in network space or application/virtual space) and quality of service requirements (such as delay and loss constraints is used to from efficient group communication mechanisms for distributed collaborative applications. Then the multi-attribute communication feature vectors are clustered. The clustering methods for multi-type attribute feature vectors are: iterative clustering using a generalized distance space with normalized attribute subspace metrics; fusion clustering, and nested clustering.

Description

NODE CLUSTERING BASED ON USER INTERESTS, APPLICATION REQUIREMENTS AND NETWORK CHARACTERISTICS
BACKGROUND OF THE INVENTION Field of the Invention Embodiments of the present invention generally relate to group communications. More particularly, embodiments of the present invention relate to communication management based on network attributes and on application attributes .
Description of the Related Art Real-time collaborative applications, such as on-line gaming, enable large numbers of users (participants) to interact to achieve mutually dependent outcomes. Because of their collaborative nature, collaborative applications often have numerous quality of service (QoS) constraints such as end-to-end communication delays, frequency of state updates, quality of data received by the users, which must be met. Meeting such constraints over a distributed communication network requires effective communication management.
As more users participate in a given application the difficulty of implementing effective communication management increases . Eventually it becomes necessary to cluster users according to their communication interest. Clustering reduces wasted bandwidth and aids in constructing distribution trees that satisfy real-time QoS constraints and network node forwarding capacity constraints. While QoS constraints and network constraints can be addressed independently, a more efficient distribution tree can be constructed by addressing QoS constraints and network constraints at the same time.
A communication network can be characterized by a large number of network parameters, such as communication delays between pairs of network nodes, the forwarding capacity of the network nodes, and the packet loss ratios between pairs of network nodes . These network parameters can be mapped into delay maps, capacity maps, and loss maps. For example, network delay maps that map network nodes into multi-dimensional network coordinate spaces which are constructed from selective measurements between pairs of network nodes can be used to improve network communications . While improving network communications using network maps is beneficial, such network parameters have nothing to do with the communication requirements of a user at the application level. That is, collaborating participants may interact in an application differently, and thus have different communication interests .
A user's communication interest can be modeled as a multidimensional interval within an N-dimensional interest space. Each coordinate can represent a topic of interest for one or more participating users, and thus the N-coordinates represent a union of all user communication interests .
Clustering users according to application attributes and clustering of network nodes based on network attributes (round-trip delays, forwarding capacity, etc) are both known. However, such clustering methods may not be optimal in collaborative applications. Therefore, a new method of communication clustering based on both network attributes and on application attributes would be useful.
SUMMARY OF THE INVENTION In one embodiment, the principles of the present invention generally provide for new methods of network modeling and clustering using both network attributes and application attributes.
Embodiments of the present invention provide for clustering network overlays used by distributed collaborative applications running on the network based .on network attributes (network delays, forwarding capacity) , communication interest attributes (multidimensional communication interest vectors) to satisfy network constraints (e.g. end- to-end delay constraints, bandwidth constraints) and application constraints (e.g. resolution of transmitted data) .
In one embodiment a multi-attribute communication feature vector comprised of network characteristics (such as available bandwidth, client location in the IP address map) , communication interests (client request for content updates, client subscription to specific data items or to a set of proximal data sources in network space or application/virtual space) and quality of service requirements (such as delay and loss constraints) is formed. That vector can be used for managing a group communication mechanism. In another embodiment a network node clustering method based on a weighted distance function using normalized attribute subspace metrics is used. In another embodiment, a fusion-based network node clustering method in which network nodes are clustered in each attribute space followed by a combination of subspace classifiers. Another embodiment incorporates a nested network node clustering method in which network nodes are initially clustered based on a sub-set of attributes and then re-clustered by iteratively considering additional attributes . BRIEF DESCRIPTION OF THE DRAWINGS So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments .
Figure 1 is a flow diagram that illustrates the construction of a multi-type attribute space and its clustering; and
Figure 2 is a high level block diagram of a computer for performing the tasks shown in Figure 1.
To facilitate understanding, identical reference numerals have been used, wherever possible, to designate identical elements that are common to the figures .
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT The present invention models a communication network using multi- attribute feature vectors, one for each node of an overlay network. Each vector represents its node as a point in a multi-type attribute space that spans network and system attributes and communication interest attributes. The nodes are then clustered into sets based on their multi-attribute feature vectors .
Network and system attributes include network delay attributes that are represented as either network delay position attributes (nodes positioned in an N-dimensional network delay space) or as relative network delay attributes indexed in a network distance map containing the delay distances obtained from round trip time (RTT) measurements between selected pairs of overlay nodes . Network and system attributes also include: network bandwidth attributes that represent the available network bandwidth between pairs of overlay nodes that are indexed in a network capacity map, network loss attributes that represent the packet loss rate between pairs of overlay network nodes that are indexed in a network loss map; and node fanout attributes that represents the available node forwarding capacity that are indexed in a forwarding capacity map.
Communication interest attributes include: communication interest items that represents the set of communication interest items of a user (participant/ client) ; communication interest domains that represent a Cartesian product of communication interest intervals that represent client communication interest; and a combination of interest items and interest domains which represent each client's interest as a union of interest items and/or multi-dimensional interest domains .
The multi-attribute feature vectors further include the application's QoS requirements/preferences which act as constraints on sets of overlay nodes or groups of clients . Those QoS constraints include network QoS constraints such as model end-to-end delay requirements, bandwidth requirements, reliability requirements, and application-level quality constraints such as model application specific data transmission requirements
Each attribute space uses a distinct metric. In the network delay space each point represents "virtual" coordinates of the nodes in the network overlay. The Euclidean distance in the virtual network delay space approximates the relative network delay between the overlay nodes measured on the shortest network path.
Figure 1 is a flow diagram 100 that illustrates the construction of a multi-type attribute space and clustering based on network and application constraints. Step 102 comprises constructing network attribute maps . Those maps include delay maps 104 that are constructed using measured network delays, a path loss map 106 based on path losses, a bandwidth map based on the bandwidths at the nodes, and a forwarding capacity map 110 based on the forwarding capacity at the nodes. Additionally, at step 112 a communication interest space map is formed. Then, at step 114 feature vectors are extraction from the communication map formed in step 112. Then, at step 118 network feature vectors 118 are extracted from the network attribute maps constructed in step 102.
At step 120 a clustering method is selected based on the available set of features (subsets of features are used by the clustering methods) and the classification objective. At step 122 clustering is performed on the feature vectors. That clustering is based on network QoS constraints obtained at a step 124 and application quality constraints obtained at a step 126. The result is a step 128 of forming a list of labeled nodes 128 based on network and application constraints. The construction of the multi-type attribute feature space, including the selection of feature vectors and of distance function, is presented subsequently, as is the clustering algorithms .
Step 112, the construction of a communication interest space, is based on distance measurements of the similarity between communication interest vectors or between groups of nodes with common interest. Communication interest can be modeled as a point (e.g. a subscription described by a descriptor set), a cell (e.g. an area of interest expressed as an interval on a virtual application map) , or a reunion of points and cells. To measure the similarity between client's interest non-linear distance functions may be used. When the communication interest feature vector is a union of several domains scattered in the communication interest space, non-linear distance functions - such as the measure of overlap between multiple cells - are used to measure similarity. Alternatively, the communication interest space can be mapped into a partition domain representation, where the space is partitioned in a set of domains and nodes are indexed based on the overlapping between their communication interest and the interest domains . In this representation a membership list - the set of nodes with non-null overlapping of communication interest with the interest domain - is defined for each domain. A distance function for this mapping measure the commonality between membership lists associated with the interest domains.
More specifically, the communication interest can be modeled as follows: 1. a vector: ϊ=[iQ,.--i„] (2.1); 2. a communication interest cell:
Figure imgf000008_0001
(2.2) where tø) ]
Figure imgf000008_0002
is a notation for the Cartesian product; 3. multiple cells representing the communication interest of a single node: mc = J[z1 ,Z2 ] (2.3) .
Several distance functions can be defined for the communication interest space: n-l
1. Non-linear distance between the interest points: d(i^ , i2) — ^ 3 .k ~~ h.k)
(2.4) where δ is the Kronecker delta function.
2. A non-linear distance function that uses Euclidian distance between the centers of the communication interest domains :
Figure imgf000008_0003
3. The degree of overlapping of multiple cells : -ϊ2 p)/2
Figure imgf000008_0004
Using these definitions, the distance between a node's cell communication interest and a cluster can be computed as the average overlap between node's communication interest and the reunion of the interest domains of the nodes in the cluster. The distance between two clusters is the average overlap between the reunions of the set of cells representing the communication interest of each cluster.
An alternative definition of the distance which is based on wasted communication bandwidth uses the matrix of communication interest:
Figure imgf000008_0005
With this definition, the communication waste within a cluster of nodes , is computed as : Wd = ^jT 1 - r(i,j) (2.8), where ni , nj are nodes in ni,njeC ,ni≠nj the cluster CL .
The definition can be extended for partition domain clustering (instead of node clustering) . The matrix entry r(i,j) represents in this case the interest of node nt in the subject t- . The partition domain membership is composed of all nodes with an interest in tj : m(c t) = {VN,, mc(Nj ) nc. ≠ null} (2.9)
The waste distance between two partition domains is:
Wd(c.,c .) = -δ(m- n)), Nm e c.,Nn e Cj, (2.10), here δ(i) is the discrete
Figure imgf000009_0001
(Kronecker) delta Dirac function.
The distance to a cluster of partition domains CL is: card(Ct)
Wd(C;,CL) = Wd(cpCj), where Cj <= CL (2 .11) j= wherein δ(i) is the discrete delta Dirac function.
Step 102, the construction of network attribute maps, is performed generally as follows. In the network attribute space, Euclidean distance is used for the network delay between two nodes that are mapped on a network N-dimensional position map: p 6?(n,,n, ) =[ (A, —A,) ] (2.12), where ni is the N-dimensional position
vector representing the overlay node JV in the network delay Euclidean space. When network map containing the distances between all pairs of nodes in the overlay is available, the d(N1,N2) is defined as the shortest path distance on the overlay between the two nodes . The distance from a node to a cluster of nodes is defined as the average distance to the nodes within the cluster. When nodes are represented by their network position vector this corresponds to the distance between the node and the center of the cluster; when network maps containing the delays between pairs of nodes are used, this distance is computed by simply averaging the delays to the nodes in the cluster.
Another distance measure that is used is the network path distance on a tree constructed using the nodes in the cluster. This distance function embeds constraints on how nodes in the cluster are organized (using a tree structure in this case) . The distance to the cluster of nodes is evaluated on the topology constructed with the nodes in the cluster.
The delay distance to a tree structure within the cluster - is computed as : card(,Tr(k))-2 d(nk,Tc) = ( , d(nt ,nM)), where i=0
Tr(k) = [n0,... n^^ ], where n^^^ = nk (2.13) shortest path traversal of Tc tree from root to node nk
Another metric for evaluating the clustering of nodes with topology constraints is the maximum delay on the tree constructed with the nodes of the cluster.
m_delay(c)
Figure imgf000010_0001
Tr(k)=l .0k,... n „c*ard( k) ι] path of k-th traversal of Tc tree
This metric can be used as a measure a quality of the clustering solution; it can be employed as stop criteria in the clustering algorithms .
An alternative definition for network (delay) distance between a node and a cluster of nodes uses the minimum distance between the node and the parent node on the tree constructed with the nodes in the cluster: d(y, C) = min(||v - c||), V c e Tc , f(c) - 1 < max_fbut(c), max_fout(c) - maximum (2.15) fanout ofnodec; Tc = Tree (cluster C nodes)
A loss rate distance between the root node of a tree and a tree node on the network overlay can be computed with:
(2.16), where Tr(k) i.s the overlay path from
Figure imgf000011_0001
root to the node n(k)
Construction of a unified communication feature space based on the application space, the network space and on user requirement attribute space uses a non-linear mapping of the metrics in each space. The mapping parameters are chosen according to a heuristic that consider the trade off between network space optimized or application (interest) optimized communication primitives. The stopping criteria for the clustering algorithms are derived from network and application quality of service requirements and/or preferences.
Step 120, selecting a clustering method, is not necessarily a simple task. Clustering heterogeneous data from a multi-type attribute space constructed with application interest attributes and network maps requires new clustering methods that take into account specific criteria derived from the application constraints. There are three general types of clustering proposed here. The first is multi-type attribute clustering using a generalized distance function. In that method the multi-type attribute feature space and the non-linear mapping of distance vectors are constructed. Then a new distance function - e.g. a weighted sum of normalized distances in each attribute feature space is defined. Then a clustering is performed using an algorithm that assigns nodes to the closest cluster using the average distance to the cluster nodes. Examples of this technique are presented subsequently.
In a nested multi-type attribute clustering the nodes are clustered using one set of attributes - e.g. communication interest - followed by an iteration of a succession of cluster modifications obtained by considering the metrics in each of the attribute spaces. An example of the nested method is presented subsequently. The last general method is the fusion-based multi-type attribute clustering method that comprising clustering nodes independently in each space (e.g. cluster only based on node communication interest, cluster nodes in the network delay space) , followed by creating multi-type attribute clusters by classifying the nodes based on the output of each attribute space classifier output. This approach uses the attribute-space distances as defined above; however instead of defining a generalized distance function as a combination of distances for each attribute space, the fusion-based method performs classification in each attribute space independently and then uses the outputs to feed a classifier that performs the final clustering. An example of a fusion classifier is presented subsequently.
One multi-type attribute clustering technique uses normalized sub-space distance metrics . As an example of multi-type attribute clustering using generalized distance functions, described below are algorithms for clustering receivers using communication interest and network QoS constraints . The set of nodes to be clustered (which may be part of a network overlay) have network attributes (network maps) and communication interest attributes . The network attribute vector consists of node fanout (the number of children that can be supported per node) and network delay space positions (the set of coordinates that describe the relative position of the overlay nodes in a N-dimensional space constructed based on relative measurements between overlay nodes) . The network position attributes are used to approximate the distance between any two nodes in the overlay within an error bound that depends on the dimensionality of the space. Alternatively, the network attributes can be the direct distance (shortest distance computed on the network overlay path) between a node and any other node in the overlay. Relative positioning of overlay nodes using direct measurements requires the definition of an equivalent distance function that preserves the convergence of the average distance-based clustering algorithm.
The first step of this multi-type attribute clustering method is defining a generalized distance function. As discussed above, distance functions can be defined for each method of representing network delay parameters. The distance between a node and a cluster in the network attribute space can be computed as: A. Distance between a node and the center of each cluster, whose coordinates are computed by averaging the coordinates of the nodes in the cluster.
B. The mean direct (shortest path) distance between a node and the set of nodes in the cluster: (1.1) D(n, CL) = T ||»-«A| (3.1) ; k cL
The algorithm proceeds by iterating through the set of nodes and assigning the node to the closest cluster (according to the distance computing using A. or B) until the stopping criteria is met. The cluster mean (for A) or membership (for B) is updated after each node classification.
The first case corresponds to k-Means clustering, where the feature space is the network delay space. The clustering algorithm for the second case selects the cluster CL which corresponds to the XΩΪO.D(n,CL) (3.2). It can be shown that for this distance function definition the iterative clustering algorithm also converges to the average distance between nodes and the corresponding clusters : CL (3.3)
Figure imgf000013_0001
Therefore this algorithm also minimizes the average distance between the nodes within the cluster.
Two approaches are proposed for modeling the communication interest:
I. Clustering client's communication interest: nodes can have multiple labels depending on the span of their communication interest.
II . Clustering communication interest domains - consist in partitioning of the interest space followed by the clustering of partitions based on the similarity of their node membership list.
In I., the distance for clustering node's communication interest is defined as : A. Overlap communication interest distance as defined in (2.6). B. Distance measure (communication waste) based on the node binary preference function:
\θ, when nt not interested in n.
Figure imgf000014_0001
The waste measure between node n and cluster CL is then: wO>cz)= ∑O-rO,^.)) (3 .5 ] n,eCL
The preference-based grouping algorithm assigns a node to the cluster CL corresponding to the min(w(n, CL)) (3.6), updating the cluster membership after each iteration; it can be shown that the iterative algorithm converges to a solution that minimizes the overall waste:
ΛΓ-I mm^w(nk,CL) where nk e CL (3.7) A=O
In II, the membership list of a partition is defined as in the first section (2.9).
Two types of distances are defined between a partition domain and a cluster of partition domains :
A) network attribute space distance is the sum of all members of the partition to the nodes in the cluster:
Dn(c i , CL) = V \\n• - nk (3.8) - card(cX)*card(Cj) Cl L n
this corresponds to the distance between the position center of the partition domain and the center of the cluster; when grouping based on the network attribute space distance only, the k-Means algorithm will minimize the average distance (computed over all clusters) between cluster partition domains; the corresponding definition for the distance between two partitions is 1 Dn(c; ,cm) -- card(cm)* card(ct) Σ .8a) nj ΣIA (3 ec,
B) communication interest distance between a partition domain and a cluster of partition domains: Di(ci, CL) using (2.11) - when grouping based on the communication interest only, the partitions are added to the cluster which correspond to the minimum increase of communication waste function.
Additionally, a fanout function is defined as the average fanout of partition domain member nodes as :
F ci) ^ —^— ∑ (f(nj)) (3.9) card(cι) ^ci
The distance between a partition domain and a cluster of partition domains is then: £)'(c,.,Ci) = exp(-|i (c,.) --tT(Ci)|) (3.10). This measure is promoting the addition of partitions with high fanout per node to clusters with fanout deficit per node.
The multi-type attribute clustering approach uses, in addition to the network attributes and communication interest attributes, the node fanout f(nk) attribute to define a generalized distance function as follows :
MD(ci,CL) = wl*Df(ci,CL) + w2 *Di(n, CL) + w3 *Dn(n, CL) (3.11) ,- the k-Means using this generalized distance function will converge to a target solution that minimizes a linear combination of the distance between cluster nodes, the communication waste and the average difference between per/cluster fanout.
Another example of clustering of multi-type attribute feature vectors is using minimization of a generalized objective function that includes waste and delay penalties . The waste function is computed assuming that all nodes transmit at the same rate:
a. W = cx) (3.12), card(C(k)) is the cardinality of
Figure imgf000016_0001
cluster C(k), where Wd(cy, ex) is the waste when grouping the partition domain c and CΛas defined in the previous section (2.10).
K mcard{Ck)
W(x, Ck) = ∑ ∑ card(Ck) - card(mc(x)) mcard(Ck) number of multiple cells in cluster Ck k=\ x=l (3.13)
The delay penalty considers the delay in each source tree constructed within the group is :
K card(C(k))
Dp(x,Ck) = ∑ £ (D(x,Tc)-Atreshold) (3.14) A=l x=\
The maximum delay distance on the tree where the delay on a path from the root of the tree is defined as in 2.13.
After the foregoing an energy function is defined as :
E(x, Ck) = wl* W(x, Ck) + w2* Dp(x, Ck) (3.15).
The base line algorithm is :
1. Use k-Means to group based on interest only 2. Start with the grouping at step 1. 3.
Figure imgf000017_0001
> Threshold) {ΔE=0; For (i=1 ; i<N; i++){ For(j=1 ; j<K; j++) if (Ε(n(i), C(j)) < E(n(i), e_oldn(j) ) )) assign n(i) to C(j)
ΔE += Ε(n(i), C(j)) - E(n(i), e_old(n(j) ) }
As noted, node clustering can be performed using a nested multi- type attribute clustering approach. An example of such an approach is iterative split and merge clustering in which multiple clustering criteria are used on an attribute spaces in succession. A cluster is composed of the nodes that belong to the union of membership sets of all partition domains in the cluster. Start by defining the distance function between clusters CL(1) and C (2) : ι ccaarrda((CUL.((li)))) ccaarmd(CuLL(2)), — " I — — ii D(CL( ), (2)) =wl cαrJ(Ci(1))*CβrJ(Ci(2)) f< n, - n . +
Figure imgf000017_0002
(3.16)
A first method uses a cluster splitting conditioned on the communication interest of the nodes and a merging condition on the network attribute space. This model considers that the normalized interest attribute space is partitioned in a uniform grid of Mn (1/M - resolution of partitioning, n - cardinality of the attribute space) and cluster the nodes in L clusters by; Partitioning the interest attribute space to create an n-dim grid and then computing the density of nodes interested in each partition; and cluster the partitions according to density of the nodes using a mode detection method.
An example: while (stop_condition) {
Find the cluster that has maximum average waste and split it into two clusters; max_waste=0; for (k=0; k<L; k++) {
Figure imgf000018_0001
if (W(k)>max_ waste) {k_max=k; max_waste = W(k);} }
Split (CL(k_max));
Find the closest clusters when using the weighted distance function defined in (3.16) mm_dist=max_yal; for (cl=0; cl< L+l; cl++) for (c2 =0; c2< L+l ; c2++) { if(min_dist>D(CL(cl), CL(c2))) { min_dist= D(CL(cl),CL(c2)); cl_min=cl; c2_min=c2;} } merge (CL(cl_min), CL(c2_min)) ;
} One a cluster is formed it can be split using a cluster splitting algorithm to split the cluster into two clusters:
Split(CL(0))
1. Start with two partition domains that are further apart when using distance function: d(ci , Cj ) = w\ * Dn(Cj ,Cj) + w2* Wd(ct , cy. )) (3.16a) - max , where ct , cj e CL (0) , using distances (3.8a and 2.10) 2. Iterates through the list of nodes of the cluster to be split, adding them to the closest cluster using the distance between the node and the cluster: D(c,CL(i)) = wl* Dn(c,CL(i)) + w2*Wd(c,CL(i)) , f = 1,2, using distances (3.8, and 2.11) The split algorithm output two clusters C (1) and CL (2 ) , with the partition domains of the initial cluster split between the new clusters . In addition to splitting, clusters can be merged:
Merge (CL(1), CL(2)):
The merging of clusters labels the nodes in the second cluster with the first cluster label: for (k=0; k< card(CL(2)); k++) e(nk) = e(CL(ϊ)) where nk e CX(2) ;
Stop condition combines : a condition on a threshold on the reduction in the total grouping waste (3.12); a condition in the modification of cluster membership between successive iterations, where the membership is defined as:
N
2_ll — δ(e(n!) — e_θld(nj)) , where e(n;.) is the label of node ni. (=0
The iterations are stopped when there is no reduction in total grouping waste of when the cluster membership does not change between successive iterations .
A second method of using the split-merge algorithm splits the clusters into p sub-clusters based on network distance constraints (diameter of the cluster in the network attribute space) , followed by merging the clusters with high overlap (to obtain maximum reduction of waste) . The model considers that the normalized interest attribute space is partitioned in a uniform grid of Mn (1/M - resolution of partitioning, n - cardinality of the attribute space) . The nodes are assigned to L clusters such that the average distance between nodes in a cluster and the communication waste are minimized. The algorithm proceeds as the one above except that the splitting condition is on the distance waste and merging is on the overlap between clusters. A cluster is split in p sub-clusters while the merging reduces in the same step the number of clusters to by merging p-1 clusters.
The splitting section of the second method split the cluster with the maximum network distance between nodes into p sub-clusters such that the overlap between sub-clusters is minimized. That splitting method is: Select p partition domains which are the most distant - using the weighted distance function in (3.16a)) - by calculating the distances between partitions sorting the distances and selecting a partition corresponding to the maximum distance between a partition domain in the list and the remaining partition domains; use the p partition domains as starting points for p sub-clusters;
2. iterate through the list of partition domains in the cluster; adding them to the sub-cluster corresponding to the maximum overlap.
The merging section of the second method is as follows:
for(i=0;i<p-l; i++)
{ for (cl =0 ; cKL ; cl++) for (c2=cl +1 ; c2 < L ; c2++) Merge (CL(cl), CL(c2)) when the highest overlap ratio: max(min(o(cl, c2) / A(c\), o(c\, c2) I A(c2))) (3.17) cl,c2 where the A(ck) is the volume of a partition domain.
The clusters are merged in the order of their overlap (function for the overlap between two cluster) until the number of clusters is L. The stop criterion is a threshold on the reduction in the total grouping waste and a threshold on the change in cluster membership. The third approach to clustering is the fusion-based multi-type attribute clustering method that comprising clustering nodes independently in each space (e.g. cluster only based on node communication interest, cluster nodes in the network delay space) , followed by creating multi-type attribute clusters by classifying the nodes based on the output of each attribute space classifier output. An example of this approach is the fusion clustering of grouping servers and receiver overlay nodes . The receivers have a communication interest and network position vector defined as network position vector, communication interest vector; the servers are described by their forwarding capacity, and the network position vector.
The clustering in network delay space involves two steps. The first step is clustering of nodes according to prefix match/network delay map information and refinement of the clustering according to group size and delay constraints. Each network bin corresponds to a range of IP addresses. The classifier maintains a table with an entry for each of the prefix-based clusters. The first step of clustering uses the longest prefix matching of IP address to assign the node to a network bin. Then, the second step clusters the receivers according to constraints of group size (which are imposed by fanout limitations of the nodes in the cluster) and delay constraints . After assignment to a prefix bin the nodes are further clustered within the bin by selecting a set of cluster leaders and partitioning the network delay space using Delaunay triangulation.
In the communication interest space, nodes are clustered using the overlap distance function (waste distance function only - (3.5)) using k-Means, using the method described in section 3.1.
The fusion classifier labels the nodes using a non-linear combination of the output of the network distance classifier and communication interest classifier such that cardinality constraints are satisfied (the number of nodes in the cluster is bounded) .
The steps of the clustering method are as follows:
1. Construct sub-clusters by intersecting the network distance clusters with communication interest clusters; each resulting sub-cluster contains only nodes with the same network bin label and communication interest label; 2. Computer the distances between the network positions of the centers of sub-clusters and the distance between the communication interests of sub-clusters 3. Merge the sub-clusters until the number of remaining clusters is L (the constraint on the number of clusters) by: sorting the distances (weighted function of network and communication interest distance) between the sub-clusters; and form hierarchical aggregation of pairs of sub-clusters by merging the sub-clusters corresponding to the smallest aggregate distance for which the cluster cardinality condition is satisfied.
The final clusters will contain nodes that are close in network distance and have similar communication interest . The clusters can be mapped to a set of L cluster leaders (servers) , such that the constraint on the forwarding capacity of the servers is satisfied, and the number of communication groups supported per cluster leader and the average network distance between the nodes in the cluster is jointly minimized.
While clustering in the network space domain or based on receiver communication interest are individually useful, using both -network and receiver communication interest information - allows optimization of the communication infrastructure according to network QoS and application' constraints. This enables a communication performance gain. Optimizing the communication infrastructure according to both network and communication interest parameters enables efficient grouping by QoS constraints . Since the network parameters are taken into account prior to mapping the communication interest groups into multicast groups, multi-attribute clustering^ leads to better usage of available forwarding capacity for several multicast communication trees can be constructed for each multicast group. Additionally, the communication efficiency can be traded for the quality of group communication by adequate selection of clustering method parameters .
The trade-off for better performance is the complexity of indexing and managing monitored network data and receiver interest. A straightforward approach for small overlays is the centralized management of network and client communication interest. Large network overlays may use a distributed management of network overlay, delegating the communication interest clustering to several control nodes that manage partitions of the overlay.
Multi-type attribute clustering has application in various group communication and data distribution areas. In collaborative interactive applications, the participants are grouped dynamically based on their communication interest while the underlying network overlay minimizes the delay between participants in the same group. Session management for distributed interactive applications requires optimal grouping of receivers to minimize the communication waste, especially when the data rate is high, while also imposing constraints on the end-to-end delay. Such problem can be modeled as a multi-type attribute clustering with constraints formulated in the network delay domain.
Multi-type attribute clustering also provides the mechanisms that support network virtualization: assignments of node identifiers based on application-level semantics and network position parameters. The virtualized ID allocated to network overlay node uses node position coordinates in the virtual network delay space and the mapped parameter representing node communication interest. Distributed look-up applications use such mappings to increase the efficiency (e.g. by directing the search to selected nodes based on their identifier instead of flooding the search query to all nodes in the overlay) of the distributed search by reducing the communication bandwidth per each search operation and increasing the response time of the distributed search (e.g. reducing the average hop count of search query routing) .
Multi-type attribute clustering can be used to support location- based services in mobile applications. The participating nodes have a network position obtained by referencing to a local or global positioning system. In addition, selected nodes provide services (such as streaming data services) , which can be accessed by mobile receiver nodes based on their interest and proximity to the nodes providing the service. Receiver nodes are clustered according to their communication interests (data requests), network proximity to server nodes, and capacity limitations of the node providing the service.
Figure 2 a high level block diagram of a computer 200 for performing the tasks shown in Figure 1. The computer 200 comprises a processor 210 as well as a memory 220 for storing control programs 221, including clustering algorithms 222, and data structures 223 and the like. The processor 210 cooperates with conventional support circuitry 230 such as power supplies, clock circuits, cache memory and the like as well as circuits that assist in executing the software routines stored in the memory 220. As such, it is contemplated that some of the process steps discussed herein as software processes may be implemented within hardware, for example, as circuitry that cooperates with the processor 210 to perform various steps. The computer also includes input-output circuitry 240 that forms an interface between the various functional elements communicating with the computer 200.
Although the computer 200 is depicted as a general purpose computer that is programmed to perform various control functions in accordance with the present invention, the invention can be implemented in hardware, for example, as an application specified integrated circuit (ASIC) . As such, the process steps described herein are intended to be broadly interpreted as being equivalently performed by software, hardware, or a combination thereof .
While the foregoing is directed to embodiments of the present invention, other and further' embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.

Claims

1. A method of constructing a multi-type feature vector comprising the steps of: obtaining a user's communication interest; obtaining network attributes; obtaining application attributes; and forming a feature vector based on the obtained communication interest, network attributes, and application attributes.
I 2. A method of clustering a multi-type vector space comprising the steps of: obtaining network attributes from a network having a plurality, of nodes; obtaining application attributes of an application; and clustering the network nodes based on the obtained network attributes and on the obtained application attributes .
3. The method of claim 2 such that clustering is performed by a fusion method in which network nodes are clustered in each attribute space on subspace classifiers .
4. The method of claim 2 such that clustering is performed by a nested method in which network nodes are initially clustered based on a sub-set of attributes and then re-clustered by iteratively considering additional attributes .
5. The method of claim 2, 3 and 4, further comprising forming network delay maps and forward capacity maps from the obtained network attributes, and such that clustering is based on the formed network delay maps and on forward capacity maps .
6. The method of any of claims 2 to 5, further comprising obtaining client communication interest and clustering the network nodes based on the obtained client communication interest.
7. The method of any of claims 2 to 6, in which obtaining application attributes includes obtaining information regarding collaborative usage of the application.
8. The method of any of claims 2 to 7, in which obtaining network attributes includes obtaining network path loss information, and such that clustering is based on the path loss information.
9. The method of any of claims 2 to 8, such that clustering is based on bandwidth constraints .
10. The method of any of claims 2 to 9, such that clustering is based on a weighted distance function modeled from normalized attribute subspace metrics.
11. A method of clustering network nodes comprising the steps of: forming network attribute maps of network constraints; forming a communication interest space map of application constraints; extracting feature vectors from the communication interest space map; extracting network feature vectors from the network attribute maps; obtaining network quality of service constraints; and forming a list of labeled nodes based on network and application constraints .
12. The method of claim 11, wherein forming network attribute maps includes the steps of : forming delay maps from measured network delays; forming a path loss map based on network path losses; forming a bandwidth map based on the node bandwidths; and forming a forwarding capacity map based on the forwarding capacity at the network nodes .
13. The method of claim 11 or 12, further including clustering based on the feature vectors and on network quality of service constraints.
14. A computer readable media for storing a computer program that performs the steps of: obtaining network attributes from a network having a plurality of nodes; obtaining application attributes; and clustering the network nodes based on the obtained network attributes and on the obtained application attributes.
15. The computer readable media of claim 14 in which the computer program performs clustering using a fusion method and such that network nodes are clustered in each attribute space and on subspace classifiers.
16. The computer readable media of claim 14 in which the computer program performs clustering based on a sub-set of attributes and then re- clusters by iteratively considering additional attributes .
17. The computer readable media of claim 14, 15 or 16 in which the computer program forms network delay maps and forward capacity maps from the obtained network attributes, and such that clustering is based on the network delay maps and on the forward capacity maps .
18. The computer readable media of any of claims 14 to 17 in which the computer program obtains client communication interest and clusters the network nodes based on the client communication interest.
19. The computer readable media of any of claims 14 to 18 in which the computer program obtains application attributes regarding collaborative usage.
20. The computer readable media of any of claims 14 to 19 in which the computer program obtains network attributes that include network path loss information, and such that clustering is based on the path loss information.
PCT/GB2004/004984 2003-12-01 2004-11-25 Node clustering based on user interests, application requirements and network characteristics WO2005055519A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/725,298 2003-12-01
US10/725,298 US7975035B2 (en) 2003-12-01 2003-12-01 Method and apparatus to support application and network awareness of collaborative applications using multi-attribute clustering

Publications (1)

Publication Number Publication Date
WO2005055519A1 true WO2005055519A1 (en) 2005-06-16

Family

ID=34620279

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2004/004984 WO2005055519A1 (en) 2003-12-01 2004-11-25 Node clustering based on user interests, application requirements and network characteristics

Country Status (2)

Country Link
US (2) US7975035B2 (en)
WO (1) WO2005055519A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158962A (en) * 2010-02-11 2011-08-17 华为技术有限公司 Clustering method, resource allocation method and related equipment for base station cooperation
US20130218887A1 (en) * 2012-02-16 2013-08-22 Accenture Global Services Limited Method and apparatus for generating and using an interest graph
CN112100160A (en) * 2020-11-05 2020-12-18 四川新网银行股份有限公司 Elastic Search based double-activity real-time data warehouse construction method

Families Citing this family (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7761569B2 (en) * 2004-01-23 2010-07-20 Tiversa, Inc. Method for monitoring and providing information over a peer to peer network
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
US7568018B1 (en) * 2004-03-19 2009-07-28 New Boundary Technologies Inc. Dynamic identification and administration of networked clients
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
US7512379B2 (en) * 2004-10-29 2009-03-31 Hien Nguyen Wireless access point (AP) automatic channel selection
US7519385B2 (en) * 2004-10-29 2009-04-14 Hien Nguyen Wireless access point (AP) automatic channel selection and automatic power adjustment
US7616966B2 (en) * 2004-10-29 2009-11-10 Hien Nguyen Determining optimal access point locations for access points that perform automatic channel selection and automatic power adjustment
CA2586763C (en) 2004-11-08 2013-12-17 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9075657B2 (en) 2005-04-07 2015-07-07 Adaptive Computing Enterprises, Inc. On-demand access to compute resources
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
DE102005014761A1 (en) * 2005-03-31 2006-10-05 Siemens Ag Method for arranging object data in electronic cards
US8930365B2 (en) * 2006-04-29 2015-01-06 Yahoo! Inc. System and method for evolutionary clustering of sequential data sets
US7904456B2 (en) * 2006-09-01 2011-03-08 Robert John Hennan Security monitoring tool for computer network
US7720841B2 (en) * 2006-10-04 2010-05-18 International Business Machines Corporation Model-based self-optimizing distributed information management
US7894463B2 (en) * 2006-11-21 2011-02-22 Oracle America, Inc. Topological approach for improving network and system utilization in a non-uniform network
US7813351B2 (en) * 2007-04-13 2010-10-12 Hewlett-Packard Development Company, L.P. Available bandwidth estimation
WO2009038822A2 (en) * 2007-05-25 2009-03-26 The Research Foundation Of State University Of New York Spectral clustering for multi-type relational data
TWI331868B (en) * 2007-06-11 2010-10-11 Univ Nat Pingtung Sci & Tech Detecting method of network invasion
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8954562B2 (en) * 2007-09-28 2015-02-10 Intel Corporation Entropy-based (self-organizing) stability management
US8397168B2 (en) 2008-04-05 2013-03-12 Social Communications Company Interfacing with a spatial virtual communication environment
US7769806B2 (en) 2007-10-24 2010-08-03 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US7844724B2 (en) * 2007-10-24 2010-11-30 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US20090265449A1 (en) * 2008-04-22 2009-10-22 Hewlett-Packard Development Company, L.P. Method of Computer Clustering
US8160092B1 (en) 2008-08-05 2012-04-17 Xilinx, Inc. Transforming a declarative description of a packet processor
US7949007B1 (en) * 2008-08-05 2011-05-24 Xilinx, Inc. Methods of clustering actions for manipulating packets of a communication protocol
US8311057B1 (en) 2008-08-05 2012-11-13 Xilinx, Inc. Managing formatting of packets of a communication protocol
US8180887B2 (en) * 2008-12-16 2012-05-15 Microsoft Corporation Geolocation mapping of network devices
US9853922B2 (en) 2012-02-24 2017-12-26 Sococo, Inc. Virtual area communications
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US20110153737A1 (en) * 2009-12-17 2011-06-23 Chu Thomas P Method and apparatus for decomposing a peer-to-peer network and using a decomposed peer-to-peer network
US10084856B2 (en) 2009-12-17 2018-09-25 Wsou Investments, Llc Method and apparatus for locating services within peer-to-peer networks
CN102256267B (en) * 2010-05-19 2016-03-23 北京兴科迪科技有限公司 The node clustering method of energy priority in radio sensing network
EP2754272B1 (en) * 2011-09-09 2018-03-21 Nokia Solutions and Networks Oy Method, device and system for providing and selecting candidate nodes for live streaming services
JP5740652B2 (en) * 2012-03-28 2015-06-24 株式会社日立製作所 Computer system and subsystem management method
US9264396B2 (en) * 2012-06-04 2016-02-16 International Business Machines Corporation Workload balancing between nodes in a cluster as required by allocations of IP addresses within a cluster
US9336302B1 (en) 2012-07-20 2016-05-10 Zuci Realty Llc Insight and algorithmic clustering for automated synthesis
US9286047B1 (en) 2013-02-13 2016-03-15 Cisco Technology, Inc. Deployment and upgrade of network devices in a network environment
US9202167B1 (en) * 2013-06-27 2015-12-01 Emc Corporation Automated defect identification and resolution
US9235802B1 (en) * 2013-06-27 2016-01-12 Emc Corporation Automated defect and optimization discovery
US10068205B2 (en) * 2013-07-30 2018-09-04 Delonaco Limited Social event scheduler
US9313091B1 (en) 2013-09-26 2016-04-12 Emc Corporation Analytics platform for automated diagnosis, remediation, and proactive supportability
US9274874B1 (en) 2013-09-30 2016-03-01 Emc Corporation Automated defect diagnosis from machine diagnostic data
US9471594B1 (en) 2013-09-30 2016-10-18 Emc Corporation Defect remediation within a system
US10327197B2 (en) * 2014-01-31 2019-06-18 Qualcomm Incorporated Distributed clustering of wireless network nodes
WO2015168863A1 (en) * 2014-05-06 2015-11-12 华为技术有限公司 Apparatus and method for realizing collaborative work of cells
JP6511951B2 (en) * 2015-05-14 2019-05-15 富士ゼロックス株式会社 Information processing apparatus and program
US10374904B2 (en) 2015-05-15 2019-08-06 Cisco Technology, Inc. Diagnostic network visualization
US9800497B2 (en) 2015-05-27 2017-10-24 Cisco Technology, Inc. Operations, administration and management (OAM) in overlay data center environments
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US10089099B2 (en) 2015-06-05 2018-10-02 Cisco Technology, Inc. Automatic software upgrade
US10033766B2 (en) 2015-06-05 2018-07-24 Cisco Technology, Inc. Policy-driven compliance
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US9967158B2 (en) 2015-06-05 2018-05-08 Cisco Technology, Inc. Interactive hierarchical network chord diagram for application dependency mapping
KR102230903B1 (en) * 2016-01-08 2021-03-23 에스케이텔레콤 주식회사 Cluster-based Network Configuration Method and Apparatus Therefor
CN105871594A (en) * 2016-03-22 2016-08-17 华北电力大学(保定) Method for calculating important degrees of nodes of power communication network
US10218726B2 (en) 2016-03-25 2019-02-26 Cisco Technology, Inc. Dynamic device clustering using device profile information
US10176609B2 (en) * 2016-05-11 2019-01-08 Runtime Collective Limited Analysis and visualization of interaction and influence in a network
US10171357B2 (en) 2016-05-27 2019-01-01 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10931629B2 (en) 2016-05-27 2021-02-23 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10289438B2 (en) 2016-06-16 2019-05-14 Cisco Technology, Inc. Techniques for coordination of application components deployed on distributed virtual machines
US10305824B2 (en) * 2016-07-15 2019-05-28 Sap Se Dynamic hierarchy based message distribution
US10708183B2 (en) 2016-07-21 2020-07-07 Cisco Technology, Inc. System and method of providing segment routing as a service
US10545929B2 (en) 2016-08-31 2020-01-28 Sap Se Metadata versioning in a distributed database
CN107807939B (en) * 2016-09-09 2021-12-28 阿里巴巴集团控股有限公司 Data object sorting method and device
US11546080B2 (en) * 2016-10-07 2023-01-03 Cable Television Laboratories, Inc. Systems and methods for DOCSIS profile management
US10972388B2 (en) 2016-11-22 2021-04-06 Cisco Technology, Inc. Federated microburst detection
US11205103B2 (en) 2016-12-09 2021-12-21 The Research Foundation for the State University Semisupervised autoencoder for sentiment analysis
ES2867860T3 (en) * 2016-12-23 2021-10-21 Cytognos S L Digital information classification method
US10708152B2 (en) 2017-03-23 2020-07-07 Cisco Technology, Inc. Predicting application and network performance
US10523512B2 (en) 2017-03-24 2019-12-31 Cisco Technology, Inc. Network agent for generating platform specific network policies
US10594560B2 (en) 2017-03-27 2020-03-17 Cisco Technology, Inc. Intent driven network policy platform
US10250446B2 (en) 2017-03-27 2019-04-02 Cisco Technology, Inc. Distributed policy store
US10764141B2 (en) 2017-03-27 2020-09-01 Cisco Technology, Inc. Network agent for reporting to a network policy system
US10873794B2 (en) 2017-03-28 2020-12-22 Cisco Technology, Inc. Flowlet resolution for application performance monitoring and management
IT201700074597A1 (en) * 2017-07-04 2019-01-04 Telecom Italia Spa System to manage services in infrastructures defined by software
US10680887B2 (en) 2017-07-21 2020-06-09 Cisco Technology, Inc. Remote device status audit and recovery
CN107517201B (en) * 2017-07-28 2020-11-13 北京航空航天大学 Network vulnerability identification method based on time sequence removal
US10554501B2 (en) 2017-10-23 2020-02-04 Cisco Technology, Inc. Network migration assistant
US10523541B2 (en) 2017-10-25 2019-12-31 Cisco Technology, Inc. Federated network and application data analytics platform
US10594542B2 (en) 2017-10-27 2020-03-17 Cisco Technology, Inc. System and method for network root cause analysis
US11233821B2 (en) 2018-01-04 2022-01-25 Cisco Technology, Inc. Network intrusion counter-intelligence
US11765046B1 (en) 2018-01-11 2023-09-19 Cisco Technology, Inc. Endpoint cluster assignment and query generation
US10798015B2 (en) 2018-01-25 2020-10-06 Cisco Technology, Inc. Discovery of middleboxes using traffic flow stitching
US10999149B2 (en) 2018-01-25 2021-05-04 Cisco Technology, Inc. Automatic configuration discovery based on traffic flow data
US10826803B2 (en) 2018-01-25 2020-11-03 Cisco Technology, Inc. Mechanism for facilitating efficient policy updates
US10574575B2 (en) 2018-01-25 2020-02-25 Cisco Technology, Inc. Network flow stitching using middle box flow stitching
US10917438B2 (en) 2018-01-25 2021-02-09 Cisco Technology, Inc. Secure publishing for policy updates
US10873593B2 (en) 2018-01-25 2020-12-22 Cisco Technology, Inc. Mechanism for identifying differences between network snapshots
US11128700B2 (en) 2018-01-26 2021-09-21 Cisco Technology, Inc. Load balancing configuration based on traffic flow telemetry
US11023752B2 (en) 2018-08-29 2021-06-01 Here Global B.V. Method and system for learning about road signs using hierarchical clustering
CN111339211B (en) * 2018-12-19 2023-09-19 中国移动通信集团重庆有限公司 Method, device, equipment and medium for analyzing network problems
US10805173B1 (en) * 2019-04-03 2020-10-13 Hewlett Packard Enterprise Development Lp Methods and systems for device grouping with interactive clustering using hierarchical distance across protocols
US11258814B2 (en) 2019-07-16 2022-02-22 Hewlett Packard Enterprise Development Lp Methods and systems for using embedding from Natural Language Processing (NLP) for enhanced network analytics
US11601339B2 (en) 2019-09-06 2023-03-07 Hewlett Packard Enterprise Development Lp Methods and systems for creating multi-dimensional baselines from network conversations using sequence prediction models
CN110704624B (en) * 2019-09-30 2021-08-10 武汉大学 Geographic information service metadata text multi-level multi-label classification method
US11671374B2 (en) 2021-07-14 2023-06-06 Cisco Technology, Inc. SaaS application clustering for path probing to support application-based routing
CN115996189A (en) * 2021-10-20 2023-04-21 华为云计算技术有限公司 Network scheduling method, system and equipment
CN116611506B (en) * 2023-07-18 2023-10-03 中国电信股份有限公司 User analysis model training method, user label determining method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0426599A2 (en) * 1989-10-30 1991-05-08 International Business Machines Corporation Method of clustering nodes in a distributed computer network
WO2003043253A2 (en) * 2001-11-13 2003-05-22 Cvidya Networks Ltd. A system and method for generating policies for a communication network

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0637152A1 (en) * 1993-07-30 1995-02-01 International Business Machines Corporation Method and apparatus to speed up the path selection in a packet switching network
US5894556A (en) * 1996-03-21 1999-04-13 Mpath Interactive, Inc. Network match maker matching requesters based on communication attribute between the requesters
US6078946A (en) * 1996-09-10 2000-06-20 First World Communications, Inc. System and method for management of connection oriented networks
US6192401B1 (en) * 1997-10-21 2001-02-20 Sun Microsystems, Inc. System and method for determining cluster membership in a heterogeneous distributed system
US6151601A (en) * 1997-11-12 2000-11-21 Ncr Corporation Computer architecture and method for collecting, analyzing and/or transforming internet and/or electronic commerce data for storage into a data storage area
US6260036B1 (en) * 1998-05-07 2001-07-10 Ibm Scalable parallel algorithm for self-organizing maps with applications to sparse data mining problems
US6272539B1 (en) * 1998-11-18 2001-08-07 International Business Machines Corporation Methods, systems and computer program products for determining and visually representing a user's overall network delay in collaborative applications
US6909700B1 (en) * 1998-11-24 2005-06-21 Lucent Technologies Inc. Network topology optimization methods and apparatus for designing IP networks with performance guarantees
US7272593B1 (en) * 1999-01-26 2007-09-18 International Business Machines Corporation Method and apparatus for similarity retrieval from iterative refinement
US6922699B2 (en) * 1999-01-26 2005-07-26 Xerox Corporation System and method for quantitatively representing data objects in vector space
US7035926B1 (en) * 1999-11-30 2006-04-25 International Business Machines Corporation Real-time monitoring of web activities
US20020029173A1 (en) * 2000-07-12 2002-03-07 Goldstein Michael A. System and method for providing customers with product samples
US6665495B1 (en) * 2000-10-27 2003-12-16 Yotta Networks, Inc. Non-blocking, scalable optical router architecture and method for routing optical traffic
US6907436B2 (en) * 2000-10-27 2005-06-14 Arizona Board Of Regents, Acting For And On Behalf Of Arizona State University Method for classifying data using clustering and classification algorithm supervised
US7363339B2 (en) * 2000-12-22 2008-04-22 Oracle International Corporation Determining group membership
US6944645B2 (en) * 2001-01-12 2005-09-13 Hewlett-Packard Development Company, L.P. Method and system for customizing electronic communications
US7260643B2 (en) * 2001-03-30 2007-08-21 Xerox Corporation Systems and methods for identifying user types using multi-modal clustering and information scent
DE60136491D1 (en) * 2001-03-30 2008-12-18 Nokia Corp METHOD FOR CONFIGURING A NETWORK BY DEFINING CLUSTERS
US7035653B2 (en) * 2001-04-13 2006-04-25 Leap Wireless International, Inc. Method and system to facilitate interaction between and content delivery to users of a wireless communications network
US7203729B2 (en) * 2001-04-20 2007-04-10 Motorola Inc. Method and apparatus for a communication network with nodes capable of selective cluster head operation
US20030025720A1 (en) * 2001-08-03 2003-02-06 Clement Lau System and method for common interest analysis among multiple users
US8543681B2 (en) * 2001-10-15 2013-09-24 Volli Polymer Gmbh Llc Network topology discovery systems and methods
JP3997774B2 (en) * 2001-12-11 2007-10-24 ソニー株式会社 Data processing system, data processing method, information processing apparatus, and computer program
US7133368B2 (en) * 2002-02-01 2006-11-07 Microsoft Corporation Peer-to-peer method of quality of service (QoS) probing and analysis and infrastructure employing same
US20040068667A1 (en) * 2002-10-03 2004-04-08 International Business Machines Corporation Method and apparatus for securing and managing cluster computing in a network data processing system
GB2395805A (en) * 2002-11-27 2004-06-02 Sony Uk Ltd Information retrieval
US20040181607A1 (en) * 2003-03-13 2004-09-16 Zhichen Xu Method and apparatus for providing information in a peer-to-peer network
US7246172B2 (en) * 2003-06-06 2007-07-17 Matsushita Electric Industrial Co., Ltd. Static dense multicast path and bandwidth management
US7788400B2 (en) * 2003-09-19 2010-08-31 Hewlett-Packard Development Company, L.P. Utilizing proximity information in an overlay network
US20050066033A1 (en) * 2003-09-24 2005-03-24 Cheston Richard W. Apparatus, system, and method for dynamic selection of best network service
WO2005034408A2 (en) * 2003-10-01 2005-04-14 Board Of Regents Of The University Of Texas System Wireless network system and method
US7376752B1 (en) * 2003-10-28 2008-05-20 David Chudnovsky Method to resolve an incorrectly entered uniform resource locator (URL)
US7664742B2 (en) * 2005-11-14 2010-02-16 Pettovello Primo M Index data structure for a peer-to-peer network
US8549405B2 (en) * 2006-08-22 2013-10-01 Centurylink Intellectual Property Llc System and method for displaying a graphical representation of a network to identify nodes and node segments on the network that are not operating normally
JP4894550B2 (en) * 2007-02-19 2012-03-14 富士通株式会社 Content distribution system, server apparatus, and content distribution method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0426599A2 (en) * 1989-10-30 1991-05-08 International Business Machines Corporation Method of clustering nodes in a distributed computer network
WO2003043253A2 (en) * 2001-11-13 2003-05-22 Cvidya Networks Ltd. A system and method for generating policies for a communication network

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CETINTEMEL U ET AL: "Self-adaptive user profiles for large-scale data delivery", DATA ENGINEERING, 2000. PROCEEDINGS. 16TH INTERNATIONAL CONFERENCE ON SAN DIEGO, CA, USA 29 FEB.-3 MARCH 2000, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, 29 February 2000 (2000-02-29), pages 622 - 633, XP010378759, ISBN: 0-7695-0506-6 *
HARMER J: "Mobile aware multimedia applications for UMTS: the ACTS On The Move project", PERSONAL, INDOOR AND MOBILE RADIO COMMUNICATIONS, 1997. WAVES OF THE YEAR 2000. PIMRC '97., THE 8TH IEEE INTERNATIONAL SYMPOSIUM ON HELSINKI, FINLAND 1-4 SEPT. 1997, NEW YORK, NY, USA,IEEE, US, vol. 2, 1 September 1997 (1997-09-01), pages 539 - 543, XP010247705, ISBN: 0-7803-3871-5 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158962A (en) * 2010-02-11 2011-08-17 华为技术有限公司 Clustering method, resource allocation method and related equipment for base station cooperation
CN102158962B (en) * 2010-02-11 2014-01-01 华为技术有限公司 Clustering method, resource allocation method and related equipment for base station cooperation
US20130218887A1 (en) * 2012-02-16 2013-08-22 Accenture Global Services Limited Method and apparatus for generating and using an interest graph
US8688717B2 (en) * 2012-02-16 2014-04-01 Accenture Global Service Limited Method and apparatus for generating and using an interest graph
CN112100160A (en) * 2020-11-05 2020-12-18 四川新网银行股份有限公司 Elastic Search based double-activity real-time data warehouse construction method
CN112100160B (en) * 2020-11-05 2021-09-07 四川新网银行股份有限公司 Elastic Search based double-activity real-time data warehouse construction method

Also Published As

Publication number Publication date
US7975035B2 (en) 2011-07-05
US7975039B2 (en) 2011-07-05
US20050120105A1 (en) 2005-06-02
US20090292802A1 (en) 2009-11-26

Similar Documents

Publication Publication Date Title
US7975035B2 (en) Method and apparatus to support application and network awareness of collaborative applications using multi-attribute clustering
US7886039B2 (en) Method and apparatus for providing dynamic group management for distributed interactive applications
Boutsis et al. On task assignment for real-time reliable crowdsourcing
Lorenz et al. QoS routing in networks with uncertain parameters
KR101120847B1 (en) Data overlay, self-organized metadata overlay, and application level multicasting
Riabov et al. Clustering algorithms for content-based publication-subscription systems
Baldoni et al. Content-based publish-subscribe over structured overlay networks
US9602573B1 (en) Automatic clustering for self-organizing grids
US7466656B2 (en) Method, apparatus and program storage device for efficient construction of network overlays through interconnection topology embedding
US20170005877A1 (en) Data object and networking node locators
Garetto et al. Content placement in networks of similarity caches
Beaumont et al. Peer to peer multidimensional overlays: Approximating complex structures
CN101330529B (en) Method for distributing address of self-pruning type tree-shaped structure network
US20050120088A1 (en) Method and apparatus for virtualizing network resources
Soenen et al. A model to select the right infrastructure abstraction for service function chaining
Tato et al. Designing overlay networks for decentralized clouds
Casalicchio et al. Distributed subscriptions clustering with limited knowledge sharing for content-based publish/subscribe systems
Viana et al. Easily-managed and topology-independent location service for self-organizing networks
Popescu et al. Network overlays for efficient control of large scale dynamic groups
Zhang et al. A reinforcement learning based distributed search algorithm for hierarchical peer-to-peer information retrieval systems
Anandaraj et al. An efficient QOS based multimedia content distribution mechanism in P2P network
Waters et al. Optimising multicast structures for grid computing
Su et al. Cognitive virtual network embedding algorithm based on weighted relative entropy
Sekine et al. Hierarchical aggregation of distributed data for sensor networks
Yilmaz et al. Surveying formal and practical approaches for optimal placement of replicas on the web

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

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

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

122 Ep: pct application non-entry in european phase