This TCP flag instructs the sending system to transmit all buffered data immediately.
A.
SYN
B.
RST
C.
PSH
D.
URG
E.
FIN
This TCP flag instructs the sending system to transmit all buffered data immediately.
This TCP flag instructs the sending system to transmit all buffered data immediately.
A.
SYN
B.
RST
C.
PSH
D.
URG
E.
FIN
C
D. URG
TCP Communication Flags
Standard TCP communications monitor the TCP packet header that holds the flags. These flags govern the connection between hosts, and give instructions to the system.
The following are the TCP communication flags:
Synchronize alias “SYN”: SYN notifies transmission of a new sequence number
Acknowledgement alias “ACK”: ACK confirms receipt of transmission, and identifies next expected sequence number
Push alias “PSH”: System accepting requests and forwarding buffered data
Urgent alias “URG”: Instructs data contained in packets to be processed as soon as possible
Finish alias “FIN”:Announces no more transmissions will be sent to remote system
Reset alias “RST”: Resets a connection
SYN scanning mainly deals with three of the flags, namely, SYN, ACK, and RST. You can use these three flags for gathering illegal information from servers during the enumeration process.
C. PSH is correct.
PSH: Send all buffered data right now.
URG: Something emergent happens! Do it first among others!
=============================================
According to the TCP/IP Guide (http://www.tcpipguide.com/index.htm):
URG is used for this scenario, for example:
The most common example of this is when it is necessary to interrupt an application’s data transfer. Suppose we have an application that sends large files in both directions between two devices. The user of the application realizes that the wrong file is being transferred. When he or she tells the application to stop the file being sent, we want this to be communicated to the other end of the TCP connection immediately. We don’t want the “abort” command to just be placed at the end of the line after the file we are trying to send!
=======
PSH:
However, there are situations where letting TCP accumulate data before transmitting it can cause serious application problems. The classic example of this is an interactive application such as the Telnet Protocol. When you are using such a program, you want each keystroke to be sent immediately to the other application; you don’t want TCP to accumulate hundreds of keystrokes and then send them all at once. The latter may be more “efficient” but it makes the application unusable, which is really putting the cart before the horse.
Even with a more mundane protocol that transfers files, there are many situations in which we need to say “send the data now”. For example, many protocols begin with a client sending a request to a server—like the hypothetical one in the example in the preceding topic, or a request for a Web page sent by a Web browser. In that circumstance, we want the client’s request sent immediately; we don’t want to wait until enough requests have been accumulated by TCP to fill an “optimal-sized” segment.
Thanks Q. Very good explanation with relevant example.