<Making peer-to-pee keyword searching feasible using multi-level partitioning>
Nodes are grouped to form L levels. Queries are first sent to the root, and root broadcast it to every group in lower level. Nodes always broadcast the query to lower level nodes. At the last level: partition by keywords. Means: each node publishes its keywords to other nodes. (Hash like DHT) So when query arrives the level L, use DHT to locate nodes. Result from lower level merged to root. Utilize skipnet.