lu.se

Datavetenskap

Lunds Tekniska Högskola

Denna sida på svenska This page in English

Föreläsningar

Här hittar du en kort beskrivning av vad som behandlades/planeras behandlas under de olika föreläsningarna tillsammans med referenser till relevanta avsnitt i kurslitteraturen. Overheadbilderna från föreläsningarna kommer även att finnas tillgängliga här och de läggs normalt upp senast samma dag som föreläsningen genomförs. Planeringen är preliminär.

Föreläsning 1 (20/3)

Innehåll: Kursintroduktion. Nätverksbegrepp. Protokoll. Meddelandesändning med UDP. Multicast.

Java Network Programming: 1-45,150-176,423-457,470-492

Föreläsning 2 (21/3)

Innehåll: Java I/O - strömmar. Meddelandesändning med TCP. Icke-blockerande I/O.

Java Network Programming: 67-104, 275-341, 384-422

Föreläsning 3 (10/4)

Föreläsning 3 (10/4)

Innehåll: Trådar (threads)

Java Network Programming: Chapter 5, pages 105-149.

Föreläsning 4 (11/4)

Innehåll: Mera om TCP. Protokoll och serverarkitektur.

Java Network Programming: 346-362, 384-422

Föreläsning 5 (17/04)

Föreläsning 5 (17/04)

Innehåll: URL and HTML

Java Network Programming: Chapter 7, pages 184-222, Chapter 8, pages 248-266.

Föreläsning 6 (18/04)

Föreläsning 6 (18/04)

Innehåll: XML, XML och Java, parsning av XML.

Föreläsning 7 (24/4)

Innehåll: Webbapplikationer 1 - CGI, servlets, JSP.

Java Network Programming: 46-66, 99-100 (PrintWriter)

Core Servlets and Java Server Pages - Bok om servlets/JSP tillgänglig gratis via nätet. Minimal läsanvisning (övrigt översiktligt och efter intresse/behov):

  • Kap.1: 1-1.4
  • Kap.3: 3-3.3
  • Kap.8: 8-8.5
  • Kap.9: 9-9.1
  • Kap.10: Hela, utom 10.5
  • Kap.11-13: översiktligt

Övrigt:

Föreläsning 8 (25/4)

Innehåll: Webbapplikationer 2 - PHP, JavaScript.

Länkar:

Föreläsning 9 (2/05)

Föreläsning 9 (2/05)

Innehåll: Remote Method Invocation (RMI)

Java Network Programming: Chapter 18, pages 610-640

Föreläsning 10 (15/05)

Föreläsning 10 (15/05)

Innehåll: Strömmande media.

  • Overheadbilder
  • Links to useful documents:
    • Streaming standards:
      • Real-time transport protocol (RTP) and RTP control protocol (RTCP): RFC 3550 and 3551.
      • RTP payload types and parameters
      • Real-time streaming protocol (RTSP): RFC 2326
      • Session initiation protocol (SIP): RFC 3261
      • Session description protocol (SDP): RFC 4566
      • Overview of MPEG
    • Streaming applications:
      • Unreeling Netflix by Adhikari et al. A Description of the Netflix architecture. [pdf].
      • Spotify: Large Scale, Low Latency, P2P Music-on-Demand Streaming by Kreitz and Niemelä. [html].
    • SIP:
      • Sailfin: a SIP application server.
  • Optional programming assignment:
    • An interesting programming assignment to develop a RTP streaming server that you may want to carry out. The page contains a partial Java implementation that you have to complete. This optional assignment could be of interest if you want to deepen your knowledge of streaming media.
    • And a solution by Sumit Khanna for hasty readers...
Föreläsning 11 (16/05)

Föreläsning 11 (16/05)

Innehåll: Webbprotokoll och webbarkitekturer.

Java Network Programming: Chapter 15

  • Overheadbilder
  • Optionally, you may read Chapters 16 and 17 on protocol and content handling. Protocol and content handling will not be part of the examination program however.
  • Documents:
    • The URL constructor that outlines how protocols and content are handled
    • The URLConnection class
    • The MIME specifications, part I (RFC 2045) and II (RFC 2046)
    • Trivial file transfer protocol (TFTP): RFC 783
    • JAX-RS: The Java API for RESTful Web Services, JSR 311
    • Jersey, an open source, reference implementation for building RESTful Web services.
  • The programs shown in the lecture [zip].