当前位置:   article > 正文

计算机网络(二)—— 传输层协议(TCP & UDP)_udp 直播 协议

udp 直播 协议

目录

1.UDP协议

1.1 UDP协议的包头信息:

1.2 UDP特点

2.TCP协议

2.1 TCP包头(变长的) 

2.2 可靠性分析:

2.3 可靠性机制——确认应答(确认序号)+ 超时重传

2.4 连接管理——三次握手

2.5 连接管理——四次挥手

2.6 部分面试题: 

2.7 流量控制 VS 拥塞控制

2.8其他机制:

3.UDP & TCP


1.UDP协议

1.1 UDP协议的包头信息:

定长——8个字节,容易做解包

16位源端口 + 16位目的端口 + 16位UDP长度(决定了能传输的数据最大长度是64K) + 16位校验和(校验和就是为了防止数据错误,类似hash算法,发方计算得到校验和,收方用相同hash计算,比对数据,如果收端的hash值与发端的hash不一致,会直接丢弃)

1.2 UDP特点

  • 无连接的(不用连接就发送);

  • 不可靠的(只管发,至于发成功没,发正确没是不能确定的)

  • 面向数据报文(从应用层来的数据,我收到就直接发,不会拆分也不会合并,也没有发送缓冲区)

2.TCP协议

职责:

  • 进程-进程通信

  • TCP是可靠的(但不能保证是安全的)

2.1 TCP包头(变长的) 

2.2 可靠性分析:

  • TCP会尽自己最大努力,将数据发给对方

  • 如果真的发不过去,TCP至少会告诉进程,让进程知道我没发过去,数据失败了(UDP不可靠就在这里,任何反馈信息都没有,发出去就不管了)

  • 校验和也保证了我数据大概率无错

  • TCP可以保证收到的数据一定是有序的,按照发放顺序

  • TCP会根据对方的接收能力和网络线路的承载能力,进行流量的控制

2.3 可靠性机制——确认应答(确认序号)+ 超时重传

确认-应答机制——对方的TCP对收到的TCP数据确认应答,通过32位序号SN和32位确认序号ASN实现

确认应答机制:

【双方维护各自的SN,ASN则是对对方SN的回应】

超时重传机制:

如果没有收到应答:

可能对方确实没有收到?

可能对方的应答还没来?

可能对方的应答丢包了?

总之,发方不应该无限期等下去,可以定一个时限

无论哪种情况,发方是不管的,如果超过了时间还没收到,发方就重发一份,这就要求 收方 要有去重能力(根据序列号去重),收方对于已经收到的丢弃就行;

发方也不应该无限的超时重传,所以,超时重传的次数也有限

达到上限次数后,就实在没办法了,所以TCP会关闭连接再通知进程(以异常返回),最后的最后,TCP会发送 reset segment 出去给收方(最后的努力)

2.4 连接管理——三次握手

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/406469
推荐阅读
相关标签