Under Linux, see the man page for tcp(7). It appears that you can get the number of untransmitted bytes by ioctl(sock,SIOCINQ ... Other stats might be available from members of the structure given back by the TCP_INFO getsockopt() call.
Some Unix flavors may have an API way to do this, but there is no way to do it that is portable across different variants.
If you want to determine wheter to add data or not: don't worry, send will block until the data is in the queue. If you don't want it to block, you can tell it to send(2): send(socket, buf, buflen, MSG_DONTWAIT); But this only works on Linux. You can also set the socket to non-blocking: fcntl(socket, F_SETFD, O_NONBLOCK); This way write will return an error (EAGAIN) if the data cannot be written to the stream.
I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.