pects from the receiver. The Data Offset field identifies the first byte in this partic- ular segment; in effect it indicates the segment header length. TCP relies on a collection of control flags, which, in fact, do control cer- tain characteristics of the virtual connection. They include an Urgent Pointer Field Significant (URG) which indicates that the current seg- ment contains high-priority data and that the Urgent Pointer field value is valid; an Acknowledgment Field Significant (ACK), which indicates that the value contained in the Acknowledgment Number field is valid; a Push Function (PSH) Flag, which is used by the transmitting applica- tion to force TCP to transmit data immediately that it currently has buffered, without waiting for the buffer to fill; a Reset Connection (RST) flag, which is used to immediately terminate an end-to-end TCP connec- tion; a Synchronize Sequence Numbers (SYN) flag, which is used to establish a connection, and to indicate that the segments carry the proper initial sequence number; and finally, a Finish (FIN) flag, which is set to request a normal termination of a TCP connection in whatever direction the segment is traveling. The Window field is used for flow control management. It contains the value of the permitted receive window size, the number of transmitted bytes that the sender of the segment is willing to accept from the receiver. The Checksum field offers bit-level error detection for the entire segment, including both the header and the transmitted data. The Urgent Pointer field is used for the management of high-priority traffic as identified by a higher layer application. If SO marked, the seg- ment is typically allowed to bypass normal TCP buffering. The last field is the Options field. At the time of the initial connection establishment this field is used to negotiate such functions as maximum segment size and selective acknowledgement (SACK). The User Datagram Protocol (UDP) UDP provides connectionless service. And while "connectionless" often implies "unreliab