17.2 IP - Internet Protocol (IPv4)

Il protocollo IP è specificato dalle RFC 790 e 791 e rappresenta il protocollo di base dello stack TCP/IP (Internet suite).2 Tale protocollo fornisce un servizio di consegna dei pacchetti, detti IP datagram (v. sez. 17.2.5), inaffidabile (unreliable), che esegue le operazioni necessarie al trasporto dell’informazione (best-effort), senza connessione (connectionless).

Per “inaffidabile” si intende che il protocollo, sebbene gestisca a dovere la trasmissione dei pacchetti (best-effort service), non attua alcun meccanismo per garantire che un pacchetto IP arrivi correttamente a destinazione. Se qualcosa va storto, il protocollo IP si limita a scartare il pacchetto ricevuto e tenta di inviare un messaggio ICMP (v. sez. 17.4) al mittente per informarlo dell’accaduto. Qualsiasi tipo di meccanismo che garantisca il recapito dei pacchetti deve essere implementato ad un livello superiore (ad esempio a livello di trasporto). Il protocollo IP è inoltre senza connessione, ovvero non mantiene nessuna informazione relativa allo stato della comunicazione tra due interfacce: ogni pacchetto viene gestito indipendentemente dagli altri. Potrebbe succedere che due pacchetti (pacchetto A e pacchetto B) inviati in sequenza giungano a destinazione nella sequenza inversa (pacchetto B, pacchetto A) per il fatto che ognuno di essi può seguire percorsi diversi nella rete, dipendentemente dal meccanismo di routing utilizzato dai router e dal traffico presente sulle varie parti della rete. L’ordine dei pacchetti non viene ripristinato dal protocollo IP, ma anche questo è compito dei protocolli di livello superiore.


  17.2.1 Gli indirizzi
   17.2.1.1 Le classi di indirizzi
   17.2.1.2 Gli indirizzi riservati
  17.2.2 CIDR
  17.2.3 Il routing
  17.2.4 Unicast e multicast
  17.2.5 Il datagram IPv4
  17.2.6 Frammentazione
  17.2.7 Diagnosi di problemi di connettività
   17.2.7.1 ping
   17.2.7.2 traceroute