IPv4 - โครงสร้างแพ็คเก็ต
อินเทอร์เน็ตโพรโทคอลเป็นโปรโตคอลเลเยอร์ 3 (OSI) รับส่วนข้อมูลจากเลเยอร์ 4 (การขนส่ง) และแบ่งออกเป็นแพ็กเก็ต แพ็กเก็ต IP ห่อหุ้มหน่วยข้อมูลที่ได้รับจากเลเยอร์ด้านบนและเพิ่มข้อมูลส่วนหัวของตัวเอง
ข้อมูลที่ห่อหุ้มเรียกว่า IP Payload ส่วนหัว IP มีข้อมูลที่จำเป็นทั้งหมดเพื่อส่งแพ็กเก็ตที่ปลายอีกด้านหนึ่ง
ส่วนหัว IP ประกอบด้วยข้อมูลที่เกี่ยวข้องมากมายรวมถึงหมายเลขเวอร์ชันซึ่งในบริบทนี้คือ 4 รายละเอียดอื่น ๆ มีดังนี้ -
Version- เวอร์ชันที่ ของ Internet Protocol ที่ใช้ (เช่น IPv4)
IHL- ความยาวส่วนหัวอินเทอร์เน็ต ความยาวของส่วนหัว IP ทั้งหมด
DSCP- จุดรหัสบริการที่แตกต่าง นี่คือประเภทของบริการ
ECN- การแจ้งเตือนความแออัดอย่างชัดเจน มีข้อมูลเกี่ยวกับความแออัดที่เห็นในเส้นทาง
Total Length - ความยาวของ IP Packet ทั้งหมด (รวมถึงส่วนหัว IP และน้ำหนักบรรทุก IP)
Identification- หากแพ็กเก็ต IP แยกส่วนระหว่างการส่งข้อมูลชิ้นส่วนทั้งหมดจะมีหมายเลขประจำตัวเดียวกัน เพื่อระบุแพ็กเก็ต IP ดั้งเดิมที่เป็นของ
Flags- ตามที่ทรัพยากรเครือข่ายต้องการหาก IP Packet มีขนาดใหญ่เกินกว่าจะจัดการได้ 'แฟล็ก' เหล่านี้จะบอกว่าสามารถแยกส่วนได้หรือไม่ ในแฟล็ก 3 บิตนี้ MSB จะถูกตั้งค่าเป็น '0' เสมอ
Fragment Offset - ค่าชดเชยนี้บอกตำแหน่งที่แน่นอนของชิ้นส่วนใน IP Packet ดั้งเดิม
Time to Live- เพื่อหลีกเลี่ยงการวนซ้ำในเครือข่ายทุก ๆ แพ็กเก็ตจะถูกส่งพร้อมกับชุดค่า TTL ซึ่งจะบอกเครือข่ายว่าเราเตอร์ (hops) แพ็กเก็ตนี้สามารถข้ามได้กี่ตัว ในการกระโดดแต่ละครั้งค่าของมันจะถูกลดลงหนึ่งครั้งและเมื่อค่าถึงศูนย์แพ็กเก็ตจะถูกทิ้ง
Protocol- บอกเลเยอร์เครือข่ายที่โฮสต์ปลายทางซึ่งโปรโตคอลนี้เป็นของแพ็กเก็ตเช่นโปรโตคอลระดับถัดไป ตัวอย่างเช่นหมายเลขโปรโตคอลของ ICMP คือ 1 TCP คือ 6 และ UDP คือ 17
Header Checksum - ฟิลด์นี้ใช้เพื่อเก็บค่า checksum ของส่วนหัวทั้งหมดซึ่งจะใช้เพื่อตรวจสอบว่าได้รับแพ็กเก็ตโดยไม่มีข้อผิดพลาดหรือไม่
Source Address - ที่อยู่ 32 บิตของผู้ส่ง (หรือแหล่งที่มา) ของแพ็กเก็ต
Destination Address - ที่อยู่ 32 บิตของผู้รับ (หรือปลายทาง) ของแพ็คเก็ต
Options - นี่เป็นช่องทางเลือกซึ่งจะใช้หากค่าของ IHL มากกว่า 5 ตัวเลือกเหล่านี้อาจมีค่าสำหรับตัวเลือกต่างๆเช่นความปลอดภัยเส้นทางบันทึกการประทับเวลา ฯลฯ