why don't email clients have smtp servers built in? - TCP-IP

This is a discussion on why don't email clients have smtp servers built in? - TCP-IP ; As I understand it, SMTP servers send emails to other SMTP servers. Some SMTP servers simply forward these emails to SMTP servers and others actually break apart the email, extract the domain, get it's MX record, and send the email ...

+ Reply to Thread
Results 1 to 6 of 6

Thread: why don't email clients have smtp servers built in?

  1. why don't email clients have smtp servers built in?

    As I understand it, SMTP servers send emails to other SMTP servers.
    Some SMTP servers simply forward these emails to SMTP servers and
    others actually break apart the email, extract the domain, get it's MX
    record, and send the email to an SMTP server hosted on the domain
    mentioned in the MX record.

    My question is... why don't email clients do the latter? Why do they
    require you specify an SMTP server? Why not, when you're using SMTP,
    just have the email client, be it Outlook or Thunderbird or whatever,
    just send a message to each of the SMTP servers for each of the
    domains you're trying to send an email to?

    The only thing I can figure is that would maybe be time consuming for
    an end users email client to do and so maybe it's just better to
    offload the work to a dedicated SMTP server?

  2. Re: why don't email clients have smtp servers built in?

    On Jul 3, 5:47*pm, yawnmoth wrote:
    > As I understand it, SMTP servers send emails to other SMTP servers.
    > Some SMTP servers simply forward these emails to SMTP servers and
    > others actually break apart the email, extract the domain, get it's MX
    > record, and send the email to an SMTP server hosted on the domain
    > mentioned in the MX record.
    >
    > My question is... *why don't email clients do the latter? *Why do they
    > require you specify an SMTP server? *Why not, when you're using SMTP,
    > just have the email client, be it Outlook or Thunderbird or whatever,
    > just send a message to each of the SMTP servers for each of the
    > domains you're trying to send an email to?
    >
    > The only thing I can figure is that would maybe be time consuming for
    > an end users email client to do and so maybe it's just better to
    > offload the work to a dedicated SMTP server?



    Well, it's mainly a configuration issue, essentially any email client
    *can* be pointed at the destination SMTP server (perhaps awkwardly,
    but it can be done), and it will send mail. More than a few command
    line email client can do that automatically from the email address -
    it's a pretty simple DNS look up or two to find the destination
    server.

    The issues are security and availability. Many networks* do not allow
    general outgoing SMTP connections from clients (since if they're
    coming from a client PC they're almost always being used for spam),
    and second, your email server is more likely to be available than the
    remote one. Also many organization insist that outgoing mail get
    scanned for spam and viruses, and that usually happens on the local
    mail server. Further, many mail servers won’t accept mail unless it
    looks like it’s coming from a “real” mail server (where “real” is
    defined in various not particularly satisfying ways).

    Not only that your connection to your email server is likely to be
    much faster. So it's usually much quicker and more reliable to dump
    your email on your local server, and let it worry about getting it to
    the destination.

    *Arguably all networks that are well managed. Although all well
    managed networks should be able to turn that function on in a case-by-
    by-case basis.

  3. Re: why don't email clients have smtp servers built in?

    On Jul 3, 3:47*pm, yawnmoth wrote:

    > My question is... *why don't email clients do the latter? *Why do they
    > require you specify an SMTP server? *Why not, when you're using SMTP,
    > just have the email client, be it Outlook or Thunderbird or whatever,
    > just send a message to each of the SMTP servers for each of the
    > domains you're trying to send an email to?


    It simply takes more sophistication and effort to run a mail server
    than could be justified just because someone needs to send a few
    emails.

    > The only thing I can figure is that would maybe be time consuming for
    > an end users email client to do and so maybe it's just better to
    > offload the work to a dedicated SMTP server?


    You want every single email sender to be a mail server administrator?!
    Surely most people have better things to do with their time. Suppose
    the destination mail server is down and the user is using dialup.
    Should they stay online for the typical two day attempt interval in
    case the destination server comes back up?

    DS

  4. Re: why don't email clients have smtp servers built in?

    You could hand-deliver your own surface mail too to each destination, or
    each destination's local post office, but the local letterbox is simpler
    for everybody.

  5. Re: why don't email clients have smtp servers built in?

    In article
    <6b589800-1e28-481f-84c1-7f147221c9d6@d1g2000hsg.googlegroups.com>,
    David Schwartz wrote:

    > On Jul 3, 3:47*pm, yawnmoth wrote:
    >
    > > My question is... *why don't email clients do the latter? *Why do they
    > > require you specify an SMTP server? *Why not, when you're using SMTP,
    > > just have the email client, be it Outlook or Thunderbird or whatever,
    > > just send a message to each of the SMTP servers for each of the
    > > domains you're trying to send an email to?

    >
    > It simply takes more sophistication and effort to run a mail server
    > than could be justified just because someone needs to send a few
    > emails.


    It's also not as reliable.

    Most mail clients were designed when dialup was the common way that end
    users connected to the Internet, and people didn't stay connected all
    the time. If the destination server is unreachable, you need to keep
    retrying periodically, and this is not possible if you're only connected
    to the Internet sporadically. While broadband is very common now, we
    also have wireless laptops, which are only online when they're at a
    hotspot.

    So your mail is much more likely to be delivered in a reasonable time if
    you hand off responsibility to a dedicated server that's always
    connected to the Internet.

    --
    Barry Margolin, barmar@alum.mit.edu
    Arlington, MA
    *** PLEASE don't copy me on replies, I'll read them in the group ***

  6. Re: why don't email clients have smtp servers built in?

    On Thu, 3 Jul 2008 15:47:46 -0700 (PDT), yawnmoth wrote:
    > As I understand it, SMTP servers send emails to other SMTP servers.


    Yes, or delivers them to mailboxes.

    > Some SMTP servers simply forward these emails to SMTP servers and
    > others actually break apart the email, extract the domain, get it's MX
    > record, and send the email to an SMTP server hosted on the domain
    > mentioned in the MX record.


    No breaking apart is needed; SMTP has the RCPT TO command to tell the
    next server who the mail is for.

    > My question is... why don't email clients do the latter? Why do they
    > require you specify an SMTP server?


    Maybe they do on the OS you use (Windows?). On various Unix OSes,
    they just pipe the mail into /usr/lib/sendmail, which passes
    responsibility for the mail to an SMTP server running on the local
    machine.

    But yes, even on Unix that server is often configured to just relay
    the mail to one nearby server.

    > Why not, when you're using SMTP,
    > just have the email client, be it Outlook or Thunderbird or whatever,
    > just send a message to each of the SMTP servers for each of the
    > domains you're trying to send an email to?
    >
    > The only thing I can figure is that would maybe be time consuming for
    > an end users email client to do and so maybe it's just better to
    > offload the work to a dedicated SMTP server?


    On Unix, there are two reasons:

    - the way it has always worked still works well, so why change it now?

    - the end-users do not have to configure their various mail clients.

    In general:

    - the security and anti-spam measures (misguided or not) mentioned by
    others in this thread.

    - the need to handle retransmissions if the destination mailbox is
    unavailable (also mentioned by others). If the mail client does the
    MX lookup like you suggest, then to guarantee that the retransmissions
    happen, some part of the mail client has to be running all the time.

    Then you might as well split it out to a separate daemon program,
    call it /usr/lib/sendmail, offer it as a mail-sending mechanism for
    all existing and future mail clients -- and then you have the Unix
    solution.

    And if the local machine isn't always up, or connected to the
    internet, then you're likely to want to pass responsibility to an
    SMTP server near you which is often available ... and you are back
    at the original solution.

    - issues related to bounce messages, I guess ...

    /Jorgen

    --
    // Jorgen Grahn \X/ snipabacken.se> R'lyeh wgah'nagl fhtagn!

+ Reply to Thread