

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Améliorer les performances du réseau entre les instances EC2 à l’aide d’ENA Express
<a name="ena-express"></a>

ENA Express est alimenté par la technologie AWS Scalable Reliable Datagram (SRD). SRD est un protocole de transport réseau à hautes performances qui utilise le routage dynamique pour augmenter le débit et minimiser la latence de queue. Grâce à ENA Express, vous pouvez communiquer entre deux instances EC2 situées dans la même zone de disponibilité.

**Avantages d’ENA Express**
+ Augmente la bande passante maximale qu’un flux unique peut utiliser de 5 Gbit/s à 25 Gbit/s dans la zone de disponibilité, jusqu’à la limite de l’instance agrégée.
+ Réduit la latence du trafic réseau entre les instances EC2, en particulier pendant les périodes de forte charge réseau.
+ Détecte et évite les chemins réseau encombrés.
+ Gère certaines tâches directement dans la couche réseau, telles que la réorganisation des paquets du côté récepteur et la plupart des retransmissions nécessaires. Cela permet de libérer la couche d’application pour d’autres tâches.

**Note**  
Si votre application envoie ou reçoit un volume élevé de paquets par seconde et doit optimiser la latence la plupart du temps, en particulier pendant les périodes où il n’y a pas d’encombrement sur le réseau, [Réseaux améliorés](enhanced-networking.md) peut être mieux adaptée à votre réseau.
Le trafic ENA Express ne peut pas être envoyé à une zone locale.

Une fois que vous avez activé ENA Express pour l’attachement d’interface réseau sur une instance, l’instance d’envoi initie la communication avec l’instance de réception et SRD détecte si ENA Express fonctionne à la fois sur l’instance d’envoi et l’instance de réception. Si ENA Express fonctionne, la communication peut utiliser la transmission SRD. Si ENA Express ne fonctionne pas, la communication revient à la transmission ENA standard.

Pendant les périodes où le trafic réseau est faible, vous pouvez remarquer une légère augmentation de la latence des paquets (quelques dizaines de microsecondes) lorsque le paquet utilise ENA Express. Pendant ces périodes, les applications qui donnent la priorité à des caractéristiques de performance réseau spécifiques peuvent bénéficier d’ENA Express de la manière suivante :
+ Les processus peuvent bénéficier d’une augmentation de la bande passante maximale pour un flux unique de 5 Gbit/s à 25 Gbit/s au sein de la même zone de disponibilité, jusqu’à la limite de l’instance agrégée. Par exemple, si un type d’instance spécifique prend en charge jusqu’à 12,5 Gbit/s, la bande passante à flux unique est également limitée à 12,5 Gbit/s.
+ Les processus qui s’exécutent depuis longtemps devraient bénéficier d’une réduction de la latence pendant les périodes d’encombrement du réseau.
+ Les processus peuvent bénéficier d’une distribution plus régulière et plus standard des temps de réponse du réseau.

**Topics**
+ [Fonctionnement d’ENA Express](#ena-express-how-it-works)
+ [Types d’instance pris en charge pour ENA Express](#ena-express-supported-instance-types)
+ [Conditions préalables pour les instances Linux](#ena-express-prereq-linux)
+ [Optimiser les performances des paramètres ENA Express sur les instances Linux](#ena-express-tune)
+ [Examiner les paramètres d’ENA Express pour votre instance EC2](ena-express-list-view.md)
+ [Configurer les paramètres ENA Express pour votre instance EC2](ena-express-configure.md)

## Fonctionnement d’ENA Express
<a name="ena-express-how-it-works"></a>

ENA Express est alimenté par la technologie AWS Scalable Reliable Datagram (SRD). Il distribue les paquets pour chaque flux réseau sur différents chemins AWS réseau et ajuste dynamiquement la distribution lorsqu'il détecte des signes de congestion. Elle gère également la réorganisation des paquets du côté récepteur.

Pour garantir qu’ENA Express puisse gérer le trafic réseau comme prévu, les instances d’envoi et de réception, ainsi que la communication entre elles, doivent répondre à toutes les exigences suivantes :
+ Les types d’instance d’envoi et de réception sont pris en charge. Consultez la table [Types d’instance pris en charge pour ENA Express](#ena-express-supported-instance-types) pour plus d’informations.
+ ENA Express doit être configuré pour les instances d’envoi et de réception. S’il existe des différences de configuration, vous pouvez vous retrouver dans des situations où le trafic passe par défaut à une transmission ENA standard. Le scénario suivant montre ce qui peut se passer.

  **Scénario : différences de configuration**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/AWSEC2/latest/UserGuide/ena-express.html)

  Dans ce cas, le trafic TCP entre les deux instances peut utiliser ENA Express, car les deux instances l’ont activé. Toutefois, étant donné que l’une des instances n’utilise pas ENA Express pour le trafic UDP, la communication entre ces deux instances via UDP utilise une transmission ENA standard.
+ Les instances d’envoi et de réception doivent fonctionner dans la même zone de disponibilité.
+ Le chemin réseau entre les instances ne doit pas inclure de boîtiers intergiciels. ENA Express ne prend actuellement pas en charge les boîtiers intergiciels.
+ (Instances Linux uniquement) Pour utiliser tout le potentiel de la bande passante, utilisez la version 2.2.9 du pilote ou une version plus récente.
+ (Instances Linux uniquement) Pour produire des métriques, utilisez la version 2.8 ou une version supérieure du pilote.

Si une exigence n'est pas satisfaite, les instances utilisent le TCP/UDP protocole standard mais sans SRD pour communiquer.

Pour vous assurer que le pilote réseau de votre instance est configuré pour des performances optimales, veuillez consulter les bonnes pratiques recommandées pour les pilotes ENA. Ces bonnes pratiques s’appliquent également à ENA Express. Pour plus d'informations, consultez le [guide des meilleures pratiques et d'optimisation des performances des pilotes Linux ENA](https://github.com/amzn/amzn-drivers/blob/master/kernel/linux/ena/ENA_Linux_Best_Practices.rst) sur le GitHub site Web.

**Note**  
Amazon EC2 fait référence à la relation entre une instance et une interface réseau qui lui est attachée en tant qu’*attachement*. Les paramètres ENA Express s’appliquent à l’attachement. Si l’interface réseau est détachée de l’instance, l’attachement n’existe plus et les paramètres ENA Express qui s’y appliquaient ne sont plus en vigueur. Il en va de même lorsqu’une instance est résiliée, même si l’interface réseau est conservée.

Après avoir activé ENA Express en ce qui concerne les connexions d’interface réseau de l’instance d’envoi et de l’instance de réception, vous pouvez utiliser les métriques ENA Express pour vous assurer que vos instances tirent pleinement parti des améliorations de performances apportées par la technologie SRD. Pour plus d’informations sur les métriques ENA Express, veuillez consulter [Métriques pour ENA Express](monitoring-network-performance-ena.md#network-performance-metrics-ena-express).

## Types d’instance pris en charge pour ENA Express
<a name="ena-express-supported-instance-types"></a>

Les types d’instance suivants prennent en charge ENA Express.

------
#### [ General purpose ]


| Type d’instance | Architecture | 
| --- | --- | 
| m6a.12xlarge | x86\$164 | 
| m6a.16xlarge | x86\$164 | 
| m6a.24xlarge | x86\$164 | 
| m6a.32xlarge | x86\$164 | 
| m6a.48xlarge | x86\$164 | 
| m6a.metal | x86\$164 | 
| m6i.8xlarge | x86\$164 | 
| m6i.12xlarge | x86\$164 | 
| m6i.16xlarge | x86\$164 | 
| m6i.24xlarge | x86\$164 | 
| m6i.32xlarge | x86\$164 | 
| m6i.metal | x86\$164 | 
| m6id.8xlarge | x86\$164 | 
| m6id.12xlarge | x86\$164 | 
| m6id.16xlarge | x86\$164 | 
| m6id.24xlarge | x86\$164 | 
| m6id.32xlarge | x86\$164 | 
| m6id.metal | x86\$164 | 
| m6idn.8xlarge | x86\$164 | 
| m6idn.12xlarge | x86\$164 | 
| m6idn.16xlarge | x86\$164 | 
| m6idn.24xlarge | x86\$164 | 
| m6idn.32xlarge | x86\$164 | 
| m6idn.metal | x86\$164 | 
| m6in.8xlarge | x86\$164 | 
| m6in.12xlarge | x86\$164 | 
| m6in.16xlarge | x86\$164 | 
| m6in.24xlarge | x86\$164 | 
| m6in.32xlarge | x86\$164 | 
| m6in.metal | x86\$164 | 
| m7a.12xlarge | x86\$164 | 
| m7a.16xlarge | x86\$164 | 
| m7a.24xlarge | x86\$164 | 
| m7a.32xlarge | x86\$164 | 
| m7a.48xlarge | x86\$164 | 
| m7a.metal-48xl | x86\$164 | 
| m7g.12xlarge | arm64 | 
| m7g.16xlarge | arm64 | 
| m7g.metal | arm64 | 
| m7gd.12xlarge | arm64 | 
| m7gd.16xlarge | arm64 | 
| m7gd.metal | arm64 | 
| m7i.12xlarge | x86\$164 | 
| m7i.16xlarge | x86\$164 | 
| m7i.24xlarge | x86\$164 | 
| m7i.48xlarge | x86\$164 | 
| m7i.metal-24xl | x86\$164 | 
| m7i.metal-48xl | x86\$164 | 
| m8a.16xlarge | x86\$164 | 
| m8a.24xlarge | x86\$164 | 
| m8a.48xlarge | x86\$164 | 
| m8a.metal-24xl | x86\$164 | 
| m8a.metal-48xl | x86\$164 | 
| m8azn.12xlarge | x86\$164 | 
| m8azn.24xlarge | x86\$164 | 
| m8azn.metal-12xl | x86\$164 | 
| m8azn.metal-24xl | x86\$164 | 
| m8g.12xlarge | arm64 | 
| m8g.16xlarge | arm64 | 
| m8g.24xlarge | arm64 | 
| m8g.48xlarge | arm64 | 
| m8g.metal-24xl | arm64 | 
| m8g.metal-48xl | arm64 | 
| m8gb.8xlarge | arm64 | 
| m8gb.12xlarge | arm64 | 
| m8gb.16xlarge | arm64 | 
| m8gb.24xlarge | arm64 | 
| m8gb.48xlarge | arm64 | 
| m8gb.metal-24xl | arm64 | 
| m8gb.metal-48xl | arm64 | 
| m8gd.12xlarge | arm64 | 
| m8gd.16xlarge | arm64 | 
| m8gd.24xlarge | arm64 | 
| m8gd.48xlarge | arm64 | 
| m8gd.metal-24xl | arm64 | 
| m8gd.metal-48xl | arm64 | 
| m8gn.8xlarge | arm64 | 
| m8gn.12xlarge | arm64 | 
| m8gn.16xlarge | arm64 | 
| m8gn.24xlarge | arm64 | 
| m8gn.48xlarge | arm64 | 
| m8gn.metal-24xl | arm64 | 
| m8gn.metal-48xl | arm64 | 
| m8i.24xlarge | x86\$164 | 
| m8i.32xlarge | x86\$164 | 
| m8i.48xlarge | x86\$164 | 
| m8i.96xlarge | x86\$164 | 
| m8i.metal-48xl | x86\$164 | 
| m8i.metal-96xl | x86\$164 | 
| m8id.24xlarge | x86\$164 | 
| m8id.32xlarge | x86\$164 | 
| m8id.48xlarge | x86\$164 | 
| m8id.96xlarge | x86\$164 | 
| m8id.metal-48xl | x86\$164 | 
| m8id.metal-96xl | x86\$164 | 

------
#### [ Compute optimized ]


| Type d’instance | Architecture | 
| --- | --- | 
| c6a.12xlarge | x86\$164 | 
| c6a.16xlarge | x86\$164 | 
| c6a.24xlarge | x86\$164 | 
| c6a.32xlarge | x86\$164 | 
| c6a.48xlarge | x86\$164 | 
| c6a.metal | x86\$164 | 
| c6gn.4xlarge | arm64 | 
| c6gn.8xlarge | arm64 | 
| c6gn.12xlarge | arm64 | 
| c6gn.16xlarge | arm64 | 
| c6i.8xlarge | x86\$164 | 
| c6i.12xlarge | x86\$164 | 
| c6i.16xlarge | x86\$164 | 
| c6i.24xlarge | x86\$164 | 
| c6i.32xlarge | x86\$164 | 
| c6i.metal | x86\$164 | 
| c6id.8xlarge | x86\$164 | 
| c6id.12xlarge | x86\$164 | 
| c6id.16xlarge | x86\$164 | 
| c6id.24xlarge | x86\$164 | 
| c6id.32xlarge | x86\$164 | 
| c6id.metal | x86\$164 | 
| c6in.8xlarge | x86\$164 | 
| c6in.12xlarge | x86\$164 | 
| c6in.16xlarge | x86\$164 | 
| c6in.24xlarge | x86\$164 | 
| c6in.32xlarge | x86\$164 | 
| c6in.metal | x86\$164 | 
| c7a.12xlarge | x86\$164 | 
| c7a.16xlarge | x86\$164 | 
| c7a.24xlarge | x86\$164 | 
| c7a.32xlarge | x86\$164 | 
| c7a.48xlarge | x86\$164 | 
| c7a.metal-48xl | x86\$164 | 
| c7g.12xlarge | arm64 | 
| c7g.16xlarge | arm64 | 
| c7g.metal | arm64 | 
| c7gd.12xlarge | arm64 | 
| c7gd.16xlarge | arm64 | 
| c7gd.metal | arm64 | 
| c7gn.4xlarge | arm64 | 
| c7gn.8xlarge | arm64 | 
| c7gn.12xlarge | arm64 | 
| c7gn.16xlarge | arm64 | 
| c7gn.metal | arm64 | 
| c7i.12xlarge | x86\$164 | 
| c7i.16xlarge | x86\$164 | 
| c7i.24xlarge | x86\$164 | 
| c7i.48xlarge | x86\$164 | 
| c7i.metal-24xl | x86\$164 | 
| c7i.metal-48xl | x86\$164 | 
| c8a.16xlarge | x86\$164 | 
| c8a.24xlarge | x86\$164 | 
| c8a.48xlarge | x86\$164 | 
| c8a.metal-24xl | x86\$164 | 
| c8a.metal-48xl | x86\$164 | 
| c8g.12xlarge | arm64 | 
| c8g.16xlarge | arm64 | 
| c8g.24xlarge | arm64 | 
| c8g.48xlarge | arm64 | 
| c8g.metal-24xl | arm64 | 
| c8g.metal-48xl | arm64 | 
| c8gb.8xlarge | arm64 | 
| c8gb.12xlarge | arm64 | 
| c8gb.16xlarge | arm64 | 
| c8gb.24xlarge | arm64 | 
| c8gb.48xlarge | arm64 | 
| c8gb.metal-24xl | arm64 | 
| c8gb.metal-48xl | arm64 | 
| c8gd.12xlarge | arm64 | 
| c8gd.16xlarge | arm64 | 
| c8gd.24xlarge | arm64 | 
| c8gd.48xlarge | arm64 | 
| c8gd.metal-24xl | arm64 | 
| c8gd.metal-48xl | arm64 | 
| c8gn.8xlarge | arm64 | 
| c8gn.12xlarge | arm64 | 
| c8gn.16xlarge | arm64 | 
| c8gn.24xlarge | arm64 | 
| c8gn.48xlarge | arm64 | 
| c8gn.metal-24xl | arm64 | 
| c8gn.metal-48xl | arm64 | 
| c8i.24xlarge | x86\$164 | 
| c8i.32xlarge | x86\$164 | 
| c8i.48xlarge | x86\$164 | 
| c8i.96xlarge | x86\$164 | 
| c8i.metal-48xl | x86\$164 | 
| c8i.metal-96xl | x86\$164 | 
| c8ib.12xlarge | x86\$164 | 
| c8ib.16xlarge | x86\$164 | 
| c8ib.24xlarge | x86\$164 | 
| c8ib.32xlarge | x86\$164 | 
| c8ib.48xlarge | x86\$164 | 
| c8ib.96xlarge | x86\$164 | 
| c8ib.metal-48xl | x86\$164 | 
| c8ib.metal-96xl | x86\$164 | 
| c8id.24xlarge | x86\$164 | 
| c8id.32xlarge | x86\$164 | 
| c8id.48xlarge | x86\$164 | 
| c8id.96xlarge | x86\$164 | 
| c8id.metal-48xl | x86\$164 | 
| c8id.metal-96xl | x86\$164 | 
| c8in.12xlarge | x86\$164 | 
| c8in.16xlarge | x86\$164 | 
| c8in.24xlarge | x86\$164 | 
| c8in.32xlarge | x86\$164 | 
| c8in.48xlarge | x86\$164 | 
| c8in.96xlarge | x86\$164 | 
| c8in.metal-48xl | x86\$164 | 
| c8in.metal-96xl | x86\$164 | 

------
#### [ Memory optimized ]


| Type d’instance | Architecture | 
| --- | --- | 
| r6a.12xlarge | x86\$164 | 
| r6a.16xlarge | x86\$164 | 
| r6a.24xlarge | x86\$164 | 
| r6a.32xlarge | x86\$164 | 
| r6a.48xlarge | x86\$164 | 
| r6a.metal | x86\$164 | 
| r6i.8xlarge | x86\$164 | 
| r6i.12xlarge | x86\$164 | 
| r6i.16xlarge | x86\$164 | 
| r6i.24xlarge | x86\$164 | 
| r6i.32xlarge | x86\$164 | 
| r6i.metal | x86\$164 | 
| r6id.8xlarge | x86\$164 | 
| r6id.12xlarge | x86\$164 | 
| r6id.16xlarge | x86\$164 | 
| r6id.24xlarge | x86\$164 | 
| r6id.32xlarge | x86\$164 | 
| r6id.metal | x86\$164 | 
| r6idn.8xlarge | x86\$164 | 
| r6idn.12xlarge | x86\$164 | 
| r6idn.16xlarge | x86\$164 | 
| r6idn.24xlarge | x86\$164 | 
| r6idn.32xlarge | x86\$164 | 
| r6idn.metal | x86\$164 | 
| r6in.8xlarge | x86\$164 | 
| r6in.12xlarge | x86\$164 | 
| r6in.16xlarge | x86\$164 | 
| r6in.24xlarge | x86\$164 | 
| r6in.32xlarge | x86\$164 | 
| r6in.metal | x86\$164 | 
| r7a.12xlarge | x86\$164 | 
| r7a.16xlarge | x86\$164 | 
| r7a.24xlarge | x86\$164 | 
| r7a.32xlarge | x86\$164 | 
| r7a.48xlarge | x86\$164 | 
| r7a.metal-48xl | x86\$164 | 
| r7g.12xlarge | arm64 | 
| r7g.16xlarge | arm64 | 
| r7g.metal | arm64 | 
| r7gd.12xlarge | arm64 | 
| r7gd.16xlarge | arm64 | 
| r7gd.metal | arm64 | 
| r7i.12xlarge | x86\$164 | 
| r7i.16xlarge | x86\$164 | 
| r7i.24xlarge | x86\$164 | 
| r7i.48xlarge | x86\$164 | 
| r7i.metal-24xl | x86\$164 | 
| r7i.metal-48xl | x86\$164 | 
| r7iz.8xlarge | x86\$164 | 
| r7iz.12xlarge | x86\$164 | 
| r7iz.16xlarge | x86\$164 | 
| r7iz.32xlarge | x86\$164 | 
| r7iz.metal-16xl | x86\$164 | 
| r7iz.metal-32xl | x86\$164 | 
| r8a.16xlarge | x86\$164 | 
| r8a.24xlarge | x86\$164 | 
| r8a.48xlarge | x86\$164 | 
| r8a.metal-24xl | x86\$164 | 
| r8a.metal-48xl | x86\$164 | 
| r8g.12xlarge | arm64 | 
| r8g.16xlarge | arm64 | 
| r8g.24xlarge | arm64 | 
| r8g.48xlarge | arm64 | 
| r8g.metal-24xl | arm64 | 
| r8g.metal-48xl | arm64 | 
| r8gb.8xlarge | arm64 | 
| r8gb.12xlarge | arm64 | 
| r8gb.16xlarge | arm64 | 
| r8gb.24xlarge | arm64 | 
| r8gb.48xlarge | arm64 | 
| r8gb.metal-24xl | arm64 | 
| r8gb.metal-48xl | arm64 | 
| r8gd.12xlarge | arm64 | 
| r8gd.16xlarge | arm64 | 
| r8gd.24xlarge | arm64 | 
| r8gd.48xlarge | arm64 | 
| r8gd.metal-24xl | arm64 | 
| r8gd.metal-48xl | arm64 | 
| r8gn.8xlarge | arm64 | 
| r8gn.12xlarge | arm64 | 
| r8gn.16xlarge | arm64 | 
| r8gn.24xlarge | arm64 | 
| r8gn.48xlarge | arm64 | 
| r8gn.metal-24xl | arm64 | 
| r8gn.metal-48xl | arm64 | 
| r8i.24xlarge | x86\$164 | 
| r8i.32xlarge | x86\$164 | 
| r8i.48xlarge | x86\$164 | 
| r8i.96xlarge | x86\$164 | 
| r8i.metal-48xl | x86\$164 | 
| r8i.metal-96xl | x86\$164 | 
| r8id.24xlarge | x86\$164 | 
| r8id.32xlarge | x86\$164 | 
| r8id.48xlarge | x86\$164 | 
| r8id.96xlarge | x86\$164 | 
| r8id.metal-48xl | x86\$164 | 
| r8id.metal-96xl | x86\$164 | 
| u7i-6tb.112xlarge | x86\$164 | 
| u7i-8tb.112xlarge | x86\$164 | 
| u7i-12tb.224xlarge | x86\$164 | 
| u7in-16tb.224xlarge | x86\$164 | 
| u7in-24tb.224xlarge | x86\$164 | 
| u7in-32tb.224xlarge | x86\$164 | 
| u7inh-32tb.480xlarge | x86\$164 | 
| x2idn.16xlarge | x86\$164 | 
| x2idn.24xlarge | x86\$164 | 
| x2idn.32xlarge | x86\$164 | 
| x2idn.metal | x86\$164 | 
| x2iedn.8xlarge | x86\$164 | 
| x2iedn.16xlarge | x86\$164 | 
| x2iedn.24xlarge | x86\$164 | 
| x2iedn.32xlarge | x86\$164 | 
| x2iedn.metal | x86\$164 | 
| x8g.12xlarge | arm64 | 
| x8g.16xlarge | arm64 | 
| x8g.24xlarge | arm64 | 
| x8g.48xlarge | arm64 | 
| x8g.metal-24xl | arm64 | 
| x8g.metal-48xl | arm64 | 
| x8aedz.24xlarge | x86\$164 | 
| x8aedz.metal-24xl | x86\$164 | 
| x8i.24xlarge | x86\$164 | 
| x8i.32xlarge | x86\$164 | 
| x8i.48xlarge | x86\$164 | 
| x8i.64xlarge | x86\$164 | 
| x8i.96xlarge | x86\$164 | 
| x8i.metal-48xl | x86\$164 | 
| x8i.metal-96xl | x86\$164 | 

------
#### [ Accelerated computing ]


| Type d’instance | Architecture | 
| --- | --- | 
| g6.48xlarge | x86\$164 | 
| g6e.12xlarge | x86\$164 | 
| g6e.24xlarge | x86\$164 | 
| g6e.48xlarge | x86\$164 | 
| g7e.12xlarge | x86\$164 | 
| g7e.24xlarge | x86\$164 | 
| g7e.48xlarge | x86\$164 | 
| p5.4xlarge | x86\$164 | 
| p5.48xlarge | x86\$164 | 
| p5e.48xlarge | x86\$164 | 
| p5en.48xlarge | x86\$164 | 
| p6-b200.48xlarge | x86\$164 | 
| p6-b300.48xlarge | x86\$164 | 

------
#### [ Storage optimized ]


| Type d’instance | Architecture | 
| --- | --- | 
| i4g.4xlarge | arm64 | 
| i4g.8xlarge | arm64 | 
| i4g.16xlarge | arm64 | 
| i4i.8xlarge | x86\$164 | 
| i4i.12xlarge | x86\$164 | 
| i4i.16xlarge | x86\$164 | 
| i4i.24xlarge | x86\$164 | 
| i4i.32xlarge | x86\$164 | 
| i4i.metal | x86\$164 | 
| i7i.12xlarge | x86\$164 | 
| i7i.16xlarge | x86\$164 | 
| i7i.24xlarge | x86\$164 | 
| i7i.48xlarge | x86\$164 | 
| i7i.metal-24xl | x86\$164 | 
| i7i.metal-48xl | x86\$164 | 
| i7ie.12xlarge | x86\$164 | 
| i7ie.18xlarge | x86\$164 | 
| i7ie.24xlarge | x86\$164 | 
| i7ie.48xlarge | x86\$164 | 
| i7ie.metal-24xl | x86\$164 | 
| i7ie.metal-48xl | x86\$164 | 
| i8g.12xlarge | arm64 | 
| i8g.16xlarge | arm64 | 
| i8g.24xlarge | arm64 | 
| i8g.48xlarge | arm64 | 
| i8g.metal-24xl | arm64 | 
| i8g.metal-48xl | arm64 | 
| i8ge.12xlarge | arm64 | 
| i8ge.18xlarge | arm64 | 
| i8ge.24xlarge | arm64 | 
| i8ge.48xlarge | arm64 | 
| i8ge.metal-24xl | arm64 | 
| i8ge.metal-48xl | arm64 | 
| im4gn.4xlarge | arm64 | 
| im4gn.8xlarge | arm64 | 
| im4gn.16xlarge | arm64 | 

------

## Conditions préalables pour les instances Linux
<a name="ena-express-prereq-linux"></a>

Pour garantir le bon fonctionnement d’ENA Express, mettez à jour les paramètres de votre instance Linux comme suit.
+ Si votre instance utilise des trames Jumbo, exécutez la commande suivante pour définir votre unité de transmission maximale (MTU) sur `8900`.

  ```
  [ec2-user ~]$ sudo ip link set dev eth0 mtu 8900
  ```
+ Augmentez la taille de la bague du récepteur (Rx) comme suit :

  ```
  [ec2-user ~]$ ethtool -G device rx 8192
  ```
+ Pour optimiser la bande passante d’ENA Express, configurez les limites de votre file d’attente TCP comme suit :

  1. Définissez la limite des petites files d’attente TCP à 1 Mo ou plus. Cela augmente la quantité de données mises en file d’attente pour transmission sur un socket.

     ```
     sudo sh -c 'echo 1048576 > /proc/sys/net/ipv4/tcp_limit_output_bytes'
     ```

  1. Désactivez les limites de files d’attente d’octets sur le périphérique eth si elles sont activées pour votre distribution Linux. Cela augmente le nombre de données mises en file d’attente pour la transmission au niveau de la file d’attente des périphériques.

     ```
     sudo sh -c 'for txq in /sys/class/net/eth0/queues/tx-*; do echo max > ${txq}/byte_queue_limits/limit_min; done'
     ```
**Note**  
Le pilote ENA de la distribution Amazon Linux désactive les limites de files d’attente d’octets par défaut.
+ Pour minimiser la latence du trafic TCP d'ENA Express, vous pouvez désactiver la fonction d'autobouchage TCP. Cela peut entraîner une augmentation minimale de la surcharge de paquets :

  ```
  sudo bash -c 'echo 0 > /proc/sys/net/ipv4/tcp_autocorking'
  ```

## Optimiser les performances des paramètres ENA Express sur les instances Linux
<a name="ena-express-tune"></a>

Pour vérifier la configuration de votre instance Linux afin d'optimiser les performances d'ENA Express, vous pouvez exécuter le script suivant, disponible sur le GitHub référentiel Amazon :

[https://github.com/amzn/amzn-ec2-fra- - .sh utilities/blob/main/ena-express/check ena-express-settings](https://github.com/amzn/amzn-ec2-ena-utilities/blob/main/ena-express/check-ena-express-settings.sh)

Le script exécute une série de tests et suggère des modifications de configuration recommandées et nécessaires.

# Examiner les paramètres d’ENA Express pour votre instance EC2
<a name="ena-express-list-view"></a>

Vous pouvez vérifier les paramètres ENA Express par instance ou par interface réseau. Pour mettre à jour les paramètres ENA Express, consultez la section [Configurer les paramètres ENA Express pour votre instance EC2](ena-express-configure.md).

------
#### [ Console ]

**Pour afficher les paramètres ENA Express d’une interface réseau**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation de gauche, choisissez **Network Interfaces** (Interfaces réseau).

1. Sélectionnez une interface réseau pour afficher les détails de cette instance. Vous pouvez cliquer sur le lien **Network interface ID** (ID d’interface réseau) pour ouvrir la page détaillée ou cocher la case sur le côté gauche de la liste pour afficher les détails dans le volet détaillé en bas de la page.

1. Dans la section **Attachement de l’interface réseau** de l’onglet **Détails** ou de la page de détails, passez en revue les paramètres **ENA Express** et **ENA Express UDP**.

**Pour consulter les paramètres ENA Express d’une instance**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation de gauche, sélectionnez **Instances**.

1. Sélectionnez une instance pour afficher les détails de cette instance. Vous pouvez cliquer sur le lien **Instance ID** (ID d’instance) pour ouvrir la page détaillée ou cocher la case sur le côté gauche de la liste pour afficher les détails dans le volet détaillé en bas de la page.

1. Dans la section **Network interfaces** (Interfaces réseau) de l’onglet **Networking** (Réseau), faites défiler l’écran vers la droite pour passer en revue les paramètres **ENA Express** et **ENA Express UDP**.

------
#### [ AWS CLI ]

**Pour obtenir les paramètres ENA Express d’une instance**  
Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/describe-instances.html](https://docs.aws.amazon.com/cli/latest/reference/describe-instances.html). Cet exemple de commande renvoie une liste des configurations ENA Express pour les interfaces réseau connectées à chacune des instances en cours d’exécution indiquées par le paramètre `--instance-ids`.

```
aws ec2 describe-instances \
    --instance-ids i-1234567890abcdef0 i-0598c7d356eba48d7 \
    --query 'Reservations[*].Instances[*].[InstanceId, NetworkInterfaces[*].Attachment.EnaSrdSpecification]'
```

Voici un exemple de sortie.

```
[
    [
        [
            "i-1234567890abcdef0",
            [
                {
                    "EnaSrdEnabled": true,
                    "EnaSrdUdpSpecification": {
                        "EnaSrdUdpEnabled": false
                    }
                }
            ]
        ]
    ],
    [
        [
            "i-0598c7d356eba48d7",
            [
            {
                    "EnaSrdEnabled": true,
                    "EnaSrdUdpSpecification": {
                        "EnaSrdUdpEnabled": false
                    }
                }
            ]
        ]
    ]
]
```

**Pour obtenir les paramètres ENA Express d’une interface réseau**  
Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/describe-network-interfaces.html](https://docs.aws.amazon.com/cli/latest/reference/describe-network-interfaces.html).

```
aws ec2 describe-network-interfaces \
    --network-interface-ids eni-1234567890abcdef0 \
    --query NetworkInterfaces[].[NetworkInterfaceId,Attachment.EnaSrdSpecification]
```

Voici un exemple de sortie.

```
[
    [
        "eni-1234567890abcdef0",
        {
            "EnaSrdEnabled": true,
            "EnaSrdUdpSpecification": {
                "EnaSrdUdpEnabled": false
            }
        }
    ]
]
```

------
#### [ PowerShell ]

**Pour obtenir les paramètres ENA Express d’une interface réseau**  
Utilisez l’applet de commande [https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2NetworkInterface.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2NetworkInterface.html).

```
Get-EC2NetworkInterface `
    -NetworkInterfaceId eni-1234567890abcdef0 | `
Select-Object `
    Association, 
    NetworkInterfaceId, 
    OwnerId, 
    @{Name = 'AttachTime'; Expression = { $_.Attachment.AttachTime } },
    @{Name = 'AttachmentId'; Expression = { $_.Attachment.AttachmentId } },
    @{Name = 'DeleteOnTermination'; Expression = { $_.Attachment.DeleteOnTermination } },
    @{Name = 'NetworkCardIndex'; Expression = { $_.Attachment.NetworkCardIndex } },
    @{Name = 'InstanceId'; Expression = { $_.Attachment.InstanceId } },
    @{Name = 'InstanceOwnerId'; Expression = { $_.Attachment.InstanceOwnerId } },
    @{Name = 'Status'; Expression = { $_.Attachment.Status } },
    @{Name = 'EnaSrdEnabled'; Expression = { $_.Attachment.EnaSrdSpecification.EnaSrdEnabled } },
    @{Name = 'EnaSrdUdpEnabled'; Expression = { $_.Attachment.EnaSrdSpecification.EnaSrdUdpSpecification.EnaSrdUdpEnabled } }
```

Voici un exemple de sortie.

```
Association         : 
NetworkInterfaceId  : eni-0d1234e5f6a78901b
OwnerId             : 111122223333
AttachTime          : 6/11/2022 1:13:11 AM
AttachmentId        : eni-attach-0d1234e5f6a78901b
DeleteOnTermination : True
NetworkCardIndex    : 0
InstanceId          : i-1234567890abcdef0
InstanceOwnerId     : 111122223333
Status              : attached
EnaSrdEnabled       : True
EnaSrdUdpEnabled    : False
```

------

# Configurer les paramètres ENA Express pour votre instance EC2
<a name="ena-express-configure"></a>

Vous pouvez configurer ENA Express pour les types d’instance EC2 pris en charge sans avoir à installer de logiciel supplémentaire. Pour de plus amples informations, veuillez consulter [Types d’instance pris en charge pour ENA Express](ena-express.md#ena-express-supported-instance-types).

------
#### [ Console ]

**Pour gérer ENA Express pour une interface réseau**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation de gauche, choisissez **Network Interfaces** (Interfaces réseau).

1. Sélectionnez une interface réseau qui doit être attachée à une instance. Vous pouvez cliquer sur le lien **Network interface ID** (ID d’interface réseau) pour ouvrir la page détaillée ou cocher la case sur le côté gauche de la liste.

1. Choisissez **Manage ENA Express** (Gérer ENA Express) dans le menu **Action** en haut à droite de la page. Cela ouvre la boîte de dialogue **Manage ENA Express** (Gestion d’ENA Express), qui affiche l’ID de l’interface réseau sélectionnée et les paramètres actuels.

   Si l’interface réseau que vous avez sélectionnée n’est pas associée à une instance, cette action n’apparaît pas dans le menu.

1. Pour utiliser **ENA Express**, cochez la case **Enable** (Activer).

1. Lorsque ENA Express est activé, vous pouvez configurer les paramètres UDP. Pour utiliser **ENA Express UDP**, cochez la case **Enable** (Activer).

1. Pour enregistrer vos paramètres, choisissez **Save** (Enregistrer).

**Pour gérer ENA Express pour une instance**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation de gauche, sélectionnez **Instances**.

1. Sélectionnez l’instance que vous voulez gérer. Vous pouvez choisir **Instance ID** (ID d’instance) pour ouvrir la page détaillée ou cocher la case sur le côté gauche de la liste.

1. Sélectionnez **Network interface** (Interface réseau) pour configurer pour votre instance.

1. Choisissez **Manage ENA Express** (Gérer ENA Express) dans le menu **Action** en haut à droite de la page.

1. Pour configurer ENA Express pour une interface réseau attachée à votre instance, sélectionnez-la dans la liste **Network interface** (Interface réseau).

1. Pour utiliser **ENA Express** pour la connexion d’interface réseau sélectionnée, cochez la case **Enable** (Activer).

1. Lorsque ENA Express est activé, vous pouvez configurer les paramètres UDP. Pour utiliser **ENA Express UDP**, cochez la case **Enable** (Activer).

1. Pour enregistrer vos paramètres, choisissez **Save** (Enregistrer).

**Pour configurer ENA Express lorsque vous attachez une interface réseau**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation de gauche, choisissez **Network Interfaces** (Interfaces réseau).

1. Sélectionnez une interface réseau qui n’est pas attachée à une instance (l’**état** est **Available** (Disponible). Vous pouvez cliquer sur le lien **Network interface ID** (ID d’interface réseau) pour ouvrir la page détaillée ou cocher la case sur le côté gauche de la liste.

1. Sélectionnez l’**instance** avec laquelle vous souhaitez effectuer l’attachement.

1. Pour utiliser **ENA Express** après avoir connecté l’interface réseau à l’instance, cochez la case **Enable** (Activer).

1. Lorsque ENA Express est activé, vous pouvez configurer les paramètres UDP. Pour utiliser **ENA Express UDP**, cochez la case **Enable** (Activer).

1. Pour attacher l’interface réseau à l’instance et enregistrer vos paramètres ENA Express, choisissez **Attach** (Attacher).

------
#### [ AWS CLI ]

**Pour configurer ENA Express lorsque vous attachez une interface réseau**  
Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/;attach-network-interface.html](https://docs.aws.amazon.com/cli/latest/reference/;attach-network-interface.html), comme illustré dans les exemples suivants.

**Exemple 1 : utiliser ENA Express pour le trafic TCP, mais pas pour le trafic UDP**  
Cet exemple configure `EnaSrdEnabled` comme `true` et permet de définir `EnaSrdUdpEnabled` par défaut comme `false`.

```
aws ec2 attach-network-interface \
    --network-interface-id eni-1234567890abcdef0 \
    --instance-id i-1234567890abcdef0 \
    --device-index 1 \
    --ena-srd-specification 'EnaSrdEnabled=true'
```

**Exemple 2 : Utiliser ENA Express à la fois pour le trafic TCP et le trafic UDP**  
Dans cet exemple, nous configurons `EnaSrdEnabled` et `EnaSrdUdpEnabled` sur `true`.

```
aws ec2 attach-network-interface \
    --network-interface-id eni-1234567890abcdef0 \
    --instance-id i-1234567890abcdef0 \
    --device-index 1 \
    --ena-srd-specification 'EnaSrdEnabled=true,EnaSrdUdpSpecification={EnaSrdUdpEnabled=true}'
```

**Pour mettre à jour les paramètres ENA Express pour l’attachement d’une interface réseau**  
Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/modify-network-interface-attribute.html](https://docs.aws.amazon.com/cli/latest/reference/modify-network-interface-attribute.html), comme illustré dans les exemples suivants.

**Exemple 1 : utiliser ENA Express pour le trafic TCP, mais pas pour le trafic UDP**  
Cet exemple configure `EnaSrdEnabled` sur `true` et permet à `EnaSrdUdpEnabled` de prendre la valeur `false` par défaut s’il n’a jamais été défini auparavant.

```
aws ec2 modify-network-interface-attribute \
    --network-interface-id eni-1234567890abcdef0 \
    --ena-srd-specification 'EnaSrdEnabled=true'
```

**Exemple 2 : Utiliser ENA Express à la fois pour le trafic TCP et le trafic UDP**  
Dans cet exemple, nous configurons `EnaSrdEnabled` et `EnaSrdUdpEnabled` sur `true`.

```
aws ec2 modify-network-interface-attribute \
    --network-interface-id eni-1234567890abcdef0 \
    --ena-srd-specification 'EnaSrdEnabled=true,EnaSrdUdpSpecification={EnaSrdUdpEnabled=true}'
```

**Exemple 3 : arrêter d’utiliser ENA Express pour le trafic UDP**  
Cet exemple configure `EnaSrdUdpEnabled` sur `false`.

```
aws ec2 modify-network-interface-attribute \
    --network-interface-id eni-1234567890abcdef0 \
    --ena-srd-specification 'EnaSrdUdpSpecification={EnaSrdUdpEnabled=false}'
```

------
#### [ PowerShell ]

**Pour configurer ENA Express lorsque vous attachez une interface réseau**  
Utilisez l’applet de commande [https://docs.aws.amazon.com/powershell/latest/reference/items/Add-EC2NetworkInterface.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Add-EC2NetworkInterface.html), comme indiqué dans les exemples suivants.

**Exemple 1 : utiliser ENA Express pour le trafic TCP, mais pas pour le trafic UDP**  
Cet exemple configure `EnaSrdEnabled` comme `true` et permet de définir `EnaSrdUdpEnabled` par défaut comme `false`.

```
Add-EC2NetworkInterface `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -InstanceId i-1234567890abcdef0 `
    -DeviceIndex 1 `
    -EnaSrdSpecification_EnaSrdEnabled $true
```

**Exemple 2 : Utiliser ENA Express à la fois pour le trafic TCP et le trafic UDP**  
Dans cet exemple, nous configurons `EnaSrdEnabled` et `EnaSrdUdpEnabled` sur `true`.

```
Add-EC2NetworkInterface `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -InstanceId i-1234567890abcdef0 `
    -DeviceIndex 1 `
    -EnaSrdSpecification_EnaSrdEnabled $true `
    -EnaSrdUdpSpecification_EnaSrdUdpEnabled $true
```

**Pour mettre à jour les paramètres ENA Express pour l’attachement de votre interface réseau**  
Utilisez l’applet de commande [https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2NetworkInterfaceAttribute.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2NetworkInterfaceAttribute.html), comme indiqué dans les exemples suivants.

**Exemple 1 : utiliser ENA Express pour le trafic TCP, mais pas pour le trafic UDP**  
Cet exemple configure `EnaSrdEnabled` sur `true` et permet à `EnaSrdUdpEnabled` de prendre la valeur `false` par défaut s’il n’a jamais été défini auparavant.

```
Edit-EC2NetworkInterfaceAttribute `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -EnaSrdSpecification_EnaSrdEnabled $true ; 
Get-EC2NetworkInterface -NetworkInterfaceId eni-0123f4567890a1b23 | `
Select-Object `
    NetworkInterfaceId, 
    @{Name = 'EnaSrdEnabled'; Expression = { $_.Attachment.EnaSrdSpecification.EnaSrdEnabled }}, 
    @{Name = 'EnaSrdUdpEnabled'; Expression = { $_.Attachment.EnaSrdSpecification.EnaSrdUdpSpecification.EnaSrdUdpEnabled }} | `
Format-List
```

**Exemple 2 : Utiliser ENA Express à la fois pour le trafic TCP et le trafic UDP**  
Dans cet exemple, nous configurons `EnaSrdEnabled` et `EnaSrdUdpEnabled` sur `true`.

```
Edit-EC2NetworkInterfaceAttribute `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -EnaSrdSpecification_EnaSrdEnabled $true `
    -EnaSrdSpecification_EnaSrdUdpSpecification_EnaSrdUdpEnabled $true ;
Get-EC2NetworkInterface -NetworkInterfaceId eni-1234567890abcdef0 | `
Select-Object `
    NetworkInterfaceId, 
    @{Name = 'EnaSrdEnabled'; Expression = { $_.Attachment.EnaSrdSpecification.EnaSrdEnabled }}, 
    @{Name = 'EnaSrdUdpEnabled'; Expression = { $_.Attachment.EnaSrdSpecification.EnaSrdUdpSpecification.EnaSrdUdpEnabled }} | `
Format-List
```

**Exemple 3 : arrêter d’utiliser ENA Express pour le trafic UDP**  
Cet exemple configure `EnaSrdUdpEnabled` sur `false`.

```
Edit-EC2NetworkInterfaceAttribute `
    -NetworkInterfaceId eni-0123f4567890a1b23 `
    -EnaSrdSpecification_EnaSrdUdpSpecification_EnaSrdUdpEnabled $false ; 
Get-EC2NetworkInterface -NetworkInterfaceId eni-0123f4567890a1b23 | `
Select-Object `
    NetworkInterfaceId, 
    @{Name = 'EnaSrdEnabled'; Expression = { $_.Attachment.EnaSrdSpecification.EnaSrdEnabled }}, 
    @{Name = 'EnaSrdUdpEnabled'; Expression = { $_.Attachment.EnaSrdSpecification.EnaSrdUdpSpecification.EnaSrdUdpEnabled }} | `
Format-List
```

------

## Configurer ENA Express dès le lancement
<a name="ena-express-configure-on-launch"></a>

Vous pouvez utiliser l’une des méthodes suivantes pour configurer ENA Express directement lorsque vous lancez une instance. Les liens indiqués renvoient aux AWS Management Console instructions relatives à ces méthodes.
+ **Assistant de lancement d’instance** : vous pouvez configurer ENA Express au lancement grâce à l’assistant de lancement d’instance. Pour plus d’informations, consultez la rubrique **Configuration avancée du réseau** dans les [Paramètres réseau](ec2-instance-launch-parameters.md#liw-network-settings) de l’assistant de lancement d’instance.
+ **Modèle de lancement** : vous pouvez configurer ENA Express au moment du lancement lorsque vous utilisez un modèle de lancement. Pour plus d’informations, consultez la page [Créer un modèle de lancement Amazon EC2](create-launch-template.md), puis développez la section **Paramètres du réseau** et consultez la section **Configuration avancée du réseau**.