2.4 인터넷 전자메일
전자 메일
3개 주요 요소
-사용자 에이전트, 메일 서버, SMTP(Simple Mail Transfer Protocol)
사용자 에이전트
: 메일 리더(Mail Reader)라고도 함. 메시지를 읽고, 작성하고, 보내고 전달한다.
-MS Outlook, Mozila, Thunderbird 등
-송수신 메시지는 서버에 저장
메일 서버
: 받은 메시지를 유지하고 관리하는 메일 박스
-보내는 메시지의 메시지 큐
-메일 서버들 간의 SMTP
SMTP
: 클라이언트의 메일 메시지를 25번 포트의 tcp 연결 --> 보내는 서버에서 받는 서버로 직접 전송
3단계 전송 과정
-핸드 쉐이킹 -> 메시지 전송 -> 종료
명령 / 응답 상호 작용
-명령 : 아스키 문자
응답 : 상태 코드와 문장
메시지는 7비트 ASCII 이어야 함
-헤드, 몸통 모두
-USER가 메일에 2진 DATA 넣어 전송 가능. BUT SMTP로 보내지기 위해서는 아스키 코드로 인코딩 되어야 하고
받을 때 디코딩 하여 보이스 등의 멀티미디어 데이터 전송이 가능
ex) 앨리스가 밥에게 메시지 전송
SMTP의 특징
-SMTP는 지속 연결을 사용
-SMTP 메시지(헤어&몸체) 는 7비트 ASCII로 표시
-SMTP 서버는 메시지의 끝을 CRLF.CRLF로 표시
HTTP와의 비교
-HTTP : PULL 프로토콜 -> 클라이언트가 서버로부터 받아오는 PULL
-SMTP : PUSH 프로토콜 -> 메시지를 보내는 프로토콜
-모두 ASCII 명령 / 응답 상호 작용을 하고 응답 코드를 가짐
-HTTP : 각 객체는 응답 메시지에 캡슐화(헤더만 ASCII)
-SMTP : 모든 메시지의 객체를 한 메시지로 만듦
메일 접속 프로토콜
-SMTP는 수신자의 서버에 메시지를 전송하고 저장-메일 접속 프로토콜이 서버로부터 메시지를 추출
POP : Post Office Protocol
-인증(에이전트 <-> 서버)과 다운로드-stateless로 상태 저장 안함
IMAP(Internet Mail Access Protocol)
-POP보다 다양한 특성을 갖고 복잡함-서버에 저장된 메시지를 관리(state 저장)
HTTP -Gmail, Hotmail, Yahoo! Mail 등