linux_5
1 简述osi七层模型和TCP/IP五层模型
2 总结描述TCP三次握手四次挥手
TCP是一种可靠的,面向连接的全双工传输层协议。
TCP连接的建立是一个三次握手的过程。如图所示:
第一次握手:主机A发送一个标识了 SYN的数据段,表示希望与服务器A建立连接,此数据段的序列号( seq )为a。
第二次握手:服务器A回复标识了SYN+ ACK的数据段,此数据段的序列号( seq )为b ,确认序列号为主机A的序列号加1 ( a+1 ) ,此过程作为对主机A的SYN报文的确认。
第三次握手:主机A发送一个标识了ACK的数据段,此数据段的序列号( seq )为a+1 ,确认序列号为服务器A的序列号加1 ( b+1 ) ,以此作为对服务器A的SYN报文的确认。

TCP连接的建立是一个三次握手的过程,而TCP连接的终止则要经过四次握手。
第一次:主机A想终止连接,于是发送一个标识了FIN,ACK的数据段,列号为a ,确认序列号为b。
第二次:服务器A回应一个标识了ACK的数据段,列号为b , 确认号为a+1 ,作为对主机A的FIN报文的确认。
第三次:服务器A想终止连接,于是向主机A发送一个标识了FIN ,ACK的数据段,序列号为a,确认列号为a+1。
第四次主机A回应一个标识了ACK的数据段,列号为a+1 ,确认序号为b+1 ,作为对服务器A的FIN报文的确认。
以上四次交互便完成了两个方向连接的关闭。

3 描述TCP和UDP区别
TCP是- -种面向连接的传输层协议,可提供可靠的传输服务。UDP是一种面向无连接的传输层协议,传输可靠性没有保证。
UDP头部仅占8字节,传输数据时没有确认机制。UDP不提供重传机制,占用资源小,处理效率高。
流模式(TCP)与数据报模式(UDP),TCP保证数据安全,而UDP可能丢包。TCP保证数据顺序,UDP不保证。
4 网卡绑定bond0的实现
linux操作系统下双网卡绑定有七种模式。现在一般的企业都会使用双网卡接入,这样既能添加网络带宽,同时又能做相应的冗余,可以说是好处多多。inux 多网卡绑定mode共有七种(0~6) bond0、bond1、bond2、bond3、bond4、bond5、bond6
常用的有三种
mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定。
mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援。
mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定。
下面介绍网卡绑定bond0的实现过程:
- 创建bonding设备的配置文件
/etc/sysconfig/network-scripts/ifcfg-bond0
NAME=bond0
TYPE=bond
DEVICE=bond0
BOOTPROTO=none
IPADDR=10.0.0.100
PREFIX=8
/etc/sysconfig/network-scripts/ifcfg-eth0
NAME=eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
/etc/sysconfig/network-scripts/ifcfg-eth1
NAME=eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
- 查看bond0状态
/proc/net/bonding/bond0
linux_5的更多相关文章
- [官网]Linux版本历史
This is a list of links to every changelog. https://kernelnewbies.org/LinuxVersions 总结一下 2.6.x 存在了八年 ...
- eclipse在linux下无故闪退解决
A fatal error has been detected by the Java Runtime Environment: SIGSEGV (0xb) at pc=0x00007f25d0b92 ...
- 【前端】CentOS 7 系列教程之五: 安装最新版 nginx 并转发 node 服务
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/linux_5.html 进入/usr/local目录 cd /usr/local 下载最新版的ngxin压缩包 w ...
- MySQL 慢查询日志介绍
转: MySQL 慢查询日志介绍 2018年08月23日 08:47:40 曾梦想仗剑走天涯XX 阅读数 1104 一. 慢查询介绍 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记 ...
随机推荐
- Pytest_常用执行参数详解(3)
前面讲了测试用例的执行方式,也认识了 -v -s 这些参数,那么还有没有其它参数呢?答案肯定是有的,我们可以通过 pytest -h来查看所有可用参数. 从图中可以看出,pytest的参数有很多,但 ...
- Flask_Flask-Migrate数据迁移扩展(十二)
在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库.最直接的方式就是删除旧表,但这样会丢失数据.更好的解决办法是使用数据库迁移框架,它可以追踪数据库模式的变化,然后把变动应用到数据库中. ...
- mysql 的 if 和 SQL server 的 iif
在sql语句中,mysql 使用 if 而SQL server 使用iif 如 mysql : SELECT IF(1<2,'yes ','no'); sql server: SELECT II ...
- 第10组 Beta冲刺 (1/5)(组长)
1.1基本情况 ·队名:今晚不睡觉 ·组长博客:https://www.cnblogs.com/cpandbb/p/14012521.html ·作业博客:https://edu.cnblogs.co ...
- 基于springboot的定时任务实现(非分布式)
1. 核心注解 在springboot项目中我们可以很方便地使用spring自己的注解@Scheduled和@EnableScheduling配合来实现便捷开发定时任务. @EnableSchedul ...
- [爱偷懒的程序员系列]-Section 1. “懒”是一切需求的根源
一直认为"懒"推进了科技的发展,因为"懒"而促生了各种各样的需求.科技的进步加速了各种信息的交互频率,站在台面上说是因为业务需要提高效率,成本需要降低,服务需要 ...
- 《剑指offer》面试题64. 求1+2+…+n
问题描述 求 1+2+...+n ,要求不能使用乘除法.for.while.if.else.switch.case等关键字及条件判断语句(A?B:C). 示例 1: 输入: n = 3 输出: 6 示 ...
- DEEP LEARNING WITH PYTORCH: A 60 MINUTE BLITZ | TORCH.AUTOGRAD
torch.autograd 是PyTorch的自动微分引擎,用以推动神经网络训练.在本节,你将会对autograd如何帮助神经网络训练的概念有所理解. 背景 神经网络(NNs)是在输入数据上执行的嵌 ...
- netty系列之:请netty再爱UDT一次
目录 简介 netty对UDT的支持 搭建一个支持UDT的netty服务 异常来袭 TypeUDT和KindUDT 构建ChannelFactory SelectorProviderUDT 使用UDT ...
- linux中shell编程 -->三剑客习题汇总
目录 1.找出/proc/meminfo文件中以s开头的行,至少用三种方式忽略大小写 2.显示当前系统上的以root,centos或者user开头的信息 3.找出/etc/init.d/functio ...