易截截图软件、单文件、免安装、纯绿色、仅160KB

linux 超时重传 - Linux/Unix社区 / 程序开发区

将所要发送的tcp包放在发送队列中,如果在15秒内没收到ACK,就重发,想请问大家,这样是不是要对每个TCP包加定时器阿,除了用alarm,还能用什么了?
你搞应用的话不需要关心tcp协议栈是怎么处理的啊

tcp协议栈有重发机制

我是想在应用层上也有个超时重传

滑窗协议,针对滑窗内的数据包(里面有纪录OS TICK)进行检查。
只有一个定时器,好像是200MS(不确定),到时候就去比较当前时间和每个未确认的包的时间戳,只要超过一定阈值,就开始重传。

为每个包加定时器.....这个很要命的.....既然你是一个队列,可以给每个包加时间戳,然后定时检查队首就可以了

tcp我觉的基本没这个必要.......如果包丢了,会重发的。 如果包发不过去,就算应用层重发也还是发不过去呀

那要多久检测这个未收到确认包?是创建一个线程只用来检测的吗?

引用
那要多久检测这个未收到确认包?是创建一个线程只用来检测的吗?

这个取决于你的需要和程序是如何设计的
一般来说等待的时候是阻塞的,单独用个线程是可以的
{{


相关问答:

linux环境下gethostbyname函数问题 - C/C++ / C语言

写了个测试程序如下
   
  struct hostent *hp; 
char AlarmDevIP[20];  
  int x2;

hp = gethostbyname("www.google.com");
if (hp)
{ ......

linux下C语言开发oracle的问题。

两个文件1.PC,1.inc
1.PC有操作oracle数据库的 ,1.inc也有操作oracle数据库 
在其他数据中如informix 中$include 1.inc就可以使用了
在ORACLE数据库重 $include 1.inc不可用 EXEC SQL include 1.inc也不可 ......

linux 下usb设备驱动问题

linux 下usb设备,在root权限下,设备可以正常找到驱动,
但在普通用户下找不到设备驱动,不知道是什么原因?请高手指教
应该是root为了防止普通用户破坏吧,所以加个权限。。。我的就是

权限问题 root是超级用 ......

Linux中如何查找函数的实现

比方说函数 tcsetospeed函数,使用Qt Createor可以跳转到他的头文件 termios.h。但有时候想看一下这个函数是如何实现的,这时候该如何查找该函数的对应的实现文件呢?
我没用 Qt Creator
你可以看看Qt Creator的帮 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号