Datateknik C, Nätverksprogrammering, 5 poäng
Observera att kurslitteraturen kan ändras/revideras fram till:
• 1 juni för en kurs som startar på höstterminen
• 15 november för en kurs som startar på vårterminen
• 1 april för en kurs som startar på sommaren
Skriv ut eller spara kursplanen som PDF
Du kan enkelt skriva ut en kursplan direkt från webbsidan. Använd kortkommandot ctrl+p (Windows) eller command+p (Mac). I nästa steg väljer du om du vill skriva ut eller spara kursplanen som PDF.
För en nedlagd kurs kan eventuell information om avvecklingsperiod hittas under rubriken "Övergångsbestämmelser" i senaste versionen av kursplanen.
Kursplanen är nedlagd
Kursplan för:
Datateknik C, Nätverksprogrammering, 5 poäng
Network Programming
Allmänna data om kursen
- Kurskod:DTAC66
- Ämne huvudområde:Datateknik
- Nivå:C-nivå
- Högskolepoäng:7,5
- Fördjupning vs. Examen:- - Ingen angiven
- Utbildningsområde:Teknik 100%
- Ansvarig fakultet:Huvudområdet för naturvetenskap, teknik och medier
- Ansvarig institution:Institutionen för informationsteknologi och medier
- Fastställd:2005-09-30
- Giltig fr.o.m:2005-09-05
Syfte
Kursen ger teoretiska och praktiska kunskaper om client/server system och peer-to-peer nätverk, säkerhetsmekanismer för skyddandet av sådana system, samt färdigheter i utveckling av nätverksprogram för både byteströms- och datagram-kommunikation med exempelvis sockets och trådar.
Lärandemål
Efter kursen ska du:
- känna till och kunna utnyttja olika systemkommandon och I/O-funktioner i ett befintligt operativsystem för utveckling av nätverksapplikationer för client-server och peer-to-peer system
- ha kunskaper om olika nätverksarkitekturer för utveckling av nätverksprogram
- kunna förstå principerna bakom multiprotokoll/multiservice-servrar (TCP,UDP,SCTP) för utveckling av nätverksapplikationer för sådana servrar
- känna till principerna för, och kunna utnyttja olika synkroniseringsmekanismer i client/server och peer-to- peer miljö
- känna till och kunna utnyttja olika algoritmer kring client resp. server mjukvarudesign
- ha grundläggande kunskaper i utveckling av säkra nätverksprogram
- kunna utnyttja trådar i olika problemlösningar där dessa verkar lämpliga
Innehåll
- TCP/IP protokollstack
- IPv4 och IPv6 i nätverksapplikationer
- client/server-system arkitektur
- middleware i client/server-system
- peer-to-peer modell
- broadcasting och multicasting i nätverksapplikationer
- I/O-funktioner, , I/O multiplexing
- synkronisering och koordinering
- nätverksprogrammering med sockets och trådar
- nätverksprogrammering för peer-to-peer system
- daemon processer och inetd
- multiprotokoll resp. multiservice-servrar
- samtidighet och Non-blocking I/O
- säker nätverksprogrammering
Behörighet
För tillträde till kursen krävs:
Datateknik AB, 20 poäng inkluderande kurserna:
Objektbaserad programmering i C++5p,
Operativsystem 5p,
Datornätverk A 5p,
Datastrukturer och algoritmer B 5p,
Matematik A , Diskret matematik 5p
Urvalsregler
Urval sker i enlighet med Högskoleförordningen och den lokala antagningsordningen
Undervisning
Kursen kan genomföras som campuskurs eller som webbaserad distanskurs utan samlingar. Olika genomföranden ställer olika krav på lärare och student. Vid varje kurstillfälle framgår vilken undervisningsform som kommer att tillämpas. Kursarbetets omfattning uppskattas till ca 200 timmar.
Campus
Undervisningen består av cirka 32 timmar (16 %) föreläsningar och 32 timmar (16 %) handledda laborationer. Cirka 136 timmar (68 %) av kurstiden är studietid utan lärare som du skall ägna åt inläsning av litteratur, föreberelser för laboration, redovisning av projektarbete och förberedelser för tentamen.
Webbaserad distanskurs utan samlingar
Allt kursmaterial presenteras via en webbaserad undervisningsplattform. Handledning ges via den aktuella undervisningplattformen uitfrån den enskilde studentens behov. Detta kan exempelvis ske via epostkorrespondens eller diskussionsgrupper. För varje student avsätts ca 5 timmars handledningstid.Vid förändrad resurstillgång kan fördelningen ändras.
Examination
3 poäng (4,5 ECTS-poäng), L100: Laborationer samt projekt
Betyg: Underkänd (U) eller Godkänd (G)
2 poäng (3 ECTS-poäng), T100: Tentamen
Betyg: U,G eller VG. I Civ/Hög-ingjörskurs ges U, 3,4 eller 5.
Betygsskala
På kursen ges något av betygen U, G eller VG. Ingår kursen i en civil- eller högskoleingenjörsutbildning ges betygen U underkänd, 3,4 eller 5
Litteratur
Obligatorisk litteratur
- Författare/red: Rudoff, Andrew M.
- Titel: UNIX Network Programming Volume 1,
- Upplaga: Third Edition eller senaste upplaga
- Förlag: Pearson