TCP三次握手与四次挥手详细图解

TCP三次握手与四次挥手详细图解

ID:38165720

大小:451.00 KB

页数:5页

时间:2019-06-06

TCP三次握手与四次挥手详细图解_第1页
TCP三次握手与四次挥手详细图解_第2页
TCP三次握手与四次挥手详细图解_第3页
TCP三次握手与四次挥手详细图解_第4页
TCP三次握手与四次挥手详细图解_第5页
资源描述:

《TCP三次握手与四次挥手详细图解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、TCP三次握手及四次挥手详细图解AndrewHuangbluedrum@163.com   相对于SOCKET开发者,TCP创建过程与链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助.   而且对于有网络协议工程师之类笔试,几乎是必考的内容.企业对这个问题热情之高,出乎我的意料:-)。有时上午面试前强调这个问题,并重复讲一次,下午几乎每一个人都被问到这个问题。 因此在这里详细解释一下这两个过程。 TCP三次握手 所谓三次握手(Thr

2、ee-wayHandshake),是指建立一个TCP连接时,需要客户端与服务器总共发送3个包。 三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号与确认号并交换TCP窗口大小信息.在socket编程中,客户端执行connect()时。将触发三次握手。    ·第一次握手:客户端发送一个TCP的SYN标志位置1的包指明客户打算连接的服务器的端口,以及初始序号X,保存在包头的序列号(SequenceNumber)字段里。·第二次握手:服务器发回确认包(ACK)应答。即SYN标志位与A

3、CK标志位均为1同时,将确认序号(AcknowledgementNumber)设置为客户的ISN加1以.即X+1。·第三次握手.客户端再次发送确认包(ACK)SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1SYN攻击  在三次握手过程中,服务器发送SYN-ACK之后,收到客户端的ACK之前的TCP连接称为半连接(half-openconnect).此时服务器处于Syn_RECV状态.当收到ACK后,服务器转入ESTABLIS

4、HED状态. Syn攻击就是攻击客户端在短时间内伪造大量不存在的IP地址,向服务器不断地发送syn包,服务器回复确认包,并等待客户的确认,由于源地址是不存在的,服务器需要不断的重发直至超时,这些伪造的SYN包将长时间占用未连接队列,正常的SYN请求被丢弃,目标系统运行缓慢,严重者引起网络堵塞甚至系统瘫痪。 Syn攻击是一个典型的DDOS攻击。检测SYN攻击非常的方便,当你在服务器上看到大量的半连接状态时,特别是源IP地址是随机的,基本上可以断定这是一次SYN攻击.在Linux下可以如下命令检测是否被Sy

5、n攻击netstat-n-pTCP

6、grepSYN_RECV一般较新的TCP/IP协议栈都对这一过程进行修正来防范Syn攻击,修改tcp协议实现。主要方法有SynAttackProtect保护机制、SYNcookies技术、增加最大半连接与缩短超时时间等.但是不能完全防范syn攻击。TCP四次挥手TCP的连接的拆除需要发送四个包,因此称为四次挥手(four-wayhandshake)。客户端或服务器均可主动发起挥手动作,在socket编程中,任何一方执行close()操作即可产生挥手操作。  参见wir

7、eshark抓包,实测的抓包结果并没有严格按挥手时序。我估计是时间间隔太短造成。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。