It has been stated in the past by customers, and we’ve noticed as recently as today, that sometimes emails to Google are delayed. It isn’t immediately clear where the problem lies, and customers will sometimes state that it’s an MXroute problem or ask us to fix it. It surely couldn’t be a Google problem, they’re the reliable ones, right? Well we’re not here to talk bad about Google, they’re a large company and we have friends there, but we do want to take a moment to shed some light on what happens.
In a recent test we sent an email from email@example.com to firstname.lastname@example.org, the goal being to measure the delay and where it came from. Let’s follow the path:
First, let’s start with the log of it leaving the Arrow (ours) server:
2020-01-15 00:58:25 1irW4m-0003gZ-5Y => email@example.com Ffirstname.lastname@example.org
Note that the timezone is different between this server and the next, so the “00” will be “18” on the next servers. The important part is what I bolded above, the “58:25” which is the minute and seconds. So next, let’s look at our outbound relay:
Jan 14 18:58:27 qps postfix-101/smtp: 3AFE7100967: email@example.com, relay=gmail-smtp-in.l.google.com[126.96.36.199]:25, delay=0.76, delays=0.29/0.01/0.17/0.3, dsn=2.0.0, status=sent (250 2.0.0 OK 1579046307 i191si9770432ywe.263 - gsmtp)
So exactly 2 seconds after I sent the email, Google accepted it with the response “250 2.0.0 OK.”
Four minutes later, the email arrived in my inbox at Gmail. Looking at the headers I see when they actually received it:
Received: from qrelay101.mxroute.com (qrelay101.mxroute.com. [188.8.131.52]) by mx.google.com with ESMTPS id i191si9770432ywe.263.2020.01.14.15.58.27 for <firstname.lastname@example.org> (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 14 Jan 2020 15:58:27 -0800 (PST)
So they received the email at the same time my server says they did, :58:27. Looking further up in the headers, I found this:
Received: by 2002:a25:945:0:0:0:0:0 with SMTP id u5csp5698907ybm; Tue, 14 Jan 2020 16:02:28 -0800 (PST) X-Received: by 2002:a25:e744:: with SMTP id e65mr18594346ybh.174.1579046308730; Tue, 14 Jan 2020 15:58:28 -0800 (PST) X-Google-Smtp-Source: APXvYqx7a0zZ+fQY4/LykTRIdjjuUpf0J5AOCP286Bs+yhnJDA0Qvfj3H6qbynVwhL7nUAq+fSVp X-Received: by 2002:a25:e744:: with SMTP id e65mr18594308ybh.174.1579046307851; Tue, 14 Jan 2020 15:58:27 -0800 (PST)
You read that from the bottom up. First they received the email at their internal server at :58:27, then they passed it to another internal server at :58:28, and finally they received it at their final internal server at :02:28.
So what we have here is roughly 4 minutes that an email sat undelivered to my inbox, stuck inside Google’s internal servers waiting for delivery. If you see a similar situation, I hope this helped you to understand why.