> The documentation for struct inet_bind_bucket says: > /* There are a few simple rules, which allow for local port reuse by > * an application. In essence: > * > * 1) Sockets bound to different interfaces may share a local > port. > * Failing that, goto test 2. > * 2) If all sockets have sk->sk_reuse set, and none of them are > in > * TCP_LISTEN state, the port may be shared. > * Failing that, goto test 3. > * 3) If all sockets are bound to a specific inet_sk(sk)- > >rcv_saddr local > * address, and none of them are the same, the port may be > * shared. > * Failing this, the port cannot be shared. > .. > > If I understand this correctly the suggestion in the RFC follows this > scheme so the request to mimic TCP/IP stack seems to be fulfilled. I don't see how the proposal fulfills the above requirements (3 may be the key one here). If I understand the proposal correctly, you're wanting to re-use the same port number for all connections (once the port numbers run out) without checking that the local or remote addresses differ. ��.n��������+%������w��{.n�����{���fk��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f