被几个概念弄晕了,只讨论Windwos的实现哈1:套接字的发送缓冲,接收缓冲是不是就是TCP/IP协议滑动窗口的具体实现?
2:如果发送接收缓冲不是滑动窗口,那真正的滑动窗口在哪儿?是Windows操作系统实现的还是在网卡驱动程序中?
3:如何设置滑动窗口?以服务器为例,如果Accept到一个套接字,那么连接已经建立了,但TCP三次握手就会交换滑动窗口大小,所以如果Accept到一个套接字再设置窗口大小是不合理的求大虾解答下 谢谢

解决方案 »

  1.   

    1:不完全是。TCP才有,IP没有滑动窗口的概念。
    2:主要是TCP的sequence number来控制。每当收到ack,窗口就滑动。一直收不到ack,窗口满了就不能再发送了。但发送缓冲区还可能允许存。
    3:一般不需要设窗口,可以设发送缓冲区。TCP握手交换的是当前窗口位置。
      

  2.   

    1.缓冲只是socket的缓冲,不是窗口大小对应的
    2.真正的窗口当然是tcp协议中的,网卡属于mac层,和TCP不搭嘎
    3.没设置过,不懂。