![]() |
Pages (3): [1] 2 3 » Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Reti di calcolatori (http://www.dsy.it/forum/forumdisplay.php?forumid=68)
-- [Es] - Domanda 3 (http://www.dsy.it/forum/showthread.php?threadid=8475)
[Es] - Domanda 3
Come si fa?
"Un certo servizio che chiameremo DCEP (Delayed Character Echo Protocol) può essere descritto informalmente come segue: un client invia un byte B a un server DCEP mediante un datagram UDP; il server riceve B; il server si mette in pausa per 3 secondi; il server invia B al client mediante un secondo datagram UDP; il client riceve B. Ora, si immagini che il servizio DCEP venga erogato da un server S sequenziale (o iterativo, o monothread in Java, o monoprocesso in C), e che dapprima un client C1, e successivamente un client C2, richiedano a S il servizio DCEP servendosi della porta P (la stessa per entrambi). Supponendo che i tempi di trasmissione e di propagazione dei datagram UDP siano trascurabili, e che le richieste di C1 e C2 siano distanziate tra loro di un secondo (1s), dopo quanti secondi dalla ricezione della richiesta di C1 il server S riuscirà a completare l’erogazione del servizio richiesta da C2? Come cambia (se cambia) la risposta, nel caso in cui C1 e C2 dovessero rivolgere le loro richieste sempre a S, ma questa volta servendosi – rispettivamente – di due diverse porte P1 e P2? Si giustifichino tutte le risposte."
__________________
Il DSY su Facebook!!!
duqneu sono in dubbio sul ragionamento da fare:
1)C1 chiede servizio al Srv
Srv riceve il servizio
Srv fornisce il servizio a C1
Srv si mette in pausa x 3 secondi
oppure
2)C1 chiede il servizio al Srv
passa un secondo
C2 chiede servizio al Srv
Srv riceve domanda da C1
srv riceve domanda da C2
si mette in pausa per 3 secondi
Srv risponde a C1
e si mette in pausa x 3 sec
Srv risponde a C2
non è 6?????????????????? (chiede C2 dopo quanto viene servito)
__________________
Il DSY su Facebook!!!
Per me è giusta la risposta 6 secondi.
In quanto il client C2 e' già in coda sulla porta P mentre il server eroga il servizio a C1.
Il problema di questo esercizio è la seconda parte : cosa cambia se si utilizzano 2 porte diverse?
Se il server è iterativo non dovrebbe essere la stessa cosa?
uhm se le due domnde dei client arrivano allo stesso tempo su porte diverse... il Server a chi risponde x primo?
Server sequenziale:
"Un server sequenziale elabora una richiesta per volta ed accoda le altre."
Da questo link:
http://lia.deis.unibo.it/Courses/Re...Socket/SO15.htm
quindi prima risponde a C1, poi risponde a C2..
ha ragione Imation... 1+3+3 = 7!
__________________
Il DSY su Facebook!!!
Questo è un caso molto particolare penso che ne scelga una a caso.
Nell'esempio però arriva prima la richiesta del client C1. Sugli appunti ho scritto che un server iterativo esegue un servizio alla volta, però se intendiamo il numero di porta come un servizio allora probabilmente il server eseguirà 2 servizi (che sono in realtà lo stesso!!!). quindi il Client2 riceverà la risposta dopo 4 secondi dalla richiesta di C1.
Sarei proprio curioso di sapere qual è la risposta giusta?
Cosa dici se mandiamo una e-mail al prof ce lo dice?
O Ormai è tardi?
No 7 per me non può proprio essere anche perchè tra C2 è già in coda mentre il Server sta eseguendo il processo quindi la somma e' 3 + 3 = 6 !!!
intnedi x la 2a parte del'esercizio o la prima? ho modificato il mio post di prima aggiungendo che Imation aveva detto giusto... (7 secondi)
x la 2a parte: due porte, due servizi. gli arriva prima il servizio chiesto da C1 quindi serve prima C1 (e passano 3 secondi). Poi passa a C2 (son passati 4 secondi... 1+3)... si ferma x 3 sec...quindi mi sa che son sempre 7!
__________________
Il DSY su Facebook!!!
si ma tra C1 e C2 passa UN secondo... dove lo metti???????
__________________
Il DSY su Facebook!!!
Non lo metto perchè la domanda chiede dopo quanti secondi dalla richiesta di C1 viene servito C2 di conseguenza mentre il server sta servendo C1 c2 si accoda quel secondo non viene perso !!!
x me non è così.... deve esser considerato...
scusa...
C1 chiede
passa un sec
(nel frattempo il server elabora x C1)
C2 chiede
nel frattempo il server si mette in pausa x 3 secondi e risponde a C1
il server si mette in pausa x altri 3 sec e risponde a C2
1+ 3+3 = 7
x me fila il discorso......
boh!
__________________
Il DSY su Facebook!!!
Ma mentre elabora la richiesta di C1 impiegando 3 secondi, riceve la richiesta di C2, quindi il ritardo di un secondo non lo avverte, perchè quando ha finito di erogare il servizio a C1 c'è già in coda la richiesta di C2....Giusto?
Quindi dovrebbe fare 6 secondi!?!?!
SERVER
tempo:1 riceve rich. C1 --> elabora richiesta C1
tempo:2 riceve rich.C2 ma sta elaborando C1
tempo:3 sta elaborando C1
Tempo4:ha finito con C1 e ha già C2 in coda, inizia a elaborare C2
tempo5:elabora C2
tempo 6:finisce C2
Che casino
si ma dopo quanto riceve C2???? dopo un secondo anche se lui elabora C1...
caxxarola che macello!!!
x la 2a parte? Avete idee???????????
__________________
Il DSY su Facebook!!!
Originally posted by Lunik
si ma dopo quanto riceve C2???? dopo un secondo anche se lui elabora C1...
caxxarola che macello!!!
x la 2a parte? Avete idee???????????

e x la 2a parte? Usano porte diverse... hai idee???
__________________
Il DSY su Facebook!!!
Imation allora secondo te e' 6 o 7?
| All times are GMT. The time now is 19:40. | Pages (3): [1] 2 3 » Show all 33 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.