Trong hoạt động Internet phiên bản 4, Internet Control Message Protocol (ICMP), là một thủ tục của các thông điệp điều khiển, hỗ trợ cho hoạt động mạng. Các thông điệp ICMP, truyền tải bằng những gói tin, đƣợc sử dụng trong IPv4 với mục đích báo lỗi và điều khiển truyền tải IP, cũng nhƣ thực hiện những chức năng chẩn đoán mạng. Thông điệp ICMP phân loại thành hai dạng: thông điệp lỗi, hoặc thông điệp “hỏi - đáp”. Khi có lỗi xảy ra trong quá trình truyền tải gói tin IP, router đang xử lý hoặc node nhận gói tin sẽ thông báo vấn đề cho node gửi để node gửi có thể truyền lại gói tin hoặc tiếp tục thực hiện những chu trình xử lý lỗi khác. Những chƣơng trình dò tìm nhƣ ping, traceroute sử dụng những thông điệp “hỏi - đáp” của ICMP để thực hiện chẩn đoán mạng. Thông điệp ICMP cũng phục vụ cho quá trình redirect, là quá trình router thông báo cho host về một đích tiếp theo (next hop) tốt hơn để chuyển lƣu lƣợng tới một đích nhất định.
Một số chức năng của ICMP:
- Thông báo lỗi mạng. - Thông báo tắc nghẽn mạng.
- Hỗ trợ xử lý sự cố, cho các chƣơng trình chẩn đoán mạng. - Thông báo thời gian hết thời gian sống của gói tin.
- Thực hiện redirect.
Trong hoạt động Internet phiên bản 6, ICMPv6 đƣợc tổ hợp với IPv6. Mọi node hỗ trợ IPv6 phải thực thi hoàn toàn ICMPv6. ICMPv6 là phiên bản đƣợc biến đổi, nâng cấp của ICMP trong IPv4.
Phiên bản 4, ICMP chỉ bao gồm các thông điệp điều khiển, hỗ trợ hoạt động mạng. Còn các quy trình hoạt động cần thiết khác đƣợc đảm nhiệm bằng những thủ tục riêng. Ví dụ: quá trình phân giải địa chỉ đƣợc đảm nhiệm bằng thủ tục ARP. Nếu IPv4 host tham gia vào quá trình định tuyến multicast38, việc quản lý quan hệ thành viên nhóm multicast đƣợc đảm nhiệm bằng thủ tục IGMP39, sử dụng tập hợp thông điệp riêng.
Phiên bản địa chỉ IPv6 thực hiện quy chuẩn hoá các thông điệp phục vụ cho những quy trình hoạt động trong mạng nội bộ. Các quy trình hoạt động, giao tiếp giữa các node IPv6 trong một mạng nội bộ, bao gồm quá trình phân giải từ địa chỉ lớp hai thành địa chỉ lớp 3 và nhiều quy trình khác đƣợc đảm nhiệm bằng thủ tục mới – ND (Neighbor Discovery). Toàn bộ những thông điệp sử dụng trong các quá trình này là thông điệp ICMPv6. Nếu node IPv6 tham gia vào quá trình định tuyến multicast, thì việc quản lý quan hệ thành viên nhóm multicast đƣợc đảm nhiệm bằng thủ tục MLD (Multicast Listener Discovery). Thủ tục này cũng sử dụng các thông điệp ICMPv6.
38
Multicast: Công nghệ cho phép gửi một gói tin IP đồng thời tới một nhóm xác định các thiết bị mạng. Các thiết bị mạng này có thể thuộc nhiều tổ chức và định vị ở các vị trí địa lý khác nhau.
39 IGMP: Internet Group Management Protocol - Thủ tục sử dụng trong công nghệ multicast IPv4 để thiết lập quan hệ thành viên nhóm multicast trong một mạng. Thủ tục này cho phép một host thông báo với router trên mạng của nó rằng nó muốn nhận lƣu lƣợng của một địa chỉ multicast nhất định.
Do vậy, thủ tục ICMPv6 và những thông điệp ICMPv6 đóng vai trò vô cùng quan trọng trong hoạt động của thế hệ địa chỉ IPv6. Các quy trình giao tiếp cốt yếu giữa host với host, giữa host với router IPv6 trên một đƣờng kết nối, vốn là nền tảng cho hoạt động của IPv6 node, đều dựa trên việc trao đổi các thông điệp ICMPv6.
So với IPCMv4, ICMPv6 đƣợc đơn giản hoá bằng cách bỏ bớt đi những dạng thông điệp không hoặc hiếm khi sử dụng, nhƣng lại đảm nhiệm nhiều chức năng hơn ICMPv4. Thông điệp ICMPv6 ngoài thực hiện chức năng báo lỗi, chẩn đoán, điều khiển hoạt động mạng, còn phục vụ cho nhiều quy trình không tồn tại trong IPv4 hoặc đƣợc cung cấp bởi các thủ tục riêng trong IPv4, ví dụ thực thi quá trình phân giải địa chỉ.
ICMPv6 đƣợc mô tả trong RFC246340. Do thông điệp ICMPv6 đƣợc sử dụng trong các quy trình hoạt động của hai thủ tục cốt yếu khác của IPv6, nên ICMPv6 đƣợc coi là cung cấp cơ cấu hoạt động cho hai thủ tục này. Đó là :
Multicast Listener Discovery (MLD) - Thủ tục quản lý quan hệ thành viên multicast, phục vụ cho định tuyến multicast
Neighbor Discovery (ND) - Đảm nhiệm thực thi giao tiếp giữa các node trong một đƣờng kết nối.