title: Why does TCP socket programming need two sockets(one welcome socket and one connection socket) but UDP only needs one?
body: <p>Is this because a TCP connection is a persistent connection, so the server needs simultaneous process many request, therefore needing different connection sockets? </p>
  
  <p>But if a UDP transfer finishes, the next connection will initiate to the same server socket, so UDP only needs one socket.</p>
  
  <p>These are my conjectures.
  Is this correct?</p>