知识点汇总-计算机网络(细节版)
- OSI和TCP/IP网络模型
- 对应关系图如下
- OSI模型:(1)应用层:应用层是OSI模型中最靠近用户的一层,负责为用户的应用程序提供网络服务(2)表示层:表示层负责在不同的数据格式之间进行转换操作,以实现不同的计算机系统间的信息交换(3)会话层:负责在网络中两个节点间建立、维护、控制会话,区分不同的会话,以及提供单工、半双工、全双工三种通信模式服务(4)传输层:OSI中最重要的一层,负责分割组合数据,实现端到端的逻辑连接(5)网络层:选择合适的网间路由和交换结点, 确保数据及时传送(6)数据链路层:负责物理传输的准备,物理地址寻址、数据的成帧、流量控制、数据的检错、重发等(7)物理层:是OSI模型的最底层,它面向原始的比特流的传输,同时规范了接口标准
- OSI模型建立七层的主要目的是:解决异种网络互连时所遇到的兼容性问题
- OSI七层模型的主要功能是:帮助不同类型的主机实现数据传输
- OSI七层模型的最大优点是:将服务、接口和协议这三个概念明确地区分开来,通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯
- TCP/IP模型:(1)物理层:对应OSI模型的低两层,物理层和数据链路层,负责底层的传输;常用协议:Ethernet、FDDI、令牌环(2)网络层:对应OSI模型的网络层,负责不同计算机之间的通信,常用协议:IP、ARP、RAR、ICMP(3)传输层:对应OSI模型的传输层,负责应用程序间的通信,主要包括格式化信息流,提供可靠地传输,常用协议:TCP、UDP(4)应用层:对应OSI模型的高三层,会话层、表示层、应用层,负责向用户提供服务,如电子邮件,远程登录;常用协议:DNS、HTTP、SMTP、POP、TELNET、FTP
- 属于TCP/IP协议簇的所有协议都位于该模型的上面三层,TCP/IP协议与低层的网络接口层无关,这也是TCP/IP的重要特点
- 除了层的数量之外,开放式系统互联(OSI)模型与TCP/IP协议有什么区别?答:TCP/IP协议中的传输层并不能总是保证在传输层可靠地传输数据包,如UDP协议,而开放式系统互联模型可以做到
- HTTP和DNS
- HTTP概念:HTTP(HyperText Transfer Protocol,超文本传输协议)是一种基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,是万维网的数据通信的基础。
- 常用的HTTP方法有哪些?
-
HTTP的缺点与HTTPS:(1)通信使用明文不加密,内容可能被窃听(2)不验证通信方身份,可能遭到伪装(3)无法验证报文完整性,可能被篡改(4)HTTPS就是HTTP加上加密处理(一般是SSL安全通信线路)+认证+完整性保护
-
DNS概念:我们可以通过IP地址去访问网站,但是对大多数用户来说,访问每个网站都需要记住一串数字是不现实的,所以用户可以通过域名来访问网站。域名,其实是具有一定含义的字符组合。域名系统是因特网上作为域名和IP地址相互映射的一个分布式数据库,能让用户更方便使用互联网。
-
DNS劫持:指用户访问一个被标记的地址时,DNS服务器故意将此地址指向一个错误的IP地址的行为。范例:收到各种推送广告等网站
-
DNS污染:指的是用户访问一个地址,国内的服务器(非DNS)监控到用户访问的已经被标记地址时,服务器伪装成DNS服务器向用户发回错误的地址的行为。比如不能访问Google、YouTube等。
-
DNS域名解析:DNS是由解析器以及域名服务器组成的,通过主机最终得到该主机名对应的IP地址
- DNS查询算法:(1)主机向本地域名服务器的查询一般都是采用递归查询(2)本地域名服务器向根服务器的查询通常采用迭代查询
-
例题:当你输入一个网址/点击一个链接的时候,发生了什么?
(1)点击网址后,应用层的DNS协议会将网址解析为IP地址(2)在应用层,浏览器会给web服务器发送一个HTTP请求(3)在传输层,(上层的传输数据流分段)HTTP数据包会嵌入在TCP报文段中(4)在网络层中,TCP报文段再嵌入IP数据包中(5)在网络接口层,IP数据包嵌入到数据帧(以太网数据包)中在网络上传送(6)数据包经过多个网关的转发到达百度服务器,请求对应端口的服务(7)请求处理完成之后,服务器发回一个HTTP响应(8)浏览器以同样的过程读取到HTTP响应的内容(HTTP响应数据包),然后浏览器对接收到的HTML页面进行解析,把网页显示出来呈现给用户
- IP地址与子网掩码
- IP地址概念:Internet上每台主机都必须有一个唯一的地址以区别于其他主机,这个地址就是Internet地址,也称作IP地址;IPv4(第四版本的IP协议)是构成现今互联网技术的基石协议
- IP地址构成:IP地址由32位二进制构成,共约40亿个,由网络地址和主机地址构成;一个IP地址分为四段:a.b.c.d ,段与段之间用原点分开。IP地址表示方法:二进制形式和点分十进制形式
- IPv6:一个IP地址由128位二进制组成,采用冒分16进制
- 特殊IP地址:(1)专用IP地址,ABC三类网络号中的部分,这些地址不会被Internet分配因此也不能被路由(2)0.0.0.0 是全零网络代表默认网络,帮助路由器发送路由表中无法查询的包(3)127.0.0.1 称作回送地址,属于环回地址,IP从127.0.0.0到127.255.255.255都将环回到本地主机中(4)255.255.255.255 限制广播地址,对本机来说,这个地址指本网段内(同一广播域)所有主机
- 子网掩码概念:是一个32位二进制的值,可以将IP地址分离出网络地址和主机地址,采用点分十进制的形式。子网掩码不能单独存在它必须结合IP地址一起使用
- 子网掩码结构:子网掩码由1和0组成,且1和0分别连续。**子网掩码的长度也是32位。左边是网络位,用二进制数字1表示,1的数目等于网络位的长度;右边是主机位用2进制数字0表示,0的数目等于主机位的长度;这样做的目的是为了让掩码与IP地址做与运算时用0遮住原主机数,而不改变网络段的数字;而且很容易通过0的位数确定子网的主机数
- 子网掩码可以判断两台计算机是否属于同一网段,将计算机10进制的IP地址和子网掩码转换为2进制的形式,然后进行‘与’运算,如果网络地址是相同的,那么两台计算机就属于同一网段
- 子网掩码分类:(1)缺省(默认)子网掩码:即为划分子网,对应的网络号都是1,主机号位都是0(2)自定义子网掩码是将一个网络划分为几个子网,需要每一段使用不同的网络号或者子网号,实际上我们可以认为是将主机号分为两个部分:子网号和子网主机号
- IP地址后面加上‘/’符号以及1-32位的数字,其中1-32的数字表示子网掩码中网络标识位的长度;例如:192.168.1.1/24的子网掩码也可以表示为255.255.255.0
- FTP和TFTP
-
FTP概念:FTP文件传输协议(File Transfer Protocol, FTP)是TCP/IP网络上两台计算机传送文件的协议,属于网络协议组的应用层
- FTP作用:用于在远端服务器和本地客户端之间传输文件,使用TCP端口20和21进行传输。端口20用于传输数据,端口21用于传输控制消息
- TFTP概念:TFTP(Trivial File Transfer Protocol,简单文件传输协议)也是用于在远端服务器和本地主机之间传输文件的,相对于FTP,TFTP没有复杂的交互存取接口和认证控制,适用于客户端和服务器之间不需要复杂交互的环境。TFTP协议的运行基于UDP协议,使用UDP端口69进行数据传输
- FTP和TFTP区别:(1)基于的传输协议不一样:FTP是基于TCP TFTP是基于UDP(2)端口号不一样:FTP是用21.20 TFTP是69(3)速度和安全方面:FTP在速度方面没有TFTP快但是FTP安全好
- 路由器和路由表
- 路由器:属于网络层,是连接因特网中的各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按照前后顺序发送信号
- 作用:为每个数据帧寻找最佳的传输路径,并将其有效的传送到目的站点,在路由器中通过路由表保存着各种传输路径的相关数据,供路由选择时使用
- 路由表:保存各种传输路径的相关数据,供路由选择时使用;路由表中保存着子网的标志信息、网上路由器的个数和下一个路由器的名字等内容
- 路由表分类:(1)静态路由表:由系统管理员事先设定好的路由表(2)动态路由表:路由器根据网络系统的运行情况动态调整的路由表
- 工作流程:数据包送到路由器后,通过数据包首部的目的主机IP地址和子网掩码计算出网络地址,即目的主机所在的网络,查找当前路由器的路由表,选择端口进行转发;下一台IP路由器收到数据包后继续转发,直到目的地;路由转发策略称为路由选择
- 路由器和交换机之间的主要区别是:(1)交换机发生在OSI参考模型的第二层(数据链路层),而路由器发生在第三层(网络层)(2)路由器是不同网络之间相互连接的枢纽,路由器构成了Internet的骨架(3)路由器具有判断网路地址,选择IP路径的功能
- 分组转发算法流程:(1)从数据报的首部提取目的主机的IP地址D,得出目的网络地址N(2)若N就是于此路由器直接相连的某个网络地址,则进行直接交付,不需要在经过其他路由器,直接把数据报交付给目的主机,否则就是间接交付(3)若路由表中有目的地址为D的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器(4)若路由表中有达到网络N的路由,则把数据报传送给路由表中所指明的下一跳路由器(5)若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器(6)否则报告转发分组出错
- TCP的流量控制和拥塞控制
- TCP的流量控制:(1)利用滑动窗口实现流量控制(2)必须考虑传输速率,用不同的机制来控制TCP报文段的发送时机(3)Nagle算法(4)糊涂窗口综合证
- 拥塞:即对资源的需求超过了可用的资源。若网络中许多资源同时供应不足,网络的性能就要明显变坏,整个网络的吞吐量随之负荷的增大而下降
- 拥塞控制:防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载
- TCP的拥塞控制:慢开始( slow-start )、拥塞避免( congestion avoidance )、快重传( fast retransmit )和快恢复( fast recovery )
- ICMP协议、组播和广播
- ICMP概念:ICMP的全称是 Internet Control Message Protocol ,它是一种“错误侦测与回报机制”,不传输用户数据,其目的就是让我们能够检测网路的连线状况
- ICMP作用:(1)侦测远端主机是否存在(2)建立及维护路由资料(3)重导数据传送路径(4)数据流量控制
- ICMP应用:Ping命令、Tracert命令
- 组播:主机之间的通讯模式,也就是加入了同一个组的主机可以接收到此组内的所有数据,网络中的交换机和路由器只向有需求者复制并转发其所需数据。
- 广播: 是指在IP子网内广播数据包,所有在子网内部的主机都将收到这些数据包。
- 环回地址:127.0.0.1,通常被称为本地回环地址(Loop back address),不属于任何一个有类别地址类。它代表设备的本地虚拟接口,所以默认被看作是永远不会宕掉的接口
- 换回地址的作用:(1)测试本机的网络配置(2)某些SERVER/CLIENT的应用程序在运行时需调用服务器上的资源,可设置成本地的SERVER服务
- 广播地址:是专门用于同时向网络中所有工作站进行发送的一个地址。在使用TCP/IP协议的网络中,主机标识段host ID为全1的IP地址为广播地址,广播的分组传送给host ID段所涉及的所有计算机