Re: [ProtoPeer-general] ProtoPeer suggestion and routing protocol question
Status: Alpha
Brought to you by:
wojtg
From: Wojciech G. <wg...@in...> - 2009-10-02 14:02:21
|
Hi, The Peer class was never intended to have multiple interfaces. The Peer exposes only a single network interface to the applications (peerlets) running on the peer. The "network interface" name might be a bit misleading since it's not like a eth0 or wlan0 ;) It's a message passing interface. I'm not sure what exactly is the goal here, but as Frank mentioned in one of his posts, modeling routing sounds like something that should be done at the lower layer in the ProtoPeer architecture, i.e. at the network model layer (NetworkInterface, NetworkInterfaceFactory, Topology) instead of at the application layer (Peer, Peerlets). The flow-based network model is probably the right place to implement this type of stuff, more specifically, you could try to subclass the Topology class to have more control over routing. Another way to do that would be to implement a simple NetworkInterface which would internally be using multiple NetworkInterfaces and do the "routing". In a sense, it would emulate a multi-home node, but to the application it would still appear as a single interface. The advantage of doing all this at a lower layer is that you can then simply take a BitTorrent implementation (in ProtoPeer) and run it on top of your network model, to see what ASes the data crosses. If you go for the multi-interface Peer it might break the current applications which are designed to work with the single-interface Peer. We would need to considerably rework the class hierarchy to avoid that, which sounds like effort ;) Cheers, Wojtek > Hello, > > I'm working on intra-AS simulation in ProtoPeer. I've been creating some > new classes and working with already existing ones. > My major suggestion it that it would be nice to have a superclass of > Peer to use it in functions like > protopeer.network.NetworkInterface.setHostPeer(Peer hostPeer). Now It > takes a Peer as a parameter which means that I cannot pass my object > called Router (which cannot extend Peer because it has different > functionality, but has multiple interfaces). > > I would also like to ask if anyone has come accross a simple (single > area) OSPF implementation in Java that I could use for ProtoPeer (or > maybe other, simple routing protocol). > > Best regards, > Krzysztof > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > ProtoPeer-general mailing list > Pro...@li... > https://lists.sourceforge.net/lists/listinfo/protopeer-general > ---------------------------------------------------------------------- Afera Hazardowa- O co tu chodzi? Sprawdz >>> http://link.interia.pl/f238e |