LiTH, Tekniska högskolan vid Linköpings universitet 1(7) IDA, Institutionen för datavetenskap Juha Takkinen 2008-06-03 Skriftlig tentamen i kursen TDTS04 och TDTS43 Datornät och distribuerade system 2008-06-04 kl. 14 18 Lokal T1 och T2. Tillåtna hjälpmedel Du får ha en icke-programmerbar miniräknare med tömda minnen och ett engelskt-svenskt lexikon (ej elektroniskt). Resultat Resultatet publiceras inom tolv arbetsdagar i LADOK. Poänggränser Du kan få maximalt 40 poäng. För att få godkänt, betyg 3, krävs minst 20 poäng. För betygen 4 och 5 krävs 28 respektive 36 poäng. Lärarjour Under tentamenstiden finns möjlighet att ställa frågor och få förtydliganden från Juha Takkinen, tel. 0731-500 393, som besöker tentamenslokalen ca kl. 15 och ca kl. 17. Instruktioner Läs varje fråga noggrant innan du svarar. Motivera alla dina svar, om inte annat anges. Se även instruktionerna på tentamensomslaget. Du kan svara på svenska eller engelska. Rita gärna figurer. Ha samma ordning på dina svar som på frågorna. Kopiera frågorna till ditt svarsblad eller skriv namn och personnummer även på frågesidorna och lämna in dem tillsammans med dina svar. There are three kinds of death in this world. There s heart death, brain death, and there s being off the network. Guy Almes, seen in an e-mail from Will Iverson, iverson@apple.com Lycka till!
2(7) 1. Protokoll och nätgrunder a. Antag att ett nätverk består av fyra noder: en sändare och en mottagare samt två routrar längs den enda vägen emellan dessa två. Alla länkar mellan noderna är lika långa. Ett datapaket är 100 MB stort, bandbredden är 40 Gbps och länkfördröjningen (eng. propagation delay) är 2,5 ms. Ljusets hastighet i mediet är för övrigt 2 x 10 8 m/s. Hur lång är länken mellan två noder, mätt i meter? b. Antag att sändaren i fråga a) ovan fragmenterar datapaketet i 4 lika stora delar (ignorera protokollhuvud). Hur lång tid tar det att skicka all data från sändare till mottagare, inklusive alla nämnda fördröjningar? c. Definiera följande begrepp: connectionless service och packetswitched network. 2. TCP a. Fyll i tabellen nedan och förklara de tjänster som TCP erbjuder genom att följa mallsvaret för multiplexing/demultiplexing. (3 p) Tjänst Förklaring reliable delivery flow control congestion control multiplexing/demultiplexing Multiplexing är en teknik som används på sändarsidan för att kombinera flera kommunikationskanaler till en enda kanal i ett lägre lager, som t.ex. flera TCP-kanaler till en IP-kanal. Motsatsen demultiplexing utförs på mottagarsidan. b. Antag TCP Reno används i följande två separata congestion controlscenarier. Threshold har värdet 64 KB och Congestion window är 66 KB stort från början i båda fallen. Förklara vad som händer. Scenario 1: Sändaren får en timeout på sin återsändningstimer (eng. Retransmission timer). Scenario 2: Sändaren får en ACK.
3(7) 3. IP a. Förklara vad som menas med longest-prefix matching? b. Antag subnätmasken för samtliga subnät i nedanstående figur är /24. Vad är subnätadressen för nätverk A i övre vänstra hörnet? Hur många adresser kan nätverk A maximalt innehålla med denna konfiguration? Α c. Nedanstående figur visar tunnling (eng. tunneling) i ett mobilt IPsammanhang. Ange först vad som ska stå efter Src och Dest på platserna 1 6 och tala sedan om vad noderna X och Y kallas för. Correspondent X Y Mobile agent 1 Src: Src: 2 Src: 3 4 5 Src: Src: Src: 6 A-to-B B-to-C D-to-E E-to-F
4(7) 4. Lokala nät a. Antag ett Ethernet (CSMA/CD) med fyra stationer A D enligt figuren nedan. Station B börjar skicka en ram vid tidpunkt t 0 och station D gör detsamma vid tidpunkt t 1. Fyll i diagrammet och visa vad som sker. A B C D b. Antag att B och D råkar ut för en kollision i scenariot a) ovan och att det är första gången för båda. När börjar B och D åter sända ramar igen? c. Antag att en sändande station A i nätverket nedan vet IP-adressen till mottagare B men inte MAC-adressen, som A behöver för att kunna skicka sitt datapaket över Ethernet. IP-protokollet ber då ARP-protokollet om hjälp, som börjar med att skapa en ARP-förfrågan (eng. ARP request). Vilka fler meddelanden skickas och hur får A till slut reda på B:s MACadress? Är de andra stationerna i nätverket inblandade och i så fall hur? A B
5(7) 5. Routning a. Studera nätverket med routrar i figuren nedan. Beräkna det uppspännande trädet (eng. spanning tree) med roten i A, och som innehåller de kortaste vägarna (eng. shortest paths), så som det går till i länktillståndsroutning (eng. link state routing). Hur ser trädet ut? Vilka länkar (vilken länk) kommer inte att användas vid routning? A 5 B 3 2 C 4 3 D 4 E b. Jämför länktillståndsroutning och distansvektorroutning med avseende på dels risken för att routningsloopar skapas och dels mängden kontrollmeddelanden som måste skickas när en ny länk upptäcks i ett nätverk. c. Antag att nätverket i uppgift a) ovan är ett stamnät (eng. backbone) i ett autonomt system (eng. autonomous system). A är en boundary router medan B och E är area border routers. Vilka routrar använder BGP för att utbyta information? 6. Nätsäkerhet a. Fyll i och förklara begreppen som listas i nedanstående tabell enligt exempel. Begrepp Förklaring playback attack chosen-plaintext attack known-plaintext attack packet sniffing ip spoofing Tekniken att förfalska sina IP-pakets avsändaradress så att paketen ser ut att komma från någon annan.
6(7) b. Figuren nedan visar hur ett PGP-baserat e-brev skickas. Förklara vad som sker inom det streckade området uppe till vänster. c. Nämn en symmetrisk krypteringsalgoritm och ett typiskt exempel där denna används (jämfört med asymmetrisk). 7. Distribuerade system-grunder a. Kryssa för Sant eller Falskt eller inget. Motivera ej. Sant Falskt i. DNS-förfrågningar är mestadels UDP-baserade. ii. E-post är ett typiskt exempel på ett MOM-system (messageoriented middleware). iii. Tack vare location transparency kan en trådlös laptop bibehålla kontakten med en applikation vid rörelse i rummet. iv. En multi-tiered arkitektur består av fem lager: applikations-, transport-, nätverks- och länklagret samt det fysiska lagret. (+0,5 p. för rätt, 0,5 p. för fel, 0 p. för inget svar; ej mindre än 0 p. på hela uppg.) b. Figuren nedan visar stegen som en DCE RPC-klient utför för att göra ett RPC-anrop för första gången. Fyll i tabellen på nästa sida så att pilarna P1 P5 får rätt aktivitet A1 A5 och i rätt ordning Steg 1 5. P1 P2 P3 P5 P4
7(7) Pil (P1 P5) Aktivitet (A1 A5) Steg 1 Steg 2 Steg 3 Steg 4 Steg 5 A1: Registrera tjänst A2: Utför RPC-anrop A3: Registrera ändpunkt (eng. end-point) A4: Fråga efter ändpunkt A5: Leta fram en server. c. Förklara och exemplifiera vad som menas med en idempotent operation. 8. Objektbaserade distribuerade system a. Förklara principen för hur CORBA blir feltolerant (eng. fault tolerant) med hjälp av IOGR (interoperable object group reference). b. Redogör för vad POA respektive IDL är inom CORBA-arkitekturen. c. Beskriv kort en tjänst som en EJB-server kan erbjuda. 9. Webbaserade distribuerade system a. Definiera först vad ett pull- respektive push-protokoll är och diskutera sedan om HTTP/1.1 är ett pull- eller push-baserat protokoll. b. Förklara vad en web proxy cache har för syfte samt principen för hur en sådan fungerar. c. Förklara kort varför prestandan ofta blir bättre med en persistent uppkoppling jämfört med en icke-persistent i HTTP. 10. Koordinationsbaserade distribuerade system a. Beskriv principen för hur data utbyts mellan utgivare (eng. publishers) och prenumeranter (eng. subscribers) i ett typiskt publish/subscribesystem. b. Vilken kommunikationsteknik används i TIB/Rendezvous för att snabbt distribuera ett publicerat data till intresserade prenumeranter? c. Vad är den just nu vanligaste datastrukturen i ett strukturerat peer-to-peer-nätverk för att mappa data till noder och som ofta kan förvandla en sökning av såväl en specifik nod som ett visst data till en enkel uppslagning av en identifierare?