Patrick Nagel put forth on 6/26/2010 2:08 AM:
The connections are used for IMAP IDLE [1], AFAIK. So the first five folders (a.k.a mailboxes) you access(?) get "push mail" - the moment a new mail goes in or out, Thunderbird knows about it. Why they chose the number five, I don't know. IMO it would be better, if you could choose explicitly, which folders should be "push", and then TB would create as many connections as you have set folders to "push". Or even better: IMAP NOTIFY [2] gets implemented in dovecot and in Thunderbird, and one TCP connection suffices for an arbitrary amount of "push" folders :)
I'm no IMAP expert, but what you state here doesn't make any sense at all. With the exception of early FTP implementations, I've not seen any/many widely used protocols that require different/multiple sockets for different types of data or commands. This is the total opposite of efficiency.
I just sent myself a test message from gmail and within a second of watching postfix smtpd fire the email showed in my inbox in TB. This shows that IDLE is working with only a single IMAP connection to Dovecot. I don't really have a way to test your "IDLE per folder per connection" theory as all my folders are list mail folders populated by a sieve script. When I send this I'll watch top and see if it hits immediately or has to wait the "check every 1 minute" setting in TB.
[1] http://www.faqs.org/rfcs/rfc2177.html [2] http://www.faqs.org/rfcs/rfc5465.html
RFCs are a huge PITA to read and digest. I may take a look if required, but for now I think this theory is malarky. No offense intended. Just calling it as I see it.
-- Stan