• 当年使用dpdk做的业务


    arp 协议:

    • 接口link down---->当然删除arp表项的时候需要注意静态路由不能删除,已经被标示为invalid 不可用状态也不要删除, 其实不可用状态由不可用状态逻辑来维护 
    • 接口ip变化---->首先要发送免费arp ;更新arp 缓存,比如以前在这个接口上学习的arp 是否还能为valid状态,还是需要需要删除,毕竟修改接口ip可能是ip 包含关系变大
    • 接口ip mac 变化---->此时需要发送免费arp报文, 此时要区分 是由于IP 改变还是由于MAC改变 而发送的免费arp报文, mac 地址改变可能一个接口配置多个IP, 需要对这个接口上所有的IP 发送免费arp
    • 对接口发包判断时也要考虑接口的二三层属性
    • 发包的时如果不是自己local-cpu报文,则放入remote-cpu ringbuf 处理报文, 如果enqueue ring buf 失败则直接丢弃!
    • 对于接口中二层口 收到本地三层口arp请求报文也要处理!
    • 对于本地二层口收到arp 报文判断为转发,此时要注意接口的trunk access tag untag的属性
    • 对于arp 应答报文,记得处理arp 生成neighbour

     DHCP 协议:

    • dhcp snoop 放在dpdk里面
    • dhcp server 以及中继放在dhcp 应用层
    • dpch server 要注意dhcp 监听的udp port68时 使用的raw socket 等情况,比如只有raw socket 会导致内核协议栈回复 icmp 没有68号端口等问题

    VRRP 协议栈:

    • 目前将vrrp 协议栈放在dpdk 里面, 主要有track 上行链路, FSM 状态机

    NAT:

    • 目前使用portal 认证的时候用到full-nat

    L2转发:

    • 目前可能设置多个二层口, 所以变细了bridge 的mac 地址表 实现二层转发

    L3转发:

    • 为了实现链路备份,添加了PBR,都是一些简单的PBR+链路检测

    DNS:

    • DNS解析以及劫持 实现某些认证功能

    IP重组:

    • 参考内核设计实现IP分片重组

    QOS:

    • 参考内核的TC 流控模块

    DDOS:

    http代理服务器(3-4-7层代理)-网络事件库公共组件、内核kernel驱动 摄像头驱动 tcpip网络协议栈、netfilter、bridge 好像看过!!!! 但行好事 莫问前程 --身高体重180的胖子
  • 相关阅读:
    Scrapy中的反反爬、logging设置、Request参数及POST请求
    scrapy的CrawlSpider类
    利用scrapy爬取腾讯的招聘信息
    scrapy知识补充--scrapy shell 及Spider
    scrapy的一个简单小项目
    scrapy框架介绍及安装
    并发编程--greenlet与gevent
    并发编程--协程
    并发编程--进程池与线程池-练习3
    并发编程--进程池与线程池-练习2
  • 原文地址:https://www.cnblogs.com/codestack/p/15682506.html
Copyright © 2020-2023  润新知