ইমেইল কিভাবে কাজ করে? - Basic Explained
একটা ইমেইল ক্লায়েন্ট থেকে মেসেজ টাইপ করে , দরকার হলে কোন ফাইল এটাচ করে পাঠিয়ে দিচ্ছেন প্রাপকের কাছে।
কিন্তু কখনো কি ভেবে দেখেছেন এর পিছনে আসলে কি ঘটতেছে? কিভাবে আপনার আউটবক্স থেকে প্রাপকের ইনবক্স পর্যন্ত ইমেইল পৌছে যাচ্ছে?
কোন সমস্যা নেই, আজকে আমি ইমেইলের বেজ সিস্টেম নিয়ে আলোচনা করব। আর যারা জানেন তাদের জন্য এটা ছোট্ট একটা রিমাইন্ডার রূপে কাজ করতে পারে।
ইমেইল কি জিনিস, খায় না মাথায় দেয়?
১৯৭১ এর আগপর্যন্ত মানুষ শুধুমাত্র একই সিস্টেমে কর্মরত সহকর্মীদেরই মেসেজ পাঠাতে পারত। ১৯৭১ সালে Ray Tomlinson প্রথম ইমেইল পাঠান। যদিও সেটা ছিলো খুবই সাধারণ মেসেজ বেজড যোগাযোগ, তারপরও এটিই ছিলো মূলত প্রথম ইমেইল যা আজকে এতটা এডভান্সড পর্যায়ে চলে এসেছে।
ইন্টারনেটে মেইল আদানপ্রদানের জন্য একটা ইমেইল সিস্টেমে মূলত বেজ কয়েকটি কম্পোনেন্ট থাকে। এগুলো হলোঃ
- ইমেইল ক্লায়েন্ট
- ইমেইল সার্ভার (SMTP সার্ভার)
- POP এবং IMAP সার্ভার
প্রথমে চলুন আলাদা আলাদা কম্পোনেন্টগুলোর সাথে আগে পরিচিত হই, তারপর সবগুলোকে একসাথে মেলানো যাবে পুরো সিস্টেমটা বোঝার জন্য।
ইমেইল ক্লায়েন্ট
আপনি যদি অনলাইনে যোগাযোগেট জন্য ইমেইল ব্যবহার করেন তবে আপনি অবশ্যই ইমেইল ক্লায়েন্টও ব্যবহার করছেন। আপনার ইমেইল ক্লায়েন্টের নিচের সক্ষমতাগুলো অবশ্যই থাকবেঃ
- আপনার কাছে আসা সকল মেইলের একটা লিস্ট দেখাবে। লিস্টের প্রতিটা আইটেমে প্রেরকের নাম, বিষয়, মেসেজের কয়েকটা শব্দ এবং মেসেজ পাওয়ার তারিখ ও সময় দেখাবে।
- পুরো মেসেজটা পড়তে পারবেন, এটার উত্তর দিতে পারবেন এবং এটা অন্য কারো কাছে ফরওয়ার্ডও করতে পারবেন।
- নতুন মেসেজ লিখতে পারবেন এবং যার কাছে দরকার তাকে পাঠাতে পারবেন।
- মেসেজ মুছে ফেলতে পারবেন।
ইমেইল ক্লায়েন্টগুলো স্ট্যান্ডএলোন/ডেস্কটপ বেজড হতে পারে যেমন মজিলা থান্ডারবার্ড, মাইক্রোসফট আউটলুক এইসব। আবার ওয়েব বেজডও হতে পারে, যেমন জিমেইল, ইয়াহু ব্লা ব্লা ব্লা।
ইমেইল ক্লায়েন্টগুলোর আরও অনেক এডভান্সড ফিচার থাকতে পারে। তবে উপরে উল্লিখিত ক্যাপাবিলিটিস গুলো তার অবশ্যই থাকতে হবে।
ইমেইল সার্ভার (SMTP সার্ভার)
আপনি যখন ইমেইল ক্লায়েন্ট থেকে একটা মেসেজ পাঠান তখন এটি ইমেইল সার্ভারের কাছে গিয়ে পৌছায়। ইমেইল সার্ভার সিদ্ধান্ত নেয় সে কিভাবে মেসেজটিকে ম্যানেজ করবে। মেসেজটি যদি একই সাবনেটের কোন প্রাপকের কাছে পাঠানো হয়ে থাকে তবে ইমেইল সার্ভার এটিকে POP বা IMAP সার্ভারের কাছে পাঠিয়ে দেয় যে মেসেজটি কাংখিত প্রাপকের কাছে পৌছে দিবে। আর যদি একই সাবনেট না হয়ে থাকে তবে ইমেইল সার্ভার ইন্টারনেটের মাধ্যে কাংখিত ব্যক্তির কাছে মেসেজটি পৌছে দেয়ার জন্য স্ট্যান্ডার্ড প্রসিডিউর অনুসরণ করবে।
দৃশ্যপটে ইমেইল সার্ভার দুইবার আবির্ভূত হবে যদি ইমেইলটি ইন্টারনেটের মাধ্যমে রিমোট কোন প্রাপকের কাছে পাঠানো হয়ে থাকে। প্রথমবার হলো প্রেরকের ইমেইল সার্ভার যখন সেটি মেসেজটিকে ইন্টারনেটের মাধ্যমে পাঠায়, এবং দ্বিতীয়বার হলো প্রাপকের ইমেইল সার্ভার যখন রিসিভার এন্ডে সে ইমেইলটা ম্যানেজ করে এবং কাংখিত প্রাপকের কাছে ইমেইলটা পৌছে দেয়। অন্যদিকে প্রাপক যদি একই সাবনেটে থাকে তাহলে ইমেইল সার্ভার একবারই দেখা দেয়।
ইন্টারনেটে ইমেইল সার্ভারের জন্য SMTP সার্ভারই সবচেয়ে বেশি ব্যবহৃত হয়। SMTP সার্ভারের আরেকটি জনপ্রিয় নাম হচ্ছে Mail Transfer Agent (MTA).
(ডাটা প্যাকেটগুলো কিভাবে ইন্টারনেটে বিচরণ করে সেটা নিয়ে আরেকদিন লেখার ইচ্ছা আছে, যাই হোক ওটা পরে দেখা যাবেখন!)
POP এবং IMAP সার্ভার
আগেই ব্যাখ্যা করেছি, দৃশ্যপটে এই সার্ভারগুলার আবির্ভাব তখনই হবে যখন মেসেজটি একটি SMTP সার্ভারের মধ্যদিয়ে যাবে এবং এটি কাংখিত প্রাপকের কাছে পৌছে দিতে হবে। চলুন একটা একটা করে দুটো নিয়েই আলোচনা করা যাক।
POP সার্ভার
POP এর পুরো মিনিং হচ্ছে Post Office Protocol. POP (বা POP3) সার্ভার সাধারণভাবে বোঝানোর জন্য বলা যায় মেসেজগুলোকে প্রতি ইউজারের জন্য আলাদা আলাদা টেক্সট ফাইলে সংরক্ষণ করে। যখন কোন ইউজারের জন্য নতুন মেসেজ আসে তখন মেসেজটি ইউজারের ফাইলের শেষে যোগ করে দেয়া হয়। আপনার ইমেইল ক্লায়েন্ট যদি POP দিয়ে কনফিগার করা হয়ে থাকে তবে আপনি যখন মেইল ক্লায়েন্টের মাধ্যমে কোন মেসেজ দেখতে চাইবেন তখন আপনার ইমেইল ক্লায়েন্ট আপনার POP সার্ভারের কাছে একই সময়ে একটি রিকোয়েস্ট পাঠাবে।
POP সার্ভার একসেস করার জন্য লগইন ক্রেডেনশিয়াল দরকার হয় যা ইমেইল ক্লায়েন্টের মাধ্যমে পাঠানো হয়ে থাকে। ইউজারের পরিচয় প্রমাণের পর POP সার্ভার ইউজারের ইমেইলে একসেস দেয়। সার্ভার আর্কিটেকচারের সাথে ইমেইল ক্লায়েন্টগুলা পূর্বনির্ধারিত কিছু কমান্ড দিয়ে পরস্পরের সাথে কাজ সম্পাদন করে।
এরকম কিছু কমান্ড হলোঃ
- USER – ইউজার আইডির জন্য
- PASS – পাসওয়ার্ডের জন্য
- LIST – ইমেইল লিস্ট দেখার জন্য
- DELE – মেসেজ মুছে ফেলার জন্য
- QUIT – কাজ শেষ করার জন্য
ইমেইল ক্লায়েন্ট POP সার্ভারের সাথে সাধারণত 110 পোর্টে কানেক্ট করে। এরপর অথেন্টিকেশন, ইমেইল দেখা, মেসেজ মুছে ফেলা ইত্যাদির জন্য মেইল ক্লায়েন্ট সার্ভারে উপরোক্ত কমান্ডগুলো ইস্যু করে।
POP সার্ভার নিয়ে একটা সমস্যা হলো একটা ক্লায়েন্ট যখন সার্ভার থেকে একটা মেসেজ একসেস করে তখন অন্য কোন ডিভাইস/ক্লায়েন্ট থেকে ওই মেসেজটা একসেস করা ঝামেলাপূর্ণ হয়ো যায়। কারণ সিস্টেম অনুযায়ী POP সার্ভার একটা মেইল ডাউনলোড হওয়ার পরে সেটা সে সার্ভার থেকে ডিলেট কয়ে দেয়। যদিও কিছু কিছু ক্ষেত্রে “Keep a copy on server” টাইপ কোন অপশন থাকে যেটার মাধ্যমে ইমেইল ক্লায়েন্টগুলো সার্ভারকে বলে দেয় যাতে মেসেজটা মুছে না ফেলা হয়। কিন্তু তারপরও এটা বিভিন্ন ডিভাইসে মেইলটার একাধিক কপির সৃষ্টি করে এবং শেষ পর্যন্ত মেইল ম্যানেজমেন্ট একটা বিশাল ঝামেলা হয়ে দাড়ায়।
IMAP সার্ভার
IMAP এর পুরো নাম হচ্ছে Internet Message Access Protocol. এই প্রোটোকলও ইমেইল একসেস করার জন্য ব্যবহার করা হয়, কিন্তু POP এর তুলনায় এটির ফিচার অনেক বেশি। IMAP সার্ভারের সবচেয়ে গুরুত্বপূর্ণ ফিচার হচ্ছে ইমেইলগুলোর সেন্ট্রাল একসেস। POP সার্ভারের ঠিক উল্টো, IMAP সার্ভার ইমেলগুলো সার্ভারেরই রেখে দেয় যাতে যেকোন সময় যে কোন ডিভাইস থেকে সেটা একসেস করা যায়।
এটা ম্যানেজমেন্টের জন্য আরও কিছু সুবিধা দেয় যেমন সার্চিং, ইমেইল ক্যাটাগোরাইজিং এবং অন্যান্য। IMAP সার্ভারের ক্ষেত্রে একটা জিনিস যেটা অসুবিধা বলে মনে হতে পারে সেটা হলো, ইমেইল একসেস করার জন্য সবসময় ইন্টারনেটের সাথে কানেক্টেড হয়ে থাকতে হবে। কিন্তু নাহ, আজকের দিনের বেশিরভাগ ইমেইল ক্লায়েন্ট মেসেজ ক্যাশ করে রাখতে পারে যেটার সাহায্যে ইমেইলগুলো অফলাইনেও একসেস করা যাবে।
IMAP সার্ভারের সাথে ইমেইল ক্লায়েন্টগুলো 143 পোর্টে কানেক্ট হয়ে। POP সার্ভারের মতই IMAP ও একসেট কমান্ড বুঝতে পারে যেগুলো দিয়ে ইমেইল ক্লায়েন্ট IMAP সার্ভারের সাথে কথাবার্তা বলে।
সবগুলো কম্পোনেন্ট একসাথে মিলানো
আমাদেরট যেহেতু ইমেইল সিস্টেমের মূল জিনিসগুলো বোঝা শেষ এবার আসুন সবগুলো জিনিস একসাথে রেখে পুরো ইমেইল সিস্টেমটা বোঝার চেষ্টা করি কিভাবে ইমেইল সিস্টেম কাজ করেঃ
(ইমেজ ক্রেডিটঃ আশিফ শাহো)
- জিমেইল, ইয়াহু, থান্ডারবার্ড, আউটলুকের মত কোন মেইল ক্লায়েন্ট ব্যবহার করে ইমেইল বানানো হয় এবং ইমেইলের উত্তর দেয়া হয়।
- একটা ইমেইল ঠিকঠাকমত লেখার পর সেটা ইমেইল ক্লায়েন্টের মাধ্যমে পাঠানো হয়।
- প্রথমে ইমেইলটি একটি SMTP সার্ভারের কাছে যায় যেটা ইমেইল ক্লায়েন্টের সাথে সংযুক্ত।
- ইমেইল সার্ভার প্রাপকের ঠিকানা খুজে বের করে। ঠিকানাগুলো সাধারণত এইভাবে লেখা হয়ঃ someone@somedomain.com
- মেইল সার্ভার প্রথমে DNS সার্ভারের সাহায্যে ডোমেইনকে আইপিতে রুপান্তর করে।
- এরপর এটি মেসেজটিকে ইন্টারনেটের মাধ্যমে ওই আইপির কাছে পাঠিয়ে দেয়।
- এরপর ইমেইলটি ইন্টারনেটে আইপি প্যাকেটের সিরিজের ভিতর দিয়ে ঘোরাফেরা শেষ করে প্রাপক SMTP সার্ভার বা MTA এর কাছে গিয়ে পৌছায়।
- এই সার্ভার ইমেইলগুলো সংগ্রহ করে প্রাপকের কাছে পৌছে দেয় যেটা প্রাপক POP বা SMTP সার্ভারের মাধ্যমে ইমেইল ক্লায়েন্ট দিয়ে একসেস করে।
এইতো, মোটের উপর এই হলো ইমেইল সিস্টেম কিভাবে কাজ করে।
বিশাল পোস্ট লিখে ফেলছি, আপাতত আর ডিসক্লেইমার লিখতে পারুম না। এটাই এই পোস্টের ডিসক্লেইমার।