Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Convenzioni

Supporto di frame jumbo sull'appliance ASA

Cosa fare se l'ASA non è configurata per i frame jumbo e riceve un frame jumbo?

Cosa succede se l'ASA riceve correttamente un frame jumbo ma cerca di inviarlo tramite un'interfaccia con MTU inferiore?

Informazioni correlate

Introduzione

In questo documento viene illustrato come l'appliance ASA (Adaptive Security Appliance) riceve e trasmette frame Ethernet jumbo.

Prerequisiti

Requisiti

Nessun requisito specifico previsto per questo documento.

Componenti usati

Il documento può essere consultato per tutte le versioni software o hardware.

Convenzioni

Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.

Supporto di frame jumbo sull'appliance ASA

Per abilitare il supporto di frame jumbo sono necessarie versioni hardware e software ASA (Adaptive Security Appliance) specifiche, oltre a un riavvio. Per ulteriori informazioni sui modelli e le versioni supportati e su come abilitare i frame jumbo, consultare la sezione Abilitazione del supporto per i frame jumbo (modelli supportati) della guida alla configurazione di ASA 8.4.

Notare che dopo aver abilitato il supporto dei frame jumbo e riavviato l'ASA, occorre eseguire queste azioni aggiuntive per usare al meglio i frame jumbo:

- L'MTU delle interfacce ASA deve essere aumentata con il comando mtu nella modalità di configurazione secondaria dell'interfaccia in modo che l'ASA trasmetta frame jumbo.

- L'ASA deve essere configurata in modo da impostare il valore TCP MSS per le connessioni TCP su un valore superiore a quello predefinito. In caso contrario, i frame Ethernet contenenti dati TCP non saranno più grandi di 1500 byte. Il valore TCP MSS deve essere ridotto di 120 byte rispetto all'impostazione più bassa per l'MTU dell'interfaccia. Se l'MTU dell'interfaccia è 9216, il valore MSS deve essere configurato su 9096. A tale scopo, è possibile utilizzare il comando syspot connection tcpmss.

Cosa fare se l'ASA non è configurata per i frame jumbo e riceve un frame jumbo?

Il comando jumbo frame-reserve permette non solo la trasmissione dei jumbo, ma anche la ricezione. Se il supporto dei frame jumbo non è abilitato, l'ASA rifiuta i pacchetti troppo grandi. Queste gocce vengono contate sotto la statistica "gigante" nell'output dell'interfaccia show:

ASA# show interface

Interface GigabitEthernet0/0 "inside", is up, line protocol is up

Hardware is bcm56801 rev 01, BW 1000 Mbps, DLY 10 usec

Auto-Duplex(Full-duplex), Auto-Speed(1000 Mbps)

Input flow control is unsupported, output flow control is on

MAC address 5475.d029.8916, MTU 1500

IP address 10.36.29.1, subnet mask 255.255.0.0

499 packets input, 52146 bytes, 0 no buffer

Received 63 broadcasts, 0 runts, 5 giants            <---- HERE

Cosa succede se l'ASA riceve correttamente un frame jumbo ma cerca di inviarlo tramite un'interfaccia con MTU inferiore?

Per ricevere un frame jumbo, l'ASA deve avere il comando jumbo-frame Reservation, ma non deve necessariamente avere un'MTU aumentata (in quanto ciò influisce solo sulle dimensioni massime di trasmissione per l'interfaccia, non sulla ricezione).

Se l'ASA riceve correttamente un frame jumbo, ma questo è troppo grande per essere trasmesso sull'interfaccia in uscita, possono verificarsi queste situazioni, a seconda dell'impostazione del bit "non frammentare" (DF, Don't Fragment) nell'intestazione IP del pacchetto:

- Se il bit DF è impostato nell'intestazione IP, l'ASA scarta il pacchetto e invia un messaggio ICMP tipo 3, codice 4, al mittente.

- Se il bit DF non è impostato, l'ASA frammenterà il pacchetto e trasmetterà i frammenti all'esterno dell'interfaccia di uscita.

Questa è una sessione CLI dell'ASA che usa le acquisizioni dei pacchetti per mostrare all'ASA la ricezione di un frame jumbo sull'interfaccia interna (con una dimensione di 4014 byte) che è troppo grande per trasmettere in uscita (l'esterno ha una MTU di 1500). In questo caso, il bit DF non è impostato nell'intestazione IP. Il pacchetto viene frammentato all'uscita dall'interfaccia esterna:

ASA# show cap in detail

20 packets captured

1: 11:30:30.308913 0017.0f17.af80 5475.d029.8916 0x0800 4014: 10.99.103.6 > 10.23.124.1:

icmp: echo request (ttl 255, id 48872)

2: 11:30:30.309920 5475.d029.8916 0017.0f17.af80 0x0800 1514: 10.23.124.1 > 10.99.103.6:

icmp: echo reply (wrong icmp csum) (frag 48872:1480@0+) (ttl 255)

3: 11:30:30.309935 5475.d029.8916 0017.0f17.af80 0x0800 1514: 10.23.124.1 > 10.99.103.6:

(frag 48872:1480@1480+) (ttl 255)

4: 11:30:30.309935 5475.d029.8916 0017.0f17.af80 0x0800 1054: 10.23.124.1 > 10.99.103.6:

(frag 48872:1020@2960) (ttl 255)

...

ASA# show cap out detail

30 packets captured

1: 11:30:30.309035 5475.d029.8917 001a.a185.847f 0x0800 1514: 10.23.124.142 > 10.23.124.1:

icmp: echo request (wrong icmp csum) (frag 48872:1480@0+) (ttl 255)

2: 11:30:30.309035 5475.d029.8917 001a.a185.847f 0x0800 1514: 10.23.124.142 > 10.23.124.1:

(frag 48872:1480@1480+) (ttl 255)

3: 11:30:30.309050 5475.d029.8917 001a.a185.847f 0x0800 1054: 10.23.124.142 > 10.23.124.1:

(frag 48872:1020@2960) (ttl 255)

4: 11:30:30.309859 001a.a185.847f 5475.d029.8917 0x0800 1514: 10.23.124.1 > 10.23.124.142:

icmp: echo reply (wrong icmp csum) (frag 48872:1480@0+) (ttl 255)

5: 11:30:30.309859 001a.a185.847f 5475.d029.8917 0x0800 1514: 10.23.124.1 > 10.23.124.142:

(frag 48872:1480@1480+) (ttl 255)

6: 11:30:30.309859 001a.a185.847f 5475.d029.8917 0x0800 1054: 10.23.124.1 > 10.23.124.142:

(frag 48872:1020@2960) (ttl 255)

L'esempio mostra un'ASA che riceve un frame jumbo sull'interfaccia interna troppo grande per trasmettere fuori dall'interfaccia di uscita e il pacchetto ha il bit DF impostato. Il pacchetto viene scartato e il messaggio di errore ICMP tipo 3 codice 4 viene trasmesso all'host interno:

ASA# show cap in detail

6 packets captured

1: 11:42:10.147422 0017.0f17.af80 5475.d029.8916 0x0800 4014: 10.99.103.6 > 10.23.124.1:

icmp: echo request (DF) (ttl 255, id 48887)

2: 11:42:10.147605 5475.d029.8916 0017.0f17.af80 0x0800 70: 10.99.29.1 > 10.99.103.6:

icmp: 10.23.124.1 unreachable - need to frag (mtu 1500) (ttl 72, id 56194)

3: 11:42:10.150199 0017.0f17.af80 5475.d029.8916 0x0800 4014: 10.99.103.6 > 10.23.124.1:

icmp: echo request (DF) (ttl 255, id 48888)

4: 11:42:12.146476 0017.0f17.af80 5475.d029.8916 0x0800 4014: 10.99.103.6 > 10.23.124.1:

icmp: echo request (DF) (ttl 255, id 48889)

5: 11:42:12.146553 5475.d029.8916 0017.0f17.af80 0x0800 70: 10.99.29.1 > 10.99.103.6:

icmp: 10.23.124.1 unreachable - need to frag (mtu 1500) (ttl 72, id 45247)

6: 11:42:12.152427 0017.0f17.af80 5475.d029.8916 0x0800 4014: 10.99.103.6 > 10.23.124.1:

icmp: echo request (DF) (ttl 255, id 48890)

6 packets shown

ASA# show cap out detail

0 packet captured

0 packet shown

ASA#

Informazioni correlate

- Documentazione e supporto tecnico – Cisco Systems