Из вашего описания не похоже, что вам нужно больше, чем то, что sendto()
/ recvfrom()
уже делает.Вы можете также рассматривать их как свой «API» для передачи сообщений.Как только вы настроите / откроете сокет, просто отправьте / recv по мере необходимости.Вам не нужно беспокоиться о разных портах для отправки / получения;Ваш пример в порядке.К вашему сведению, вы можете отправить / recvfrom на том же сокете.