[Nottingham] Easy network programming

Charles Samuels charles at kde.org
Fri May 11 17:18:21 BST 2007


Joshua Lock wrote, on Friday 2007 May 11:
> Hi Charles!
>
> On 11 May 2007, at 06:04, Charles Samuels wrote:
> > Have you considered using something like Qt?
>
> I have now, I didn't realise Qt had network features. Or at least
> assumed they where one of the non-free features. I'll look into it.

Pretty much all of Qt is Free.

> > And as it is, of course anything that works over a LAN will work
> > over the
> > internet, assuming you use the Internet Protocol.
>
> Of course! I'm worried about things like the library automatically
> doing things like NAT traversal and whatever else makes communicating
> over the Internet a pain.

Well, unless you find a UPNP library, you will have problems with NAT 
transversal to a certain extent. Going to the internet through nat is not a 
problem at all, but you won't be able to address the computer inside the NAT 
from outside the NAT.

So you can initiate a TCP connection from inside the NAT to another machine, 
and they'll be able to speak back and forth, but you won't be able to 
initiate a connection to a *Server* inside the NAT in any case (without 
UPNP).

In short, As long as the server is not NATted, you'll be fine.

>
> > Hi NLUG, btw :)
>
> Hi :)
>
> > Charles
> > ... who takes the moment to also sell his own project, faith:
> > http://www.derkarl.org/faith/docs/classFaith_1_1Socket.html
>
> Faith looks quite nice, mind if I ask what the inspiration behind it is?
I was... bored?

> Charles; what's the inspiration for Faith? A totally Free Qt like
> library?

Well, Qt is totally free, Faith is just LGPLed. I was just bored and it looked 
like fun. :)

Charles
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://mailman.lug.org.uk/pipermail/nottingham/attachments/20070511/d9886ac6/attachment.bin


More information about the Nottingham mailing list