TCP
UDP
HTTP
http和tcp的关系
http在应用层,tcp在传输层,http要基于tcp,tcp建立连接,http用来收发数据
tcp如何保证可靠传输
三次握手和四次挥手:syn,ack/syn,ack;fin,ack,fin,ack
超时重传:设置重传计时器,时限内没有收到确认帧,就重新发送数据
流量控制:控制发送方的发送速率,一对一
拥塞控制:控制发送方的发送速率,多对一
如何应对大量访问,恶意攻击,dos,洪泛攻击
洪泛攻击就是攻击者发送大量的syn,服务器为每个syn分配一个特定的数据区,服务器返回ack后,攻击者不再进行确认,这个tcp连接就处于挂起状态
syn cookie,基本原理:完成三次握手之前服务器不分配数据区,而是根据syn计算出一个cookie值,发送方返回的ack如果与这个cookie值相同,才建立连接分配数据区
TCP的流量控制
让发送方发慢点,要让接收方来得及接收
利用滑动窗口机制:a给b发送数据,a有发送缓存,b有接收缓存,应用层所有需要发送的数据都放在发送缓存,发送窗口是发送缓存允许发送但尚未发送的部分,成功发送数据之后,发送窗口就会往后移动,b会告诉a自己的接收窗口大小,a根据b的接收窗口大小动态地调整自