传输层协议

Posted ‘朱砂痣’、

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了传输层协议相关的知识,希望对你有一定的参考价值。

  1. List item

传输层协议简述

  • TCP协议介绍
  • TCP报文格式
  • TCP三次握手
  • TCP四次挥手
  • UDP协议介绍
  • 常见协议和端口

TCP协议

  • TCP是面向连接的,可靠的进程到进程的协议
  • TCP提供全双工服务,即数据可在同一时间双向传输
  • TCP报文段
    TCP将若干个字节构成一个分组,叫报文段
    TCP报文段封装在IP数据报中
IP首部TCP报文段

TCP报文段格式

  • 序号:发送端位每个字节进行编号,便于接收正确重组
  • 确认号:用于确认发送端的信息
  • 窗口大小:用于说明本地可接收数据段的数目,窗口大小是可变的
  • SYN:同比序号位,TCP建立连接时将该值设为1
  • 确认序号位,当该值为1时,用于确认发送方的数据
  • FIN:当TCP断开时将该值设为1
    TCP连接
  • TCP建立连接的过程称为三次握手
    示意图
    三次握手过程
知识点补充:
半关闭:
  - 当tcp链接中A向B发送FIN请求关闭,另一端B回应ACK之后,并没有立即发送FIN给A,A处于半连接状态(半开关),此时A可以接收B发送的数据,但是A已经不能再向B发送数据

半连接:
 -发生在tcp三次握手中,如果A向B发起连接,B按照正常情况响应了,但是A不进行三次握手,这就是半连接
半连接攻击:半连接,会造成B分配的内存资源就一直耗着,直到资源耗尽(SYN攻击)
 - 半打开:如果一方关闭或者异常关闭(断电,断网),而另一方不知情,这样的连接称之为半打开。处于半打开的连接,如果双方不进行数据通信,是发现不了问题的,只有在通信时才能察觉到这个连接处于半打开状态,如果双方不传输数据的话,仍处于连接状态的一方不会检测到另外一方已经出现异常
   解决方法:如何解决半打开问题,引入心跳机制就可以察觉半打开
   如果需要发数据的话,这边收到之后其实发现这个连接不存在了,就会回复RST包告知,这个时候就需要建立连接了

TCP断开连接的四次挥手
在这里插入图片描述

以上是关于传输层协议的主要内容,如果未能解决你的问题,请参考以下文章

传输层协议(TCP, UDP)

传输层协议应用层协议

传输层TCP协议连接的建立和断开

传输层协议

TCP_IP协议(传输层)笔记

4-1:TCP协议之传输层的作用及传输层协议TCP和UDP