摘要: 1、Neutron server首先是一个web server, 对于http和https协议的报文进行响应。 2、Neutron server进程里面包含了一个WSGI 应用程序,以及不同模块的plugin. 3、WSGI 应用程序按照格式进行书写,然后就可以放到neutron server的配置 阅读全文
posted @ 2018-03-26 08:30 爱编程的小兵 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 一、概述 随着人们的需求发展,web技术的发展也经历了多个阶段,下一个阶段总是伴随着解决上一阶段的问题,从静态文本、动态执行、动态自动生成文本,web应用,到web2.0,本文就详细描述这些阶段的特征。 特别说明,本文主要是参考《Tomcat 与java web开发技术详解》(第二版)孙卫琴著,此书 阅读全文
posted @ 2018-03-26 00:36 爱编程的小兵 阅读(5367) 评论(0) 推荐(0) 编辑
摘要: 一、基本思路: 1、服务器端通过socket(), 监听在TCP 8080端口,等待客户端来连接。 2、服务器端解析客户端的HTTP请求中的URI值,把本地的目录下指定文件通过java的读取文件的方式getResourceAsStream()发送给客户端。 3、客户端把应用程序的第一个参数作为目标文 阅读全文
posted @ 2018-03-18 20:09 爱编程的小兵 阅读(1425) 评论(0) 推荐(0) 编辑
摘要: 1、java 文件的编译和执行步骤。 第一步:使用编辑器编辑 后缀为java的文件,里面包含主类(包含 main()函数), 源文件的命名规则是,如果源文件中有多个类,那么只能有一个类是public类,并且源文件的名称必须和这个类的名字完全相同。如果源文件没有public类,那么源文件的名字只要和某 阅读全文
posted @ 2018-03-18 19:56 爱编程的小兵 阅读(1557) 评论(0) 推荐(0) 编辑
摘要: 配置说明:都通过loopback 口作为bgp 连接口,并且要配置ebgp多跳,同时配置loopback口的静态路由。 以AR2为例: 第一种场景:所有直接相连的邻居都启动了BGP,则路由可以随意扩散。 分别在AR1上和AR4上观察bgp路由,可见已经生成所有的路由。 AR1上查看bgp 路由: A 阅读全文
posted @ 2018-03-09 01:05 爱编程的小兵 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 1、BGP协议自身不能生产路由,它主要通过配置来将本地路由进行发布或者引入其他路由协议产生的路由。 有两种方法, 方法一、在BGP视图下,通过network命令将本地路由发布到BGP路由表中, 通过本配置可以将本地路由表中指定网段的路由添加到BGP路由表中,以便通过BGP发布该网段路由。 如下: 方 阅读全文
posted @ 2018-03-04 23:14 爱编程的小兵 阅读(629) 评论(0) 推荐(0) 编辑
摘要: 结论: 1、IBGP默认的TTL值为255 组网图: 抓包内容: 1、在AR1和AR2之间抓包,只显示BGP包,显示内容如下: 阅读全文
posted @ 2018-03-04 19:14 爱编程的小兵 阅读(581) 评论(0) 推荐(0) 编辑
摘要: 结论: 1、默认情况下,EBGP只能在物理直连的路由器之间建立邻居。 2、要想配置非直连设备间的BGP邻居,必须加配置。 组网图: 抓包: 1、默认情况下,EBGP邻居之间的BGP报文的TTL为1. 以AR4和AR1之间的抓包信息为例: 2、修改AR4和AR1的配置,加上ebgp-max 20 后, 阅读全文
posted @ 2018-03-04 19:08 爱编程的小兵 阅读(1294) 评论(0) 推荐(0) 编辑
摘要: 参考如下博客。 https://www.cnblogs.com/DswCnblog/p/6126588.html 运行结果: 阅读全文
posted @ 2018-02-25 23:11 爱编程的小兵 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 结论:通过BFD可以联动静态路由,从而监控整个网络上的网络情况,当出现故障时及时进行切换。 下面的例子,就是通过BFD监控上面的这个往返路由,当中间网络出现故障时,两端全部切换到下面的第二条路由进行通信。 如果不结合BFD的话,每个设备只能根据直连端口是否发生down来决定是否切换,而对于中间网络发 阅读全文
posted @ 2018-01-15 00:51 爱编程的小兵 阅读(6247) 评论(0) 推荐(0) 编辑
摘要: 结论: 1、在eNSP中实验,路由器和CE交换机对于等价路由的默认转发行为是不同的, 路由器:默认是基于流的转发形态,更准确的来讲,ping两个不同的下一跳,都是走等价路由的第一个路由,不走第二条路由。 CE交换机:默认就是逐包转发,即使ping同一个目的ip, 流量也会在不同的下一跳上进行负载分担 阅读全文
posted @ 2018-01-14 19:43 爱编程的小兵 阅读(2184) 评论(0) 推荐(0) 编辑
摘要: 1、在华为云上选购虚拟机时,会让用户选择动态BGP还是静态BGP, 全动态BGP可根据设定的寻路协议第一时间自动优化网络结构,以保持客户使用的网络持续稳定、高效。 静态BGP中的网络结构发生变化,运营商是无法在第一时间自动调整网络设置以保障用户的体验度。 2. 如何理解华为公有云中提到的全动态BGP 阅读全文
posted @ 2018-01-13 17:19 爱编程的小兵 阅读(2783) 评论(0) 推荐(0) 编辑
摘要: 问题1、ge 1/0/0 的ip地址 20.0.0.2 ,从直连的对端20.0.0.1 无法ping. 但是从防火墙ping对端却是可以ping通? 原因: 华为新一代的防火墙,默认情况下,只有0口是可以允许所有服务的,那么如果你想其它端口也需要的话,需要在端口下面输入如下命令interface G 阅读全文
posted @ 2018-01-13 00:18 爱编程的小兵 阅读(2781) 评论(0) 推荐(0) 编辑
摘要: 物理机的cpu硬件虚拟化功能,通过开启bios中的设置,而vmware中创建的虚拟机也可以开启该特性,如下。 这样的话,就直接可以基于这些VM安装openstack计算节点、控制节点、网络节点了。 阅读全文
posted @ 2018-01-06 00:33 爱编程的小兵 阅读(22301) 评论(0) 推荐(0) 编辑
摘要: mtr 阅读全文
posted @ 2018-01-05 00:46 爱编程的小兵 阅读(514) 评论(0) 推荐(0) 编辑
摘要: 1、一般情况下,ECMP常用的常见是,针对很远的目的地址,下一跳分别是路由器的不同出端口,而路由器的不同端口是不同网段的,也就是说,下一跳是不同的网段地址。 但是,在连接到终端服务器时,常常会采用多个服务器组集群,然后对外提供VIP实现高可靠性,不过,此时这些服务器是相同网段,也就是说从路由器的下一 阅读全文
posted @ 2017-12-26 00:49 爱编程的小兵 阅读(1599) 评论(0) 推荐(0) 编辑
摘要: BGP优选AS号短的路径作为首选路由的验证结果 1、结论: (1)EBGP会优选AS号少的路径作为转发路径,当优选路径失效时,再选择次选路由。 (2)EBGP邻居建立在直连设备之间。 (3)IBGP邻居可以跨设备建立,此时需要指定好tcp的源ip和目的ip. 源ip就是connect-interfa 阅读全文
posted @ 2017-12-24 19:22 爱编程的小兵 阅读(1150) 评论(0) 推荐(0) 编辑
摘要: 1、服务被需要的背景,即服务的需求,以及需求的范围。 2、服务的技术原理。 3、组成服务的逻辑设计,包括:对象模型,数据面设计,控制面设计。 4、组成服务的物理网络设计,包括:服务器的选型,网络设备的部署,网络连接,路由配置,防火墙配置。 5、组成服务的安装部署,包括:部署的模式(主备还是主主) 6 阅读全文
posted @ 2017-12-10 21:49 爱编程的小兵 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 1、总结: 阅读全文
posted @ 2017-12-10 20:18 爱编程的小兵 阅读(747) 评论(0) 推荐(0) 编辑
摘要: 1、近期在做一个云服务项目,需要与物理交换机配合实现,通过python编程实现了对物理交换机的控制,完全不需要命令行手工配置交换机, 一定程度上实现了SDN的集中控制的思想。 2、架构图如下: 3、利用python 连接交换机的示例代码, 4、netconf协议是基于ssh连接(tcp 22号端口) 阅读全文
posted @ 2017-12-10 19:05 爱编程的小兵 阅读(5632) 评论(0) 推荐(0) 编辑
摘要: 1、一个network相当于一个二层网络,使用vxlan 隧道连通所有的CNA节点。 2、一个VPC下有多个network,也就是会分配多个vxlan隧道,这些子网间的路由是通过DVR实现的。DVR就是linux的namespace实现的,东西向流量是通过DVR实现路由,南北向也通过DVR实现连接外 阅读全文
posted @ 2017-12-05 00:32 爱编程的小兵 阅读(468) 评论(0) 推荐(0) 编辑
摘要: 1、neutron 是由python写成,表面看有很多的字符串、逻辑处理,除去访问数据库、发送消息队列这些中间件的API调用外,其他部分大部分都在组装成一个shell命令。 并最终调用subprocess库的Popen进行linux shell 操作。 2. 对subprocess的理解,特别是其中 阅读全文
posted @ 2017-12-05 00:27 爱编程的小兵 阅读(325) 评论(0) 推荐(0) 编辑
摘要: LVS + nginx实现高性能精准负载均衡 阅读全文
posted @ 2017-11-29 00:52 爱编程的小兵 阅读(285) 评论(0) 推荐(0) 编辑
摘要: LVS DR模式不能跨网段,通过挂接haproxy 可以一举两得,即跨网,又保持性能。 阅读全文
posted @ 2017-11-29 00:46 爱编程的小兵 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 介绍Linux多线程实现模型。 阅读全文
posted @ 2017-11-28 08:32 爱编程的小兵 阅读(1479) 评论(0) 推荐(0) 编辑
摘要: 本文介绍Linux 进程调度的策略和实现,基本思想是在5种类别的进程队列中选择最适合的任务进行调度运行。 阅读全文
posted @ 2017-11-27 00:35 爱编程的小兵 阅读(1899) 评论(0) 推荐(0) 编辑
摘要: 本文描述Linux下PCI设备驱动的注册及初始化流程。 阅读全文
posted @ 2017-11-26 23:30 爱编程的小兵 阅读(14357) 评论(0) 推荐(0) 编辑
摘要: 本文对intel 82599和 powerpc 830的以太网控制器进行描述,便于理解以太网的收发机制。 阅读全文
posted @ 2017-11-26 21:32 爱编程的小兵 阅读(906) 评论(0) 推荐(0) 编辑
摘要: 本文描述Linux网络设备驱动的实现思路。 阅读全文
posted @ 2017-11-26 17:16 爱编程的小兵 阅读(492) 评论(0) 推荐(0) 编辑
摘要: 本文描述对大规模分布式服务如何实现的思考和常见问题。 阅读全文
posted @ 2017-11-26 12:54 爱编程的小兵 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 本文对内核线程进行源码级的分析和思考,为理解内核线程打下基础。 阅读全文
posted @ 2017-11-26 12:44 爱编程的小兵 阅读(6819) 评论(0) 推荐(2) 编辑
摘要: 本文描述了系统调用fork()在powerpc上的实现流程,通过源码分析,可以加深对系统调用的模式切换的理解。 阅读全文
posted @ 2017-11-25 22:47 爱编程的小兵 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2017-11-24 01:00 爱编程的小兵 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 1、lsof abc.txt --> 显示开启文件 abc.txt的进程。 2、lsof -c abc > 显示abc进程现在打开的文件。 3、lsof -c -p 1234 > 显示进程1234打开的文件。 4、lsof +d /usr/local > 显示目录下被进程打开的文件 5、lsof - 阅读全文
posted @ 2017-11-21 00:39 爱编程的小兵 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 1、 2代表标准错误,2 > 表示重定向,就是把标准错误重定向到 1中,这个1如果想表示标准输出的话,就必须在前面加 & 2、 正常情况下,下面这个会有很多错误信息,但是加上2>&1后,问题消失。 [zhou@localhost ~]$ find / -name startproc > result 阅读全文
posted @ 2017-11-21 00:14 爱编程的小兵 阅读(436) 评论(0) 推荐(0) 编辑
摘要: import paramiko import time hostname = '192.168.248.156' port = 22 user = 'zhou' passwd = '123' paramiko.util.log_to_file('paramiko.log') s = paramiko.SSHClient() s.set_missing_host_key_policy(pa... 阅读全文
posted @ 2017-11-17 01:07 爱编程的小兵 阅读(547) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2017-11-15 08:33 爱编程的小兵 阅读(587) 评论(0) 推荐(0) 编辑
摘要: 总的方向是: ingress > mmu > egress. 先介绍ingress: 在介绍mmu: 最后介绍egress: 最后列出一些常见问题: 阅读全文
posted @ 2017-11-05 12:35 爱编程的小兵 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 1、应用程序有时需要内核协助完成一些处理,但是应用程序不可能执行内核代码(主要是安全性考虑), 那么,应用程序需要有一种机制告诉内核,它现在需要内核的帮助,这个机制就是系统调用。 2、系统调用的本质是,应用程序主动触发软中断,这个软中断异常立即被系统捕获到(cpu指令产生异常,触发异常处理程序),在 阅读全文
posted @ 2017-11-05 11:50 爱编程的小兵 阅读(1714) 评论(0) 推荐(0) 编辑
摘要: 一、应用程序和系统库从哪里来? 两种机制,源码安装和二进制安装。 二、源码安装 tarball 1、核心思想是:利用开源代码,自己编译生成应用程序或者库,要求系统上必须已安装TMG(tar, make, gcc)。 2、tarball包的安装顺序是,先解压缩(tar)、再配置(config)、再编译 阅读全文
posted @ 2017-11-04 00:24 爱编程的小兵 阅读(1485) 评论(0) 推荐(0) 编辑