AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE Emne: Informatikk II Emnekode: LO325E Faglig veileder: G.Milvang og H.Hemmer Gruppe(r): 2EA,2EB,2EC Dato:12.12.03 Eksamenstid:9 00-14 00 Eksamensoppgaven består av: Antall sider (inkl. forsiden):5 Antall oppgaver:6 Antall vedlegg:0 Tillatte hjelpemidler: Alle skrevne og trykte. Godkjent kalkulator. Kandidaten må selv kontrollere at oppgavesettet er fullstendig. Ved eventuelle uklarheter i oppgaveteksten skal du redegjøre for de forutsetninger du legger til grunn for løsningen. Utarbeidet av Kontrollert av (en av disse): (faglærer): Annen lærer Sensor Studieleder/ Fagkoordinator Studieleders/ Fagkoordinators underskrift: Avdeling for ingeniørutdanning Cort Adelersgate 30 0254 Oslo tlf: 22 45 32 00 faks: 22 45 32 05 iu@hio.no
Oppgave 1 (5%) Gi to eksempler på applikasjonsprogram hvor connection-oriented service er å foretrekke og to eksempler på applikasjonsprogram hvor conectionless service er best. Begrunn svaret. Oppgave 2 (10%) En router har følgende (CIDR) innhold i sin routingtabell. Adresse/maske Neste hopp 135.46.56.0/22 interface0 135.46.60.0/22 interface1 192.53.40.0/23 interface2 default interface3 Hvilken interface blir følgende pakker med gitt adresse sendt til? a) 135.46.63.0 b) 135.46.57.14 c) 135.46.52.2 d) 192.53.40.7 e) 192.53.56.7 Oppgave 3 (10%) Vi har 2 LAN s koblet sammen med en router. A C B Lan 1 Lan 2 D a) Tegn opp diagrammet og tilordne LAN adresser og MAC-adresser til adapterene. La Lan 1 få adresser på formen 111.111.111.xxx, Lan 2 få adresser på formen 122.222.222.xxx Velg MAC-adresser fritt til alle adapterne som er med i nettverket. 2
b) Anta at ARP tabellen er oppdatert for alle noder i begge LAN. Beskriv alle stegene som utføres for å sende et datagram fra A til C. c) Gjenta beskrivelsen i b), men anta nå at alle ARP-tabeller er tomme. Oppgave 4 (15%) Gitt et nettverk med routere som vist under. B 3 C A 2 5 2 3 1 F 1 2 D E 1 og med kostnader på linjene mellom routerene. Bruk Link State algoritmen (Dijkstras algoritme) og bygg opp routing tabellen for node C. Oppgave 5 (10%) Anta at to datamaskiner er koblet opp direkte over en avstand på 10 000 km og har en linkhastighet R= 1 Mbit/s Anta at utbredelseshastigheten langs linja er c= 2,5 * 10 8 m/s. Vi skal overføre en fil på 400 000 bit. a) Hvor lang tid vil det ta å overføre fila dersom den overføres kontinuerlig? b) Anta at fila deles opp i pakker på 40 000 bit. Hvor lang tid vil overføringen ta dersom det skal sendes en ACK på hver enkelt pakke før neste pakke sendes? c) Hvor stor utstrekning i meter har et bit i meldingen? 3
Oppgave 6 (50%) Vi skal lage et java-program som leser inn data og skriver ut i et vindu; se figur. Programmet registrerer data når det trykkes return i det siste tekstfeltet. De innleste verdiene skal så skrives ut. Det finnes en angre-knapp som sletter den siste verdien. Programmet realiseres ved hjelp av to klasser; en klasse Datareg som arver JFrame og som inneholder tekstfeltene for input, og en klasse Ark som arver JPanel som inneholder utskriften. Alternativ (beregnet på dem som har tatt faget tidligere): Du kan realisere programmet ved hjelp av en klasse som arver Frame og en klasse som arver Canvas. Fonten som brukes er Serif, 20 punkter. Bredde er 300 pixel, høyde 400 pixel. Maksimalt antall linjer er da 13. Første linje skrives i punktene (20,30) og (150,30). Linjeavstanden er 25 pixel. Skjelettet til klassen Datareg ser slik ut: import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Datareg extends JFrame implements ActionListener { //deklarasjoner public Ramme() { public void actionperformed(actionevent e){ public static void main(string[] args) { //slutt på klassen Datareg 4
Og for klassen Ark: public class Ark extends JPanel{.. public MittPanel() { public void paintcomponent(graphics g){ Oppgave: a) Vi ønsker å lagre de innleste dataene som to tabeller av typen String. Det er maksimalt behov for å lagre 13 verdier i hver tabell. Vis hvordan du deklarere disse tabellene. b) Deklarer de variablene (attributtene) du vil bruke i klassen Datareg. c) Skriv konstruktoren til klassen Datareg. d) Deklarer de variablene (attributtene) du vil bruke i klassen Ark. e) Skriv konstruktoren til klassen Ark f) Skriv paintcomponent-metoden i klassen Ark. g) Skriv metoden actionperformed i klassen Datareg. h) Skriv main-metoden i klassen Datareg. Det er nå meningen at du skal ha skrevet alt som skal til for å realisere programmet. Hvis du mener at noe mangler, så skriv det ned, og angi hvilken klasse det tilhører. 5