Skip to main content

Doubts about RDV

9 replies [Last post]
benus_ying
Offline
Joined: 2007-08-10
Points: 0

Hi all,

I have one doubt aouth the RDV. if one peer becomes the rdv in one child PeerGroup, Does that mean meanwhile it becomes the rdv in the parent PeerGroup?

If I want to propagate msg from child PeerGroup to parent PeerGroup, how can I do?Should connect to rdv in parent PeerGroup firstly?

the scenario i met is the message should be visible in child PeerGroup and his parent or grandparent PeerGroup, excluding the neighbor PeerGroup(same level to child PeerGroup).How to do?

Thanks in advance

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
benus_ying
Offline
Joined: 2007-08-10
Points: 0

Thanks a lot

benus_ying
Offline
Joined: 2007-08-10
Points: 0

new question

benus_ying
Offline
Joined: 2007-08-10
Points: 0

Thank you for your reply.

and, i have another question. What is the relationship between parent and child peer group?Could one peer in the child peer group get message from parent group without connect to parent peer group. I get confused.

I want to create a peer group hierarchy, which looks like location hierarchy. for example: peergroup1(China) ---> peergroup2 (Shanghai) ----> peergroup3 ( one specific street). and, i hope that some specific things happened in peergroup 3 could be visible to peergroup2 and peergroup1. because street is belong to Shanghai and Shanghai is belong to China.
so, my initial idea is connecting to peergroup3 and propagating message, the rdv in peergroup3 can walk to peergroup2 and peergroup2 walk message to peergroup1. now, i know it is not working. the only way i guess is to connect to the three peergroups respectively, is it correct?

keesp
Offline
Joined: 2007-05-22
Points: 0

Hi,

The peergroup hierarchy has to be seen as a means to isolate peers. The netppergroup/worldpeergroup is always the top of the hierarchy, and is used to broadcast advertisements about your top peergroup (e.g. China). Then peers can 'move down' the hierarchy by discovering advertisments in each peergroup which leads them further down the hierarchy.

so, although what you want is possible, you have to wonder if you want to organise your hierarchy this way. What happens, is that the further down the hierarchy you come, the fewer peers will be found, which makes it harder to discover them. What is probably a better solution is to have one application peergroup, and that you make the hierarchy in a different way, for instance by advertising module services that reflect the hierarchy. What i mean by this is that you publish a module advertisment (service) of which the name will be 'myService' and additional information is given to designate the hierarchy: (e.g "level" = "china.shanghai.mystreet").
This way you are sure that users of your application will find sufficient peers to make a good discovery, while your application can still differentiate between various levels in your hierarchy.

Cheers

Kees

benus_ying
Offline
Joined: 2007-08-10
Points: 0

thank you very much for your reply.

Although I do not get your ideal clear. I am thinking over it following your suggestion.

keesp
Offline
Joined: 2007-05-22
Points: 0

Remember that in a P2P infrastructure, you always have to consider that there is a CHANCE that you will discover other peers. This chance improves the more peers there are, so you will discover more peers in the peergroup 'China', than in the peergroup 'myStreet'. If you build your hierarchy around the peergroups, then a lot of peers will try to subscribe to the 'mystreet' peergroups, find nothing, so will move up the hierarchy to discover and publish the higher level, with a good chanve that they will miss each other, which results in a lot of 'islands' that basically want to be connected, but have not been able to do so. If, instead you make one large peergroup 'myPeergroup', with a lot of subscribers, the chance is much bigger that all users will connect to the correct peergroup.

benus_ying
Offline
Joined: 2007-08-10
Points: 0

Thanks again for your further reply
My idea is not just using discovery mechanism of DiscoveryService which alway takes long time.Actually, I use a node
repository which originated from MyJxta to store all peers' info including advertisement. Each peer or peer group will be set in
a node and found a node tree by the peergroup hierarchy. Each peer should keep this tree itself. Once a new peer join the china peergroup. it will send a ResolverQueryMsg to request env data, if any peer get it and response the message converted from that node tree. by this way each peer can get knowledge of the whole network structure.

Could you give me a further explanation of this sentence "If you build your hierarchy around the peergroups, then a lot of peers will try to subscribe to the 'mystreet' peergroups, find nothing". what is the meaning of "find nothing". Does that refer to the scenario that they can not connect each other? Because My inital idea is to create a lot of child peer groups, which just provides one specific service for 2 or 4 users, likes a game,under those location peer group. I am not sure is that working fine.

and, I have another question. please kindly teach me. Each peer in the peer group should connect to a rdv or be a rdv. so.I have a idea. I am going to syn some env data by sending the data to the rdv connected and the rdv walks to other rdvs. then, those rdv will send the data to the peers connected. By this way , all peers in that peer group can be syned. Is that working fine? If using services your suggested in placeof peer group, how to bound the communication in the limited circle?

Sorry for raising so many question.

Message was edited by: benus_ying

keesp
Offline
Joined: 2007-05-22
Points: 0

>Could you give me a further explanation of this sentence "If you build your hierarchy >around the peergroups, then a lot of peers will try to subscribe to the 'mystreet' >peergroups, find nothing". what is the meaning of "find nothing". Does that refer to the >scenario that they can not connect each other? Because My inital idea is to create a lot >of child peer groups, which just provides one specific service for 2 or 4 users, likes a >game,under those location peer group. I am not sure is that working fine.

My remark was basically concerned with peer discovery. If you start a discovery service in a peergroup with few peers, then there is a chance that you will not find them. You seem to circumvent this problem by taking a different approach, of which I know very little, but which seems interesting.

>Each peer in the peer group should connect to a rdv or be a rdv. so.I have a idea. I am >going to syn some env data by sending the data to the rdv connected and the rdv >walks to other rdvs. then, those rdv will send the data to the peers connected. By this >way , all peers in that peer group can be syned. Is that working fine? If using services >your suggested in placeof peer group, how to bound the communication in the limited >circle?

I would be careful with syncing data this way, as you may produce a lot of overhead and get maintenance problems as well. You will basically be implementing a sort of 'hubs' (RDV) with specific behaviour with respect to the edge peers. This is possible, but tends a bit (if I understand you correctly) to a client-server architecture. The idea of P2P is that all peers can in principle perform the same services, so a P2P approach would be to develop a 'sync' service that the peers can start up. They may broadcast a 'sync' request message , after which the peers with updated info will return this info, probably with a time stamp to reflect the update moment (and propagate the request). As a result, the sync requests will become less as more peers are synced.

A client-server architecture may probably be less information-dense, but then your question becomes whether you really need a P2P approach, or could settle for a server instead

>Sorry for raising so many question.

no worries...that's what the forum is for!

Cheers

Kees

adamman71
Offline
Joined: 2007-01-31
Points: 0

> I have one doubt aouth the RDV. if one peer
> becomes the rdv in one child PeerGroup, Does that
> mean meanwhile it becomes the rdv in the parent
> PeerGroup?
No.

> If I want to propagate msg from child PeerGroup
> to parent PeerGroup, how can I do?Should connect to
> rdv in parent PeerGroup firstly?
Propagation only happens in a given peergroup. Hence, if you want to propagate in parent, you need to be "connected" to parent indeed.

> > the scenario i met is the message should be
> visible in child PeerGroup and his parent or
> grandparent PeerGroup, excluding the neighbor
> PeerGroup(same level to child PeerGroup).How to do?
You have to access each peergroup and make sure the message is propagated in each group. JXSE won't do it automatically for you.