计算机网络学习笔记笔试面试.docx
- 文档编号:9341728
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:41
- 大小:40.59KB
计算机网络学习笔记笔试面试.docx
《计算机网络学习笔记笔试面试.docx》由会员分享,可在线阅读,更多相关《计算机网络学习笔记笔试面试.docx(41页珍藏版)》请在冰豆网上搜索。
计算机网络学习笔记笔试面试
考研课程计算机网络的学习笔记,比较浅的知识点,用于应付笔试面试中的网络题
一、计算机网络体系结构
1、计算机网络的概念、组成和功能
1.概念
按照网络协议(语法,语义,同步),以共享资源和传递信息为主要目的,将地理上分散且
功能独立的计算机通过通信线路互连起来构成的集合体。
简言之,计算机网络就是一些互连
的、自治的计算机的集合。
2.组成
从逻辑功能上说计算机网络有如下组成
(1)通信子网:
由各种传输介质、通信设备和相应的网络协议组成,它为网络提供数据传
输,交换和控制能力,实现联网计算机之间的数据通信
(2)资源子网:
由主机、终端以及各种软件资源、信息资源组成,负责全网的数据处理业
务,向网络用户提供各种网络资源与服务。
3.功能
数据通信(连接控制、传输控制、差错控制、流量控制、路由选择、多路复用);资源共享
(软件、硬件和数据资源共享);信息综合处理;负载均衡;提高可靠性;分布式处理
2.计算机网络的分类
分类方式分类
传输技术广播式网络、点对点网络
网络的作用范围广域网(WAN)、城域网(MAN)、接入网(AN)、局域网(LAN)
网络的交换功能电路交换、报文交换、分组交换、混合交换(电路和分组)
网络的使用者公用网、专用网
3.计算机网络的标准化
1.1974年,IBM公司公布了它研制的系统网络体系结构(SNA),它是按分层设计的,成为
世界上使用的较广泛的一种网络体系结构
2.为了使不同体系结构的计算机网络能够互连,国际标准化组织ISO成立了专门机构,设
计出了开放式系统互联基本参考模型(OSI/RM)
3.由于OSI过于复杂,现今的因特网使用的TCP/IP协议,TCP/IP协议成为实际上的国际标
准
4.计算机网络体系结构的基本概念
1.网络协议
网络协议是为进行网络中的数据交换而建立的规则、标准或约定。
它规定了所交换的数据格
式以及有关的同步问题。
由三个要素组成:
语法、语义、同步
2.分层结构
分成的优点:
各层之间相互独立;灵活性好;结构上可分开;易于实现和维护;能促进标准化工作
每层具备如下功能:
差多控制;流量控制;分段和重装;复用和分用;建立连接和释放
3.网络体系结构
计算机网络的各层以及其协议的集合成为网络的体系结构。
4.实体、接口和服务
实体:
任何可发送或接受信息的硬件和软件进程。
不同结点上同一层实体称作对等实体。
许
多情况下实体就是一个软件模块
接口:
表示同一结点相邻层之间交换信息的连接点,下层通过接口向上层提供服务
服务:
各层向它的直接上层提供的一组原语或操作。
分为面向连接服务和无连接服务。
5.开放系统互连(OSI)参考模型
分层理解定义和功能协议数据
单位
规定了激活、维持、关闭通信断点之间略Bit物理层对每一层的每一
步怎样利用物理
的机械特性、电气特性、功能特性以及
媒介
规程特性
数据链路层每一步该怎么走在不可靠的物理介质上提供可靠的传HDLC、
帧
输。
作用:
物理地址寻址、数据成帧、SDLC、PPP、
流量控制、数据检错和重发。
为了保证STP、帧中继
传输,从网络层接收到的数据被分割成
特定的可被物理层传输的帧
网络层/IP层走哪条路可以到分组/
主要功能是将网络地址翻译成对应的IP、IPX、RIP、
达OSPF
物理地址,并决定如何将数据从发送方数据
路由到接收方。
负责对子网间的数据包包
进行路由选择和为分组交换网上的不
同主机提供通信(主机到主机层次的逻
辑通信),还有拥塞控制、网际互联功
能
传输层对方在何处负责将上层数据分段并提供端到TCP、UDP、
报文
端的、可靠的或不可靠的传输。
SPX
提供差错控制和流量控制
会话层对方是谁管理主机之间的会话进程,即负
责建立、管理、终止进程之间的
会话。
表示层对方看起来像什对上层数据或信息进行交换以保
么证一个主机应用层信息可以被另
一个主机的应用程序理解。
表示
层的数据转换包括数据的加密、
压缩和格式转换
应用层做什么为OS或网络应用程序提供访问网
TELNET、
络服务的接口FTP、HTTP、
SNMP
6.TCP/IP体系结构
7.计算机网络的主要性能指标
带宽:
(1)在过去通信干线用来传送模拟信号时带宽是指信号最高频率与最低频率之差,单位
为Hz。
(2)数字信号中带宽表示“最高数据率”,即数字信道每秒能传送的比特数,单位bit/s,
有时也称作吞吐量或者信息传输率
时延:
指讲数据从通信网的一端传送到另一端所需要的时间。
包括:
发送时延:
传播时延:
处理时延:
二、TCP/IP详解
1.基本概念
1.TCP/IP协议分层
1)链路层(数据链路层/网络接口层)通常包括OS中的设备驱动程序和计算机中对应的网
卡。
它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。
2)网络层(互联网层)处理分组在网络中的活动,例如分组的选路。
在TCP/IP协议族中,
网络层协议包括IP协议(网际协议),ICMP协议(internet互联网控制报文协议),以及IGMP
协议(internet组治理协议)。
3)运输层,主要为两台主机上的应用程序提供端到端的通信。
在TCP/IP协议族中,有两
个互不相同的传输协议:
TCP(传输控制协议)和UDP(用户数据报协议)。
TCP为两台主机提供高可靠性的数据通信。
它所做的工作包括把应用程序交给它的数
据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时
钟等。
由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。
UDP则为应用层提供一种非常简单的服务。
它只是把称作数据报的分组从一台主机发
送到另一台主机,但并不保证该数据报能到达另一端。
任何必需的可靠性必须由应用层来
提供。
4)应用层,负责处理特定的应用程序细节。
几乎各种不同的TCP/IP实现都会提供下面这
些通用的应用程序:
Telnet远程登录;FTP文件传输协议;SMTP简单邮件传送协议;SNMP简单网络治理
协议。
2.基本概念
ip地址
域名系统:
域名系统是一个分布的数据库,它提供将主机名(就是网址啦)转换成IP地址
的服务
RFC:
tcp/ip协议的标准文档
port:
这个号码是用在TCP,UDP上的一个逻辑号码,并不是一个硬件端口,我们平时说
把某某端口封掉了,也只是在IP层次把带有这个号码的IP包给过滤掉了而已
应用编程接口:
常用的编程接口有socket和TLI
2.数据链路层
数据链路层有三个目的:
为IP模块发送和接收IP数据报。
为ARP(地址解析协议)模块发送ARP请求和接收ARP应答。
为RARP(逆地址解析协议)发送RARP请求和接收RARP应答
3.协议介绍
1.IP协议
IP协议是TCP/IP协议的核心,所有的TCP,UDP,IMCP,IGCP的数据都以IP数据格式
传输。
要注意的是,IP不是可靠的协议,这是说,IP协议没有提供一种数据未传达以后的
处理机制--这被认为是上层协议--TCP或UDP要做的事情。
所以这也就出现了TCP
是一个可靠的协议,而UDP就没有那么可靠的区别。
1.1.IP协议头
TTL字段(8位)规定该数据包在穿过多少个路由之后才会被抛弃(这里就体现出来IP协议
包的不可靠性,它不保证数据被送达),某个ip数据包每穿过一个路由器,该数据包的TTL
数值就会减少1,当该数据包的TTL成为零,它就会被自动抛弃。
这个字段的最大值也就
是255,也就是说一个协议包也就在路由器里面穿行255次就会被抛弃了,根据系统的不
同,这个数字也不一样。
1.2IP路由选择
当一个IP数据包准备好了的时候,IP数据包(或者说是路由器)是如何将数据包送到
目的地的呢?
它是怎么选择一个合适的路径来"送货"的呢?
最特殊的情况是目的主机和主机直连,那么主机根本不用寻找路由,直接把数据传递过
去就可以了。
至于是怎么直接传递的,这就要靠ARP协议了,后面会讲到。
稍微一般一点的情况是,主机通过若干个路由器(router)和目的主机连接。
那么路由器就
要通过ip包的信息来为ip包寻找到一个合适的目标来进行传递,比如合适的主机,或者合
适的路由。
路由器或者主机将会用如下的方式来处理某一个IP数据包
1.如果IP数据包的TTL(生命周期)以到,则该IP数据包就被抛弃。
2.搜索路由表,优先搜索匹配主机,如果能找到和IP地址完全一致的目标主机,则将
该包发向目标主机
3.搜索路由表,如果匹配主机失败,则匹配同子网的路由器,这需要“子网掩码(1.3.)”
的协助。
如果找到路由器,则将该包发向路由器。
4.搜索路由表,如果匹配同子网路由器失败,则匹配同网号(第一章有讲解)路由器,
如果找到路由器,则将该包发向路由器。
5.搜索路由表,如果以上都失败了,就搜索默认路由,如果默认路由存在,则发包
6.如果都失败了,就丢掉这个包。
这再一次证明了,ip包是不可靠的。
因为它不保证送达。
1.3.子网寻址
IP地址的定义是网络号+主机号。
但是现在所有的主机都要求子网编址,也就是说,把主机
号在细分成子网号+主机号。
最终一个IP地址就成为网络号码+子网号+主机号。
例如一个
B类地址:
210.30.109.134。
一般情况下,这个IP地址的红色部分就是网络号,而蓝色部
分就是子网号,绿色部分就是主机号。
至于有多少位代表子网号这个问题上,这没有一个硬
性的规定,取而代之的则是子网掩码。
子网掩码是由32bit的二进制数字序列,形式为是一连
串的1和一连串的0,例如:
255.255.255.0对于刚才的那个B类地址,因为210.30是网
络号,那么后面的109.134就是子网号和主机号的组合,又因为子网掩码只有后八bit为0,
所以主机号就是IP地址的后八个bit,就是134,而剩下的就是子网号码--109。
2.ARP协议
ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证
通信的顺利进行。
ARP(地址解析)协议是一种解析协议,本来主机是完全不知道这个IP对应的是哪个
主机的哪个接口,当主机要发送一个IP包的时候,会首先查ARP高速缓存(就是一个
IP-MAC地址对应表缓存),如果查询的IP-MAC值对不存在,那么主机就向网络发送一
个ARP协议广播包,这个广播包里面就有待查询的IP地址,而直接收到这份广播的包的
所有主机都会查询自己的IP地址,如果收到广播包的某一个主机发现自己符合条件,那么
就准备好一个包含自己的MAC地址的ARP包传送给发送ARP广播的主机,而广播主机拿
到ARP包后会更新自己的ARP缓存(就是存放IP-MAC对应表的地方)。
发送广播的主
机就会用新的ARP缓存数据准备好数据链路层的的数据包发送工作。
3.IMCP协议介绍
IP协议并不是一个可靠的协议,它不保证数据被送达,那么,自然的,保证数据送达
的工作应该由其他的模块来完成。
其中一个重要的模块就是ICMP(网络控制报文)协议。
当传送IP数据包发生错误--比如主机不可达,路由不可达等等,ICMP协议将会把
错误信息封包,然后传送回给主机。
给主机一个处理错误的机会,这也就是为什么说建立
在IP层以上的协议是可能做到安全的原因。
ICMP数据包由8bit的错误类型和8bit的代码
和16bit的校验和组成。
而前16bit就组成了ICMP所要传递的信息。
书上的图6-3清楚
的给出了错误类型和代码的组合代表的意思。
尽管在大多数情况下,错误的包传送应该给出ICMP报文,但是在特殊情况下,是不产
生ICMP错误报文的。
ICMP协议大致分为两类,一种是查询报文,一种是差错报文。
其中查询报文有以下几
种用途:
1.ping查询
2.子网掩码查询(用于无盘工作站在初始化自身的时候初始化子网掩码)
3.时间戳查询(可以用来同步时间)
而差错报文则产生在数据传送发生错误的时候。
就不赘述了。
ICMP的应用--ping
ping利用ICMP协议包来侦测另一个主机是否可达。
原理是用类型码为0的ICMP发请求,受到请求的主机则用类型码为8的ICMP回应。
ping程序来计算间隔时间,并计算有多少个包被送达。
用户就可以判断网络大致的情况。
可以看到,ping给出来了传送的时间和TTL的数据。
ping还给我们一个看主机到目的主机的路由的机会。
这是因为,ICMP的ping请求数
据报在每经过一个路由器的时候,路由器都会把自己的ip放到该数据报中。
而目的主机则
会把这个ip列表复制到回应icmp数据包中发回给主机。
但是,无论如何,ip头所能纪录的
路由列表是非常的有限。
如果要观察路由,我们还是需要使用更好的工具,就是要讲到的
Traceroute(windows下面的名字叫做tracert)。
ICMP的应用--Traceroute
Traceroute是用来侦测主机到目的主机之间所经路由情况的重要工具,也是最便利的
工具。
前面说到,尽管ping工具也可以进行侦测,但是,因为ip头的限制,ping不能完全
的记录下所经过的路由器。
所以Traceroute正好就填补了这个缺憾。
Traceroute的原理是非常非常的有意思,它受到目的主机的IP后,首先给目的主机发
送一个TTL=1的UDP数据包,而经过的第一个路由器收到这个数据包以后,就自动把TTL
减1,而TTL变为0以后,路由器就把这个包给抛弃了,并同时产生一个主机不可达的ICMP
数据报给主机。
主机收到这个数据报以后再发一个TTL=2的UDP数据报给目的主机,然后
刺激第二个路由器给主机发ICMP数据报。
如此往复直到到达目的主机。
这样,traceroute
就拿到了所有的路由器ip。
从而避开了ip头只能记录有限路由IP的问题。
三、物理层
略
四、数据链路层
1.数据链路层的功能
数据链路层在物理层提供的服务的基础上向网络层提供服务,即将原始的、有差错的物
理线路改进成逻辑上无差错的数据链路,从而向网络层提供高质量的服务。
一般,包括三种
基本服务:
无确认的无连接服务,有确认的无连接服务,有确认的有连接服务
功能有:
链路管理:
数据链路的建立、维持和释放
帧定界:
接收方确定收到的比特流中一帧的开始与结束位置,又称帧同步
流量控制:
控制发送发的发送数据的速率使得接收方来得及接收
差错控制:
在通信信道传输的比特流中发现差错,并纠正差错
将数据和控制信息区分开:
略
透明传输:
略
寻址:
保证每一帧都能正确到达目的地
2.组帧
(1)字符计数法:
利用头部的一个域来指定该帧中的字符数
(2)使用字节填充的首尾定界符法:
让每一帧用一些特殊的字节作为开始和结束
(3)使用比特填充的首尾标志法(即零比特填充法):
例如以01111110作为每一帧的开始
和结束标志,那么发送方的数据链路层碰到数据中的5个连续的1时,就要立即添加一个
0.
(4)违法编码法:
用不合法的编码作为帧起始标志
3.差错控制
差错控制存在两种基本策略:
检错编码和纠错编码
1.检错编码
检错编码采用了冗余编码技术,每个数据块中只附加一定的冗余信息,以便能让接收方推断
是否发生差错,但不足以纠正差错。
发现差错之后可以请求重传(ARQ)。
五、局域网与广域网
六、网络层
1.网络层的功能
(1)异构网络互联
将网络互联起来需要一些中间设备(中继系统/中间系统),根据中继系统所在层次可以
有以下5种不同的中继系统:
中继器——物理层
网桥或桥接器——数据链路层
路由器——网络层
桥路器(网桥和路由器的混合物)
网关——网络层以上
只用中继器或者网桥时,不称为网络互连,它仍是单个网络。
互联网都是指用路由器进
行互联的网络。
(2)路由选择与转发
网络层的主要功能是通过路由选择算法,为分组从源节点到目的节点选择适当的路径。
路由选择是指按照复杂的分布式算法,根据从各相邻路由器所得到的关于整个网络的拓扑变
化情况,动态的改变所选择的路由。
转发就是路由器根据转发表将用户的IP数据报从合适
的端口转发出去。
(3)拥塞控制
在某段时间,若对网络中的某资源(包括带宽、交换结点中的缓存和处理机)的需求超
过了该资源所能提供的可用部分,网络的性能就会变坏——产生拥塞。
用于监测网络拥塞的一些指标有:
由于缺少缓存空间而被丢弃的分组的百分比;平均队
列长度;超时重传的分组数;平均分组时延;分组时延的标准差
拥塞控制是一个全局性的过程,涉及所有的主机、路由器,以及与降低网络传输性能有
关的所有因素。
拥塞控制有两种方法:
(1)开环控制:
在设计网络时事先将发生拥塞的因素考虑周到,力求网络在工作时不
产生拥塞。
这种方式根据用户的协定限制进入网络的交通,从而阻止拥塞的发生。
如果服务
质量不能被保证,那么网络不得不拒绝交通流。
(2)闭环控制:
基于反馈的概念,主要措施包括检测拥塞,报告拥塞和调整措施。
(闭
环的缺点是在负载较小时影响网络吞吐量)。
这种方式是在拥塞已经发生或者即将发生时对
它做出反应,典型的是根据网络的状态调节交通流,因此必须把网络的状态反馈到调节交通
的地点,所以人们把这种算法称为闭环。
注意比较两个概念:
拥塞控制:
必须确保通信子网能够传送带传送的数据,是一个全局性的问题,设计所有的主
机和路由,以及导致网络传输能力下降的所有因素。
流量控制:
只与给定的发送端和接收端之间的点对点通信量有关,其任务是使发送端发送数
据的速率不能快得让接收端来不及接受。
2.路由选择算法
(1)分类
静态路由选择算法——即非自适应路由选择,其特点是简单和开销小,但不能及时适应网络
状态的变化。
不能根据当前测量或者估计的流量和结构来调整路由决策,但它也是可以通过
用户配置路由表来改变的。
动态路由选择算法——即自适应路由选择,其特点是能较好地适应网络状态的变化。
但实现
起来较复杂,开销也比较大。
(2)距离-向量路由算法
它要求每个路由器维持一张路由表,该表给出了到达每个目的地已知的最佳距离(距离可以
有不同的度量,如跳数、带宽、时延、负载)和输出路线。
在距离-路由选择算法中,每个路由器都定期地与所有相邻路由器交换整个路由表,并
以此更新自己的路由表项。
缺陷:
当网络中出现故障时会出现慢收敛现象。
举例:
RIP算法,它采用跳数作为距离的度量。
(3)链路状态路由算法
每个路由器在自己的链路状态变化时,将链路状态信息用洪泛法传送给网络中其他的路由
器。
发送的链路状态信息包括该路由器的相邻路由器以及所有相邻链路的状态。
由于一个路由器的链路状态只涉及与相邻路由器的连通状态,因而与整个互联网的规模
并无直接关系。
因此链路状态路由算法可以用于大型的或路由器变化剧烈的互联网络环境。
举例:
OSPF
(4)层次路由
路由选择协议分为两大类:
a.一个自治系统内部所使用的路由选择协议称为内部网关协议IGP,具体的协议有RIP何OSPF
b.自治系统之间使用的路由选择协议称为外部网关协议EGP,主要在不同的自治系统的路由
器之间交换路由信息,并负责为分组在不同自治系统之间选择最优的路径。
具体的协议有
BGP。
3.IPV4分组
(1)IPV4数据报格式
首部的第一部分是固定长度的,共20字节,是所有IPV4分组必须具有的。
在首部的固定部
分后面是一些可选字段,其长度是可变的,用来支持排错、测量以及安全等措施。
首部长度指的是首部占32bit字的数目,包括任何选项。
服务类型(TOS)字段(基本不用了)包括一个3bit的优先权子字段(现在已被忽略),
4bit的TOS子字段和1bit未用位但必须置0。
4bit的TOS分别代表:
最小时延、最大吞吐量、最
高可靠性和最小费用。
总长度字段是指整个IP数据报的长度,以字节为单位。
由于该字段长16比特,所以IP数
据报最长可达65535字节。
标识字段唯一地标识主机发送的每一份数据报。
通常每发送一份报文它的值就会加1。
在11.5节介绍分片和重组时再详细讨论它。
同样,在讨论分片时再来分析标志字段和片偏移
字段。
当数据报的长度超过IP的最大传送单元MTU时,必须分片。
标识字段的值会被复制到各
个分片的标识字段中,以便最后能正确重装成原来的数据报。
标志:
占3bit,最低位MF=1表示后面还有分片,MF=0说明是最后一个分片。
中间位DF=1
意思是不能分片。
片偏移:
分片后,该片在原分组中的相对位置。
TTL(time-to-live)生存时间字段设置了数据报可以经过的最多路由器数。
它指定了数
据报的生存时间。
TTL的初始值由源主机设置(通常为32或64),一旦经过一个处理它的路
由器,它的值就减去1。
当该字段的值为0时,数据报就被丢弃,并发送ICMP报文通知源主
机。
第8章我们讨论Traceroute程序时将再回来讨论该字段。
协议字段在第一章已经介绍,并在图1-8中示出了它如何被IP用来对数据报进行分用。
根据它可以识别是哪个协议向IP传送数据。
首部检验和字段是根据IP首部计算的检验和码。
它不对首部后面的数据进行计算。
ICMP、
IGMP、UDP和TCP在它们各自的首部中均含有同时覆盖首部和数据检验和码。
(2)IPV4分组转发流程
路由器的IP层所执行的分组转发算法:
1)从数据报的首部提取目的站的IP地址D,得出目的网络地址为N;
2)若网络N与此路由器直接相连,则直接将数据报交付给目的站D,否则是间接交付,执
行3)
3)若路由表中有目的地址为D的特定主机路由,则将数据报传送给路由表中所指明的下一
跳路由器;否则执行4)
4)若路由表中有到达网络N的路由,则将数据报传送给路由表指明的下一跳路由器,否则
执行5)
5)若路由表中有一个默认路由,则将数据报传送给路由表中所指明的默认路由器;否则执
行6)
6)报告转发分组出错。
4.IPV4地址与NAT
(1)分类的IP地址
IP地址={<网络号>,<主机号>}
几点注意:
1)A类、B
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机网络 学习 笔记 笔试 面试