前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TCP与UDP协议

TCP与UDP协议

作者头像
阿七日记
发布2021-12-28 10:12:52
5660
发布2021-12-28 10:12:52
举报
文章被收录于专栏:阿七日记阿七日记

TCP协议分析

1.1 TCP协议概述

TCP协议属于4层传输层协议! 传输层包括两大协议:TCP 和 UDP (2个协议的区别是什么?)

1.2 TCP与UDP协议的区别

TCP协议:面向连接的服务(重传机制)、可靠传输数据、速度慢 UDP协议:无连接服务、不可靠、速度快 TCP与UDP的共同作用:通过源与目标端口号,来完成进程到进程的通信!

TCP头部分析

TCP与UDP协议
TCP与UDP协议

源端口号:一般客户机的源端口号都是随机的,且一般都是50000以上!

目标端口号:一般服务器上的目标端口号都是固定,如80、443、23、53

端口号范围:0-65535 0与65535有特殊用途、一般1-65534可用 1-1024区间基本被国际标准组织占用分配给了固定的服务器、如20、21、80、443、53、67、68等等

序号:seq,对每个报文字节的编号

确认号:ack,确认对方的报文

六位控制位:

SYN:请求建立连接位!!

FIN:请求断开连接位!!

RST:(Reset)重置位!!(强制断开位!!)

ACK:确认控制位!当ACK=1时,ack有效,当ACK=0,ack无效

PSH:push,推送位!当PSH=1时,代表有上层数据,需要推送数据到上层,反之为没有!

URG:urgen,紧急位!URG=1时,代表紧急数据需要第一时间推送给应用层,需要配合紧急指针完成工作!

窗口大小windows:用来做流量控制!类似与水龙头!

校验和:校验4+5层数据,也就是校验数据段!!!

UDP协议分析

TCP与UDP协议
TCP与UDP协议

UDP包头长度:8个字节

UDP长度字段:代表4+5层数据的总长度

UDP校验和:校验4+5层数据,也就是校验数据段!!!也可能本字段是是UDP协议唯一的可靠机制!

TCP三次握手建立连接

TCP与UDP协议
TCP与UDP协议

重点:SYN只有双方前2次握手为1,代表彼此要建立连接! 面试题: 问:为什么TCP可靠? 答:因为TCP是面向连接服务,同时双方发送的每一个报文都有编号机制与确认重传机制,所以可以保证数据传输的可靠性!!同时TCP每发送一个报文后,都会开启一个重传计时器,以便防止数据中途丢失,而可以重传!

TCP四次握手断开连接

TCP与UDP协议
TCP与UDP协议

抓包分析TCP与UDP

案例:抓telnet/ftp/http报文 环境 win7客户机(抓包) + win2003服务器(Telnet/HTTP/FTP)

三次握手报文

TCP与UDP协议
TCP与UDP协议

SYN报文

TCP与UDP协议
TCP与UDP协议

四次握手断开

TCP与UDP协议
TCP与UDP协议

FIN报文

TCP与UDP协议
TCP与UDP协议
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-11-23,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • TCP协议分析
    • 1.1 TCP协议概述
      • 1.2 TCP与UDP协议的区别
      • TCP头部分析
      • UDP协议分析
      • TCP三次握手建立连接
      • TCP四次握手断开连接
      • 抓包分析TCP与UDP
        • 三次握手报文
          • SYN报文
            • 四次握手断开
              • FIN报文
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档