
Against an XL or really many large dogs, there is nothing you can do except try and find some sort of barrier, as you say. Realistically they are just too powerful. A couple of weeks ago I had to break up a fight here between two dogs, 21kg and 24kg, and I could only manage it by forcing one back into the house and shutting the door between them. They are both very strong and neither is a patch on the power of an XL. I've had one persistently trying to hump me (youngster, recently rehomed, bit stressed but a sweet boy otherwise) and I couldn't so much as move one of his toes!
Choking off can work on a smaller dog - I can't imagine it being physically possible on any very large dogs tbh, purely because of the force needed - and I have done that in the past. It's effective, but it does run the risk of injury once the dog lets go to breathe.
There is a thing called Bite Back, which is basically canine pepper spray, that might be worth a go but used with care. Human pepper spray is illegal to carry.
I'll be honest, an attack from any dog while I'm out walking mine is one of my biggest fears. Not even for fear of trying to stop the attacker, but because some of mine would definitely fight back, and it would be nigh impossible to stop without help (and there are too many stories of the other owner not even trying).