CS2911
Week 4 Lab
Today
Hand out Lab 5 Checklist
Review Muddiest Point
Questions on Lab 4?
Introducing Lab 5
Muddiest Point on Lab
Next week's Lab:
Quiz 3: HTTP
CS2911
Dr. Yoder
1
Muddiest Point 3-2 && 3-3
Why can't the different types of data have unique
types in Python? Doesn't it force checks for the actual Encoding in
type something is? And doesn't it force some amount of Python: Why
try/catch to prevent data type mistmatches.
multiple types?
NO MORE DAD JOKES
re jokes
Does 0d0a signify a new portion of the response every
time it is found in the byte dump? i.e. Can the body
0d0a in HTTP
portion have multiple lines?
body
Are we going to be working on this exercise we got
today in class next time?
Exercise
Will Monday's quiz be mostly about coding bytes in
Python?
Quiz
What practice/study would you recommend to
supplement class work?
study advice
2
Muddiest Point 3-2 && 3-3
how do you know which thing in wireshark to check.
after you filter theres the list
I wish we could have done some of the examples from
the practice quiz together as a class. instead of you
telling us how, but us not knowing if we are 100% right
No muddy points today
The punchline often arrives before the set-up. Do you
know the problem with UDP jokes?
Large discussion:
http://stackoverflow.com/questions/152457/what-isthe-difference-between-a-port-and-a-socket
CS2911 Dr. Yoder
Wireshark &
HTTP
examples and
answers
none
joke
Port vs. Socket
3
Port vs. Socket
See text, section 3.2 (7th ed)
A socket is like a door through which data
passes.
A port number is like the number on the door
A socket is an object in the running program that
you can use to send and receive data (or, in the
case of a listening port, to accept a new
connection)
A port number is just a number – the address of
the program within the machine
"Port" is just an abbreviation of "port number"
4
Muddiest Point 4-1
What does the different encodings do when sending
information over the network?
Is there a way to search the contents of packets in
Wireshark? Like ctrl+f? [http://bit.ly/2cSF9tJ says: Edit >
Find Packet]
Network
encodings
Wireshark
search
not sure how to handle the size of receive messages in
TCP
recv() size
Will we be going over the Python code required to send Coding a
HTTP requests to a website?
protocol sender
HTTP response
A good model for the HTTP response format
format?
The host vs. location part of the standard headers
section is unclear. I don't know where to find the
information.
HTTP headers
CS2911 Dr. Yoder
5
This is fine, everything is fine.
none
Muddiest Point 4-1
How exactly do we determine transfer-encoding or
content-encoding? What is it we are looking for?
Protocols (like http) are understandable. Coding a
protocol reader in Python (as opposed to Java) will be
the challenge.
Are exercises in class graded? Will there ever be a
exercise packet we get in class that you plan on
collecting and grading, and if there is will you tell us it is
graded when we get it?
Really confused about what the third quiz question was
asking
A multicast packet walks into a bar and leaves by four
different exits at the same time
It seemed relatively simple, am iCS2911
missing
Dr. Yoder something?
HTTP headers
Coding a
protocol reader
Are exercises
graded?
Question 3 on
Quiz 2
joke
none
6
TCP connection
listen_socket.bind((listen_host,listen_port))
What python type is (listen_host,listen_port)?
listen_host can be empty string ('') to listen
on all interfaces
department offices example
Instead of data_socket.recv(…), simply
use the next_byte calls you already
have in your Lab 3 code.
CS2911 Dr. Yoder
7
Questions about Lab 4?
TCP implementation?
Extension to sending multiple files?
Lab checklist / requirements?
…
CS2911 Dr. Yoder
8
Marking the end of the
message
Content-Length
Gives length from start
Sender must know length
from start
Simpler to receive
Chunking
Doesn't say message is
done until end
Sender doesn't have to
know length until done
Receiver must parse
multiple "chunks"
CS2911 Dr. Yoder
9
Questions about Lab 5?
HTTP request / response format
How to implement the parser
CS2911 Dr. Yoder
10
CS2911 Dr. Yoder
11
Acknowledgement
This course is based on the text
Computer Networking: A Top Down
Approach
7th edition
Jim Kurose, Keith Ross
Addison-Wesley
12
© Copyright 2026 Paperzz