Definition

sliding windows (windowing)

Sliding windows, a technique also known as windowing, is used by the Internet's Transmission Control Protocol (TCP) as a method of controlling the flow of packets between two computers or network hosts. TCP requires that all transmitted data be acknowledged by the receiving host. Sliding windows is a method by which multiple packets of data can be affirmed with a single acknowledgment.

TCP includes a memory buffer that sits between the upper application layer (for example, Hypertext Transfer Protocol or File Transfer Protocol) and the lower layer that receives data (the data link layer in the OSI reference model). The buffer allows TCP to receive and process data independently of the upper application. In other words, TCP can use this buffer space to "read ahead" while the upper application processes the data at its own pace.

Window "announcements" are sent by the receiving system to the transmitting system in order to acknowledge data receipt as well as to inform the transmitting system of the current buffer size. For example, if a window size of zero is reported, the transmitting system must wait for an acknowledgment before sending the next chunk of data. If the receiving system reports that the buffer size is larger than the size of a single data packet, the transmitting system knows that it can send multiple chunks of data before waiting for an acknowledgment. Transmitting multiple data packets between acknowledgments allows the data to be transferred faster and more efficiently than if an acknowledgment must be received prior to each transmission.

You can find out more about TCP by reading Request for Comment (RFC) 793 and 1180.

Contributor(s): Bjorn Persson
This was last updated in April 2007
Posted by: Margaret Rouse

Email Alerts

Register now to receive SearchNetworking.com-related news, tips and more, delivered to your inbox.
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

More News and Tutorials

Do you have something to add to this definition? Let us know.

Send your comments to techterms@whatis.com

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: