我在Django的POST处理程序中随机获取IOError: request data read error
,同时在3G网络上传数据。 Django为什么会提出这种特殊的异常has already been answered(总结:据称当客户端丢弃TCP连接时发生)。但是,在我的情况下,我试图解决潜在的问题。3G塔式交换机上的TCP连接会发生什么?
从我试图缩小问题的范围,我发现:
- 在WiFi不可再生
- 不可再生的GPRS只
- 上重现各种类型的手机(Android和iPhone)和多个运营商
- 似乎没有发生在某些地点
- 似乎发生在其他位置,特别是当我可以看到数据速度指示器切换
3G
,H
和H+
(UMTS,HSDPA和HSPA +)之间
我猜猜是什么情况有交换塔。那么当3G在塔之间切换时,TCP连接会发生什么?
我不知道,但我敢肯定,PDP上下文被删除并重新建立,就像它是一种降低时到EDGE和GPRS等老式技术。在新的PDP上下文中出现一个新的PPP会话,并且很可能是一个新的IP地址,所以这当然会破坏TCP连接。 – Celada 2013-04-24 23:26:57
@Celada:好的,但你说的是从3G切换到2G或反过来,而不是在3G的各种速度之间 – vartec 2013-04-25 07:32:27