Archived

This topic is now archived and is closed to further replies.

bartbert

Client Server Architecture

Recommended Posts

I''ve created a peer to peer card game using .NET remoting, and it all works fine, except that players have to open a port up in their firewall to play. Personal firewalls have become so prevalent these days, and requiring players to open up a port can be a real barrier to game acceptance. Either they don''t want to open up a port for security reasons, or they just don''t know how to do it. So I''m thinking about how I would redo the game using a client server architecture to overcome firewall issues. My question has to do with getting updates to the client. Must each client continually poll the server for updates, or is there some way for the server to notify the client of an update without the client having to open up a port in their firewall to listen on?

Share this post


Link to post
Share on other sites
There is not way the server can update clients without clients waiting on updates via listening on a port if you want to use socket.

Kuphryn

Share this post


Link to post
Share on other sites
Yes, I certainly understand that in order for the client to receive messages initiated by the server, it would have to be listening on a port.

I guess I''m just trying to confirm that if the server initiates a message to the client, then the client would have to open up a port on the firewall to receive that message. But if a client intitiates a request to the server, the data returned from that request would not require the client to open up a port on the firewall.

If the above is true, then it would seem that the only way to have a "firewall friendly" game, is to have the client initiate all requests for data (ie, it has to poll the server). There are lots of commercial games out there that don''t require you to reconfigure your firewall to play them over the internet. I assume that they are using a polling mechanism, but I just wanted to see if there were any other "tricks" to achieve this.

Share this post


Link to post
Share on other sites
The client just has to initiate the connection. The only time there''s a problem is when the person being connected to is behind a firewall. Firewalls as a general rule blocking INCOMMING connections not OUTGOING connections.

Ben

Share this post


Link to post
Share on other sites