3./ Giao thức liên mạng IP 3.1Vai trò chức năng của IP
3.2 Khuôn dạng dữ liệu IP (the IP datagram Header)
IP là giao thức kiểu “không liên kết” (connection less) có nghĩa là không cần có giai đoạn thiết lập liên kết trớc khi truyền dữ liệu. Gói dữ liệu (packet) phụ thuộc vào thông báo gởi các Router hoặc các thiết bị khác. IP không cần thiết khởi tạo kết nối vì phần đầu của mỗi gói dữ liệu chứa địa chỉ đích cuối cùng. Nếu có nhu cầu kết nối thì các lớp trên phải cung cấp cho nó. Trong kiến trúc OSI lỗi có thể đ- ợc kiểm tra và sửa sai tại các lớp khác nhau nhng trong IP lỗi điều khiển đợc cung cấp ở các lớp trên. IP cung cấp các gói đến địa chỉ thích hợp nhng không kiểm tra lỗi đờng truyền.
HOST.A HOST.B
Upper Layers Upper Layer
TCP TCP IP IP DLa DLb PHYa PHYb IP IP X25.2 DLb DLa X25.2 X25.1 PHYb PHYa X25.1
LAN 1 WAN LAN 1
Vai trò cơ bản của IP là cung cấp thuật toán cho việc truyền dẫn trên mạng. IP cung cấp cho dịch vụ phân phối phi kết nối cho các thủ tục ở lớp trên. Điều này có nghĩa rằng IP không thiết lập lớp phiên (liên kết thực) giữa trạm phát và trạm nhận theo chu kỳ đa dữ liệu tới trạm nhận. IP không thông tin đến ngời gửi hoặc nhận trạng thái của gói. TCP sẽ tính thời gian truyền nếu khoảng thời gian này vợt quá thời gian cho phép thì nó truyền lại khung đó.
IP đa ramột dạng gói thích hợp tới trạm đích và không đa ra một tình trạng ngoại lệ nào. Vì IP là thủ tục phi kết nối do đó IP có thể nhận và cung cấp dữ liệu không theo một trật tự nhất định hoặc nó có thể sao chép dữ liệu. Các lớp trên của IP đợc cung cấp thủ tục tái tạo lỗi. IP là một phần của hệ thống phân phối mạng nó nhận dạng sữ liệu và các dạng dữ liệu của nó để truyền tới lớp liên kết sữ liệu. IP cũng tái tạo dữ liệu từ lớp liên kết dữ liệu , tách bỏ phần IP Header sau đó gởi chúng lên các lớp cao hơn.
IP sẽ thêm thông tin điều khiển vào dữ liệu nhận đợc ở các lớp trên (lớp truyền tải). Mỗi một lần hoàn thành nó thông tin tới lớp liên kết dữ liệu là nó đã
có thông báo gởi tới mạng.
Đơn vị thông tin mà IP truyền là các gói dữ liệu.
Đơn vị dữ liệu đợc dùng trong IP đợc gọi là packet có khuôn dạng nh (hình7 )sau:
Hình 7: Khuôn dạng của IP datagram
ý
nghĩa của các tham số nh sau:
+ VER có độ dài 4 bit: thể hiện nội dung version hiện hành của IP đợc sử dụng + IHL có độ dài 4 bit: chỉ độ dài phần đầu của gói dữ liệu, tính theo đơn vị từ (word=32 bit) độ dài tối thiểu là 5 từ (20 byte). Trờng này là cần thiết để header có
bit 0 3 4 7 8 15 16 31 VER IHT Type of Service Total Length Identification flags Fragment offset Time to live Protocol Header Checksum
Source Address Destination Address
Options – Padding Data (max : 65.535 byte ) Header
+ Type of service (kiểu dịch vụ) có độ dài 8 bit: miêu tả các tham số về dịch vụ có dạng cụ thể nh sau:
Trong đó:
Precedence (3 bit) chỉ thị về quyền u tiên ôửi gói dữ liệu, trờng naỳ có ghi vào từ 0 (nomal precedence) tới 7 (điều khiển mạng) mà cho phép các trmj truyền áp dụng chỉ định lớp IP u tiên gởi gói dữ liệu. Nó kết hợp với các bit trễ (D) lu lợng (T) , độ tin cậy(R) các bit này chỉ định hớng tuyến truyền nó tơng tự kiểu dịch vụ (TOS). 111 Network control (cao nhất ) 001 Flash
110 Internet word control 010 Immediate 101 CRITIC/ECP 001 Priority
100 Flash override 000 Routing (thấp nhất) +/ D (Delay) 1 bit chỉ độ trễ yêu cầu
D=0 độ trễ bình thờng D=1 Độ trễ thấp
+/ T (thoughput) 1 bit chỉ độ thông lợng yêu cầu T=0: thông lợng yêu cầu
T=1: thông lợng cao
+/ R (reliability) 1 bit : chỉ độ tin cậy yêu cầu R=0: độ tin cậy bình thờng
R=1: độ tin cậy cao
- Total length (16 bit): chỉ độ dì toàn bộ gói dữ liệu (packet) kể cả phần header tính theo đơn vị bytes. trờng này bao gồm 16 bits do vậy kích thớc của IP tối đa có thể là 65535 bytes.
- -Identification (16 bit): cùng với các tham số khác nh (sourse address và destination address) tham số này dung để định danh duy nhất cho một (packet) trong khoảng thời gian nó vẫn còn trên mạng.
- Flags (3 bit) liên quan đến sự phân đoạn các gói dữ liệu , nó đợc sử dụng để chỉ đinh , liệu có phải thêm dữ liệu hay chia gói dữ liệu truyền và nhận không.
- Fragment offset (13 bit) thời gian truyền một gói từ một mạng này tới một mạng khác có thể quá lớn. Ví dụ truyền một khung từ mạng Tokenring (đội dại tối đa đờng truyền là 4472 byte) tới Ethernet (độ dài đờng truyền tối đa 1518 byte).Bộ lập tuyến TCP/IP phải chia các khung thành các khung nhỏ để phù
Precedence D T R Reserved 0 1 2 3 4 5 6 7
hợp với việc truyền thông tin qua các phơng tiện khác kiểu. Do vậy Frament offset chỉ vị trí của đoạn ở trong gói dữ liệu , tính theo đơn vị 64 bits có ý nghĩa là mỗi đoạn (trừ đoạn cuối cùng ) phải chứa một vùng dữ liệu có độ dài là bội số của 64 bits.
- Time to live (8 bit): Qui định thời gian sống của gói dữ liệu tránh cho gói dữ liệu bị quẩn trên liên mạng gây ách tắc đờng truyền.Thời gian này đợc cho bởi trạm gửi và đợc giảm đi (thờng qui ớc là 1 đơn vị ) khi gói đó đi qua mỗi router của liên mạng.
- Protocol (8 bits): chỉ giao thức của tầng trên kế tiếp sẽ nhận vùng dữ liệu ở trạm đích (hiện tại thờng là TCP hoặc UDP đợc cài đặt trên IP).
- Header Checksum (16 bits) : Mã kiểm soát lỗi 16 bits theo phơng pháp CRC chỉ cho vùng header. Đây là bộ kiểm tra tổng (CRC) 16 bit nó bảo đảm tính toàn vẹn của header. Số CRC đợc thiết lập từ dữ liệu trong trờng hợp dữ liệu IP và đợc trạm phát đặt vào trờng này. Khi trạm nhận đợc dữ liệu nó sẽ kiểm tra CRC. Nếu hai số CRC không tơng thích có lỗi trong header và khung sẽ loại bỏ. Vì gói dữ liệu nhận đợc tại bộ lập tuyến sẽ tính toán lại tổng. Điều này rất quan trọng vì trờng TTL bị thay đổi khi gói dữ liệu đi qua bộ lập tuyến.
- Source Address (32 bits) Địa chỉ của trạm nguồn
- Destination Address (32 bits) Địa chỉ của trạm đích
- Options (độ dài thay đổi) Khai thác các options do ngời gửi yêu cầu
- Paddings (độ dài thay đổi) Vùng đệm đảm bảo cho phần header luôn là bội số của 32 bits
- Data ( độ dài thay đổi) là vùng có thể chứa thông tin dữ liệu có độ dài là bội số của 8 bits và có tối đa là 65535 bytes.