Dlaczego flaga „nie fragmentuj” jest ustawiona w protokołach https i ssh?


Odpowiedzi:


13

Flaga DF instruuje routery, które normalnie fragmentują pakiet ze względu na to, że jest on zbyt duży dla MTU łącza (i potencjalnie dostarcza go poza kolejnością z powodu tej fragmentacji), aby zamiast tego upuścił pakiet i zwrócił pakiet wymagający fragmentacji ICMP, umożliwiając wysyłanie host, aby uwzględnić niższą MTU na ścieżce do hosta docelowego. Ten proces nazywa się „ wykrywaniem ścieżki MTU ”.

Zasadniczo lepiej pozostawić PMTUD w spokoju i pozwolić mu działać, w przeciwieństwie do sytuacji, w której stos TCP radzi sobie z fragmentami poza kolejnością. Jednak w niektórych przypadkach (głównie gdy niezbędny ICMP jest zablokowany) PMTUD nie działa, a połączenie zostaje zerwane.

Wtedy będziesz chciał, aby flaga DF była rozbrojona - gdy PMTUD nie działa poprawnie i wynikają problemy z połączeniem.


1
Czy istnieje powód szyfrowania ruchu, tj. Nie należy fragmentować ruchu ssh i https?
Aiden Thompson


1
@AidenThompson Ogólnie rzecz biorąc, pozwolenie PMTUD na zrobienie czegoś zamiast pozwolić na fragmentację jest lepsze dla wydajności wszystkich połączeń TCP, w tym SSH i HTTPS.
Shane Madden

2
(Tj. Nie ma to nic wspólnego z szyfrowaniem, a wszystko z TCP).

Jest to jedna z tych rzeczy, na których świat serwerów i sieci nigdy się nie zgodzi.
Smithers
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.