Cấu trúc gói số liệu IP

Một phần của tài liệu Mạng máy tính và HTM (Trang 108 - 110)

e. Cổng giao tiế p Gateway

5.4.2. Cấu trúc gói số liệu IP

Hình 5.9. Cấu trúc gói tin IPv4

• Version (4 bit): IPv4 hoặc IPv6

• IHL (IP packet Header Length) (4 bit): đơn vị word 32 bit. – Min = 5 (khơng có thêm trường tuỳ chọn)

– Max = 15 (trường tuỳ chọn là 40 byte)

– Đối với một số tuỳ chọn, thí dụ để ghi con đường mà packet đã đi qua, 40 byte là quá nhỏ, không thể dùng được.

• Trường Type of service (8 bits): Dịch vụ và mức ưu tiên.

– Ý nghĩa của nó được người ta thay đổi chút ít trong các năm qua.

– Có thể có nhiều cách kết hợp khác nhau giữa độ tin cậy và tốc độ. Đối với tiếng nói được số hố, việc phân phát nhanh quan trọng hơn phân phát chính xác. Đối với FTP, việc truyền khơng có lỗi quan trọng hơn việc truyền nhanh.

sau:

+ Precedence (3 bit đầu tiên): quyền ưu tiên; 0 = normal, ... , 7 = network control packet.

+ Cờ D, T và R (3 bit tiếp theo): cho phép host chỉ ra là nó quan tâm (cần) đến gì nhất trong tập hợp {Delay, Throughput và Reliability}.

Trong thực tế, các router hiện nay lờ toàn bộ trường Type of service

+ 2 bit còn lại hiện nay chưa dùng đến.

• Trường Total Length (16 bits): Tổng chiều dài packet, kể cả header lẫn data, đơn vị = byte.

– Max = 65535 byte

– Hiện nay giới hạn trên là có thể chấp nhận được

– Với các mạng Gigabit trong tương lai sẽ cần đến các datagram lớn hơn. • Trường Identification (16 bit): từ định danh của datagram (IP packet)

– Dùng cho host đích xác định được mảnh (fragment) thuộc về datagram nào. – Tất cả các mảnh của một datagram có cùng một giá trị của trường

Identification.

• Trường Flags (2 bits): dùng cho quá trình Fragmentation/ Reassembly

– Sau trường Identification là một bit không dùng đến. Flags gồm 2 trường 1 bit là DF và MF.

– DF (Don't Fragment): lệnh cho các router đừng có phân mảnh datagram. • Datagram phải tránh mạng có kích thước packet nhỏ.

• Tất cả các máy được yêu cầu chấp nhận việc phân mảnh đến 576 byte hoặc nhỏ hơn.

– MF (More Fragments): Tất cả các mảnh của datagram, trừ mảnh cuối cùng phải có bit MF=1 → để biết được khi nào tất cả các mảnh của một datagram đã đến đích.

• Trường Fragment offset (13 bits): cho biết khoảng cách tương đối của gói tin IP trong gói tin bị phân mảnh.

– Tất cả các mảnh của một datagram, trừ mảnh cuối cùng phải có chiều dài là bội số của 8 bytes - đơn vị cơ sở của mảnh.

– 13 bit nên số mảnh lớn nhất của một datagram là 8192

• Trường Time to live – TTL (8 bits): con đếm thời gian sống của một packet

– Khi TTL= 0, packet bị loại bỏ và một packet cảnh báo được gửi cho bên nguồn → Ngăn chặn các datagram đi lang thang mãi (nếu bảng chọn đường có lúc bị hỏng)

– Giả thiết đơn vị là giây → max = 255s; thường được đặt = 30s

– Phải được giảm đi một tại mỗi chặng (hop) và được giảm nhiều lần khi đứng xếp hàng một thời gian dài trong mỗi router.

– Thực tế, nó chỉ đếm các chặng.

• Trường Protocol (8 bits): Chỉ loại số liệu giao thức mức trên nằm trong trường Data. – Cho biết cần trao datagram cho quá trình nào của tầng transport.

+ Nhưng cũng có thể là UDP và các quá trình khác.

– Việc đánh số các giao thức là trên phạm vi toàn cầu, trên toàn bộ Internet, được định nghĩa trong chuẩn RFC 1700.

• Trường Header checksum (16 bits):

– Tính riêng cho header, giúp phát hiện các lỗi phát sinh trong bộ nhớ của router. – Được tính lại tại mỗi chặng (hop), bởi vì sau mỗi chặng có ít nhất là một

trường bị thay đổi (trường TTL).

– Cách tính: cộng tất cả các 16-bit halfwords sử dụng số dạng bù 1; sau đó lấy bù 1 của kết quả (phép tốn XOR → tốc độ cao).

• Trường Source address, Destination address (32 bit): – Địa chỉ IP của bên gửi và nhận

– Mỗi địa chỉ bao gồm: địa chỉ mạng và địa chỉ host trong mạng • Trường Options: Tạo ra lối thoát cho các version sau:

– Bổ sung thêm các thơng tin khơng có trong version đầu tiên

– Thí nghiệm thử các ý tưởng mới và để tránh việc phải dành (allocate) các bit của header cho các thông tin hiếm khi cần đến.

– Chiều dài có thể thay đổi: 0..(15 – 5) x 32 bits

– Mỗi Option bắt đầu bằng một mã 1 byte chỉ ra tuỳ chọn – Hiện thời có 5 tuỳ chọn (option) đã được định nghĩa

+ Security (an ning): Chỉ ra mức độ bí mật của datagram + Strict source routing: Chỉ ra con đường đầy đủ để đi theo

+ Loose source routing: Chỉ ra danh sách các router không được bỏ qua + Record route: Buộc mỗi router gắn địa chỉ IP của nó vào

+ Timestamp: Buộc mỗi router gắn địa chỉ IP và timestamp của nó vào – Tuy nhiên không phải mọi router đều hỗ trợ tất cả các tuỳ chọn này. – Padding: Được chèn thêm sao cho chiều dài Header = bội của 32 bits • Trường Data (32 bits): Số liệu của giao thức tầng trên.

Một phần của tài liệu Mạng máy tính và HTM (Trang 108 - 110)

Tải bản đầy đủ (PDF)

(124 trang)