E-Mail Protocols
우리가 사용하는 이메일 또한 네트워크를 이용한 응용 프로그램이다.
따라서 메일을 주고 받을 때 사용하기 위한 여러 종류의 프로토콜들이 정의되어 있으며,
대표적으로는 TCP/IP 모델의 응용 계층에 속한 SMTP, POP3, IMAP 등이 있다.
SMTP
SMTP란 Simple Mail Transfer Protocol의 약자로, 간단한 메일 전송 프로토콜이라는 뜻이다.
TCP 25번 포트를 통해 통신하며, 클라이언트에서 서버 또는 서버에서 서버로 메일을 전송할 때 사용한다.
POP3
POP3란 Post Office Protocol 버전 3를 말한다.
TCP 110번 포트를 사용하며, 서버에서 클라이언트로 수신된 메일을 전송할 때 사용한다.
이 때, 클라이언트로 전송한 메일은 서버에서 삭제하므로 여러 클라이언트에게 메일을 보낼 수 없다.
IMAP
IMAP란 Internet Mail Access Protocol의 약자로, 인터넷 메일 접근 프로토콜이라는 뜻이다.
TCP 143번 포트를 사용하며, POP3와 마찬가지로 서버에서 클라이언트로 메일을 전송할 때 사용한다.
POP3와 다른 점으로, 전송한 메일도 서버에 저장하기 때문에 여러 클라이언트에게 메일을 보낼 수 있다.
MIME
MIME이란 Multipurpose Internet Mail Extensions의 약자로, 다목적 인터넷 메일 확장이라는 뜻이다.
전자 메일을 보낼 때 사용하는 인터넷 표준 포맷으로, 여러 개의 헤더로 본문을 구분한다.
MIME 표준은 다음과 같은 규칙을 따른다.
MIME-Version: 1.0
Content-Type: text/plain
This is the body of the message.
맨 첫 줄에는 MIME 문서 여부 및 버전을 나타내는 MIME-Version 헤더가 있다.
그리고 다음 줄에는 컨텐츠 종류를 나타내는 Content-Type 헤더가 있고, 그 아래 컨텐츠가 포함되어 있다.
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=frontier
This is a message with multiple parts in MIME format.
--frontier
Content-Type: text/plain
This is the body of the message.
--frontier
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
PGh0bWw+CiAgPGhlYWQ+CiAgPC9oZWFkPgogIDxib2R5PgogICAgPHA+VGhpcyBpcyB0aGUg
Ym9keSBvZiB0aGUgbWVzc2FnZS48L3A+CiAgPC9ib2R5Pgo8L2h0bWw+Cg==
--frontier--
여러 개의 부분으로 구성된 데이터를 보내고 싶다면 첫번째 Content-Type을 multipart로 해준 뒤,
각각의 부분들을 다시 Content-Type 헤더와 boundary 문자열로 감싸주면 된다.
'Computer Science > Network' 카테고리의 다른 글
File Transfer Protocol (FTP) (0) | 2020.07.15 |
---|---|
HyperText Transfer Protocol (HTTP) (0) | 2020.07.15 |
OSI Model & TCP/IP Model (0) | 2020.06.30 |