Tôi biết rằng khi một yêu cầu HTTP được thực hiện, các gói được gửi từ một cổng có số lượng cao có vẻ ngẫu nhiên (ví dụ: 4575) trên máy khách đến cổng 80 trên máy chủ. Sau đó, máy chủ gửi trả lời đến cùng một cổng có số cao, router biết cách định tuyến đến máy khách, và tất cả đã hoàn tất.Cổng nguồn cho HTTP được xác định như thế nào? Có bao giờ va chạm trong NAT?
Câu hỏi của tôi là: Cổng quay lại (4575 trong ví dụ này) được xác định như thế nào? Có phải ngẫu nhiên không? Nếu vậy, trong phạm vi nào? Có bất kỳ ràng buộc nào không? Điều gì xảy ra, ví dụ, nếu hai máy tính trong mạng LAN gửi yêu cầu HTTP với cùng một cổng nguồn đến cùng một trang web? Làm thế nào để router biết cái nào để định tuyến tới máy tính nào? Hoặc có lẽ tình huống này là hiếm hoi mà không ai làm phiền để chống lại nó?
Tôi sẽ rất vui khi nghe downvoters giải thích tại sao họ không thích câu hỏi này. –
Tôi đã không downvote - nhưng tôi đoán nó thực sự là "không phải là một câu hỏi lập trình" - ít nhất là trên bề mặt. – Brad
Thậm chí nếu nó không phải là một câu hỏi lập trình nó có thể khá hữu ích, expecially để có được một ý tưởng chung. Hơn nữa có thể trở nên tiện dụng khi viết kịch bản hoặc mã tùy chỉnh khác –