TCP对即时通讯协议设计的启示

TCP的特点
(1)面向连接的可靠协议;
(2)序列号机制,去除重复分组;
(3)流量控制 + 全双工。

既然TCP是可靠的,为什么即时通讯应用层协议还要用超时,确认,重传的机制来进一步保证消息的可达呢?
大哥,TCP并不能保证数据一定被对端接收啊。试想,朝一个不存在的ip+port发请求,对端能接收到么。
TCP提供的是消息的可靠投递与故障的可靠通知(通过放弃重传并终止连接通知用户)。
需要在即时通讯应用层确认机制来保证,消息被对端接收受,如果对端没有确认,则需另行处理(例如存储未到达消息,离线消息等)。

评论关闭。