2. GENERAL ISSUES (Problemi generali)
Questa sezione discute diversi argomenti pertinenti a tutti i protocolli di applicazione e supporto.
2.1 Nomi e numeri di host (Host Names and Numbers)
Il sistema Internet ha un sistema di nomi di host gerarchico, il Domain Name System (DNS). Ogni host Internet ha uno o più indirizzi IP e può avere uno o più nomi.
Un nome host consiste in una sequenza di «etichette» separate da punti. Ad esempio: venera.isi.edu. L'etichetta più a destra è chiamata «dominio di primo livello» (Top-Level Domain, TLD).
Requisiti (Requirements)
- Un nome host NON DEVE essere composto da tutte etichette numeriche (MUST NOT).
- Il software host DEVE gestire nomi host di almeno 255 caratteri di lunghezza (MUST).
- Il software host NON DEVE fare ipotesi sul formato o sul contenuto dei nomi host, oltre a quelle della specifica DNS (MUST NOT).
2.2 Utilizzo del Domain Name Service (Using Domain Name Service)
Il software applicativo DEVE essere in grado di gestire un dato nome host che si risolve in più indirizzi IP (MUST). Questa situazione si verifica in diverse circostanze:
- Condivisione del carico (Load Sharing): Più host possono fornire lo stesso servizio con lo stesso nome per la distribuzione del carico.
- Multihoming: Un singolo host può avere più interfacce di rete con indirizzi IP diversi.
Risoluzione dei nomi (Name Resolution)
Quando un'applicazione deve risolvere un nome host in un indirizzo IP, tipicamente utilizza il Domain Name System (DNS). L'applicazione DOVREBBE (SHOULD):
- Provare più indirizzi se il primo tentativo di connessione fallisce
- Ricordare quale indirizzo ha avuto successo per connessioni future
- Implementare timeout appropriati
Caching (Memorizzazione nella cache)
Le applicazioni POSSONO memorizzare nella cache gli indirizzi risolti (MAY), ma DEVONO rispettare i valori di Time-To-Live (TTL) restituiti dal DNS (MUST).
2.3 Applicazioni su host multihomed (Applications on Multihomed Hosts)
Quando un'applicazione su un host multihomed crea una connessione, l'indirizzo IP sorgente DEVE essere uno degli indirizzi IP dell'host (MUST).
Per host multihomed con più indirizzi IP:
- L'applicazione PUÒ consentire all'utente di selezionare quale indirizzo IP locale utilizzare (MAY)
- Se non viene selezionato un indirizzo specifico, il livello IP sceglie l'indirizzo sorgente in base al routing
2.4 Tipo di servizio (Type-of-Service)
I protocolli applicativi DOVREBBERO fornire un meccanismo per le applicazioni per specificare il tipo di servizio IP (Type-of-Service, TOS) per connessioni TCP o trasmissioni UDP (SHOULD).
Il campo TOS consente a un'applicazione di richiedere caratteristiche di elaborazione specifiche:
- Basso ritardo (Low delay) (minimizzare il ritardo)
- Alta produttività (High throughput) (massimizzare la produttività)
- Alta affidabilità (High reliability) (massimizzare l'affidabilità)
- Basso costo (Low cost) (minimizzare il costo monetario)
2.5 RIEPILOGO DEI REQUISITI GENERALI DELLE APPLICAZIONI (GENERAL APPLICATION REQUIREMENTS SUMMARY)
| Funzionalità | Sezione | MUST | SHOULD | MAY | Nota |
|---|---|---|---|---|---|
| Gestire nomi host >= 255 caratteri | 2.1 | ✓ | |||
| Nome host non tutto numerico | 2.1 | ✓ | |||
| Supportare più indirizzi per nome | 2.2 | ✓ | |||
| Provare più indirizzi in caso di fallimento | 2.2 | ✓ | |||
| Rispettare i valori TTL DNS | 2.2 | ✓ | |||
| Consentire la specifica TOS | 2.4 | ✓ |