tcp问题求教

问题描述

一个tcp连接的客户端和服务端,如果客户端一直不停的向服务端发送数据,而服务端的确认包中窗口越来越小,当服务端窗口为0时,客户端如果还继续一直调用异步数据发送会发生什么情况,应用程序会出错吗?还是异步发送函数会阻塞?

解决方案

解决方案二:
你先贴出这样一个程序来,贴出来看看!随便编一些词儿,让人觉得没有靠谱的问题。
解决方案三:
引用1楼sp1234的回复:

你先贴出这样一个程序来,贴出来看看!随便编一些词儿,让人觉得没有靠谱的问题。

这是服务端发送块Tokentoken=e.UserTokenasToken;Sockets=token.Connection;if(s.Available==0){//Setreturnbuffer.token.ProcessData(e);//对于接收到的数据进行处理,然后将发送数据放到发送缓冲区里面if(!s.SendAsync(e)){//Setthebuffertosendbacktotheclient.this.ProcessSend(e);}}服务端一直接收客户端发送的数据并回复,由于跑着跑着出现了客户端回的ACK里面窗口大小变为了0,所以我想问问在这种情况下如果再调用上面的s.sendAsync(e)会发生什么情况?是一直会缓存在网络发送缓冲区里面吗?
解决方案四:
引用2楼u012417552的回复:

服务端一直接收客户端发送的数据并回复,由于跑着跑着出现了客户端回的ACK里面窗口大小变为了0,所以我想问问在这种情况下如果再调用上面的s.sendAsync(e)会发生什么情况?是一直会缓存在网络发送缓冲区里面吗?

你继续跑不就知道会发生什么情况了?

时间: 2024-11-05 14:55:55

tcp问题求教的相关文章

mfc c++-新人求教,我用mfc做了一个tcp fin的端口扫描器,死后得不出结果,求大神帮忙找出问题

问题描述 新人求教,我用mfc做了一个tcp fin的端口扫描器,死后得不出结果,求大神帮忙找出问题 cpp文件 // scanDlg.cpp : implementation file// #include ""stdafx.h""#include ""scan.h""#include ""scanDlg.h""#include ""afxdialogex.h&qu

原始套接字 tcp-用原始套接字发送TCP数据包,显示发送成功但是接收不到,求教

问题描述 用原始套接字发送TCP数据包,显示发送成功但是接收不到,求教 我需要自己构建IP数据包,在IP选项部分添加一些数据,因此用原始套接字发送TCP数据包,但是发送成功了,另一台主机接收不到,用的2003系统,不知道哪位好心人能帮助下,万分感激,谢谢 解决方案 你这个问题说的比较笼统,你是用的无连接发送吧,发送成功了,但是主机没收到,可能:1.IP包或者TCP包创建的有问题2.发送过程中,数据有丢失3.服务器的程序,在接受数据的程序上存在一些问题 解决方法:1.在客户端断点检测,查看IP和T

tcp-新手求教,关于TCP网络程序的问题

问题描述 新手求教,关于TCP网络程序的问题 socket = new Socket("127.0.0.1", 8998); // 实例化Socket对象 不明白这个构造参数中的127.0.0.1是什么意思,百度之后发现是回送地址吧,可是还是不明白是干什么用的,另外8998我知道这是端口,但是这个端口代表什么呢?求解答.. 解决方案 127.0.0.1代表本机ip 端口这个无所谓,只要是没有被占用的都可以. 解决方案二: 想要在网络中发送数据,肯定要知道对方的IP才可以,然后是端口号,

keepalived问题-keepalived+twemproxy +redis问题求教

问题描述 keepalived+twemproxy +redis问题求教 自己搭了玩的,2台虚拟机10.20.71.150(redis2个实例分别是端口63796389 twemproxy 监听22122 -s22222此外还有keepalived (只装了这一个没有master/slave.就有问题了))10.20.71.161(redis2个实例分别是端口63796389 twemproxy 监听22122 -s22222)VIP:10.20.71.65集体配置: ```10.20.71.1

azure-虚拟机 2008的系统搭建ftp总是不通,求教

问题描述 虚拟机 2008的系统搭建ftp总是不通,求教 虚拟机 2008的系统搭建ftp总是不通,求大神教我,感激不尽 解决方案 Hi, 请按照这篇文章来检查你的设置是否正确,我试着创建了server 2008虚拟机,然后按照这篇文章成功的搭建了ftp服务器,希望你按照步骤再试一次,如果还是连接不通,请尝试在iis的设置中允许SSL连接,具体设置如下图. Best Regards, Jambor 如果您想进一步了解Windows Azure, Windows Azure 官网欢迎您的访问 解决

求教,要用java写个app的服务端,请问需要使用哪些技术或组件?

问题描述 求教,要用java写个app的服务端,请问需要使用哪些技术或组件? 好像需要用到xmpp,数据传递打算使用json,然后框架准备使用springmvc+mybties,但是我不清楚该怎么实现接收app传过来的数据,还有就是怎么将数据传递给app. 好像说进行接口交互,但是这个大概是怎么实现或运行的,有没有大神介绍下,有例子链接更好哈! 解决方案 这个我来告诉你,因为我现在就在用JAVA做手机APP的服务器. 首先你不要被什么框架啊这些给迷惑了,如果你连原理都不知道就去弄这些框架,会把你

c++ SYN 网络编程遇到问题 小白求教

问题描述 c++ SYN 网络编程遇到问题 小白求教 以下是代码,运行无错误,但是用wireshark 抓不到发出的SYN包,求高手解释原因.. #include <stdlib.h> #include <stdio.h> #include <winsock2.h> //加入WinSock的头文件 #include <WS2TCPIP.h> //设置IP_HDRINCL选中需要 #include <time.h> #include <ios

电脑问题-w8电脑错误720 大神求教

问题描述 w8电脑错误720 大神求教 不知道怎么回事 连上一会就掉网了 然后出来这样 删除宽带连接从新弄过了 所有的设置我都看了 没问题 没下载其他东西 解决方案 换一个计算机试下,换一个路由器试下 如果换了计算机可以,是计算机本身的问题,如果换了路由器可以,是路由器的问题,包括信号,包括本身的问题.如果还不行,是宽带运营商的问题. 解决方案二: 1.删除原来的宽带连接,然后重新建立: 2.依次进入"控制面板-网络和共享中心-更改适配器设置",然后鼠标右击"宽带连接&quo

求教oracle dataguard 主备库日志无法同步的问题

问题描述 求教oracle dataguard 主备库日志无法同步的问题 现在做data guard 测试,试了很多次,主库的日志一直 无法同步到备份库.求高手解答. 测试环境 主库::操作系统 redhat 5.8 地址 192.168.1.135 数据库版本 oracle 10.2.0 备库: 操作系统 redhat 5.8 地址 192.168.1.3 数据库版本 oracle 10.2.0 主库参数文件 orcl.__db_cache_size=390070272 orcl.__java