Chapter 7 Reading Organizer After completion of this chapter, you should be able to: Describe the purpose of the transport layer in managing the transportation of data in end-toend communication. Describe characteristics of the TCP and UDP protocols, including port numbers and their uses. Explain how TCP session establishment and termination processes facilitate reliable communication. Explain how TCP protocol data units are transmitted and acknowledged to guarantee delivery. Explain the UDP client processes to establish communication with a server. Determine whether high-reliability TCP transmissions, or non-guaranteed UDP transmissions, are best suited for common applications. 7.1 Transport Layer Protocols 1. Explain the purpose of the transport layer. The transport layer is responsible for establishing a temporary communication session between two applications and delivering data between them. 2. What are the primary responsibilities of transport layer protocols? a. Tracking the individual communication between applications on the source and destination hosts b. Segmenting data for manageability and reassembling segmented data into streams of application data at the destination c. Identifying the proper application for each communication stream 3. At the transport layer, each particular set of data flowing between a source application and a destination application is known as a ___conversation___. 4. TCP/IP provides two transport layer protocols. These are: a. Transmission Control Protocol (TCP) b. User Datagram Protocol (UDP), 5. Explain how TCP and UDP differ from each other. TCP is considered a reliable, full-featured transport layer protocol, which ensures that all of the data arrives at the destination. In contrast, UDP is a very simple transport layer protocol that does not provide for any reliability. 6. TCP’s reliability functions provide more robust communication between applications. What are two possible issues that can be incurred by this reliability? a. additional overhead b. possible delays 7. With UDP, there are no ___transport___ layer processes that inform the sender if successful delivery has occurred. 8. Application developers must choose which transport protocol type is appropriate based on the requirements of the applications. What are two examples of where a TCP is more appropriate. a. When segments must arrive in a very specific sequence to be processed successfully. b. When all data must be fully received before any of it is considered useful. 9. List the applications where UDP is the preferred transfer protocol? a. streaming audio b. video c. Voice over IP (VoIP). 10. Label the following application protocols with its correct transport layer delivery method. Either TCP, UDP, or Both. ____TCP_____ HTTP ____Both____ DNS ____UDP____ TFTP ____TCP_____ Telnet ____UDP_____ IPTV ____TCP_____ FTP ____UDP_____ DHCP ____UDP_____ SNMP ____UDP_____ VoIP ____TCP_____ SMTP 11. TCP was initially described in RFC 793. In addition to supporting the basic functions of data segmentation and reassembly, TCP also provides: a. Connection-oriented conversations by establishing sessions b. Reliable delivery c. Ordered data reconstruction d. Flow control 2 12. TCP is a connection-oriented protocol. Explain what a connection-oriented protocol is. A connection that negotiates and establishes a permanent connection (or session) between source and destination devices prior to forwarding any traffic. 13. How does TCP ensure that its segments are reassembled into the proper order? By numbering and sequencing the segments, 14. What is a stateful protocol? It is a protocol that keeps track of the state of the communication session. 15. What are some examples of applications that use TCP? a. web browsers b. email c. file transfers 16. List the features used to describe UDP. a. Connectionless b. Unreliable Delivery c. No Ordered Data Reconstruction d. No Flow Control 17. What are the pieces of communication in UDP called? Datagrams 18. UDP is a stateless protocol. Explain what this means. Neither the client, nor the server, is obligated to keep track of the state of the communication 19. Why does a client place a destination port number in a segment? To tell the destination server what service is being requested. 20. What is the purpose of the source port number? It is randomly generated by the sending device to identify a conversation between two devices. 21. The combination of the source and destination IP addresses and the source and destination port numbers is known as a socket. What is a socket used for? To identify the server and service being requested by the client. 22. Label the following port number ranges. ________Well-Known Ports_______ 0 to 1023 ________Registered Ports________ 1024 to 49151 ___Private and/or Dynamic Ports___ 49152 to 65535 23. What are the well-known port numbers associated with the following protocols? ___21___ FTP ___23___ Telnet __25____ SMTP ___80___ HTTP ___143__ IMAP ___69___ TFTP ___520__RIP ___53___ DNS ___161__SNMP 24. What DOS command can be used to see which active TCP connections are open and running on a networked host? netstat 25. Why is dividing application data into segments necessary? It ensures that data is transmitted within the limits of the media and that data from different applications can be multiplexed on to the media. 26. The transport layer divides the data into pieces and adds a header for delivery over the network. List what information is included with the TCP and UDP headers. TCP Header – a. source and destination ports b. sequence number c. acknowledgment of received segments d. flow control UDP Header – a. source and destination ports 4 27. Label each of the following delivery method characteristics as either TCP or UDP. ___UDP____ Less Overhead ___UDP___ Fast Transmission Requirements ___UDP____ No Acknowledgment of Receipt ___TCP____ Guaranteed Delivery ___TCP____ Ordered Delivery ___UDP____ Connectionless ___TCP____ Sequenced Message Segments ___UDP____ No ordered Delivery ___TCP____ Flow Control ___TCP____ Session Establishment 7.2 TCP and UDP 28. The key distinction between TCP and UDP is reliability. The reliability of TCP communication is obtained through the use of ___connection-oriented___ sessions. 29. Explain what occurs during a three-way handshake. a. It establishes that the destination device is present on the network b. It verifies that the destination device has an active service and is accepting requests on the destination port number that the initiating client intends to use for the session c. It informs the destination device that the source client intends to establish a communication session on that port number 30. Explain the three steps in TCP connection establishment. a. The initiating client requests a client-to-server communication session with the server. b. The server acknowledges the client-to-server communication session and requests a serverto-client communication session. c. The initiating client acknowledges the server-to-client communication session. 31. How can security be added to the data network? a. Denying the establishment of TCP sessions b. Only allowing sessions to be established for specific services c. Only allowing traffic as a part of already established sessions 32. To end each one-way TCP session, a two-way handshake is used which consists of… a. FIN segment b. ACK segment 33. Add the correct descriptor to its appropriate place in the graphic. 6 34. What information is assigned to each header to ensure that it is reassembled in the correct order? Sequence numbers 35. What are the sequence (SEQ) number and acknowledgement (ACK) numbers used together for? To confirm receipt of the bytes of data contained in the transmitted segments. 36. What advantage does selective acknowledgements (SACKs) offer? It is possible for the destination to acknowledge bytes in discontinuous segments and the host would only need to retransmit the missing data. 37. Explain the purpose of flow control? Flow control helps maintain the reliability of TCP transmission by adjusting the rate of data flow between source and destination for a given session 38. Explain how flow control is accomplished. By limiting the amount of data segments forwarded at one time and by requiring acknowledgments of receipt prior to sending more 39. TCP uses ___window sizes___ to attempt to manage the rate of transmission to the maximum flow that the network and destination device can support, while minimizing loss and retransmissions. 40. Explain how dynamic window sizes work. When network resources are constrained, TCP can reduce the window size to require that received segments be acknowledged more frequently. This effectively slows down the rate of transmission because the source waits for data to be acknowledged more frequently. 41. Application layer protocols that use UDP include: a. Domain Name System (DNS) b. Simple Network Management Protocol (SNMP) c. Dynamic Host Configuration Protocol (DHCP) d. Routing Information Protocol (RIP) e. Trivial File Transfer Protocol (TFTP) f. IP telephony or Voice over IP (VoIP) g. Online games 42. UDP is said to be transaction-based. What does this mean? When an application has data to send, it simply sends the data. 43. Which applications use TCP? A. Hypertext Transfer Protocol (HTTP) b. File Transfer Protocol (FTP) c. Simple Mail Transfer Protocol (SMTP) d. Telnet 44. There are three types of applications that are best suited for UDP. Explain each. 8 a. Applications that can tolerate some data loss, but require little or no delay b. Applications with simple request and reply transactions c. Unidirectional communications where reliability is not required or can be handled by the application