What does AirPlay need from wifi and router? I have been using AirPlay to an Airport Express connected to my HiFi very successfully for years. My router and main wifi access point were Apple AirPort Extreme - so it was all Apple to Apple and it worked.

Now I have just installed a new Virgin Broadband Super Hub 2ac (it's a customised Netgear cable modem router with built-in wifi) and for reasons of local layout I have set it up as router and as a wifi access point. It works very well. I have put the old AirPort Extreme into bridge mode so it just serves as a switch, and have reset the Airport Express to join the new wireless network.

Everything works well except AirPlay. Even AirPlay sometimes works - but mostly it fails. The Airport Express AirPlay service is always visible from my iPhone, but trying to play music through it just usually fails. 
The Virgin media forums have several stories of "AirPlay doesn't work with my Virgin Super hub" - and the consensus response seems to be "don't use the Super hub as a router". This seems to me to be defeatist.

There must be some requirement of AirPlay that the router or wifi service isn't satisfying. What is it? What does AirPlay need? Some particular protocol? Some special wifi setting?
AirPlay uses the following ports:


TCP 80 - http
TCP 443 - https
TCP/UDP 554 - rstp
TCP 3689 - daap
UDB 5353 - mDNS


Data from https://support.apple.com/en-us/HT202944 - TCP and UDP ports used by Apple software products and TCP and UDP ports and protocols used by Apple TV

Here's how to test ports and also an AirPort centric setup guide