쉽게 배우는 데이터 통신 과 컴퓨터 네트워크
전자 메일
2/31
학습목표
메일 시스템의 사용자 환경을 이해한다.
헤더, 메시지, MIME 같은 메일 내용의 구성을 이해한다.
일반적인 전자 메일의 일반화된 시스템의 구조를 파악하고, 동작 원리를 이해한다.
SMTP의 개념과 동작 원리를 이해한다.
POP 서비스의 개념과 동작 원리를 이해한다.
3/31
1절. 전자 메일 사용자 환경
•
메일 편집•
메일 내용 읽기•
수신 메일 관리: 메일 박스•
전달 여부 통지– 메일 시스템의 하부 기능에 의한 구현: 메일 오류의 통지 등 – 메일 시스템 자체 기능에 의한 구현: 옵션으로 수신 여부 확인
•
메일 전달 메일 처리
전자 메일 주소
•
<로그인 이름>@<메일 서버 이름>4/31
1절. 전자 메일 사용자 환경
메일 처리
메일 프로그램 화면
5/31
1절. 전자 메일 사용자 환경
메일 형식
•
메일 내용은 ASCII 코드 기반의 텍스트 형식으로 정의됨•
멀티미디어 데이터를 수용하기 위한 기능 확장 헤더와 메시지
•
헤더 [그림 16-1]의•
공백 한 줄•
메시지 내용 [그림 16-1]의 메시지 헤더 [표 16-1]
6/31
1절. 전자 메일 사용자 환경
MIME
•
실행 파일, 음성, 영상 등 멀티미디어 데이터를 수용하기 위한 기능 확장 MIME 구조 [그림 16-2]
•
메일 송신 전에 비-ASCII 데이터를 ASCII 데이터로 변환•
메일 수신 전에 ASCII 데이터를 비-ASCII 데이터로 변환7/31
1절. 전자 메일 사용자 환경
MIME
MIME 헤더 [표 16-2], [표 16-3]
8/31
2절. 전자 메일 시스템 구조
•
사용자 환경: 메일 응용 프로그램인 사용자 에이전트 (UA)•
네트워크 환경: 메일을 중개하고 송수신하는 메일 전송 에이전트 (MTA)9/31
2절. 전자 메일 시스템 구조
사용자 에이전트
사용자 화면 [그림 16-4]
10/31
2절. 전자 메일 시스템 구조
사용자 에이전트
UA 사용자 프로그램 입력 정보
•
송신자의 메일 주소•
수신자의 메일 주소•
참조자의 메일 주소•
메일의 메시지 헤더: 메일 제목 등•
메일의 메시지 바디: 메일 내용11/31
2절. 전자 메일 시스템 구조
메일 전송 에이전트
MTA 정보 설정 [그림 16-5]
•
받는 메일 서버: POP 프로토콜•
보내는 메일 서버: SMTP 프로토콜12/31
2절. 전자 메일 시스템 구조
메일 전송 에이전트
SMTP와 POP 서비스의 관계 [그림 16-6]
13/31
3절. SMTP
•
전자 메일 전송은 SMTP 프로토콜을 지원하는 호스트 사이에 이루어짐•
SMTP 명령과 그에 따른 SMTP 응답•
메일을 보내는 과정– SMTP 클라이언트와 SMTP 서버 사이의 TCP 연결을 설정하는 단계 – SMTP 서버에 메일을 보내는 데이터 전송 단계
– 메일 전송을 완료하고 TCP 연결을 종료하는 단계
14/31
3절. SMTP
SMTP의 구조 [그림 16-7]
•
STMP 클라이언트와 SMTP 서버 사이의 데이터 전송 규칙15/31
3절. SMTP
SMTP의 명령과 응답
SMTP 명령 [표 16-4]
16/31
3절. SMTP
SMTP의 명령과 응답
SMTP 응답 [표 16-5]
17/31
3절. SMTP
연결 설정
•
Well-known 포트: TCP 25번 명령과 응답
•
TCP 연결이 설정되면 SMTP 세션 연결 설정 [그림 16-8]18/31
3절. SMTP
연결 설정
시뮬레이션 [그림 16-9]
•
클라이언트: kihyun.uu.ac.kr의 telnet 프로그램•
서버: information.uu.ac.kr19/31
3절. SMTP
연결 설정
시뮬레이션
•
텔넷 프로그램과 SMTP 서버의 관계 [그림 16-10]20/31
3절. SMTP
데이터 전송
명령과 응답 [그림 16-11]
메일 주소 확인 과정
•
MAIL FROM•
RCPT TO 헤더 정보 전송 과정
•
DATA•
From:•
To:•
Date: 메시지 전송 과정
•
빈 줄•
송신 메시지•
점(.)21/31
3절. SMTP
데이터 전송
시뮬레이션 [그림 16-12]
22/31
3절. SMTP
데이터 전송
전송 메일의 확인 [그림 16-13]
•
mailx 프로그램23/31
3절. SMTP
연결 해제
명령과 응답 [그림 16-14]
•
QUIT24/31
4절. POP 서비스
POP과 SMTP
•
SMTP: 전자 메일을 송수신하는 호스트 사이에 필요한 프로토콜•
POP: 전자 메일 서버에 보관된 메일을 개인용 PC로 다운로드 하는 프로토콜 POP 서비스의 필요성 [그림 16-15]
25/31
4절. POP 서비스
POP과 SMTP
POP과 SMTP와의 비교
•
POP– POP 명령과 POP 응답
– Well-known 포트: TCP 110번
– 메일 다운로드 과정에서 사용자 인증 허가가 반드시 필요 [그림 16-5 좌측 하단]
•
SMTP– SMTP 명령과 SMTP 응답
– Well-known 포트: TCP 25번
– 메일 송수신 과정에서 사용자 인증 허가가 불필요
26/31
4절. POP 서비스
POP 명령과 응답
POP 명령 [표 16-6]
27/31
4절. POP 서비스
POP 명령과 응답
POP 응답 [표 16-7]
28/31
4절. POP 서비스
POP 동작 시나리오
명령과 응답 [그림 16-16]
인증 절차
•
사용자 인증 – USER – PASS•
메일 다운로드 – STAT– LIST – RETR – DELE
•
세션 종료 – QUIT29/31
4절. POP 서비스
POP 동작 시나리오
시뮬레이션
•
telnet 프로그램의 역할 [그림 16-17]– 메일 주소: kihyun@uu.ac.kr – 메일 서버: uu.ac.kr
– POP 서버: uu.ac.kr
– POP 클라이언트: kihyun.uu.ac.kr의 telnet 프로그램
30/31