(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

TCP三次握手、tcp和udp对比、四表五链相关推荐

  1. TCP三次握手以及与UDP的区别

    TCP     简介:TCP是一种面向连接的.可靠的.基于字节流的传输层通信协议. TCP三次握手 第一次:客户端发送SYN给server,客户端进入SYN_SENT 第二次:server发送ACK和 ...

  2. TCP三次握手(建立连接)/四次挥手(关闭连接)

    相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助. 而且对于有网络协议工程师之类笔试, ...

  3. Tcp三次握手/Tcp协议数据传输(服务器端开启多线程)

    Tcp协议是比udp协议更安全,是面向连接的协议,需要进行三次握手,因此不会造成丢包的情况. 接下来我们看看TCP协议的三次握手: 这三次握手就相当于一次访问的电话: 第一次握手:客户端电话给服务端问 ...

  4. 网络协议-网络分层、TCP/UDP、TCP三次握手和四次挥手

    网络的五层划分是什么? 应用层,常见协议:HTTP.FTP 传输层,常见协议:TCP.UDP 网络层,常见协议:IP 链路层 物理层 TCP 和 UDP 的区别是什么 TCP/UDP 都属于传输层的协 ...

  5. wireshark抓包图解 TCP三次握手/四次挥手详解

    一. TCP/IP协议族 TCP/IP是一个协议族,通常分不同层次进行开发,每个层次负责不同的通信功能.包含以下四个层次: 1. 链路层,也称作数据链路层或者网络接口层,通常包括操作系统中的设备驱动程 ...

  6. TCP三次握手之-awl工具-SYN洪水攻击

    文章目录 云盾数据 TCP三次握手 TCP报文段的头部格式 实战-使用tcpdump 抓包 tcpdump 常用参数 tcpdmp 抓包 awl -syn-洪水攻击 原理 实战 总结: 云盾数据 - ...

  7. 计算机网络之TCP三次握手

    文章目录 计算机网络之TCP三次握手 1.TCP三次握手过程 2.TCP三次握手原因,而不是两次 3.TCP三次握手原因,而不是四次 4.TCP三次握手能携带数据吗 5.三次握手连接阶段,最后一次AC ...

  8. TCP三次握手,四次挥手详解

    本文是对小林的图解网络的总结 TCP简介 TCP作为一个传输层协议,是一个面向连接的字节流,为应用层提供端到端的传输服务.和UDP不同的是,TCP提供的是可靠的面向连接传输服务,并且提供了流量控制等功 ...

  9. 深入理解TCP三次握手四次挥手

    目录 TCP报文格式 TCP 三次握手 ​编辑 TCP三次握手的疑惑 问题一:为什么是三次握手,不是两,四次呢? 避免历史链接 同步双方的初始序列号 小总结 问题二:第一次握手丢失 问题三:第二次握手 ...

最新文章

  1. ACL 2019最佳论文出炉:华人团队包揽最佳长短论文一作,中科院、华为等榜上有名...
  2. 【css】怎么让Chrome支持小于12px 的文字
  3. vue 动态设置页面title
  4. Python命令行选项参数解析策略
  5. OpenCV使用CNN进行目标检测
  6. c++ 标准库中 cin.ignore()
  7. 如何查询oracle的共享内存,[20190104]ipcs查看共享内存段.txt
  8. Windows 系统中常见的 Shell 命令总结(不时补充)
  9. 用纯css3和html制作一些泡沫对话框
  10. 关于Android中Intent传递Serialzilable数据的问题
  11. 7年,OpenStack从入门到放弃
  12. 如何在Spring框架中使用RMI技术
  13. Linux系统安装Oracle 10g
  14. mac上如何官网下载安装virtualbox
  15. 十分钟入门 Kafka,通俗易懂地理解分布式消息系统!!
  16. python if简洁写法_Python - if-else 的多种简洁写法
  17. 建立一个低成本的工业控制器和树莓Pi 3
  18. apm性能监控系统,字节跳动Android三面凉凉,再不刷题就晚了!
  19. httpc客户端API
  20. 超漂亮的前台页面模板——html+css+js+框架

热门文章

  1. 转代码判断邮箱是否合法
  2. AI时代!我选Python因为Python是人工智能的未来
  3. TensorFlow 2.0.0-RC0版发布,专注于简单性与易用性
  4. 数据挖掘 概念与技术(原书第3版)
  5. Python3.7 中Scipy和Numpy的安装(含下载资源)
  6. TCP/IP详解--五层协议的作用以及对应的设备
  7. windows下python3关于机器学习的环境配置,Anaconda的安装和使用方法以及安装后无法打开的解决方法
  8. android频繁点击ui崩溃,android easeui 集成 启动崩溃
  9. php json encode html,php – json_encode不能使用html字符串作为值
  10. python 程序中断_有趣的Python处理程序中断信号