I read a book, years ago, about Java. One of the last chapters was about how to create connections and send/reveice messages between a computer and a server.
Now I need to create a connection between two computers in the same network (peer to peer, or what is it called). The examples in the book used java.net.MulticastSocket to create a connection to a server. When I try the same with my second computer (connected in same network), I get a UnknownHost-exception.
Does anybody know how to create a connection between two computers in same network?
I would like to know how to send and receive messages/bytes too.
Thanks in advance
01-02-2009, 04:59 PM
do you mean something like a P2P/IM client type of thing?
Well, I mean a connection between two computers, a connection without a server, so the applications could "talk" by the network. I'm making a game that could be played in multiplayer between computers in same network (without any server). I just want to send messages (bytes of code) between computers.
Example: Computer 1 handles a key press (arrow down) and sends the command to Computer 2. Every single computer computes the command/key press, and draws the new game area with the character owned by Computer 1 (player 1) one square down.
Peer to peer - Yes, maybe you could call this connection that. I mean, there is no server involved.
Instant Messaging - Well, there is a chat function in my game (or will be) and I must be able to send messages, but it's not only a chat program...
I think every computer must be like a server (listen to ports, accept connections etc.), but I don't know how to do it.
I am maybe not good at explaining. Thanks for helping me!
01-03-2009, 07:30 AM
no you're right. every computer in the network is both a client and a server. you just need to have 2 threads on every machine, one to send data and another to receive data.
01-03-2009, 03:01 PM
But how do I create a connection? I've tried with java.net.MulticastSocket: Computer 1 = 192.168.0.101
Computer 2 = 192.168.0.102
The result I got was "java.net.SocketException: Not a multicast address". I need something to connect peer to peer inside a network, not between a public server (like google.com).
01-03-2009, 03:47 PM
do you have socket servers running on each of those IPs? i believe you need to have a socket server on each group member in the multicast socket group.
it's a bit old, but should give you a decent start