Instructor | Announcements
| Course Info | Class Material
| Schedule | Project |
Grade | General Policy | Related
Links
CmpE 208 |
Network
Architecture and Protocols
|
Fall 2007
|
|
Instructor
Richard Sinn
Email: richardsinn@yahoo.com
Office Hours: After class, by appointment or email only
Richard Sinn has been teaching in the Computer Engineering and Computer Science
departments at San Jose State University since 1998. He also served as Adjunct
Professor at University of Minnesota. In addition to his teaching career, Richard
is the Security Architect at the Real Time Communication group at Yahoo! Inc.
Prior to this he held various senior positions at IBM, Oracle and different
Silicon Valley startup companies. Richard is an inventor and has filed over
ten invention disclosures (patents). He is also a frequent writer for various
magazines and journals, and a frequent speaker at regional and national technology
conferences.
Announcements
No Class today, Instructor sicks and cannot really speak well: Oct 29, 2007.
Add code:
Available when someone drops.
Class time:
Every Monday 7:00pm
Class room:
ENG339
Initial creation.
Environment
Please consider how you set up your evaluation environments - be it homework,
on-campus quizzes and exams, to minimize chances of (temptations to) cheating.
In particular:
During tests:
- Make sure there is plenty of space between students.
- Always proctor exams and tests, and preferably by sitting at the back of
the room rather than at the front. Do not leave the testing room during the
test. If you cannot proctor the class yourself, contact me and I will endeavor
to find a proctor for you.
- If the test is closed-book, require all backpacks to be zipped shut, all
PDAs, computers and phones to be handed in, and any access to either without
explicit proctor permission should be an immediate F in the class.
For homework: We have started using on-line support systems to catch cheaters.
So I would very strongly urge you:
- For code assignments: Run them all through MOSS
- For essays etc: Run them all through turnitin.com (SJSU has a site subscription,
I have been told.)
- Make sure individual contributions are ensured in team projects. This can
be done through various means: Sign-offs, quizzes on the content of common work,
etc.
Remember: A grade reflects an evaluation of the individual student's achievements.
Your evaluation system has to reflect that objective.
Course Information
Objectives
Implementation of protocols in current practice. TCP/IP, domain name systems,
interactive data flow and network management protocols. Topics will cover FTP
as well as NFS protocols. Prerequisite: CMPE 206 or instructor consent. Misc/Lab:
Lecture 2 hours/lab 3 hours. This semester is an advanced survey class with
network protocols. If you are into learning new things quickly, and have a sense
of adventure, this class is for you. Topics could include:
- ARP
- RARP
- BOOTP
- DHCP
- IP
- IP routing
- IGMP
- UDP
- TCP
- rlogin
- telnet
- SNMP
- Security Concepts Introduction
- PKI Introduction
- Network Architecture Introduction
- HTTP
- BitTorrent
- ICE
- FTP
- DNS
- NFS
- Network Authentication
- Kerberos
- SSL/TLS
- VPN
- OCSP
- IKE
- IPSEC
- LDAP
- DHCP
Lab
Lab will be provided in the same room as the lecture. Various materials will
be used. Group discussion, presentation, tools demo, protocol demo, etc. Detail
of the lab will be presented in each class.
Grading
Apart from big term project(s) and presentation, there are homework assignments,
a mid-term exam and a final exam. Some exams might be take-home. The weightings
for grading are: Term Project(s) 40%, Homework/Lab 20%, Midterm 10%, Final Exam
10%, and Team Presentation 20%.
No Late Assignment Submission
Policy Info
University, College, or Department Policy Information
a. Academic integrity statement (from Office of Judicial Affairs): “Your own
commitment to learning, as evidenced by your enrollment at San José State University,
and the University’s Academic Integrity Policy requires you to be honest in
all your academic course work. Faculty members are required to report all infractions
to the Office of Judicial Affairs.
b. Campus policy in compliance with the Americans with Disabilities Act: “If
you need course adaptations or accommodations because of a disability, or if
you need special arrangements in case the building must be evacuated, please
make an appointment with me as soon as possible, or see me during office hours.
Presidential Directive 97-03 requires that students with disabilities requesting
accommodations must register with DRC to establish a record of their disability.”
c. Policies or information required by the department, or college with which the
class is associated.
Class Material
Lecture Notes
Textbook:
Non-Textbook: Reading material will be online on this web site before every
lecture. Please email sinn@openloop.com if you experience any download problem.
Reading this semester:
- HTTP: http://www.w3.org/Protocols/, ftp://ftp.isi.edu/in-notes/rfc2616.txt
- FTP: http://www.ietf.org/rfc/rfc0959.txt
- BitTorrent: http://www.bittorrent.com/protocol.html
- DNS: http://www.faqs.org/rfcs/rfc1035.html, http://www.faqs.org/rfcs/dns-rfcs.html
- IKE: http://www.ietf.org/rfc/rfc2409.txt
- IPSEC Intro: http://www.cisco.com/univercd/cc/td/doc/product/ismg/policy/ver23f/ipsec/ch01.htm
- XKMS: http://www.w3.org/TR/2005/REC-xkms2-20050628/
- ICE: http://www.w3.org/TR/1998/NOTE-ice-19981026
- LDAP: http://www.faqs.org/rfcs/rfc2251.html
- OCSP: http://www.faqs.org/rfcs/rfc2560.html
- SSL/TLS: http://wp.netscape.com/eng/ssl3/draft302.txt
- DHCP: http://rfc.net/rfc2131.html
- NFS: http://www.faqs.org/rfcs/rfc1813.html
- Kerberos: http://web.mit.edu/kerberos/www/
Reference
Pick one of the references for term paper. Please spend the time to
read and actually reseach (program) into the topics. The class expects
a high quality research paper, not some collection of combined internet
web pages ...
Full
Reference List is here
|
|
Schedule
Aug 27, 2007-Mon
Sept 3, 2007-Mon:
Sept 5 Last Day to Drop Courses Without an Entry on Student's Permanent
Record
Sept 10, 2007-Mon:
Sept 12 Last Day to Add Courses & Register Late
Sept 17, 2007-Mon:
- DNS: http://www.faqs.org/rfcs/rfc1035.html, http://www.faqs.org/rfcs/dns-rfcs.html
- DNS
Notes
- Homework 1
- Project Description
Sept 24, 2007-Mon:
- Web Cookie
- DNSSec
- TSIG
- HTTP: http://www.w3.org/Protocols/, ftp://ftp.isi.edu/in-notes/rfc2616.txt
- HTTP Notes
- Cookie Notes (in lecture)
- STUDENT: GROUP PROJECT ?
- TCP/IP ARP / RARP
- Homework 1 Due
Oct 1, 2007-Mon:
Oct 8, 2007-Mon:
Oct 15, 2007-Mon:
- LDAP Protocol (http://www.ietf.org/rfc/rfc2251.txt, http://www.mozilla.org/directory/standards.html)
- LDAP preso, Ch 10 of SST
- Mid-term Info
- Team Presentation Path Finders: WTP Report,
ppt
Oct 22, 2007-Mon:
Oct 29, 2007-Mon:
- Join up the group http://groups.yahoo.com/group/profsinngroup/
to keep in touch for jobs, info, etc.
- Project Part I Due
- SSL / IPSec
- Tunneling (ATMP, L2F, L2TP, PPTP)
- Wireless Authentication Protocols
- Attendance will provide you extra credit!
- Homework 3
Nov 5, 2007-Mon:
- Class start at 7:00pm starting this week until the end of the semester.
- ARP / AH / ESP / Routing
- SSL
- DHCP / BOOTP
- IP / Routing
- Kerberos
- UDP/TCP
- Team Presentation VeriSecure: ICE Report,
Preso
- Team Presentation XIAN: SNMP Report,
Preso
- Team Presentation Unison: Socks Report,
Preso
Nov 12, 2007-Mon:
- Veteran's Day - Campus Closed
Nov 19, 2007-Mon:
Final and Presentation
Nov 26, 2007-Mon:
Dec 3, 2007-Mon
- Group Presentation
- Bubble Evaulation
- Project Presentation Schedule (Posted!)
- Project Final Part Due
- EMAIL ME for Master Project 295A - We can talk during the break.
DUE end of day - Dec 6, 2007-Thursday
-
- Final - Take home - No Class - Instructor in Hong Kong :)
- EMAIL ME for Master Project 295A - We can talk during the break.
|
|
Term Project
Background Info
Java security technology provides the developer with a comprehensive security
framework for writing applications, and also provides the user or administrator
with a set of tools to securely manage applications. For authentication and
authorization, Java Authentication and Authorization Service (JAAS) is the core
of the framework. JAAS can be used for two purposes:
- Users authentication - to reliably and securely determine who is currently
executing Java code, regardless of whether the code is running as an application,
an applet, a bean, or a servlet
- User authorization - to ensure they have the access control rights (permissions)
required to do the actions performed.
JAAS implements a Java version of the standard Pluggable Authentication Module
(PAM) framework. JAAS authentication is performed in a pluggable fashion. This
permits applications to remain independent from underlying authentication technologies.
New or updated authentication technologies can be plugged under an application
without requiring modifications to the application itself.
Read chapter 1, 5, 6, 7 of the textbook. Read them in order to obtain the full
picture.
Descripton
As a network protocol expert, your team is hired to implement the next generation
authentication and authorization framework for the company. JAAS is the nature
choice. As a team, you have to decide the following:
- Select 3 to 4 authentication protocol to develop within in the framework
( Examples of protocols are LDAP, RADIUS, TACACS+, Kerberos, NTLM, etc. )
- For each protocol, develop a fully working client and server pair (using
open source).
- Integrate the client piece ofo each protocol implementation into a JAAS
PAM Module.
- Develop a demo application that will illustrate the inner working of your
JAAS framework
(Examples of demo apps are web based library application, authentication for
VPN network, authentication for desktop sharing app, etc.)
Grading
Project team has to decide on various issues such as:
- Which protocol to pick?
- What specific part of the protocol to implement or use open source?
- How much programming the group should do?
- Should open source programming be used in the project?
- What type of demo app should be developed?
- What extra features should be implemented in the project?
- What about ... etc, etc ...
As the whole class will be working on similar projects, relative grading will
be used. In other words, all the projects will be ranked within the class and
points will be assigned accordingly. There are two parts in the project:
- Part I: Requirement Analysis and Design 33%
- Part II: Final report and/or Implementation 67%
Handin
Project Part I consists of a document includes the following:
- Detail project plan. The list of features and functions should be included
in the project.
- Schedule and division of work among team members
- Prototype results
Project Final Part will be covered later in class
Final Word of Warning
This is not an "easy" class and the project is an essential part
of the overall grade. People who did not deliver the project well enough could
really hurt their grade as the project contains more than 40% of the overall
grade.
Avoid:
- Forming group late
- Changing group in the middle of the semester
- Start late and rush any part of the project
- Form a group of less than 4/5 people
- Not enough extra features if the group is more than 5 people
- Did the final integration of the project late
- Do not do enough testing
- All but actually one person in the group does all the programming (No, people
do not get lucky and teammate will complain...)
Team Research Presentation (Lab)
Each team will be given one topic to research and present during the
semester. Mid-term and final will contain some questions related to the topics
presented. The team needs to prepare the following:
- PowerPoint Presentantion of the topic
- A 5 short-paper with detail reference on the topic
- Perform face-to-face presentation in class (15 min)
- The following are the topics:
- RFID network protoco
- SMTP
- SNMPl
- SSH
- SCP
- Kerberos
- Radius
- Network Intrusion Detection
- SOAP
- UDDI
- XKMS
- NAT
- EAP
- IPX/SPX
- POP3/IMAP4
- BGP
- EGP
- IGP
- RIP
- OSPF
- Socks
- More tables from TCP/IP suite:
Data Link Layer |
ARP/RARP |
Address Resolution Protocol/Reverse Address |
DCAP |
Data Link Switching Client Access Protocol |
Network Layer |
DHCP |
Dynamic Host Configuration Protocol |
DVMRP |
Distance Vector Multicast Routing Protocol |
ICMP/ICMPv6 |
Internet Control Message Protocol |
IGMP |
Internet Group Management Protocol |
IP |
Internet Protocol version 4 |
IPv6 |
Internet Protocol version 6 |
MARS |
Multicast Address Resolution Server |
PIM |
Protocol Independent Multicast-Sparse Mode (PIM-SM) |
RIP2 |
Routing Information Protocol |
RIPng for IPv6 |
Routing Information Protocol for IPv6 |
RSVP |
Resource ReSerVation setup Protocol |
VRRP |
Virtual Router Redundancy Protocol |
Transport Layer |
ISTP |
|
Mobile IP |
Mobile IP Protocol |
RUDP |
Reliable UDP |
TALI |
Transport Adapter Layer Interface |
TCP |
Transmission Control Protocol |
UDP |
User Datagram Protocol |
Van Jacobson |
compressed TCP |
XOT |
X.25 over TCP |
Session Layer |
BGMP |
Border Gateway Multicast Protocol |
Diameter |
|
DIS |
Distributed Interactive Simulation |
DNS |
Domain Name Service |
ISAKMP/IKE |
Internet Security Association and Key Management Protocol and Internet
Key Exchange Protocol |
iSCSI |
Small Computer Systems Interface |
LDAP |
Lightweight Directory Access Protocol |
MZAP |
Multicast-Scope Zone Announcement Protocol |
NetBIOS/IP |
NetBIOS/IP for TCP/IP Environment |
Application Layer |
COPS |
Common Open Policy Service |
FANP |
Flow Attribute Notification Protocol |
Finger |
User Information Protocol |
FTP |
File Transfer Protocol |
HTTP |
Hypertext Transfer Protocol |
IMAP4 |
Internet Message Access Protocol rev 4 |
IMPPpre/IMPPmes |
Instant Messaging and Presence Protocols |
IPDC |
IP Device Control |
IRC |
·Internet Relay Chat Protocol |
ISAKMP |
Internet Message Access Protocol version 4rev1 |
ISP |
|
NTP |
Network Time Protocol |
POP3 |
Post Office Protocol version 3 |
Radius |
Remote Authentication Dial In User Service |
RLOGIN |
Remote Login |
RTSP |
Real-time Streaming Protocol |
SCTP |
Stream Control Transmision Protocol |
S-HTTP |
Secure Hypertext Transfer Protocol |
SLP |
Service Location Protocol |
SMTP |
Simple Mail Transfer Protocol |
SNMP |
Simple Network Management Protocol |
SOCKS |
Socket Secure (Server) |
TACACS+ |
Terminal Access Controller Access Control System |
TELNET |
TCP/IP Terminal Emulation Protocol |
TFTP |
Trivial File Transfer Protocol |
WCCP |
Web Cache Coordination Protocol |
X-Window |
X Window |
Routing |
BGP-4 |
Border Gateway Protocol |
EGP |
Exterior Gateway Protocol |
EIGRP |
Enhanced Interior Gateway Routing Protocol |
HSRP |
Cisco Hot Standby Router Protocol |
IGRP |
Interior Gateway Routing |
NARP |
NBMA Address Resolution Protocol |
NHRP |
Next Hop Resolution Protocol |
OSPF |
Open Shortest Path First |
TRIP |
Telephony Routing over IP |
Tunneling |
ATMP |
Ascend Tunnel Management Protocol |
L2F |
The Layer 2 Forwarding Protocol |
L2TP |
Layer 2 Tunneling Protocol |
PPTP |
Point to Point Tunneling Protocol |
Security |
AH |
Authentication Header |
ESP |
Encapsulating Security Payload |
TLS |
Transport Layer Security Protocol |
Grade
Email sinn@openloop.com to check your grade if necessary.
General Policy
The university and departmental policies and deadlines for course drop will
be applied. Makeup exams cannot be offered, except under exceptional conditions,
such as documented serious illness/accident, etc., and only at the professor's
discretion.
Each student is responsible for his/her individual assignment, and must not
copy anyone else's work. Students who borrow solutions from others will find
themselves unable to pass the course. The minimum penalty for every student
involved in the duplication of individual assignments or exams will be receiving
a zero score on the submitted work.
For group project, all the work has to be done by your OWN group. Do not try
to download "free code" from the Internet and hand in as a project. WE WILL
FIND OUT. Do not share your work with others. So DO YOUR OWN WORK and EARN your
grade.
Related Links
- Past Class Grading and Info
- Software Engineering Institute
- Special Interest Group on Software Engineering (SIGSOFT)
|
|
- IBM San Francisco Project
- Object Management Group
- Rational Software Corporation
- http://www.protocols.com/pbook/tcpip1.htm
|
Richard's Recent Articles
- Identity
Management with Provisioning, Oblix, Inc.
- Certificate
Management System, Oblix, Inc.
- Understanding
Public Key Infrastructure, IBM Developer Toolbox
- XML
By Example, IBM Developer Connection Magazine.
- Going
Remote: Mobilizing R5 Users, Domino Professional Magazine.
- Universal
Database Integration: he Sky is the Limit, Midrange Computing.
- Enhance
Business Intelligence with Data Replication Solution, AS/400 Technology
Journal.
- Deliver
Data Where You Need It: A Replication Solution for Windows NT,
IBM Developer Connection Magazine.
- Building
Java Apps with Lotus eSuite DevPack, Part II: DevPack in Action,
Domino Professional Magazine.
- Building
Java Apps with Lotus eSuite DevPack, Part I: DevPack Overview, Domino
Professional Magazine.
- AS/400's
NetWare Integration Adds TCP/IP Support, NEWS/400.
- Take
the Java Plunge, Midrange Computing.
- Consolidate
Your Network with Novell-AS/400 Integration, Midrange Computing.
- Configuring
and Administering Lotus eSuite WorkPlace, NEWS/400.
- Lotus
eSuite WorkPlace: Business Tools for Network Computing, NEWS/400.
- AS/400
and NetWare: Together the better since V3R7, NEWS/400
|
Instructor | Announcements
| Course Info | Class Material
| Schedule | Project |
Grade | General Policy | Related
Links