Mmm. smarthost is the way to go. and to be honest the MS smtp is not design to cater such load.
Each outbound mail will take one connection, I'm not aware of any config to maintain X number of connection, it doesn't have the 'http keep alive' setting at protocol level I beileve.
So in your case - I would think that the connection limit was hit at either end, though it said smart host dropped it. what's the connection between ? 1gb base? what is the msg size? i think it choke the whole pipe as well for 22k. do you use teaming or get a 10gb port?
In the past my peak session is 5k, and it still having issue from time to time. so in a way i 'delay' it manually. For those that required immediate send out, the script will create and mail object and send it right a way, for those say news letter, etc. I got the dev guy to do batch by batch. 1k each batch, with 10 - 30mins interval before next batch. and my smart host and this smtp are in the same switch with teaming at the smart host level.