https://www.zerotier.com/blog/the-state-of-nat-traversal/
There are lots of others. The TS post is well written though, and contains some interesting information like the way the birthday paradox relates to punching symmetric NATS.