LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Server
User Name
Password
Linux - Server This forum is for the discussion of Linux Software used in a server related context.

Notices


Reply
  Search this Thread
Old 09-06-2013, 09:41 PM   #1
SaintDanBert
Senior Member
 
Registered: Jan 2009
Location: "North Shore" Louisiana USA
Distribution: Mint-20.1 with Cinnamon
Posts: 1,771
Blog Entries: 3

Rep: Reputation: 108Reputation: 108
a question about email sending and delivery


Can someone tell me or direct me to reading that will let me learn about email sending and delivery?

As I understand things, modern email works like this:
  • I type my message and SEND
  • My message gets written to a local file along with some sort of local file "work order"
  • local software gathers all of the work orders for processing
  • processing involves connecting to the target domain
  • after connection, the message file gets passed to the target
  • after receiving a message file, a server turns some cranks
  • some of these cranks pass the message along to other servers
  • eventually, one crank causes notifications of the target addressee "new mail"
I know this is a vast simplification of the efforts of "Mail Transfer Agents[MTA]" and other parts of the system. My questions involve elapsed times and permitted delays.

I remember that email began when system operators had to dial phones and connect modems for each hop in the process. The modems relied on telephone lines that were rarely "leased lines" because they were so expensive based on accumulated connection time. This meant that each email hop might require an elapsed work-day.

We pat our feet and drum our fingers after pressing SEND and can mostly expect delivery in a couple of minutes or less. I know that I've received messages saying, "... still trying to deliver ..." or similar.

What determines how long my local system can take to pass a new message along to the first server?

Are there standards for email forwarding and delivery? For example, does an RFC state governing time-to-delivery, when to give up, and such?

Merci d'avance,
~~~ 0;-Dan
 
Old 09-06-2013, 10:03 PM   #2
descendant_command
Senior Member
 
Registered: Mar 2012
Posts: 1,876

Rep: Reputation: 643Reputation: 643Reputation: 643Reputation: 643Reputation: 643Reputation: 643
Your mail client passes the mail directly to YOUR mail server (the servername configured in your client - typically your ISP's).
It may be passed to a specific server that handles the outbound mail or may do the job itself.
This should happen within seconds.

This server then determines the server responsible for the domain of the recipient (by querying DNS for the MX record for the domain) and attempts to deliver it directly (there may be several more "internally routed" mail servers within the domain for your mail to actually pass through, but the listed MX servers are the only ones that recieve that domains mail directly from the world).

If it gets rejected (typically with a 5xx series error code) or fails to find a server for that domain, it will generate a 'bounce' message to let you know.

If it gets deferred (typically a 4xx series error code) or encounters a temporary DNS error, it will requeue the mail to try again on subsequent queue runs.

The retry period, retry notification time, and give up time is configurable and will vary from server to server.
Commonly, retry is on the next pass, then 10 mins, then 30, then hourly or so.
"Retrying" notification isn't commonly done.
4 days is a common time until it gives up and sends you a FAILED notification.

Last edited by descendant_command; 09-06-2013 at 10:07 PM.
 
1 members found this post helpful.
Old 09-09-2013, 01:35 PM   #3
SaintDanBert
Senior Member
 
Registered: Jan 2009
Location: "North Shore" Louisiana USA
Distribution: Mint-20.1 with Cinnamon
Posts: 1,771

Original Poster
Blog Entries: 3

Rep: Reputation: 108Reputation: 108
Quote:
Originally Posted by descendant_command View Post
Your mail client passes the mail directly to YOUR mail server (the servername configured in your client - typically your ISP's). It may be passed to a specific server that handles the outbound mail or may do the job itself. This should happen within seconds.
I believe there is still a message-file handoff on my local workstation.
Eons ago, I think things ran on a cron cycle looking for outbound messages.
Today, I think that creating a new outbound message pokes and wakes the local daemon.

Quote:
Originally Posted by descendant_command View Post
The retry period, retry notification time, and give up time is configurable and will vary from server to server. Commonly, retry is on the next pass, then 10 mins, then 30, then hourly or so. "Retrying" notification isn't commonly done. 4 days is a common time until it gives up and sends you a FAILED notification.
Is this "server" is at my ISP or employer rather than at my workstation?

Do you know the RFC or similar "authority" that describes how all this is supposed to work?

Merci,
~~~ 0;-Dan
 
Old 09-09-2013, 02:53 PM   #4
descendant_command
Senior Member
 
Registered: Mar 2012
Posts: 1,876

Rep: Reputation: 643Reputation: 643Reputation: 643Reputation: 643Reputation: 643Reputation: 643
Quote:
Originally Posted by SaintDanBert View Post
I believe there is still a message-file handoff on my local workstation.
Eons ago, I think things ran on a cron cycle looking for outbound messages.
Today, I think that creating a new outbound message pokes and wakes the local daemon.
If you have installed and configured a local MTA and set your client to use it, then yes.
Otherwise, if you enter an external servername in your client, no.
Your client may have a queue or "outbox" or such to temporarily store messages until they are successfully passed to whatever server it is configured to use.
Quote:
Is this "server" is at my ISP or employer rather than at my workstation?
Yes.

Quote:
Do you know the RFC or similar "authority" that describes how all this is supposed to work?
No. But teh interwebz produced this, which should keep you entertained for a while.
 
1 members found this post helpful.
Old 09-10-2013, 01:13 PM   #5
SaintDanBert
Senior Member
 
Registered: Jan 2009
Location: "North Shore" Louisiana USA
Distribution: Mint-20.1 with Cinnamon
Posts: 1,771

Original Poster
Blog Entries: 3

Rep: Reputation: 108Reputation: 108
Quote:
Originally Posted by descendant_command View Post
...
No. But teh interwebz produced this, which should keep you entertained for a while.
Just what I wanted (grin) a full time job reading ... for weeks ... (laugh). I did ask for it, though.

Cheers,
~~~ 0;-Dan
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
how ssmtp email client can receive email delivery golden_boy615 Linux - General 0 05-08-2011 01:14 AM
How to ENSURE email delivery ??? entz Linux - Server 8 08-29-2009 10:38 PM
Email Delivery error mangesh3381 Linux - Newbie 2 07-01-2008 04:33 AM
Qmail delivery problem - messages temporarily_deferred sending to yahoo or hotmail karen.pertierra Linux - General 1 02-12-2007 12:53 PM
Question about email sending linuxboy69 Linux - Newbie 3 06-01-2004 04:59 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Server

All times are GMT -5. The time now is 07:27 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration