Sign in to follow this  
JamesBell

Peer to Peer gaming toolkit

Recommended Posts

Hello people, It is good to finally join up to these forums, I have been reading them for a few years to help with some OpenGL gaming I've done before. Anyway onto the point of my topic! I'm currently working as part of a small project group to create a peer to peer gaming toolkit. The main idea of this toolkit is to allow developers to easily add p2p network functionality into their games and provide them an API allowing them to choose which methods to use to create an efficient and scalable network implementation. We are currently planning to use PASTRY on the network layer with a slightly modified version of SCRIBE sitting on top of it. My question is, what tools or methods do network developers usually use to test their network implementations. We will be coding both layers in C++. At the moment the team is implementing PASTRY and we would like some enviornment to test our implementation, e.g. to test that messages are routed and node IDs are assigned correctly. I have had a look at honeyd which seems the right kind of tool but I was wondering if anyone else has any wisdom to dispense? If anyone has any advice on how to test network layer implementations or knows a P2P forum where I could ask this question I'd greatly appreciate it. Thanks, James.

Share this post


Link to post
Share on other sites
I usually test my network apps in three stages - first, I run multiple instances of my code on the same system (if possible) and test out things there, and having at least one of the instances running in a debug mode (VC++ 6.0 debugger). Secondly, I install the codebase on the other computers in my home LAN and invite some friends over (and sometimes run multiple instances of the code on each system) - finally, I like to get a couple of beta testers from here, there and everywhere to download the code and have an IRC-chatted test run at a specified time...

Also - it might help to write a "monitor" type of program to go along with your debugging - i.e. something to log all available packets so you can run through the logs later...

Hope this helps...

Share this post


Link to post
Share on other sites
Ah thanks for that. Do you use an application to simulate latency when running multiple instances on your own machine? Also when you run several instances do you have an application to assign IPs for the separate instances?

Share this post


Link to post
Share on other sites
You could also spawn more than one instance of your P2P "objects" on 1 process, enabling you to quickly run automated test.

You could expand that with a runtime log analyzer, making sure each instance output to a different log and you would have an automated tool reporting you any discrepancy between what was sent and what was received.

gizz

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this