ssh and things

For the last couple days twilight has been under a sort of development freeze. I decided that it was time to put some serious effort into making things better for myself and for players outside the USA. Probably the lesser of the two ways that I’ve chosen to do that is what I’ve been pouring a lot of time and effort into lately, and that is ssh support. SSH has support for compression at the transport level, which would make packets smaller and hopefully reduce latency a bit. Unfortunately, so far as I could tell, there was no good library for the server half of ssh. So, I’ve been writing my own sshd. Right now it does the key exchange. I’m working on getting the encryption going. After that the next step appears to be dealing with channel negotiation and finally adding the compression. Overall it’s been very frustrating and very educational. I do have some mild concerns about how resource intensive it will be to have all that crypto to do for every single packet, but we’ll see. I’m using OpenSSL for all my crypto stuff.

The other thing that I’m going to do, but haven’t really started work on yet, is making twilight only redraw what changed, when beneficial. Right now it pretty much redraws the entire screen every turn, and I’m sure I can save a lot of bandwidth by making it not do that.

Since such major changes to the networking and rendering are under way, I decided I probably should avoid doing much work on the rest of the code, plus it’d probably slow me down on the “important” stuff if I was adding gameplay features.

About these ads

Tags:

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s


Follow

Get every new post delivered to your Inbox.

%d bloggers like this: