Правильно ли выделять целый порт под определенную задачу на сервере?
Нет. Выделять 100500 портов под каждый вид запросов - иррационально.
Нужен какой-нибудь протокол поверх TCP - например HTTP
Если хотите реализовать свой - посмотрите, как устроен он, например.
Если взглянуть на вопрос в ключе потенциальных повышений нагрузки и расширения функционала - то один порт, на одном хосте окажутся узким местом. Так что можно смотреть и шире - сервисы расползутся по разным хостам и т.п. Или не смотреть на это.