Depends on your definition of upper layer. Email is actually pretty straight forward.
When you send a message from your mail client, it goes to some sort of local mail handler. In the case of mail with your ISP, that mail handler may not be very smart and only delivers the mail to the mail server of your ISP via the SMTP protocol.
The ISPs SMTP server has quite a bit more intelligence. It may look to see what IP address the mail came from and decide to reject it due to spam filter rules. It might also look at the email address information in the From: and To: to see if it matches their rules. For instance, if you tried to forge the source of the message, which used to be extremely easy. Once the message itself passes all of the rules, it will attempt to deliver the message to the next destination.
To do this, it looks up the MX (mail exchanger) record for the domain in which you are trying to send mail. You can see these yourself if you do this:
nslookup
set querytype=mx
yahoo.com
Each mail exchanger will have a preference and map to an address in which you can deliver mail to. The mail handler will then attempt to contact those mail exchangers via the same protocol that your mail client gave it to the ISP (SMTP tcp/25) and handoff the mail.
At that point, things just repeat themselves. Filters are re-checked, sources are checked, spoofing rules are checked, and the system tries to find out what to do with your email. In the case of something like 'bob@yahoo.com', there may be multiple mail servers where your data is actually stored all hidden by that 'yahoo.com' domain. So some sort of lookup may be necessary to find out where to REALLY deliver your mail. If you look through your mail headers, you may be able to see these.
Finally, your mail reaches a mailbox. When you view it either via POP3, IMAP4, a web client (which may use one of the previous protocols or their own), etc.
2006-10-10 03:40:13
·
answer #2
·
answered by Anonymous
·
0⤊
0⤋