1 / 23

Introduction to Practical Course “Telematik”/Computer Networks

Introduction to Practical Course “Telematik”/Computer Networks. SS 2005 Dr. Xiaoming Fu Ingo Juchem Stephan Schröder. Agenda. Overview Topics. Goals. To further understand concepts of computer networks architecture, services and applications.

hank
Download Presentation

Introduction to Practical Course “Telematik”/Computer Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Practical Course “Telematik”/Computer Networks SS 2005 Dr. Xiaoming Fu Ingo Juchem Stephan Schröder

  2. Agenda • Overview • Topics SS 2005, fu@cs.uni-goettingen.de

  3. Goals • To further understand concepts of computer networks architecture, services and applications. • To develop demo/prototype implementations using such concepts and possibility contribute to open source community. • To learn how to organize a small development project and work in a team environment. • Finally, present the work and write down the report. SS 2005, fu@cs.uni-goettingen.de

  4. Policy • The course is practical oriented. Then, the main focus will be programming projects each associated with a presentation and final report. • 8 project candidates (although not highly restrict to), select one and 2~3 people as your project partners • 2 teaching assitants will help you with programming and some organizational issues SS 2005, fu@cs.uni-goettingen.de

  5. Covered topics The focus point of the course will be network systems, applications, services, covering the following topics: • Implementation and Unit Tests of a HTTP 1.0 Server • Implementation of an RTSP-based media player (client) & server with player controls • Scalable adaptive (reliable) publish/subscribe data distribution service • A P2P service application on Java’s P2P Framework JXTA with authorization support • Service discovery with dynamic attributes using .NET and J2EE • Prototype implementation: Trait-based authorization for SIP using SAML • Prototype implementation: Location based authorization and charging • Build a programmable firewall supporting both stateless and stateful packet filtering SS 2005, fu@cs.uni-goettingen.de

  6. Forms • Part 1: working towards a prototype implementation • Part 2: project report (about 10 pages) • Part 3: presentation of project design results: before the end of the semester • Part 4: release as open source Meetings and others: • Weekly meetings: Friday 14:00~ when necessary • Don‘t forget to register in studip • Don‘t forget to register in munopag • Normally you‘ll just get credits; tell me if you will need a grade SS 2005, fu@cs.uni-goettingen.de

  7. How to present • Summarize your main ideas beforehand, sketch your impressions about the overall idea and results • Decide which is the best idea in the paper • Write it down and justify with a line sentence • Figure out how to get your audience as quickly as possible to the point where they can understand this idea • Elaborate the idea in details • Background, approach, project resource allocation, implementation details, testbed and parameter setups, performance evaluation results, any open issues (benefits/difference over others) • Summary of the work in a short sentence SS 2005, fu@cs.uni-goettingen.de

  8. Project report coverage • Title • Abstract: a broad overview of the project, end with a short statement of the major results of your investigation • Introduction (or Motivation of the work): expands the abstract, get specific about your investigation, and give an overview of the project organization • Technical approach: what’s important idea of the work? Bring your reader to the method and why you utilized/relied which tools/platforms • Implementation details • Major results and explanation • Summary and future possible work along the direction SS 2005, fu@cs.uni-goettingen.de

  9. Project 1: Implementation and testing of an HTTP Web server • Should provide basic functionality • File-system-based, thread pooling HTTP 1.0 • No CGI support • MIME and HTTP status [1] through static configuration (file) • Perform unit tests with coverage > 80% • Functionality to be tested with common browsers such as Mozilla, IE, Lynx etc. • Programming language: C • Performance testing SS 2005, fu@cs.uni-goettingen.de

  10. Project 1 (cont.) • Re-use of existing C-libraries • Reference specifications: See RFC1945 [2] • Sample implementation: zjhttpd [3] • Approx. 2-3 people Resources: • RFC1945 • W3C http status codes http://www.w3.org/Protocols/HTTP/HTRESP.html • zjhttpd: http://www.zotteljedi.de/projects/zjhttpd/ SS 2005, fu@cs.uni-goettingen.de

  11. Project 2: RTSP media player • Client and server based on RTSP • Adaptive playback mechanisms for playback (allow for switching to lower-quality version when link is congested) • Show your results by streaming some media (audio or video) • Reference specifications: See RFC 2326 • Sample Implementation: vovidia's RTSP stack or Columbia University's sample implementation (no longer available?) • Approx. 2-3 people SS 2005, fu@cs.uni-goettingen.de

  12. Project 2 (cont.) Resource: • RTSP http://www.rtsp.org/ • RFC 2326 • http://www.vovida.org/ SS 2005, fu@cs.uni-goettingen.de

  13. Project 3: Scalable adaptive (reliable) publish-subscribe data distribution service over the Internet • In a publish-subscribe system, senders label each message with the name of a topic ("publish"), rather than addressing it to specific recipients. The messaging system then sends the message to all eligible systems that have asked to receive messages on that topic ("subscribe"). This form of asynchronous messaging is a far more scalable architecture than point-to-point alternatives such as message queuing, since message senders need only concern themselves with creating the original message, and can leave the task of servicing recipients to the messaging infrastructure. • Scalable adaptive data distribution means that the server has control over the data rates it is sending. Therefore it is able to adjust the upload speed to the number of clients it is serving. • The objective of this practikum is to develop an open source client-server architecture in Java which does right that. The client functinality should allow to compose, send, receive and decompose messages consisting of multiple data files. SS 2005, fu@cs.uni-goettingen.de

  14. Project 3 (cont.) Resources: • Java http://java.sun.com/j2se/ • Java IDE – Eclipse: http://www.eclipse.org/ • Javabook: http://www.javabuch.de/ • OpenSource-Java-Database: http://hsqldb.sourceforge.net/ SS 2005, fu@cs.uni-goettingen.de

  15. Project 4: Build a P2P service application on Java’s P2P Framework JXTA with authorization • JXTA™ technology is a set of open protocols that allow any connected device on the network ranging from cell phones and wireless PDAs to PCs and servers to communicate and collaborate in a P2P manner. JXTA peers create a virtual network where any peer can interact with other peers and resources directly even when some of the peers and resources are behind firewalls and NATs or are on different network transports. • JXTA objectives: • Interoperability: across different peer-to-peer systems and communities • Platform independence: multiple/diverse languages, systems & networks • Ubiquity: every device with a digital heartbeat • The objective of this project is to develop an open source demo P2P application with authorization support (e.g. authorized file-sharing) by applying the JXTA framework. SS 2005, fu@cs.uni-goettingen.de

  16. Project 4 (cont.) Resources: • Java http://java.sun.com/j2se/ • Java IDE - Eclipse http://www.eclipse.org/ • Javabook http://www.javabuch.de/ • JXTA http://www.jxta.org/ SS 2005, fu@cs.uni-goettingen.de

  17. Project 5: Implementation and evaluation service discovery with dynamic attributes using .NET & J2EE • There are many web services with dynamic attributes like online stook brocker, ebay auctions or printer request if the printer with the smalles queue is saught. This objective of this prakticum is to implement a simple service using .Net(C#) and J2EE(Java) and later compare the implementation aspects of both frameworks. Resources: • .Net http://msdn.microsoft.com/netframework/ • Java http://java.sun.com/j2ee/ • Java IDE – Eclipse http://www.eclipse.org/ • Javabook(chapter 46 RMI) http://www.javabuch.de/ • C#-Buch: http://www.galileocomputing.de/katalog/openbook?GalileoSession=43985043A1-vvD.Sk7Y • SSDN: Simple Service Discovery for .NET http://www.michaylov.com/spiro/ssdn/ssdn_overview.html SS 2005, fu@cs.uni-goettingen.de

  18. Project 6: Prototype Implementation:Trait-based Authorization for SIP using SAML • SIP is an application-layer control/signaling protocol for creating, modifying & terminating sessions with one or more participants. • Security Assertion Markup Language (SAML) is an XML extension for security information exchange that is developed by OASIS. • Trait- based authorization means a participant is authenticated using roles or traits instead of using its authenticated identity. • This project aims to provide a prototype implementation for the latest idea of using SAML in SIP to support trait-based authorization and contribute to open source • http://www.ietf.org/internet-drafts/draft-tschofenig-sip-saml-02.txt • In collaboration with Hannes Tschofenig (Siemens, Munich) SS 2005, fu@cs.uni-goettingen.de

  19. Project 6 (cont.) • SIP http://www.cs.columbia.edu/sip/ • SIP Open Source Implementation: http://www.vovida.org/ • SAML Open Source Implementation: http://www.opensaml.org/ • OASIS SAML: http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=security • SAML-SIP: • http://www.ietf.org/internet-drafts/draft-tschofenig-sip-saml-02.txt • http://www.tschofenig.com/ba-stuttgart/IA2005/SAML-SIP.ppt • http://www.ietf.org/internet-drafts/draft-ietf-sipping-trait-authz-01.txt SS 2005, fu@cs.uni-goettingen.de

  20. Project 7: Prototype Implementation:Location based Authorization and Charging • RADIUS is a popular AAA (authentication, authorization and accounting) protocol • It defines a number of attribute-value-properties (AVPs) for message exchange between a client and a server • there are several open source implementations • The work here is to prototype an idea on extending a few RADIUS attributes for carrying location objects and contribute to open source community • http://www.ietf.org/internet-drafts/draft-ietf-geopriv-radius-lo-02.txt • Purpose: Provide location based authorization, charging, billing and taxation • In collaboration with Hannes Tschofenig (Siemens, Munich) SS 2005, fu@cs.uni-goettingen.de

  21. Project 7 (cont.) Resources: • FreeRadius: http://www.freeradius.org/ • http://www.ietf.org/internet-drafts/draft-ietf-geopriv-radius-lo-02.txt • http://www.tschofenig.com/geopriv/IETF59/Location-Information-in-Radius-IETF59.ppt • http://www.tschofenig.com/geopriv/IETF61/Carrying_Location_Objects_in_RADIUS-IETF61.ppt • RFC 2865, 3576 SS 2005, fu@cs.uni-goettingen.de

  22. Project 8: Programmable Firewall • Stateless and stateful packet filtering • Stateless: filter according to protocol and/or port • Stateful: filter dynamically after session setup (use soft states for timers) • Kernel module suggested • Example Implementation: Uni Zürich's SINUS firewall • Allow for possible interaction with IETF's NSLP NAT/FW protocol • Programming language: C • Approx. 3-4 people • In collaboration with Hannes Tschofenig (Siemens, Munich) SS 2005, fu@cs.uni-goettingen.de

  23. Project 8 (Cont.) Resources: • “Sinus firewall”,http://www.ifi.unizh.ch/ikm/SINUS/ firewall/ • http://www.tmg.informatik.uni-goettingen.de/research/signet/draft-ietf-nsis-nslp-natfw-05.txt SS 2005, fu@cs.uni-goettingen.de

More Related