7. 传输层协议(TCP、UDP)

TCP(Transmission Control Protocol)传输控制协议

特点:

  1. 面向连接的,可靠的传输层协议
  2. 先建立TCP连接,再访问业务。
    7.	传输层协议(TCP、UDP)

可靠性保证:

  1. 确认机制
  2. 重传机制

TCP报文结构

7.	传输层协议(TCP、UDP)
承载在IP之上,协议号:6
长度:20~60B(20B固定大小)
(1) 源端口: 发送方的端口号。
(2) 目的端口: 接收方的端口号。
(3) Sequence Number: ***,由发送方随机产生。
(4) Acknowledge Number: 应答***,对上一份TCP报文的***进行回应。
        作用:
            a. 确认
            b. 重传
(5) Flag: 标志位。用于标识TCP报文的功能。
        a. Syn: 初始化。用于标识报文是否为第一份TCP报文。
            Syn=1,第一份。
            Syn=0,不是第一份。
        b. ack: 应答位。
        c. RST: 重置位。标识TCP连接建立失败,需要重新建立连接。
        d. FIN: 拆链位。用于拆除TCP连接。
(6) Window: 滑动窗口。用于流量控制。
            慢启动:TCP流量在发送过程中,会逐渐增大。
            滑窗减半机制:当网络拥塞时,TCP流量会减半。

TCP三次握手

作用:用于建立TCP连接。
7.	传输层协议(TCP、UDP)
7.	传输层协议(TCP、UDP)

第一次握手报文
7.	传输层协议(TCP、UDP)

第二次握手报文
7.	传输层协议(TCP、UDP)

第三次握手报文
7.	传输层协议(TCP、UDP)

TCP重传机制

通过应答***实现确认和重传功能。
7.	传输层协议(TCP、UDP)

TCP四次挥手

作用:用于断开TCP连接。
7.	传输层协议(TCP、UDP)

第一次挥手
7.	传输层协议(TCP、UDP)

第二次挥手
7.	传输层协议(TCP、UDP)

第三次挥手
7.	传输层协议(TCP、UDP)

第四次挥手
7.	传输层协议(TCP、UDP)

TCP端口号

7.	传输层协议(TCP、UDP)

端口的作用: 为应用层提供网络服务的接口。
    取值范围: 0~65535
                0~1023        保留,给特定的协议使用
        1024~65535        其他应用程序使用
    FTP(文件传输协议)        21(控制连接)/20(数据连接)
    HTTP(超文本传输协议)       80
    telnet(远程登录)             23
    SMTP(简单邮件传输协议)    25
    POP3(邮局协议)                110
    DNS(域名服务)              53

UDP(User Datagram Protocol)用户数据协议

特点:
    a. 面向无连接的,不可靠的协议。
    b. 可靠性由应用层保证
    c. 适用于语音业务、视频业务等对时延敏感的业务。

7.	传输层协议(TCP、UDP)

UDP报文结构

承载在IP之上,协议号:17
7.	传输层协议(TCP、UDP)

    长度: 8B
    源port
    目的port
        DHCP         67(服务器)/68(客户端)