더북(TheBook)

Q SMTP가 뭐죠?

A ‘Simple Mail Transfer Protocol’의 약자로 우리말로 간편메일전송규약이라고 하죠. HTTP가 인터넷 상에서 하이퍼텍스트 문서를 주고받는 규약이듯, SMTP는 인터넷 상에서 메일을 주고받기 위한 규약입니다.

Q 무슨 뜻인지는 대충 알 것 같기도 한데 …잘 모르겠네요ㅠㅠ.

A 음, 가령 편지봉투의 좌측 상단에는 보내는 사람, 우측 하단에는 받는 사람 주소를 쓰는데 이것은 편지를 주고 받는 사람 사이의 약속, 사회적인 규약이라고 할 수 있죠. 마찬가지로 이메일을 주고 받을 때 서로 다른 형식을 사용하면 문제가 발생하니 일종의 규약을 만든 것인데, 편지를 보낼 때 보내는 사람, 받는 사람 주소를 쓰고 편지 내용을 작성하는 규약이 바로 SMTP라고 할 수 있어요.

Q 그렇다면 그 규약이란 것에는 어떤 것들이 있나요?

A 이메일을 보낼 때 필요한 것이 바로 규약의 세부사항에 해당됩니다. 예를 들어, 보내는 사람, 받는 사람, 제목, 본문, 첨부파일 등이 필요한데 이러한 내용을 명시해 놓은 것이죠.

Q 이메일을 전송하는 것이니 통신과 관련된 내용도 규약에 포함되겠네요?!

A 네, HTTP가 기본 포트를 80번으로 사용하듯 SMTP는 25번을 기본 포트로 사용하며 모든 내용이 7비트 ASCII 문자로 구성됩니다.

Q POP3라고 들어봤는데 이것도 SMTP의 일종인가요?

A 아닙니다. SMTP는 이메일을 보내는 규약이고, POP3는 Post Office Protocol의 약자로 3은 버전을 의미합니다. 즉 최초에는 POP으로 시작해 현재는 POP3까지 나왔으며, 이메일을 받는 규약이에요. 참고로 받는 규약으로는POP3와 더불어 IMAP도 사용됩니다.

Q SMTP에 대해 감이 잡히는가 싶더니 이메일을 받는 규약이라니… 더 헷갈리네요.

A 이메일이 오고가는 전 과정을 설명하는 것이 낫겠네요. 예컨대, hong@daam.net이란 메일 주소를 가진 홍길동이라는 사람이 kim@gmeil.com이란 메일 주소를 가진 김유신에게 메일을 보내는데, 두 사람 모두 자신의 PC에 설치된 Outlook을 사용해 메일을 주고 받는다고 해 봅시다. 홍길동은 받는 사람의 주소에 김유신의 주소를 넣고 메일을 작성해서 <전송> 버튼을 누르면, 잠시 후 김유신 역시 Outlook을 열고 홍길동에게서 온 메일을 읽겠죠. 별도의 설명이 없어도 될 만큼 간단한 과정이지만 실제 무대 뒤에서 벌어지는 일은 조금 더 복잡합니다.
<전송> 버튼을 클릭하면 SMTP를 이용해 daam.net이란 회사의 SMTP 서버, 즉 보내는 메일 서버로 전송됩니다. 그리고 나서 Daam.net의 SMTP 서버는 김유신의 메일 계정이 있는 gmeil.com의 메일 서버로 메일을 보냅니다. 이때도 역시 SMTP를 사용하죠. 김유신이 Outlook을 열고 로그인 함과 동시에 gmeil.com의 받는 메일 서버에서 김유신의 PC로 메일이 다운로드됩니다. 이때 POP3나 IMAP을 사용합니다.

Q 대충 이해가 갑니다. 그런데 이 장에서는 SMTP에 대해서만 설명하는 건가요? POP3는 알 필요가 없나요?

A 이번 장에서는 UTL_SMTP와 UTL_MAIL 시스템 패키지를 이용해 메일을 보내는 것입니다. 따라서 SMTP에 대해서만 알고 있으면 돼요.

Q SMTP를 이용해 메일을 보낸다는 것은 알겠는데, 도대체 시스템 패키지를 어떤 식으로 사용한다는 건가요?

A 그 방법에 대해서는 다음 절에서 배울 거에요.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.