2

As far I know,

  • CAM table is Content Addressable Memory table where MAC address is stored
  • FIB table is Forward Information Base table which is a dynamic table that maps MAC addresses to ports.

Both seems does the same work. So whats the difference between these two?

3

The CAM table is the place where the MAC addresses are stored. It is used by the layer 2 control to forward incoming frames to their destination ports, something like this:

enter image description here

The FIB table contains all the layer 3 routes, something like this:

enter image description here

| improve this answer | |
  • So CAM table used in switch and FIB table used in layer 3 switch and router? – muhammad Mar 6 '18 at 9:01
  • @muhammad Yes. They are separate tables, one for layer 2 forwarding and the other one for layer 3 routing. – jcbermu Mar 6 '18 at 9:03
3

CAM specifies a special type of memory (you can address it by using the "thing" you're looking for as an address), so a FIB could be implemented in CAM (but doesn't have to). "CAM table" and "FIB" can mean multiple things or the same thing, depending on vendor and/or hardware. Nowadays CAM is more and more replaced by faster memory with "normal" addressing.

For example on Juniper gear you have your routing tables (RIB) and MAC tables, both get combined in a forwarding table which holds both L3 and L2 "routes". This is pushed to the linecards where it is programmed into hardware memory.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.