Unicast Flooding due to Asymmetric Routing

Hi, i lost you at this part

SW2 will put the IP packet from host 2 in an Ethernet frame that has its own MAC address as the source. It will then be forwarded to SW1. The problem here is that SW1 will never learn the MAC address of host 2.

When H1 actually replies with icmp reply packets, wouldn’t the switches learn of H1’s mac address in their vlan/trunk ?
I can understand the initial broadcast to get H1 to reply, but what i dont understand is why this problem persists for the entire 1000 frames.

Do the switches (mac-address-table) only get updated with ARP packets or do they do so for all sort of frames ?

Hi Chia,

Switches will learn source MAC addresses from any Ethernet frame. The problem here, is that SW2 is unable to learn H1’s MAC address and SW1 is unable to learn H2’s MAC address.

When H1 replies with an ICMP reply, it will send it to SW1 (its default gateway) in VLAN 10.

SW1 receives it in VLAN 10, routes it and decides to forward it to VLAN 20. It builds a new Ethernet frame with its own MAC address as the source.

That’s the key to this problem…SW2 will never learn the source MAC address of H1 since SW1 inserts its own MAC address as the source. It never sees the MAC address of H1. The only time it was able to learn it was the first ARP, since that is a broadcast frame…

Does that make sense?

Rene

hi rene,

thanks i understand now.

Because of the ARP’s entry in each switch, ARP request/broadcast is not used.
During the routing part, the source mac address will be replaced with the vlan’s l3 interface, while the dest mac will be followed with ARP request.
However, since the mac in ARP request is not in the mac-address table is not found, it is replaced with broadcast instead.

is this understanding correct ?

Hi Rene,
Two questions:
Can the same situation occur with HSRP if one switch is designated for vlan 20 and the other for vlan 10 ?

You suggest “Change your network design. Use a single router or multilayer switch as the default gateway for all VLANs.”
I think the problem is that you have 2 SVIs for each VLAN not that they are on a different switch.
If the SVI for VLAN 10 was on one switch and VLAN 20 on the other but only one SVI per vlan I think we do not get this problem. Right ?

Thanks
Stuart

Hi Stuart,

This situation could also occur with HSRP yes. Cisco has a good example for this:

HSRP Assymetric Routing

Having only one SVI per switch would solve the problem but it’s not the underlying problem here :slight_smile: It’s fine to have multiple SVI interfaces on your switches, if you use one switch as the default gateway for both VLANs then you wouldn’t have this problem.

Rene

1 Like

Hi Rene,
I have some question. What if H1 ping to H4 vlan 10(same subnet?) ,will SW2 learn MAC from H1?

Thank in advance

Hello Ler-sak!

If H1 and H4 are on the same subnet, then no routing will take place. That means that the frame that goes through SW1 and SW2 will have the same source MAC (H1’s MAC) and destination MAC (H4’s MAC) in the frame throughout the whole transmission. So, yes SW2 will learn the MAC address from H1. Actually, both switches will learn both MAC addresses.

I hope this has been helpful!

Laz

Thank you for your support, Lazaros Agapides

Hi,

I think there is a mistake here
When SW1 routes traffic from VLAN 10 to <strong>VLAN 10</strong>, it will use an Ethernet frame that has its own MAC address as the source. As a result, SW2 will never learn the MAC address of host1. When SW2 wants to send something to host 1, it will flood the packets on all interfaces in VLAN 10:

You mean Vlan 20 ?

Hi Houari,

That is a typo yes, just fixed it. Thanks!

Rene

This is very informative. I had heard that it’s best to match your ARP cache timeout to your aging timers but never knew why until now.

Very informative article.

19 posts were merged into an existing topic: Unicast Flooding due to Asymmetric Routing

Hi Rene,

Thank you for the article. But I have a question. If I use SW1 multilayer switch as a gateway for all vlans, and sw2 as a L2 switch will the problem occur again? I think it will occur for the traffic from H2 to H1 because, SW2 will not learn the mac address of H1. Is it true ?If it is true, then for the design should we use just 1 multilayer switch and connect all hosts to it to avoid flooding?

Thanks,
Umut

Hi Umut,

The problem here is that some traffic is switched, some is routed. If you use SW1 as the default gateway for all VLANs and SW2 only for switching then there won’t be a problem. SW2 will be able to learn all MAC addresses, the MAC address of H2 and the MAC address on the VLAN interface of SW1.

Otherwise, changing the ARP timeout is another solution.

Rene

Aaahh!! That is an intense topic.
Is it possible in a network/ LAN to have two default gateways? I am not sure how much stupid is this question!!! Just came to mind if redundancy can give a better result.

Excellent explanation. I was thinking whole day and your answer helped me to realize the difference between an ARP message (inside Ethernet Frame) and Ethernet Frame.
What currently in my mind is - Why the switch doesn’t learn MAC address from the ARP table if it is not present in MAC table? Too many confusion in this topic… !!!

Hello Rosna,

Each router in your network can be used as a default gateway by your hosts but the problem is that most hosts only support a default gateway.

That’s why we use “gateway redundancy” protocols like HSRP, VRRP, and GLBP. You can read more about this here:

About the switch…A switch is a layer two device so all it “cares” about is forwarding Ethernet frames. It only cares about looking at the source MAC addresses to learn addresses and looking at the destination MAC address to figure out where to send it to.

ARP is just one protocol that you can find in an Ethernet frame…an Ethernet frame can also contain an IPv4 packet, an IPv6 packet or some other protocols.

ARP is used to bind a layer two address (MAC address) to a layer three address (IP address). We only need this on a switch if you access the switch with telnet/SSH or if you configure your switch as a router (that’s a layer three switch).

Rene

what does symmetric Routing look like ?

Hello Pipat

When referring to routing, asymmetric and symmetric are terms used to describe the path that the packets between two endpoints take. Symmetric routing takes places when two hosts are communicating with each other and all traffic sent from Host A to Host B takes the exact same path (passes through the same routers) as traffic that is sent from Host B to Host A.

Asymmetric routing takes place when traffic sent from Host A to Host B is different than the route taken for traffic sent from Host B to Host A.

These paths can and often are different because there may be multiple redundant paths or load balancing routing configurations that allow for the use of multiple routes to get from one host to another. Symmetric and Asymmetric routing are not static situations but can and do change based on the routing parameters and policies that are in place as well as on the changing state of network traffic and potential link failures.

I hope this has been helpful!

Laz