Posts 네트워크 - POP3, IMAP, SMTP 개념 및 차이점 비교
Post
Cancel

네트워크 - POP3, IMAP, SMTP 개념 및 차이점 비교

본 포스팅은 본인 소유의 네이버 블로그에서 작성한 글을 재게시하였습니다.

들어가며

우리는 구글, 네이버, 다음과 같은 포털 사이트와 직장에서 발급 받은 이메일 등 여러 이메일 계정들을 가지고 있다. 메일을 주고 받는데 1개의 계정만 쓴다면 다행이지만, 직장에서는 그룹 웨어로 발급 받은 회사 전용 메일로 메일을 주고 받아야 하는 경우가 생긴다.

즉, 개인용 이메일과 업무용 이메일을 분리해서 사용해야 하는 경우가 생기는 것이다. 그럼 각 계정의 이메일을 확인하기 위해서 매번 각각의 홈페이지를 열고, 로그인 하고, 메일함을 확인해야 하는 불편함이 발생한다.

따라서 위와 같은 문제를 해결하기 위해 보통 마이크로 오피스의 아웃룩(Outlook)을 사용한다.

아웃룩을 사용하면 인터넷 창을 열지 않고도 아웃룩 프로그램 하나만 실행시켜서 연동한 모든 이메일을 한번에 확인할 수 있다.

이때, 아웃룩을 사용하기 위해서는 POP3/IMAP 설정을 해주어야 한다. 참고로 POP3와 IMAP은 서버로부터 이메일을 가져오는 프로토콜이고, SMTP는 이메일을 전송하기 위한 프로토콜이다.

POP3(Post Office Protocol3)

우선, POP3는 원격 서버로부터 나의 기기(컴퓨터/스마트폰 등에 이메일을 다운로드하는 기능을 갖는다.

내 서버 메일 보관함에 있는 메일을 내 컴퓨터로 다운받고, 다운받은 메일은 서버 용량 확보를 서버에서 삭제한다.

초창기에 이메일을 사용할 때는 서버 용량이 크지 않았기 때문에 POP3 프로토콜을 주로 사용했다. 하지만 최근에는 저장 매체의 발달로 지금처럼 서버 용량에 대한 걱정이 없어서 IMAP을 사용하는 것이 보편적이고, 두 가지 프로토콜을 모두 사용하기도 한다.

장점

  • 인터넷을 통해 기기로 메일을 다운 받아 놓으면, 오프라인에서도 받아놓은 메일을 확인할 수 있다.
  • 서버의 부담이 적어진다. 다운로드된 메일은 서버에서 삭제하기 때문에 서버의 공간 소모가 적다.

단점

  • 여러 기기에서 사용하기 어렵다. 이미 다운 받은 메일은 삭제하기 때문에, 여러 기기에서 동기화하는데에는 어려움이 있다. 즉, 컴퓨터에서 메일을 다운 받으면, 스마트폰에서는 컴퓨터에서 열어본 메일을 확인할 수 없다는 것이다.
  • 메일 원문 전체를 다운로드하기 때문에 보안에 취약하다.

IMAP(Internet Message Access Protocol)

다음으로 IMAP은 원격 서버에서 나의 이메일에 접근하는 프로토콜이다.

나의 이메일 보관함에 있는 메일을 내 컴퓨터에서 접근하고, 그 메일을 캐시(Cache)한다. (임시 저장을 함으로써 접근 속도를 높임)

POP3와는 달리 이메일을 다운로드하는 것이 아니라 접근을 하는 방식이기 때문에, 여러 기기에서 메일을 볼 수 있는 동기화가 가능하다.

그래서 컴퓨터에서 IMAP으로 보는 메일함과 스마트폰에서 IMAP으로 보는 메일함이 항상 동일하게 된다.

장점

  • 여러 기기에서 동시 접속이 가능하다.
  • 동기화가 된다. 어느 기기를 이용해도 메일함은 항상 같은 상태를 유지한다.

단점

  • 항상 인터넷 연걸이 되어 있어야 동기화가 지속된다.
  • 메일을 자동으로 삭제하지 않기 때문에 서버 용량이 부족할 수 있다.

SMTP(Simple Mail Transfer Protocol)

마지막으로 SMTP는 네트워크 너머로 간단한 텍스트 메일을 보내는 기능을 수행한다.

클라이언트-서버 간 통신, 서버-서버 간 통신을 모두 담당한다.

텍스트 기반의 프로토콜이기에 request/response 메시지뿐만 아니라 모든 문자가 7bit ASCII로 되어 있어야 한다.

따라서 8bit 이상의 코드를 사용하는 언어나 첨부파일, 바이너리는 MIME(마임)을 통해 7bit로 변환되어 전달된다.

메시지가 생성되면 호출된 SMTP가 메시지를 받고, TCP를 이용하여 다른 호스트의 SMTP에게 전달한다.

단점

  • 텍스트만 보낼 수 있다. 폰트나 첨부 파일은 SMTP만으로는 보낼 수 없다. 텍스트가 아닌 것들은 Text로 변환하기 위해 MIME(Multipurpose Internet Mail Extension)을 사용한다.

총 정리 및 비교

POP3IMAPSMTP
기능메일수신메일발신
서버 부담낮음높음트래픽 상황에 따라 다름
동기화 여부XO해당 없음
포트번호(일반적)11014323

참고자료

https://coding-groot.tistory.com/69 https://blog.hyosung.com/3358 https://ourinfo.tistory.com/161 https://sambalim.tistory.com/60

This post is licensed under CC BY 4.0 by the author.

자료구조 - 이중 연결 리스트(Doubly Linked List)

github 잔디심기를 위한 git commit 날짜 바꾸기