bug in tcp/ip on windows?

Filip Konvička filip.konvicka.removethisantispamtoken at logis.cz
Thu Nov 24 10:04:56 CET 2005


> Sorry for not playing mutch attention yesterday night ;-), you indeed did 
> post a sample code.

No problem :-)

> I don't have the possibility to run your code right now, but it looks OK 
> to me. I will give it a try on Windows this evening.

Could you please take a look on what I found out (see my other post)?

> I would like to comment a bit on your first mail, see below:
> 
> You say that Mozart is limited when it comes to the backlog parameter.
> Actually, what you're using is a high level API for socket operations,
> i.e., the class Open.socket. This class is a simple, and thus not that
> flexible abstraction of the whole socket operations one could imagine. So,
> you're right saying that Open.socket does not offer you the possibility to
> specify the backlog parameter.
> 
> Nevertheless, for more advanced operations on sockets, one would use the
> OS module (see Chapter 20 Operating System Support: OS from 
> http://www.mozart-oz.org/documentation/system/node55.html). There one can 
> find correspondence to most of the Unix operations such as listen, bind,
> sendTo, receiveFrom. So, one does have the possibility in Mozart to
> specify the queue length for sockets waiting to be accepted.
> 
> So, one idea would be to rewrite your socket interaction by using the
> OS module, and see what would its flexibility bring to you.

There is no problem in Open.socket - in fact, the backLog parameter 
*can* be specified to Open.socket's meth listen and is passed correctly 
to OS.listen. I just have a feeling that on Windows you can not get past 
the WinSock1's SOMAXCONN=5 limit.

Thanks!

Cheers,
Filip




More information about the mozart-hackers mailing list