12Tall

12Tall's blog

本文受How to terminate running Python threads using signals 文章启发,但只保留了多线程相关的部分。
起因是最近想用Python 模拟信号发生器的功能,自然需要通过主线程控制子线程发送数据(开始,暂停,继续,停止等状态)。第一版是通过lock 锁加上各种标志属性来实现的,总感觉思路不太清晰。于是参考上面的链接,采用event 来重构代码,总算得到了一个自己较为满意的(可扩展的)版本。

阅读全文 »

常见故障与对策

  • 单线路故障:端口聚合
  • 单设备故障:
    • 堆叠
    • VRRP
  • 单电源故障:双电源(市电+UPS)
  • 单服务器故障:做集群
  • 机房冗余
阅读全文 »

访问控制列表

作用

过滤,抓取数据,但是ACL 会影响设备性能

阅读全文 »

分类

有类

单播地址

能够配置使用的,可以一对一地传输数据

  • A: 0xxx xxx;xxxx xxxx,xxxx xxxx,xxxx xxxx 掩码 8位 1.0.0.0 - 126.0.0.0
  • B: 10xx xxx,xxxx xxxx;xxxx xxxx,xxxx xxxx 掩码16位 128.0.0.0 - 191.255.0.0
  • C: 110x xxx,xxxx xxxx,xxxx xxxx;xxxx xxxx 掩码24位 192.0.0.0 - 223.255.255.0
  • D: 1110 xxx,xxxx xxxx,xxxx xxxx,xxxx xxxx 多播组号
  • E: 1111 0xx,xxxx xxxx,xxxx xxxx,xxxx xxxx 备用
阅读全文 »

网路地址转换

作用

广域网中,高层网络设备,不能给私有网段回包。所以一般会需要将内网设备的端口映射到公网设备。

阅读全文 »

路由基础

  • 为什么要引入路由:
    • 随着设备的增加,二层的转发会变得难以管理,此时需要引入路由
  • 路由的工作步骤:
    1. 匹配目标网段
    2. 匹配成功后将数据扔给出接口或者下一跳
  • 关键点
    • 每次三层设备接收到包的时候TTL 都会减一
    • 每次经过三层设备都会改变数据包的源和目的MAC
    • 每次经过三层设备数据包的IP 地址一般都是不会变的(NAT 除外)
阅读全文 »

STP

  • 网络中常见的问题:

    1. 设备的单点故障。一台设备宕机,所有子设备都会失去连接
    2. 提高网络的稳定性、增加冗余,但是这样可能会造成二层环路
  • 解决方案:

    1. 手动冷备份(一台设备宕机之后手工启用备用设备)
    2. 热备(通过生成树协议)

生成树协议会自动阻塞一些接口,来避免环路

阅读全文 »

交换机

二层交换机

  • 二层交换机能且只能配置一个IP(管理用)
  • 二层交换机也可以配置一条静态路由
阅读全文 »

硬件结构

  • Flash: 相当于硬盘。存放系统、vlan 信息等
  • Nvram: 存放启动配置文件(华为的配置文件也都在flash,没有此硬件)。
  • Ram: 运行内存
  • Rom: 相当于BIOS
  • 新设备基本都是基于x86,可以升级内存
阅读全文 »

网络协议分层

OSI 分层标准

自上而下分为七层:

  • 应用层:QQ、Edge
  • 表示层:对上层数据进行转码、压缩
  • 会话层:控制发送速率(下载限速)
  • 传输层:TCP/UDP(防火墙)
  • 网络层:IP(路由,以IP 地址为目的)
  • 链路层:tracert(交换,以MAC 为目的)
  • 物理层:电缆等等
阅读全文 »
0%