序
笔者一直想获取思科的网络工程师认证,因为没有能下定决心以及苦于未能掌握好计算机的基础知识,所以迟迟未能达成目标。现在笔者决定通过博客园写随笔和读书笔记摘抄的方式,记录下我学习备考CCNA以及CCNP认证的过程,同时也给有同样想法的IT同行们一些启示和帮助。
尽管您在读我的这份学习笔记的时候会感觉到:咦?为什么这些内容都是在CCNA认证教材(大家都知道的那本经典教材,Todd Lammle写的)中有提及到或者包含的?但在我看来,读书是由薄到厚再到薄的过程。这份笔记虽然是摘抄的,但有些部分融入了我自己的理解,自己按照考试要点梳理出方便我记忆和学习的思路,这些笔记所提及的知识点都是思科认证考试中必须要记忆和掌握的。我相信通过这样的一个过程,一定可以至少逼迫自己去读书吧?为了技术学术的规范化,笔记的文末给出了参考文献。
读大学期间,我的网络课老师跟我们说过:你只要把OSI的7层模型弄得滚瓜烂熟,你就可以去读计算机的研究生了。在读大学期间我也曾听到很多同专业的学长跟我说起过他们在高中的时候就已经考取了CCNA认证。我说天呐...只需要高中水平就能理解到这些知识吗?但当我读到研究生的课程时却发现当初老师说的那一番话并不是这么简单。因为从物理层到应用层,每一层所对应的设备以及协议,你不仅要知道它们的功能和优缺点(在网络工程的规划设计、实施和实现时经常会用到),而且要能准确地运用,并能用分布式应用程序实现他们。将7层OSI模型完全搞懂其实是从底层到高层再从高层到底层的过程。比如说,用C语言实现物理层的硬件设计或者实现TCP/IP协议,这绝对不是一件容易的事情。直到现在,我终于理解老师的深意:考过证书其实并不意味着什么,只是我们设定的目标不应该仅仅以通过考试或者去读研究生为目的而已。
红笔标注的Heading是考试要点,最后祝大家都能切实提升自己的网络知识和技术水平。
1.描述各种网络设备的意图和功能
路由器(Router)默认时分隔广播域,也用来分隔冲突域(因为每个端口属于不同的广播域)。路由器的实质是工作在网络层的交换机。(过滤广播)
使用路由器的优点:1.默认时路由器不会转发广播;2.路由器可以根据第3层信息(比如IP地址)对网络进行过滤。
路由器的功能:1.数据包转发(依靠逻辑寻址IPv4或IPv6);2.数据包过滤(依靠逻辑寻址IPv4或IPv6);3.网络之间的通信;4.路径选择(利用路由表)。
交换机(Switch)默认时分隔冲突域,它的每一个端口都是一个冲突域,交换机之间的连接也被认为是一个冲突域,但其只有一个广播域(因为所有端口都在同一个广播域内),所以交换机不能分隔广播域。(不过滤广播)交换机的实质是工作在数据链路层的多端口的网桥。(类比:N个叉路口都汇聚到一条主干道上,但是这条主干道有N个通道,它们之间互不影响)
使用交换机的优点:1.减少广播域内的冲突(避免第二层广播问题);2.增加网络中冲突域的数量从而为用户提供更多的带宽。(因为第二层交换机为每个端口都分配专用带宽,每个交换机端口代表一个不同的网段,因此每个用户可以获得特定数量的带宽)
集线器(Hub)接受数字信号并进行放大或整形,然后将数字信号转发所有的活动端口上,它根本不关心数据是什么。接入到集线器中的所有设备和所有端口都在同一个冲突域内,也在同一个广播域内,因此集线器不能分隔广播域和冲突域。(不过滤广播)集线器的实质是工作在物理层的多端口中继器。(类比:N个叉路口都汇聚到一条主干道上,但是这条主干道只有一个通道,很容易发生冲突)
网关(Gateway)就是一个网络连接到另外一个网络的关口,它是最复杂的网络互连设备。网关的实质其实是由一个网络通向其他网络的IP地址。
延伸概念——广播域:网段上所有设备的集合,这些设备收听送往那个网段的所有广播。它基于第二层数据链路层。通俗地讲,广播域就是指站点发出一个广播信号后能接收到这个信号的范围,通常一个局域网就是一个广播域。广播域内的所有设备都必须监听所有的广播包,如果广播域太大了,用户的带宽就小了,并且需要处理更多的广播,网络响应时间将会长到让人无法容忍的地步。
冲突域:一个站点向另一个站点发出信号。除目的站点外,有多少站点能收到这个信号,这些站点就构成一个冲突域。它基于第一层物理层。
2. 引起LAN通信量出现阻塞的原因
在一个广播域中有太多的主机;
广播风暴;(一个数据包或帧被传输到本地网段上的每个节点就是广播。大量的广播数据充斥在网络中无法被处理并占用大量的带宽就是广播风暴)
组播;
低带宽;
为连接到网络中添加了集线器;
大量的ARP或IPX流量。
3. OSI参考模型
优点:将网络的通信过程划分得小一些,简单一些的部件,因此有助于各个部件的开发、设计和故障排除;通过网络组建的标准化,允许多个供应商进行开发;通过定义在模型的每一层实现什么功能,鼓励产业的标准化;允许各种类型的网络硬件和软件互相通信;防止对某一层所做的改动影响到其他的层,这样就有利于开发。
所有设备:网络管理工作站(NMS),Web和应用服务器,网关(不是默认网关),网络主机
OSI参考模型7层:第7层应用层(Application layer),第6层表示层(Presentation layer),第5层会话层(Session layer),第4层传输层(Transport layer),第3层网络层(Network layer),第2层数据链路层(Data Link layer),第1层物理层(Physical layer)
各层功能定义:
物理层:在设备之间传输(发送和接收)比特流(带数值的莫尔斯代码1或0),指定电压大小、线路速率和电缆的引脚;
数据链路层:将数据包组合为字节,字节组合成帧;使用MAC地址提供对介质的访问;执行差错检测(循环冗余校验CRC),但不纠正;处理网络拓扑和流量控制。它包含两个子层(介质访问控制MAC和逻辑链路控制LAC);
网络层:提供逻辑寻址,以便路由器进行路由选择。也即跟踪网络中设备的位置并决定传送数据的最佳路径。它包含两种类型的包:数据包(用来支持数据传送的协议是被动路由协议)和路由更新包(发送路由更新包的协议叫做主动路由协议)。
传输层:将数据分段并重组为数据流;提供可靠(TCP:确认、排序和流量控制(缓冲、窗口机制和拥塞避免))或不可靠(UDP)的传输;在重传前执行错误纠正;实现上层应用程序的多路复用,建立会话连接和断开虚电路(比如三方握手)等等。它可以是无连接的也可以是面向连接的(三方握手,缓冲区的工作原理和窗口机制);
会话层:负责建立、管理和终止表示层实体之间的会话连接;维持不同应用程序的数据分隔。它包括三种通信方式:单工(只支持数据在一个方向上传输)、半双工(允许数据在两个方向上传输但不能同时进行)和全双工(发送数据的同时也能接收数据,两者同步进行)。
表示层:为应用层提供数据,负责数据处理(加密和解密),数据转换(编码和转译)和代码格式化(压缩和解压缩)。
应用层:提供用户应用程序之间的接口;识别并建立想要通信的计算机一方的可用性,并决定想要的通信是否存在足够的资源。
总结:物理层、数据链路层、网络层属于通信子网,主要完成数据传输的功能;传输层、会话层、表示层和应用层属于资源子网,主要完成数据处理的功能并为用户提供与网络之间的接口。
4. 以太网电缆的连接
直通电缆:主机的以太网接口到交换机或集线器;路由器的以太网接口到交换机或集线器;
交叉电缆:交换机到交换机;集线器到集线器;主机到主机;集线器到交换机;路由器直连到主机;
反转电缆:PC寄到路由器或交换机控制台连接(启动超级终端以及相应配置步骤流程细节)。
5. Cisco的3层分层模型
核心层:骨干(尽可能快地交换数据流);
分配层:路由(提供路由、过滤和WAN接入,决定数据包可以怎样对核心层进行访问,实现网络策略);
接入层:交换(控制用户和工作组对互联网络资源的访问)。
6. 补充的知识点
(1)CSMA/CD技术:(Carrier Sense Multiple Access/Collision Detect)载波监听多路访问/冲突检测技术。一种争用型的介质访问控制协议,主要应用于现场总线Ethernet中。对于每一个站而言,一旦它检测到有冲突,它就放弃当前的传送任务。也即:如果两个站都检测到信道是空闲的,并且同时开始传送数据,则它们几乎立刻就会检测到有冲突发生。它应用在OSI模型的第二层数据链路层。
优点:快速地终止被损坏的帧可以节省时间和带宽;原理比较简单,技术上容易实现;网络中各工作站处于平等地位,不需要集中控制;
缺点:不提供优先级控制;当网络负载增大时,发送时间延长,发送效率急剧下降。
性能指标:信道利用率、吞吐量、介质利用率;
原理:发送数据前,先侦听信道是否空闲。若空闲,则立即发送数据。若信道忙碌,则等待一段时间至信道中的信息传输结束后再发送数据;若在上一段信息发送结束后,同时有两个或两个以上节点都提出发送请求,则判定为冲突。若侦听到冲突,则立即停止发送数据,等待一段随机时间(冲突激活了随机退避算法直到定时器到期)再重新尝试,此时所有主机重新发送数据的机会是均等的。
目的:提供寻址和媒体存取的控制方式,使得不同设备或网络上的节点可以在多点的网路上通信而不互相冲突。
总结:先听后发,边发边听;冲突停发,随机延迟重发。
(2)网关(Gateway)就是一个网络连接到另外一个网络的关口,它是最复杂的网络互连设备。
网关的实质其实是由一个网络通向其他网络的IP地址。
以CCNA考试教材中Bob和Sally通信过程为例,解释数据在网络中如何流动:
Bob所在的网络源IP地址为192.168.0.2,但Bob只知道他自己的MAC地址,不知道Sally的IP地址或MAC地址。在DNS名字解析之前,Bob发送一个MAC地址的广播地址,并发送一个IP LAN广播,地址是192.168.0.255. 得到了Sally的MAC地址(Sally的IP地址通过ARP协议解析成MAC地址)后,Bob的PC首先发送一个DNS请求,路由器或DNS解析服务器就会给Bob的PC返回Sally的PC的IP地址。如果Bob的PC发现该条信息(数据包)要发送往的目的主机不在本地网络(比如LAN)中,就将数据包转发给Bob所在网络的网关(GateWay)然后再由网关转发给Sally所在网络的网关(两人所在的网络均要设置好网关的IP地址,这样TCP/IP协议才能实现不同网络之间的互相通信);如果Sally的PC与Bob的PC同在一个网段上,则第二层数据链路层的设备(如交换机)将会封装好这个数据包而不转发到其他任何网段(因为他们都使用了他们所在网络的默认网关)。至此,Bob现在有了Sally的IP地址(第三层信息)和MAC地址(第二层信息),在Bob的PC上发送信息给Sally,比如“Sally你好,你在吗?”的时候,数据包(已封装了以上信息)就通过物理层的传输到达了数据链路层上的某个交换机,该交换机查看数据包的Sally的MAC地址,是送往第3层路由器的,就将数据帧发到了第3层网络层上的某个路由器,该路由器收到此数据包,首先查看数据包的Sally的IP地址,如果在路由器内的路由表中有去往Sally所在网络的路径信息,就是发往Sally的具体的下一跳信息,这样路由器就选择一个外出接口,数据包就被送至那个接口上并封装成帧,最后被送出本地网络(如果路由器在路由表中不能找到对应包的目的网络的表项,它就丢弃该数据包);接着,数据包就通过传输层,会话层,表示层最终达到应用层(各自发挥其协议与作用),也就是Sally的PC上的某个通信应用程序上收到了这一条信息。
(3)DHCP(Dynamic Host Configuration Protocol)提供静态和动态的地址配置,可以是人工的或自动的。
通信时,某客户端的PC机可以向DHCP服务器请求一个静态地址,DHCP服务器有一个数据库静态地绑定物理地址和IP地址;DHCP还有第二个数据库,拥有一个可用的IP地址池。该数据库就可以令DHCP成为动态的。当DHCP客户端请求一个临时的IP地址时,DHCP服务器就可以查找可用的未被使用的IP地址,然后指定一个在可协商的期限内有效的IP地址。
当DHCP客户机向DHCP服务器发送请求时,服务器首先检查它的静态数据库,如果数据库中存在所请求的物理地址的项目,则返回该客户的永久IP地址。反之,如果静态数据库中没有该项目,服务器就从可用的IP地址池中选择一个IP地址,并将该地址指定给该用户,然后将该项目添加到动态数据库中。
优点:配置时不需要每台客户端都去重新设置TCP/IP协议,只需要在DHCP服务器上进行统一配置即可,为网络维护人员提供方便;DHCP服务器的管理员也可以方便地指定某台特定的主机使用某个IP地址。
(4)DNS(Domain Name System)域名解析系统是一个可以将PC名字映射为IP地址或者将IP地址映射为主机名字的过程解析服务系统。
DNS是一个C/S的应用程序,运用它时,主机要调用一个解析程序的DNS客户程序,解析程序用一个映射请求访问最近的一个DNS服务器。如果服务器含有该信息,它就满足解析程序的请求;否则,它将解析程序交付给其他的服务器,或者查询其他的服务器来提供这种信息。
当解析程序接收到映射后,它解释这一响应,以确定它是一个真正的解析还是一个差错,最后将结果传递给发出这一请求的进程。其实域名解析的结果最终指向的是IP地址。
优点:提供域名与IP地址相互映射的网络服务,是遍布于全世界的一个分布式的数据库。每一段的数据通过C/S模式在整个网络中均可自由存取;将难以记忆的网站IP地址转化为人们容易记忆URL,方便了网站的管理和人们的信息共享。
参考文献:
1. (美)T.L.著,程代伟等译,CCNA学习指南:中文第6版. 640-802., 北京电子工业出版社, 2008.2;
2. (美)Forouzan,B.A. & Fegan,S.C.著,吴时霖等译,数据通信与网络(原书第4版).,北京机械工业出版社, 2007.7.