Hi list,
I just recently discovered the IMAP IDLE command and tried it out with my Dovecot server. It seems to work fine and all, but it seems to be using quite a deal of bandwidth, because of the "* OK Still here" messages sent by the server at two minute intervals. I would argue that is a bit of a problem when using the IDLE command for "Push mail" on a mobile phone.
I don't know exactly what parts of the packets that mobile carriers collect payment for, but the Ethernet bandwidth consumed by one such message is 149 bytes (83 bytes for the message itself, and 66 bytes for the TCP ACK from the client). At two minute intervals, that becomes over 100 KB per day, and over 3 MB per month. At GRPS rates typical here in Sweden, that becomes about 5-7 USD per month.
That might not seem tremendously much, but seeing how it is what takes up the vast majority of the IMAP bandwidth, it is still quite annoying.
Are those messages really necessary? I mean, Dovecot still times out after half an hour if the client doesn't "finish" the IDLE command and re-issues it, right? (Coincidentally, I would like to argue that it would be better not to time out at all during an IDLE command and just turn on TCP keepalives instead, but that is the minor issue here)
I'll apologize in advance if this is already a tunable option, but I haven't found anything about it in the configuration file.
Cheers, Fredrik Tolf