3 songly_

尚未进行身份认证

调试的错误就是编程给你最好的东西,因为在每个错误上面都标志着前进的一步

等级
TA的排名 1w+

23-STP协议基本部署

1.STP协议和二层环路在企业局域网络中使用冗余链路会带来环路的风险,导致广播风暴,MAC地址表震荡等各种问题,影响网络的稳定性,好在STP(生成树协议)协议解决了这个问题,总之STP协议可以解决冗余链路带来的环路问题,并且当交换机的某一条链路发生故障时,可以迅速切换到备用链路,保证网络的可靠稳定性。STP协议定义了三种端口角色:根端口(RP),指定端口(DP),非指定端口(NDP,也称...

2019-08-22 14:27:10

22-交换技术——企业网络和二层环路

1.企业局域网络设计前面在学习交换机原理的时候遗留了一个环路避免的问题,在此之前我们先来了解一下现在的企业局域网络架构。计算机网络经过几十年的发展,一般现在的企业网络基本都采用了三层的网络架构:核心层,汇聚层,接入层。每一层都有各自独立的功能,这样的模块化设计方便网络排错和维护,有利于后期网络扩展,如下图所示:核心层交换机:主要是用于高速转发企业内部网络不同区域的数据流量(也就是...

2019-08-15 09:21:12

21-交换技术——VTP技术

1.VTP协议VTP协议(VLANTrunkingProtocol)是思科私有的一种协议,通常用于交换机设备管理VLAN。一般部署VTP协议的一个或多个服务器节点在创建、修改、删除VLAN时,这些操作的VLAN信息将会通过Trunk链路同步到其他的交换机,使所有部署了VTP协议的交换机保持相同的VLAN信息。上图就很好的解释了VTP协议的工作原理,以创建VLAN为例,当部署VTP...

2019-08-06 13:42:10

20-交换技术——Trunk技术详解

1.什么是Trunk技术在上一篇中,不同VLAN跨交换机通信有个特点:每个VLAN都要占用交换机的一个接口(链路),如果是多个VLAN的话,就需要占用更多的接口。Trunk技术可以让一条物理上的链路(接口)传输多个VLAN的数据流量,并且每一个VLAN的数据流量都会被打上“标签”,以此来标明这是属于哪个VLAN的数据流量,Trunk技术说白了就是实现传输不同vlan的数据流量。...

2019-07-31 13:57:32

19-局域网基础——VLAN技术部署

1.VLAN技术原理在早期基于总线型拓扑的局域网(LAN)存在以下问题:如果当前有多个节点同时发送数据会产生冲突问题 任意一个节点发送的数据都会发送到其他节点,形成广播 所有的节点共享同一传输通道,因此信息传输的安全性较差也就是说,在早期传统的局域网中存在冲突域,广播域,无法保障信息传输的安全性等问题;特别是当网络中的计算机越来越多的时候,这些问题尤为明显。虚拟局域网(...

2019-07-27 17:29:22

18-交换技术——交换机基础

1.交换机原理交换机是一个二层设备,它是基于数据帧的源MAC地址和目的MAC地址来工作的,可以隔离冲突域,交换机的主要功能有三个:转发(数据帧) 地址学习(建立MAC地址表) 环路避免地址学习:交换机收到数据帧后,会将数据帧中源MAC地址存储到交换机的MAC地址表中(根据源MAC地址学习)。转发(数据帧):前面我们说过交换机主要是基于源MAC地址和目的MAC地址来转...

2019-07-25 13:41:57

17-OSPF路由协议详解——OSPF路由汇总

通常在一个大型的企业网或校园网中,其网络拓扑是非常复杂的,路由器的路由表也会非常冗余,这会造成网络设备在转发数据流量时需要消耗更多的硬件资源,OSPF路由协议也不例外,因此就需要用到路由汇总技术。OSPF路由汇总需要注意的是:不能在区域内汇总,区域内部的路由器无法执行汇总功能,一般汇总的流程是从常规区域汇总到主干区域。例如下图中展示了OSPF路由汇总的流程中area0是主干区域,其他ar...

2019-07-23 13:26:25

11-RIP路由协议详解——路由算法和防环机制

1.RIP路由算法  RIP协议是基于Bellham-Ford(距离矢量)算法,即贝尔曼算法,该路由算法可以根据路径参数,也就是度量值的好坏来生成路由条目。如图1所示,如果收到邻居给的路由,若本地没有,则接收。图12.如图2所示,如果收到邻居给的路由,若本地有,根据度量值对比,若优则录入,若劣质则丢弃。图2路径1:PC–>R1–&gt

2019-07-14 22:26:24

2-ip地址分类

1.ip地址的种类  我们在学习计算机网络时知道,计算机网络一般根据网络大小分对网络进行分门别类:一般有局域网,广域网,城域网,互联网等。对于拥有大量结点的少部分网络,他们创建了A类网络这个等级。另一个极端情况是C类网络,它包括只拥有较少结点的众多网络。那么介于在A类和C类之间的网络就是B类网络了。2.ip地址分类  在早期为了适应大型,中型,小型等不同的网络,ip地址在设计出...

2019-07-03 00:34:08

1-ip地址的用途和表示

1.学习ip地址预备知识  在网络中计算机的ip地址是由32位的二进制数组成,后面学习ip地址和子网划分时我们需要把二进制数转换成十进制数,还需要把十进制数转换成二进制数。因此为了学好ip地址规划,我们有必要学好并熟悉二进制和十进制之间的转换关系。2.ip地址干嘛的  生活中人们通常需要知道自己的居住地址,在网络中的同样需要一个地址来唯一标识每一台主机,这样所有的设备之间才能实...

2019-07-02 23:14:17

27-通过调用门实现提权

参考资料:9-调用门(无参)1.什么是调用门在之前的学习中,JMPFAR指令实现代码跨段的本质是修改CS段寄存器,并不会改变程序的特权级别(即修改CPL的值),如果我们即想要实现代码跨段和提权的话,就需要用到调用门。调用门是CPU提供的一个功能,它允许一个3环(CPL=3)的程序通过这扇“门”来修改CS段寄存器并实现提权到0环(CPL=0),实际上调用门是一个系统段描述...

2019-06-27 21:37:43

38-System V——消息队列

消息队列也是进程间通信的一种方式。消息队列的本质上是内核中一个消息链表,存储在内核空间。当进程间使用消息队列进行通信时,可以一个进程向内核空间中写入消息(向消息队列中添加一个消息),另一个进程从内核空间中读取消息(从消息队列中删除一个消息)。

2019-06-19 13:03:12

26-代码跨段跳转

1.什么是代码跨段简单来讲,代码跨段本质上就是修改CS段寄存器的值,即把另一个代码段的描述符加载到cs段寄存器。前面我们也说过,CS段寄存器不能单独修改,需要和EIP寄存器一起修改才行,因此想要实现代码跨段访问就需要使用一些特定的指令来完成,例如jmpfar指令就可以完成代码跨段访问。2.代码间跳转流程2.1查表得到段描述符然后CPU根据段选择子查找G...

2019-06-15 19:34:24

25-段权限检查

1.CPU分级保护模式下的CPU分成了4个级别,通常称为0环,1环,2环,3环。处在最中间的0环是CPU运行特权指令的,0环的特权级别最高,通常我们所写的内核程序,驱动程序就运行在0环。基于操作系统写的用户程序则运行在3环,同理,3环的特权级别最低(为了方便理解,你可以把0环理解为内核程序运行的内核空间,3环是用户程序运行的用户空间)。需要明白的一点是,所谓0环也好,3环也好,都是对...

2019-06-11 00:05:56

24-段描述符属性

1.段描述符属性S位S位用于指定描述符的类型,当S=0表示是一个系统段,S=1则表示是一个数据段或代码段,对于系统段我们将在后面介绍。2.段描述符属性Type域Type字段有4位,用于指定描述符的子类型。对于Type来说,当S=1或0时,Type所表示的含义是完全不一样的,这里我们只讨论S=1的情况。对于数据段来说,Type有E,W,A三位;对于代码段来说,Type有C,...

2019-06-08 21:25:41

23-段描述符与段选择子

1.GDT表现在思考一个问题,当你写一个段寄存器的时候,只给了一个16位的数,但段寄存器有96位,那剩下的80位是怎么来的?这个16位的数是随便写的吗?通常在执行MOVDS,AX这些指令时,CPU会查表,并根据AX的值来决定查找GDT(全局描述符表)还是LDT(局部描述符表),查找表的什么位置,查出多少数据。有同学可能会好奇GDT表在哪里,表的大小有多大呢?这就要说到gdtr寄存器了,...

2019-06-08 13:12:03

22-从段寄存器开始

1.ds寄存器保护模式有2种非常重要的机制:段和页,这2种机制都是非常复杂的,无论是学习段或者页的机制,在此之前都要先了解段寄存器。来看下面这一段代码:movdwordptrds:[0x123456],eax在上面的代码中,有一个ds寄存器,根据前面学习实模式我们知道ds是一个数据段寄存器。eax是一个32位的寄存器,dword表示4字节,正好也是32位。换句话说,这段代...

2019-06-08 12:33:53

21-32位处理器架构

在前面的学习中,8086CPU是基于16位的实模式,并且有20根地址线,寻址范围为1MB内存;32位的处理器架构是延续8086发展而来的,对8086有很好的兼容性。相信学过计算机的同学都知道,32位系统最大只识别4G内存,原因在于32位的处理器有32根地址总线,寻址长度为4G内存。另外,16位处理器的通用寄存器有8个,即AX、BX、CX、DX、SI、DI、BP和SP;而...

2019-05-29 22:56:55

20-8086处理器的中断机制

中断就是打断处理器当前的执行流程,去执行另外一些和当前工作不相干的指令,执行完以后,还可以返回到原来的程序流程继续执行。在现实生活中我们也会经常遇到类似中断这样的事情,例如你正在用手机听歌,突然你的电话响了,这时处理器必须中断歌曲的播放,来处理这件更为重要的事件。中断可以分为两大类:CPU内部中断和CPU外部中断。1.外部硬件中断从字面意思理解,外部硬件中断就是处理器外面...

2019-04-03 17:47:26

21-非阻塞accept

1.回忆accept函数之前在10-在accept之前中止连接(连接异常)这一篇中已经讨论过在accept之前中止连接的情况了,不过从最终的结果来看,accept并没有返回错误,而是之后调用read读取已连接套接字时产生了错误。另外,当一个已完成连接正等待被服务端accept时,select会把该连接的套接字作为读描述符并返回。这意味着之后的accept就不应该阻塞,但是会引发一个...

2019-01-07 14:58:41

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。