nouel
驱动牛犊
驱动牛犊
  • 注册日期2003-02-25
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1820回复:2

是不是fireware不完成数据重传?

楼主#
更多 发布于:2003-03-19 18:21




            如果因为缓存不够造成dropped fcp/iso request
            这样的数据就被丢失了吧?
            我在测试驱动的时候,由于发送速度总是
            大于接收速度,结果发现,经常出现
            缓存不够用的情况,结果经常丢包
            
            是不是我必须在上层实现重传?
            或者是确保发送和接收按接近的速率传输?
evergreen
驱动牛犊
驱动牛犊
  • 注册日期2002-04-16
  • 最后登录2007-09-24
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-03-24 10:30
如果是iso那么自然可以丢包的。fcp应该是function control protocol (FCP),是set of commands for controlling audio/video devices by using IEEE 1394.FCP defines a packet format for asynchronous transmission of commands and responses.也就是说fcp是异步包。应该可重传的。而异步传输的Retry次数是在ATREtries Register(偏移是0x008)中设置的。在从目标节点收到“busy”和ack_data_eror确认之后,才会retry,否则包括收到evt_missing_ack在内的所有情况都不会重传。不知道你是什么情况?
nouel
驱动牛犊
驱动牛犊
  • 注册日期2003-02-25
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-03-24 17:30
          这个丢包可能并不是因为传输丢包了
          raw1394的驱动中定义了request链
          最大只能有xxx字节的长度(我这儿的
          source定义成4*1024*1024)
          如果超过这个长度,新加入的request就失败了
游客

返回顶部