90 likes | 189 Views
Homework #6 KENS KTCP unreliable mode. 2005 Spring CS441 TA: Hyunju Jin (hyunju@nclab.kaist.ac.kr). Objective. To let students implement TCP functions to support a reliable transmission. What to do1. Assumptions:
E N D
Homework #6KENS KTCP unreliable mode 2005 Spring CS441 TA: Hyunju Jin (hyunju@nclab.kaist.ac.kr) Korea Advanced Institute of Science and Technology Network Computing Laboratory
Objective • To let students implement TCP functions to support a reliable transmission
What to do1 • Assumptions: • Unreliable mode: network layer drops some packets or delays delivering some packets
What to do2 • Implement ktcp.c • Make it work like rdt3.0 from textbook • Sequence number, acknowledge number • Sliding windows (Go-Back-N) • Flow-control (advertised window size) • Timer, time-out (use estimated-RTT) • Retransmission • AIMD (congestion window)
How to test your implementation • Modify your configuration file • Add the red line in configuration file • Example: svr.conf file [KENS] server_name=svr udp_port=9150 tcp_port=9151 log_level=ip_layer,tcp_layer,sock,link_layer unrelable=true default_route=10.0.0.1 [seth0] address=10.0.0.2 netmask=255.255.255.0 • Run KENS with modified configuration file
Schedule • First Q&A session(7:00pm on Wed, 2005/6/1) • Sequence number, acknowledge number • Sliding windows (Go-Back-N) • Flow-control (advertised window size) • Second Q&A session(7:00pm on Wed, 2005/6/8) • Timer, time-out (use estimated-RTT) • Retransmission • AIMD (congestion window) • Due: midnight on Tue, 2005/6/14
Deliverables • Program source code • ktcp.h, ktpc.c (with comments) • Documents • The brief description of what your KTCP functions are for • The brief verbal mechanisms of how this functions works • The technical challenges you’ve faced in this assignment • Any KENS bugs or comments for KENS improvement • To hyunju@nclab.kaist.ac.kr • Subject of your email must be[cs441]KENS#2 student ID • Due: midnight on Tue, 2005/6/14 • No late turn-ins • Partial credits to incompletes
Evaluation • All students will demonstrate to TAs • Explain your ktcp functions • Run your example KENS application • Run multiple application on one KENS kernel • Print out the following on runtime • Current state information at client/server • Current congestion window size • Packet send/receive information • Time-out and retransmission information
References • KENS Install Guide • KENS User Guide • UNIX Network Programming, Stevens • TCP/IP Illustrated2, Stevens