আপনি যখন ইন্টারনেট এ কারো সাথে চ্যাট করেন কিংবা কাওকে মেইল সেন্ড করেন তখন কখনো কি ভেবে দেখেছেন যে এই কাজ গুলো সম্পূর্ণ হতে কতোগুলো আলাদা কম্পিউটার একসাথে কাজ করে যাচ্ছে? আপনি টেবিলে বা কোলে আপনার কম্পিউটার নিয়ে বসে আছেন, আর আরেক প্রান্তে আপনার বন্ধু কম্পিউটার নিয়ে প্রস্তুত হয়ে বসে আছে আপনার সাথে যোগাযোগ করার জন্য।
কিন্তু
আপনি আর আপনার বন্ধুর কম্পিউটারের ফাঁকের মধ্যে আরো ডজন খানি কম্পিউটার রয়েছে যা আপনার আর আপনার বন্ধুর কম্পিউটারের মধ্যের ফাঁকা স্থান পূরণ করছে। আর এভাবেই একটি কম্পিউটারের সাথে আরেকটি কম্পিউটার সংযুক্ত রয়েছে গোটা পৃথিবী জুড়ে আর এটাই হলো দ্যা ইন্টারনেট। কিন্তু এই আলদা আলদা কম্পিউটার গুলো নিজেদের ভেতর সম্পর্ক স্থাপন করতে সক্ষম হয় কীভাবে? বন্ধুরা চলুন এই সমস্ত বিষয়টি একদম কাছ থেকে পরিদর্শন করে আসি।
ইন্টারনেট কি?
বৈশ্বিক যোগাযোগ ব্যাবস্থা এখন অনেক উন্নত হয়ে গেছে আর এই সবই কৃতিত্ব তার, যার নাম হলো ইন্টারনেট। গত ২০ বছরেরও কম সময়ের মধ্যে মোটামুটি ২১০টি আলাদা দেশের মধ্যে ছড়িয়ে পড়েছে এর বিস্তার। এমনকি পৃথিবীর অনেক দরিদ্রতর দেশও সংযুক্ত হয়ে পড়েছে এই জালে।
আপনি আমি সহ বেশিরভাগ মানুষই মনে করেন যে, ইন্টারনেট শব্দটির মানে হচ্ছে অনলাইনে চলে যাওয়া। কিন্তু সত্য কথা বলতে এটি একটি সাধারন কম্পিউটার নেটওয়ার্ক ছাড়া আর কিছুই নয়। মনেকরুন একটি রাস্তার কথা যা পুরো পৃথিবী জুড়ে পেঁচিয়ে রয়েছে। যেমন করে রাস্তা দিয়ে ট্র্যাফিক বয়ে গিয়ে তার গন্তব্যে পৌঁছে ঠিক তেমনি বিভিন্ন কম্পিউটার দিয়ে ডাটা বয়ে গিয়ে তার গন্তব্যে পৌঁছে। আর এটাই হলো ইন্টারনেট এর মূল ভিত্তি। ইন্টারনেট হলো আসলে একেকটি আলাদা কম্পিউটারের একসাথে সংযুক্ত হয়ে থাকার একটি সিস্টেম (আপনার ঘরের কম্পিউটার, অফিসের কম্পিউটার, স্কুল কলেজের কম্পিউটার)।
একটি কম্পিউটারের সাথে আরেকটি কম্পিউটারের সংযোগ করা থাকে বিভিন্ন উপায়ে। কোন কম্পিউটার গুলো সংযুক্ত থাকে পুরাতন কপার ক্যাবল দ্বারা আবার কোন গুলো ফাইবার-অপটিক ক্যাবল (যা আলোর স্পন্দনের মধ্যে ডাটা সেন্ড করে) দ্বারা আবার কোন কম্পিউটার গুলো বেতার কানেকশানে যুক্ত থাকে (বেতার কানেকশান মানে আমরা যাকে ওয়্যারলেস বুঝি, এটি রেডিও তরঙ্গের মাধ্যমে সংযোগ স্থাপন করে) এবং কোন কম্পিউটার গুলো স্যাটালাইটের সাথে সংযুক্ত থাকে। আর এইভাবেই আমরা উপভোগ করতে পারি ইনস্ট্যান্ট ম্যাসেজ সুবিধা, ইমেইল সেবা, অথবা ডাউনলোড করি এমপিথ্রী মিউজিক ফাইলস।
ইন্টারনেটের আসল কাজ কি?
ইন্টারনেটের চাকরিটা আসলে খুব সহজ, সে শুধু এক জায়গা থেকে আরেক জায়গায় ডাটার আদান এবং প্রদান করে, ব্যাস। যে মেশিন গুলো একত্রিত হয়ে ইন্টারনেট তৈরি করেছে তাদের প্রধান কাজই হলো ডাটা আদান আর প্রদান। বাস্তবিকভাবে তুলনা করতে গেলে ইন্টারনেটকে টিউনাল সার্ভিসের সাথে তুলনা করা যায়।
টিউনাল সার্ভিসে চিঠি এক জায়গা থেকে আরেক জায়গায় আদান প্রদান করা হয়। কিন্তু এটা কোন ব্যাপার না যে চিঠি কার কাছ থেকে আসলো বা চিঠির ভেতর কি লেখা আছে। আবার চিঠি একদম ফাঁকা থাকলেও টিউনাল সার্ভিসের কোন যায় আসে না। তার কাজ চিঠি পৌঁছানো ব্যাস তা পৌঁছে দেবে। ইন্টারনেটও একইভাবে কাজ করে।
টিউনাল সার্ভিসের মতো ইন্টারনেটও অনেক তথ্য ধারণ করে তা এক জায়গা থেকে আরেক জায়গায় পৌঁছে দেয়। এরমানে হলো যদি কোন ডাটা আদান প্রদান করানো হয় তবে ইন্টারনেট সেটি সম্পূর্ণ করে দেবে। এখন আপনি ইমেইল পাঠালেন না কাওকে ম্যাসেজ করলেন এর সাথে ইন্টারনেটের কোন লেনাদেনা নেই। তবে যে কাজেই ডাটা আদান প্রদান করার বিষয় আছে সেটিই ইন্টারনেট সম্পূর্ণ করতে সাহায্য করবে, ব্যাস। এখন এই ডাটা আদান প্রদানের সূত্রের উপর ভিত্তি করে আমরা নতুন নতুন ব্যবহার খুঁজে বেড় করছি। যেমন যখন দুই ইউরোপিয়ান বিনিয়োগকারী স্কাইপ তৈরি করলেন তখন তারা টেলিফোনের কথা বলাকে নেটে নিয়ে আসলেন। তারা একটি প্রোগ্রাম তৈরি করলেন যেখানে আমাদের কথা ডাটাতে পরিণত হতে পারে এবং তা আদান প্রদানের মাধ্যমে কথাবার্তা চলতে থাকে। কিন্তু কখনোয় সরাসরি আমাদের কথা আদান প্রদান করিয়ে স্কাইপের জন্য আলাদা ইন্টারনেট তৈরি করা সম্ভব ছিল না।
ইন্টারনেটের ডাটা গুলো কীভাবে আদান প্রদান করা হয়?
ইন্টারনেট মূলত টেলিফোন নেটওয়ার্ক এর মতো কাজ করে থাকে। কিন্তু ইন্টারনেটের ডাটা বহন করা আর টেলিফোন লাইনে কল করা আলাদা ব্যাপার। আপনি যখন আপনার কোন বন্ধুকে রিং করেন তখন আপনার টেলিফোনে আপনি এবং আপনার বন্ধুর মধ্যে একটি সরাসরি কানেকশান (বা সার্কিট) ওপেন হয়ে যায়। আপনি যতক্ষণ টেলিফোনে কানেক্ট হয়ে থাকেন, সার্কিটটি ততোক্ষণ ওপেন হয়ে থাকে। একটি টেলিফোনের সাথে আরেকটি টেলিফোনকে কানেক্ট থাকার পদ্ধতিকে সার্কিট সুইচিং বলা হয়। কখন কার কথা শোনা যাবে আর কার কথা পাঠানো হবে তা নিয়ন্ত্রন করে ইলেক্ট্রনিক টেলিফোন এক্সচেঞ্জ সিস্টেম।
কিন্তু বন্ধুরা একটু ভেবে দেখলে বুঝতে পারবেন যে, সার্কিট সুইচিং কোন নেটওয়ার্ক স্থাপন করার জন্য সত্যিই অদক্ষ একটি পদ্ধতি। আপনি যখনই ফোনে আপনার বন্ধুর সাথে সংযুক্ত হয়ে থাকবেন তখন সেই লাইনে আপনার সাথে অন্য কেউ সম্পর্ক স্থাপন করতে পারবেনা। (মনে করুন, আপনি কাওকে একটি ইমেইল টাইপ করছেন, টাইপ করতে ঘণ্টা লেগে যেতে পারে, আর এই সময়ে যদি আপনাকে আর কেউ কোন মেইল সেন্ড করতে না পারে তবে?) মনে করুন আপনি টেলিফোনে অনেক ধিরেধিরে কথা বলছেন বা কথা বলতে বলতে লম্বা ফাঁকা নিচ্ছেন বা কথা বলতে গিয়ে ফোন রেখে কফির মগ আনতে গেলেন। তো আপনি তো তখন কোন তথ্য প্রেরন করছেন না, কিন্তু তারপরেও আপনার ফোন আপনার বন্ধুর ফোনের সাথে কানেক্টেড হয়ে রয়েছে। আপনাকে প্রত্যেকটা সেকেন্ডের জন্য বিল চার্জ করা হচ্ছে এবং আপনি কথা বলুন আর নাই বলুন ফোন কানেক্টেড থাকা মানে আর অন্য কেউ সেই লাইনে ফোন করতে পারবে না। তাই সার্কিট সুইচিং কখনোয় আদর্শ নেটওয়ার্ক হতে পারে না। তাহলে ইন্টারনেট কি ধরনের নেটওয়ার্ক ব্যবহার করে ডাটা বহন করে?
প্যাকেট সুইচিং
ইন্টারনেট তার ডাটা বহন করতে এখনো কখনো কখনো সার্কিট সুইচিং পদ্ধতি ব্যবহার করে থাকে। যেমন আপনি যদি ডায়াল-আপ কানেকশান (যেখানে আপনার কম্পিউটার আপনার ইন্টারনেট প্রদানকারীর কাছে পৌঁছাতে একটি টেলিফোন নাম্বার ডায়াল করে, আর এটি কোন সাধারন ফোন কলের মতোই কাজ করে) ব্যবহার করেন ইন্টারনেটের সাথে সংযুক্ত হতে। এখানে আপনি অনলাইনে আসার জন্য সার্কিট সুইচিং পদ্ধতি ব্যবহার করলেন। তাই আমি কানেক্টেড থাকা পর্যন্ত কেউ আপনাকে ফোন করতে পারবেনা। এবং আপনাকে কানেক্ট থাকার প্রত্যেক সেকেন্ডের জন্য টাকা দিতে হবে। এবং বদলে আপনার নেট কানেকশান কাজ করবে একদম কচ্ছপ গতিতে।
কিন্তু বেশিরভাগ ইন্টারনেট ডাটা বহন করা হয়ে থাকে সম্পূর্ণ নতুন এক পদ্ধতিতে যার নাম হলো প্যাকেট সুইচিং। মনে করুন আপনি আপনার কোন ইন্ডিয়ান বন্ধুকে ইমেইল পাঠাতে চাচ্ছেন। তো এখানে আপনার ইন্ডিয়ান বন্ধু এবং আপনাকে সরাসরি কানেক্টেড থাকার কোন প্রয়োজন নেই এই সম্পূর্ণ মেইলটি একবারে পাবার জন্য। প্যাকেট সুইচিং এ আপনার মেইলটি পাঠানোর পরে তা অনেক গুলো খণ্ডে বিভক্ত হয়ে যায়। আর এই প্রত্যেকটি খণ্ডকে বলা হয়ে থাকে প্যাকেটস। প্রত্যেকটি প্যাকেটের গায়ে ট্যাগ করা থাকে যে তাদের কথায় যেতে হবে এবং তারা আলদা আলদা পথে ভ্রমণ করতে পারে। খণ্ডগুলো যখন তাদের গন্তব্যে পৌঁছে যায় তখন সেগুলো আবার একত্রিত হয়ে যায়, যাতে তা মেইল রূপে প্রদর্শিত হতে পারে।
প্যাকেট সুইচিং পদ্ধতি সার্কিট সুইচিং পদ্ধতি হতে অনেক বেশি দক্ষ হয়ে থাকে। আপনার কখনোয় প্রয়োজন পড়বে না কারো সাথে একেবারে কানেক্টেড হয়ে থাকার। তাই আপনি কারো লাইন একদমই বন্ধ করে রাখছেন না। অন্য কেউ একই সময়েই একই লাইন ব্যবহার করতে পারে। এবং নির্দিষ্ট প্যাকেট গুলো ঠিক মতোই আপনার ঠিকানায় পৌঁছে যাবে। যেহেতু প্যাকেট গুলো আলাদা আলাদা পথে ভ্রমন করে পৌছায় তাই কোন বাঁধা বিঘ্ন ঘটে না। ফলে অনেক ফাস্ট স্পীড দেখতে পাওয়া যায়।
প্যাকেট সুইচিং কীভাবে কাজ করে?
প্যাকেট সুইচিং কীভাবে কাজ করে তা বোঝার আগে আপনার বোঝা দরকার যে কীভাবে সার্কিট সুইচিং কাজ করে তার সম্পর্কে। মনে করুন আপনি অ্যামেরিকাতে থাকেন এবং বাংলাদেশে চলে আসার প্লান করলেন। মনে করুন আপনি শুধু আপনার মালপত্র নয় বরং সাথে আপনার বিল্ডিং ও তুলে নিয়ে আসার কথা ভাবছেন 😛 তবে ভেবে দেখুন একটি দুঃস্বপ্নের কথা যেখানে পৃথিবীর এক প্রান্ত থেকে আরেক প্রান্তে আপনার গোটা বাড়ি বহন করে নিয়ে আসছেন। তাহলে আপনাকে কি করতে হবে?
প্রথমত একটি এমন রাস্তা দেখতে হবে যা দিয়ে সহজে আপনি ভ্রমন করতে পারবেন। তারপরে আপনার কিছু ট্রাকের প্রয়োজন পড়বে। এবং সমুদ্র পার করার জন্য আপনার প্রয়োজন পড়বে একটি স্পেশাল জাহাজ। ভেবে দেখুন পুরা ব্যাপারটা কতটা কঠিন হয়ে পড়লো। আর এতো কিছু একসাথে বহন করার জন্য আপনি কয়েকদিন পিছিয়ে যাবেন। কারন আপনার গন্তব্য অনেক স্ল্যো হয়ে যাবে। আবার ঐ একই রাস্তায় যদি অন্যকেউ আসার চেষ্টা করে তবে সেও বাঁধাগ্রস্থ হয়ে পড়বে। আসলে সার্কিট সুইচিং পদ্ধতি এই একইভাবে কাজ করে। এবং এই পদ্ধতিতেই টেলিফোন কল হয়ে থাকে।
এখন আরেকটি অবস্থা কল্পনা করুন। মনে করুন আপনি আপনার বিল্ডিংটি খুলে ফেললেন এবং প্রত্যেকটা ইট নাম্বারিং করলেন। প্রত্যেকটি ইটকে একেকটি খামে ভরলেন এবং একেকটি পথে তা আপনার গন্তব্যের উদ্দেশ্যে পাঠিয়ে দিলেন। কোন গুলো গেলো হয়তো জাহাজে আবার কোন গুলো গেলো হয়তো আকাশ পথে। তারপর যখন সব ইটগুলো একত্রে পৌঁছে গেলো তখন ইটগুলোর নাম্বার গুলো মিলিয়ে আবার আগের বিল্ডিং তৈরি হয়ে যাবে। যেহেতু ইটগুলো আলাদা আলাদা রাস্তা দিয়ে ভ্রমন করে এসেছে তাই রাস্তায় কোন জ্যামের সৃষ্টি করবে না। এবং অন্যরা একই সময়ে একই রাস্তা ব্যবহার করতে পারবে।
আর ঠিক এই পদ্ধতিতেই প্যাকেট সুইচিং কাজ করে। যখন আপনি ইমেইল করেন বা ব্রাউজার দিয়ে কোন সাইট ব্রাউজ করেন তখন সকল ডাটাগুলো অনেক গুলো প্যাকেটে বিভক্ত হয়ে যায় এবং তা ইন্টারনেটে ছড়িয়ে পড়ে।
কীভাবে কম্পিউটাররা ইন্টারনেটে বিভিন্ন কাজ করে থাকে?
পুরো ইন্টারনেট জুড়ে শতশত মিলিয়ন কম্পিউটার রয়েছে। কিন্তু এরা প্রত্যেকেই কিন্তু একই কাজ করে না। এদের মধ্যে কিছু কম্পিউটার শুধু তথ্য সংগ্রহ করে রাখে এবং কোন তথ্য কোথাও থেকে অনুরোধ করা হলে সেখানে পাঠিয়ে দেওয়া হয়। আর এই মেশিন গুলোকে বলা হয় সার্ভার। যে মেশিন গুলো কোন ডকুমেন্ট স্টোর করে রাখে তাদের বলা হয় ফাইল সার্ভার। যে সার্ভার গুলো আপনার আমার মেইল ধারণ করে রাখে, এদের বলা হয় মেইল সার্ভার। এবং যে সার্ভার গুলো ওয়েবপেজ ধারণ করে রাখে তাদের বলা হয় ওয়েব সার্ভার। ইন্টারনেটে বহুত মিলিয়ন সার্ভার রয়েছে।
যে কম্পিউটার গুলো সার্ভার থেকে তথ্য সংগ্রহ করে এদের বলা হয় ক্লায়েন্ট কম্পিউটার। আপনি যখন মেইল চেক করার জন্য ইন্টারনেটে প্রবেশ করেন তখন আপনার কম্পিউটারটি হলো ক্লায়েন্ট, আপনার আইএসপি (ইন্টারনেট সার্ভিস প্রভাইডার) হলো সার্ভার এবং মেইলটি আসে মেইল সার্ভার থেকে। ইন্টারনেটে সার্ভারের তুলনায় ক্লায়েন্টের সংখ্যা বেশি, প্রায় বিলিয়ন খানেক।
যখন দুটি কম্পিউটার একে অপরের সাথে তথ্য আদান প্রদান করতে থাকে তখন একে বলা হয়ে থাকে পিরস (Peers)। আপনি যদি আপনার বন্ধুর সাথে ইনস্ট্যান্ট ম্যাসেজিং করেন বা ফটো আদান প্রদান করেন তবে এটি হলো পির টু পির (peer-to-peer) (P2P) কমুনিকেসন। পি টু পি তে কখনো আপনার কম্পিউটার ক্লায়েন্ট হিসেবে আচরন করে আবার কখনো আপনার কম্পিউটার সার্ভার হসেবে আচরন করে। মনে করুন আপনি আপনার বন্ধুকে ফটো সেন্ড করলেন, তখন আপনার কম্পিউটার সার্ভার হিসেবে কাজ করলো (ফটো সেন্ড করলো)। এবং আপনার বন্ধুর কম্পিউটার ক্লায়েন্ট হিসেবে কাজ করবে (ফটো অ্যাক্সেস করবে)। আবার আপনার বন্ধু ফটো সেন্ড করলে তার কম্পিউটার সার্ভার হিসেবে কাজ করবে (ফটো সেন্ড করলো) আর আপনার কম্পিউটার এবার ক্লায়েন্ট হিসেবে কাজ করবে (ফটো অ্যাক্সেস করবে)।
শুধু সার্ভার এবং ক্লায়েন্ট ছাড়াও আরেকটি মধ্যম কম্পিউটার রয়েছে যা ইন্টারনেটের আরেকটি অংশ। আর এর নাম হলো রাউটার। এটি শুধু আলাদা সিস্টেমের মধ্যে সংযোগ স্থাপন করতে সাহায্য করে থাকে। আপনার বাড়িতে বা স্কুলে বা অফিসে যদি একাধিক কম্পিউটার থাকে তবে রাউটার সকলকে একত্রিত করে ইন্টারনেটে কানেক্ট করতে সাহায্য করে।
টিসিপি/আইপি (TCP/IP) এবং ডিএনএস (DNS)
ইন্টারনেটে ডাটা আদান প্রদান করার আসল ব্যাপারটি কিন্তু মোটেও কোন ঘরের ইট খামে করে বহন করার মতো সহজ নয়। ইন্টারনেটের ডাটা গুলো কোন মানুষ যেমন আপনি বা আমি দ্বারা নিয়ন্ত্রন করা সম্ভব নয়। প্রত্যেকটি দিন নেটে অসংখ্য ডাটা আদান প্রদান করা হয়ে থাকে—খসড়া ভাবে প্রায় ৩ বিলিয়ন ইমেইলস এবং প্রচুর পরিমানে ট্র্যাফিক বিভিন্ন ডাটা ডাউনলোড এবং আপলোড করছে বিশ্বের ২৫০ মিলিয়ন ওয়েবসাইট জুড়ে। এখন প্রশ্ন হচ্ছে যদি এই সকল ডাটা গুলোকে প্যাকেটে পরিণত করে পাঠানো হয়ে থাকে এবং কারো যদি কোন কন্ট্রোলই না থাকে তবে কীভাবে এই প্যাকেট গুলো না হারিয়ে প্রত্যেকে আসল গন্তব্যে পৌঁছে যায়?
আর এর উত্তর হচ্ছে টিসিপি/আইপি (TCP/IP) বা ট্রান্সমিশন কন্ট্রোল প্রোটোকল/ইন্টারনেট প্রোটোকল। এই সিস্টেমটিই সকল প্যাকেট গুলোকে গন্তব্যে পৌঁছে দিতে সাহায্য করে। এটি বলতে পারেন টু ইন ওয়ান সিস্টেম। কম্পিউটারের দুনিয়ায় “প্রোটোকল” মানে হলো একটি স্ট্যান্ডার্ড যা প্রত্যেকে বিশ্বাস করে এবং সকল জিনিষ নিশ্চিতভাবে পৌঁছে গেছে তা নিশ্চিত করে। এখন আপনার মনে অবশ্যই প্রশ্ন জাগছে যে, টিসিপি/আইপি আসলে কি কাজ করে? চলুন জেনে নেওয়া যাক।
ইন্টারনেট প্রোটোকল বা আইপি হলো একটি সাধারন অ্যাড্রেসিং সিস্টেম। ইন্টারনেটে অবস্থিত সকল মেশিন আমারটা আপনারটা সবারটাতেই একটি ভিন্ন আইপি থাকে। যখন প্রত্যেকটি মেশিনে আলাদা আলাদা আইপি থাকবে তখন কোন মেশিন কোনটা তা সহজেই চেনা যাবে এবং সে অনুসারে প্যাকেট পাঠানো সম্ভব হয়ে থাকে। আইপি অ্যাড্রেস মূলত কিছু সংখ্যার সন্নিবেশ হয়ে থাকে। এবং সংখ্যা গুলো কমা বা কোলন ব্যবহার করে আলাদা করা হয়ে থাকে।
ওয়েবসাইটের ক্ষেত্রে ব্যাপারটা একটু আলাদা হয়ে থাকে। ওয়েবসাইটে আইপির বদলে সহজে মনে রাখার জন্য নাম ব্যবহার করা হয়ে থাকে। যেমন (Techubs.Net)। এই সিস্টেমের নাম হলো ডিএনএস বা ডোমেইন নেম সার্ভার। ডোমেইন নেম ব্রাউজারে প্রবেশ করানোর পড়ে কম্পিউটার এই আইপি খুঁজতে আরম্ভ করে এবং আইপি খুঁজে পেলে ওয়েব সার্ভার থেকে সাইট ওপেন হয়ে যায়।
আইপি মূলত দুই প্রকারের হয়ে থাকে। একটি হলো IPv4 এবং আরেকটি IPv6। আইপিভি৪ এ চার খণ্ডের ডিজিট থাকে। যেমন 12.34.56.78 অথবা 123.255.212.55। কিন্তু দ্রুত বর্ধমান ইন্টারনেট জগতে আজ আর নতুন কোন আইপিভি৪ অ্যাড্রেস অবশিষ্ট নেই। তাই নতুন এক সিস্টেম উদ্ভবন করা হয়েছে যার নাম হলো আইপিভি৬। এটি আইপিভি৪ এর তুলনায় অনেক লম্বা। 123a:b716:7291:0da2:912c:0321:0ffe:1da2 হলো আইপিভি৬ এর উদাহরণ।
এই কন্ট্রোল সিস্টেমের আরেকটি অংশ হলো ট্রান্সমিশন কন্ট্রোল প্রোটোকল বা টিসিপি। এই সিস্টেমটি নির্ধারণ করে যে, একটি আইপি থেকে আরেকটি আইপিতে কীভাবে প্যাকেট সেন্ড করতে হবে। এবং এই সিস্টেমটি রিসিভ হওয়া প্যাকেট গুলোকে একত্রিত করে। আবার প্যাকেট সেন্ড করার সময় কোন প্যাকেট হারিয়ে গেলে আবার রি-সেন্ড করে।
কিন্তু
আপনি আর আপনার বন্ধুর কম্পিউটারের ফাঁকের মধ্যে আরো ডজন খানি কম্পিউটার রয়েছে যা আপনার আর আপনার বন্ধুর কম্পিউটারের মধ্যের ফাঁকা স্থান পূরণ করছে। আর এভাবেই একটি কম্পিউটারের সাথে আরেকটি কম্পিউটার সংযুক্ত রয়েছে গোটা পৃথিবী জুড়ে আর এটাই হলো দ্যা ইন্টারনেট। কিন্তু এই আলদা আলদা কম্পিউটার গুলো নিজেদের ভেতর সম্পর্ক স্থাপন করতে সক্ষম হয় কীভাবে? বন্ধুরা চলুন এই সমস্ত বিষয়টি একদম কাছ থেকে পরিদর্শন করে আসি।
ইন্টারনেট কি?
বৈশ্বিক যোগাযোগ ব্যাবস্থা এখন অনেক উন্নত হয়ে গেছে আর এই সবই কৃতিত্ব তার, যার নাম হলো ইন্টারনেট। গত ২০ বছরেরও কম সময়ের মধ্যে মোটামুটি ২১০টি আলাদা দেশের মধ্যে ছড়িয়ে পড়েছে এর বিস্তার। এমনকি পৃথিবীর অনেক দরিদ্রতর দেশও সংযুক্ত হয়ে পড়েছে এই জালে।
আপনি আমি সহ বেশিরভাগ মানুষই মনে করেন যে, ইন্টারনেট শব্দটির মানে হচ্ছে অনলাইনে চলে যাওয়া। কিন্তু সত্য কথা বলতে এটি একটি সাধারন কম্পিউটার নেটওয়ার্ক ছাড়া আর কিছুই নয়। মনেকরুন একটি রাস্তার কথা যা পুরো পৃথিবী জুড়ে পেঁচিয়ে রয়েছে। যেমন করে রাস্তা দিয়ে ট্র্যাফিক বয়ে গিয়ে তার গন্তব্যে পৌঁছে ঠিক তেমনি বিভিন্ন কম্পিউটার দিয়ে ডাটা বয়ে গিয়ে তার গন্তব্যে পৌঁছে। আর এটাই হলো ইন্টারনেট এর মূল ভিত্তি। ইন্টারনেট হলো আসলে একেকটি আলাদা কম্পিউটারের একসাথে সংযুক্ত হয়ে থাকার একটি সিস্টেম (আপনার ঘরের কম্পিউটার, অফিসের কম্পিউটার, স্কুল কলেজের কম্পিউটার)।
একটি কম্পিউটারের সাথে আরেকটি কম্পিউটারের সংযোগ করা থাকে বিভিন্ন উপায়ে। কোন কম্পিউটার গুলো সংযুক্ত থাকে পুরাতন কপার ক্যাবল দ্বারা আবার কোন গুলো ফাইবার-অপটিক ক্যাবল (যা আলোর স্পন্দনের মধ্যে ডাটা সেন্ড করে) দ্বারা আবার কোন কম্পিউটার গুলো বেতার কানেকশানে যুক্ত থাকে (বেতার কানেকশান মানে আমরা যাকে ওয়্যারলেস বুঝি, এটি রেডিও তরঙ্গের মাধ্যমে সংযোগ স্থাপন করে) এবং কোন কম্পিউটার গুলো স্যাটালাইটের সাথে সংযুক্ত থাকে। আর এইভাবেই আমরা উপভোগ করতে পারি ইনস্ট্যান্ট ম্যাসেজ সুবিধা, ইমেইল সেবা, অথবা ডাউনলোড করি এমপিথ্রী মিউজিক ফাইলস।
ইন্টারনেটের আসল কাজ কি?
ইন্টারনেটের চাকরিটা আসলে খুব সহজ, সে শুধু এক জায়গা থেকে আরেক জায়গায় ডাটার আদান এবং প্রদান করে, ব্যাস। যে মেশিন গুলো একত্রিত হয়ে ইন্টারনেট তৈরি করেছে তাদের প্রধান কাজই হলো ডাটা আদান আর প্রদান। বাস্তবিকভাবে তুলনা করতে গেলে ইন্টারনেটকে টিউনাল সার্ভিসের সাথে তুলনা করা যায়।
টিউনাল সার্ভিসে চিঠি এক জায়গা থেকে আরেক জায়গায় আদান প্রদান করা হয়। কিন্তু এটা কোন ব্যাপার না যে চিঠি কার কাছ থেকে আসলো বা চিঠির ভেতর কি লেখা আছে। আবার চিঠি একদম ফাঁকা থাকলেও টিউনাল সার্ভিসের কোন যায় আসে না। তার কাজ চিঠি পৌঁছানো ব্যাস তা পৌঁছে দেবে। ইন্টারনেটও একইভাবে কাজ করে।
টিউনাল সার্ভিসের মতো ইন্টারনেটও অনেক তথ্য ধারণ করে তা এক জায়গা থেকে আরেক জায়গায় পৌঁছে দেয়। এরমানে হলো যদি কোন ডাটা আদান প্রদান করানো হয় তবে ইন্টারনেট সেটি সম্পূর্ণ করে দেবে। এখন আপনি ইমেইল পাঠালেন না কাওকে ম্যাসেজ করলেন এর সাথে ইন্টারনেটের কোন লেনাদেনা নেই। তবে যে কাজেই ডাটা আদান প্রদান করার বিষয় আছে সেটিই ইন্টারনেট সম্পূর্ণ করতে সাহায্য করবে, ব্যাস। এখন এই ডাটা আদান প্রদানের সূত্রের উপর ভিত্তি করে আমরা নতুন নতুন ব্যবহার খুঁজে বেড় করছি। যেমন যখন দুই ইউরোপিয়ান বিনিয়োগকারী স্কাইপ তৈরি করলেন তখন তারা টেলিফোনের কথা বলাকে নেটে নিয়ে আসলেন। তারা একটি প্রোগ্রাম তৈরি করলেন যেখানে আমাদের কথা ডাটাতে পরিণত হতে পারে এবং তা আদান প্রদানের মাধ্যমে কথাবার্তা চলতে থাকে। কিন্তু কখনোয় সরাসরি আমাদের কথা আদান প্রদান করিয়ে স্কাইপের জন্য আলাদা ইন্টারনেট তৈরি করা সম্ভব ছিল না।
ইন্টারনেটের ডাটা গুলো কীভাবে আদান প্রদান করা হয়?
ইন্টারনেট মূলত টেলিফোন নেটওয়ার্ক এর মতো কাজ করে থাকে। কিন্তু ইন্টারনেটের ডাটা বহন করা আর টেলিফোন লাইনে কল করা আলাদা ব্যাপার। আপনি যখন আপনার কোন বন্ধুকে রিং করেন তখন আপনার টেলিফোনে আপনি এবং আপনার বন্ধুর মধ্যে একটি সরাসরি কানেকশান (বা সার্কিট) ওপেন হয়ে যায়। আপনি যতক্ষণ টেলিফোনে কানেক্ট হয়ে থাকেন, সার্কিটটি ততোক্ষণ ওপেন হয়ে থাকে। একটি টেলিফোনের সাথে আরেকটি টেলিফোনকে কানেক্ট থাকার পদ্ধতিকে সার্কিট সুইচিং বলা হয়। কখন কার কথা শোনা যাবে আর কার কথা পাঠানো হবে তা নিয়ন্ত্রন করে ইলেক্ট্রনিক টেলিফোন এক্সচেঞ্জ সিস্টেম।
কিন্তু বন্ধুরা একটু ভেবে দেখলে বুঝতে পারবেন যে, সার্কিট সুইচিং কোন নেটওয়ার্ক স্থাপন করার জন্য সত্যিই অদক্ষ একটি পদ্ধতি। আপনি যখনই ফোনে আপনার বন্ধুর সাথে সংযুক্ত হয়ে থাকবেন তখন সেই লাইনে আপনার সাথে অন্য কেউ সম্পর্ক স্থাপন করতে পারবেনা। (মনে করুন, আপনি কাওকে একটি ইমেইল টাইপ করছেন, টাইপ করতে ঘণ্টা লেগে যেতে পারে, আর এই সময়ে যদি আপনাকে আর কেউ কোন মেইল সেন্ড করতে না পারে তবে?) মনে করুন আপনি টেলিফোনে অনেক ধিরেধিরে কথা বলছেন বা কথা বলতে বলতে লম্বা ফাঁকা নিচ্ছেন বা কথা বলতে গিয়ে ফোন রেখে কফির মগ আনতে গেলেন। তো আপনি তো তখন কোন তথ্য প্রেরন করছেন না, কিন্তু তারপরেও আপনার ফোন আপনার বন্ধুর ফোনের সাথে কানেক্টেড হয়ে রয়েছে। আপনাকে প্রত্যেকটা সেকেন্ডের জন্য বিল চার্জ করা হচ্ছে এবং আপনি কথা বলুন আর নাই বলুন ফোন কানেক্টেড থাকা মানে আর অন্য কেউ সেই লাইনে ফোন করতে পারবে না। তাই সার্কিট সুইচিং কখনোয় আদর্শ নেটওয়ার্ক হতে পারে না। তাহলে ইন্টারনেট কি ধরনের নেটওয়ার্ক ব্যবহার করে ডাটা বহন করে?
প্যাকেট সুইচিং
ইন্টারনেট তার ডাটা বহন করতে এখনো কখনো কখনো সার্কিট সুইচিং পদ্ধতি ব্যবহার করে থাকে। যেমন আপনি যদি ডায়াল-আপ কানেকশান (যেখানে আপনার কম্পিউটার আপনার ইন্টারনেট প্রদানকারীর কাছে পৌঁছাতে একটি টেলিফোন নাম্বার ডায়াল করে, আর এটি কোন সাধারন ফোন কলের মতোই কাজ করে) ব্যবহার করেন ইন্টারনেটের সাথে সংযুক্ত হতে। এখানে আপনি অনলাইনে আসার জন্য সার্কিট সুইচিং পদ্ধতি ব্যবহার করলেন। তাই আমি কানেক্টেড থাকা পর্যন্ত কেউ আপনাকে ফোন করতে পারবেনা। এবং আপনাকে কানেক্ট থাকার প্রত্যেক সেকেন্ডের জন্য টাকা দিতে হবে। এবং বদলে আপনার নেট কানেকশান কাজ করবে একদম কচ্ছপ গতিতে।
কিন্তু বেশিরভাগ ইন্টারনেট ডাটা বহন করা হয়ে থাকে সম্পূর্ণ নতুন এক পদ্ধতিতে যার নাম হলো প্যাকেট সুইচিং। মনে করুন আপনি আপনার কোন ইন্ডিয়ান বন্ধুকে ইমেইল পাঠাতে চাচ্ছেন। তো এখানে আপনার ইন্ডিয়ান বন্ধু এবং আপনাকে সরাসরি কানেক্টেড থাকার কোন প্রয়োজন নেই এই সম্পূর্ণ মেইলটি একবারে পাবার জন্য। প্যাকেট সুইচিং এ আপনার মেইলটি পাঠানোর পরে তা অনেক গুলো খণ্ডে বিভক্ত হয়ে যায়। আর এই প্রত্যেকটি খণ্ডকে বলা হয়ে থাকে প্যাকেটস। প্রত্যেকটি প্যাকেটের গায়ে ট্যাগ করা থাকে যে তাদের কথায় যেতে হবে এবং তারা আলদা আলদা পথে ভ্রমণ করতে পারে। খণ্ডগুলো যখন তাদের গন্তব্যে পৌঁছে যায় তখন সেগুলো আবার একত্রিত হয়ে যায়, যাতে তা মেইল রূপে প্রদর্শিত হতে পারে।
প্যাকেট সুইচিং পদ্ধতি সার্কিট সুইচিং পদ্ধতি হতে অনেক বেশি দক্ষ হয়ে থাকে। আপনার কখনোয় প্রয়োজন পড়বে না কারো সাথে একেবারে কানেক্টেড হয়ে থাকার। তাই আপনি কারো লাইন একদমই বন্ধ করে রাখছেন না। অন্য কেউ একই সময়েই একই লাইন ব্যবহার করতে পারে। এবং নির্দিষ্ট প্যাকেট গুলো ঠিক মতোই আপনার ঠিকানায় পৌঁছে যাবে। যেহেতু প্যাকেট গুলো আলাদা আলাদা পথে ভ্রমন করে পৌছায় তাই কোন বাঁধা বিঘ্ন ঘটে না। ফলে অনেক ফাস্ট স্পীড দেখতে পাওয়া যায়।
প্যাকেট সুইচিং কীভাবে কাজ করে?
প্যাকেট সুইচিং কীভাবে কাজ করে তা বোঝার আগে আপনার বোঝা দরকার যে কীভাবে সার্কিট সুইচিং কাজ করে তার সম্পর্কে। মনে করুন আপনি অ্যামেরিকাতে থাকেন এবং বাংলাদেশে চলে আসার প্লান করলেন। মনে করুন আপনি শুধু আপনার মালপত্র নয় বরং সাথে আপনার বিল্ডিং ও তুলে নিয়ে আসার কথা ভাবছেন 😛 তবে ভেবে দেখুন একটি দুঃস্বপ্নের কথা যেখানে পৃথিবীর এক প্রান্ত থেকে আরেক প্রান্তে আপনার গোটা বাড়ি বহন করে নিয়ে আসছেন। তাহলে আপনাকে কি করতে হবে?
প্রথমত একটি এমন রাস্তা দেখতে হবে যা দিয়ে সহজে আপনি ভ্রমন করতে পারবেন। তারপরে আপনার কিছু ট্রাকের প্রয়োজন পড়বে। এবং সমুদ্র পার করার জন্য আপনার প্রয়োজন পড়বে একটি স্পেশাল জাহাজ। ভেবে দেখুন পুরা ব্যাপারটা কতটা কঠিন হয়ে পড়লো। আর এতো কিছু একসাথে বহন করার জন্য আপনি কয়েকদিন পিছিয়ে যাবেন। কারন আপনার গন্তব্য অনেক স্ল্যো হয়ে যাবে। আবার ঐ একই রাস্তায় যদি অন্যকেউ আসার চেষ্টা করে তবে সেও বাঁধাগ্রস্থ হয়ে পড়বে। আসলে সার্কিট সুইচিং পদ্ধতি এই একইভাবে কাজ করে। এবং এই পদ্ধতিতেই টেলিফোন কল হয়ে থাকে।
এখন আরেকটি অবস্থা কল্পনা করুন। মনে করুন আপনি আপনার বিল্ডিংটি খুলে ফেললেন এবং প্রত্যেকটা ইট নাম্বারিং করলেন। প্রত্যেকটি ইটকে একেকটি খামে ভরলেন এবং একেকটি পথে তা আপনার গন্তব্যের উদ্দেশ্যে পাঠিয়ে দিলেন। কোন গুলো গেলো হয়তো জাহাজে আবার কোন গুলো গেলো হয়তো আকাশ পথে। তারপর যখন সব ইটগুলো একত্রে পৌঁছে গেলো তখন ইটগুলোর নাম্বার গুলো মিলিয়ে আবার আগের বিল্ডিং তৈরি হয়ে যাবে। যেহেতু ইটগুলো আলাদা আলাদা রাস্তা দিয়ে ভ্রমন করে এসেছে তাই রাস্তায় কোন জ্যামের সৃষ্টি করবে না। এবং অন্যরা একই সময়ে একই রাস্তা ব্যবহার করতে পারবে।
আর ঠিক এই পদ্ধতিতেই প্যাকেট সুইচিং কাজ করে। যখন আপনি ইমেইল করেন বা ব্রাউজার দিয়ে কোন সাইট ব্রাউজ করেন তখন সকল ডাটাগুলো অনেক গুলো প্যাকেটে বিভক্ত হয়ে যায় এবং তা ইন্টারনেটে ছড়িয়ে পড়ে।
কীভাবে কম্পিউটাররা ইন্টারনেটে বিভিন্ন কাজ করে থাকে?
পুরো ইন্টারনেট জুড়ে শতশত মিলিয়ন কম্পিউটার রয়েছে। কিন্তু এরা প্রত্যেকেই কিন্তু একই কাজ করে না। এদের মধ্যে কিছু কম্পিউটার শুধু তথ্য সংগ্রহ করে রাখে এবং কোন তথ্য কোথাও থেকে অনুরোধ করা হলে সেখানে পাঠিয়ে দেওয়া হয়। আর এই মেশিন গুলোকে বলা হয় সার্ভার। যে মেশিন গুলো কোন ডকুমেন্ট স্টোর করে রাখে তাদের বলা হয় ফাইল সার্ভার। যে সার্ভার গুলো আপনার আমার মেইল ধারণ করে রাখে, এদের বলা হয় মেইল সার্ভার। এবং যে সার্ভার গুলো ওয়েবপেজ ধারণ করে রাখে তাদের বলা হয় ওয়েব সার্ভার। ইন্টারনেটে বহুত মিলিয়ন সার্ভার রয়েছে।
যে কম্পিউটার গুলো সার্ভার থেকে তথ্য সংগ্রহ করে এদের বলা হয় ক্লায়েন্ট কম্পিউটার। আপনি যখন মেইল চেক করার জন্য ইন্টারনেটে প্রবেশ করেন তখন আপনার কম্পিউটারটি হলো ক্লায়েন্ট, আপনার আইএসপি (ইন্টারনেট সার্ভিস প্রভাইডার) হলো সার্ভার এবং মেইলটি আসে মেইল সার্ভার থেকে। ইন্টারনেটে সার্ভারের তুলনায় ক্লায়েন্টের সংখ্যা বেশি, প্রায় বিলিয়ন খানেক।
যখন দুটি কম্পিউটার একে অপরের সাথে তথ্য আদান প্রদান করতে থাকে তখন একে বলা হয়ে থাকে পিরস (Peers)। আপনি যদি আপনার বন্ধুর সাথে ইনস্ট্যান্ট ম্যাসেজিং করেন বা ফটো আদান প্রদান করেন তবে এটি হলো পির টু পির (peer-to-peer) (P2P) কমুনিকেসন। পি টু পি তে কখনো আপনার কম্পিউটার ক্লায়েন্ট হিসেবে আচরন করে আবার কখনো আপনার কম্পিউটার সার্ভার হসেবে আচরন করে। মনে করুন আপনি আপনার বন্ধুকে ফটো সেন্ড করলেন, তখন আপনার কম্পিউটার সার্ভার হিসেবে কাজ করলো (ফটো সেন্ড করলো)। এবং আপনার বন্ধুর কম্পিউটার ক্লায়েন্ট হিসেবে কাজ করবে (ফটো অ্যাক্সেস করবে)। আবার আপনার বন্ধু ফটো সেন্ড করলে তার কম্পিউটার সার্ভার হিসেবে কাজ করবে (ফটো সেন্ড করলো) আর আপনার কম্পিউটার এবার ক্লায়েন্ট হিসেবে কাজ করবে (ফটো অ্যাক্সেস করবে)।
শুধু সার্ভার এবং ক্লায়েন্ট ছাড়াও আরেকটি মধ্যম কম্পিউটার রয়েছে যা ইন্টারনেটের আরেকটি অংশ। আর এর নাম হলো রাউটার। এটি শুধু আলাদা সিস্টেমের মধ্যে সংযোগ স্থাপন করতে সাহায্য করে থাকে। আপনার বাড়িতে বা স্কুলে বা অফিসে যদি একাধিক কম্পিউটার থাকে তবে রাউটার সকলকে একত্রিত করে ইন্টারনেটে কানেক্ট করতে সাহায্য করে।
টিসিপি/আইপি (TCP/IP) এবং ডিএনএস (DNS)
ইন্টারনেটে ডাটা আদান প্রদান করার আসল ব্যাপারটি কিন্তু মোটেও কোন ঘরের ইট খামে করে বহন করার মতো সহজ নয়। ইন্টারনেটের ডাটা গুলো কোন মানুষ যেমন আপনি বা আমি দ্বারা নিয়ন্ত্রন করা সম্ভব নয়। প্রত্যেকটি দিন নেটে অসংখ্য ডাটা আদান প্রদান করা হয়ে থাকে—খসড়া ভাবে প্রায় ৩ বিলিয়ন ইমেইলস এবং প্রচুর পরিমানে ট্র্যাফিক বিভিন্ন ডাটা ডাউনলোড এবং আপলোড করছে বিশ্বের ২৫০ মিলিয়ন ওয়েবসাইট জুড়ে। এখন প্রশ্ন হচ্ছে যদি এই সকল ডাটা গুলোকে প্যাকেটে পরিণত করে পাঠানো হয়ে থাকে এবং কারো যদি কোন কন্ট্রোলই না থাকে তবে কীভাবে এই প্যাকেট গুলো না হারিয়ে প্রত্যেকে আসল গন্তব্যে পৌঁছে যায়?
আর এর উত্তর হচ্ছে টিসিপি/আইপি (TCP/IP) বা ট্রান্সমিশন কন্ট্রোল প্রোটোকল/ইন্টারনেট প্রোটোকল। এই সিস্টেমটিই সকল প্যাকেট গুলোকে গন্তব্যে পৌঁছে দিতে সাহায্য করে। এটি বলতে পারেন টু ইন ওয়ান সিস্টেম। কম্পিউটারের দুনিয়ায় “প্রোটোকল” মানে হলো একটি স্ট্যান্ডার্ড যা প্রত্যেকে বিশ্বাস করে এবং সকল জিনিষ নিশ্চিতভাবে পৌঁছে গেছে তা নিশ্চিত করে। এখন আপনার মনে অবশ্যই প্রশ্ন জাগছে যে, টিসিপি/আইপি আসলে কি কাজ করে? চলুন জেনে নেওয়া যাক।
ইন্টারনেট প্রোটোকল বা আইপি হলো একটি সাধারন অ্যাড্রেসিং সিস্টেম। ইন্টারনেটে অবস্থিত সকল মেশিন আমারটা আপনারটা সবারটাতেই একটি ভিন্ন আইপি থাকে। যখন প্রত্যেকটি মেশিনে আলাদা আলাদা আইপি থাকবে তখন কোন মেশিন কোনটা তা সহজেই চেনা যাবে এবং সে অনুসারে প্যাকেট পাঠানো সম্ভব হয়ে থাকে। আইপি অ্যাড্রেস মূলত কিছু সংখ্যার সন্নিবেশ হয়ে থাকে। এবং সংখ্যা গুলো কমা বা কোলন ব্যবহার করে আলাদা করা হয়ে থাকে।
ওয়েবসাইটের ক্ষেত্রে ব্যাপারটা একটু আলাদা হয়ে থাকে। ওয়েবসাইটে আইপির বদলে সহজে মনে রাখার জন্য নাম ব্যবহার করা হয়ে থাকে। যেমন (Techubs.Net)। এই সিস্টেমের নাম হলো ডিএনএস বা ডোমেইন নেম সার্ভার। ডোমেইন নেম ব্রাউজারে প্রবেশ করানোর পড়ে কম্পিউটার এই আইপি খুঁজতে আরম্ভ করে এবং আইপি খুঁজে পেলে ওয়েব সার্ভার থেকে সাইট ওপেন হয়ে যায়।
আইপি মূলত দুই প্রকারের হয়ে থাকে। একটি হলো IPv4 এবং আরেকটি IPv6। আইপিভি৪ এ চার খণ্ডের ডিজিট থাকে। যেমন 12.34.56.78 অথবা 123.255.212.55। কিন্তু দ্রুত বর্ধমান ইন্টারনেট জগতে আজ আর নতুন কোন আইপিভি৪ অ্যাড্রেস অবশিষ্ট নেই। তাই নতুন এক সিস্টেম উদ্ভবন করা হয়েছে যার নাম হলো আইপিভি৬। এটি আইপিভি৪ এর তুলনায় অনেক লম্বা। 123a:b716:7291:0da2:912c:0321:0ffe:1da2 হলো আইপিভি৬ এর উদাহরণ।
এই কন্ট্রোল সিস্টেমের আরেকটি অংশ হলো ট্রান্সমিশন কন্ট্রোল প্রোটোকল বা টিসিপি। এই সিস্টেমটি নির্ধারণ করে যে, একটি আইপি থেকে আরেকটি আইপিতে কীভাবে প্যাকেট সেন্ড করতে হবে। এবং এই সিস্টেমটি রিসিভ হওয়া প্যাকেট গুলোকে একত্রিত করে। আবার প্যাকেট সেন্ড করার সময় কোন প্যাকেট হারিয়ে গেলে আবার রি-সেন্ড করে।