logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

sonic消息传递机制与架构(2)

发布-订阅机制实现基于redis的发布--订阅,sonic实现了两套消息传递系统:KEY_SET消息系统:该机制通过一个set集合传递key,通过publish命令通知有新的key产生。消费者通过key组合成一个hash表的key,用于获取真实的消息,set不保证顺序。样例如下所示:"SADD" "INTF_TABLE_KEY_SET" "PortChannel1:1.1.1.1/8"#在集合IN

linux tun/tap设备的实现(kennel 3.10)

什么是tun/tap?TUN/TAP虚拟网络设备为用户空间程序提供了网络数据包的发送和接收能力。他既可以当做点对点设备(TUN),也可以当做以太网设备(TAP)。实际上,不仅Linux支持TUN/TAP虚拟网络设备,其他UNIX也是支持的,他们之间只有少许差别。TUN/TAP虚拟网络设备的原理比较简单,他在Linux内核中添加了一个TUN/TAP虚拟网络设备的驱动程序和一个与之相关连的字符设备/d

linux ip link 命令查看网卡信息 UP 和 LOWER_UP 区别

IFF_ALLMULTIReceive all multicast packets.接收所有多播数据包。IFF_AUTOMEDIAAuto media selection active.自动媒体选择激活。IFF_BROADCASTValid broadcast address set.有效的广播地址集。...

sonic容器构建

sonic中大量的组件运行在docker容器中,用于隔离彼此的运行环境,从而解决相互之间的互斥问题。下面我们分析一下sonic中各个容器的构建过程。Dockerfile文件的生成过程sonic中的容器Dockerfile文件是通过jinjia2模板文件生成的,使用j2命令。sonic在编译过程中首先会构建一个叫sonic-slave的容器,该容器用来做编译容器,后续所有的编译过程都是在该容器中进行

Linux内核网路协议栈——系统的初始化(inet_init主要数据结构)

网络初始化申请了两块skb高速缓存和创建了一个/proc/net/protocols文件,现在开始重头戏,网络协议栈的初始化。这篇文章主要介绍网络栈中使用到的主要数据结构。网络协议栈的内核实现和理论上的分层有些不一样,在代码里面的分层如下图:开始前,先回顾一下应用层socket函数的调用,它会创建一个socket并返回对应的描述符:int <strong&g...

Scons环境搭建和编译原理概述及嵌入式开发常用模板

Scons是用python实现的一个类似makefile的软件构建工具。

#python
sonic orch调度系统之----orchagent

sonic核心守护线程orchagent以orch为单位进行资源管理,一个orch包含了一组相似的资源;orchagent调度系统以Executor为调度单位,调度实体有Consumer,ExecutableTimer等,本文分析一下sonic调度细节。class OrchDaemonorchagent以OrchDaemon作为核心类进行描述。class OrchDaemon{public:Orc

FRRouting User Guide

原文:http://docs.frrouting.org/en/latest/IntroductionOverviewHow to get FRRAbout FRRMailing ListsBug ReportsInstallationFrom PackagesFrom SnapcraftFrom SourceBasic SetupCrash logsDaemons Configuration F

【FRRouting User Guide】【Basic 】(四)Basic Commands

以下各节讨论所有路由守护进程通用的命令。Config Commands在配置文件中,可以写入调试选项、vty的密码、路由守护程序配置、日志文件名等。此信息形成路由beast启动时的初始命令集。配置文件通常位于/etc/frr中。Config Methods配置FRR有两种方法。传统上,每个守护进程都有自己的配置文件。守护程序名plus.conf是默认的配置文件名。例如,zebra的默认配置文件是z

9. RDMA之Queue Pair

QPC全称是Queue Pair Context

#网络
    共 35 条
  • 1
  • 2
  • 3
  • 4
  • 请选择