The Complete List of Quizzes:
These quizzes may be taken in any order, but the instructor may start
sending you mail if you haven't passed the quiz within two weeks of
release.
- HTTP, HTML, and Socket Programming.
Released August 31.
- Network Basics. Released September 14.
- Ethernet. Released September 28.
- ATM. Released October 5.
- Networking Layer. Released October 26.
- Transport Layer. Released November 9.
- Application Layer. Released November 16.
- Networking Acronyms. Released November 16,
but covering a lot of the course until now.
- Fundamental Networking Ideas.
Released November 30.
All quizzes are closed book, closed notes, no www, and no co-operation
(you are not allowed to discuss any quiz question with anybody who
hasn't already passed that quiz). Each quiz has 5 questions. You
have 5 minutes to answer all 5 questions. If you take more than 5
minutes or if you fail the quiz, you may try again, but must wait at
least 23 hours before the quiz server will let you try again. Missing
one or more questions means you fail the quiz.
Structure
It is recommended that you try and take a quiz as soon as you have
covered the relevant material, to see if you are comfortable with what
you have learned. You may take a quiz as soon as it is available.
Some quizzes are easier than others.
You may take a quiz as many times as necessary, until you pass.
If you have taken a quiz and failed, you must wait 23 hours to take it
again. Each time you take a quiz is logged and recorded, but I plan
to use the logs only to debug the quiz server and to check for
intrusions -- for grading, I will only use information about passing
the quiz.
Some questions are mathematical in nature. If you like, you are
welcome to use paper, writing instruments, and/or a calculator to
answer these questions.
Uptime
If you try to take the quiz but the quiz server is not responding,
please notify the instructor.
Passwords
Before taking the first quiz, you must email an alphanumeric password
to the instructor, who will enter
you into the user database. After you get the instructor's reply, you
will be able to take quizzes (please allow at least 48 hours for this
exchange). The instructor will also be able to change a password if
necessary, though the process may take about a week while the
instructor confirms your identity.
The instructor will only accept passwords from students who are
registered for the course.
Since all passwords are sent in the clear (by email to the
instructor, and over HTTP when you take a quiz) and visible to the
instructor, please select a password that is not a high grade secret.
It would be a bad idea to send me any password you use to access your
money, for example. The password should also be non-obvious if
possible.
Security
I have written the quiz code myself. I believe it to be
reasonably secure, but I would not be surprised if there were bugs in
it. If you are bored with the regular assignments and wish to
challenge yourself by trying to break the code, you are welcome to
try, with the exceptions listed below.
Ways of breaking the quiz code that don't count:
- Exhaustive password search. The quiz code is designed to shut
down after too many wrong passwords are entered. This just makes it
inconvenient for everyone, without getting you into the quiz server.
- Denial of service attacks. Again, this would not get you into
the quiz server, and would inconvenience your colleagues.
- Breaking into the server machine (by any means other than by
attacking the quiz server itself). I believe this falls outside of
the "acceptable use policy" that applies to UH students, and might
even get you kicked out of the University. You are only allowed to
attack the quiz server software itself, and specifically only the two
TCP ports that the quiz server listens on. If the quiz server should
let you into the server machine, that is a successful break-in, but
attacking any other part of the machine (any other port) will be
subject to the usual penalties.
- Password sniffing. I am aware of the insecurity of the passwords.
Also, sniffing the passwords would require you to do other things that
are against the acceptable use policy.
- "Social Engineering". Tricking the instructor or your colleagues
requires no technical skill. Any of the cheating behaviors
described in the next section are also prohibited.
- Learning a way of breaking the quiz code from somebody else.
There is no point in rewarding someone else's technical skills.
If you do find ways of breaking into the quiz server, please
provide me with all the details necessary to reproduce the break-in
myself. Breaking in means not just finding bugs, but finding a bug
that will let you record that you've passed the quiz, without actually
taking the quiz. If I am able to verify your break-in, I will fix the
flaw (if possible) and you will no longer need to take the quizzes.
Cheating
For most of you, I probably have no way of checking that you do not
use books or other resources to take the quiz. Of course, I can
compare your quiz performance to your performance in the remainder of
the class and I may get suspicious if the two don't correlate. Please
be advised that I will take any indication of cheating extremely
seriously. Also be aware that, even if you are successful at
cheating, you are ultimately hurting yourself (and possibly your
fellow students) if you cheat. The quizzes are designed to be only
moderately challenging, though some questions may be hard. If you
find that they are very hard for you, please contact the instructor for additional assistance.
Cheating includes all of the following:
- Telling someone else about the contents of a quiz
- Asking someone else about the contents of a quiz
- Using any external resource (other than paper, pen/pencil, and
calculator) to answer the questions
- Revealing your password to anyone else
Other behaviors may also be considered cheating -- please use your
common sense and do not collaborate with others for these quizzes.
The instructor is happy to answer
questions if you are not sure whether or not a specific (or
theoretical) behavior might or might not constitute cheating.