ট্রান্সমিশন কন্ট্রোল প্রোটোকল এবং ইউজার ডেটাগ্রাম প্রোটোকল—দুই ট্রান্সপোর্ট লেয়ার প্রোটোকল যা വ്യাপকভাবে ইন্টারনেট প্রোটোকলের সাথে ব্যবহার করা হয়। একটি প্রোটোকল হল প্রসিডিউর এবং নিয়মের একটি সেট যা দুটি কম্পিউটার অনুসরণ করে একে অপরকে বুঝতে এবং ডেটা এক্সচেঞ্জ করতে। যদিও TCP দুটির মধ্যে সবচেয়ে সাধারণত ব্যবহৃত প্রোটোকল, UDP কিছু পরিস্থিতিতে আরও উপযোগী।
সমগ্র ফলাফল
| TCP | UDP |
|---|---|
| ডেটা পাঠানো মতোই পৌঁছায় বলে গ্যারান্টি দেয় | ডেটা পৌঁছাবে কিনা সেটি গ্যারান্টি দেয় না |
| ডেটা স্ট্রিম এরর-চেক করে | কোনো এরর-চেকিং প্রদান করে না |
| ২০-বাইট হেডার, অপশনাল ৪০ বাইট ফাংশন ডেটার অনুমতি দেয় | ৮-বাইট হেডার, শুধু বাধ্যতামূলক ফাংশন ডেটা অনুমতি দেয় |
| UDP-এর চেয়ে ধীর | TCP-এর চেয়ে দ্রুত |
| নির্ভরযোগ্যতা প্রয়োজনীয় অ্যাপের জন্য সেরা | গতি প্রয়োজনীয় অ্যাপের জন্য সেরা |
দুই প্রোটোকলই ইন্টারনেটের ওপর প্যাকেটে ডেটা পাঠায়। TCP কানেকশন-ওরিয়েন্টেড। একটি কানেকশন তৈরি হলে, ডেটা দ্বি-দিক 이전에 হয়। UDP একটি সিম্পলার প্রোটোকল যা কানেকশনলেস।
TCP UDP-এর চেয়ে বেশি রবাস্ট। এটি এরর-করেকশন ফাংশন এবং উচ্চ নির্ভরযোগ্যতা প্রদান করে। UDP TCP-এর চেয়ে দ্রুত, основном কারণ এটি এরর-করেকশন প্রদান করে না। এছাড়া, TCP ফ্লো কন্ট্রোল হ্যান্ডেল করে, যখন UDP-তে ফ্লো কন্ট্রোলের কোনো অপশন নেই।
নির্ভরযোগ্যতার জন্য সেরা: TCP
| TCP | UDP |
|---|---|
| ডেটা ডেলিভারি গ্যারান্টি | ডেলিভারির কোনো গ্যারান্টি নেই |
| ডেটা প্যাকেট ট্র্যাক করে | প্যাকেট হারাতে পারে |
| প্যাকেট এরর চেক করে | ফ্লো কন্ট্রোল নেই |
| ফ্লো কন্ট্রোল | হেডার ৮ বাইটে লিমিটেড |
| ২০ বাইট হেডার, অধিকের অপশন |
TCP রিসিভারের কাছে ডেটা ডেলিভারি গ্যারান্টি দেয়। যদি কোনো ডেটা হারায়, TCP হারানো ডেটা রিকভার করতে এবং পুনরায় পাঠাতে স্টেপ নেয়। এটি করতে, TCP ডেটা প্যাকেট ট্র্যাক করে, এবং প্যাকেটগুলো এরর চেক করে।
UDP ডেটা ডেলিভারি গ্যারান্টি দেয় না। সাথে সাথে, UDP প্যাকেট ট্রান্সিটে হারাতে পারে বা করাপ্ট হতে পারে।
TCP এবং UDP দুটোই হেডার ব্যবহার করে মেসেজ ডেটা প্যাকেজ করার অংশ হিসেবে নেটওয়ার্ক কানেকশনের ওপর ট্রান্সফারের জন্য। কারণ TCP দুটির মধ্যে বেশি রবাস্ট, এর হেডার বড় ২০ বাইট অপশনাল অতিরিক্ত ডেটার অপশনসহ, যখন UDP হেডার ৮ বাইটে লিমিটেড।
গতির জন্য সেরা: UDP
| TCP | UDP |
|---|---|
| অনেক ফাংশন পারফর্ম করার কারণে ধীর | সীমিত ফাংশন প্রদান করার কারণে দ্রুত |
যদিও TCP নির্ভরযোগ্য, এটি UDP-এর চেয়ে ধীর, głównie কারণ এটি আরও অনেক ফাংশন চালায়। এন্ড ইউজার যারা সবচেয়ে দ্রুত গতি চান, যেন গেমার এবং ভিডিও নিয়ে কাজ करने वाले লোক, UDP থেকে সুবিধা পান।
ব্যবহারের জন্য সেরা: ব্যবহার উপর নির্ভর করে
| TCP | UDP |
|---|---|
| ওয়েব, ফাইল ট্রান্সফার, ইমেইল, এবং সিকিউর শেলের জন্য সেরা | VPN, স্ট্রিমিং ভিডিও, VoIP, লাইব্রডকাস্ট, এবং অনলাইন গেমিং-এর জন্য সেরা |
কারণ TCP নির্ভরযোগ্য, এটি সেসব পরিস্থিতিতে সেরা যেখানে উচ্চ নির্ভরযোগ্যতা প্রয়োজন কিন্তু গতি ডিমান্ড করে না, যেমন ওয়েব, ইমেইল, এবং FTP।
UDP-এর গতি এটিকে সবচেয়ে উপযুক্ত করে তোলে অনলাইন গেমিং, লাইব্রডকাস্ট, VPN টানেলিং, এবং স্ট্রিমিং ভিডিওর জন্য।
TCP হেডার ফরম্যাট
প্রতিটি TCP হেডারের ১০টি রিকোয়ার্ড ফিল্ড থাকে যогуistisch ২০ বাইট (১৬০ বিট) সাইজে। এটি অপশনালি একটি অতিরিক্ত ডেটা ফিল্ড ৪০ বাইট পর্যন্ত ইনক্লুড করতে পারে।
নোট: ৮ বিট সমান ১ বাইট।
TCP হেডার নিচের ক্রমে উপস্থিত হয়, শুরু হয় সোর্স এবং ডেস্টিনেশন কমিউনিকেশন এন্ডপয়েন্ট থেকে:
- সোর্স TCP পোর্ট নম্বর (২ বাইট বা ১৬ বিট): সোর্স TCP পোর্ট নম্বর সেন্ডিং ডিভাইসকে প্রতীকী করে।
- ডেস্টিনেশন TCP পোর্ট নম্বর (২ বাইট বা ১৬ বিট): ডেস্টিনেশন TCP পোর্ট নম্বর হল রিসিভিং ডিভাইসের কমিউনিকেশন এন্ডপয়েন্ট।
- সিকোয়েন্স নম্বর (৪ বাইট বা ৩২ বিট): মেসেজ সেন্ডাররা সিকোয়েন্স নম্বর ব্যবহার করে মেসেজের একটি গ্রুপের অর্ডারিং মার্ক করতে।
- একনলেজমেন্ট নম্বর (৪ বাইট বা ৩২ বিট): সেন্ডার এবং রিসিভার দুজনে একনলেজমেন্ট নম্বর ফিল্ড ব্যবহার করে কমিউনিকেট করে যেসব মেসেজ مؤخرে রিসিভ করা হয়েছে বা পাঠানো আশা করা হয়েছে তাদের সিকোয়েন্স নম্বর।
- TCP ডেটা অফসেট (৪ বিট): ডেটা অফসেট ফিল্ড একটি TCP হেডারের টোটাল সাইজ সংরক্ষণ করে চার বাইটের মাল্টিপ্লাইতে। অপশনাল TCP ফিল্ড ব্যবহার না করা হেডারের ডেটা অফসেট ৫ (২০ বাইট প্রতীকী করে), যখন максимаimum সাইজের অপশনাল ফিল্ড ব্যবহার করা হেডারের ডেটা অফসেট ১৫ (৬০ বাইট প্রতীকী করে)।
- রিজার্ভড ডেটা (৩ বিট): TCP হেডারের রিজার্ভড ডেটা সবসময় শূন্য মান থাকে। এই ফিল্ড টোটাল হেডার সাইজকে চার বাইটের মাল্টিপ্লাইতে আলাইন করে, যা কম্পিউটার ডেটা প্রসেসিং-এর দক্ষতার জন্য গুরুত্বপূর্ণ।
- কন্ট্রোল ফ্ল্যাগস (আপ টু ৯ বিট): TCP ছয় স্ট্যান্ডার্ড এবং তিন এক্সটেন্ডেড কন্ট্রোল ফ্ল্যাগসের একটি সেট ব্যবহার করে—প্রতিটি একটি ইনডিভিজুয়াল বিট On বা Off প্রতীকী করে—স্পেসিফিক পরিস্থিতিতে ডেটা ফ্লো ম্যানেজ করতে।
- উইন্ডো সাইজ (২ বাইট বা ১৬ বিট): TCP সেন্ডাররা একটি নম্বর ব্যবহার করে, যাকে উইন্ডো সাইজ বলা হয়, রেগুলেট করতে কত ডেটা সেটি একটি রিসিভারের কাছে পাঠাবে একটি একনলেজমেন্ট চাইতে আগে। যদি উইন্ডো সাইজ খুব ছোট হয়, নেটওয়ার্ক ডেটা ট্রান্সফার অনাবশ্যক স্লো হয়। যদি উইন্ডো সাইজ খুব বড় হয়, নেটওয়ার্ক লিংক স্যাচুরেটেড হতে পারে, বা রিসিভার ইনকামিং ডেটা দ্রুত প্রসেস করতে পারতে পারে না, স্লো পারফরম্যান্স ফলাফলে। উইন্ডোইং অ্যালগরিদম প্রোটোকলে বিল্ট-ইন সাইজ ভ্যালু ডাইনামিক্যালি ক্যালকুলেট করে এবং TCP হেডারের এই ফিল্ডটি ব্যবহার করে সেন্ডার এবং রিসিভারের মধ্যে পরিবর্তন কোঅর্ডিনেট করতে।
- TCP চেকসাম (২ বাইট বা ১৬ বিট): একটি TCP হেডারের ভেতরে চেকসাম ভ্যালু প্রোটোকল সেন্ডার দ্বারা জেনারেট করা হয় একটি ম্যাথেমেটিক্যাল টেকনিক হিসেবে রিসিভারকে হেল্প করতে করাপ্ট বা ট্যাম্পার করা মেসেজ শনাক্ত করতে।
- আর্জেন্ট পয়েন্টার (২ বাইট বা ১৬ বিট): আর্জেন্ট পয়েন্টার ফিল্ড প্রায়শই শূন্যে সেট করা থাকে এবং উপেক্ষা করা হয়, কিন্তু কন্ট্রোল ফ্ল্যাগসের একটি সাথে কনজাঙ্কশনে, এটি একটি ডেটা অফসেট হিসেবে ব্যবহার করা যেতে পারে একটি মেসেজের সাবসেটকে মার্ক করতে যেটি প্রায়োরিটি প্রসেসিং চায়।
- TCP অপশনাল ডেটা (০ থেকে ৪০ বাইট): অপশনাল TCP ডেটার ব্যবহার অন্তর্ভুক্ত করে স্পেশাল একনলেজমেন্ট এবং উইন্ডো স্কেলিং অ্যালগরিদমের সাপোর্ট।
UDP হেডার ফরম্যাট
কারণ UDP TCP-এর চেয়ে সীমিত ক্ষমতা, এর হেডার ছোট। একটি UDP হেডার ৮ বাইট ধারণ করে, চারটি রিকোয়ার্ড ফিল্ডে ভাগ করা হয়ে:
- সোর্স UDP পোর্ট নম্বর (২ বাইট): সোর্স UDP পোর্ট নম্বর সেন্ডিং ডিভাইসকে প্রতীকী করে।
- ডেস্টিনেশন UDP পোর্ট নম্বর (২ বাইট): ডেস্টিনেশন UDP পোর্ট নম্বর হল রিসিভিং ডিভাইসের কমিউনিকেশন এন্ডপয়েন্ট।
- ডেটার লেন্থ (২ বাইট): UDP-এ লেন্থ ফিল্ড প্রতিটি ডেটাগ্রামের টোটাল সাইজ প্রতীকী করে, হেডার এবং ডেটা দুটোই। এই ফিল্ডের মান ৮ বাইট (রিকোয়ার্ড হেডার সাইজ) থেকে ৬৫,০০০ বাইটের উপরে পর্যন্ত রেঞ্জে থাকে।
- UDP চেকসাম (২ বাইট): TCP-এর মতো, একটি UDP চেকসাম রিসিভারকে ইনকামিং ডেটা ক্রস-চেক করতে দেয় মেসেজের যেকোনো করাপ্ট বিটের জন্য।
চূড়ান্ত বিচার
TCP সবচেয়ে সাধারণভাবে ব্যবহৃত প্রোটোকল হওয়ার একটি কারণ আছে। এটি রবাস্ট এবং নির্ভরযোগ্য, এবং ডেটা ঠিক পাঠানো হয়েছে কিনা সেটি গ্যারান্টি দেয়। এর এরর-চেক করা স্ট্রিম তথ্য এটিকে কিছুটা স্লো করে দেয়, কিন্তু অধিকাংশ কেসে, বিলম্বটি ডিল-ব্রেকার নয়।
UDP TCP-এর চেয়ে উজ্জ্বল চমক দেয় যখন গতি অত্যন্ত গুরুত্বপূর্ণ যেমন ভিডিও স্ট্রিমিং, VPN, বা অনলাইন গেমিং-এ।