В нескольких примерах у меня есть два адреса электронной почты, на которые я отправляю, скажем, «111@abc.com» и «999@xyz.com» (два разных получателя в двух разных доменах). В этом случае отправляющая сторона - это Exchange 2007, который затем проходит через систему фильтрации содержимого (вспомните MessageLabs-esque).
В первом примере я пытаюсь отправить электронное письмо, и через 2 дня получаю отказ, в котором говорится, что
Diagnostic-Code: smtp;550 4.4.7 QUEUE.Expired; message expired
Во втором примере я пытаюсь отправить электронное письмо и через 6 дней получаю отказ со следующим диагностическим кодом:
Diagnostic-Code: smtp; 5.4.7 - Delivery expired (message too old) '[Errno 61] Connection refused' (delivery attempts: 0)
Мой вопрос, по сути, таков: независимо от конкретного возвращенного сообщения, какие вещи в большом масштабе учитывают (а), когда сообщение отклоняется - то есть, сколько времени оно пытается до сбоя, (б) и какую роль выполняет отправка vs y получение конечной игры при определении этих задержек / таймаутов / сбоев?
Я предполагаю, что если есть проблема с отправкой, то применяется политика повтора отправляющего сервера, тогда как если SMTP подключается, отвечает, но не получает, что в такой ситуации принимающий сервер играет большую роль.
Спасибо!
Зависит от отправителя и ошибки получателя.
если ошибка получателя окончательная (то есть ошибка, означающая, что дальнейшие попытки невозможны, например, «учетная запись не существует», которая имеет определенный SMTP-код), тогда она завершится ошибкой ТОГДА.
Если это сервер, который просто отключается / недоступен, он настраивается на отправителе (как долго он пытается куда-то сбросить сообщение).
если это через ретранслятор (конечный сервер отключен, сервер резервного копирования принимает), тогда он настроен на сервере резервного копирования ... поскольку ваш сервер фактически принял электронную почту и избавился от нее.
В вашем случае получатель не хочет иметь ничего общего с вами / вашим сервером, поэтому он отказывается от подключений (сервер существует, tcp-соединение не работает - может быть одним из нескольких исонов, модуля защиты от спама, брандмауэра среди них), поэтому ваш сервер не "знать" (окончательного "нет") и повторяет попытки, если это настроено.
Многие люди ожидают, что электронная почта будет работать как обмен мгновенными сообщениями. Однако это совсем другой механизм, использующий механизм промежуточного хранения. Возможны значительные задержки, что обеспечивает более надежную доставку, но менее мгновенное уведомление о проблемах.
Как быстро электронное письмо ждет, прежде чем оно будет возвращено, настраивается на сервере, который его возвращает. Это может быть ваш сервер, один из серверов в клиентской системе или промежуточный сервер. Обычно повторные попытки отправки электронной почты будут длиться около недели. Механизм повтора и предложения по расписанию повтора содержатся в RFC. (Не помню конкретный.) Обычно каждый час или около того в течение нескольких часов, затем с более длинными интервалами для более длительных задержек.
Некоторые серверы отправляют одно или два сообщения, информируя отправителя о том, что их сообщение задерживается. Это необязательно, и обычно последнее сообщение о задержке отправляется в течение дня или двух.
Сообщения также могут быть возвращены немедленно по причинам, которые считаются постоянными. Я применяю некоторые политики, которые не буду изменять, из-за чего электронные письма будут отклоняться. Обычно они применяются к конфигурации сервера, которая указывает, что электронное письмо с почти 100% вероятностью может оказаться спамом. Отправка электронной почты на учетную запись, которая здесь не является локальной, также считается постоянной (только входящая почта). Ограничения по размеру также обычно считаются постоянной проблемой. Сообщения с перманентом будут возвращены немедленно, если они уже не были отложены из-за временной проблемы.
Если я откажусь от доставки по другим причинам, то сообщение будет отложено. Это сообщает вызывающему серверу, что состояние временное и может быть исправлено. Правильно настроенный сервер будет повторять попытку в течение нескольких дней. Таким образом обрабатываются некоторые возможные условия спама. Если я замечаю, что легитимный сервер настроен неправильно, я изменяю свою конфигурацию и разрешаю ему доставить сообщение, а также пытаюсь уведомить менеджера другого сервера, чтобы он исправил их конфигурацию. Это хорошо работает с некоторым спамом, поскольку повторные попытки не выполняются должным образом.
Я бы подумал, что это настраиваемое предпочтение с любой стороны. После того, как вы передали почту, вы не сможете контролировать, когда вы получите уведомление о доставке от обработчика на другом конце. Все это зависит от владельцев MTA, включая вас.