TCP安全可靠!!!!!!!

1. TCP和UDP有什么区别??

    (1)TCP是一个面向连接的可靠的传输层协议,UDP是面向无连接不可靠的传输层协议 
    
    (2)TCP速度慢,可靠,UDP速度快,容易丢失数据 
    
    (3)TCP用的是SOCK_STREAM流式套接字,UDP用的是SOCK_DGRAM数据报套接字

2.  为什么TCP安全可靠???

    (1)三次握手(发送在连接的时候),四次挥手(发生在断开连接的时候) 
    (2)重传确认
    

    (1)TCP在连接的时候,需要三次握手(请详细解释一下三次握手过程)
        connect ---- accept
        三次握手 连接的时候用的是SYN位,确认的时候用的是ACK位
        
        syn --> 发送序号 
        ack --> 确认序号
    
        第一次握手: 客户端发送的序号假设是200,将SYN置1,代表连接请求  syn = 200 (书上的syn = j)
        
        第二次握手: 服务器端发送的序号假设是500,将SYN置1和ACK置1,代表确认 syn = 500(syn = k)  ack = 201(ack=j+1)
    
        第三次握手: 客户端给服务器应答,将ACK置1,确定要连接 发送序号 syn = 201, ack = 501(ack = k+1)
        
        什么ACK攻击?? 
        
        发生在第三次握手的时候,第二次握手之后,服务器需要得到客户端的一个应答,来确认连接服务器,此时
        客户端,不进行第三次握手,不给ACK确认,所以造成服务等待,浪费资源
        
        
    (2)    TCP在断开连接的时候,需要四次挥手(请详细解释一四次挥手过程)
            
        断开连接的时候 close()函数,用的FIN位 和 ACK位
            
        第一次挥手: 发起端将FIN置1,请求断开的请求 假设 syn = 200 
        第二次挥手: 应答端将ACK置1,允许断开连接  syn = 500  ack = 201 
        第三次挥手: 应答端将FIN置1,请求同时断开连接, sys = 501 
        第四次回收: 发起端将ACK置1,允许同时断开  syn = 201 ack = 502
        
    (3)重传确认
    

重点

1.3 tcp连接的过程(accept 和 connect怎么搭配的) 
  

1.4 tcp 4次挥手

练习1:  客户端连接服务器时发送(   c  )包,服务器收到客户端连接请求发送(d    )包

    A  ACK    B   FIN     C  SYN     D SYN+ACK

练习2: 客户端和服务器的初始序号为(2000, 4000), 那么客户端SYN包序号为( a ), 服务器的SYN包序号为(   c)

    //服务器端第二次握手的确认序号(B) 客户端第三次握手的确认序号(D)  
    A 2000    B 2001     C 4000   D 4001
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值