Data travels across networks in packets.
The Transmission Control Protocol, better known as TCP, is a networking protocol specializing in forming connections. A connection is not merely contact between computers, but an established framework within which an exchange of messages occurs. The session has an identifier and each message sent back or forth within that session carries the session's ID. TCP has a number of shortcuts in its message structure. Certain aspects of a message packet are expressed by setting one bit to "1." The shortcuts are called flags and PSH is one of those flags.
Data Packets
Data travels around networks in segments. Not all of the information traveling from A to B travels together. This is to prevent one transmission hogging the network cable and locking everyone else out. Because data is broken up into bits, there needs to be a system to enable the receiver to reassemble the data segments in the right order. This is the work of TCP. It needs to establish a session with its counterpart in order to describe received data in the context of the entire stream of data. To achieve its tasks, it puts a header on the front of each data packet in its communications with its counterpart. This is where the PSH flag is located.
TCP Flag
A TCP header contains six places reserved for flags. Each flag is 1-bit long -- if that bit is set to one, then the flag is active and the receiver of the packet knows the status of the packet. The six flags are SYN, ACK, PSH, URG, RST and FIN. The TCP header contains a total of 20 bytes. The TCP flags are positioned as the last six bits of the 14th byte.
PSH Flag
The PSH code is short for "push." A data packet traveling over a network may be stored briefly at a number of points, either because the network is congested and the network device is waiting for space, or because the packet arrives out of sequence and the receiver is waiting for the missing packet. The PSH flag tells all to send on the packet without buffering, or to stop buffering. This has two possible uses. One is to remove all buffering from the system for that particular packet, or to tell the receiver to stop buffering all data it has so far received, including the PSH packet. This has the effect of telling the receiver that it has received all data for the time being and should stop buffering and start processing.
URG Flag
The PSH flag is very similar to the URG flag. URG stands for "urgent." The URG flag also bypasses buffering. The TCP header also contains a second urgent pointer, and the main purpose of the URG flag is to tell everyone that the urgent status indicated by the urgent printer is a valid state. An urgent packet also bypasses all buffering. Unlike a PSH packet, however, the urgent packet is sent ahead of any other packets that have been waiting in the queue longer. The URG packet jumps queues and avoids buffering, while the PSH packet just avoids, or ends, buffering.
Tags: stop buffering, also bypasses, also bypasses buffering, bypasses buffering, data packet