Проблема с использованием нескольких портов для достижения этого заключается в том, что каждый из ваших клиентов будет иметь определенный номер порта. В зависимости от количества клиентов может потребоваться огромное количество бухгалтерии.
Как правило, для tcp-сервера, который должен обслуживать несколько клиентов, у вас есть «основной» поток, который прослушивает порт и принимает подключения к этому порту. Затем этот поток передает подключенный сокет другому потоку для обработки и возвращается к прослушиванию.
Чтобы получить знания о сетевом программировании Unix, прочитайте " Книга Стивенса "