移动主机不同于固定的主机,经常开发用到的长连接的模型,可能在给移动主机服务的后端,它的网络处理的方式带来很大的不同
在通信网络中,移动主机拥有所谓的归属代理和外地代理,代理之间使用隧道技术来完成数据的安全传输,常见的隧道技术有ip in ip,最小封装,GRE等,这些都不同于固定的主机
在通信网络中,移动主机发送给后端的数据需要穿越防火墙,防火墙的端口开放时间非常短,另外udp比tcp穿墙要容易很多,
因为udp并没有连接,也不需要为了建立连接而发起3次握手,握手成功的概率就更低了,而且udp每次选路可以走不同的路由器,不用走同一个链路(连接),更加灵活
由于移动主机本来就有的移动性,切换网络时,更是可能带来一定的延迟.而tcp为了保证可靠性,任何一个丢包和延迟,都会认为是网络拥塞,从而导致tcp的重传,尤其是tcp的慢启动算法,更是可能将网络的传输窗口缩小一半,甚至是1
tcp的重传时间,是取决于链路的往返时间(RTT),而这个就更加的取决于链路的质量和通信距离
此时希望通信的状况是,及时部分延迟了,也可以选择部分重传,但是不能进入拥塞控制---慢启动,也就是发送的速率不能减半
改进的办法包括:
移动主机切换位置之时,归属代理和外地代理之间能进行数据的快速传输(发给移动主机的数据,外地代理快速从归属代理拉取),以减少因移动所带来的延迟对协议栈的影响
重传等待的时间缩短,不再因为链路的质量差而延长(RTT),也就是快速重传
选择性重传机制,不是所有的都重传
移动主机上的应用,尽量用少量的tcp链接来构建业务,类似web 2.0,尽量提高在单链接上并发地承载业务
改进的方面涉及移动主机本身以及处在后端的服务器
阅读(1595) | 评论(0) | 转发(0) |