un socket base è un socket puro (indipendentemente dal protolollo utilizzato)
un socket tcp è un'implementazione di quello base adattato per il protocollo tcp..

quando fai acceptSocket crei un riferimento al socket che utilizzi per la comunicazione..

ad ogni acceptSocket viene generato un socket diverso e quindi non è possibile avere duplicati.. (almeno in linea teorica)