OSI মডেল — সাতটি স্তর
এই পাঠে যা শিখবেন
- OSI মডেলের সাতটি স্তর ও প্রতিটির নির্দিষ্ট দায়িত্ব
- প্রতিটি স্তরের বাস্তব উদাহরণ প্রযুক্তি ও প্রোটোকল
- মনে রাখার কৌশল দিয়ে স্তরগুলোর সঠিক ক্রম আয়ত্ত করা
- কেন OSI তাত্ত্বিক অথচ এর পরিভাষা আজও ব্যাপকভাবে ব্যবহৃত হয়
১ · OSI মডেল কী ও কেন তৈরি হয়েছিল
OSI মডেলOpen Systems InterconnectionISO-প্রণীত একটি রেফারেন্স ফ্রেমওয়ার্ক যা নেটওয়ার্কিং ফাংশনকে ৭টি স্বতন্ত্র স্তরে ভাগ করে, যাতে ভিন্ন ভিন্ন ভেন্ডরের সিস্টেম একে অপরের সাথে ইন্টারঅপারেট করতে পারে। International Organization for Standardization (ISO) এই মডেল তৈরি করেছিল যাতে ভিন্ন কোম্পানির তৈরি নেটওয়ার্ক যন্ত্রপাতি ও সফটওয়্যার একে অপরের সাথে নির্ভরযোগ্যভাবে কাজ করতে পারে। যদিও বাস্তবে খুব কম সিস্টেমই OSI-এর পুরো ৭টি স্তর হুবহু আলাদাভাবে ইমপ্লিমেন্ট করে, এর স্তর-ভাষা (vocabulary) আজও নেটওয়ার্কিং শিল্পে সর্বজনীনভাবে ব্যবহৃত হয় (যেমন "layer 2 সুইচ", "layer 3 রাউটিং")।
২ · সাতটি স্তর — নিচ থেকে উপরে
- ১. Physical — কাঁচা বিট (bits) মাধ্যমের মধ্য দিয়ে পাঠানো (ভোল্টেজ, রেডিও তরঙ্গ, আলো)। উদাহরণ: কেবল, ফাইবার, রেডিও সিগন্যাল (M2-তে বিস্তারিত)।
- ২. Data Link — ফ্রেমিং, MAC অ্যাড্রেসিং, এরর ডিটেকশন। উদাহরণ: Ethernet, WiFi (M3-তে বিস্তারিত)।
- ৩. Network — লজিক্যাল অ্যাড্রেসিং ও রাউটিং। উদাহরণ: IP (M4-তে বিস্তারিত)।
- ৪. Transport — এন্ড-টু-এন্ড ডেলিভারি, পোর্ট নাম্বার। উদাহরণ: TCP, UDP (M5-তে বিস্তারিত)।
- ৫. Session — অ্যাপ্লিকেশনগুলোর মধ্যে সেশন স্থাপন, পরিচালনা ও সমাপ্তি।
- ৬. Presentation — ডেটা ফরম্যাট অনুবাদ, এনক্রিপশন ও কমপ্রেশন।
- ৭. Application — প্রকৃত ব্যবহারকারী-মুখী প্রোটোকল। উদাহরণ: HTTP, DNS (M6-তে বিস্তারিত)।
৩ · মনে রাখার কৌশল (Mnemonic)
স্তরগুলোর ক্রম মনে রাখতে ইংরেজি বাক্যটি ব্যবহার করা হয় — "Please Do Not Throw Sausage Pizza Away" — যেখানে প্রতিটি শব্দের প্রথম অক্ষর একটি স্তরের সাথে মেলে, ঠিক নিচ থেকে উপরের ক্রমেই: Please (Physical), Do (Data Link), Not (Network), Throw (Transport), Sausage (Session), Pizza (Presentation), Away (Application)।
লক্ষ্য করুন — এই মডুলারিটির নীতি ঠিক L01-এ শেখা "স্তরভিত্তিক প্রোটোকল স্ট্যাক" ধারণারই একটি আনুষ্ঠানিক, সাত-স্তরের বিস্তৃত রূপ। প্রতিটি স্তর শুধু তার ঠিক উপরের ও নিচের স্তরের সাথে ইন্টারফেস করে — এই একই নীতি OSI-এর সবগুলো স্তরেও প্রযোজ্য।
৪ · OSI কেন তাত্ত্বিক — বাস্তবে সরাসরি ব্যবহৃত হয় না
বাস্তবে খুব কম প্রোটোকল স্ট্যাকই OSI-এর ৭টি স্তরকে হুবহু আলাদা আলাদাভাবে বাস্তবায়ন করে। প্রকৃত ইন্টারনেট একটি ভিন্ন, সরলতর মডেলে চলে — TCP/IP মডেল — যেখানে OSI-এর Session, Presentation ও Application স্তর একটি একক "Application" স্তরে একত্রিত হয়ে যায়। এর বিস্তারিত তুলনা আমরা পরবর্তী পাঠে (L04) দেখব। তবু OSI-এর পরিভাষা diagnostic ও শিক্ষাগত রেফারেন্স হিসেবে আজও অপরিহার্য।
# OSI-এর সাতটি স্তর — (স্তর নম্বর, নাম, উদাহরণ প্রযুক্তি/প্রোটোকল)
osi_layers = [
(1, "Physical", "কেবল, রেডিও সিগন্যাল, ভোল্টেজ লেভেল"),
(2, "Data Link", "Ethernet, MAC অ্যাড্রেসিং, ফ্রেমিং"),
(3, "Network", "IP, রাউটিং"),
(4, "Transport", "TCP, UDP, পোর্ট নাম্বার"),
(5, "Session", "সেশন স্থাপন/সমাপ্তি ব্যবস্থাপনা"),
(6, "Presentation", "এনক্রিপশন, কমপ্রেশন, ডেটা ফরম্যাট"),
(7, "Application", "HTTP, DNS, SMTP"),
]
print("OSI স্ট্যাক — নিচ থেকে উপরে (প্রেরণের সময় ডেটা যেভাবে প্রতিটি স্তর অতিক্রম করে):")
for number, name, example in osi_layers:
print(f" স্তর {number}: {name:<12} -> {example}")
print("\nOSI স্ট্যাক — উপর থেকে নিচে (mnemonic অনুযায়ী যেভাবে সাধারণত মুখস্থ করা হয়):")
for number, name, example in reversed(osi_layers):
print(f" স্তর {number}: {name:<12} -> {example}")
OSI মডেল একটি সম্পূর্ণ, তাত্ত্বিকভাবে পরিষ্কার নেটওয়ার্কিং ভাষা দেয় — প্রতিটি স্তরের একটি সুনির্দিষ্ট, সংকীর্ণ দায়িত্ব। এই পরিভাষা এতটাই প্রভাবশালী যে বাস্তব প্রোটোকল স্ট্যাক (TCP/IP) সম্পূর্ণ ভিন্ন কাঠামো হওয়া সত্ত্বেও ইঞ্জিনিয়াররা এখনও OSI-এর স্তর-নম্বর দিয়ে কথা বলেন। পরবর্তী পাঠে আমরা দেখব বাস্তবে ব্যবহৃত TCP/IP মডেল কীভাবে এই ৭টি স্তরকে মাত্র ৪টিতে সংকুচিত করে।
ভাবনার প্রশ্ন
প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।
প্র ০১ OSI মডেলের প্রতিটি স্তর কেন শুধু তার ঠিক পাশের স্তরের সাথেই ইন্টারফেস করে?
এটি L01-এ শেখা মডুলারিটির নীতিরই বিস্তৃত রূপ — যদি প্রতিটি স্তর শুধু তার প্রতিবেশী স্তরের সাথে একটি সুনির্দিষ্ট ইন্টারফেসের মাধ্যমে কথা বলে, তাহলে একটি স্তরের ভেতরের প্রযুক্তি বদলে ফেললেও (যেমন Ethernet-এর বদলে WiFi) বাকি স্তরগুলোর কোনো পরিবর্তনের দরকার হয় না। এই স্বাধীনতাই বিভিন্ন ভেন্ডরের যন্ত্রপাতিকে একসাথে কাজ করতে দেয়, যা ছিল OSI মডেল তৈরির মূল উদ্দেশ্য।
প্র ০২ Session ও Presentation-কে Transport বা Application থেকে আলাদা স্তর করার তাত্ত্বিক যুক্তি কী ছিল?
OSI-এর লক্ষ্য ছিল প্রতিটি দায়িত্বকে সর্বোচ্চ পরিমাণে আলাদা করা (maximal separation of concerns) — সেশন ব্যবস্থাপনা (ডায়ালগ নিয়ন্ত্রণ, চেকপয়েন্টিং) ও প্রেজেন্টেশন (ফরম্যাট/এনক্রিপশন/কমপ্রেশন) ধারণাগতভাবে এন্ড-টু-এন্ড ডেলিভারি (Transport) বা ব্যবহারকারী-মুখী লজিক (Application) থেকে ভিন্ন কাজ। তবে বাস্তবে প্রোটোকল ডিজাইনাররা এগুলো আলাদা স্তর হিসেবে না রেখে সরাসরি অ্যাপ্লিকেশন প্রোটোকলের মধ্যেই সমাধান করা বেশি ব্যবহারিক মনে করেছেন (L04-এ বিস্তারিত)।
প্র ০৩ "Layer 2 সুইচ" ও "layer 3 রাউটার" শব্দবন্ধ আজও কেন ব্যবহৃত হয়, যদিও বাস্তব ইন্টারনেট TCP/IP মডেলে চলে?
এই শব্দবন্ধগুলো নির্দিষ্টভাবে বলে দেয় একটি ডিভাইস কোন ধরনের অ্যাড্রেসের ভিত্তিতে ফরওয়ার্ডিং সিদ্ধান্ত নেয় — layer 2 মানে MAC অ্যাড্রেস (ডেটা লিংক), layer 3 মানে IP অ্যাড্রেস (নেটওয়ার্ক)। এই নির্ভুল, শিল্প-ব্যাপী স্বীকৃত শর্টহ্যান্ড এতটাই দরকারী যে বাস্তবায়নের মডেল ভিন্ন হলেও OSI-এর স্তর-সংখ্যা ব্যবহার চলতেই থাকে।
অনুশীলন
-
চিন্তা করুন: "Please Do Not Throw Sausage Pizza Away" ছাড়া নিজের একটি বাংলা বা ইংরেজি mnemonic তৈরি করার চেষ্টা করুন যা একই সাতটি স্তরের প্রথম অক্ষর মেলায়।
যেকোনো বাক্য কাজ করবে যতক্ষণ প্রতিটি শব্দের প্রথম অক্ষর P-D-N-T-S-P-A ক্রম মেলায় — যেমন "People Do Need To See Programs Actually" বা একটি নিজস্ব বাংলা বাক্য যার শব্দগুলো একই অক্ষর-ক্রম অনুসরণ করে। গুরুত্বপূর্ণ হলো ক্রমটি (নিচ থেকে উপরে: Physical → Application), নির্দিষ্ট বাক্যটি নয়।
-
পরীক্ষা করুন: উপরের কোড সেলের
osi_layersতালিকায় একটি কাল্পনিক অষ্টম স্তর (যেমন(8, "Security", "উদাহরণ")) যোগ করে দেখুন উভয় দিকের প্রিন্ট এখনও সঠিকভাবে কাজ করে কি না।হ্যাঁ, উভয় লুপই স্বাভাবিকভাবে নতুন এন্ট্রিটি প্রিন্ট করবে, কারণ কোডটি তালিকার দৈর্ঘ্যের উপর নির্ভর করে না — এটি শুধু তালিকার প্রতিটি টাপল iterate করে। এটি দেখায় list-ভিত্তিক এই ডেটা স্ট্রাকচার কতটা সহজে সম্প্রসারণযোগ্য, যদিও বাস্তব OSI মডেলে ঠিক ৭টি স্তরই আনুষ্ঠানিকভাবে সংজ্ঞায়িত।
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- কোর্সের সম্পূর্ণ সিলেবাস দেখুন ৫৭টি পাঠ পরবর্তী পাঠ — TCP/IP মডেল ও OSI-এর সাথে তুলনা — বাস্তব ইন্টারনেট আসলে কীভাবে গঠিত তা দেখাবে।
- Cloud Computing & DevOps কোর্স সঙ্গী কোর্স ক্লাউডে VPC, লোড ব্যালেন্সার ও DNS কীভাবে ব্যবহারিকভাবে কনফিগার করা হয় তা শিখতে দেখুন।
- Cybersecurity & Ethical Hacking কোর্স সঙ্গী কোর্স নেটওয়ার্ক প্রোটোকলের দুর্বলতা কীভাবে আক্রমণ ও প্রতিরক্ষার ভিত্তি হয়ে ওঠে তা শিখতে দেখুন।
- সব Courses দেখুন ABCL TECH C, C++, Python, Java, JavaScript, DSA, DBMS, Discrete Mathematics, System Design, Cybersecurity, Cloud Computing & DevOps ও Computer Networks — সব এক জায়গায়।