1 / 25

Prof. Bruno Ciciani Facoltà di Ingegneria Università di Roma La Sapienza

Determinazione del tempo di servizio (trasferimento) di un messaggio trasmesso su LAN tramite protocollo TCP Tempi di Servizio nei Router di rete. Prof. Bruno Ciciani Facoltà di Ingegneria Università di Roma La Sapienza. STRATIFICAZIONE DEL PROTOCOLLO TCP/IP. NFS. HTTP. FTP. TELNET. DNS.

Download Presentation

Prof. Bruno Ciciani Facoltà di Ingegneria Università di Roma La Sapienza

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Determinazione del tempo di servizio (trasferimento) di un messaggio trasmesso su LAN tramite protocollo TCP Tempi di Servizio nei Router di rete Prof. Bruno Ciciani Facoltà di Ingegneria Università di Roma La Sapienza

  2. STRATIFICAZIONE DEL PROTOCOLLO TCP/IP NFS HTTP FTP TELNET DNS SNMP RPC transport layer TCP UDP network layer IP data link layer

  3. INOLTRO DATAGRAMMA IP Il router mantiene una tabella di routing, usata per cercare il prossimo router o l’host cui inoltrare il datagramma Host A Host B TCP TCP IP IP IP Network layer Network layer Data layer router

  4. Strato n Strato n Strato n -1 Strato n -1 network PROTOCOLLI La progettazione di un protocollo di comunicazione segue un approccio basato su una architettura a strati Ogni entità dello stato n comunica solo , scambiando PDU, con le entità remote di strato n,usa i servizi forniti dallo strato n -1 e fornisce servizi allo strato n+1. Al momento del trasferimento dei dati ogni strato aggiunge una intestazione (header) Dati strato n -1 header strato n -1 header strato n Dati strato n

  5. PROTOCOLLI DI RETE

  6. TCP Host B Host A syn syn • TCP fornisce un servizio orientato alla connessione, affidabile, con controllo di flusso, di tipo end-to-end e garantisce la consegna dei dati nell’ordine di spedizione, senza perdite. • TCP implementa un meccanismo affidabile di connessione detto Three way handshake • 3 segmenti sono necessari per stabilire una connessione • 4 segmenti sono necessari per terminarla in entrambe le direzioni ack data data fin ack data fin ack

  7. IP • IP specifica il formato dei pacchetti spediti in internet • Il servizio è inaffidabile, non è di tipo end to end, i datagramma possono essere persi

  8. FRAMMENTAZIONE • Le entità di ciascuno strato comunicano con le altre attraverso lo scambio di PDU composte da un preambolo (header) ed un’area dati • Le PDU hanno una dimensione massima per l’area dati (chiamata, per lo strato di rete, MTU) • Essendo diverse le lunghezze degli MTU per i diversi protocolli, il router deve essere in grado di frammentare i datagramma, che verranno riassemblati a livello IP dall’host di destinazione.

  9. Svantaggi della frammentazione • Il router deve poter dividere il PDU • il nodo destinazione deve riassemblare i frammenti • RACCOMANDAZIONE: IP standard raccomanda di frammentare dal nodo sorgente, in previsione del percorso da effettuare.

  10. Tempi di Servizio Service Time of a message Time to transmit the message over the network = = # of bytes (including protocol header -trailer, and fragmentation if there is) = bandwidth

  11. Esempio SENZA frammentazione Messaggio di 300 byte inviato da un Client a un Server 300 client Server 300 TCP TCP 20 300 20 300 IP IP 20 20 300 20 20 300 Network layer Network layer T.R. 28 20 20 300 18 20 20 300 ethernet FDDI router2 router1 28 20 20 300

  12. Tempi di Servizio delle Lan Messaggio di 300 byte inviato da un Client a un Server 28 20 20 4404 358 x 8 = = 0.000286 sec. Service Time Eth = 10.000.000 10.000.000 368 x 8 0.00002944 sec. 28 20 20 300 = = Service Time FDDI = 100.000.000 100.000.000 368 x 8 28 20 20 300 = = 0.000184 sec. Service Time TR = 16.000.000 16.000.000

  13. Esempio CON frammentazione Il Server invia una risposta di 10.000 byte al Client Ipotesi di livello TCP che ignora la MTU della rete locale client Server 10000 TCP TCP 20 4404 4424 1172 IP IP 20 20 4404 20 4424 Network layer Network layer 20 1172 28 20 20 4404 T.R. 28 20 4424 ethernet 28 20 1172 FDDI FDDI - 28 20 20 4404 28 = 20 4424 - = FDDI TR 28 20 4424 28 20 4424 - ET IP data - = + 28 20 1172 28 1192 28 20 20 4404 28 28 18 20 1480 - + 28 20 4424 28 28 ET data 18 20 1480 - + 28 20 1172 28 28 18 1192 18 20 1464

  14. Tempi di Servizio delle Lan Il Server invia una risposta di 10.000 byte al Client (Ipotesi di livello TCP che ignora la MTU della rete locale) Caso della rete Token Ring ( ) x 8 28 20 20 4404 + 28 20 4424 + 28 20 1172 Service Time = 16.000.000 (4472+4472+1220) x 8 Service Time = = 0.005082 sec. 16.000.000

  15. Esempio CON frammentazione Il Server invia una risposta di 10.000 byte al Client Ipotesi di livello TCP che conosce la MTU della rete locale client Server 10000 TCP TCP 20 4404 20 4404 20 1192 IP IP 20 20 4404 20 20 4404 Network layer Network layer 20 20 1192 28 20 20 4404 T.R. 28 20 20 4404 ethernet 28 20 20 1192 FDDI FDDI - 28 20 20 4404 28 = 20 4424 - = FDDI TR 28 20 20 4404 28 20 4424 - ET IP TCP data - = + 28 20 20 1192 28 1232 28 20 20 4404 28 28 18 20 20 1460 - + 28 20 20 4404 28 28 ET data 18 20 1480 - + 28 20 20 1192 28 28 18 1232 18 20 1464

  16. Tempi di Servizio delle Lan Il Server invia una risposta di 10.000 byte al Client (Ipotesi di livello TCP che conosce la MTU della rete locale) Caso della rete Token Ring ( ) x 8 28 20 20 4404 + 28 20 20 4404 + 28 20 20 1192 Service Time = 16.000.000 (4472+4472+1260) x 8 Service Time = = 0.005102 sec. 16.000.000 0.005102 sec. 20 msec di differenza 0.005082 sec.

  17. Tempo medio di servizio Calcolo nel caso senza frammentazione Indichiamo con: MTUn: MTU in byte della rete n XOvhd: overhead in byte del protocollo X FrameOvhdn: overhead in byte del frame nella rete n Overheadn: overhead totale (TCP+IP+frame) in byte nella rete n Bandwidthn: bandwidth in Mbps della rete n Ndatagrams: numero di datagramma IP necessari Nsegments: numero di segmenti TCP necessari (< o = di Ndatagrams) N: numero di reti

  18. Tempo medio di servizio caso senza frammentazione TCP ignora la MTU della rete locale TCP conosce la MTU della rete locale MessageSize NSegments = NSegments = NDatagrams 65495 MessageSize + NSegments x TCPOvhd NDatagrams = (stima approssimata) minn MTUn - IPOvhd Overheadn = NSegments x TCPOvhd + Ndatagrams x (IPOvhd + FrameOvhdn) 8 x (MessageSize + Overheadn ) ServiceTimen = 106 x Bandwidth

  19. Esercizio - testo Client DB server • Il client effettua delle richieste al server al ritmo di 3 transazioni al minuto (0.05 tps), con una lunghezza media dei messaggi di 400 byte. L’80% delle risposte sono lunghe 8092 byte e il 20% 100.000 byte. Assumendo che non c’è frammentazione e che il livello TCP non conosce la MTU della rete, calcolare il tempo medio di servizio delle richieste e delle risposte per ciascuna delle tre reti. FDDI 100 Mbps MTU: 4472 bytes T.R. Ethernet 10 Mbps MTU: 1518 bytes router1 router2 Token RingI 16 Mbps MTU: 4444 bytes

  20. Esercizio - soluzione MessageSize + Nsegment x TCPOvhd NDatagrams = • Usando la minn MTUn - IPOvhd Possiamo calcolare il numero dei datagramma necessari nei tre casi (richiesta, risposta breve e risposta lunga): (400+20)/(1500-20) = 1 per la richiesta (8092+20)/(1500-20) = 6 per la risposta breve (100000+40)/(1500-20) = 68 per la risposta lunga

  21. Esercizio - soluzione Overheadn = TCPOvhd+Ndatagrams x (IPOvhd + FrameOvhdn) Possiamo calcolare l’overhead per le reti (solo caso della ethernet) OverheadEth = 20 + 1 (20 + 18) = 58 per la richiesta OverheadEth = 20 + 6 (20 + 18) = 248 per la risposta breve OverheadEth = 20 + 68 (20 + 18) = 2604 per l arisposta lunga • Usando la • Usando la 8 x (MessageSize + Overheadn ) ServiceTimen = 106 x Bandwidth Possiamo calcolare il Service Time (solo caso della ethernet) OverheadEth = 8 x (400 + 58) / 10.000.000 = 0.366 msec per la richiesta OverheadEth = 8 x (8092 + 248) / 10.000.000 = 6.67 msec per la risposta breve OverheadEth = 8 x (100.000 + 2604) / 10.000.000 = 82.1 msec per l arisposta lunga

  22. Calcolo tempi di servizio

  23. Router di rete Router queues

  24. Tempi di Servizio nei Router di rete Router latency (sec per packet): tempo impiegato dal router per processare un datagramma, fornito dal costruttore. RouterServiceTime: Ndatagrams * RouterLatency In cui MessageSize + TCPOvhd NDatagrams = minn MTUn - IPOvhd

  25. Esercizio Client DB server • I router 1 e 2 processano 400,000 pacchetti/sec • Service time: 2.5 sec (=1/400,000) • Service demand al router FDDI 100 Mbps MTU: 4472 bytes T.R. Ethernet 10 Mbps MTU: 1518 bytes router1 router2 Token RingI 16 Mbps MTU: 4444 bytes

More Related