![]() |
|
Register | FAQ | The Twelve Commandments | Members List | Calendar | Arcade | Find the Best VPN | Today's Posts | Search |
General Discussion For anything which doesn't fit somewhere else (for PHEX users) |
| LinkBack | Thread Tools | Display Modes |
| |||
![]() For example, I use three nodes (all forced to be ultrapeer) to form a line topology like this: A--->B<---C If I fire a search request from node A (of cource I know some keywords of files in node C), and at node B, the search request can be seen in the search monitor tab, but fail to be found at node C. I replaced sendDynamicQuery in sendMyQuery with directly forwarding query to ultrapeers and leaves, such as: if ( HostManager.getInstance().isUltrapeer() ) { /*return sendDynamicQuery( queryMsg, DynamicQueryConstants.DESIRED_ULTRAPEER_RESULTS );*/ // only forward to ultrapeers if I'm not a leaf. if ( queryMsg.getHeader().getTTL() > 0 ) { msgMgr.forwardQueryToUltrapeers( queryMsg, null ); msgMgr.forwardQueryToLeaves(queryMsg, null); return null; } } At this time, node C can receive the search request, but node A fail to receive any replies. Another interesting thing is that node B can receive reply from C, but can not forward the reply to node A. Any suggestions? |
| |