Anda dapat mendengarkan port apa pun yang Anda inginkan; umumnya, aplikasi pengguna harus mendengarkan port 1024 ke atas (melalui 65535). Hal utama jika Anda memiliki jumlah pendengar yang bervariasi adalah mengalokasikan rentang ke aplikasi Anda - katakanlah 20000-21000, dan CATCH EXCEPTIONS . Itulah bagaimana Anda akan tahu jika suatu port tidak dapat digunakan (digunakan oleh proses lain, dengan kata lain) di komputer Anda.
Namun, dalam kasus Anda, Anda seharusnya tidak memiliki masalah menggunakan port hard-coded tunggal untuk pendengar Anda, selama Anda mencetak pesan kesalahan jika bind gagal.
Perhatikan juga bahwa sebagian besar soket Anda (untuk para budak) tidak perlu secara eksplisit terikat ke nomor port tertentu - hanya soket yang menunggu koneksi masuk (seperti master Anda di sini) perlu dibuat pendengar dan terikat ke port. Jika port tidak ditentukan untuk soket sebelum digunakan, OS akan menetapkan port yang bisa digunakan untuk soket. Ketika master ingin menanggapi seorang budak yang mengirimkan data, alamat pengirim dapat diakses ketika pendengar menerima data.
Saya kira Anda akan menggunakan UDP untuk ini?