70 likes | 221 Views
Welcome to CIS 235. Computer Networks Fall, 2007 Prof Peterson. The Big Homework. I want to see a status report by Friday. I’ll assign a grade (15% of the total) based on your progress on Friday. The Transport Layer. What are the two main issues addressed in this layer?
E N D
Welcome to CIS 235 Computer Networks Fall, 2007 Prof Peterson
The Big Homework I want to see a status report by Friday. I’ll assign a grade (15% of the total) based on your progress on Friday.
The Transport Layer • What are the two main issues addressed in this layer? • What is the difference between “physical communication” and “logical communication”? • What is a segment? • Do routers work at the transport layer? • What are the service models underneath TCP / UDP? • How is IP unreliable? • What is the difference between a system and a process in terms of delivery? • What is multiplexing?
Multiplexing • Where does transport layer muxing occur? • What does a packet contain to support muxing? • What’s special about ports 0 to 1023? • Why is there a source port # in a packet? • Why is it important that the operating system do port multiplexing on TCP applications? • What is “port number inversion” all about? • What is “port scanning”? • What happens when you establish a multiple client connections to the same server port?
UDP • How would you design a UDP based application? Would you need threads? • What is a “real-time” application? • What applications typically use UDP? • Why would it be bad to send large files over UDP? • What is a checksum? • What is the probability that a corrupted packet will not be detected by a checksum problem? • What does UDP do if there is a checksum error? • How large can a UDP packet be?
Capturing A UDP Packet Time to put my money where my mouth is! Can I figure out the structure of a UDP packet captured by Wireshark? Here’s the binary: 0000 00 04 23 a7 a2 d1 00 13 02 5a ec 97 08 00 45 00 ..#..... .Z....E. 0010 00 36 a8 cd 00 00 80 11 76 93 c0 a8 46 9b 0a 01 .6...... v...F... 0020 0a 12 04 01 00 35 00 22 50 4f db 9f 01 00 00 01 .....5." PO...... 0030 00 00 00 00 00 00 04 62 6c 61 68 03 65 64 75 00 .......b lah.edu. 0040 00 01 00 01 Things to note: • The first 34 bytes are the IP level packet header. We’ll ignore this for now. • Starting at 0022, the UDP packet. • Source port = 1025 (0401), destination port = 53 (standard DNS port) • Length = 34 (22 hex) : note that each line is 10 hex and there are 2 extras • No way am I going to verify the checksum! (504f) • You need to understand DNS to interpret the body (db9f = ID, a thing to recognize responses with, QR = 0 – a question, OPCODE = 1 - standard query, RD = 1, QDCount = 1, QType = 1 (Host Address), QClass = 1 (Internet) See http://www.faqs.org/rfcs/rfc1035.html
Reliable Data Transfer • How does the “reliability” layer fit into the protocol stack? • What is the difference between “full duplex” and “half duplex” transfer? • What does the reliability layer have to do to add reliability to an unreliable connection? • How do the finite state machines in the book work? • What is rdt1.0 all about? • What else goes on in TCP besides the reliability stuff?