运维开发网

传输层协议介绍、重要的TCP三次/四次握手(理论部分,敲黑板!)

运维开发网 https://www.qedev.com 2020-07-13 10:43 出处:网络 作者:运维开发网整理
本次我和小伙伴分享的是网络七层中的传输层,我将会分成以下几步为大家进行分解说明: 1.TCP协议介绍 2.TCP报文格式 3.TCP三次握手 4.TCP四次握手 5.UDP协议介绍 6.常见协议及其端口 一.TCP和UDP协议 1.TCP是面向连接的、可靠的进程到进程通信的协议 2.TCP提供全双工服务,即数据可在同一时间双向传输 3.TCP报文段(不超过1500字节,1.5kb) TCP将若干个
本次我和小伙伴分享的是网络七层中的传输层,我将会分成以下几步为大家进行分解说明:

1.TCP协议介绍

2.TCP报文格式

3.TCP三次握手

4.TCP四次握手

5.UDP协议介绍

6.常见协议及其端口

一.TCP和UDP协议

传输层协议介绍、重要的TCP三次/四次握手(理论部分,敲黑板!)

1.TCP是面向连接的、可靠的进程到进程通信的协议

2.TCP提供全双工服务,即数据可在同一时间双向传输

3.TCP报文段(不超过1500字节,1.5kb)

  • TCP将若干个字节构成一个分组,叫报文段(Segment)
  • TCP报文封装在IP数据报中

    TCP报文段:

    传输层协议介绍、重要的TCP三次/四次握手(理论部分,敲黑板!)

    1.源端口号(16)

    2.目标端口号(16)

    3.序号(32):发送端为每个字节进行编号,便于接收端正确重组

    4.确认号(32):用于确认发送端的信息

    5.首部长度(4)

    6.保留(6)

    7.URG(紧急指针位):是1代表开启,是0代表关闭,不需要经过缓存直接提交给应用层,举例如下:

    甲和乙两台机器中分别都有缓存,这个时候甲向乙传输数据原先是会先到乙的缓存中,当数据全部发送结束之后再由乙的缓存传输到应用层

    8.ACK(确认):确认位

    9.PSH(快速接收传递给应用层):是1代表开启,是0代表关闭,需要经过缓存,等一批报文段到齐之后直接发送应用层,不进行排队

    10.RST(重新发送连接):重置位

    11.SYN(请求建立连接标记):1代表建立连接,

    12.FIN(请求断开连接标记):

    13.窗口大小(16):用于说明本地可接收数据段的数目,窗口大小是可变的,窗口越大传输速度越快

    14.校验和(16):差错校验

    15.紧急指针(16)

    16.选项:可选项

    二.TCP建立建立连接的过程为三次握手:(重要)

    举例:此时我们有客户端PC1/服务端PC2

    传输层协议介绍、重要的TCP三次/四次握手(理论部分,敲黑板!)

    具体过程如下:
    1. PC1发送SYN请求建立连接
    2. PC2接收后会发送ACK确认,同时发送SYN请求建立连接(双向互通)
    3. PC1发送ACK确认

三.TCP断开连接的四次握手:(重要)

举例:此时我们有客户端PC1/服务端PC2

传输层协议介绍、重要的TCP三次/四次握手(理论部分,敲黑板!)

具体过程如下:

  1. PC1发送FIN断开连接请求,并发送ACK确认位
  2. PC2加以确认ACK
  3. PC2发送FIN断开连接请求,和ACK确认位请求
  4. PC1发送ACK确认位

    但是这里需要注意的是在TCP断开连接过程中,有一个半关闭的概念。TCP一方可以终止发送数据,但仍然可以接收数据,称为半关闭。

    此处我们举例说明例如:迅雷下载东西,在页面点击下载之后使用迅雷下载,此时退出页面之后迅雷仍会继续下载

    传输层协议介绍、重要的TCP三次/四次握手(理论部分,敲黑板!)

    具体过程如下:
  5. PC1客户端发送FIN报文段,半关闭此连接
  6. PC2服务器发送ACK报文段接受半关闭,然后继续发送数据,而客户端只发送ACK确认,不再发送任何数据
  7. PC2服务器把数据都发送完成时,就发送FIN报文段,
  8. PC1发送ACK报文段,这样就关闭了连接

常用的TCP端口号及其功能:

传输层协议介绍、重要的TCP三次/四次握手(理论部分,敲黑板!)

我们来分别说一下各个端口表示的含义:

  • 21端口:FTP(20端口,数据连接/21端口,控制连接)
  • 23端口:TELNET:明文访问
  • 22端口:SSH:密文访问
  • 25端口SMTP:服务器开放的端口,用于发送邮件
  • 80端口:HTTP:超文本传输协议
  • 443端口:HTTPS:安全传输协议
  • 110端口:POP3,用于邮件的接收
  • 143端口:IAMP4:用于邮件的接收
  • 53端口:DNS

四.UDP协议:

1.无连接、不可靠的传输协议

2.花费的开销小

UDP报文的首部格式:

传输层协议介绍、重要的TCP三次/四次握手(理论部分,敲黑板!)

UDP长度:用来指出UDP的总长度,为首部加上数据

校验和:用来完成对UDP数据的差错校验,它是UDP协议提供的唯一可靠机制

常用的UDP端口号及其功能:

传输层协议介绍、重要的TCP三次/四次握手(理论部分,敲黑板!)

以上就是传输层协议的相关介绍及重要的TCP三次和四次握手的具体过程,还有一些常见的端口和相对应代表的含义,谢谢!

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号