i hope i get at least some of theis right
use_write_queue is a flag that esentially is used to distinguish between UDP and TCP
see for instance the function sock_wfree()
when it attempts to wake up possible sleepers on the socket it checks
use_write_queue
Code:
if (!sk->use_write_queue)
sk->write_space(sk);
basically UDP packets don't use the que to the sk_buffs.
they just either can transmit and do or fail.
i think blocking UDP packets do go in the wait cue with the longest possible wait (when memory if full) for the sk_buffs but then again either transmit or fail. they never get into the linked lists called buffer queues that exist for each buffer don't get priority set and like that.
see include/linux/skbuff.h
all i know about the others is RTO is Retransmission
Time Out
see /include/linux/tcp.h
http://www.faqs.org/rfcs/rfc2988.html