The problem with international routing with bsnl can be understood with knowing a little bit of history.
Usually networks of BSNL'S size should have a decent global network with stakes in submarine cables and landing station.
But BSNL doesn't have such infra and gets upstream from as much as 9 upstream providers, which is very very inefficient for a huge network like BSNL.
The international cables, landing stations etc were handled by Vsnl which is now
tata communications.
So govt did not want to compete with itself then so did not invest in infrastructure through BSNL.
After 2006, when tata took over govt didn't care enough to make arrangements for BSNL at that time these useless Dhayanidhi maran and A.raja of the DMK b***rds were holding the telecom portfolio and were busy in thier own scams like Private Telephone exchange scam and 2G scam.
So when BSNL was profitable they should have built their global infrastructure as well as start to peer with content providers within the country aggressively.But they did not do that and even they don't announce all thier prefixes at Nixi and they don't go for optimal solution but go for a solution that works for now and then leave it that.
My suggestions to fix BSNL,
1. Build global network like Jio did, but this is not possible due to current financials but must be done once BSNL becomes profitable.
2. Agressive domestic peering and ensure that no traffic inside India should be served through from outside the country due to routing errors.
3. Use the existing ports of IX like Extreme Ix and Nixi properly, as they have ports in every NIXI and Mumbai extreme IX but not using it full potential as they're not announcing all their routes at these locations. So most traffic still goes through their upstream providers.
4. Transit providers should be used only for international traffic, domestic traffic should not be served through upstream providers like TATA or airtel.