This is a just a very short article about limitations and options with route leaking on the ex4600 switch. This switch is base on the Trident II chip manufactured by Broadcom. It is not very new but it is still a solid piece of silicon used by many platforms across the vendors (Arista, Cisco Juniper). In case of Juniper it is used in the QFX5100 and the EX4600. The EX4600 is classified as an aggregation switch for offices or small DCs so there are rather serious limitations on what you could expect from the device as from all the members of EX switch family.
So I have had many conversation over the years in regards of that is MTU and how does it work and what is the relationship between frame/packet/datagram sizes. Despite the fact that this is actually fairly simple there seems to be a lot of confusion on this topic so that is why this article come about.
Let me start with couple of statements that would explain the issue in broader terms. JUNOS is system based on fairly old version of FreeBSD UNIX (I think something like version 4.X). The BSD serves as the underlying layer for services that run like daemons on top of the OS. This is great for many reasons as you can do thing like separate various functions completely in daemons. Or you can use some existing BSD packages without much work allowing for faster implementation of needed features. Also BSD in general is quite good for for the way it treats the kernel/network stack (which is different from Linux). So how does this look like? In the traditional JUNOS the logic would be something like this:
When an SRX is your wan facing router/firewall you might want to continuously test your connectivity. That is when the RPM probes do come in handy. The RPM probes are very similar to ip-sla from cisco but way more limited. On their own they just provide statistics which is nice but not very helpful. Juniper also has a feature called ip-monitoring that works in conjunction with the rpm probes and can take a result of an rpm probe and take some action on it.
The ex3300 has a feature out of the box which is that specific ports are by default used for virtual chassis function. This might be handy in some situations but most of the time it is annoying and bit obscure. This short article will explain how to disable this feature completely and permanently.