[네트워크]E-mail

정태규·2023년 4월 12일
0

네트워크

목록 보기
9/19

Electronic mail: user agent

주요 구성요소

  • user agents
  • mail servers
  • simple mail transfer protocol(SMTP)

user agent

  • 'mail reader'라고 부른다.
  • 메일을 읽고 쓰고 수정한다.
  • ex) outlook,thunderbird,iphone mail client
  • 발신 수신 메세지를 서버에 저장

mail servers

  • mailbox는 유저에게 수신되는 메세지를 포함한다.
  • message queue: 발신 메일 메세지

mail server 사이에서 email을 보내기 위한 SMTP protocol

  • client: 발신 메일 서버
  • server: 수신 메일 서버

email protocols

  • SMTP
    client에서 서버로 email을 보낼때 사용한다.
    email 서버간에 email 전달

  • mail access protocol
    mail server로부터 user로 email을 전송하는데 사용
    POP(Post Office Protocol):RFC1939(ver.3)
    IMAP(Internet Mail Access Protocol):RFC3501(ver.4 rev.1)
    HTTP:gmail,hotmail,Yahoo!Mail, etc.

SMTP

  • email 을 cilent-> server로 보낼때 port25, TCP를 사용한다. TCP를 사용하는 이유는 신뢰할수 있기 때문이다.

  • direct transfer: 보내는 서버에서 받는 서버로 바로 보낸다.

  • 전송의 3단계
    handshking(greeting)
    transfer of messages
    closure

  • command/response 상호작용 (ex) HTTP,FTP)
    commands:ASCII text
    response: 상태코드와 문장

  • 메세지는 7-bit ASCI여야 한다.

  • 예를들어 Alice가 Bob에게 메세지를 보낸다.

    1) Alice 가 UA(user agent)를 사용해서 Bob에게 메세지를 보냈다.
    2) Alice의 UA가 그녀의 메일 서버로 메세지를 보냈다. 메세지는 message queue에 위치한다.
    3) client 쪽 SMTP가 Bob의 메일서버와 연결된 TCP connection을 연다.
    4) SMTP client는 Alice의 메세지를 TCP커넥션을 통해 보낸다.
    5) Bob의 메일 서버가 메세지를 Bob의 mailbox에 위치시킨다.
    6) Bob이 메세지를 읽기 위해서 그의 UA를 호출한다.

  • SMTP interaction
    전송의 3단계

  • handshaking

  • transfer of messages

  • closure

Message formats

  • RFC 5322
    internet message format
  • 주요 section
    header:
    From,To,CC,subject,Date등 이메일에 관한 정보들이 들어 있다.

body:
기본 내용, 구조화 되지 않은 text, 가끔 마지막 부분에 signature block(추가정보 같은거)이 포함된다.

header와 body는 blank line으로 분리되어 있다.

POP3 protocol

  • pop3: Post Office Protocol- version 3

  • RFC 1939 (TCP port 110)

  • protocol stack
    POP3는 SMTP와 같은 application layer에 위치한다.
    또한, tranport layer로 TCP를 사용한다.

인증 단계:
id와 password를 확인하고 맞으면 OK 틀리면 ERR를 내보낸다.

전송 단계:
명령어들이 동작을 수행한다.
list: 메일 메세지들의 리스트
retr[번호]: 실제 메일의 취득
dele[번호]: 메일의 삭제
quit: 종료

1.이메일이 someone@example.com 사용자에게 제출된다.
2.SMTP 서비스는 전자 메일 도메인인 example.com을 인터넷의 메일 서버인 mailserver1.example.com으로 확인한다.
3.전자 메일은 mailserver1.example.com의 SMTP 서비스에서 받는 example.com 도메인으로 라우팅됩니다.
4.SMTP 서비스는 전자 메일을 대상 메일 서버의 Queue 폴더에 넣습니다. 도메인 example.com에 대한 새 이메일이 배달 서비스에 통지됩니다.
5.배달 서비스는 전자 메일을 메일 저장소에 있는 수신자의 사서함인 P3_someone.mbx로 이동합니다.
6.사용자는 someone@example.com의 사서함에 연결하여 전자 메일을 확인합니다. POP3 서비스는 사용자의 자격 증명을 확인한 다음 연결을 수락하거나 거부합니다.
7.사용자가 성공적으로 인증되면 전자 메일이 사용자 컴퓨터로 다운로드됩니다.

IMAP

IMAP(Internet Mail Access Protocol)

서버에 저장된 메세지 조작을 포함한 더 많은 기능 이 있다.

  • 한 공간에 모든 메세지를 저장한다: 서버에서
  • user가 폴더 안에 메세지들을 모아 놓을 수 있도록 해준다.
  • 세션 전체에서 사용자 상태를 유지한다. (폴더 이름, 메세지 ID와 폴더 이름을 mapping)

0개의 댓글