เอสเอ็มทีพี
ประวัติ

รูปแบบต่าง ๆ ของการส่งข้อความอิเล็กทรอนิกส์แบบ หนึ่งต่อหนึ่ง ถูกนำมาใช้ในคริสต์ทศวรรษ 1960 ผู้ใช้ทำการสื่อสารโดยใช้ระบบที่พัฒนาขึ้นสำหรับคอมพิวเตอร์เมนเฟรมโดยเฉพาะ เนื่องจากคอมพิวเตอร์มีการเชื่อมต่อถึงกันมากขึ้นโดยเฉพาะอย่างยิ่งใน ARPANET ของรัฐบาลสหรัฐ จึงมีการพัฒนามาตรฐานเพื่ออนุญาตให้มีการแลกเปลี่ยนข้อความระหว่างระบบปฏิบัติการ เอสเอ็มทีพีเติบโตขึ้นจากมาตรฐานเหล่านี้ที่พัฒนาขึ้นในช่วงทศวรรษ 1970
เอสเอ็มทีพี มีรากฐานมาจากการแผนดำเนินงานสองอย่างที่อธิบายไว้ในปี พ.ศ. 2514: Mail Box Protocol ซึ่งการนำมาใช้งานถูกโต้แย้ง แต่มีการพูดถึงในเอกสารคำร้องขอความคิดเห็น RFC 196 และ RFC อื่น ๆ และโปรแกรม SNDMSG ซึ่งอ้างอิงจากเอกสารคำร้องขอความคิดเห็น RFC 2235 เรย์ ทอมลินสัน (Ray Tomlinson) จากบริษัท BBN คิดค้นคอมพิวเตอร์ TENEX สำหรับใช้ในการส่งข้อความเมลผ่าน ARPANET ขณะนั้นมีเครื่องแม่ข่ายน้อยกว่า 50 โฮสต์ที่เชื่อมต่ออยู่กับ ARPANET
การใช้งานเพิ่มเติม ได้แก่ FTP Mail และ Mail Protocol ทั้งคู่เริ่มต้นในปี พ.ศ. 2516 การพัฒนายังคงดำเนินต่อไปตลอดช่วงคริสต์ทศวรรษ 1970 จนกระทั่ง ARPANET เปลี่ยนเข้าสู่อินเทอร์เน็ตสมัยใหม่ในราวปี พ.ศ. 2523 จากนั้น จอน พอสเตล (Jon Postel) ได้เสนอเกณฑ์วิธี Mail Transfer Protocol ในปี พ.ศ. 2523 ซึ่งการพึ่งพาการส่งจดหมายผ่านโพรโตคอล FTP เริ่มถูกนำออกไป เอสเอ็มทีพีได้รับการเผยแพร่ในชื่อ RFC 788 ในเดือนพฤศจิกายน พ.ศ. 2524 โดย พอสเตล
มาตรฐาน SMTP ได้รับการพัฒนาในช่วงเวลาเดียวกันกับ Usenet ซึ่งเป็นเครือข่ายการสื่อสารแบบหนึ่งต่อหลายเครือข่ายที่มีความคล้ายคลึงกัน
เอสเอ็มทีพีเริ่มใช้กันอย่างแพร่หลายในช่วงต้นคริสต์ทศวรรษ 1980 ในขณะนั้นมันเป็นส่วนเสริมของเมล Unix to Unix Copy Program (UUCP) ซึ่งเหมาะกว่าสำหรับการจัดการการโอนอีเมลระหว่างเครื่องที่เชื่อมต่อเป็นระยะ ๆ ในทางกลับกัน SMTP จะทำงานได้ดีที่สุดเมื่อทั้งเครื่องส่งและรับเชื่อมต่อกับเครือข่ายตลอดเวลา ทั้งสองใช้กลไกการจัดเก็บและส่งต่อ (store and forward) และเป็นตัวอย่างของเทคโนโลยีแบบพุช แม้ว่ากลุ่มข่าวของ Usenet จะยังคงถ่ายทอดด้วยโพรโตคอล UUCP ระหว่างเซิร์ฟเวอร์ แต่การใข้ UUCP สำหรับการส่งผ่านเมลได้หายไปเกือบหมด พร้อม ๆ กันกับการกำหนด "bang paths" ที่ใช้เป็นส่วนหัวของการกำหนดเส้นทางของข้อความ
โปรแกรมตัวกระทำการส่งผ่านเมล Sendmail ซึ่งเผยแพร่ในชุดกระจายซอฟต์แวร์เบิร์กลีย์ซอฟต์แวร์ดิสทริบิวชัน 4.1cBSD ในปี พ.ศ. 2525 ไม่นานหลังจากคำร้องขอความคิดเห็น RFC 788 เผยแพร่ในเดือนพฤศจิกายน พ.ศ. 2524 เป็นหนึ่งในโปรแกรมตัวกระทำการถ่ายโอนอีเมลรายแรกที่ใช้เกณฑ์วิธี SMTP เมื่อเวลาผ่านไป BSD Unix กลายเป็นระบบปฏิบัติการที่ได้รับความนิยมมากที่สุดบนอินเทอร์เน็ต Sendmail จึงกลายเป็น MTA (ตัวกระทำการรับส่งอีเมล) ที่พบบ่อยที่สุด โปรแกรมเซิร์ฟเวอร์ ที่ใช้เอสเอ็มทีพี ที่ได้รับความนิยมอื่น ๆ ได้แก่ Postfix, qmail, Novell GroupWise, Exim, Novell NetMail, Microsoft Exchange Server และ Oracle Communications Messaging Server
การส่งข้อความ (RFC 2476) และ SMTP-AUTH (RFC 2554) ได้รับการแนะนำในปี พ.ศ. 2541 และ 2542 ทั้งสองอย่างนี้อธิบายถึงแนวโน้มใหม่ในการส่งอีเมล จากเดิมเซิร์ฟเวอร์เอสเอ็มทีพีมักจะอยู่ภายในองค์กร ทำหน้าที่รับอีเมลจากภายนอกองค์กร และส่งต่อข้อความจากในองค์กรไปยังภายนอก แต่เมื่อเวลาผ่านไปในทางปฏิบัติเซิร์ฟเวอร์เอสเอ็มทีพี (ตัวกระทำการถ่ายโอนอีเมล) ได้ขยายบทบาทเป็นตัวกระทำการรับส่งข้อความสำหรับโปรแกรมตัวกระทำการรับส่งอีเมลของผู้ใช้ ซึ่งบางส่วนทำการส่งต่อจดหมายจากภายนอกองค์กร (เช่นผู้บริหารของ บริษัท ต้องการส่งอีเมลขณะเดินทางโดยใช้เซิร์ฟเวอร์ SMTP ขององค์กร) ปัญหานี้อันเป็นผลมาจากการขยายตัวและความนิยมอย่างรวดเร็วของเวิลด์ไวด์เว็บหมายความว่า เอสเอ็มทีพีต้องรวมกฎและวิธีการเฉพาะสำหรับการส่งต่ออีเมล และรับรองความถูกต้องของผู้ใช้เพื่อป้องกันการละเมิด เช่นการส่งต่ออีเมลที่ไม่พึงประสงค์ (สแปม) ความพยายามตามคำร้องขอความคิดเห็น RFC 2476 ในการส่งข้อความได้ริเริ่มขึ้นเนื่องจากเซิร์ฟเวอร์อีเมลยอดนิยมมักจะเขียนจดหมายซ้ำ เพื่อพยายามแก้ไขปัญหาในอีเมลนั้น ตัวอย่างเช่น การเพิ่มชื่อโดเมนไปยังที่อยู่ที่ไม่เหมาะสม ลักษณะการทำงานนี้มีประโยชน์เมื่อข้อความที่ได้รับการแก้ไขเป็นการส่งครั้งแรก แต่เป็นอันตรายเมื่อข้อความนั้นมาจากที่อื่นและกำลังถูกส่งต่อ การแยกเมลทั้งหมดออกเป็นการส่งและการส่งต่อ ได้รับการพิจารณาว่าเป็นวิธีการอนุญาตและสนับสนุนให้มีการเขียนในการส่งซ้ำ ในขณะที่ห้ามไม่ให้เขียนในการส่งต่อซ้ำ เนื่องจากสแปมแพร่หลายมากขึ้นจึงถูกมองว่าเป็นวิธีการให้สิทธิ์สำหรับอีเมลที่ส่งออกจากองค์กร ตลอดจนการตรวจสอบย้อนกลับ การแยกการส่งต่อและการส่งนี้ กลายเป็นรากฐานสำหรับแนวทางปฏิบัติด้านความปลอดภัยอีเมลสมัยใหม่อย่างรวดเร็ว
เนื่องจากโพรโตคอลนี้เริ่มต้นจากการใช้ข้อความแบบ ASCII เท่านั้นจึงไม่สามารถจัดการกับไฟล์ไบนารี หรืออักขระในภาษาที่ไม่ใช่ภาษาอังกฤษจำนวนมากได้ มาตรฐานเช่น Multipurpose Internet Mail Extensions (MIME) ได้รับการพัฒนาเพื่อเข้ารหัสไฟล์ไบนารี สำหรับการถ่ายโอนผ่าน SMTP Mail Transfer Agent (MTA) ที่พัฒนาขึ้นหลังจากโปรแกรมตัวกระทำการส่งผ่านเมล Sendmail มีแนวโน้มที่จะใช้งานแบบ 8-bit-clean เพื่อให้สามารถใช้กลยุทธ์ "just send eight" เป็นทางเลือกในการส่งข้อมูลข้อความตามต้องการ (ในการเข้ารหัสอักขระแบบ 8 บิตแบบ ASCII) ผ่านเอสเอ็มทีพี ยังคงมีปัญหาอาการภาษาต่างดาว (Mojibake) เนื่องจากการแมปชุดอักขระที่แตกต่างกันระหว่างผู้ผลิตซอฟต์แวร์ แม้ว่าที่อยู่อีเมลจะยังคงอนุญาตเฉพาะ ASCII โปรแกรมตัวกระทำการส่งผ่านเมล MTA แบบ 8 บิตในปัจจุบันมีแนวโน้มที่จะรองรับส่วนขยาย 8BITMIME ซึ่งอนุญาตให้ส่งไฟล์ไบนารีได้โดยง่ายเกือบจะเหมือนการส่งข้อความธรรมดา เมื่อเร็ว ๆ นี้ส่วนขยาย SMTPUTF8 ถูกสร้างขึ้นเพื่อรองรับข้อความ UTF-8 ซึ่งอนุญาตให้มีเนื้อหาและที่อยู่ระหว่างประเทศในสคริปต์ที่ไม่ใช่อักษรละติน เช่น อักษรซิริลลิก หรืออักษรจีน
นักวิทยาการคอมพิวเตอร์หลายคนได้มีส่วนร่วมในการสร้างข้อกำหนดหลักของเอสเอ็มทีพี ได้แก่ Jon Postel, Eric Allman, Dave Crocker, Ned Freed, Randall Gellens, John Klensin และ Keith Moore
ลูกศรสีน้ำเงินแสดงถึงรูปแบบการนำโพรโตคอล SMTP ไปใช้