计算机网络常考知识点总结

计算机网络常考知识点总结

转载自此作者~~~感谢!

1 电路交换与分组交换的区别是什么?优劣对比?

答:先介绍基本概念:

  • 电路交换
    • 概念:必须经过建立连接(占用通信资源)--->通话(一直占用通信资源)--->释放连接三个步骤的交换方式称为电路交换。
    • 优点:
      • 通信质量有保证。
    • 缺点:
      • 线路传输效率比较低。
    • 特点:
      • 在通话的全部时间内,通话的两个用户始终占用端到端的通信资源。
  • 分组交换(也称包交换)
    • 报文:我们把要发送的整块数据称为一个报文。
    • 分组又称包。分组的首部也可以称为“包头”。
    • 概念:通信双方以分组为单位、使用存储--转发机制实现数据交互的通信方式,被称为分组交换。
    • 优点:
      • 高效
      • 灵活
      • 迅速
      • 可靠
    • 缺点:
      • 分组在路由器存储转发需要时延。
      • 携带首部控制信息造成一定开销。

2 电路交换、报文交换和分组交换

  • 电路交换:整个报文的比特流连续地从原点直达终点,好像在一个管道中传送。
  • 报文交换:整个报文先传送到相邻结点,全部存储下来后查找转发表,转发到下一个结点。
  • 分组交换:单个分组(只是报文的一部分)传送到相邻结点,存储下来后查找转发表,转发到下一个结点。

3 计算机网络的定义

  • 概念:是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和 信息传递的计算机系统。

4 相关概念

  • 带宽:用来表示网络的通信线路所能传送数据的能力。
  • 吞吐量:单位时间内通过某个网络的数据量。
  • 时延(也叫延迟或迟延):指数据从网络的一端传送到另一个端所需的时间。
  • 发送时延:主机或路由器发送数据帧所需要的时间。
  • 网络协议(简称协议):为进行网络中的数据交换而建立的规则、标准或约定。
  • 体系结构:计算机网络的各层以及协议的集合称为网络的体系结构
  • 网关:网络层使用的路由器

5 网络各分层的功能

  • 差错控制:使的和网络对等端的相应层次的通信更加可靠
  • 流量控制:是的发送端发送速率不要太快,要使接收端来得及接收。
  • 分段和重装:发送端将要发送的数据块划分为更小的单位,在接收端将其复原。
  • 复用和分用:发送端几个高层会话复用一条低层的连接,在接收端再进行分用。
  • 连接建立和释放:交换数据前先建立一条逻辑连接。数据传送结束后释放连接。

6 体系结构

 

  • OSI的七层协议体系结构

7、应用层|
---|
6、表示层|
5、会话层|
4、传输层|
3、网络层|
2、数据链路层|
1、物理层|
从上而下提供端到端的服务。
巧记:应示、会传、网数理

  • TCP/IP的体系结构

应用层(各种应用层协议如TELNET/FTP/SMTP等)|
-------|
传输层(TCP或UDP)|
网际层IP|
网络接口层|

  • 五层协议的体系结构

5、应用层(HTTP/FTP/SMTP)|
----|
4、运输层(TCP/UDP)|
3、网络层(ICMP/IGMP/IP/RARP/ARP)|
2、数据链路层|
1、物理层|

巧记:应运而生网络、数据+物理。

 

7 各层次简介

 

  • 应用层
    应用层直接为用户的应用进程提供服务。这里的进程就是正在运行的程序。应用层的协议很多:HTTP、SMTP、FTP等等。
  • 运输层
    运输层的任务就是负责向两个主机中进程之间的通信提供服务。由于一个主机可同时运行多个进程,因此运输层有复用和分用的功能。
    复用:就是多个应用层进程可以同时使用下面运输层的服务。
    分用:运输层把收到的信息又分别交付给上面应用层中相应的进程。
    运输层有以下两种协议:
    • 传输控制协议TCP(Transmission Control Protocol)
      面向连接的,数据传输的单位是报文段,能够提供可靠的交付。
    • 用户数据报协议UDP(User Datagram Protocol)
      无连接的,数据传输单位是用户数据报,不保证可靠的交付,只能提供“最大努力的交付”。
  • 网络层
    网络层负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或者用户数据包封装成分组或包进行传送。在TCP/IP体系中,由于网络层使用IP协议,因此分组也叫做IP数据报,简称数据报。
    网络的另一个任务就是选择合适的路由,使源主机运输层所传下来的分组,能够通过网络中的路由器找到目的主机。
  • 数据链路层
    简称链路层,两个相邻结点之间传送数据都是直接传送的。这就需要使用专门的链路层协议 。
    在相邻结点传输时,数据链路层把网络层交下来的IP数据报组装成帧。用帧进行传输。
  • 物理层
    在物理层上所传数据的单位是比特。
    物理层的任务就是透明地传送比特流。

8 数据链路层

  • 使用的信道类型有:
    • 点对点信道
    • 广播信道
  • 三个基本问题:
    • 封装成帧:在一端数据的前后分别添加首部和尾部,构成了一个帧。
    • 透明传输:
    • 差错检测:检测方法:CRC(循环冗余校验码)

9 MAC地址的概念以及作用

  • 概念:MAC是硬件地址,用于定义网络设备的位置。也叫物理地址。它就像我们身份证上的身份证号码,具有全球唯一性。
  • 一个主机会有一个MAC地址,而每个网络地址会有一个专属于它的IP地址。
  • 作用
    专注于数据链路层,将一个数据帧从一个节点传送到相同链路的另一个结点。

10 MAC地址和IP地址的区别

 

  • 对于网络上的某一设备,IP地址是基于网络 拓扑设计出的,可以改动。而MAC地址则是生产厂商烧录好的,不能改动。
  • 长度不同。IP是32位,MAC地址是48位。
  • 分配依据不同。IP是基于网络拓扑、MAC是基于制造商
  • 寻址协议层不同。IP应用于网络层,MAC应用于数据链路层。

    11 MAC帧格式

  •  

     

    计算机网络常考知识点总结

     

    计算机网络常考知识点总结
    其中类型表示的是上一层使用的是什么协议,以便把收到的Mac帧交给上一层的这个协议。

12 网际协议IP

  • 地址解析协议ARP(Address resolution protocol)
  • 逆地址解析协议RARP(Reverse Address Resolutaion Protocol)
  • 网际控制报文协议ICMP(Internet Control Message Protocol)
  • 网际管理协议IGMP(Internet Group Management Protocol)

13 IP

  • IP地址的定义:网络号+主机号
  • IP数据报的格式
    计算机网络常考知识点总结

14 ARP协议的用途、算法,在哪一层会使用arp?

  • 用途:把IP地址解析为物理地址。
  • 在网络层会用到ARP

15 如何实现透明传输?

  • 概念:不管从键盘上输入什么字符都可以放在这样的帧中传输过去,这样的传输就是透明传输。也就是说用户不受协议中任何限制,可随机的传输任意比特编码的信息。
    *实现方法:
    • 转义字符填充法
    • 零比特填充法
    • 采用特殊的信号与编码法
    • 确定长度法

16 路由表的内容是什么?

  • 目的网路地址
  • 距离
  • 下一跳路由器地址

17 UDP的首部格式
 

UDP协议的特点: 
(1)UDP无需建立连接。因此UDP不会引入建立连接的时延。试想如果DNS运行在TCP之上而不是UDP,则DNS的速度会满很多。HTTP使用TCP而不是UDP,是因为基于文本数据的Web网页来说,可靠性是至关重要的。 
什么是DNS? DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。

(2)无连接状态。TCP需要在端系统中维护连接状态。此连接状态包括接受和发送缓存、拥塞控制参数和确认号和序号的参数。而UDP不维护连接状态,也不跟踪这些参数,因此某些专用应用服务器使用UDP时,一般都能支持更多的活动客户机。

(3)分组首部开销更小。TCP有20字节的的首部开销,而UDP只有8个字节的首部开销。

(4)应用层能够更地控制要发送的数据和发送时间。UDP没有拥塞控制,因此网络中的拥塞也不会影响主机的发送效率。某些实时应用(如直播)要求以稳定的速度发送,能容忍一些数据的丢失,但不允许有较大的时延,而UDP正好可以满足这些应用的需求。

(5)UDP常用于一次性传输比较小数据的网络应用,如DNS、SNMP等,因为对于这些应用,若采用TCP,则将为创建连接、维护和拆除而带来不小的开销。UDP也常用于多媒体应用(如IP电话、实时视频会议、流媒体等),显然,可靠数据传输对于这些应用来说并不是最重要的,但TCP的拥塞控制会导致数据出现较大的延迟,这是它们不可容忍的。

(6)UDP提供尽最大努力的交付,即不保证可靠交付,但并不意味着应用对数据的要求是不可靠的,因此需要维护传输可靠性的工作需要用户在应用层来完成。应用实体可以根据应用需求来灵活设计自己的可靠性机制。

(7)UDP是面向报文的的。发送方UDP对应用层交下来的报文,在添加首部后就交付给IP层,既不合并,也不拆分,而是保留这些报文的边界;接受方UDP对IP层交上来的用户数据报,在去除首部后就原封不动的交付给上层的应用进程,一次交付一个完整的报文,因此报文不可分割,是UDP数据处理的最小单位。
 

计算机网络常考知识点总结计算机网络常考知识点总结

头部结构中各部分的作用: 
(1)16位源端口号 记录源端口号,在需要对方回信时选用。不需要时可用全0。 
(2)16位目的端口号 记录目标端口号。这在终点交付报文时必须要使用到。 
(3)长度 UDP数据报的长度(包括数据和首部),其最小值为8B(即仅有首部没有数据的情况)。 
(4)校验和 检测UDP数据报在传输中是否有错,有错就丢弃。该字段时可选的,当源主机不想计算校验和,则直接令该字段为全0。当传输层从IP层收到UDP数据报时,就根据首部中的目的端口,把UDP数据报通过相应的端口,上交给进程。如果接收方UDP发现收到的报文中目的端口号不正确(即不存在对应端口号的应用进程),就丢弃该报文,并由ICMP发送“端口不可达”差错报文交给发送方。
 

18 TCP首部格式

计算机网络常考知识点总结计算机网络常考知识点总结

源端口号和目的端口号:再加上Ip首部的源IP地址和目的IP地址可以唯一确定一个TCP连接
数据序号:表示在这个报文段中的第一个数据字节序号
确认序号:仅当ACK标志为1时有效。确认号表示期望收到的下一个字节的序号(这个下面再详细分析)
偏移:就是头部长度,有4位,跟IP头部一样,以4字节为单位。最大是60个字节
保留位:6位,必须为0
6个标志位:
URG-紧急指针有效
ACK-确认序号有效
PSH-接收方应尽快将这个报文交给应用层
RST-连接重置
SYN-同步序号用来发起一个连接
FIN-终止一个连接

窗口字段:16位,代表的是窗口的字节容量,也就是TCP的标准窗口最大为2^16 - 1 = 65535个字节(这个下面再详细分析)

校验和:源机器基于数据内容计算一个数值,收信息机要与源机器数值 结果完全一样,从而证明数据的有效性。检验和覆盖了整个的TCP报文段:这是一个强制性的字段,一定是由发送端计算和存储,并由接收端进行验证的。

紧急指针:是一个正偏移量,与序号字段中的值相加表示紧急数据最后一个字节的序号。TCP的紧急方式是发送端向另一端发送紧急数据的一种方式
选项与填充(必须为4字节整数倍,不够补0):
最常见的可选字段的最长报文大小MSS(Maximum Segment Size),每个连接方通常都在一个报文段中指明这个选项。它指明本端所能接收的最大长度的报文段。
该选项如果不设置,默认为536(20+20+536=576字节的IP数据报)

19 三次握手+四次断开

计算机网络常考知识点总结

计算机网络常考知识点总结

  • 建立连接时,客户端向服务器端发送一个SYN包,进入SYN_SEND状态,在该状态下,客户端等待服务器的确认包。
  • 服务器端收到客户端的SYN包后,首先向客户端确认自己已收到的客户端的SYN包,同时也要发送自己的SYN包,即要向发送方发送ACK包+SYN包,然后进入SYN—RECEIVE状态。
  • 客户端收到服务器端的ACK包+SYN包,向服务器端发送ACK包确认。然后完成三次握手,建立连接。 其中:
    • SYN:在连接建立时用来同步序号。
      • SYN=1而ACK=0表示这是一个请求报文段。对*同意建立连接,则应在响应报文段中使SYN=1和ACK=1。因此SYN置1就表示这是一个连接请求或连接接收的报文。
    • ACK:TCP数据包首部中的确认标志,对已接收的TCP报文进行确认。0时确认号无效。TCP规定:在建立连接以后所有传送的报文段都必须把ACK置1。

20 FTP和TFTP的区别:

  • FTP 是完整、面向会话、常规用途文件传输协议;而 TFTP 用作 bones bare - 特殊目的文件传输协议。
  • 因为 TFTP 不支持验证, 所以Windows NT FTP服务器不支持 TFTP
  • 可以以交互方式使用 FTP; TFTP 允许文件只能单向的传送。
  • FTP 提供用户身份验证; TFTP 却不。
  • FTP 依赖于 TCP 是面向连接并提供可靠的控件; TFTP 依赖 UDP,需要减少开销, 几乎不提供控件。
  • FTP 使用周知 TCP 端口号: 数据和连接对话框的 21 20; TFTP 使用它的文件传输活动 UDP 端口号 69。
  • FTP使用的是TCP21端口,而TFTP使用的是UDP69端口; 一般防火墙都会封TCP端口而不会封UDP的,所以TFTP有时比FTP好用,不过TFTP传输的文件一般较小,你要传大文件就要用FTP了