NAT peut bien sûr utiliser CEF. C'est du propre guide de Cisco ici: http://www.cisco.com/en/US/tech/tk648/tk361/technologies_q_and_a_item09186a00800e523b.shtml
Q. What kind of routing performance can be expected when using Cisco IOS NAT?
A. Cisco IOS NAT supports Cisco Express Forwarding switching, fast switching, and process switching. For 12.4T release and later, fast-switching path is no longer supported. For Cat6k platform, the switching order is Netflow (HW switching path), CEF, process path.
Performance depends on several factors:
The type of application and its type of traffic
Whether IP addresses are embedded
Exchange and inspection of multiple messages
Source port required
The number of translations
Other applications running at the time
The type of hardware and processor
Les plates-formes plus grandes exécutant IOS-XR, où la FIB est distribuée aux cartes de ligne, prennent également en charge le NAT de classe opérateur, de sorte que son utilité ne se limite pas au LAN seul.
De plus, de nombreux commutateurs L3 de Cisco ne font tout simplement pas du tout NAT
CEF est le mot de Cisco pour leur FIB. Lorsque commutateur L3 vous « sh ip cef », aucune de ces informations est en fait utilisé pour pousser les paquets du tout, ce n'est que le logiciel Trie qui est utilisé pour alimenter le matériel ASIC.
CEF n'est que le terme utilisé par Cisco pour décrire leur code de stockage / récupération de données optimisé, ce n'est pas une technologie spécifique avec une fonction spécifique.
Dans la plupart des plates-formes matérielles, vous ne pouvez pas simplement exécuter la boîte sans CEF, car la structure de données CEF est nécessaire pour compiler les informations spécifiques au matériel.
Certaines fonctionnalités comme MPLS dépendent également de la structure de données CEF et ne fonctionneront donc pas sans.
La commutation LAN (L2) n'est pas abstraite via CEF, elle ne dépend donc pas du tout de CEF.
Je recommande ce livre pour des informations assez à jour sur CEF (il est écrit après une réécriture majeure du CEF vers 12.2S)
Si vous contraignez la définition CEF de IP Trie FIB, cela ne peut évidemment pas être utilisé pour NAPT, car vous ne pouvez pas prédéterminer ce qui est natté et où. Mais comme expliqué, CEF n'est pas une technologie spécifique, c'est un concept plus large, et donc c'est discutable si CEF est une fonctionnalité NAT ou non, je me tromperais du côté de la fonctionnalité CEF:
Je ne ferais jamais rien sans CEF et c'est probablement uniquement pour des raisons héritées que le choix de le désactiver existe même. Considérez Juniper, ils n'ont pas de terme spécifique qu'ils utilisent pour décrire le même concept, car ils n'ont pas besoin de le différencier d'une autre méthode, car une telle alternative inférieure n'existe pas.
la source
CEF est utile car il permet à un routeur de réécrire rapidement les informations de la couche 2 pendant les opérations de transfert de la couche 3. Les routeurs WAN doivent réécrire les informations d'en-tête Layer2 tout comme les commutateurs LAN ... CEF est extrêmement utile pour les deux types de routeur.
À un niveau élevé, le CEF remplit deux fonctions:
Exemple:
Considérez ce routeur qui a une liaison WAN HDLC sur Serial1 / 0, et une connexion LAN via FastEthernet0 / 0 ...
Supposons qu'un paquet IPv4 allant à 192.0.2.1 entre dans le routeur à partir de FastEthernet0 / 0 sur le LAN, et doit quitter Serial1 / 0 sur le WAN (le fait qu'il quitte Serial1 / 0 se trouve dans le tableau CEF ... et le CEF table fait référence à la table d'adjacence).
Lorsque le routeur reçoit le paquet IPv4 de FastEthernet0 / 0, le routeur doit supprimer l'en-tête Ethernet et ajouter l'a- tête HDLC ,
0F000800
car il s'agit d'une destination IPv4 (0x0800
existe-t-il en tant que valeur de "type" HDLC pour dire que l'en-tête suivant est IPv4).Si CEF n'a pas mis en cache les informations de réécriture d'en-tête (triviales) pour Serial1 / 0, il doit rechercher les informations manuellement au niveau du commutateur de processus (ce qui est très lent). Ces valeurs de table d'adjacence ne changeront pas tant que l'encapsulation sur Serial1 / 0 ne changera pas; par conséquent, Cisco IOS met en cache les informations de réécriture de contiguïté dans la table de contiguïté.
Les informations de réécriture s'impliquent davantage lorsque vous regardez les relais de trame ou les PVC ATM.
Ce document sur CCO (Document ID: 17812) peut expliquer les choses mieux que moi en ressassant beaucoup de contenu CCO
la source
fast-switching
) est que CEF est pré-calculé. Cependant, CEF doit toujours mettre en cache les informations, sinon il faut le rechercher au niveau du commutateur de processus ... très lent, et la raison pour laquelle nous avons besoin de CEF pour les interfaces LAN et WAN.