Friday, September 28, 2018

প্রোগামিং ল্যাংগুয়েজের প্রজন্ম

১৯৪৫ সাল থেকে শুরু করে এ পর্যন্ত কয়েকশ প্রোগ্রামিং ল্যাংগুয়েজ বা ভাষার আবিষ্কার হয়েছে। এদের  বৈশিষ্ট্য অনুযায়ী পাঁচটি স্তরে বা প্রজন্মে ভাগ করা যায়। যথাঃ

1. First generation (1945): Machine Language

2. Second generation (1950): Assembly Language

3. Third generation (1960): High Level Language - C++(1975), C(1973), FORTRAN(1957), BASIC(1968), PASCAL(1970), COBOL(1961), LISP(1959), APL(1960), ADA(1975), JAVA(1991), ALGOL(1958), PYTHON(1991)...

4. Fourth generation (1970): Very High Level Language/Rapid Application Development(RAD) - SQL, NOMAD, RPG III, FOCUS, Intellect..

5. Fifth generation (1980): Natural Language

Thursday, September 20, 2018

হাব, সুইচ, রাউটার

ইন্টারনেট বা যেকোনো সাধারন কম্পিউটার নেটওয়ার্ক সিস্টেম সম্পূর্ণ করতে বা সঠিকভাবে কাজ করার উপযোগী করে উঠাতে ভূমিকা রয়েছে অনেক হার্ডওয়্যারের। রাউটারহাব, এবং সুইচহলো অত্যন্ত প্রয়োজনীয় নেটওয়ার্কিং ডিভাইজ। এরা প্রত্যেকেই প্রায় একই কাজের জন্য ব্যবহৃত হয়ে থাকে—কিন্তু এদের প্রত্যেকেরই আলাদা এবং বিশেষ গুরুত্ব রয়েছে। এখন প্রশ্ন হলো, এদের একে অপরের মধ্যে পার্থক্য গুলো কি? এদের বিশেষ গুরুত্ব গুলো কি? এবং ঠিক কি কারণে এরা প্রত্যেকেই নিজের অবস্থানে টিকে রয়েছে? যে ডিভাইজ গুলো ছাড়া নেটওয়ার্কিং কল্পনা করা মুশকিল, সে ডিভাইজ গুলো সম্পর্কে আমাদের অবশ্যই বিস্তারিত জানা প্রয়োজন। তো চলুন বন্ধুরা, সবকিছু ভাঙ্গিয়ে দেখে নেওয়া যাক।

১. হাব

হাব
অনেক গুলো কম্পিউটারকে একসাথে সংযুক্ত করার জন্য (লোকাল এরিয়া নেটওয়ার্ক) হাব ব্যবহার করা হয়ে থাকে। হাবের যেকোনো পোর্টে যদি কোন তথ্য প্রেরন করা হয় তবে সেই তথ্যকে হাব তার সকল পোর্টে অর্থাৎ সেখানে কানেক্ট থাকা প্রত্যেকটি কম্পিউটারে পাঠিয়ে দেয়। হাবে কানেক্ট থাকা একটি নির্দিষ্ট কম্পিউটার থেকে কোন নির্দিষ্ট কম্পিউটারে তথ্য পাঠানো সম্ভব হয় না, কেনোনা হাব তার সাথে সংযুক্ত থাকা কম্পিউটার গুলো সম্পর্কে কোন জ্ঞান রাখে না। কোন পোর্ট থেকে তথ্য পেলে তা অনেকটা কানার মতো এর বাকি সকল পোর্ট গুলোর কাছে পৌছিয়ে দেয়।
হাব একদম সাধারন ইলেকট্রিক মাল্টিপ্লাগের মতো কাজ করে—যেখানে মাল্টিপ্লাগে এক প্রান্ত থেকে বিদ্যুৎ প্লাগে প্রেরন করা হয় এবং সকল পোর্ট গুলো এই বিদ্যুৎ সরবরাহ করে। কোন প্লাগের সাথে কোন যন্ত্রপাতি লাগানো আছে তা মাল্টিপ্লাগটি কখনোই বুঝতে পারে না। মনে করুন, একটি হাবের সাথে পাঁচটি কম্পিউটার সংযুক্ত করা আছে, এখন যদি একটি কম্পিউটার থেকে ডাটা পাঠানো হয় তবে তা নির্দিষ্ট কোন কম্পিউটারে না গিয়ে একসাথে বাকি চারটি কম্পিউটার গ্রহন করবে।

হাবের প্রয়োজনীয়তা

বাড়িতে ব্যাবহারের জন্য হাবের সত্যিই তেমন কোন প্রয়োজনীয়তা নেই—কেনোনা আপনার পাঠানো যেকোনো তথ্য সকল ডিভাইজে কপি হয়ে যাবে। তাছাড়া হাব ব্যবহার করা মানে নিরাপত্তাকে সমুদ্রের ঐপাড়ে রেখে আসা, এতে সংযুক্ত থাকা যেকোনো ডিভাইজ থেকে সকল ট্র্যাফিকের উপর অনেক সহজেই নজরদারি রাখা সম্ভব। তাছাড়া হাব ব্যান্ডউইথ শেষ করার জম।
তবে এর যে কোন প্রয়োজনীয়তাই নেই, এমনটি কিন্তু নয়। মনেকরুন, আপনার অফিসের বসের জন্য কোন ডকুমেন্টের প্রিন্ট কপি প্রয়োজন, কিন্তু শুধু আপনার কপি হলেই হবে না, আপনার অফিসের প্রত্যেকজন কর্মচারীর করা প্রিন্ট কপি প্রয়োজন এবং সকল কপি প্রিন্ট করার জন্য একটিই প্রিন্টার রয়েছে। এক্ষেত্রে আপনি হাব ব্যবহার করে ব্যাপারটিকে সহজে নিয়ন্ত্রন করে নিতে পারবেন।
হাবের নিরাপত্তা নেই বল্লেই চলে, কিন্তু এটিকে আপনি ফিচার হিসেবেও ব্যবহার করতে পারেন। আপনি আপনার অফিসের সকল কর্মচারীর উপর এবং সেই নেটওয়ার্কের সকল ট্র্যাফিকের উপর নজর রাখতে পারবেন। আপনার কোন কর্মচারী যদি কাজের চেয়ে বেশি ফেসবুক বা ইউটিউবে সময় ব্যয় করে তবে তাকে ধরার জন্য হাব আপনাকে সাহায্য করতে পারে।

২. সুইচ

সুইচ
সুইচও অনেক গুলো কম্পিউটারকে একত্রে সংযুক্ত করতে বা লোকাল এরিয়া নেটওয়ার্ক তৈরি করতে ব্যবহৃত হয়ে থাকে। সর্বপ্রথম ডাটা ট্র্যান্সফার করার পরে এটি একটি “সুইচ টেবিল” তৈরি করে—যা এর সাথে সংযুক্ত থাকা প্রত্যেকটি ডিভাইজের ম্যাক অ্যাড্রেস মনে রাখে এবং মনে রাখে ঠিক কোন ডিভাইজ কোন পোর্টের সাথে সংযুক্ত রয়েছে।
হাবের অসদৃশ সুইচ প্রত্যেকটি কম্পিউটারের মধ্যে পার্থক্য করতে পারে, প্রথম ডাটা আদান প্রদান করার পরে এটি প্রত্যেকটি পোর্টের ম্যাক অ্যাড্রেস মনে রাখে, ফলে কোন কম্পিউটার থেকে কোন নির্দিষ্ট কম্পিউটারে বা নির্দিষ্ট পোর্টে ডাটা পাঠানো সম্ভব।

সুইচের প্রয়োজনীয়তা

কোন সাধারন এবং ব্যক্তিগত লোকাল এরিয়া নেটওয়ার্ক তৈরি করার জন্য হাব ব্যবহার করলেই চলে—কেনোনা এটি সুইচের চেয়ে অনেক বেশি সস্তা। কিন্তু সুইচ ব্যবহার করা অনেক বেশি নিরাপদ এবং দক্ষ, তাছাড়া এটি অনেক কম ব্যান্ডউইথ ক্ষয় করে। তাছাড়াও আপনি একটি কম্পিউটার থেকে কোন নির্দিষ্ট কম্পিউটারে ডাটা প্রেরন করতে পারবেন।
মনেকরুন আপনি “ক” কম্পিউটার থেকে “খ” কম্পিউটারে কোন ডাটা প্রেরন করতে চাইছেন। এবার সুইচ পর্যবেক্ষণ করে দেখল যে, “ক” কম্পিউটারটি ১ নং পোর্টে এবং “খ” কম্পিউটারটি ৪ নং পোর্টে সংযুক্ত রয়েছে। এই অবস্থায় সুইচ ১ নং পোর্ট থেকে সরাসরি ৪ নং পোর্টে ডাটা সেন্ড করে দেবে, বাকি পোর্ট গুলো সেই ডাটা প্রাপ্তি থেকে বিরত থাকবে, ফলে হাবের চেয়ে অনেক বেশি ব্যান্ডউইথ বাচান সম্ভব হবে।
আপনি যখন সুইচ কেনার জন্য বাজারে যাবেন তখন সাধারনত দুই প্রকারের সুইচ দেখতে পাবেন। একটি হলো ম্যানেজড সুইচ এবং আরেকটি আনম্যানেজড সুইচ। আনম্যানেজড সুইচে জাস্ট কম্পিউটার গুলোকে প্লাগ করুন এবং সরসরি কাজ শুরু করে দিন। কিন্তু ম্যানেজড সুইচে নির্দিষ্ট পোর্টের জন্য ব্যান্ডউইথ অগ্রাধিকার রাখার সুবিধা দিয়ে থাকবে। যেমন স্কাইপ কল করার জন্য বেশি  ব্যান্ডউইথ পোর্ট ব্যবহার করতে পারেন।

৩. রাউটার

রাউটার
একটি নেটওয়ার্ক থেকে আরেকটি নেটওয়ার্কে ডাটা গুলোকে প্যাকেট আকারে সেন্ড করায় হলো রাউটারের আসল কাজ। প্রত্যেকটি ডাটা প্যাকেটে সেই ডাটাটির পৌঁছানোর গন্তব্য ঠিকানা জুড়ে দেওয়া থাকে। প্রেরনকৃত ডাটা গন্তব্যে না পৌঁছানো অব্দি এক রাউটার থেকে আরেক রাউটারে ভ্রমন করে। আর এভাবেই ইন্টারনেট থেকে ডাটা আপনার লোকাল এরিয়া নেটওয়ার্কে চলে আসে। অর্থাৎ আপনি যখন গুগলে কিছু সার্চ করেন, তখন আপনার রাউটার সেই সার্চ অনুরোধটি সরাসরি গুগল সার্ভারের কাছে পাঠিয়ে দেয়। তারপরে সার্ভার থেকে প্রাপ্ত ডাটা গুলো আপনার লোকাল এরিয়া নেটওয়ার্কে থাকা নির্দিষ্ট কম্পিউটারে সরবরাহ করে দেয়।
রাউটার স্বয়ংক্রিয়ভাবে কিছু লোকাল আইপি অ্যাড্রেস তৈরি করে এর সাথে সংযুক্ত থাকা প্রত্যেকটি ডিভাইজকে একটি করে প্রদান করে। যে ডিভাইজ থেকেই ওয়েব রিকুয়েস্ট পাঠানো হোক না কেন, আপনার রাউটার সকল প্রসেস গুলোকে অনেক দক্ষতার সাথে নিয়ন্ত্রন করে এবং প্রত্যেকটি ডাটা প্যাকেট আসল গন্তব্য ঠিকানায় পৌছিয়ে দেয়।

রাউটারের প্রয়োজনীয়তা

দুটি আলাদা নেটওয়ার্কের মধ্যে প্যাকেট আদান প্রদান করায় রাউটারের আসল কাজ হলেও আজকের মডার্ন রাউটার গুলো এর চেয়ে আরো বেশি কিছু করে থাকে।
  • এতে ৪-৮ টি সুইচ পোর্ট থাকে, যা লোকাল শেয়ারিং যেমন প্রিন্টার ব্যবহার করার জন্য ব্যবহৃত হয়।
  • আপনার লোকাল এরিয়াতে নেটওয়ার্ক অ্যাড্রেস ট্র্যান্সলেসন (NAT) পদ্ধতি ব্যবহার করে প্রত্যেকটি ডিভাইজকে একটি ইউনিক আইপি প্রদান করে। এই আইপি গুলো ইন্টারনেট বা আপনার আইএসপি এর বাহিরে।
  • ডাইনামিক হোস্ট কনফিগারেশন প্রোটোকল (DHCP) ব্যবহার করে লোকাল এরিয়া নেটওয়ার্কে থাকা প্রত্যেকটি ডিভাইজকে একটি করে আইপিতে সংযুক্ত করে।
  • রাউটারে আপনার লোকাল এরিয়া নেটওয়ার্কটিকে রক্ষা করার জন্য ডেডিকেটেড ফায়ারওয়াল থাকে।
  • এতে ওয়াইড এরিয়া নেটওয়ার্ক (WAN) পোর্ট থাকে যাতে আপনার আইএসপির সাথে সংযুক্ত হয়ে আপনার লোকাল এরিয়া নেটওয়ার্কটিকে (LAN) ইন্টারনেট সংযোগ প্রদান করে।
  • তাছাড়া wireless রাউটার আপনার ডিভাইজ গুলোকে তার ছাড়ায় ওয়াইফাই এর মাধ্যমে সংযুক্ত করতে সাহায্য করে।

NIC - নেটওয়ার্ক ইন্টারফেইস কার্ড


কম্পিউটারকে নেটওয়ার্কের সাথে যুক্ত করতে হলে একটি বিশেষ বর্তনী যুক্ত করতে হয়। এই বর্তনীকে যে কার্ডের উপর সজ্জিত করা হয় তাকেই নেট ওয়ার্ক ইনটারফেস কার্ড বলে। বিভিন্ন ধরনের সুবিধা প্রাপ্তির জন্যে ব্যবহৃত উক্ত কার্ডসমূহকে Add-in Card হিসেবে অভিহিত করা হয়। মাদারবোর্ডের বিভিন্ন আকৃতির স্লটের মধ্যে কার্ডগুলোকে বসানো হয়। অতিরিক্ত সুবিধা প্রদানকারী উক্ত কার্ডসমূহ বিভিন্ন বিটের হয়ে থাকে। নেটওয়ার্ক ইন্টারফেস কার্ড পিসি এবং ডেটা ক্যাবলের মধ্যে সিগন্যাল আদান-প্রদানের কাজটি করে।

গতি/speed:
10 Mbit/s
100 Mbit/s
1 Gbit/s
10 Gbit/s
up to 160 Gbit/s

যে সব প্রতিষ্ঠান এসব তৈরী করে:
1. Intel
2. Realtek
3. Broadcom (includes former AvagoEmulex)
4. Marvell Technology Group
5. Cavium (formerly QLogic)
6. Mellanox
7. Chelsio

মাদারবোর্ডের সাথে যে যেভাবে যুক্ত করা সম্ভব:
Motherboard via one of:
1. Integrated
2. PCI Connector
3. ISA Connector
4. PCI-E
5. FireWire
6. USB
7. Thunderbolt

Network via one of:


NIC সাধারনত নিচের দুইটি পদ্ধতিতে ডেটা ট্রান্সফার করে থাকে। যথাঃ
1. NIC থেকে মেমোরীতে অথবা মেমোরী থেকে NIC-এ ডেটা ট্রান্সফারের সময় এটিকে ইনপুট/আউটপুট গ্রহণের জন্যে প্রোগ্রাম করা থাকে।
2. NIC আবার অনেক সময় Direct memory access (DMA) এর জন্যে প্রোগাম করা হয়। এ পদ্ধতিতে CPU -কে system bus এর সহযোগিতায় ডেটা আদান প্রদান করতে হয়। এটি CPU-এর কাজ কমিয়ে দেয়। এ ধরনের NIC ডিভাইসে অনেক লজিক ব্যবহার করতে হয়। এ ধরনের NIC device গুলোতে ইন্টারনেট স্পিড অনেক বেশী থাকে।

ট্রান্সমিশন মোড: শ্রেণিকক্ষে পাঠদানকে কোন ট্রান্সমিশন মোডের সাথে তুলনা করা যায়? ব্যাখ্যা কর। (অনুধাবন)

উত্তর: শ্রেণিকক্ষে পাঠদানকে হাফ ডুপ্লেক্স মোডের সাথে তুলনা করা যায়। শ্রেণিকক্ষে শিক্ষক পাঠদানের সময় ছাত্র-ছাত্রীরা নিরব থাকে। তখন ডেটা শিক্ষক হতে ছাত্র-ছাত্রীদের দিকে যায়। পরবর্তীতে ছাত্র-ছাত্রীদের উত্তর শুনার সময় শিক্ষক নিরব হয়ে শুনে তখন ডেটা ছাত্র-ছাত্রী হতে শিক্ষকের দিকে যায়। তাই এ ডেটা ট্রান্সমিশনকে হাফ ডুপ্লেক্সের সাথে তুলনা করা যায়।

WAN: WAN ও Internet সমার্থক- ব্যাখ্যা কর। (অনুধাবন)

উত্তর: WAN একটি সিস্টেম যেখানে বিভিন্ন ভৌগোলিক দূরত্বে অবস্থিত কিছু LAN বা MAN একত্রে সংযুক্ত হয়ে একটি নেটওয়ার্ক হিসেবে কাজ করে। অপরদিকে Internet ও WAN এর মতো কাজ করে। WAN এর মাধ্যমে বিশ্বের এক স্থান থেকে অন্য স্থানে ডেটা এবং সংবাদ পাঠানো যায়। ইন্টারনেটের মাধ্যমেও বিশ্বের এক স্থান থেকে অন্য স্থানে ডেটা পাঠানো যায়। এ থেকে বলা যায় যে, WAN ও Internet সমার্থক।

For English version ○_•
ANS: WAN is a process which work with LAN/MAN. This LAN/MAN are not very far away from their geo-locations. They work combinely. Wherese internet is also work as WAN. We sent or receive data or news to the remote corner and from the remote corner of the world. So, we csn say that WAN & INTERNET are synonymous.

WIMAX: WIMAX ব্যবহারের কী কী সুবিধা আছে? (অনুধাবন)

উত্তর: WIMAX ব্যবহারের সুবিধা নিচে দেওয়া হলো-
. শতাধিক ব্যবহারকারী একক বেস স্টেশন ব্যবহার করতে পারে।
. নতুন ব্যবহারকারী অধিক দ্রুত যোগাযোগ করতে পারে।
. সাধারণত ১০ শস থেকে ৫০ শস পর্যন্ত বিস্তৃত হয়ে থাকে।
. প্রত্যন্ত অঞ্চলেও সেবা পাওয়া যায়।
. নিরাপদ ইন্টারনেট সংযোগ সুবিধা প্রদান করা যায়।

নেটওয়ার্ক ডিভাইস: হাবের পরিবর্তে সুইচ ব্যবহার করলে কী সুবিধা পাওয়া যায়- ব্যাখ্যা কর। (অনুধাবন)

উত্তর: হাবের পরিবতের্থ সুইচ ব্যবহার সুবিধাজনক। নেটওয়ার্ক সুইচ হলো বহু পোর্টবিশিষ্ট কম্পিউটার নেটওয়ার্ক ডিভাইস যা তথ্যকে আদান-প্রদান করতে সাহায্য করে। বাইরে থেকে সুইচ দেখতে হাবের মতো মনে হলেও এটি ভিন্ন পদ্ধতিতে নেটওয়ার্কের ক্লায়েন্টের মধ্যে ডেটা আদান-প্রদান করে। সুইচ সিগন্যাল গ্রহণ কার পর তা সরাসরি টার্গেট কম্পিউটার বা কম্পিউটারসমূহে প্রেরণ করে। পরে ডেটা প্রেরণে সুইচের ক্ষেত্রে কম সময় লাগে। সুইচের পোর্ট হাবের চেয়ে বেশি থাকে।