[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Pydonkey-general] Re: Todo for pysocket
From: |
Joël Vennin |
Subject: |
[Pydonkey-general] Re: Todo for pysocket |
Date: |
Sat, 30 Aug 2003 15:28:55 +0200 |
User-agent: |
KMail/1.5.3 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Le Samedi 30 Août 2003 14:27, vous avez écrit :
> As demanded, ToDo-List for pysocket:
>
> 1.) UDP support
> Problem:
> - does not fit the structure of pysocket by now, because you have
> always to make sendto(data, address) and recvfrom(data, address)
> Solution:
> - Establishing Pseudo-Static-Connection
> Problem:
> - You never know when a session ends, because often packets
> are only sent once
>
> 2.) SSL-Support
>
> 3.) Protection System:
> - proove against DDOS attacks and garbled packages etc.
> Solutions:
> - Credit Point system like lugdunum (vulnerable as it seems)
> See:
> http://www.emule-project.net/board/index.php?showtopic=24033
> - Problems: How deep can we interact with the socket API in Python?
>
> 4.) Connections ensurance:
> At the moment we connect to a client like this:
>
> def connecty(self,address):
> self.connected = 0
> err = self.socket.connect_ex(address)
>
> if err in (EINPROGRESS, EALREADY, EWOULDBLOCK):
> return
> if err in (0, EISCONN):
> self.addr = address
> self.connected = 1
> self.handle_connect()
> else:
> raise socket.error, err
>
> So we take a connection for established even when it not is already.
> The source is taken from the asynchat.
> I don't if it's going to be a problem, because the connection will
> be lost immediately when it fails, but could result in strange results,
> and even in DDOS-Attacks
> from our side.
>
> 5.) Better bandwidth control
> - the bandwidth control seems to be a little bit inconsistent
> - Solution: integrating it directly into the poll-functions
> - adding second bandwidth control with for example n GB / month
I think this it not useful for now
> - Bug: It is not possible to set up a connection without bandwidth
> control
Sure
> 6.) Priorising Connections
> - there should be a possibility for laying priority on some connections
> Solution: in the poll function priorised connections are always
> checked first or n-th with prio n, so we sort them before ask them
> Problem: in a worse case low-prio connection will never be able
> to send anything
> 7.) Integrating user-defined data must be made easier, when it is needed
> in the protocol
> Solution: Option to add a data-container to the protocol
Explain more ...
> That's it for the moment, tell your ideas,
I think you have resume all the stuff before a first release :p
> Spikeee
Jol
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
iD8DBQE/UKaaOzJ7itUoJpQRAh07AJ9xHWBHzTXadSDdpDdjrN4iVpf3ygCeJSqS
NB4LfIr1cm0UE8UQcMRSbV0=
=vorM
-----END PGP SIGNATURE-----