Løsningsforslag Gruppeoppgaver, 27. 31. januar INF240 Våren 2003 1. Kommunikasjonsformer Gi en kort definisjon på følgende begrep: a) Linje/pakkesvitsjing Linjesvitsjing er en teknikk som tradisjonelt har vært i bruk i telefonnettet, men som nå også benyttes for dataoverføring. Bruken av en linjesvitsjet forbindelse foregår i tre faser: 1. Oppsett av linje: ved oppkall blir en fysisk linje blir satt opp mellom sender og mottager vha. mekaniske eller elektroniske svitsjer. 2. Linja brukes (for tale eller dataoverføring). 3. Nedkopling Fordelen ved linjesvitsjing er at man får en egen fysisk forbindelse som ingen andre bruker. Moderne datanett benytter imidlertid fortrinnsvis pakkesvitsjing som muliggjør deling av de fysiske linjene. Pakkesvitsjing innebærer at dataene som skal sendes først stykkes opp i pakker som sendes ut på de fysiske linjene. Hver pakke inneholder et hode og en hale i tillegg til de informasjonsbærende dataene. Hodet inneholder blant annet adresseinformasjon som er nødvendig for å rute pakken fram til mottager. Prinsippet er at pakker med data blir sendt ut på et nett og dirigert (svitsjet) til riktig sted via de pakkesvitsjene som finnes i nettet. Når en pakke kommer inn i en svitsj, avgjør svitsjen hvilken linje denne pakken skal sendes ut på ut ifra hva som ser best ut på det tidspunktet pakken prosesseres i svitsjen. Ulike pakker kan således bli sendt forskjellige veier mellom A og B. En fordel med pakkesvitsjing er at flere sendere og mottagere som utveksler data kan dele de samme fysiske linjene. Passer bra for asynkron trafikk (f.eks. e-post). En annen fordel er at pakkesvitsjing gir mulighet for å rute trafikk utenom linjer som er nede eller går ned. b) Synkron/asynkron overføring Synkron overføring: Forsinkelsen i nettet er konstant mens dataene sendes slik at mottager tar imot data i samme takt som sender leverer de ut på nettet. Eksempler på typisk synkron trafikk er tale- og video-overføring. 1
Asynkron overføring: Sender og mottager er ikke i takt; forsinkelsen varierer når data sendes. Ved pakkesvitsjing, som er asynkron overføring, kan rekkefølgen på pakker som mottas være ulik den rekkefølgen de ble sendt i, og pakkene må derfor gjerne sorteres ved mottak. Asynkron overføring egner seg f.eks. bra til filoverføring, interaktiv kommunikasjon mv. c) Forbindelsesfri (datagram) og forbindelsesorientert overføring Forbindelsorientert overføring kan sammenlignes med det å kople opp en telefonsamtale eller en TCP-forbindelse; Oppkopling - bruk - nedkopling av forbindelsen Forbindelsesfri overføring kan sammenliknes med å sende et brev i det vanlige postsystemet. En pakke (datagram) utstyres med en fullstendig adresse som gjøre det mulig å rute pakken fram til mottageren uten at det settes opp noen forbindelse på forhånd. d) Hva menes med multipleksing i telenett? Multipleksere er innretninger i telenettet som gjør det mulig for flere linjer med lav bitrate å dele en linje med høy bitrate. Dataoverføringskapasiteten på den sistnevnte linja vil for en enkel type multiplekser, være større eller lik summen av bitratene for hver av lavkapasitets-linjene. 2. Nett-typer a) Gjør rede for forskjellen mellom punkt-til-punkt nett og kringkastingsnett. Punkt-til-punkt nett muliggjør dataoverføring mellom én avsender og én mottager av gangen. Nettet består av mange forbindelser mellom individuelle par av maskiner. For å komme fra kilde til destinasjon, kan en pakke i denne typen nett måtte gå innom mange mellomliggende maskiner (svitsjer). Det er viktig å finne en optimal rute gjennom nettet. Siden det her dreier seg om en sender og en mottager, kalles denne typen overføring gjerne unikast. Kringkastingsnett har gjerne en felles kommunikasjonskanal som deles av alle maskinene på nettet. Når en maskin sender en pakke ut på nettet, vil denne derfor mottas av alle de andre maskinene, men bare den eller de maskinene som pakken er adressert til, vil lese den inn i sin hukommelse. Pakker som ikke er adressert til en bestemt maskin, blir ignorert av denne maskinen. Kringkastingsnett muliggjør to nyttige kommunikasjonsmåter som kalles kringkasting og multikasting. Kringkasting betyr at en pakke som blir sendt ut på nettet, blir plukket opp og prosessert av alle de andre maskinene på nettet; Multikasting betyr at en pakke som sendes ut på nettet, blir plukket opp av et subsett av alle maskinene som er tilknyttet. b) Hva kjennetegner Internet og hvilke funksjoner må dette nettet kunne håndtere? Det som først og fremst kjennetegner Internet, er at det består av en meget stor samling med autonome nett, dvs. nett som i utgangspunktet er laget for å betjene 2
en gruppe brukere (f.eks. lokalnettet ved UiO). Hvert av disse (sub-)nettene fungerer uavhengig av alle andre autonome nett i verden, men er knyttet sammen vha. ulike typer langdistansenett eller rene høyhastighets forbindelser. Internetprotokollen (IP) binder alle de autonome nettene sammen til det vi kaller Internet ved bl.a. å tilby en adresserings-mekanisme som er universell. Dette betyr i praksis at hvert enkelt subnett, tildeles et sett av Internet-adresser, som er unike ift. alle andre Internet-adresser og derved gjør det mulig for en maskin på ett subnett å kunne nå en hvilken som helst maskin på et annet subnett. Sentrale funksjoner som det må tas hånd om er bl.a.: Ruting på Internet nivå mellom subnett (globale Internet-adresser) Ruting på subnett nivå mellom lokale maskiner (lokale subnett-adresser) Fragmentering og reassemblering c) Beskriv de mest vanlige LAN topologiene Disse er: Bus: Alle maskinene er koplet til en lineær kabel (dvs. endene er ikke koplet sammen). Benyttes for Ethernet-baserte lokalnett; denne protokollen tar høyde for at det vil oppstå kollisjoner på kabelen når to eller flere maskiner prøver å sende samtidig. Ring: Kabelen som maskinene tilknyttes utgjør en sluttet ring (kan også være mer enn én fysisk ring). LAN protokoller som benytter ring-topologi har sikre mekanismer som hindrer at kollisjoner oppstår (eks. Token ring, FDDI). Stjerne: Maskinene er tilknyttet en felles enhet (svitsj) som sørger for at de når riktig mottager hvis denne maskinen /nettet også er koplet på svitsjen (eks. Ethernet svitsj) 3. Adressering/ruting a) Nevn de forskjellige typene av adressering og eksempler på applikasjoner hvor de brukes. Unikast: adresse til en enkelt maskin Kringkasting: fellesadresse adresserer alle maskiner på nettet; eks.: melding til alle Multikast: gruppe-krinkasting/gruppe-adresse, eks.: mailingliste, deltagere i videokonferanse b) Diskuter de nødvendige egenskapene en nettverksadresse bør ha. En nettverksadresse bør ha stort nok adresserom og gi en entydig identifikasjon av maskiner tilknyttet nettet. Som regel vil man desssuten foretrekke hierarkisk ordnede adresser. Det bør dessuten være mulig med dynamisk tilordning av adresser slik at det blir lettere å vedlikeholde nettet. Noen ganger (som f.eks. på Internet) opererer man med et domene -begrep i adresserings-sammenheng, og det er da viktig at adressestrukturen og navnehåndteringen muliggjør dette. En nettverksadresse bør dessuten kunne ha et alias som er lett å huske for mennesker, f.eks. ifi.uio.no. I så fall bør navneoppslag skje på en effektiv måte. 3
c) Hva forstår vi med ruting? Ruting er en funksjon som utføres av svitsjene (ruterne) i et datanett. I grove trekk innebærer denne funksjonen at svitsjen leser mottager-adressen i pakker som ankommer, og ut ifra denne bestemmes hvilken retning i nettet denne pakken skal sendes videre (dvs. hvilken fysisk link pakken skal legges ut på). Diverse strategier kan legges til grunn ved valg av neste svitsj som pakken skal sendes til; de kan være dynamiske eller statiske. 4. Ytelse a) Forklar begrepene: båndbredde (bandwidth) Her skal man passe på at begrepet båndbredde benyttes ulikt ettersom det er snakk om digtale eller analoge systemer. Dersom det er snakk om analoge systemer, har båndbredden måleenheten Hertz (Hz). En analog telefonlinje har f.eks. ca. 3kHz bånbredde. Dersom man snakker om digitale systemer, mener man vanligvis kapasiteten til en link målt i bit pr.sekund. Andre betegnelser på sistnevnte er bitrate, overføringshastighet, transmisjonsrate mv. gjennomstrømning (throughput) Den datamengden vi faktisk får over en link pr. sekund (bit/s). Den teoretiske båndbredden er ofte ikke mulig å oppnå pga. pakketap, flere brukere, for langsom maskin med hensyn til programvaren som eksekveres ift. hastigheten man ønsker å sende med osv. b) Hvor oppstår forsinkelse når man sender en pakke mellom to maskiner? Forsinkelsen oppstår flere steder: Fra applikasjonen som sender pakken, må pakken gå nedover i protokollstacken hvor det er mange buffere mellom lagene. Her er det viktig å unngå å kopiere pakkene, men heller flytte pekere. Kopiering tar tid. Hver protokoll har sine regler og funksjoner, dvs. at en pakke kan bli oppdelt i flere rammer som igjen legges i buffer. Propagation delay; selve mediet som det overføres på introduserer også forsinkelse: elektroner bruker tid på å forflytte seg i en kopperledning; det samme gjelder fotoner i et fiber. Prosesseringstid: Ute i nettverket vil det være mange rutere som pakken må passere disse bruker tid på å få sendt pakker videre. Tid for å sende en pakke: Dette avhenger av kapasiteten på linken. En linje med 1Mbps og en pakkestørrelse 10 kb vil trenge 10 ms for å få hele pakken ut på linja. Retransmisjon av pakker fører selvfølgelig til forsinkelse. Ved bit-feil: Noen ganger vil enkeltbit bli feiltolket, men som oftest vil feil opptre i burst, dvs. feil i flere bit etter hverandre. Dette blir vanligvis forårsaket av elektrisk interferens, f.eks. lynnedslag. 4
En node i nettet kan være nede. Pakken kan da eventuelt rutes rundt, men dette vil ikke alltid være mulig. Programvaren i en ruter kan dessuten bruke gale/ikke oppdaterte rutingtabeller, og derved framsende pakker i feil retning. c) Hvilke elementer kan inngå i begrepet tjenestekvalitet (QoS)? Viktige parametre er: Overføringskapasitet Ende-til-ende forsinkelse Variasjon i forsinkelsen ( jitter ) Akseptabelt pakketap 5