I was going through the use cases of GRE tunnel and see that it is also used to carry multicast traffic over the internet.I understand that multicast IP belongs to class D address which is a public IP and can be routed.

Q1:Why is multicast not supported over the internet ? Why do we need to encapsulate in GRE ? Can you please explain in laymen terms ?

Q2:When we use the term 'internet', what exactly does it refer to? Would it be collection of all ISPs across the world?

3 Answers 3


Why is multicast not supported over the internet ?

There is only one multicast range. Sharing that range across the Internet would mandate an address allocation scheme akin to public unicast addresses, so that the addresses you use are really yours and not used by someone else.

Additionally, using global multicast would require a global announcement and subscription system. Possibly, something similar to BGP with ASNs (or an extension) could work, but designing that would represent a huge project.

Why do we need to encapsulate in GRE ?

GRE hides your (private/multicast/...) addresses in the inner packet from the rest of the Internet that only sees the outer packet. Also, you use the outer packet destination address to direct the traffic where you want it, ie. from one site to another.

When we use the term 'internet', what exactly does it refer to?

An internet is any number of networks that are interconnected to each other.

The Internet is a global internet where a large number of carriers, ISPs and other organizations interconnect to form a (mostly) universally available network.

The differences include

  • most internets are (by magnitudes) smaller than the Internet
  • the Internet uses unique public addressing coordinated by IANA
  • an internet can use any addressing scheme its participants agree on - it could even support multicast

A1: Because normally you need to run PIM protocol in order to achieve end-to-end connectivity for multicast network. PIM doesn't normally run between ISP boundaries. It would be pretty complicated and protocol itself wasn't designed for that scale.

A2: It depends. From networking point of view I would say that Internet is merely a collection of public routes, i. e. BGP full view.

  • 1
    A1 isn't totally right - MBGP has existed for a long time as a mechanism to carry RPF information within a BGP address family and was introduced as a way to maintain independent multicast domains. It absolutely can- and does- scale pretty well. The issues at hand for why multicast isn't supported have a lot more to do with the cost and complexity of maintaining the infrastructure versus the potential revenue realized for doing so.
    – rnxrx
    Commented Jan 8, 2017 at 1:09
  • Yeah, but MBGP just distributes routing information. Without PIM forwarding will not work. It in turn implies every and each ISP should run PIM inside their network.
    – ar_
    Commented Jan 8, 2017 at 12:20

The multicast use case for the GRE tunnel is typically to allow the routers on either side of the link to run a routing protocol between each other. Say you've got an office in Boston with 10 IP subnets inside it, and an office in Seattle with 8 subnets inside it, and you want all subnets to have connectivity to each other. You can set up a GRE tunnel between the Boston and Seattle edge routers over the internet, and then run a routing protocol such as OSPF between them to share the routing information between both sites. The OSPF process on the routers uses multicast to discover each other, that's why you need multicast to be supported over the tunnel. GRE is often used where multicast is not supported by the VPN type in use. You could send other multicast traffic over the tunnel too, but by far the most common reason is to allow the routing protocol to work.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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