Highlights
Task:
1 Goal . The purpose of this project is to understand the details of state management in Transmission • Control Protocol (TCP). You are required to write a python program to analyze the TCP protocol . behavior.
2 Requirements • You will be given a sample TCP trace file (samplecapture-file.cap). During the period traced, a • single web client accesses different web sites on the Internet. This trace is to be used for your own . test. TA might use a different trace file to test your code. . You need to write a python program for parsing and processing the trace file, and tracking TCP . state information. In this assignment, your code will be tested on the server linu.s.csc.usie.ca. As • such, you are allowed to use only the Python packages of python3 currently installed on • Inumess.usic.ca. You are not allowed to install/use other third-party python packages. Your program should process the trace file and compute summary information about TCP connections. Note that a TCP connection is identified by a 4-tuple (IP source address, source port, • IP destination address, destination port), and packets can flow in both directions on a connection • (i.e., duplex). Also note that the packets from different connections can be arbitrarily interleaved • with each other in time, so your program will need to extract packets and associate them with the .correct connection. • The summary information to be computed for each TCP connection includes: • the state of the connection. Possible states are: SOFO (no SYN and no FIN), S1FO (one SYN and no FIN), S2F0 (two SYN and no FIN), S1F1 (one SYN and one FIN), S2F1 (two SYN • and one FIN), S2F2 (two SYN and two FIN), SOF1 (no SYN and one FIN), SOF2 (no SYN and two FIN), and so on, as well as R (connection reset due to protocol error). For consistence, • we count a SYN+ACK segment (i.e., a segment with both SYN bit and ACK bit set to 1) as a SYN message. (Of course, a SYN segment is also counted as a SYN segment). Getting • this state information correct is the most important part of your program. We are especially interested in the complete TCP connections for which we see at least one SYN and at least one FIN. For these complete connections, you can report additional information, as indicated • in the following. • the starting time, ending time, and duration of each complete connection
1
• • the number of packets sent in each direction on each complete connection, as well as the total packets • the number of data bytes sent in each direction on each complete connection, as well as the total bytes. This byte count is for data bytes (i.e., excluding the TCP and IP protocol headem). • Besides the above information for each TCP connection, your program needs to provide the • following statistical results for the whole trace data: 42 • the number of reset TCP connections observed in the trace
• • the number of TCP connections that were still open when the trace capture ended • the number of complete TCP connections observed in the trace • Regarding the complete TCP connections you observed: - the minimum, mean, and maximum time durations of the complete TCP connections - the minimum, mean, and maximum RTT (Round Trip Time) values of the complete TCP connections - the minimum, mean, and maximum number of packets (both directions) sent on the complete TCP connections - the minimum, mean, and maximum receive window sizes (both sides) of the complete • TCP connections.
• As a guideline for output format, please follow the output format of this project shown in • outputformat.pdf.
• 3 Deliverables and Marking Scheme • For your final submission of your assignment, you are required to submit your source code. You • should include a readme file to tell TA how to run your code. • Zip your assignments (code) as one tar file using Star -czvf on linumetsc.uvic.ca. • The marking scheme is as follows (refer to outputforma pdf as well):
Components
Weight
Total number of connections
25
Connections' details
30
General Statistics
20
Complete TCP connections:
20
Readme.txt, code style
This IT Assignment has been solved by our IT Experts at My Uni Paper. Our Assignment Writing Experts are efficient to provide a fresh solution to this question. We are serving more than 10000+Students in Australia, UK & US by helping them to score HD in their academics. Our Experts are well trained to follow all marking rubrics & referencing style.
Be it a used or new solution, the quality of the work submitted by our assignment Experts remains unhampered. You may continue to expect the same or even better quality with the used and new assignment solution files respectively. There’s one thing to be noticed that you could choose one between the two and acquire an HD either way. You could choose a new assignment solution file to get yourself an exclusive, plagiarism (with free Turnitin file), expert quality assignment or order an old solution file that was considered worthy of the highest distinction.
© Copyright 2026 My Uni Papers – Student Hustle Made Hassle Free. All rights reserved.