当前课程知识点:计算机网络 > 第六章 传输层 > 6.5 TCP三次握手建立连接 > Video
TCP提供的是面向连接的服务
TCP数据段的传输
是在TCP连接上进行的
TCP连接是三次握手建立的
建立的过程
通常是这样的
一方server
被动地等待一个进来的连接请求
另一方通常是client
通过发送连接请求
设置一些参数
当请求到达服务器
服务器会发回确认应答
应答到达请求方的时候
请求方最后确认
这个时候连接就建立起来了
来看一下这个图解
左边的Host1和右边的Host2
想建立一根TCP的连接
Host1首先发送一个连接请求
数据段
这个特殊的数据段
叫SYN
包含了一个初始序列号X
它是随机产生的
控制位SYN等于1
ACK等于0
整个这个SYN
叫做第一次握手信息
Host2收到了Host1的SYN
会回发一个连接应答
也叫SYN
里面包含了一个初始序列号Y
这个初始序列号
是Host2随机产生的
控制位SYN等于1
ACK也等于1
同时它的确认号叫ACK number
等于X+1
表示对host1的
X号字节的确认
这是第二次握手
当连接应答到达Host1
Host1发送最后的确认
包含序列号等于X+1
确认号等于Y+1
控制位SYN等于0
ACK等于1
这是第三次握手信息
当第三次握手信息
到达对方的时候
这个连接就建立起来了
这就是三次握手
建立TCP连接的过程
任何采用了TCP的应用
都会在正式传输数据之前
搭建这根TCP的连接
你可以尝试使用
WireShark
或类似的抓包工具
抓到三次握手信息
这是我抓到的第一次握手报文的
截图
可以看到
明显的标记
控制位SYN等于1
ACK等于0
注意
三次握手
建立TCP连接
也被称为同步
这个过程中
双方交换了一个最重要的参数
就是初始序列号
这个可以用来跟踪后续交换的
每一个字节
也就是说后续的字节的编号
就是以这个初始序列号
作为基础的
建立TCP连接的双方
没有主从之分
它们可以相互收发数据
所以TCP数据段的传输
是全双工的
三次握手
可能被利用
而产生一些安全问题
比如说非常知名的
SYN泛红
会导致拒绝服务及DoS攻击
在这种攻击里边
它通常会伪造一个源IP地址
举个例子
有一个攻击者
他想攻击一台Web server
他首先想办法控制一些机器
在这个上面
安装一些agent
这个agent呢
向被攻击的服务器
不断地发送第一次握手信息
SYN
在这个SYN里面
它使用了一个伪造的
并不存在的源IP地址
这个带有伪造源IP地址的
第一次握手信息
到达被攻击服务器的时候
服务器会对它进行处理
回发第二次握手信息
并且呢
等待第三次握手信息的到来
可是你已经看得出来了
因为第二次握手信息
无法到达发送者
因为那个IP地址是伪造的
所以这个第三次握手信息
服务器一辈子都等不来
这让被攻击者挂起很多的进程
在这里等待
最终会因为资源耗尽
而瘫痪
无法提供正常的服务
这就是DoS攻击
小结一下今天的内容
TCP数据段传输之前
一定要建立一根TCP的连接
通过三次握手
建立TCP连接
一次握手信息
它有个非常明显的标记
就是控制位是SYN等于1
ACK等于0
第二次握手信息的标记是
SYN等于1
ACK也等于1
第三次握手信息
SYN等于0
ACK等于1
这是一个非常普遍的标记
三次握手建立连接
是一个同步的过程
交换初始序列号
它保证后续的每一个字节的
可靠传输
-本课程简介
--课程组织
-1.1 为什么要学习计算机网络?
-1.2 互联网络发展史
--Video
--互联网络发展史
-1.3 常用的基本概念
--Video
--常用的基本概念
-1.4 参考模型(重点)
--Video
--参考模型
-1.5 参考模型相关的概念
--Video
--数据如何传输
-1.6 本课程的组织
--Video
--课程组织
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-附录3:伦敦奥运会开幕式之Tim Berners Lee
--附录说明
-第一章 概述--章节测试
-附录4:本章的无背景乐的视频
--1-4参考模型
--关于附录4的说明
-2.1 数据通信的理论基础
--Video
-2.2 有导向的传输介质
--Video
--有导向的传输介质
-2.3复用技术
--Video
--复用技术
-2.4调制技术
--Video
--调制技术
-2.5公共交换电话网络
--Video
--公共交换电话网络
-2.6物理层设备
--Video
--物理层设备
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-附录3:光纤熔接
--Video
-附录4:海底光缆
--附录说明
--外部链接
-第二章 物理层--章节测试
-附录5:本章的无背景乐的视频
--2-3复用技术
--2-4调制技术
--关于附录5的说明
-3.1 数据链路层概述
--Video
--数据链路层概述
-3.2 差错处理概述
--Video
--差错处理概述
-3.3 纠1位错的海明码
--Video
--纠1位错的海明码
-3.4 检错码
--Video
--检错码
-3.5基本数据链路协议1~3
--Video
-3.6 滑动窗口协议
--Video
--滑动窗口协议
-3.7 回退n帧
--Video
--回退n帧
-3.8 选择性重传
--Video
--选择性重传
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第三章:数据链路层--章节测试
-附录3:本章的无背景乐的视频
--3-4检错码
--3-6 滑窗协议
--3-7 回退n帧
--关于附录3的说明
-4.1 MAC子层概述
--Video
--MAC子层概述
-4.2 ALOHA协议
--Video
--ALOHA协议
-4.3 CSMA协议
--Video
--CSMA协议
-4.4 以太网概述
--Video
--以太网概述
-4.5 以太网帧格式
--Video
--以太帧格式
-4.6 二层交换的基本格式
--Video
-4.7 生成树协议
--Video
--生成树协议
-4.8 虚拟局域网
--Video
--虚拟局域网
-4.9 二层设备
--Video
--二层设备
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第四章 介质访问控制子层--章节测试
-附录3:本章的无背景乐的视频
--4-9 二层设备
--关于附录3的说明
-5.1 网络层引言
--Video
--网络层引言
-5.2 IP地址
--Video
--IP地址
--子网规划实例
-5.3 子网规划
--Video
--子网规划
-5.4 IP寻址
--Video
--IP寻址
-5.5 IP分组
--Video
--IP分组
-5.6 什么是IPv6?
--Video
--什么是IPv6?
-5.7 IPv6地址
--Video
--IPv6地址
-5.8 IPv6分组
--Video
--IPv6分组
-5.9 IPv6过渡技术
--Video
--IPv6过渡技术
-5.10 路由从何而来?
--Video
--路由如何而来
-5.11 距离矢量路由选择协议
--Video
-5.12 路由信息协议RIP
--Video
--RIP
-5.13 RIP为什么衰落?
--Video
-5.14 链路状态路由选择LS
--Video
-5.15 单区域OSPF
--Video
-5.16 无类域间路由 CIDR
--Video
--CIDR
-5.17 网络地址翻译 NAT
--Video
--NAT
-5.18 互联网控制消息协议 ICMP
--Video
--ICMP
-5.19 地址解析协议 ARP
--Video
--ARP
-5.20 拥塞控制
--Video
--拥塞控制
-5.21 流量整形
--Video
--流量整形
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第五章 网络层--章节测试1
-第五章 网络层--章节测试2
-第五章主观测试题
-附录3:本章的无背景乐的视频
--5-2_IP地址
--5-3_子网规划
--5-4_IP寻址
--5-5_IP分组
--5-9过渡技术
--5-21流量整形
-6.1 传输层概述
--Video
--传输层概述
-6.2 用户数据报协议 UDP
--Video
-6.3 通信模型
--Video
--通信模型
-6.4 TCP数据段
--Video
--TCP数据段
-6.5 TCP三次握手建立连接
--Video
-6.6 TCP连接释放
--Video
--TCP连接释放
-6.7 TCP传输策略
--Video
--TCP传输策略
-6.8 TCP拥塞控制
--Video
--TCP拥塞控制
-6.9 TCP定时器等
--Video
--TCP定时器等
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第六章 传输层--章节测试
-附录3:本章的无背景乐的视频
--6-1传输层概念
--6-2UDP
--6-3通信模型
-linux
-windows
-7.1 应用层概述
--Video
--应用层概述
-7.2 域名系统 DNS 概述
--Video
-7.3 DNS之域名解析
--Video
--域名解析
-7.4 电子邮件 e-mail
--Video
-7.5 万维网 WWW
--Video
--万维网 WWW
-7.6 其它应用
--Video
--其它应用
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第七章 应用层--章节测试
-附录3: 本章无背景音乐的视频
--7-4_电子邮件
--7-6_其它应用