计算机网络基础笔记

内容来自网络资料整理

1. 电路交换与分组交换的区别? 优劣对比。

电路交换是以电路连接为目的的交换方式,通信之前要在通信双方之间建立一条被双方独占的物理通道。
电路交换的三个阶段:(1)建立连接 (2)通信 (3)释放连接
电路交换具有以下优缺点:
优点
(1)由于通信线路为通信双方用户专用,数据直达,所以传输数据的时延非常小。
(2)通信双方之间的屋里通路一旦建立,双方可以随时通信,实时性强。
(3)双方通信时按发送顺序传送数据,不存在失序问题。
(4)电路交换既适用于传输模拟信号,也适用于传输数字信号。
(5)电路交换的交换设备及控制均比较简单。
缺点
(1)电路交换平均连接建立时间对计算机通信来说较长。
(2)电路交换家里连接后,物理通路被通信双方独占,即使通信线路空闲,也不能供其他用户使用,因而信道利用率低。
(3)电路交换时,数据直达,不同类型,不同规格,不同速率的终端很难相互进行通信,也难以在通信过程中进行差错控制。

分组交换是以分组为单位进行传输和交换的,它是一种存储——转发交换方式,即将到达交换机的分组先送到存储器暂时存储和处理,等到相应的输出电路有空闲时再送出。

分组交换也称为包交换,它将用户通信的数据划分成多个更小的等长数据段,在每个数据段的前面加上必要的控制信息作为数据段的首部,每个带有首部的数据段就构成了一个分组。首部指明了该分组发送的地址,当交换机收到分组之后,将根据首部中的地址信息将分组转发到目的地,这个过程就是分组交换。能够进行分组交换的通信网被称为分组交换网。

分组交换的实质就是将要传输的数据按一定长度分成很多组,为了准确的传送到对方,每个组都打上标识,许多不同的数据分组在物理线路上以动态共享和复用方式进行传输,为了能够充分利用资源,当数据分组传送到交换机时,会暂存在交换机的存储器中,然后根据当前线路的忙闲程度,交换机会动态分配合适的物理线路,继续数据分组的传输,直到传送到目的地。到达目地之后的数据分组再重新组合起来,形成一条完整的数据。

优点
(1)分组交换不需要为通信双反预先建立一条专用的通信线路,不存在连接建立时延,用户可随时发送分组。
(2)由于采用存储转发方式,加之交换节点具有路径选择,当某条传输线路故障时可选择其他传输线路,提高了传输的可靠性。
(3)通信双反不是固定的战友一条通信线路,而是在不同的时间一段一段地部分占有这条物理通路,因而大大提高了通信线路的利用率。
(4)加速了数据在网络中的传输。因而分组是逐个传输,可以使后一个分组的存储操作与前一个分组的转发操作并行,这种流水线式传输方式减少了传输时间。
(5)分组长度固定,相应的缓冲区的大小也固定,所以简化了交换节点中存储器的管理。
(6)分组较短,出错几率减少,每次重发的数据量也减少,不仅提高了可靠性,也减少了时延。

缺点:
(1)由于数据进入交换节点后要经历存储转发这一过程,从而引起的转发时延(包括接受分组、检验正确性、排队、发送时间等),而且网络的通信量越大,造成的时延就越大,实时性较差。
(2)分组交换只适用于数字信号。
(3)分组交换可能出现失序,丢失或重复分组,分组到达目的节点时,对分组按编号进行排序等工作,增加了麻烦。
//
电路交换

  • 概念:必须经过建立连接(占用通信资源)--->通话(一直占用通信资源)--->释放连接三个步骤的交换方式称为电路交换。
  • 优点:
    通信质量有保证。
  • 缺点:
    线路传输效率比较低。
  • 特点:
    在通话的全部时间内,通话的两个用户始终占用端到端的通信资源。

分组交换(也称包交换)

  • 报文:我们把要发送的整块数据称为一个报文。
    分组又称包。分组的首部也可以称为“包头”。
  • 概念:通信双方以分组为单位、使用存储--转发机制实现数据交互的通信方式,被称为分组交换。
  • 优点:
    高效、灵活、迅速、可靠
  • 缺点:
    分组在路由器存储转发需要时延。
    携带首部控制信息造成一定开销。
    //
  • 电路交换:整个报文的比特流连续地从原点直达终点,好像在一个管道中传送。
  • 报文交换:整个报文先传送到相邻结点,全部存储下来后查找转发表,转发到下一个结点。
  • 分组交换:单个分组(只是报文的一部分)传送到相邻结点,存储下来后查找转发表,转发到下一个结点。

2. OSI有哪几层,会画出来,知道主要几层的各自作用 3. TCP/IP有哪几层,会画出来,知道所有层数的作用,会列举各层主要的协议名称。*

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

计算机网络基础笔记_第2张图片

4. 硬件(MAC)地址的概念及作用

  • 概念:MAC是硬件地址,用于定义网络设备的位置。也叫物理地址。它就像我们身份证上的身份证号码,具有全球唯一性。
    一个主机会有一个MAC地址,而每个网络地址会有一个专属于它的IP地址。
  • 作用
    专注于数据链路层,将一个数据帧从一个节点传送到相同链路的另一个结点。
    //
    MAC地址和IP地址的区别:
  • 对于网络上的某一设备,IP地址是基于网络拓扑设计出的,可以改动。而MAC地址则是生产厂商烧录好的,不能改动。
  • 长度不同。IP是32位,MAC地址是48位。
  • 分配依据不同。IP是基于网络拓扑、MAC是基于制造商
  • 寻址协议层不同。IP应用于网络层,MAC应用于数据链路层。

5. ARP协议的用途 及算法、在哪一层上会使用arp ?

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

  • ARP把IP地址映射为物理地址。主机必须知道目的网络适配器的物理地址才能向它发送数据。
  • 网段上每台主机在内存中都保存着一个被称为ARP表或ARP缓存的表格,其中包含了网段上其他主机的IP地址与物理地址的对应关系。当主机需要向网段上的其他主机发送数据时,它会查看ARP缓存来获得目的的物理地址。ARP缓存是动态变化的,如果要接收数据的地址当前并不存在于ARP缓存中,主机就会发送一个名为ARP请求帧的广播。
  • ARP请求帧包含为解析的IP地址,还包含发送这个请求的主机的IP地址和物理地址。网段上的其他主机接收到这个ARP请求,拥有这个未解析IP地址的主机会向发出请求的主机发送自己的物理地址。这个新的IP地址与物理地址的对应关系就会添加到请求主机的ARP缓存中。
  • 逆向地址解析协议——RARP:在知道物理地址而不知道IP地址时,应该使用RARP。

6. CRC冗余校验算法,反码和检验算法。

循环冗馀校验(英语:Cyclic redundancy check,通称“CRC”)是一种根据网路数据封包或电脑档案等数据产生简短固定位数验证码的一种散列函数,主要用来检测或校验数据传输或者保存后可能出现的错误。生成的数字在传输或者储存之前计算出来并且附加到数据后面,然后接收方进行检验确定数据是否发生变化。一般来说,循环冗馀校验的值都是32位的整数。由于本函数易于用二进制的电脑硬件使用、容易进行数学分析并且尤其善于检测传输通道干扰引起的错误,因此获得广泛应用。此方法是由W. Wesley Peterson于1961年发表[1]


7. 如何实现透明传输。

概念:不管从键盘上输入什么字符都可以放在这样的帧中传输过去,这样的传输就是透明传输。也就是说用户不受协议中任何限制,可随机的传输任意比特编码的信息。
实现方法

  • 转义字符填充法
  • 零比特填充法
  • 采用特殊的信号与编码法
  • 确定长度法

8. 知道各个层使用的是哪个数据交换设备。(交换机、路由器、网关)

  1. 物理层用到的设备是集线器和中继器
    中继器的主要功能是对接收到的信号进行再生整形放大以扩大网络的传输距离。
    集线器在此基础上将所有的节点集中在以它为中心的节点中,可组成星型拓扑结构。

  2. 数据链路层用到的设备是交换机和网桥

  • 交换机是一种基于MAC识别,能完成封装转发数据包功能的网络设备。它可以“学习”MAC地址,并把其存放在内部地址表中,当一个数据帧的目的地址在MAC地址表中有映射时,它被转发到连接目的节点的端口而不是所有端口。
    交换机将局域网分为多个冲突域,每个冲突域都是有独立的宽带,因此大大提高了局域网的带宽。
  • 网桥是数据链路层互联的设备,在网络互联中可起到数据接收、地址过滤与数据转发的作用,可用来实现多个不同网络系统之间的数据交换。
  1. 网络层用到的设备是路由器
    路由器用于连接多个逻辑上分开的网络,具有判断网络地址和选择IP路径的功能,它能在多网络互联环境中,建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网。
  1. 应用层用到的设备是网关
    网关在网络层以上实现网络互连,用于两个高层协议不同的网络互连。与网桥只是简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求。

9. 路由表的内容。

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

10. 分组转发算法

(1) 从数据报的首部提取目的主机的IP地址D, 得出目的网络地址为N。

(2) 若网络N 与此路由器直接相连,则把数据报直接交付目的主机D;否则是间接交付,执行(3)。

(3) 若路由表中有目的地址为 D 的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器;否则,执行(4)。

(4) 若路由表中有到达网络 N 的路由,则把数据报传送给路由表指明的下一跳路由器;否则,执行(5)。

(5) 若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行(6)。

(6) 报告转发分组出错。


11. IP报文的格式,格式的各个字段的含义要理解。*

  • IP地址的定义:网络号+主机号
  • IP数据报的格式


    计算机网络基础笔记_第3张图片

网际协议

  • IP协议提供了一种分层的、与硬件无关的寻址系统,具有在复杂的路由式网络中传递数据所需的服务。TCP/IP网络上的每个网络适配器都有一个唯一的IP地址。
  • IP地址分为两个部分:网络ID和主机ID。网络必须提供一种方式来判断IP地址的哪一部分是网络ID,哪一部分是主机ID。
  • IP报头字段:
    1. 每个IP数据报都以一个IP报头开始。源计算机的TCP/IP软件构造这个IP报头,目的计算机的TCP/IP软件利用IP报头中封装的信息处理数据。IP报头包含大量信息,包括源IP地址、目的IP地址、数据报长度、IP版本号和路由器的特殊指令。
    2. IP数据报由报头和数据两部分组成。报头由一个20字节的固定长度和一个可任选任意长度部分组成。IP数据报最长为65535字节。
      计算机网络基础笔记_第4张图片

      计算机网络基础笔记_第5张图片

      计算机网络基础笔记_第6张图片

      计算机网络基础笔记_第7张图片

12. MTU的概念,啥叫路径MTU? MTU发现机制,TraceRoute(了解)。

  1. MTU的概念
    MTU即Maximum Transmission Unit 最大传输单元。它是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。

  2. 路径MTU
    路径MTU是指一条因特网传输路径中,从源地址到目的地址所经过的“路径”上的所有IP跳的最大传输单元的最小值。
    或者从另外一个角度来看,就是无需进行分片处理就能穿过这条“路径”的最大传输单元的最大值。

  3. 路径MTU的发现方法
    这是确定两个IP主机之间路径最大传输单元的技术,其目的就是为了避免IP分片。
    首先源地址将数据报的DF位置位,在逐渐增大发送的数据报的大小——路径上任何需要将分组进行分片的设备都会将这种数据报丢弃并返回“数据报过大“的ICMP响应
    到源地址——这样源主机就”学习“到了无需分片就能通过这条路径的最大的最大传输单元。

  4. TraceRoute
    Traceroute是用来侦测主机到目的主机之间所经路由情况的重要工具。
    它的原理如下:它受到目的主机的IP后,首先给目的主机发送一个TTL=1的UDP数据包(每次送出的为3个40字节的包,包括源地址,目的地址和包发出的时间标签),
    而经过的第一个路由器收到这个数据包以后,就自动把TTL减1,而TTL变为0以后,路由器就把这个包给抛弃了,并同时产生 一个主机不可达的ICMP数据报给主机。
    主机收到这个数据报以后再发一个TTL=2的UDP数据报给目的主机,然后刺激第二个路由器给主机发ICMP数据报。如此往复直到到达目的主机。这样,traceroute就拿到了所有的路由器ip。

    Traceroute提取发送 ICMP TTL到期消息设备的IP地址并作域名解析。每次 ,Traceroute都打印出一系列数据,包括所经过的路由设备的域名及 IP地址,三个包每次来回所花时间。


13. RIP协议的概念及算法。

RIP协议的概念
路由信息协议RIP是一种分布式的基于距离向量的路由选择协议属于内部网关协议。RIP协议中的“距离”也称为“跳数”,因为每经过一个路由器,跳数就加1。协议规定同一自治系统(A.S.)中的路由器每 30秒会与相邻的路由器交换子讯息,以动态的建立路由表。当传输数据时,RIP将选择一条具有最少路由器的路由。
算法
对每一个相邻路由器发送过来的RIP报文,进行以下步骤:
(1)对地址为X的相邻路由器发来的RIP报文,先修改此报文中的所有项目:把“下一跳”字段中的地址都改为X,并把所有的"距离"字段的值加1.每个项目都有三个关键数据,即:目的网络N,距离是d,下一跳路由器是X。
(2)对修改后的RIP报文中的每一个项目,进行如下步骤:

  • 若原来的路由表中没有目的网络N,则把该项目添加到路由表中,
  • 若下一跳路由器地址是X,则把收到的项目替换原路由表中的项目
  • 若收到的项目中距离d小于路由表中的距离,则进行更新

(3)若3分钟还没有收到相邻路由器的更新路由表,则把此相邻路由器记为不可到达的路由器,即把距离设置为16。
(4)返回


14. ICMP协议的主要功能。

ICMP的全称是 Internet Control Message Protocol 。从技术角度来说,ICMP就是一个“错误侦测与回报机制”,其目的就是让我们能够检测网路的连线状况﹐也能确保连线的准确性﹐其功能主要有:

  • 侦测远端主机是否存在
  • 建立及维护路由资料
  • 重导数据传送路径
  • 数据流量控制

ICMP在沟通之中,主要是通过不同类型的报文让主机或路由器识别不同的链路传输情况


15. 组播和多播的概念,IGMP的用途。

  1. 组播和广播的概念
    组播
    主机之间的通讯模式,也就是加入了同一个组的主机可以接收到此组内的所有数据,网络中的交换机和路由器只向有需求者复制并转发其所需数据。主机可以向路由器请求加入或退出某个组,网络中的路由器和交换机有选择的复制并传输数据,即只将组内数据传输给那些加入组的主机。这样既能一次将数据传输给多个有需要(加入组)的主机,又能保证不影响其他不需要(未加入组)的主机的其他通讯
    广播
    是指在IP子网内广播数据包,所有在子网内部的主机都将收到这些数据包。广播意味着网络向子网每一个主机都投递一份数据包,不论这些主机是否乐于接收该数据包。所以广播的使用范围非常小,只在本地子网内有效,通过路由器和网络设备控制广播传输。
    组播协议与现在广泛使用的单播协议的不同之处在于,一个主机用单播协议向n个主机发送相同的数据时,发送主机需要分别向n个主机发送,共发送n次。一个主机用组播协议向n个主机发送相同的数据时,只要发送1次,其数据由网络中的路由器和交换机逐级进行复制并发送给各个接收方,这样既节省服务器资源也节省网络主干的带宽资源。

  2. IGMP(Internet Group Management Protocol)的用途
    它用来在ip主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。组播路由器不需要保存所有主机的成员关系,它只是通过igmp协议了解每个接口连接的网段上是否存在某个组播组的组成员。而主机只需要保存自己加入了哪些组播组。
    简而言之,IGMP协议是让连接在本地局域网上的组播路由器知道本局域网上是否有主机上的某个进程参加或退出了某个组播组。

  3. 环回地址/广播地址
    环回地址:127.0.0.1,通常被称为本地回环地址(Loop back address),不属于任何一个有类别地址类。它代表设备的本地虚拟接口,所以默认被看作是永远不会宕掉的接口。
    主要作用有两个:一是测试本机的网络配置,能PING通127.0.0.1说明本机的网卡和IP协议安装都没有问题;另一个作用是某些SERVER/CLIENT的应用程序在运行时需调用服务器上的资源,一般要指定SERVER的IP地址,但当该程序要在同一台机器上运行而没有别的SERVER时就可以把SERVER的资源装在本机,SERVER的IP地址设为127.0.0.1同样也可以运行。
    广播地址:是专门用于同时向网络中所有工作站进行发送的一个地址。在使用TCP/IP 协议的网络中,主机标识段host ID 为全1 的IP 地址为广播地址,广播的分组传送给host ID段所涉及的所有计算机。
    例如,对于10.1.1.0 (255.255.255.0 )网段,其广播地址为10.1.1.255 (255 即为2 进制的11111111 ),当发出一个目的地址为10.1.1.255 的分组(封包)时,它将被分发给该网段上的所有计算机。


16. Ping协议的实现原理,ping 命令格式。

ping 使用的是ICMP协议,它发送icmp回送请求消息给目的主机。ICMP协议规定:目的主机必须返回ICMP回送应答消息给源主机。如果源主机在一定时间内收到应答,则认为主机可达。


17. 子网划分的概念,子网掩码。*

  • 子网掩码是一个应用于TCP/IP网络的32位二进制值,每节8位,必须结合IP地址对应使用。
  • 子网掩码32位都与IP地址32位对应,如果某位是网络地址,则子网掩码为1,否则为0。
  • 子网掩码可以通过与IP地址“与”计算,分离出IP地址中的网络地址和主机- 地址,用于判断该IP地址是在局域网上,还是在广域网上。
  • 子网掩码一般用于将网络进一步划分为若干子网,以避免主机过多而拥堵或过少而IP浪费。

子网掩码是一个32位的2进制数,其对应网络地址的所有位都置为1,对应于主机地址的所有位都置为0。

由此可知,
A类网络的缺省的子网掩码是255.0.0.0,
B类网络的缺省的子网掩码是255.255.0.0,
C类网络的缺省的子网掩码是255.255.255.0。

将子网掩码和IP地址按位进行逻辑“与”运算,得到IP地址的网络地址,剩下的部分就是主机地址

计算机网络基础笔记_第8张图片

计算机网络基础笔记_第9张图片

18. IP地址的分类,如何划分的,及会计算各类地址支持的主机数。*

A类:0.0.0.0~127.255.255.255
B类:128.0.0.0~191.255.255.255
C类:192.0.0.0~223.255.255.255
D类:224.0.0.0~239.255.255.255
E类:240.0.0.0~247.255.255.255

计算机网络基础笔记_第10张图片

//丢失了草稿,待补


31. HTTP基本格式。(java程序员必须掌握)

你应该知道的HTTP基础知识


相关概念

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

关于TCP/IP,必知必会的十个问题


每一的协议如下:
物理层:RJ45、CLOCK、IEEE802.3(中继器、集线器)
数据链路层:PPP 、FP 、HDIC、 VLAN 、MAC(网桥、交换机)
网络层:IP、ICMP、ARP、RARP、OSPF、 IPX 、RIP 、IGRP(路由器)
传输层:TCP 、UDP 、SPX
会话层:NFS、SQL 、 NETBIOS 、RPC
表示层:JPEG 、MPEG、 ASII
应用层:FTP、 DNS 、Telnet、 SMTP 、HTTP、 WWW、 NFS


应用程序 | FTP TELNET SMTP DNS TFTP HTTP SNMP SNMP(trap)
端口号 | 21 23 25 53 69 80 161 162


SMTP用来发送邮件,没有接受。
POP3用来接收邮件,下层协议使用了TCP。


物理层:比特(bit)
数据链路层:帧(frame)
网络层:IP数据报 or 数据报 or 分组(datagram)
传输层:TCP——报文段(segment),UDP——用户数据报
应用层:报文(message)


你可能感兴趣的:(计算机网络基础笔记)