1、TCP的连接管理--三次握手和四次挥手
(1)TCP连接传输的三个阶段
(2)三次握手阶段及其各个字段信息
SYN洪泛攻击的原理。
(3)TCP的连接释放过程--四次挥手
大概原理
详细过程
为什么客户端还需要等待2msl才关闭连接呢?因为有可能客户端发送出去的确认报文段有可能丢失,如果丢失了,服务端会继续发起第三次握手,设置这个等待时间可以提高安全性。
2、TCP的可靠传输
(1)网络层是一个不可靠传输的层,所以可靠性必须考传输层来完成。可靠性即:保证接收方进程从缓存区读出来的字节流与发送方发出的字节流是完全一样的。
TCP实现可靠性传输的机制主要包括:校验、序号、确认和重传。
(2)TCP的序号和确认过程
原理:TCP是面向字节流的传输协议,所以TCP先会将报文中的字节进行编号,这个编号就是序号;序号用来标识报文中唯一的一个字节,当若干个字节组合成一个报文被发送到接收方的缓存之后,接受方会返回一个确认报文,这个确认报文的首部用来标识“期待的下一个字节的序号”;当接受方接收到确认报文之后会判断首部是否已发送报文的后一个序号,如果是,则代表接受方已经正确接受到上一个报文段,因此会将缓存中的上一个序列删除,继续发送下一个报文段,反之则代表接受方并没有正确接收到上一个报文段,发送方会继续发送上一个报文段。这个过程就是确认的过程,同时再次发送上一个报文段也是重传的一种情况。
(3)TCP的重传
超时重传
冗余确认 --即快速重传
3、TCP的流量控制
(1)流量控制:让发送方慢点,要让接受方来得及接收
(2)TCP利用滑动窗口机制实现流量控制
(3)TCP并不是一个平等的协议,即发送方可以发送若干段的报文之后,接收方才返回一个累计确认报文段。
(4)流量控制的例子
4、TCP的拥塞控制
(1)拥塞出现的原因。
(2)拥塞控制和流量控制的区别。
流量控制是一个点对点的调整,而拥塞是一个全局性的问题,并不能迅速确定是有哪个主机导致的拥塞。
(3)拥塞控制的四种算法
(4)慢开始和拥塞避免
(5)快重传和快恢复