Bạn có thể nghe trên bất cứ cổng nào bạn muốn; nói chung, các ứng dụng người dùng nên nghe các cổng 1024 trở lên (đến 65535). Điều chính nếu bạn có số lượng người nghe thay đổi là phân bổ một phạm vi cho ứng dụng của bạn - giả sử 20000-21000 và CATCH EXCEPTION . Đó là cách bạn sẽ biết nếu một cổng không sử dụng được (được sử dụng bởi một quy trình khác, nói cách khác) trên máy tính của bạn.
Tuy nhiên, trong trường hợp của bạn, bạn không nên gặp sự cố khi sử dụng một cổng được mã hóa cứng cho người nghe, miễn là bạn in thông báo lỗi nếu liên kết không thành công.
Cũng lưu ý rằng hầu hết các ổ cắm của bạn (đối với nô lệ) không cần phải bị ràng buộc rõ ràng với số cổng cụ thể - chỉ các ổ cắm chờ kết nối đến (như chủ của bạn ở đây) sẽ cần phải được nghe và ràng buộc với một cổng. Nếu một cổng không được chỉ định cho một ổ cắm trước khi nó được sử dụng, HĐH sẽ chỉ định một cổng có thể sử dụng cho ổ cắm. Khi chủ muốn trả lời một nô lệ gửi dữ liệu đó, địa chỉ của người gửi có thể truy cập được khi người nghe nhận dữ liệu.
Tôi đoán bạn sẽ sử dụng UDP cho việc này?