3
เหตุใด IPv4 จึงอยู่ 32 บิต
ดวงจันทร์หลายที่ผ่านมาเมื่อฉันเป็นเพียงกระจ้อยร่อย เด็กเริ่มอาชีพของฉันฉันมีการสัมภาษณ์งานสำหรับนักพัฒนาที่มีบทบาทในระดับต่ำ ในเวลานั้นเพิ่งได้เรียนรู้วิธีการใช้ CIDR ฉันมีความกระตือรือร้นที่จะอวดความรู้ของฉัน น่าเศร้ากลยุทธ์ที่ไม่ได้ผลดีเกินไปสำหรับฉัน ฉันจำได้ว่าตั้งคำถามทั้งหมดไว้ที่พื้นอย่างสมบูรณ์ (และจากนั้นก็ทำให้ประหลาดใจ คำถามคือ: เหตุใด IPv4 จึงอยู่ 32 บิต ฉันพร้อมยอมรับว่าผมไม่ได้รู้คำตอบ แต่ผมไม่ทราบว่าการออกแบบโปรโตคอลเดิมแบ่งพื้นที่ที่อยู่ลงในเครือข่ายจำนวน 8 บิตและโฮสต์ 24 บิตระบุดังนั้นฉันพยายามที่จะหาเหตุผลเข้าข้างตนเองมันในบริเวณที่ ผู้ออกแบบโพรโทคอลจินตนาการอินเทอร์เน็ตของสองสามเครือข่าย (หลังจากทั้งหมดเดิมทีมันตั้งใจจะเชื่อมโยงกันสองสามอย่าง ) แต่ละโฮสต์ประกอบด้วยโฮสต์จำนวนมากและเพื่อความเรียบง่ายของการเขียนโปรแกรม ฉันจำได้ว่าผู้สัมภาษณ์ไม่พอใจคำตอบของฉันและแนะนำให้ฉันรู้ว่าเหตุผลที่แท้จริงคือรับประกันได้ว่าจะเข้ากับตัวอักษรlong intC ได้ดังนั้นจึงช่วยลดความยุ่งยากในการติดตั้ง ตอนเป็นเด็กและเป็นสีเขียวฉันยอมรับว่าเป็นคำตอบที่สมเหตุสมผลและ (ก่อนวันนี้) ไม่ได้คิดอะไรอีก ด้วยเหตุผลบางอย่างที่การสนทนาเพิ่งกลับมาหาฉันและตอนนี้เมื่อฉันใคร่ครวญมันก็ดูเหมือนจะไม่น่าเชื่อถือทั้งหมด: ภายใต้รูปแบบการกำหนดแอดเดรสดั้งเดิมซึ่งประกอบด้วยเครือข่ายขนาดคงที่และฟิลด์โฮสต์จึงไม่น่าเป็นไปได้ที่นักพัฒนาจะต้องการกำหนดการต่อข้อมูลสองฟิลด์ให้กับตัวแปรเดียว จริง ๆ แล้วในทางปฏิบัติ); และ ในช่วงเวลาที่ทำงานบน TCP / IP เริ่มต้น C ไม่ได้เป็นมาตรฐานหรือในความเป็นจริง "lingua franca" ของการพัฒนาซอฟต์แวร์ระดับต่ำที่เป็นมาในปัจจุบัน ข้อเสนอแนะของผู้สัมภาษณ์จริงหรือไม่? ถ้าไม่ได้สิ่งที่เป็นเหตุผลที่แท้จริงที่ออกแบบโปรโตคอลเลือก 32 บิตอยู่?