SMTP: 두 판 사이의 차이

youngwiki
편집 요약 없음
편집 요약 없음
2번째 줄: 2번째 줄:


==개요==
==개요==
Simple Mail Transfer Protocol(SMTP)은 이메일의 핵심 프로토콜이다. 준영이 승빈에게 메일을 보낼 때, SMTP는 준영의 user agent가 메시지를 mail server에 전송하고, 승빈이의 user agent와 연결된 server에 전송하는 과정을 담당한다. 이때 보내는 메시지의 내용은 철저하게 reliably하게 전달되어야 하므로, port 번호 25번을 이용한 TCP service를 이용한다. <ref>이 전송은 TCP의 전형적인 절차, 즉, handshaking, message 전송, 연결 종료를 따른다.</ref>
Simple Mail Transfer Protocol(SMTP)은 이메일의 핵심 프로토콜이다. 준영이 승빈에게 메일을 보낼 때, SMTP는 준영의 user agent가 메시지를 mail server에 전송하고, 승빈이의 user agent와 연결된 server에 전송하는 과정을 담당한다. 이때 보내는 메시지의 내용은 철저하게 reliably하게 전달되어야 하므로, port 번호 25번을 이용한 TCP service를 이용한다. <ref>이 전송은 TCP의 전형적인 절차, 즉, handshaking, message 전송, 연결 종료를 따른다.</ref> 또한 SMTP는 일반적으로 메시지를 메일 전송에 중간 server를 이용하는 것 없이 상대 user agent와 연결된 server까지 직접 전송한다.


==특징==
==특징==
* SMTP는 persistent connection을 사용한다.
* SMTP는 persistent connection을 사용한다. 이를 통해서 client가 전송할 다른 message가 존재한다면 해당 TCP 연결을 통해 전송할 수 있다.
*  
* SMTP는 message를 ASCII code 형식으로 제한한다.


==Operation of SMTP==
HTTP와 비교하자면, HTTP는 client가 server에 request하여 능동적으로 object를 'pull'하는 반면, SMTP는 client가 가만히 있어도 server가 해당 client와 연결된 mail server로 이를 'push'한다는 차이점이 있다. 또한 HTTP에서 client로 전송되는 object들은 개별 response message에 캡슐화되어있지만, SMTP는 여러 object들이 한번에 multipart message로 함께 전송된다는 차이점이 있다.
[[파일:SMTP 예시.png|테두리|프레임없음|600x600픽셀]]


SMTP의 작동 과정을 알아보기 위해 준영이 승빈이에게 메일을 보내는 과정을 자세히 살펴보자.
# 준영은 메시지를 jsbjsb@sogang.ac.kr로 작성하고 보내고자 user agent를 이용한다.
# 준영의 user agent는 메시지를 준영의 mail server로 보내고, 해당 message는 server의 message queue에 저장된다.<ref>TCP를 이용한다.</ref>
# 준영의 mail server에서 실행 중인 SMTP client는 message queue에 있는 message를 확인하고, 승빈의 mail server에서 실행 중인 SMTP server와 TCP 연결을 한다.
# 초기의 SMTP handshaking 이후, SMTP client는 message를 TCP 연결을 통해서 전송한다.
# 승빈의 mail server에 있는 SMTP server가 해당 message를 수신하고 승빈의 mailbox에 이를 저장한다.
# 승빈은 원할 때 user agent를 실행하여 message를 읽는다.
이떄, SMTP는 1~4까지의 과정을 담당한다. 그외의 과정은 PoP, IMAP 등의 프로토콜을 사용한다.
또한 SMTP는 일반적으로 메시지를 메일 전송에 중간 server를 이용하는 것 없이 상대 user agent와 연결된 server까지 직접 전송한다.


==각주==
==각주==
[[분류:컴퓨터 네트워크]]
[[분류:컴퓨터 네트워크]]

2025년 3월 21일 (금) 18:12 판

상위 문서: Eletronic Mail

개요

Simple Mail Transfer Protocol(SMTP)은 이메일의 핵심 프로토콜이다. 준영이 승빈에게 메일을 보낼 때, SMTP는 준영의 user agent가 메시지를 mail server에 전송하고, 승빈이의 user agent와 연결된 server에 전송하는 과정을 담당한다. 이때 보내는 메시지의 내용은 철저하게 reliably하게 전달되어야 하므로, port 번호 25번을 이용한 TCP service를 이용한다. [1] 또한 SMTP는 일반적으로 메시지를 메일 전송에 중간 server를 이용하는 것 없이 상대 user agent와 연결된 server까지 직접 전송한다.

특징

  • SMTP는 persistent connection을 사용한다. 이를 통해서 client가 전송할 다른 message가 존재한다면 해당 TCP 연결을 통해 전송할 수 있다.
  • SMTP는 message를 ASCII code 형식으로 제한한다.

HTTP와 비교하자면, HTTP는 client가 server에 request하여 능동적으로 object를 'pull'하는 반면, SMTP는 client가 가만히 있어도 server가 해당 client와 연결된 mail server로 이를 'push'한다는 차이점이 있다. 또한 HTTP에서 client로 전송되는 object들은 개별 response message에 캡슐화되어있지만, SMTP는 여러 object들이 한번에 multipart message로 함께 전송된다는 차이점이 있다.


각주

  1. 이 전송은 TCP의 전형적인 절차, 즉, handshaking, message 전송, 연결 종료를 따른다.