• TCP:传输控制协议


    1:TCP的概念

    TCP和UDP使用IP层,但是和UDP提供不一样的服务,TCP提供的是一种面向连接的,可靠字节流服务,广播和多播是不适用于TCP的

    2:TCP所提供保证可靠性的措施

    2.1应用数据被分成最适合TCP发送的数据块,TCP传递给IP的信息单位称为报文段或者段

    2.2TCP发送一个段后,它启动一个定时器,当定时器到达时还没有收到应答,则应该重发此报文短

    2.3TCP收到一个报文,应答并不是立即发送的,而是应该推迟几分之一秒

    2.4TCP将保持他首部和数据的校验和,如果接收方得知数据有错误,并不发送一个应答,等待发送方超时重传

    2.5TCP必须提供重排算法,因为数据报到达会失序

    2.5TCP应该提供流量控制

    3:TCP数据格式

    2.1:16位源端口号:表示发送TCP报文段的是哪一个应用程序端口

    16位目的端口号:表示接受的主机是哪一个端口号,和目的IP地址配对

    以上两个用来确定一条唯一的TCP连接

    2.2:32位序号:序号用来标示从TCP发端到TCP收端的数据字节流,这个数字表示此报文段的第一个数据字节

    序号到达2^32-1后重新从0开始

    此标志开始时的初始状态和SYN有关,当建立一个新的连接的时候,SYN变为一,序号字段采用初始序号ISN,发送第一个数据的时候,序号为这个ISN+1,因为SYN标志消耗了一个序号

    2.3:32位确认序号,比如TCP发放发送一个数据0-1024,如果接收方接收到则返回1025,首先,此确认序号,必须在ACK置一的条件下才起作用。

    我们说TCP是一个没有选择确认的或否认的滑动窗口协议,没有选择确认指的是比如发放1-1024,2048-3072,则返回的确认只能是1025,同时他也不能进行报文段否认,即如果1-1024这个报文段出错,不能返回一个指明此报文段错误的标志,只可以等待重传

    2.4:校验和,包括了TCP的头部和数据部分,是一个强制性的

    2.5:16位窗口大小,表示现在的窗口是多大,一般是由发送方发送窗口大小





  • 相关阅读:
    计算机的时空观以及俩者间的相互转换
    发送一个记录数据包
    流的压缩与解压缩函数
    通过自定义消息调用主窗体的菜单项
    多标签窗体的释放一法
    记录数组存出到文件和从文件导入
    变体记录
    内存流的使用
    用流读写结构化文件
    下拉框、下拉控件之Select2
  • 原文地址:https://www.cnblogs.com/SmileLion/p/5863547.html
Copyright © 2020-2023  润新知