MAC Learning in VPLS is similar to the MAC learning mechansim in an Ethernet Switch. The concept is basic. MAC Address Learning is done and the forwarding process is done according to the tables in which MAC-address and port information is kept. These tables are Forwarding Databases (FDB). In FDBs, the MAC Addresses are associated with SAPs and SDPs. And then, the traffic is switched according to the Forwarding Databases (FDB).
Think about this, VPLS is like a mini switch in the Servis Router. This mini switch sends the packets to its destination if it knows its Destination MAC Address. If not, it forwards the traffic through all the ports. This is flooding mechanism like in Ethernet Switches. In other words, if there is a record about the destiantion in FDB, it is sent directly to that destination with the help of FDB. If there is no record, then it is flooded.
In VPLS, the mechanism is similar. At the beginning there is no record in Forwarding Databases (FDB). So, if a packet received from a SAP or a SDP, then it is flooded through all SAPs and SDPs (LSPs). Because there is no record about the destination. After this flood operation, other ends learn the senders MAC and record its FDB Table. The Forwarding Databases (FDB) is filled with such traffic and this process continues till all the nodes learn eachother. After this learning, packets are directly sent to the destinations which are known by FDB.
Basically, MAC Learning is done from the Source of the packets always. The Source MAC Address and its Port is recorded and when there is a packet to this node, the packet is sent directly to the exact destination.
Let’s talk VPLS MAC Learning on an example. There is a VPLS topology below. We will quickly cover how VPLS MAC Learning is done on this VPLS topology.
Note : Here, the bracnhes are connected to the SAPs. This is a Nokia term used for custoemer faced interfaces. This is a normal interface in Cisco and other networks.
Think about that, a device in Brach A sending a packet to a device in Branch C.
At the beginning, the MAC tables (FDBs) are empty. So, PE-A Router, sends the packet through all the related SAPs and SDPs (LSPs). This is flooding like in Ethernet Switches.
The first packet is sent and received. So, the Source Port and MAC Address is recorded to MAC Tables (FDBs).
Now, think about that, PE-C is sending a packet to PE-A. Router PE-C knows the destination MAC address and port number for this interface that connects to the customer anymore. So, without flooding the packet, it will send the packet directly to the exact destination. This time, only the real destination, PE-C will receive the packet. PE-B do not receive this packet.
This MAC Learning mechanism works and all the destinations are learned by all the nodes. Whenever a packet is send, it is send directly to the destination anymore.