Kết nối TCP KHÔNG bị mất? Tôi đã ngắt kết nối internet * dấu chấm than *


2

Câu hỏi này nảy sinh từ một cuộc tranh cãi với một người bạn của tôi. Trong vài tuần qua, tôi đã gặp một hiện tượng kỳ lạ. Tất cả các kết nối của tôi không bao giờ bị phá vỡ khi tôi ngắt kết nối Internet. Ngay cả các phiên ssh vẫn còn nguyên trên các kết nối lại. Làm thế nào là có thể?

Các câu trả lời ở đây nói rằng nó là hoàn toàn bình thường. Sau đó, câu hỏi là: tại sao có được kết nối TCP luôn luôn mất cho một số người sau khi kết nối lại internet ngay cả khi không có NAT ở giữa, đó là trường hợp với người bạn của tôi. Khác với nhà cung cấp internet, cả hai thiết lập đều tương đương nhau: Linux qua quay số.


1
Nếu chúng tôi đang nói chuyện điện thoại, nhưng vì lý do nào đó hãy ngừng nói chuyện, bạn có thể biết nếu tôi vẫn còn ở đó không? Tôi có thể đã đặt điện thoại xuống và đi vào nhà vệ sinh. Bạn không thể biết cho đến khi bạn nói chuyện với tôi và tôi không trả lời. Một số giao thức thêm thời gian chờ để máy chủ không phải nhớ số lượng lớn máy khách vắng mặt. (Tôi nghĩ rằng ssh hỗ trợ thời gian chờ, nhưng cũng hỗ trợ mà không có thời gian chờ).
ctrl-alt-delor

Vì vậy, câu hỏi là: tại sao làm bị mất kết nối TCP sau khi kết nối lại với internet ngay cả khi không có NAT (đó là trường hợp của một người bạn của tôi. Câu hỏi này xuất phát từ tranh chấp giữa chúng tôi)?
Holy Sheet

@richard có ý kiến ​​gì không?
Holy Sheet

Mất kết nối với Richard!
ctrl-alt-delor

2
Như bạn thấy bằng cách cố gắng thu hút sự chú ý của tôi, bạn nhận thấy rằng tôi không còn ở đây nữa. Hoặc ít nhất là thông báo hệ điều hành của bạn và sau đó thông báo cho [bạn] ứng dụng. (tốt Nếu tôi không cố gắng giải thích) Thông thường, kết nối bị mất không đến từ tôi nhưng từ bạn nhận thấy rằng tôi không phản hồi kịp thời.
ctrl-alt-delor

Câu trả lời:


3

Điều này là bình thường. Không có gì trong TCP yêu cầu liên kết phải được bật vĩnh viễn - nếu kết nối không hoạt động (không có dữ liệu gửi hoặc nhận), nó có thể tồn tại miễn là cả hai đầu vẫn mở ổ cắm. (Tất nhiên, nếu một đầu cố gửi dữ liệu và không bao giờ nhận được ACK, cuối cùng nó sẽ đóng kết nối do hết thời gian.)

Thật không may, điều này thường bị phá vỡ bởi các NAT / tường lửa nhà nước; ví dụ: nếu bạn khởi động lại bộ định tuyến gia đình, nó sẽ quên mọi thứ trong bảng NAT của nó và có thể âm thầm thả dữ liệu đến hoặc thậm chí đóng kết nối vì nó không biết máy chủ cục bộ nào chuyển tiếp gói tin tới.


Đối với lời giải thích của bạn, xem cập nhật câu hỏi
Holy Sheet
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.