您好,欢迎来到叨叨游戏网。
搜索
您的当前位置:首页Tcp Udp总结

Tcp Udp总结

来源:叨叨游戏网

Tcp Udp总结

Tcp Udp概述

Tcp是面向连接的可靠协议 基于字节流的
Udp是面向非连接的不可靠协议 基于数据报的
Tcp不会出现无序和丢包,而Udp会出现

TCP四层模型中的传输层和网络层

TCP 四层模型:物理层 网络层 传输层 应用层
物理层ARP 网络层IP ICMP 传输层TCP UDP 应用层HTTP FTP SMTP
网络层负责在网络中进行传输,路由选择等,处理网络拓扑结构,而传输层负责端对端的连接,只关心发送端和目的端,所以传输层和网络层是不能合并的。

Tcp三次握手连接

为什么要三次握手

如果A第一次发送的连接请求报文未丢失而是发生了延时,而A发送的第二次连接请求已经建立,这时B又接收到第一次的连接请求就产生错误。
三次握手保证了双方都能接收到对方的消息,A发送连接请求,B接收到后发送SYN报文,A接收到后确定B能收到A的数据,这时A发送ACK报文,B收到后确定A能收到B的消息,连接建立。

Tcp四次挥手

Tcp为什么可靠

  • tcp需要三次握手后才能发送数据,四次挥手才能断开连接
  • tcp的确认号、序列号和超时重传机制保证了数据的有序和不丢包
  • tcp有流量控制和拥塞控制

Tcp流量控制和拥塞控制

流量控制
流量控制使用滑动窗口 告诉发送端自己可以接收到数据数量
拥塞控制:

  • 满开始:拥塞窗口的值从1开始,每次以二倍增长
  • 拥塞避免:预先设有阈值,当拥塞窗口达到阈值后成线性增长
  • 快速恢复:当放生丢包后,阈值设为最大拥塞窗口的1/2,拥塞窗口的值设为阈值开始线性增长。

Tcp和Udp适用情景

Udp使用情景

Udp数据结构简单
使用情景:

  • 需要资源少,网络情况比较稳定
  • 需要广播的数据传输
  • 要求传播速率高,对丢包和无序的容忍度比较高的情况
    比如即使聊天,视频聊天,直播等。

Tcp适用情景

Tcp适合对传播速率要求不高,但要求传输准确率高的情景。
比如文件传输,远程登陆等。

关于套接字编程里的listen和accept

listen的backup为监听连接的最大数,是已经三次握手成功的连接
accept接受已经建立的连接,分配文件描述符,可以进行文件传输。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- gamedaodao.net 版权所有 湘ICP备2024080961号-6

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务