IL PROTOCOLLO ICMP. La famiglia dei protocolli TCP/IP. Applicazioni ,ftp,telnet,www. IEEE 802-Ethernet-X25-Aloha ecc. Collegamento fisico

Documenti analoghi
Il protocollo IP A.A. 2005/2006. Walter Cerroni

Configurazione delle interfacce di rete

ICMP. (Internet Control Message Protocol) Cosa è l ICMP? Messaggi di ICMP. Applicazioni di ICMP: ULP, Ping, Traceroute, Path MTU discovery

Reti di Calcolatori - Laboratorio. Lezione 8. Gennaro Oliva

Internet Control Message Protocol ICMP. Struttura di un Messaggio ICMP. Segnalazione degli Errori

Protocollo ICMP, comandi ping e traceroute

Il protocollo IP A.A. 2005/2006. Walter Cerroni. Internet Protocol (IP) - RFC 791

Il protocollo IP A.A. 2006/2007. Alessandro Botticelli

ICMP OSI. Internet Protocol Suite. Telnet FTP SMTP SNMP TCP e UDP NFS. Application XDR. Presentation. Session RPC. Transport.

Il protocolli di Internet

ARP e instradamento IP

Lezione n.9 LPR- Informatica Applicata

Il livello Rete in Internet

Strumenti per analisi di rete. Una panoramica sui principali strumenti per la verifica del comportamento della rete su una workstation

ICMP. Internet Control Message Protocol. Silvano GAI. sgai[at]cisco.com. Mario BALDI. mario.baldi[at]polito.it

Configurazione delle interfacce di rete

Sommario. Configurazione della rete con DHCP. Funzionamento Configurazione lato server Configurazione lato client

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori a.a. 2009/10

IP Internet Protocol

Strumenti per analisi di rete. Una panoramica sui principali strumenti per la verifica del comportamento della rete su una workstation

Il protocollo IP (Internet Protocol)

SUBNETTING E SUPERNETTING

Corso GNU/Linux - Lezione 5. Davide Giunchi - davidegiunchi@libero.it

3 - Internet Protocol

Sommario. Configurazione della rete con DHCP. Funzionamento Configurazione lato server Configurazione lato client

Sommario. Configurazione della rete con DHCP. Funzionamento Configurazione lato server Configurazione lato client

Protocollo IP. Pacchetto e comandi

Corso di Reti di Telecomunicazioni. Giovanni Schembra. Trasmissione trame su canale broadcast

Il firewall Packet filtering statico in architetture avanzate

Reti di Calcolatori IL LIVELLO RETE

Software per l individuazione dei malfunzionamenti di rete

Formato del datagramma IP

Reti di Telecomunicazioni R. Bolla, L. Caviglione, F. Davoli. Internet Protocol (IP) L indirizzamento IP ICMP. ARP e RARP DHCP NAT 32.

Configurazione e diagnosi di una rete

Strato di rete (parte 2) Autoconfigurazione Protocollo DHCP

No. Time Source Destination Protocol Info DHCP DHCP Discover - Transaction ID 0xec763e04

(parte 2) DHCP e NAT

Sommario Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo TCP/IP Configurazione statica e dinamica del TCP/IP

Formato del Datagram IP. Utilizzo del Type of Service. Formato del Datagram IP (I word) Prof. Vincenzo Auletta. Version HLEN. Type of Service (TOS)

Antonio Cianfrani. Fondamenti di Reti - Prof. Marco Listanti - A.A. 2010/2011. INFOCOM Dept

Protocollo IP e collegati

Laurea in INFORMATICA

TCP/IP : Livello 3 di rete ARP (Address Resolution Protocol)

4b. Esercizi sul livello di Rete Inoltro in IP

Introduzione al TCP/IP Indirizzi IP Subnet Mask Frame IP Meccanismi di comunicazione tra reti diverse Classi di indirizzi IP Indirizzi IP privati e

Instradamento IP A.A. 2005/2006. Walter Cerroni. IP: instradamento dei datagrammi. Routing : scelta del percorso su cui inviare i dati

ARP (Address Resolution Protocol) RARP (Reverse-ARP)

9. IP: Messaggi di errore e di controllo (ICMP)

Reti di Calcolatori. IL LIVELLO RETE IN INTERNET Protocollo IP

Come si può notare ogni richiesta ICMP Echo Request va in timeout in

Il protocollo IP. Reti di Telecomunicazioni LA Prof. Franco Callegati

Strato rete in Internet

IL LIVELLO RETE IN INTERNET Protocollo IP

Reti di calcolatori. Lezione del 18 giugno 2004

Indirizzamento ed instradamento nelle reti IP

Laboratorio Wireshark: ICMP

Reti di comunicazione

Un caso estremo per gli algoritmi di routing: Reti Mobili Ad Hoc (MANET)

Routing (instradamento) in Internet. Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi:

TCP/IP un introduzione

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

Architettura TCP/IP: indirizzamento e routing

Gestione degli indirizzi

Relazione Laboratorio di reti telematiche

Instradamento IP. Appunti di reti di computer. Prof. Marco Marchisotti. Istituto Superiore Ascanio Sobrero Casale Monferrato (AL)

Il modello TCP/IP. Sommario

Parte II: Reti di calcolatori Lezione 16

Classe bit: net id host id. 1 0 net id host id net id host id multicast address

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing

Corso di Laurea in Informatica Esame di Reti Prof. Panzieri frame con source address uguale a MAC_UNI X X X X X

CONNESSIONE DI UN PC ALLA RETE INTERNET

Uso di sniffer ed intercettazione del traffico IP

Packet Tracer: simulare utility PING

Sistemi Operativi e Reti Capitolo 12

Gestione degli indirizzi

Configurazione Rete in LINUX

ESERCIZIO NUMERO 1 ESERCIZIO NUM. 2

Packet Tracer: simulatore di RETE. (Router.pkt)

Parte II: Reti di calcolatori Lezione 14

Indirizzi LAN (MAC) e IP

Packet Tracer: simulatore di RETE

Installazione e Configurazione del servizio DHCP. Orazio Battaglia

Internet e protocollo TCP/IP

Reti di calcolatori. Lezione del 17 giugno 2004

Pacchetti e imbustamento. Ethereal (1)

Interconnessione di reti

La nascita di Internet

MODELLO TCP/IP LIVELLO 4 Trasporto. Il protocollo per il controllo della trasmissione. La gestione degli errori di trasmissione

RTT costante pari a 0.5 secondi; primo RTO= 2*RTT;

PROF. Filippo CAPUANI TCP/IP

Programmazione in Rete

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I

L architettura di rete TCP/IP. 1

Reti di Telecomunicazioni. Network Layer

Tecnologie di Sviluppo per il Web

Laboratorio di Reti di Comunicazione ed Internet Mod. 2

Dispense corso Laboratorio di Internet

Indirizzi Internet. Indirizzi Internet (2)

Protocolli strato rete in Internet

Internetworking TCP/IP: esercizi

Transcript:

IL PROTOCOLLO ICMP La famiglia dei protocolli TCP/IP Applicazioni e-mail,ftp,telnet,www ICMP TCP IP UDP ARP IEEE 802-Ethernet-X25-Aloha ecc. Collegamento fisico Walter Cerroni 2 1

Il protocollo IP offre un servizio di tipo best effort non garantisce la corretta consegna dei datagrammi se necessario si affida a protocolli affidabili di livello superiore (TCP) è comunque necessario un protocollo di controllo gestione di situazioni anomale notifica di errori o di irraggiungibilità della destinazione scambio di informazioni sulla rete ICMP (Internet Control Message Protocol) ICMP segnala solamente errori e malfunzionamenti, ma non esegue alcuna correzione ICMP non rende affidabile IP Walter Cerroni 3 Internet Control Message Protocol (ICMP) ICMP (RFC 792) svolge funzioni di controllo per IP IP usa ICMP per la gestione di situazioni anomale, per cui ICMP offre un servizio ad IP i pacchetti ICMP sono incapsulati in datagrammi IP, per cui ICMP è anche utente IP Frame Strato 2 Datagramma IP Strato 3 Pacchetto ICMP Walter Cerroni 4 2

Formato del pacchetto ICMP IP header Message Type Message Code Checksum Additional Fields (optional) Data 20-60 byte 1 byte 1 byte 2 byte variabile variabile Type definisce il tipo di messaggio ICMP messaggi di errore messaggi di richiesta di informazioni Code descrive il tipo di errore e ulteriori dettagli Checksum controlla i bit errati nel messaggio ICMP Add. Fields dipendono dal tipo di messaggio ICMP Data intestazione e parte dei dati del datagramma che ha generato l errore Walter Cerroni 5 Messaggi di errore (1) Destination Unreachable (Type = 3) generato da un gateway quando la sottorete non è raggiungibile, oppure da un host quando si presenta un errore sull indirizzo dell entità di livello superiore a cui trasferire il datagramma Codici errore di Destination Unreachable 0 = sottorete non raggiungibile 1 = host non raggiungibile 2 = protocollo non disponibile 3 = porta non disponibile 4 = frammentazione necessaria ma bit don t fragment settato Walter Cerroni 6 3

Messaggi di errore (2) Time Exceeded (Type = 11) generato da un router quando il Time-to-Live di un datagramma si azzera ed il datagramma viene distrutto (Code = 0) generato da un host quando un timer si azzera in attesa dei frammenti per riassemblare un datagramma ricevuto in parte (Code = 1) Source Quench (Type = 4) i datagrammi arrivano troppo velocemente rispetto alla capacità di essere processati: l host sorgente deve ridurre la velocità di trasmissione Redirect (Type = 5) generato da un router per indicare all host sorgente un altra strada più conveniente per raggiungere l host destinazione Walter Cerroni 7 Messaggi di richiesta di informazioni (1) Echo Request (Type = 8) Echo Reply (Type = 0) l host sorgente invia la richiesta ad un altro host o ad un gateway la destinazione deve rispondere immediatamente metodo usato per determinare lo stato di una rete e dei suoi host, la loro raggiungibilità e il tempo di transito nella rete Additional Fields: Identifier: identifica l insieme degli echo appartenenti allo stesso test Sequence Number: identifica ciascun echo nell insieme Optional Data: usato per inserire eventuali dati di verifica Walter Cerroni 8 4

Messaggi di richiesta di informazioni (2) Timestamp Request (Type = 13) Timestamp Reply (Type = 14) l host sorgente invia all host destinazione un Originate Timestamp che indica l istante in cui la richiesta è partita l host destinazione risponde inviando un Receive Timestamp che indica l istante in cui la richiesta è stata ricevuta Transmit Timestamp che indica l istante in cui la risposta è stata inviata serve per valutare il tempo di transito nella rete, al netto del tempo di processamento = T Transmit T Receive Walter Cerroni 9 Messaggi di richiesta di informazioni (3) Address Mask Request (Type = 17) Address Mask Reply (Type = 18) inviato dall host sorgente all indirizzo di broadcast (255.255.255.255) per ottenere la subnet mask da usare dopo aver ottenuto il proprio indirizzo IP tramite RARP o BOOTP Router Solicitation (Type = 10) Router Advertisement (Type = 9) utilizzato per localizzare i router connessi alla rete Walter Cerroni 10 5

ICMP: APPLICAZIONI I COMANDI PING E TRACEROUTE Comando PING ping DEST Permette di controllare se l host DEST è raggiungibile o meno da SORG SORG DEST SORG invia a DEST un pacchetto ICMP di tipo echo request Se l'host DEST è raggiungibile da SORG, DEST risponde inviando indietro un pacchetto ICMP di tipo echo reply Walter Cerroni 12 6

Comando PING Opzioni -n N permette di specificare quanti pacchetti inviare (un pacchetto al secondo) -l M specifica la dimensione in byte di ciascun pacchetto -t esegue ping finché interrotto con Ctrl-C -a traduce l indirizzo IP in nome DNS -f setta il bit don t fragment a 1 -i T setta time-to-live = T -w T out specifica un timeout in millisecondi Per maggiori informazioni consultare l help: ping /? Walter Cerroni 13 Comando PING Output L output mostra la dimensione del pacchetto echo reply l indirizzo IP di DEST il numero di sequenza della risposta (solo UNIX-LINUX) il time-to-live (TTL) il round-trip time (RTT) alcuni risultati statistici: N pacchetti persi, MIN, MAX e media del RTT Walter Cerroni 14 7

Comando PING Esempio 1 ping n 10 www-tlc.deis.unibo.it PING deis238a.deis.unibo.it (137.204.59.238) from 137.204.59.237 : 56(84) bytes of data. 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=0 ttl=128 time=1.0 ms 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=1 ttl=128 time=0.5 ms 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=2 ttl=128 time=0.5 ms 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=3 ttl=128 time=0.5 ms 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=4 ttl=128 time=0.5 ms 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=5 ttl=128 time=0.5 ms 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=6 ttl=128 time=0.5 ms 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=7 ttl=128 time=0.6 ms 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=8 ttl=128 time=0.5 ms 64 bytes from deis238a.deis.unibo.it (137.204.59.238): icmp_seq=9 ttl=128 time=0.5 ms --- deis238a.deis.unibo.it ping statistics --- 10 packets transmitted, 10 packets received, 0% packet loss round-trip min/avg/max = 0.5/0.5/1.0 ms Walter Cerroni 15 Comando PING Esempio 2 ping n 10 www.unica.it PING vaxca1.unica.it (192.146.242.3) from 137.204.59.237 : 56(84) bytes of data. 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=0 ttl=55 time=99.1 ms 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=1 ttl=55 time=102.4 ms 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=2 ttl=55 time=58.6 ms 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=3 ttl=55 time=77.9 ms 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=4 ttl=55 time=38.6 ms 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=5 ttl=55 time=44.6 ms 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=6 ttl=55 time=58.8 ms 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=7 ttl=55 time=39.8 ms 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=8 ttl=55 time=64.0 ms 64 bytes from vaxca1.unica.it (192.146.242.3): icmp_seq=9 ttl=55 time=72.6 ms --- vaxca1.unica.it ping statistics --- 10 packets transmitted, 10 packets received, 0% packet loss round-trip min/avg/max = 38.6/65.6/102.4 ms Walter Cerroni 16 8

Comando PING Esempio 3 ping n 10 www.berkeley.edu PING amber.berkeley.edu (128.32.25.12) from 137.204.59.237 : 56(84) bytes of data. 64 bytes from amber.berkeley.edu (128.32.25.12): icmp_seq=4 ttl=45 time=173.2 ms 64 bytes from amber.berkeley.edu (128.32.25.12): icmp_seq=5 ttl=45 time=179.0 ms 64 bytes from amber.berkeley.edu (128.32.25.12): icmp_seq=6 ttl=45 time=175.7 ms 64 bytes from amber.berkeley.edu (128.32.25.12): icmp_seq=7 ttl=45 time=185.9 ms 64 bytes from amber.berkeley.edu (128.32.25.12): icmp_seq=8 ttl=45 time=197.7 ms 64 bytes from amber.berkeley.edu (128.32.25.12): icmp_seq=9 ttl=45 time=251.9 ms --- amber.berkeley.edu ping statistics --- 10 packets transmitted, 6 packets received, 40% packet loss round-trip min/avg/max = 173.2/193.9/251.9 ms Walter Cerroni 17 Comando PING Esempio 4 Walter Cerroni 18 9

Comando PING Esempio 5 Walter Cerroni 19 Comando TRACEROUTE tracert DEST Permette di conoscere il percorso seguito dai pacchetti inviati da SORG e diretti verso DEST SORG DEST SORG invia a DEST una serie di pacchetti ICMP di tipo ECHO REQUEST con un TIME-TO-LIVE (TTL) progressivo da 1 a 30 (per default) Ciascun nodo intermedio decrementa TTL Il nodo che rileva TTL = 0 invia a SORG un pacchetto ICMP di tipo TIME EXCEEDED SORG costruisce una lista dei nodi attraversati fino a DEST L output mostra il TTL, il nome DNS e l indirizzo IP dei nodi intermedi ed il ROUND-TRIP TIME (RTT) Walter Cerroni 20 10

Comando TRACEROUTE Esempio 1 tracert www-tlc.deis.unibo.it From deis237a.deis.unibo.it (137.204.59.237): traceroute to deis238a.deis.unibo.it (137.204.59.238), 30 hops max, 38 byte packets 1 deis238a.deis.unibo.it (137.204.59.238) 1.130 ms 0.458 ms 0.437 ms From deis130.deis.unibo.it (137.204.57.130): traceroute to deis238a.deis.unibo.it (137.204.59.238), 30 hops max, 38 byte packets 1 almr06_ing.ing.unibo.it (137.204.58.254) 3.065 ms 0.743 ms 0.715 ms 2 deis238a.deis.unibo.it (137.204.59.238) 1.081 ms 1.278 ms 0.991 ms 137.204.59.237 137.204.57.254 137.204.58.254 137.204.59.254 137.204.57.130 137.204.59.236 137.204.59.0 137.204.57.0 137.204.59.238 137.204.57.90 Walter Cerroni 21 Comando TRACEROUTE Esempio 2 tracert www.unica.it traceroute to vaxca1.unica.it (192.146.242.3), 30 hops max, 38 byte packets 1 almr06_ing.ing.unibo.it (137.204.58.254) 74.142 ms 54.147 ms 58.419 ms 2 192.12.77.73 (192.12.77.73) 151.930 ms 18.047 ms 78.195 ms 3 almr55.unibo.it (137.204.1.20) 139.140 ms 75.712 ms 22.821 ms 4 rc-unibo.bo.garr.net (193.206.128.97) 108.183 ms 236.839 ms 116.541 ms 5 rt-rc-1.bo.garr.net (193.206.134.153) 162.645 ms 84.050 ms 152.948 ms 6 rm-bo-2.garr.net (193.206.134.38) 125.898 ms 143.387 ms 122.385 ms 7 ca-rm-1.garr.net (193.206.134.114) 135.245 ms 50.876 ms 81.444 ms 8 unica2-rc.ca.garr.net (193.206.137.26) 118.439 ms 74.400 ms 78.163 ms 9 vaxca1.unica.it (192.146.242.3) 85.004 ms 74.715 ms 78.879 ms Walter Cerroni 22 11

Comando TRACEROUTE Esempio 2 ALMAnet vaxca1.unica.it Rete UNI CA deis237a.deis.unibo.it Walter Cerroni 23 Comando TRACEROUTE Esempio 3 tracert www.berkeley.edu traceroute to amber.berkeley.edu (128.32.25.12), 30 hops max, 38 byte packets 1 almr06_ing.ing.unibo.it (137.204.58.254) 104.116 ms 68.939 ms 30.182 ms 2 192.12.77.73 (192.12.77.73) 112.297 ms 169.932 ms 125.108 ms 3 almr55.unibo.it (137.204.1.20) 17.416 ms 74.859 ms 83.061 ms 4 rc-unibo.bo.garr.net (193.206.128.97) 181.461 ms 75.791 ms 68.349 ms 5 rt-rc-2.bo.garr.net (193.206.134.157) 227.687 ms 175.577 ms 66.948 ms 6 mi-bo-1.garr.net (193.206.134.1) 223.206 ms 136.979 ms 203.290 ms 7 ny4-milan.dante.net (212.1.200.25) 114.813 ms 166.677 ms 287.161 ms 8 abilene-dante-ny.abilene.ucaid.edu (212.1.200.154) 199.562 ms 173.607 ms 261.802 ms 9 clev-nycm.abilene.ucaid.edu (198.32.8.29) 226.195 ms 128.963 ms 173.126 ms 10 ipls-clev.abilene.ucaid.edu (198.32.8.25) 141.899 ms 156.029 ms 215.304 ms 11 kscy-ipls.abilene.ucaid.edu (198.32.8.5) 205.389 ms 190.448 ms 194.304 ms 12 dnvr-kscy.abilene.ucaid.edu (198.32.8.13) 240.823 ms 253.574 ms 278.428 ms 13 scrm-dnvr.abilene.ucaid.edu (198.32.8.1) 256.334 ms 294.050 ms 190.924 ms 14 QSV--abilene.POS.calren2.net (198.32.249.61) 361.691 ms 269.880 ms 282.785 ms 15 BERK--SUNV.POS.calren2.net (198.32.249.13) 307.270 ms 297.676 ms 309.840 ms 16 pos1-0.inr-000-eva.berkeley.edu (128.32.0.89) 308.682 ms 289.019 ms 254.860 ms 17 vlan199.inr-202-doecev.berkeley.edu (128.32.0.203) 300.646 ms 264.492 ms 235.889 ms 18 fast4-0-0.inr-107-eva.berkeley.edu (128.32.0.39) 382.771 ms 350.700 ms 229.652 ms 19 f8-0.inr-100-eva.berkeley.edu (128.32.235.100) 262.469 ms 284.734 ms 380.641 ms 20 amber.berkeley.edu (128.32.25.12) 289.826 ms 250.696 ms 304.285 ms Walter Cerroni 24 12

Comando TRACEROUTE Esempio 3 ABILENE GARR-B amber.berkeley.edu deis237a.deis.unibo.it Reti Calren2 e UC Berkeley ALMAnet Walter Cerroni 25 Comando TRACEROUTE Esempio 4 Walter Cerroni 26 13

ALTRI COMANDI DI RETE Comando IPCONFIG ipconfig /all visualizza la configurazione IP corrente di ciascuna interfaccia di rete presente nella macchina: indirizzo MAC indirizzo IP subnet mask default gateway server DNS Su Windows 9x: Su UNIX/LINUX: winipcfg ifconfig Walter Cerroni 28 14

Comando IPCONFIG Esempio 1 Walter Cerroni 29 Comando IPCONFIG Esempio 2 (I) Walter Cerroni 30 15

Comando IPCONFIG Esempio 2 (II) Walter Cerroni 31 Address Resolution Protocol ARP 137.204.57.95 137.204.57.210 ARP request per IP = 137.204.57.10 137.204.57.100 137.204.57.10 137.204.57.34 Il nodo sorgente invia un pacchetto MAC broadcast contenente l indirizzo IP del nodo destinazione Tutte le stazioni della rete locale leggono il pacchetto broadcast Walter Cerroni 32 16

Address Resolution Protocol ARP 137.204.57.95 137.204.57.210 ARP replay contenente indirizzo IP 137.204.57.100 137.204.57.10 137.204.57.34 ARP locale risponde al remoto, inviando un messaggio che contiene l indirizzo MAC dell host destinazione Con questo messaggio l host sorgente è in grado di associare l appropriato indirizzo MAC all IP di destinazione Walter Cerroni 33 Comando ARP arp a visualizza il contenuto della cache ARP con le diverse corrispondenze tra indirizzi IP e MAC Walter Cerroni 34 17

Comando ARP Esempio Walter Cerroni 35 Comando NSLOOKUP Interroga un server DNS per trovare la corrispondenza NOME_DNS INDIRIZZO_IP nslookup NOME_DNS restituisce l indirizzo IP corrispondente a NOME_DNS nslookup INDIRIZZO_IP restituisce il nome DNS corrispondente a INDIRIZZO_IP Walter Cerroni 36 18

Comando NSLOOKUP Esempio Walter Cerroni 37 19