আমি ভাবলাম যে localhost
আইপি ঠিকানা দেওয়ার সিদ্ধান্তের মূলটি কী 127.0.0.1
? এর "অর্থ" কী 127
? এর "অর্থ" 0.0.1
কী?
আমি ভাবলাম যে localhost
আইপি ঠিকানা দেওয়ার সিদ্ধান্তের মূলটি কী 127.0.0.1
? এর "অর্থ" কী 127
? এর "অর্থ" 0.0.1
কী?
উত্তর:
127 একটি সাবনেট মাস্ক একটি বর্গ একটি নেটওয়ার্ক গত নেটওয়ার্কের সংখ্যা 255.0.0.0
। 127.0.0.1
সাবনেটের প্রথম নির্ধারিত ঠিকানা। 127.0.0.0
ব্যবহার করা যাবে না কারণ এটি তারের নম্বর হবে। তবে হোস্ট অংশের জন্য অন্য কোনও সংখ্যা ব্যবহার করা ভাল কাজ করা উচিত এবং ব্যবহারে ফিরে যেতে হবে 127.0.0.1
। আপনি চাইলে পিং করে নিজে চেষ্টা 127.1.1.1
করতে পারেন। তারা কেন এটি বাস্তবায়নের জন্য সর্বশেষ নেটওয়ার্ক নম্বর পর্যন্ত অপেক্ষা করেছিল? আমি এটি নথিভুক্ত মনে করি না।
প্রথম দিকের উল্লেখটি আমি 127 এর কার্যবিবরণী সম্পর্কে জানতে পারি কারণ লুপব্যাক 1986 সালের নভেম্বর হ'ল আরএনএফসি 990 রেনল্ডস এবং পোস্টেল দ্বারা রচিত :
ঠিকানা শূন্যকে "এই নেটওয়ার্ক" হিসাবে "এটি" অর্থ হিসাবে ব্যাখ্যা করা উচিত।
উদাহরণস্বরূপ, 0.0.0.37 ঠিকানাটি এই নেটওয়ার্কটিতে হোস্ট 37 হিসাবে অর্থ হিসাবে ব্যাখ্যা করা যেতে পারে।
...
ক্লাস এ নেটওয়ার্ক নম্বর 127 এ "লুপব্যাক" ফাংশন বরাদ্দ করা হয়েছে, এটি একটি নেটওয়ার্ক 127 ঠিকানায় উচ্চ স্তরের প্রোটোকল দ্বারা প্রেরিত একটি ডেটাগ্রাম হোস্টের অভ্যন্তরে ফিরে আসা উচিত। কোনও নেটওয়ার্ক 127 ঠিকানায় কোনও ডেটাগ্রাম "প্রেরিত" কখনই কোনও নেটওয়ার্কে প্রদর্শিত হবে না।
এমনকি 1981 সালের সেপ্টেম্বরের শুরুতে আরএফসি 790 , 0 এবং 127 ইতিমধ্যে সংরক্ষিত ছিল:
000.rrr.rrrrrrrr সংরক্ষিত [জেবিপি] ... 127.rrr.rrrrrrrr সংরক্ষিত [জেবিপি]
1981 সালের মধ্যে 0 এবং 127 একমাত্র সংরক্ষিত ক্লাস এ নেটওয়ার্ক ছিল 0 0 নির্দিষ্ট হোস্টের দিকে ইশারা করার জন্য ব্যবহৃত হয়েছিল, সুতরাং লুপব্যাকের জন্য 127 রেখে গেছে।
আমি জানি এটি প্রশ্নের উত্তর দেয় না, তবে এটি আমি খনন করতে পেরেছি। লুপব্যাকের জন্য ১.০.০.০ বেছে নেওয়া আরও বোধগম্য হতে পারে তবে এটি ইতিমধ্যে বিবিএন প্যাকেট রেডিও নেটওয়ার্ককে দেওয়া হয়েছিল।
ইন্টারনেটের ডিজাইনাররা সত্যিই জানতেন যে হার্ডওয়্যারটি কীভাবে কাজ করে এবং তারা নিম্ন স্তরের প্রয়োগকে মাথায় রেখে ডিজাইন করে।
0, 127 এবং 255 এর মানগুলি 8 বিট অ্যাসেম্বলি এবং মেশিন ল্যাঙ্গুয়েজ প্রোগ্রামিংয়ে বিশেষ কারণ এখানে "ট্রিকস" রয়েছে যা আপনি অন্যান্য মানগুলির তুলনায় দ্রুত সম্পাদনকারী ছোট নির্দেশাবলী ব্যবহার করে এই কোডগুলির জন্য বিভিন্ন কোডে শাখা করতে পারেন। 127 সর্বাধিক স্বাক্ষরিত 8 বিট পূর্ণসংখ্যার, সুতরাং এটি 1 দ্বারা বাড়ানো দ্বারা একটি স্বাক্ষরিত ওভারফ্লো হবে। একইভাবে, 255 বর্ধিতকরণ স্বাক্ষরযুক্ত ওভারফ্লোতে কারণ ঘটবে। নিবন্ধের মধ্যে কেবল 0 মান লোড করা সাধারণত চিপটিতে একটি শূন্য পতাকা সেট করে। নেটওয়ার্কিং প্রোগ্রামটি সিউডোকোডে দেখে মনে হচ্ছে:
if (value == 0) doLocal();
if (value == 127) doLoopback();
if (value == 255) doNetwork();
যদিও এটি চিপের উপর নির্ভর করে, সেই দিনগুলিতে বেশিরভাগ চিপগুলি যথাক্রমে 2 টি শব্দ, 3 শব্দ এবং 3 শব্দ (মোট 8 শব্দ) দিয়ে এই পরীক্ষাগুলি এনকোড করতে পারে এবং আরও সেই বিশেষ পরীক্ষাগুলি প্রতিটি 1 ঘড়ির চক্রের মধ্যে কার্যকর হওয়ার সম্ভাবনা ছিল। অন্য যে কোনও মান ব্যবহারের জন্য সম্ভবত প্রতিটি 4 টি শব্দ (মোট 12 শব্দ), কোডের আকারে 50% বৃদ্ধি এবং সম্ভবত সম্পাদনের সময় 50% বৃদ্ধি প্রয়োজন 50
লোকালহোস্ট বা লুপব্যাক আইপি ঠিকানার অর্থ কী তা আপনি যদি ভাবেন তবে আপনি বুঝতে পারবেন যে আপনি কখনই সেই ঠিকানাটি বা হোস্টের বাইরে যে ঠিকানাটির মালিকানাধীন নেটওয়ার্কটি দেখতে চান না। (কোনও হোস্টের অভ্যন্তরে, এটি দেখতে খুব অন্ধকার। মার্ক টোয়েনের কাছে ক্ষমাপ্রার্থী))
সুতরাং, এই লোকালহোস্ট ঠিকানাটি উপস্থাপন করতে কাউকে একটি আইপি নেটওয়ার্ক বাছাই করতে হয়েছিল। আমি প্রথমে কে এটি পছন্দ করেছিলাম তা মনে নেই, তবে এটি আইয়েটিএফ অনুরোধের জন্য নির্দিষ্ট করা হয়েছে যা পর্যায়ক্রমে "হোস্ট আবশ্যকতা" হিসাবে জারি করা হয় Comments
এটি এতদিন আগে করা হয়েছিল, পুরো ক্লাস এ ঠিকানাটি "নষ্ট" করার ধারণাটি সেই সময় কারও মনে প্রবেশ করেনি।
লোকালহোস্টের ইউটিলিটি হ'ল আপনি হার্ড কোডিং আইপি ঠিকানা ব্যবহার করে নিজের সাথে কথা বলতে পারেন। এটি ডোমেন নাম সিস্টেম থাকার অনেক আগে ব্যবহৃত হয়েছিল। আপনি আসলে 127.xxx বৈধ ঠিকানাগুলির মধ্যে কোনওটি ব্যবহার করতে পারেন, তবে কেউ কখনও করেনি। আপনি সত্যিকারের নেটওয়ার্ক হিসাবে 127 লুকিয়ে রাখতে এবং ব্যবহার করতে পারবেন না কারণ "রাউটারের প্রয়োজনীয়তাগুলি" আরএফসি যে কোনও ইন্টারনেটে সেই নেটওয়ার্কটি রাউটিং করতে অস্বীকার করে।
প্রথমে পুরো 127.xxx রেঞ্জটি আপনার লোকালহোস্টের দিকে নির্দেশ করে।
বাইনারিতে 127 হ'ল "01111111"। "11111111" = 255 এবং 0 টি সংরক্ষিত আছে, তাই পছন্দটি স্পষ্ট :)
কারণ যখন এই মানগুলি তৈরি করা হয়েছিল, কম্পিউটারগুলি ধীর ছিল এবং সাধারণত 8 বিট রেজিস্টারে সীমাবদ্ধ ছিল। সংখ্যার সাথে সংখ্যার তুলনা করা খুব ধীর ছিল, বিশেষত যদি সেই নম্বরগুলি পিছন থেকে আনতে হয় তবে সত্যই ধীর স্মৃতি। নিবন্ধগুলি, এটি "সিপিইউ অন বোর্ড" স্টোরেজটি খুব দ্রুত ছিল।
তদুপরি সেই পুরানো কম্পিউটারগুলিতে "শূন্যের সমান", "শূন্যের চেয়ে আলাদা", "নেতিবাচক / ধনাত্মক পূর্ণসংখ্যা" সনাক্ত করার জন্য বিশেষ, দ্রুত নির্দেশনা ছিল (যেখানে চিহ্নটি ছিল ... অনুমান করুন, বামদিকের কিছুটা, এখন 127 এর সাথে সংযোগ দেখুন , যে বামনতম = চিহ্ন ছাড়া সমস্ত বাইনারি "1" এর সাথে সংখ্যাটি?
সুতরাং এগুলি বিশেষ সংখ্যা ছিল, কারণ তারা প্রোগ্রামিং ট্রিকিকে ঘন ঘন সম্পন্ন অপারেশনগুলিতে প্রচুর সিপিইউ চক্র বাঁচানোর অনুমতি দেয়।
আপনি কখনই "IF CallerIP =" 0 "তবে" IF নট জিরো (কলারআইপি) "নির্দেশিকা দেখতে পাবেন না।
দীর্ঘ বিবরণের জন্য আপনি "বিইকিউ, বিএনই" (6502 সিপিইউ) এর মতো প্রাচীন সমাবেশ নির্দেশাবলী পরীক্ষা করতে পারেন। এছাড়াও এই পৃষ্ঠার খুঁজে বার করো ।
শেষে:
0, 255 এবং 127 সমস্তই একটি, দ্রুত, নির্দেশ দিয়ে পরীক্ষা করা যেতে পারে। সি এর মতো আরও উচ্চ স্তরের ভাষায় "শর্টকাট" তুলনা ফাংশন রয়েছে যা সংকলক অভ্যন্তরীণভাবে একটি নির্দেশকে অনুকূলিত করতে পারে।
বছর 70 এবং 80 প্রোগ্রামাররা সত্যিই সুপার-দুষ্প্রাপ্য সংস্থান সহ দুর্দান্ত আর্কিটেকচার তৈরি করেছিল, আইপি সংখ্যার মতো মানদণ্ডগুলির পিছনে অনেক চিন্তাভাবনা এবং প্রতিভা রয়েছে।