zoukankan      html  css  js  c++  java
  • 网络基础知识03-传输层协议TCP和UDP

    参考书籍:《TCP-IP详解卷》

    UDP

    特点:不可靠性。应用程序的数据传输给网络层,但是不保证数据的送达目的地。

    基本概念:

    1.UDP长度字段:指的UDP首部和数据的总和,最少8字节。

    2.首部包含的数据:

      - 两个十六位的端口号,分别为源端口(可选字段)和目标端口
    
      - UDP长度字段
      
      - UDP校验和数据
    

    3.UDP的校验和

      - UDP覆盖首部和数据的校验和
      
      - UDP的校验和是非必须的
    
      - 增加了伪首部,两次校验数据是否已经到达
    
      - UDP在上图中伪首部返回为0,说明没有校验
    

    传输

    1.IP分片

    -  传输层传输到网络层数据,IP传输数据对数据帧的最大长度有限制
    
    -  可以在原始传输器分片,也可能在中转传输器分片
    
    -  到达目的地才能进行重装
    
    -  IP数据传输没有重传的机制,丢失数据后UDP不会重传,TCP会重传
    
    1. 广播,多播,单播

      • 广播和多播为UDP仅有

      • 单播:以太网帧仅发往单个目的主机,目的地址指向单个接口

      • 广播:一个主机向网上的所有其他主机发送帧

      • 多播:1.网卡过滤是否多播地址;2.主机过滤检测是否属于多播地址;

    TCP

    • TCP的首部

      • 首部中的6个标志

    TCP连接的建立与终止

    1.建立(三次握手)

    • 请求端发送一个SYN段知名客户端打算链接的服务器端口,以及初始序号ISN

    • 服务器返回服务器初始序号的SYN报文段。同时,将将请求端ISN序号+1

    • 客户端对服务端ISN+1,对SYN报文端进行确认。

    2.终止连接(四次握手)

        每个方向必须单独进行关闭。客户端和服务器端,收到FIN必需通知应用层终止这个方向的数据传输。

    • 客户端向服务器发送FIN

    • 服务器收到FIN,他发回一个ACK,将收到的序号+1。

    • 服务器同时发送一个FIN占用一个序号

    • 客户端发挥一个确认,将确认的序号设置为收到的序号+1

    3.TCP的半关闭

    TCP提供的连接切断结束他的发送后,还能接收来自另一端数据的能力。

    4.复位报文段

    常见的情况:

    • 产生复位的一种常见情况时,当连接请求到达时,目的端口没有进程正在听。UDP是产生一个不可达的信息,TCP则使用复位。

    • 异常中端一个连接:

      • 丢失任何数据立即发送复位报文段

      • RST的接收方会区分另一端执行的是异常关闭还是正常关闭;

    • 检测版打开连接,一方已经关闭或者异常终止。例如客户主机突然停电。

    4. 同时打开和同事关闭

    • 两个应用程序同时批次执行主动打开。例如一个服务器发送另一个主机打开连接,同时另一个主机与服务器执行主动打开

    • 每一端即是客户端又是服务端

    • 同时关闭
  • 相关阅读:
    java去除string类型里面的中括号
    java深拷贝浅拷贝
    前端接受数据去除[" "]的方法
    sql 查询近6 /xx个月/天 统计数据
    vue 定时器(定时任务)
    vue 二维码判断手机登录是哪个操作系统
    Connection is read-only. Queries leading to data modification are not allowed
    redis一闪而退解决办法
    前端的模糊查找
    vue笔记生命周期里面的某些函数
  • 原文地址:https://www.cnblogs.com/perferect/p/13384745.html
Copyright © 2011-2022 走看看