【每日一记2】第9天:传输层
  

0010 8701人觉得有帮助

{{ttag.title}}
传输层
1.传输层协议:
1)TCP/IP协议族的传输层协议主要有两个:
TCP(Transmission  Control  Protocol):传输控制协议
UDP(User  Datagram  Protocol):用户数据报协议

2)TCP协议特点:
TCP是面向连接的服务、可靠的进程到进程间通信的协议
TCP提供全双工服务,即数据可在同一时间双向传输

3)TCP报文封装在IP数据报中
|     IP首部     |                           TCP报文段                      |
                                       | TCP包头 |  应用层数据  |

4)TCP包头分析:
-----------------------------------------------------------------------------------------------------------------
|                                源端口号(16)             |               目标端口号(16)                                  |
-----------------------------------------------------------------------------------------------------------------
|                                                            序号(32)                                                                  |
-----------------------------------------------------------------------------------------------------------------
|                                                     ack 确认号(32)                                                               |
-----------------------------------------------------------------------------------------------------------------
|  首部  |    保   |  U  |  A  |  P  |  R  |  S  |  F  |                                                                        |
|  长度  |    留   |  R  |  C  |  S  |  S  |  Y  |  I   |                            窗口大小(16)                       |
|  (4)    |    (6)  |  G  |   K  |  U  |  T |  N  |  N  |                                                                       |
-----------------------------------------------------------------------------------------------------------------
|                         校验和(16)                         |                       紧急指针(16)                            |
-----------------------------------------------------------------------------------------------------------------
|                                                                  选项                                                                  |
-----------------------------------------------------------------------------------------------------------------

端口号范围:0-65535  
(查看本地开放的端口号:windows:netstat  -an    linux:netstat  -antpl)
源端口号:是客户端进行随机生成的,一般是从50000开始的。
目标端口号:一般是服务器固定的。如:mysql:3306
序列号seq:TCP为每个字节都进行了编号。
确认号ack:通过ack来确认每个字节是否收到,判断是否需要重传!
首部长度:该包头的大小(20-60字节,一般为20字节)
控制位:SYN:同步位,请求建立连接位
FIN:终止位,请求断开连接位
RST:重置位,强制对方断开连接,释放会话
PSH:推送位,推送数据到应用层,为1时,推送应用层数据,为0时,不推送
ACK:确认位,该位为开关,为1时,ack号有效,为0时,ack无效
UGR:紧急位,为1时,代表有些字节为紧急数据,需要第一时间推送到应用层,
需要与紧急指针配合使用
窗口大小:win窗口,用于通知发送方自己的缓存大小
校验和:校验整个TCP段
5)TCP的三次握手建立连接(跟进程没有关系,只是两个协议在对话)
                                     PC1                      PC2
   1.发送SYN报文
     (seq=x,SYN=1)                           
                                                                              2.发送SYN+ACK报文
                                (seq=y,ack=x+1,
                                 SYN=1,ACK=1)
   3.发送ACK报文
    (seq=x+1,ack=y+1,
      ACK=1)
TCP半连接 -- SYN  Flood攻击/SYN泛洪攻击
TCP半连接概念:只进行了TCP前2次握手,而没有进行第三次握手确认!
即会话没有建立成功
SYN泛洪攻击原理:大量的伪造第一次握手的SYN包,并不进行第三次握手确认!
SYN泛洪攻击现象/结果:大量占用了服务的会话,在服务器上存在大量的半连接会话,
当达到上限时,服务将无法为正常的访问请求进行回应!

6)TCP的四次握手断开连接
                                  PC1                      PC2
   1.发送FIN/ACK
     (FIN=1,ACK=1)
               2.发送ACK报文
                   (ACK=1)
               3.发送FIN/ACK报文
                   (FIN=1,ACK=1)
   4.发送ACK报文
      (ACK=1)

7)UDP协议特点
无连接、不可靠的传输协议
花费的开销小、传输效率较高

8)UDP协议包头:
------------------------------------------------------------------------------
|             源端口号(16)               |               目标端口号(16)       |
------------------------------------------------------------------------------
|              UDP长度(16)              |               UDP校验和(16)       |
------------------------------------------------------------------------------

注释:
UDP长度:用来指出UDP的总长度,为首部加上数据
校验和:用来完成对UDP数据的差错检验,它是UDP协议提供的唯一可靠机制


TCP为什么可靠:
传送数据前和传送数据后,要进行三次握手连接和四次握手断开连接
编号机制:为每个字节都进行编号
重传机制:每次发送数据后,会进行计时,在规定时间内未收到对方应答,会重传
确认机制:对收到的每个包会进行确认,告诉对方已收到

打赏鼓励作者,期待更多好文!

打赏
1人已打赏

新手606176 发表于 2019-12-15 08:18
  
干货满满,感谢楼主的分享!
liugd1013 发表于 2019-12-19 19:24
  
感谢楼主的分享,传输层的知识描述的很详细
蟲爺 发表于 2022-1-9 23:49
  
感谢分享
发表新帖
热门标签
全部标签>
西北区每日一问
每日一问
技术盲盒
技术笔记
干货满满
GIF动图学习
功能体验
通用技术
标准化排查
SDP百科
产品连连看
技术咨询
技术圆桌
社区新周刊
秒懂零信任
自助服务平台操作指引
信服课堂视频
畅聊IT
在线直播
新版本体验
技术晨报
安装部署配置
sangfor周刊
VPN 对接
2023技术争霸赛专题
专家问答
高手请过招
升级&主动服务
答题自测
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
原创分享
解决方案
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
社区帮助指南
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
高频问题集锦

本版版主

12
185
6

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人