美文网首页工作生活
计算机网络02 - 传输层

计算机网络02 - 传输层

作者: 第八天的蝉啊 | 来源:发表于2019-07-06 21:26 被阅读0次

    目录

    1. TCP协议和UDP协议
    2. TCP首部
    3. TCP连接管理
    4. UDP首部

    1. TCP协议和UDP协议

    • TCP协议:面向连接的、可靠的流协议,实行“顺序控制”或“重发控制”机制,具备“流量控制”、“拥塞控制”、提高网络利用率等功能
    • UDP协议:面向无连接的、不具有可靠性的数据报协议,不保证消息一定会到达
    • 端口号:用来识别同一主机中不同的应用程序,也被称为程序地址,通过源IP地址、目标IP地址、协议号、源端口号、目标端口号同时进行通信识别

    2. TCP首部

    TCP首部
    • 源端口:16 bit,发送数据的源进程端口
    • 目的端口:16 bit,接收数据的进程端口
    • 序号:32 bit,代表当前TCP数据段第一个字节占整个字节流的相对位置
    • 确认号:32 bit,代表接收端希望接收的数据序号,为上次接收到数据报的序号+1,当ACK标志位为1时才生效
    • 数据偏移:4 bit,实际代表TCP首部长度,最大为60字节
    • SYN:同步标志,用于数据同步
    • ACK:确认标志,ACK=1时确认号才有效
    • FIN:结束标志,用于发送端提出断开连接
    • URG:紧急标志,URG=1是紧急指针有效
    • PSH:指示接收方立即将数据提交给应用层,而不是等待缓冲区满
    • RST:重置连接
    • 窗口值:16 bit,标识接收方可接受的数据字节数
    • 校验和:16 bit,用于检验数据完整性
    • 紧急指针:16 bit,只有当URG标识位为1时,紧急指针才有效。紧急指针的值与序号的相加值为紧急数据的最后一个字节位置。用于发送紧急数据

    3. TCP连接管理

    • 描述:数据通信之前,通过TCP首部发送SYN包作为建立连接的请求并等待确认应答,在通信结束时会发送FIN包进行断开连接处理,一个连接的建立与断开正常至少需要来回发送7个包才能完成
    • TCP连接的建立:三次握手
      连接的建立
    • TCP连接的释放:四次挥手
      连接的释放
    • 超时重传:在发送某一个数据以后就开启一个计时器,在一定时间内如果没有得到发送的数据报的ACK报文,那么就重新发送数据,直到发送成功为止。
    • 滑动窗口:发送窗口只有收到对端对于本段发送窗口内字节的ACK确认,才会移动发送窗口的左边界。接收端可以根据自己的状况通告窗口大小,从而控制发送端的接收,进行流量控制。
    • 拥塞控制:TCP拥塞控制4个核心算法包括慢开始、拥塞避免、快重传、快恢复
    慢开始:先探测一下网络的拥塞程度,也就是说由小到大逐渐增加拥塞窗口的大小
    拥塞避免:让拥塞窗口缓慢增长,即每经过一个往返时间RTT就把发送发的拥塞窗口cwnd加1,而不是加
             倍。无论是在慢开始阶段还是在拥塞避免阶段,只要发送方判断网络出现拥塞,就把慢开始门
             限设置为出现拥塞时的发送窗口大小的一半。然后把拥塞窗口设置为1,执行慢开始算法。
    快重传:发送方只要一连收到3个重复确认就应当立即重传对方尚未收到的报文段,而不必继续等待设置
           的重传计数器时间到期
    快恢复:把拥塞窗口大小设置为慢开始门限减半后的数值,然后开始执行拥塞避免算法(“加法增大”),
           使拥塞窗口缓慢地线性增大
    

    4. UDP首部

    UDP首部
    • 端口号:用来表示发送和接受进程。由于IP层已经把I P数据报分配给TCP或UDP(根据IP首部中协议字段值),因此TCP端口号由TCP来查看,而UDP端口号由UDP来查看。TCP端口号与UDP端口号是相互独立的
    • 长度:UDP长度字段指的是UDP首部和UDP数据的字节长度
    • 检验和:UDP检验和是一个端到端的检验和。它由发送端计算,然后由接收端验证。其目的是为了发现UDP首部和数据在发送端到接收端之间发生的任何改动

    相关文章

      网友评论

        本文标题:计算机网络02 - 传输层

        本文链接:https://www.haomeiwen.com/subject/efcxhctx.html