Solved

Question for network programmers

Posted on 2004-10-05
3
182 Views
Last Modified: 2010-04-17
First off I'm not a programmer. I'm a network tech. So forgive me if any of the terms I use seem strange.  I'm trying to understand how sliding window protocol operates in relation to the buffers.

Ok, let's say Computer A's TCP send buffer can allocate 8000 bytes. Computer B's receive buffer (window size) is only 6000 bytes.  Computer A's Application layer hands down a PDU of 8000 bytes to Computer A's  TCP.   Computer A's TCP places all 8000 bytes on it's send buffer.

Computer A will "window"  6000 bytes out of it's 8000 bytes it has on it's send buffer due to the window size Computer B advertised. It will then send the "window" of  6000 bytes of data to Computer B in several packets (each full size around 1460 bytes).

 As  Computer B receives the packets on it's receive buffer, it processes them quickly up the application layer and acknowledges Computer A.  This causes Computer B to free up it's receive buffer a bit more so it sends a window update to Computer A saying "win 2000".  Computer A then sends the remaining 2000 bytes.

Is that correct?
Thanks in advance
0
Comment
Question by:dissolved
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 8

Expert Comment

by:gregasm
ID: 12233908
It depends on how Computer B is programmed to read the incoming stream.

If Computer B is programmed well, then it should behave as you envision.

Computer A should send packets to Computer B at either the fastest rate A can send it that B can receive it up to the limit of A, or else A will wait before sending more bytes if B is  backed beyond it's processing capabilities.

0
 

Author Comment

by:dissolved
ID: 12234037

Thanks gregasm.  Much appreciated. You network programmer guys are a sharp bunch no doubt. Hope to join you oneday. Long way to go for me though lol
0
 
LVL 8

Accepted Solution

by:
gregasm earned 500 total points
ID: 12234117
Thanks for your kind words, and good luck! As long as they think it is fun, anyone can do it!
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Recommendation vb6 to vb.net or others 14 202
VB.net and sql server 4 54
Visual Studio hangs on running project 6 56
Crashing when deleting value with no child in Binary Tree 4 25
Whether you’re a college noob or a soon-to-be pro, these tips are sure to help you in your journey to becoming a programming ninja and stand out from the crowd.
Although it can be difficult to imagine, someday your child will have a career of his or her own. He or she will likely start a family, buy a home and start having their own children. So, while being a kid is still extremely important, it’s also …
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …
With the power of JIRA, there's an unlimited number of ways you can customize it, use it and benefit from it. With that in mind, there's bound to be things that I wasn't able to cover in this course. With this summary we'll look at some places to go…

735 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question