前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >5.TCP/UDP-传输层

5.TCP/UDP-传输层

作者头像
见贤思齊
发布2020-08-05 16:13:28
4810
发布2020-08-05 16:13:28
举报
文章被收录于专栏:初见Linux初见Linux

TCP/UDP(或TCP/IP)保留的传输层端口号范围是 1 ~ 65535。公认端口:1 ~ 1023 。动态端口:1024 ~ 65535。

面向连接: 优点:可靠丢包少(因为有专属通道)。 缺点:复杂(每次都要进行三步操作:建立连接、使用连接、释放连接。其实就是建立通信线路),耗资源,利用率低 (建立专属通道)

无面向连接: 优点:开销小(不需要连接),迅速灵活。 缺点:易丢包。

一、TCP(传输控制协议):用于精准的数据传输

TCP是面向连接形式的可靠服务,字节流形式传输。 TCP是建立在无连接的IP基础上

1.TCP传输特性

① 可靠的传输服务。 ② 面向连接。 ③ 有序。 ④ 全双工通信。 ⑤ 缓冲累积传送(缓冲区)。 ⑥ 可变滑动窗口 (窗口:调流控流的工作)。

TCP报文包含在IP数据报中进行传送。

TCP和IP是配合工作的,所以有些参数可直接传送给IP层处理,TCP头和IP头合在一起使用。

(1)TCP 3 种机制:

1.序号:用序号对乱序的数据包进行重组变成有序的数据包,从无序变有序。 2.补包:再把数据包进行排序,纠错检错的功能,确认有没有收到包,若没有收到,让发送者再发送一次。 3.窗口:利用窗口控制数据流量的传输。

2.TCP传输头

TCP传输头格式.png

(1)源端口、目标端口:

各占 16 位。 源端口:说明源服务访问点。 目标端口:表示目标服务访问点。

(2)发送、接收顺序号:

各占 32 位。 序号范围:[0 , 2^32-1] 。

(3)TCP头部长度:(即偏置值)

4位。 表示tcp头部有多少个32bit字(4字节),因为4位最大值是15个32bit,所以最多有480bit,也就是60个字节是最大的tcp头部长度。

(4)标记字段:

占 6 位。

① ACK:

确认号,只要确认连接,他就会返回一个ACK,初始值为1。若ACK为9那个9-1之前的已经接收。 携带ack标志的报文段也称确认报文段。

② PSH:

接收方收到报文,向上级发送。 提示接收端应用程序应该立即从tcp接受缓冲区中读走数据,为后续接收的数据让出空间

③ RST:

复位,重新建立连接。 表示要求对方重建连接。带RST标志的tcp报文段也叫复位报文段

④ SYN:

同步位,建立连接。 表示建立一个连接,携带SYN的tcp报文段为同步报文段

⑤ FIN:

释放连接。 表示告知对方本端要关闭连接了。 携带FIN的tcp报文段为连接释放报文段。

⑥ URG

紧急指针是否有效。

(5)窗口:

16位。控制字节流大小。

(6)校验和

16位。 校验包含TCP头部 和 TCP数据部分,比如利用CRC校验。

(7)紧急指针:

与顺序字段进行相加,表示紧急数据最后一个字节

3.TCP三次握手(重点:标志字段是怎样的)

TCP三次握手.png

第 1 次:A > B 发送请求,B知道A要建立连接。SYN 第 2 次:B < A 发送应答,让A知道B收到连接请求了。SYN、ACK 第 3 次:A > B 发送应答,让B知道A收到了回应。ACN

4.TCP4次挥手

TCP4次挥手1.png

第 1 次:A > B 发送连接释放报文,停止发送数据。FIN 第 2 次:B < A 发送确认报文,表示收到释放报文。ACK 第 3 次:B < A 发送连接释放报文,此报文在最终数据传送完成时发送。FIN 第 4 次:A > B 发送确认报文,最后完成连接的释放。ACK

5.TCP拥塞控制(考点)

目的:缓解互联网通信紧张状况,报文到达速率大于路由节点转发速率 。记住解决方案。

TCP拥塞控制2.png

二、UDP(用户数据报协议):用于音视频信号传输

UDP:无面向连接(也就是没有专属通道),优点:开销小(不需要连接),迅速灵活。缺点:易丢包。

UDP头.png

1.UDP传输特性

提供无连接的传输服务,不可靠,甚至可以对用户数据不进行校验(当UDP校验和字段为0)。

2.字段:

源端口、目标端口、段长、校验和 16位。 数据(不是16位的倍数需加填充位。)

3.TCP、UDP校验和区别:

UDP计算校验和的方法和计算IP数据报首部校验和的方法相似。 但不同的是:IP数据报的校验和:只检验IP数据报的首部, 但UDP的校验和:将首部 和 数据部分一起都检验。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、TCP(传输控制协议):用于精准的数据传输
    • 1.TCP传输特性
      • (1)TCP 3 种机制:
    • 2.TCP传输头
      • (1)源端口、目标端口:
      • (2)发送、接收顺序号:
      • (3)TCP头部长度:(即偏置值)
      • (4)标记字段:
      • (5)窗口:
      • (6)校验和
      • (7)紧急指针:
    • 3.TCP三次握手(重点:标志字段是怎样的)
      • 4.TCP4次挥手
        • 5.TCP拥塞控制(考点)
        • 二、UDP(用户数据报协议):用于音视频信号传输
          • 1.UDP传输特性
            • 2.字段:
              • 3.TCP、UDP校验和区别:
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档