Title: Nessun titolo diapositiva
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 Universi
tà di Roma La Sapienza
2STRATIFICAZIONE DEL PROTOCOLLO TCP/IP
NFS
TELNET
HTTP
FTP
DNS
SNMP
RPC
UDP
TCP
transport layer
network layer
IP
data link layer
3INOLTRO DATAGRAMMA IP
Il router mantiene una tabella di routing, usata
per cercare il prossimo router o lhost cui
inoltrare il datagramma
Host A
Host B
TCP
TCP
IP
IP
IP
Network layer
Network layer
Data layer
router
4PROTOCOLLI
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 n1.
Al momento del trasferimento dei dati ogni strato
aggiunge una intestazione (header)
Dati strato n -1
Dati strato n
header strato n
header strato n -1
5PROTOCOLLI DI RETE
6TCP
Host B
- TCP fornisce un servizio orientato alla
connessione, affidabile, con controllo di flusso,
di tipo end-to-end e garantisce la consegna dei
dati nellordine 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
Host A
syn
syn
ack
data
data
fin
ack
data
fin
ack
7IP
- IP specifica il formato dei pacchetti spediti in
internet - Il servizio è inaffidabile, non è di tipo end to
end, i datagramma possono essere persi
8FRAMMENTAZIONE
- Le entità di ciascuno strato comunicano con le
altre attraverso lo scambio di PDU composte da un
preambolo (header) ed unarea dati - Le PDU hanno una dimensione massima per larea
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 dallhost di
destinazione.
9Svantaggi 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.
10Tempi 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
11Esempio SENZA frammentazione
Messaggio di 300 byte inviato da un Client a un
Server
client
Server
300
300
TCP
TCP
300
20
300
20
IP
IP
300
20
20
300
20
20
Network layer
Network layer
T.R.
300
20
20
28
ethernet
300
20
20
18
FDDI
router2
router1
300
20
20
28
12Tempi di Servizio delle Lan
Messaggio di 300 byte inviato da un Client a un
Server
4404
20
20
28
358 x 8
0.000286 sec.
Service Time Eth
10.000.000
10.000.000
368 x 8
0.00002944 sec.
300
20
20
28
Service Time FDDI
100.000.000
100.000.000
368 x 8
300
20
20
28
0.000184 sec.
Service Time TR
16.000.000
16.000.000
13Esempio 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
4404
20
4424
1172
IP
IP
4404
20
20
4424
20
Network layer
Network layer
1172
20
4404
20
20
28
T.R.
4424
20
28
ethernet
1172
20
28
FDDI
FDDI
-
4404
20
20
28
28
4424
20
-
TR
FDDI
4424
20
28
28
4424
20
-
-
data
IP
ET
4404
20
20
28
28
28
1172
20
28
28
1192
-
1480
20
18
4424
20
28
28
28
-
1480
20
18
data
ET
1172
20
28
28
28
1464
20
18
1192
18
14Tempi 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
4404
20
20
4424
20
1172
20
28
28
28
Service Time
16.000.000
(447244721220) x 8
Service Time
0.005082 sec.
16.000.000
15Esempio 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
4404
20
4404
1192
20
20
IP
IP
4404
20
20
4404
20
20
Network layer
Network layer
1192
20
20
4404
20
20
28
T.R.
4404
20
28
20
ethernet
1192
20
28
20
FDDI
FDDI
-
4404
20
20
28
28
4424
20
-
TR
FDDI
4404
20
28
28
4424
20
20
-
-
data
IP
ET
TCP
4404
20
20
28
28
28
1192
20
28
28
1232
20
-
1460
20
18
20
4404
20
28
28
28
20
-
1480
20
18
data
ET
1192
20
28
28
28
20
1464
20
18
1232
18
16Tempi 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
4404
20
20
4404
20
1192
20
28
28
28
20
20
Service Time
16.000.000
(447244721260) x 8
Service Time
0.005102 sec.
16.000.000
0.005102 sec.
20 msec di differenza
0.005082 sec.
17Tempo 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 (TCPIPframe)
in byte nella rete n Bandwidthn bandwidth in
Mbps della rete n Ndatagrams numero di
datagramma IP necessari Nsegments numero di
segmenti TCP necessari (lt o di Ndatagrams) N
numero di reti
18Tempo 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
19Esercizio - testo
Client
DB server
FDDI 100 Mbps MTU 4472 bytes
T.R.
router1
router2
Ethernet 10 Mbps MTU 1518 bytes
Token RingI 16 Mbps MTU 4444 bytes
- 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.
L80 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.
20Esercizio - soluzione
MessageSize Nsegment x TCPOvhd
NDatagrams
minn MTUn - IPOvhd
- Possiamo calcolare il numero dei datagramma
necessari nei tre casi (richiesta, risposta breve
e risposta lunga) - (40020)/(1500-20) 1 per la richiesta
- (809220)/(1500-20) 6 per la risposta breve
- (10000040)/(1500-20) 68 per la risposta lunga
21Esercizio - soluzione
Overheadn TCPOvhdNdatagrams x (IPOvhd
FrameOvhdn)
Possiamo calcolare loverhead 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
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
22Calcolo tempi di servizio
23Router di rete
24Tempi 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
25Esercizio
Client
DB server
FDDI 100 Mbps MTU 4472 bytes
T.R.
router1
router2
Ethernet 10 Mbps MTU 1518 bytes
Token RingI 16 Mbps MTU 4444 bytes
- I router 1 e 2 processano 400,000 pacchetti/sec
- Service time 2.5 ?sec (1/400,000)
- Service demand al router
Client Request Short Reply Long Request
1 x 2.5 2.5 ?sec 6 x 2.5 15 ?sec 68 x 2.5 170 ?sec