TCP三次握手、tcp和udp对比、四表五链

(1)简述TCP的三次握手

  1. 第一次握手:客户端请求建立连接时,会将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给服务器,客户端进入SYN_SENT状态,等待服务器确认。

  2. 第二次握手:服务器收到来自客户端的数据包后,根据SYN=1可以得知客户端请求建立连接,服务端将SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给客户端确认连接请求,服务端进入SYN_RCVD状态。

  3. 第三次握手:客户端收到确认后,检查ack是否为J+1,ACK是否为1,如果正确则将标志位ACK置为1,ack=K+1,并将该数据包发送给服务端,服务端检查ack是否为K+1,ACK是否为1,如果正确则连接建立成功,客户端和服务器进入ESTABLISHED状态,完成三次握手。

(2)简述tcp和udp的区别和优缺点

  1. tcp提供有连接的数据传输,udp是没有连接的数据传输
  2. 由于tcp基于有连接的数据传输和错误重传机制,因此具有高可靠性,确保传输数据的正确性,不出现丢失或乱序,而udp的数据传输则相对不可靠
  3. 由于udp传输数据时不需要建立连接,因此具有较好的实时性,工作效率较tcp协议高。udp段结构比tcp的段结构简单,因此网络开销也小。

(3)简述一下iptables的四表五链

  1. filter表:对数据包进行过滤
    INPUT链:对发送到上层应用的数据包进行过过滤
    OUTPUT链:对上层应用所产生的数据包进行过滤
    FORWARD链:对经过本机转发的数据包进行过滤

  2. nat表:对数据包中的的地址进行转换
    PREROUTING链:进行路由选择之前修改数据包的ip地址
    POSTROUTING链:在进行路由选择之后 且从主机发送出去之前修改数据包的ip
    OUTPUT链:修改上层应用产生数据包的ip

  3. mangle表:不能过滤数据包,也不能修改数据包中的地址,仅仅能对报文进行特定的修改(ttl, tos…)
    INPUT链 、OUTPUT链、FORWARD链、PREROUTING、POSTROUTING链

  4. raw表:决定数据包是否被状态追踪机制所处理
    组成:PREROUTING、OUTPUT

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值