传输层定义了主机应用程序之间端到端的连通性。
传输层 具体有两个协议 TCP UDP
- 传输控制协议(transport control protocol) -----> TCP
- 用户数据协议(User-data protocol) -----> UDP
端到端通信
client 传输层使用的
目的端口 A
源端口B(>=1024)
向 Server来发送数据
Server 回复数据的时候
源端口 A: 目的端口B
端口号
定义主机中运行的进程的标识符, 传输层通过 端口号 来区分不同的进程。
端口号的范围
0 - 65535 (2^16-1)
3个范围:熟知的、注册的和动态的(或私有的)。
- 熟知端口:0~1023,由IANA指派和控制。 由IANA强制指定 ---> 对应公有协议。
- 注册端口:1024~49151,IANA不指派也不控制。它们只能在IANA注册以防止重复。 (用于私有协议的注册)
- 动态端口:49152~65535,既不用指派也不用注册。它们可以由任何进程来使用,是临时的端口。(用于通信时源端口的指定----> 临时)
TCP和UDP的区别
TCP:面向连接 可靠 对数据传输要求高 速度慢
UDP:面向无连接 不可靠 传输效率高 速度快
传输层面临的安全威胁
主要就是拒绝服务攻击(DoS攻击 Denial of Service): 攻击者如果存在相同的特征,可以很容易
被发现,从而进行防御。
DDoS(分布式拒绝服务攻击) 抓肉鸡(被控制的计算机-----> 遍布全球各地乃至 全世界各地 )
- 攻击方法1 : UDP的洪水攻击 (将UDP报文像洪水一样发送到被攻击者,占用被攻击者的带宽资源,导致正常用户获取不到去往服务器的网络,而连接失败)
- 攻击方法: TCP的 SYN洪水攻击.
手段之1 : SYN的半开连接攻击