The forum of the Computer Science students of the University of Pisa

Domande Ricci

Cito alcune domande che ha fatto la Ricci a un mio collega:
1. Implementare a voce una lista sincronizzata ottimizzata per l'inserimento (lock su ogni nodo e ad ogni passo considerare solo le lock sul nodo precedente e successivo al punto dell'inserimento),
2. Code Mobility, java security manager e cenni di dynamic class loading.

In ogni caso è tranquilla e chiede solo le cose scritte sulle slides pari pari
Ecco le domande che ha fatto a me:
- Automa a stati finiti di GBN e S/W
- esercizio sul prodotto banda-ritardo
- struttura dei router
- ICMP: a cosa serve, quali sono i possibili messaggi, come è implementato il traceroute.

Gli esercizi che chiede all'orale sono tra quelli che ha pubblicato sul sito.
Per evitare di disperdere le domande in mille posti, riporto qui delle domande postate da altri su telegram e sul gruppo facebook:

Codice: Seleziona tutto

1) Distance vector sequenziale/distribuito (pseudocodice)
2) Esercizio basato su algoritmo di Dijkstra 
3) Perché servono i numeri di sequenza e gli ack nello scambio di messaggi negli algoritmi di routing a livello trasporto (stop & wait)
4) Esercizio su stop & wait (scrivi automa di stop & wait con alcune modifiche)
5) come si misurano le performance di un link ([banda]1mbps, [ritardo trasm]1ms, [pacchetto da spedire]100 byte)
6) BitTorrent quali algoritmi utilizza per la diffusione del contenuto

Codice: Seleziona tutto

1) esercizio su distance vector
2) slow start
3) go-back-n relazione tra numero di sequenza e dimensione della finestra

Codice: Seleziona tutto

-BGP
-scalabilità OSPF
-automa S&W modificato per soddisfare delle condizioni 
-dare un esempio di rete con OSPF in cui dei nodi usano metriche diverse e si verifica un loop
-header TCP
Riporto anche queste (sempre postate da altri su facebook):

Codice: Seleziona tutto

Distance vector, bellman fordman centralizzato e distribuito con codice
Timer TCP e un altro esercizio su automa stopnand wait
Esercizio su performance di una rete
Esercizio su bellman Ford, su link stage, su timer tcp, automa e misura performance
Domanda teorica su Torrent
Esercizio DV
Bgp
Path Vector
DNS
Esercizio trasmissione pacchetti con teoria
Slotted aloha
Discutere la probabilità di slotted aloha
Ha chiesto spesso automi gbn e stop and wait,torrent,congestione
Orale brevissimo (5-10 minuti), ero l'ultimo candidato della giornata. Mi è stato chiesto:
- Un esercizio su distance vector
- Macchina a stati del selective repeat
- Split horizon con poison reverse
- Subnetting e supernetting (in particolare i vantaggi del CIDR)
- Problemi dell'OSPF
- Qual è il primo pacchetto che due peer si scambiano su BitTorrent?

La professoressa è molto tranquilla, ma richiede precisione nelle macchine a stati.
Voto finale: 27.
Orale decisamente breve e tranquillo. Chiede esercizi praticamente identici (se non gli stessi) dei 3 pacchi di slides presenti sul sito del corso, quindi assicurarsi di averli compresi tutti è decisamente un buon modo di iniziare l'orale.

A me ha chiesto:
(1) Go-Back-N: come funziona, dimensione finestra, numeri di sequenza, macchina a stati (Mittente e Destinatario)
(2) Distance Vector e Path Vector, differenze (generali, nulla di specifico: avevo totalmente frainteso la domanda ed ho iniziato a scrivere l'algoritmo del DV, allora ha prolungato chiedendomi pure quello)
(3) Framing: come funziona, piccolo esercizio a riguardo simile a quello sul pdf
(4) Come è fatto un segmento TCP, in particolare tutti i campi dell'intestazione con spiegazione
(5) Come è fatto un URL

Domande a cui si può rispondere in maniera decisamente diretta, consiglio in particolare di studiare le slides invece del libro ma ovviamente per avere una visione d'insieme quest'ultimo è fondamentale.

Nel caso servisse, mi sono preparato inizialmente rispondendo alle domande poste sopra questo stesso post: non erano nate con l'intento di essere condivise, ma visto che molti lo hanno richiesto posto perlomeno una cartella condivisa contenente le foto in questione: qualità mediocre, ma se può aiutare ben venga!

https://1drv.ms/f/s!AnZ0nP28Oaef1GM-sxGT-3XS7itr

P.s. Dico subito che la risposta alla domanda sugli ACK Cumulativi non è corretta e che sono fatte in buona fede, ma assicuratevi che non abbia scritto castronerie!
- Esercizio su Selective Repeat, quantità numeri di sequenza in base alla dimensione della finestra
- Esercizio su NAT
- Cos'è ICMP, funzionamento traceroute
- BGP, differenze con RIP/OSPF, problemi dei distance vector
Orali del 11.02.2019

La Ricci segue più o meno sempre lo stesso pattern, in 2 vi mette alla scrivania e vi da un esercizio da svolgere, una volta svolto vi chiede il ragionamento che avete fatto e se ci sono errori parte a chiedervi la teoria a riguardo. Una volta soddisfatta vi fa un paio di domande. Le domande di oggi sono elencate sotto:

- BGP, spiegare la differenza tra Distance Vector e Path Vector
- Quando avviene il "infinity count" ( vuole sapere l'ordine dei pacchetti )
- DNS, differenza tra iterativo e ricorsivo ( vantaggi e svantaggi tra loro )
- Spiegare come avviene il bilanciamento del carico tramite DNS
- Commutatore di circuiti virtuali e commutatore di circuiti (packet switching)
- Bellman-Ford
- Algoritmo di Djikstra + esercizio sul Linkstate
- Protocollo utilizzato dal Linkstate
- Aloha
- Calcolo del troughput massimo
- Come sono strutturate le code all'interno dei router
- Cosa è una URL
- Cosa sono indirizzi IP e indirizzi hardware e quali sono le differenze
- Cos'è un Cookie
- Com'è strutturato un messaggio Bittorrent e come viene spedito

Parte laboratorio:

Questa parte dell'orale viene fatta sia dalla professoressa che dall'assistente dei laboratorio. Solitamente l'assistente vi ha già guardato il codice e vi ha trovato delle cose che non vanno e ve le fa vedere (eccezioni o altri errori o incongruenze con le specifiche), vi fa domande riguardo a certe scelte implementative e vi chiede dove nel codice sono (per capire se siete gli autori del codice).

Una volta discusso il progetto viene la Ricci e vi preleva dal gabbiotto dell'assistente e vi porta nel suo ufficio e vi fa (praticamente) le stesse domande sull'implementazione e delle scelte che avete adottato.

Ad un certo punto, quando è soddisfatta del progetto inizia a farvi domande sui argomenti del corso, solitamente chiede quei argomenti che non fanno parte del progetto di laboratorio, a me chiese:

- NIO (non FileChannel) e come strutturare un client-server con Selector e Channels
- RMI Callback e dove li potevo mettere nel progetto (notifica diretta dell'invito)
- RemoteObject (differenze tra oggetto locale e remoto)

L'orale è molto discorsivo e tranquillo, non chiede di scrivergli codice e non chiede i singoli costrutti nei minimi dettagli. Vuole che sappiate i concetti e come funzionano, gli piace se sappiate muovervi da soli nell'argomento.
Durata ~ 30 minuti.

PS: Mi ha fatto l'intero orale la RIcci perché non c'era l'assistente.
- Esercizio sul NAT
- AIMD e le altre combinazioni (AIAD, MIMD, MIAD)
- Esercizio su trasmissione di un segmento
- Algoritmi di choking
Orale Solo Teoria:
- Esercizio su Dijkstra (semplice esecuzione dell'algoritmo + criteri di decisione delle rotte in base a degli as-path)
- Parlare di ICMP, elencare i vari tipi di messaggi
- Dire perchè occorrono i numeri di sequenza dei pacchetti nello S&W e dare un esempio (soluzione: il mittente invia un pacchetto, arriva al destinatario, viene inviato un ack: il destinatario non sa se il prossimo pacchetto che riceverà sarà il primo (ack perso) o il secondo (ack arrivato al mittente))
- Spiegare come avviene il fenomeno "counting to infinity" e dare un esempio di rete

Orale durato più o meno 20-25 minuti, lei è molto tranquilla e aiuta nel caso di piccoli errori nell'esercizio.