GLossary Pages

Sunday, October 17, 2010

I Can't sent mail (network.tcp.sendbuffer)

I can't send mail is a fairly common complaint in the Thunderbird support forums. The reasons for this are Myriad, but Today I want to discuss just one in Particular.

It is something of a real gotcha and usually only appears when you try and send mail with attachments. The issue is that with the release of Thunderbird version 3 a rather obscure value that controls communications was changed to increase performance. This is all well and good for the vast majority of users, but there are those out there with older routers and modems for whom it has caused a significant communications failure. The value is stored in Thunderbird as the network.tcp.sendbuffer.

The following is a copy and paste of a workaround posted by Michael A Pasek for the problem

This _may_ be due to faulty network equipment -- usually "low-end" routers. TB3 increased the amount of data that TB can send without waiting for an acknowledgement from the SMTP server. With properly-operating equipment, this change increases performance because it allows all available network bandwidth to be utilized.

However, some equipment apparently cannot buffer this much data, and will "reset" when the amount of outstanding data reaches (approximately) 128KB. For those cases, you can decrease the "allowed outstanding data" size in TB so that it will send less data before waiting for an acknowledgement from the SMTP server. Do do this, you need to add a variable to your configuration:


If the problem you are experiencing is due to faulty network equipment, you should now be able to send mail. You MAY need to quit and restart Thunderbird; I don't have this problem, and others who have used this workaround did not specify whether they had to restart TB or not.

Please note that this is NOT a Thunderbird "bug"; it is a bug in some network component between your computer and the SMTP server -- most commonly a "SOHO" (Small Office/Home Office) router. If you have such a router, check to make sure you are using the latest version of its firmware (although in at least one case, even the latest router firmware still exhibited the problem).