전자 메일 시스템은 기능에 따라 사용자 환경과 네트워크 환경으로 구분할 수 있다. 사용자 환경은 메일을 작성하고 수신하는 사용자 인터페이스 부분이고, 네트워크 환경은 사용자 환경과 인터넷을 이용해 메일을 전달하는 부분이다.
왼쪽의 메일 송신자가 오른쪽의 메일 수신자에게 메일을 전송하는 것으로 가정하였으므로 왼쪽이 클라이언트, 오른쪽이 서버 역할을 한다.
사용자 환경
첫 번째 기능인 사용자 환경은 메일 내용을 읽고 편집하는 일을 담당하는 사용자 인터페이스이다. 일반 용어로는 사용자 에이전트(UA, User Agent)라 하며, PC에서 메일을 송수신하는 프로그램(ex) 유닉스 시스템의 mailx 및 elm 프로그램, 윈도우즈 시스템의 MS 아웃룩 이다. 위의 이미지에서는 상단 부분이 사용자 환경이다.
네트워크 환경
네트워크 환경을 구성하는 메일 전송 에이전트(MTA, Mail Transfer Agent)는 인터넷에서 메일을 송수신하고 중개하는 기능을 담당한다. 하단의 맨 왼쪽은 메일을 송신하는 MTA 클라이언트 기능을 수행하고, 맨 오른쪽은 메일을 수신하는 MTA 서버 기능을 수행한다. 중간에 위치한 MTA는 송신한 메일이 목적지로 올바르게 전송되도록 중개 기능을 수행한다.
물론 중개 기능 없이 클라이언트와 서버를 직접 연결할 수도 있다.
사용자 에이전트(UA)
사용자 에이전트는 메일을 송수신하기 위해 이용하는 프로그램이다. 사용자 작업 환경에 관한 인터페이스를 다루기 때문에 일관된 표준화 형식으로 정의할 필요는 없다.
사용자 화면
초기의 메일 프로그램은 텍스트 위주의 환경만 제공하여 사용하기 불편했지만 현재는 그래픽 환경이 일반화 되었다. 메일 프로그램은 일반적으로 메일을 보내는 송신 기능과 메일을 주고 받는 수신 기능은 하나의 메일 프로그램으로 구현된다.
UA 사용자 프로그램 입력 정보
메일을 송신하려면 몇 가지 정보를 UA에 입력해야 하는데, 사용자가 입력해야 하는 것도 있지만, UA 사용자 프로그램의 초기화 과정에서 설정된 값이 자동으로 대체될 수도 있다. UA 사용자 프로그램은 이들 정보를 표준화된 형식으로 규격화 하여 MTA 클라이언트에 전송을 의뢰함으로써 메일의 송신 기능을 처리한다.
- 송신자의 메일 주소
- 수신자의 메일 주소
- 참조자의 메일 주소
- 메일의 메시지 헤더 : 메일 제목
- 메일의 메시지 바디 : 전송할 메일의 제목
메일 전송 에이전트MTA
UA 사용자 프로그램에서 요청한 전자 메일을 실제로 수신자에 전송하려면 MTA 클라이언트가 필요하다. 반대로 목적지 호스트에서는 메일을 수신하고 보관하는 작업을 하기 위해서 MTA 서버가 실행된다. 그리고 수신한 메일을 UA 사용자 프로그램으로 다운로드 하는 과정도 필요하다. 이러한 작업이 원활하게 이루어지려면 UA 사용자 프로그램이 메일 송수신을 위한 MTA 클라이언트와 MTA 서버에 관한 정보를 알아야 한다.
MTA 정보 설정
- PC의 전자 메일 프로그램은 설치 과정에서 MTA 클라이언트와 MTA 서버에 관한 초기화 설정을 한다.
- UA 사용자 프로그램의 수신자 모듈은 전자 메일 서버로부터 메일을 다운로드 하는데 이때 사용하는 UA와 MTA 서버 사이의 연계 프로토콜이 POP(Post Office Protocol) 서비스이다.
- 현재 가장 많이 사용되는 POP 서비스는 버전3이므로 POP3라 부른다.
- 메일을 보내기 위한 MTA 클라이언트는 보내는 메일 서버(SMTP)에 지정된다.
- UA 사용자 프로그램의 송신자 모듈이 메일을 전송하면 전자메일 서버에 전송 요청을 의뢰해야 한다. 이 때 사용하는 프로토콜이 SMTP(Simple Mail Transfer Protocol)이다.
SMTP와 POP 서비스의 관계
UA와 MTA의 연동을 위해 사용하는 SMTP와 POP 서비스 간의 관계는 위와 같다.
PC에서는 b처럼 메일 프로그램의 서버 전송에 설정된 POP서버로부터 메일을 읽는다. 반대로 메일을 송신하려면 a처럼 STMP 클라이언트 기능이 필요하다.
일반 환경을 기준으로 PC에서 실행되는 메일 프로그램은 송신용 UA 기능과 수신용 UA 기능이 함께 구현된다. 또한 특정인 한 사람이 사용하는 메일 프로그램이라 가정하면 설정된 서버 정보의 MTA 클라이언트와 MTA 서버도 대부분 같은 호스트이다.
Reference
쉽게 배우는 데이터 통신과 컴퓨터 네트워크
https://soso-hyeon.tistory.com/113
[쉽게 배우는 데이터 통신과 네트워크] CH15. 전자 메일
01 전자 메일 사용자 환경메일 편집: 메시지를 새로 작성하거나, 수신 메일에 대해 회신하거나 수신 메일을 제3자에게 전달할 때 필요하다.메일 내용 읽기: 수신한 메일의 내용이 일반 텍스트로
soso-hyeon.tistory.com
'CS > Network' 카테고리의 다른 글
[Chapter 15] 전자 메일 (POP 서비스) (0) | 2025.02.19 |
---|---|
[Chapter 15] 전자 메일 (SMTP) (0) | 2025.02.19 |
[Chapter 15] 전자 메일 (메일 처리) (0) | 2025.02.19 |
[Chapter 14] DNS (DNS 프로토콜) (0) | 2025.02.18 |
[Chapter 14] DNS (네임 서버와 해석기) (0) | 2025.02.18 |