Todd Deshane Ashwin Venkatraman McNair Program Clarkson University Transmitting and Tracking Packets of Data Through The TCP and UDP Network Protocols Todd Deshane Ashwin Venkatraman McNair Program Clarkson University
Overview Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Research questions and methodology Data analysis and conclusions
Internet Protocols user X English user Y e-mail client SMTP e-mail server TCP/UDP server TCP/UDP TCP/UDP server IP server IP IP server Peers exchange units meaningful to each end; communicate Uses services of lower layer to avoid complexity ethernet driver/card IEEE 802.3 standard ethernet driver/card electric signals CS454 (Computer Communication) Clarkson University, Summer 2002
Transmission Control Protocol (TCP) What is it? A protocol for data exchange Establishes a connection between two hosts (computers) on a network Delivers data in order and retransmits lost data
Transmission Control Protocol (TCP) Handshaking Reliable data transfer Flow Control Congestion Control Hi there Hey there, I am ready for data Here it is I got it. Ready for more!
User Datagram Protocol (UDP) What is it? A protocol that allows for fast data transfer Does not establish connection (connectionless) Makes a “best effort” to transfer data Not very reliable!
User Datagram Protocol (UDP) No Handshaking! No Reliable data transfer No Flow Control No Congestion Control Sending data! Sending data! Sending data!
TCP vs. UDP Stream-oriented Good network citizen Reliable Connection established Good network citizen Congestion control Flow control Reliable Datagram-oriented Connectionless Blasts Away No congestion control No flow control Best-effort
Research Questions TCP UDP How much do we pay to use TCP? Elegant Protocol Lots of nice features Slower UDP Barebones Protocol Lacks reliability Faster How much do we pay to use TCP? How do we measure performance? What causes the differences in performance?
Measuring Network Traffic Basic terminology: Network data represented in packets Packet sizes represented in bytes Things to measure: Elapsed Time Total data sent … Total received Effective Throughput (data received/time) Efficiency (Percent received)
Procedure Method Start Server Send data to Receiver Record Statistics Transmitter (Client) Receiver (Server) Method Start Server Send data to Receiver Record Statistics
PCATTCP Software Utility Created by Printing Communications Associates, Inc. (PCAUSA) Windows version of Test TCP (TTCP) Bench-marking tool for TCP and UDP Command-line based Modified to: Automate the testing process Use handshakes between trials Enhance UDP transfers
Different PCATTCP Trials Same Switch (same lab) Same Host (same computer) Same LAN (inside Clarkson) Note: LAN stands for “Local Area Network” LAN to LAN (Clarkson to SUNY Potsdam) LAN to Internet (Clarkson to a Roadrunner service)
Results Same Switch Same LAN
Results LAN to LAN LAN to Internet
Conclusion TCP in common environments UDP lacks flow control Sometimes much slower (LAN to Roadrunner) Sometimes slightly slower (same LAN) UDP lacks flow control Two hosts on the same switch Faster transfer
Future Plans Use larger data sets (instead of 8 MB, 1 Gig) Use our PCATTCP software on Wireless technology Port our PCATTCP version from Windows to UNIX Test across platforms
Acknowledgements Ronald E. McNair Scholars Program Dr. Jeanna Matthews, Clarkson University The Computer and Technology Services at SUNY Potsdam