70 likes | 245 Views
Løsningsforslag eksamen vår 2000 i SIE 5030 og. Forklaring: Person (Ann, Bert) er relatert til operatøren som tilbyr tjenesten ved hjelp av relasjonen Abonnement (attributt Betingelser og flere). Personen kan ha abonnement hos mer enn en operatør (hel sirkel i kardinalitet)
E N D
Løsningsforslag eksamen vår 2000 i SIE 5030 og Forklaring: Person (Ann, Bert) er relatert til operatøren som tilbyr tjenesten ved hjelp av relasjonen Abonnement (attributt Betingelser og flere). Personen kan ha abonnement hos mer enn en operatør (hel sirkel i kardinalitet) Operatøren er utstyrt med en qualifier (kunde nr) slik at kardinaliteten mot Navn er da 1. Abonnementet er relatert til stedet hvor kunden befinner seg (Lokasjon) (relasjonen Kan nås). Lokasjonen er gitt ved hjelp av en adresse av et eller annet format (f eks IP-adresse enten alene eller kombinert med annen informasjon). Kardinaliteten til relasjonen mot Lokasjon er satt til 1 eller 0 fordi det kan være tilfeller hvor det ikke foreligger noen adresse. Merk at adressen kan være meget kompleks. Forklaring: Setene er relatert til flyet (komponent). Setene har attributtene setenummer og lokalnettnummer siden hvert sete har en datakontakt (f eks MAC-nummer). Flyet hat en nettadresse, f eks i Inmarsatsystemet slik det kan tilkobles telenettet. Passasjer sitter i et bestemt sete og er innsjekket på en bestemt rute (flight-nr) som flys av et bestemt fly. Passasjeren (eller rettere hans PC) har også et IP-nr og et Care-of-nr for å identifisere PCen i Starways-databasen. NB: Kan gjøres på andre måter, men det er vesentlig at de viktigste informasjonselementene er med slik det er mulig å sette opp kommunikasjon med riktig passasjer på riktig fly. Oppgave 1 a) Person Operatør Kunde nr Navn ... Navn ... Kan nås Abonnement Lokasjon Betingelser... Adresse Flyr Fly Rute Flight nr ID Nettadresse Innsjekket Sitter i Sete Passasjer Sete-nr Lokalnett-nr Navn… IP-nr Care-of-nr
Forklaring: Her er en mulighet. Lokasjonen til en gitt abonnent er relatert til dataobjektene som bestemmer hvordan abonnenten kan finnes på flyet. De forskjellige databasene inneholder informasjon som følger: Teltale inneholder Navn (ANN), IP-nummer til Ann, Lokasjon, abonnementsbetingelser etc. Flexi er likedan for Bert Starways inneholder Fly inklusivt Sete (mange), Rute og Passasjer (mange) med alle attributtene som er vist i figurene pluss andre dataobjekter som ikke vedrører oppgaven. Oppgave 1 a) forts Lokasjon Adresse Peker på Flyr Fly Rute Flight nr ID Nettadresse Innsjekket Sitter i Sete Passasjer Sete-nr Lokalnett-nr Navn… IP-nr Care-of-nr
Forklaring: Her har vi valgt å sende hele meldingen som operasjoner selv om datafeltet er ustrukturert. Dett er naturlig i et IP-nett fordi adresse og kontrollfeltene sendes sammen med meldingene (både på IP og TCP) Objektene i serverne som representerer brukerne er kalt brukeragenter. All lokaliseringsinformasjon ligger i egne objekter: ett for bruker Bert og ett for flyselskapet. Figuren viser hvilke adressekonverteringer som finner sted. For enkelhets skyld har vi kalt alle meldingene Send. Parametrene står i<>. Vi har ikke med detaljer som viser rutere og andre nettobjekter. Dette kan vi gjøre, men slik detaljering er unødvendig og gjør bare modellen uoversiktlig. Skal vi designe systemet er dette naturligvis viktig. Oppdateringen involverer bare lokaliseringsobjektene. Oppgave 1 b) Bruker agent Send<IP-nr, melding> Lokal- isering 1 2 Bruker agent Finn<IP-nr> <Care-of-nr> Ann Bert 3 4 Send<Care-of-nr, melding> Bruker agent Finn<Care-of-nr> Send<lokalnett-nr, IP-nr, melding> 6 5 Lokal- isering 7 <Nettadresse, lokalnett-nr, IP-nr> Bruker agent I fly Oppdater<IP-nr, care-of-nr,…> Oppdater<IP-nr, lokalnett-nr, nettadresse> Bruker agent Lokal- isering Lokal- isering Bert Flyselskap I fly
Oppgave 2 a) I fly Ann Teltale Starways Flexi Bert Server Server Server Server 500 ms forsinkelse + tid det tar å sende en melding Melding I tillegg kommer kvittering på applikasjons-laget. Det er det ikke spurt om i oppgaven. Ack TCP 20 ms forsinkelse + tid det tar å sende en melding IP1 Oppsetning av datalinken, se neste side. IP2 IP3 Meldingene sendes slik at de må prosesseres i alle serverne. Derfor kan ikke de enkelts IP-segmentene videresendes før hele meldingen er mottatt. Melding = 2 store (500 oct og 1 lite IP-segment (OK om bare 2 tas med)
Oppgave 2 a) forts TCP IP-segmentene • Når hele TCP meldingen er mottatt, setts datalinken opp (SABM + UA). Deretter overføres data. • Det trengs 7 datalink rammer for å overføre all informasjonen. (Godtar også besvarelser med kun 4 rammer. Teksten er ikke klar nok på dette punktet.) • Go-back-N betyr at alle rammer kvitteres fortløpende. • Antar at vinduet er stort nok til at sekvensen ikke brytes. TCP ack over satellittsystemet kan sendes i siste kvitteringsramme SABM UA I I1(IP1) I2(IP1) I3(IP1) I3(IP2) I5(IP2) I6(IP2) I7(IP3) IP(TCP ack) RR
Oppgave 2 b) Viser til figuren i oppgave 2 a). I teksten står det at meldingen sendes i sekvens via alle serverne. Derfor sendes TCP-meldingene over tre seksjoner, hver med mindre enn 10 ms forsinkelse. Den tiden det tar å sende en melding er da tiden det tar å lese meldingen ut fra linjen pluss transmisjonstiden over forbindelsen. Se figuren nedenfor. Total tid for overføring en vei blir da: Ann-Teltale 10 ms + 62,5 ms = 72,5 ms Teltale-Flexi = 72,5 ms Flexi-Starways = 72,5 ms Oppsetning datalink = 500,0 ms Starways-Bert 250 ms + 8 ms = 258,0 ms = 975,5 ms Vi ser da bort fra prosesseringstider i serverne og andre nettelementer. Rundt regnet kan vi derfor anslå at det tar ca 1 sekund å overføre en melding bestående av 1000 oktetter fra Ann til Bert når forbindelsen er feilfri. Hvis vi ønsker at det skal sendes en bekreftelse på at date er motttatt vil det ta 250 ms + 3×10 ms = 280 ms å overføre bekreftelsen (vi ser bort fra meldingslengden fordi meldingen er kort). Bitfeilsannsynligheten over satellittlinken er 10-6. Sannsynligheten for at en ramme bestående av n bit inneholder feil er 1- (1-p)n = np hvis np « 1 (som her). Sannsynligheten for dette er da 250×8×10-6 = 0,02. I vårt eksempel vil dette bety at transmisjonstiden over satellittforbindelsen øker med 2 ganger enveis-forsinkelsen, dvs 0,5 s med sannsynlighet 0.02 (ved så lav feilsannsynlighet ser vi bort fra at dette kan skje flere ganger etterhverandre). Hvis vi sender mange meldinger à 1000 oktetter betyr dette at det i gjennomsnitt tar 10 ms lengre tid å overføre disse meldingene. 10 ms 1000×8 (bit) 128 (kbit/s) = 62,5 ms Internettforbindelsene 250 ms 1000×8 (bit) 1000 (kbit/s) = 8 ms Satellittforbindelsen 1 2 3 Virkning av bitfeil 2 3
Oppgave 2 c) Vinduet målt i tid må være større enn to ganger transmisjonstiden en vei over satellitten. Denne er 258 ms + 250 ms = 508 ms når vi antar at lengden på kvitteringspakkene er liten. (Se figuren nedenfor.) Rammelengden fant vi i 2 a) til å være 8 ms. Dette betyr at vinduet må være større enn 508/8 = 63,5. Stop and Wait (se figuren ved sidenav) betyr at det må sendes kvittering for hver ramme. Uten bitfeil betyr dette at det tar 508 ms å overføre én ramme. Det tar derfor ca 3,5 sekund å overføre en melding bestående av 1000 oktetter. I tillegg kommer oppsetningstid for datalinken, slik at total tid blir 4 sekunder. 1 258 ms 2 3 4 5 1 2 × trans- misjonstid Ack 1 6 n = vindusstørrelse 7 n Vindusmekanismen Vi ser at kvitteringen til ramme nr 1 nå rekker tilbake før vindusstørrelsen tvinger oss til å stoppe sendingen. Stop and wait