Bir konak SMTP gerçekleniminin bilinen yapısı kullanıcı posta kutuları, gelip geçen iletileri kuyruğa almak için bir veya daha fazla alan ile posta alımı ve gönderimi için çalışan bir veya daha fazla artalan sürecinden oluşur. Kesin yapı konak üzerindeki kullanıcıların ihtiyaçları ile konak tarafından desteklenen posta listelerinin boyutlarına ve sayısına bağlı olarak değişir. Özellikle yüksek trafik seviyelerini destekleyen postacılar için yardımcı olduğu kanıtlanmış çeşitli eniyilemeleri açıklayacağız.
Her kuyruklama stratejisi her türlü etkinliğin zamanaşımını her komuta özel olarak ele almalıdır *ZORUNLU*. Bir kuyruklama stratejisi ne olursa olsun hata iletilerine yanıt olarak hata iletileri göndermemelidir *ZORUNLU*.
Bir SMTP istemcisinin genel modeli giden postayı aktarmaya çalışan bir veya daha fazla süreçten oluşur. Ortalama bir sistemde, bir iletiyi oluşturan program, hemen aktarılamayıp kuyruğa alınıp belirli aralıklarla tekrar gönderilmeye çalışılmalıyken *ZORUNLU*, giden postanın yeni bir parçasının hemen dikkate alınmasını talep eden bir yönteme sahiptir. Bir posta kuyruğu girdisi iletinin kendisinden başka zarf bilgisini de içerecektir.
Belli bir hedef için bir çaba başarısız olduktan sonra çabayı yinelemek için bir süre beklenmelidir *ZORUNLU*. Genelde, yineleme aralığı en azından 30 dakika olmalıdır *ÖNERİ*; bununla birlikte, SMTP istemcisi teslimat yapılmaması için sebep saptayabildiği zaman, daha karmaşık ve değişken stratejilerin yararı olacaktır.
İleti aktarılana veya gönderici vazgeçene kadar yineleme devam eder; vazgeçme süresinin genelde en azından 4-5 gün olması gerekir. Yineleme algoritmasının parametreleri yapılandırılabilir olmalıdır *ZORUNLU*.
Bir istemci kuyruklu posta öğelerini salt tekrar göndermeye çalışmaktan çok, ulaşamadığı konakların ve ilgili bağlantı zamanaşımlarının bir listesini tutması gerekir *ÖNERİ*.
Deneyimler bu başarısızlıkların genellikle geçici olduğunu (hedef sistem ya da bağlantı çökmüştür), kuyruktaki iletiyi göndermek için ilk saatte iki, daha sonra ise iki veya üç saatte bir bağlantı kurmaya çalışmak şeklinde bir kuralın lehte olacağını göstermiştir.
SMTP istemcisi, SMTP sunucusu ile anlaşarak kuyruklama gecikmesini kısaltabilir. Örneğin, posta belli bir adresten alınmışsa, posta onu hemen gönderebilecek konak için kuyruğa alınmış gibi ele alınabilir. Bu prensibin uygulaması, çoğu durumda, ETRN [
9] gibi apaçık bir "kuyruktakileri hemen gönder" işlevi için gereksinimi ortadan kaldırabilir.
Strateji, çok sayıda adresin her konak başına özkaynak kullanımını (teslimat zamanı gibi) eniyileme gereğinin bir sonucu olarak böyle değiştirilmiş olabilir.
Bir SMTP istemcisinin erişilemeyen hedef konakların her biri için dev bir ileti kuyruğu olabilir. Bu iletilerin tümü her yineleme döngüsünde yineleniyorsa, Genel Ağ'a haddinden fazla yük bindirebilir ve gönderen sistem uzun bir süre boyunca engellenebilir. Bir SMTP istemcisinin, bir teslimat çabasının başarısız olacağını, aynı konak için kuyruklanmış iletilerin düzinelerce hatta yüzlercesinin tekrar tekrar yinelenmesi halinde bağlantı başına bırakın bir kaç dakikalık sadece tek bir dakikalık zamanaşımının bile çok büyük bir gecikmeyle sonuçlanacağını saptayabileceğine dikkat ediniz.
Aynı zamanda, SMTP istemcileri sunuculardan gelen olumsuz yanıtları arabelleğe alırken büyük dikkat sarfetmelidirler *ÖNERİ*. Çok uç bir durumda, aynı SMTP bağlantısı sırasında EHLO komutu defalarca kullanılmışsa, sunucudan farklı yanıtlar dönebilir. Daha manidar olarak, MAIL komutuna verilen 5yz yanıtları arabelleğe alınmamalıdır *ZORUNLU*.
Bir posta iletisi çok sayıda alıcıya teslim edilecekse ve bunlardan bir kısmı tek bir SMTP sunucusundaysa, bu sunucuya iletinin sadece tek bir kopyası aktarılmalıdır *ÖNERİ*. Yani, SMTP istemcisi böyle bir komut dizisi yerine:
MAIL, RCPT, DATA, ..., MAIL, RCPT, DATA
böyle bir komut dizisini kullanmalıdır:
MAIL, RCPT, RCPT,... RCPT, DATA.
Yine de, çok fazla adres varsa, MAIL komutu başına RCPT komutu sayısına bir sınırlama getirilebilir *SEÇİMLİK*. Bu verimli özelliğin gerçeklenmesi kesinlikle önerilmektedir.
Benzer şekilde, teslimatlarda tam zamanındalığın sağlanması için, SMTP istemcisi aynı anda çok sayıda giden posta aktarımını destekleyebilir *SEÇİMLİK*. Bununla birlikte, bütün kaynakların postaya tahsis edilmesinden korunmayı sağlayacak bir sınırlama uygun olabilir.
SMTP sunucusu her zaman SMTP portunu dinlemeyi sürdürmeye çalışmalıdır *ÖNERİ*. Bu, SMTP için gelen çok sayıda TCP bağlantısının desteklenmesini gerektirir. Bazı sınırlar konulabilir *SEÇİMLİK*, fakat aynı anda birden fazla SMTP aktarımını kabul edemeyen sunucular bu belirtimin amacıyla uyumlu değildirler.
Yukarıda bahsedildiği gibi SMTP sunucu postayı belli bir konak adresinden almaktayken bu konak adresi için bekleyen bir postayı yineleyebilmek için kendi SMTP kuyruklama mekanizmasını etkinleştirebilir.