Quand utiliser Ajuster MSS
Symptom
TCP transferts échouent/délai d’attente après un certain temps.
Par exemple, le client essaie d’accéder à un site Web et la page Web ne se charge pas et PC le délai d’attente se produit ou ne se charge que partiellement.
Navigateur peut donner « ERR_CONNECTION_TIMED_OUT » ou charger uniquement des parties de la page Web.
La page Web peut prendre beaucoup de temps à charger complètement sur le navigateur.
Environment
Tout TCP transfert basé.
Les questions d’accès au site Web ont été abordées dans ce document.
Cause
Vérification initiale :
L’erreur ou l’état du navigateur doit d’abord être vérifié pour voir si le problème n’est pas causé par des problèmes avec le serveur.
Si les codes d’erreur http de 500 ou 400 séries sont vus alors il peut être serveur ou l’autorisation question liée.
S’il n’y a pas de tels codes d’erreur et si le est en mesure de résoudre PC le , alors le problème pourrait être dû à des problèmes sur le URL MTU chemin.
Topologie :
Hypothèses :
Le MTU réglage sur l’interface eth1/1 du routeur R1 est de 1400 Octets.
10.10.40.1 est le serveur web qui héberge le site abcd.com web.
abcd.com sur le client PC se résout au 10.10.40.1
Le site web ne charge pas sur le client PC .
Resolution
Comment baisse-t-il MTU Affect TCP Communication :
Dans ce cas, puisque MTU l’interface eth1/1 du Router R1 est définie à 1400 Octets, les paquets de taille plus de 1400 Octets devront être fragmentés avant d’être envoyés hors de cette interface.
Si le drapeau Ne fragmente pas DF () est défini sur l’en-tête du paquet, alors le Routeur R1 devra laisser tomber le paquet et envoyer à la source le code d’erreur « Fragmentation nécessaire IP mais bit set » DF (type 3, code 4). ICMP
La TCP plupart des applications basées auront le bit réglé sur DF IP l’en-tête.
Considérez qu’un paquet de données de taille 1500 Octets du serveur 10.10.40.1 est envoyé au Client 10.10.10.1.
Étant donné DF que le drapeau de ce paquet sera défini, routeur R1 va laisser tomber le paquet en essayant de l’envoyer hors de l’interface ethernet 1/1.
Cela fera tomber tous les paquets de taille plus de 1400 Octets et donc la page Web ne se chargera pas sur le client.
Si SSL ( ) connexion est HTTPS utilisée, puis les paquets avec le certificat serveur sont généralement de gros paquets qui peuvent être abandonnés causant SSL la poignée de main / TLS échouer.
Comment trouver MTU Problème et optimal MSS :
Il n’est pas toujours possible d’avoir accès à tous les hôtes du chemin pour vérifier les MTU
A PC MTU paramètres.
Les paramètres suivants doivent être définis lors de la mise au ping.
1. Ne fragmentez pas bit (-f)
2. Taille (-l)
Ci-dessous la sortie est prise à partir de Windows PC . Les commandes respectives devront être utilisées sur les machines exécutant un autre OS .
Comme nous l’avons vu dans les sections MTU ci-dessus, puisque l’éth1/1 sur routeur R1 est réglé à 1400 Octets, le test ping sur le client affichera les résultats ci-dessous.
C:\Users\skadmin>ping 10.10.40.1 -f -l 1472 Pinging 10.10.40.1 with 1472 bytes of data: Packet needs to be fragmented but DF set. Packet needs to be fragmented but DF set.La raison de choisir 1472 Octets comme taille pour le premier test est parce que le paquet complet sera alors 1500 Octets.
Paquet complet = 20B ( IP En-tête) + 8B ( ICMP En-tête) + 1472B (charge utile) = 1500 Octets.
Nous pouvons voir que ICMP le message « Fragmentation DF nécessaire, mais bit set » message revient.
Nous effectuons donc plusieurs tests Ping de ce genre pour découvrir la taille maximale du paquet qui est capable d’atteindre le serveur et de revenir sans obtenir de fragment.
C:\Users\admin>ping 10.10.40.1 -f -l 1440 Pinging 10.10.40.1 with 1440 bytes of data: Packet needs to be fragmented but DF set. C:\Users\admin>ping 10.10.40.1 -f -l 1350 Pinging 10.10.40.1 with 1350 bytes of data: Reply from 10.10.40.1: bytes=1350 time=447ms TTL=58 C:\Users\skadmin>ping 10.10.40.1 -f -l 1380 Pinging 10.10.40.1 with 1380 bytes of data: Packet needs to be fragmented but DF set. C:\Users\admin>ping 10.10.40.1 -f -l 1372 Pinging 10.10.40.1 with 1372 bytes of data: Reply from 10.10.40.1: bytes=1372 time=438ms TTL=58 C:\Users\admin>ping 10.10.40.1 -f -l 1373 Pinging 10.10.40.1 with 1373 bytes of data: Packet needs to be fragmented but DF set.Diviser et conquérir la méthode a été utilisée pour trouver la valeur Max où le ping réussit.
Basé sur les sorties de test ci-dessus, il peut être vu que le ping fonctionne lorsque la taille est de 1372 Octets et échoue quand il est 1373 Octets.
Cela signifie que seul un paquet de 1400 Octets sera en mesure d’atteindre le serveur et de revenir sans se fragmenter.
1372 Octets + ICMP en-tête 8 Octets + IP en-tête 20 Octets = 1400 Octets.
Pour déterminer l’Optimal MSS qui peut être utilisé, prenez le résultat du test ci-dessus qui est de 1400 Octets et soustrayez l’en-tête potentiel et TCP la valeur de IP l’en-tête.
1400 Octets - ( IP en-tête 20 Octets + TCP en-tête 20 Octets) = 1360 Octets.
Ainsi, MSS l’Optimal qui peut être utilisé est de 1360 Octets.
Comment utiliser cet optimal : MSS La plupart
des pare-feu et des routeurs ont la capacité d’ajuster la valeur sur une connexion à travers MSS TCP eux.
Ils peuvent réécrire la MSS valeur sur le et les SYN SYN ACK paquets échangés entre le Client et Sever.
Cette fonctionnalité peut être utilisée pour définir la MSS valeur à la valeur optimale calculée MSS 1360 Octets de sorte que le client et le séver ne construiront leurs segments qu’à cette taille.
Une fois TCP que IP les en-têtes et sont ensuite ajoutés, la taille du paquet complet sera égale à 1400 Octets, qui est la taille maximale du paquet qui peut passer sans fragmentation.
Segment 1360 Octets + TCP en-tête 20 Octets + IP en-tête 20 Octets = 1400 Octets.
Ainsi, le problème de fragmentation sur le chemin peut être évité pour la connexion TCP et les gouttes de paquet peuvent être évitées.
S’il vous plaît noter que même si MSS l’ajustement de la valeur PA firewall sur le résout le problème, le problème n’est pas causé par le Firewall .
Le problème est causé par d’autres hôtes dans le chemin qui ont un réglage MTU inférieur.
Pour PA firewall ajuster la valeur à MSS 1360 Octets, la taille d’ajustement doit être configurée sous forme de 140 octets.
1500 - 1360 = 140 Octets
Configurer MSS la taille d’ajustement
Additional Information
Liens utiles supplémentaires : Comment l’ajustement
se produit automatiquement pour le trafic TCP MSS au-dessus des IPSEC tunnels sur les PA pare-feu
HOW THE PALO ALTO NETWORK FIREWALL HANDLES PACKETS THAT EXCEED THE MTU
HOW TO CONFIGURE MTU AND MSS SETTINGS FROM THE CLI