Introduction to Seminar "Advanced Topics on Computer Networking"
-
Upload
sandra4211 -
Category
Documents
-
view
2.805 -
download
1
description
Transcript of Introduction to Seminar "Advanced Topics on Computer Networking"
Telematics groupUniversity of Göttingen, Germany
Introduction to Practical Course “Telematik”/Computer Networks
SS 2005
Dr. Xiaoming Fu
Ingo Juchem
Stephan Schröder
2SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
Agenda
• Overview• Topics
3SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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.
4SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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
5SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
Covered topicsThe focus point of the course will be network systems, applications, services,
covering the following topics:
1. Implementation and Unit Tests of a HTTP 1.0 Server
2. Implementation of an RTSP-based media player (client) & server with player controls
3. Scalable adaptive (reliable) publish/subscribe data distribution service
4. A P2P service application on Java’s P2P Framework JXTA with authorization support
5. Service discovery with dynamic attributes using .NET and J2EE
6. Prototype implementation: Trait-based authorization for SIP using SAML
7. Prototype implementation: Location based authorization and charging
8. Build a programmable firewall supporting both stateless and stateful packet filtering
6SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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
7SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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
8SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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
9SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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
10SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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/
11SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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
12SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
Project 2 (cont.)
Resource:
• RTSP http://www.rtsp.org/ • RFC 2326 • http://www.vovida.org/
13SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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.
14SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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/
15SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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.
16SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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/
17SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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
18SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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)
19SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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
20SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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)
21SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
Project 7 (cont.)
Resources:• FreeRadius: http://www.freeradius.org/• http://www.ietf.org/internet-drafts/draft-ietf-geopriv-ra
dius-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
22SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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)
23SS 2005, [email protected]
Telematics groupUniversity of Göttingen, Germany
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