전자메일은
UserAgent
,Mail Server
,Mail Transfer Protocol
로 구성 되어 있다.
User Agent
메일을 작성, 편집, 읽는 프로그램
ex) Outlook, iPhone Mail Client, Gmail...
Mail Server
송신(outgoing), 수신(incoming)될 메세지들이 메일서버에 저장된다.
Mail Box
수신(incoming)될 메세지들이 저장되는 곳.
사용자 별로 mail box가 존재한다.
Message Queue
송신(outgoing)될 메세지들이 저장되는 곳.
mail box와 달리 모든 사용자가 공통으로 사용한다.
SMTP 프로토콜
Mail server들 사이, mail server, user client들 사이의 통신 protocol.
메세지를 보내는 쪽을 의미한다. (먼저 connect을 요청하는 쪽)
메세지를 받는 쪽을 의미한다.
위 그림을 예로 들어보면,
A와 B 사이의 관계는, A가 메일을 전송했기 때문에(연결 요청을 했기 때문에) A는 client, B는 server가 된다.
B와 C사이의 관계는, B가 메일을 전송했기 때문에 B는 client, C는 server가 된다.
User Client가 메일 서버로 부터 메일들을 받아올때 사용하는 protocol 이다.
POP
1. authorization, transaction 두 단계에 걸처 일어난다.
2. POP는 이전의 session을 기억하지 못하는 단점이 있다.
3. download-and-delete mode
현재 local의 user agent를 통해 메일들을 다운 받은 후, 메일 서버에서 다운 받은 메세지들을 삭제한다. 따라서 다른 pc의 user agent에서는 조회가 불가능하다.
3. download-and-keep mode
메일을 local환경에 다운 받아도 메일서버에서 제거하지 않는다. 따라서 다른 pc에서도 조회가 가능하다
IMAP
1. POP의 단점을 보완하기 위한 Protocol이다.
2. 새로운 Session을 열어도, 이전 Session을 기억하고 있다.
3. mail box하위에 사용자 임의의 폴더를 만들 수 있다.