메일을 전송함에 있어서 첨부된 파일을 분리하는 방식은 어떤것인가요?
메일 헤더 + 본문부(body) + 첨부(attachment) 부분으로 되어있을 때,
1. 통째로 MIME방식으로 변환후
2. body끝부분( 혹은 attachment 시작부분 )이 어딘지 파싱
3. body와 attach 따로 송부
4. 수신측에서 따로 받은걸 합친다. ( 혹은 attach가 있는곳의 경로를 박아서 메일완성 )
정도로 개념적인것만 이해하고 있습니다.
실제 최근까지도 emailing 서비스 제공 업체들은 대부분 통짜로 주고받는 방식을 고수하다가
대용량첨부로 넘어오면서 첨부 분리를 하기 시작했다고 들었거든요.
저런 서비스에서 스토리지가 차지하는 코스트가 엄청난편인데도
왜 이전에는 저런방식을 사용치 않았는지.... 궁금합니다.
( 첨부분리를 한다면, 100명에게 보낸 편지에 포함된 동일한 첨부데이터는,
첨부DB안에 있는 경로만 던져준다면 하나로 모든사람이 엑세스가 가능하니까요 )
기술적으로 설명해주시지 않으셔도 되니까 ~카더라~ 정도의 정보라도 좀 알려주시면 감사하겠습니다.
구글링하면서 뒤지고는 있는데.... 다 거기서 거기라 좀 답답하네요. ㅠ_ㅠ;
SMTP가 텍스트 기반 프로토콜이다 보니 바이너리 파일에는 약점을 가질 수 밖에 없었죠.
요즘처럼 대역폭이 높은 망과 스토리지의 비용이 싸지 않던, 과거에는 첨부파일이라는 거대한(나름) 파일을 서버에 유지하고,
모든 사용자들이 그 서버에 접속해서 파일을 가져가게 하는것은 유지비 차원에서 문제의 소지가 있었습니다.
메일이라는 놈은 가버리게 되면 그걸로 끝이기 때문에(받는놈이 받아서 해당 사용자의 홈폴더 큐에다 쌓아두게 되니 받는놈 용량을 먹습니다),
메일서버가 상대적으로 적은 디스크용량만 가져도 되고, 네트워크 부하도 보냈으면 끝이니 지속적으로 발생하지 않겠지요.
뭐 어쨌거나 옛날엔 그랬지만 요즘 세상에 쓰긴 낡은 프로토콜이죠 ^^;
간단합니다. SMTP 프로토콜 자체가 굉장히 낡은 프로토콜이긴 하지만, 그때 당시나 지금이나 서신 전송이 주된 목적이지, 대용량 파일의 전송이 아니기 때문이죠.