Last year I worked on a project that used data over cellular and such was not a sure thing. In your case you may be crossing between carriers and if said carriers don't have it all setup just so, it can fail.
Let me put it another way, why do you think it's your problem to solve? That is, you don't run the cellular network and if you dive into this you find that data connections over cellular are hit and miss. This is why we had to re-write our apps to buffer, re-try among other things.
Your question about port ranges makes me think you need to have a deeper chat with your support. I can't fit a course in networking here but it's one of the problems with cellular networks.
Another issue we ran into is the great firewall of China. That one is nothing short of amazing.