网络层(计算机网络谢希仁第八版)——学习笔记四

  • 关于网络层的争论

    • 争论的内容:网络层应该想运输层提供正阳的服务,是“面向连接的”还是“无连接”。 其实质就是:可靠交付应该交给谁负责?面向连接表示网络层负责可靠交付,无连接则是把这个任务交给运输层。

      • 让网络层负责可靠交付

        • 需要了解的概念——虚电路:这是一种基于连接导向的通信方式。具体来说就是,在实际的数据传输之前,通过一些列过程建立连接,指定收发双方的通信路径和参数,此后发送数据就按照这条虚电路传送。

        • 观点:让网络负责可靠交付; 进一步的解释:通信之前先建立虚电路,以保证双方通信所需的一切网络资源,然后在使用可靠传输的网络协议就可使所发送的分组无差错按序到达终点,不丢失、不重复。

      • 网络进提供数据报服务,不提供服务质量的承诺。

        • 观点:网络只提供简单灵活的、无连接的数据报服务。 进一步的解释:网络在发送分组是不需要事先建立连接,每一个分组(即IP数据报)独立发送,与前后分组无关。由主机的运输层负责可靠交付

      • 虚电路服务与数据报服务的对比

  • 网际协议IP

    • 虚拟互连网络

      • 首先,我们有一个问题需要考虑:如何将不同的网络互相连接起来? 这是就要考虑使用中间设备进行互连。在网络层,网络互连指的就是用路由器进行网络互连和路由选择

      • 虚拟互连网络是一种逻辑互连网络。它就是利用IP协议将这些性能各异的网络进行相互通信,使从用户角度看来好像是一个网络

    • 分类IP地址

      • IP地址及其表示方法

        • IP地址:给连接在互联网的主机(或路由器)分配的一个在全球范围内唯一的32位的标识符

        • 实际上IP地址就是标志一个主机(或路由器)和一条链路的接口。

        • 构成:网络号+主机号

          • 点分十进制记法:将原来的32位二进制代码,每8位1组,然后每组的8位二进制转换成十进制数字。这样可以提高可读性。

      • 常用的三种类别的IP地址

        • 1.IP地址分等级可以在分配时只分配网络号,剩下的主机号由得到该网络号的单位自行分配,方便IP地址的管理。2.路由器根据目的主机所连接的网络号来转发分组,可以大幅度减少路由表中的项目数,从而减小路由表所占的存储空间。

    • IP地址与硬件地址

      • 辨析:从层次的角度看,硬件地址是数据链路层和物理层使用的地址。而IP地址是网络层以上各层使用的地址。

      • 从转发的角度看:

        • 在IP层抽象的互联网上只能看到IP数据报。而在具体的物理网络的链路层,只能看到MAC帧而看不见IP数据报。回想之前谈到的对等层之间的通信,就可以很容易理解上面的话。发送的时候,没见过一层,都会在数据前面添加一个首部,在接收的时候,对应的层回分析处理对应层的首部。比如数据链路层,只会看数据链路层的首部而不会去看IP数据报的首部。 正是这样的抽象,屏蔽了下层负责的细节。使得在抽象的网络层讨论问题时,能够使用统一的、抽象的IP地址研究主机和主机或主机和路由器之间的通信。

        • 最后在看看这个。 从协议栈的角度看,就是MAC帧到一个路由器了,先通过IP地址,找到转发的接口或者说IP地址,通过这个IP地址找到对应的硬件地址进行物理意义上的转发。

    • 地址解析协议ARP

      • ARP地址解析协议的作用:从网络层使用的 IP 地址,解析出在数据链路层使用的硬件地址。

      • 关于MAC硬件地址和IP地址的进一步讨论

        • IP地址和MAC地址都是网络中标识设备的地址。它们的主要区别在于作用范围和实现方式不一样。IP地址在网络层使用,用于在不同的子网之间传输数据;而MAC地址在数据链路层使用,用于在同一个子网内传输数据。 在用一个局域网内,设备之间可以直接通过MAC进行地址通信,而不通过路由器。但是,如果要跨越不同的子网进行通信,就要使用IP地址。在这种情况下,数据需要经过路由器的进行转发。

        • 两台电脑通讯的全过程为: 1.根据子网掩码判断源IP与目标IP是属于同一网络,2.使用 ARP协议只找到相应IP的MAC地址;3.使用MAC地址在 LANQ 内进行通信。

        • 以上是我个人的理解,下面是谢希仁在书中的解释:由于全世界存在着各式各样的网络,它们使用不同的硬件地址。要使这些异构网络能够互相通信就必须进行非常复杂的硬件地址转换工作,因此几乎是不可能的事。 IP 编址把这个复杂问题解决了。连接到互联网的主机只需各自拥有一个唯一的 IP 地址,它们之间的通信就像连接在同一个网络上那样简单方便,因为上述的调用 ARP 的复杂过程都是由计算机软件自动进行的,对用户来说是看不见这种调用过程的。

      • ARP协议要点

        • 每一个主机都设有一个ARP高速缓存,里面有所在局域网上所有主机和路由器IP的地址到硬件地址的映射表。 当主机A想要给本局域网的某个主机B发生IP数据时,就现在ARP高速缓存里面查看有无主机B的IP地址

          • 如果有,就查找其对应的硬件地址,再讲此硬件地址写入MAC帧,然后通过局域网将该帧MAC帧发往此硬件地址。

          • 如果没有,ARP进程在本局域网广播发送一个ARP请求分组。收到ARP响应分组后,将得到的IP地址到硬件地址的映射写入ARP高速缓存中。

          • 如果所要找的主机和源主机不在同一个局域网中,那么就要通过ARP找到一个位于本局域网上的某个路由器的硬件地址,然后吧分组发送给这个路由器,让这个路由器把分组转发给下一个网络,剩下的工作就由下一个网络来做。

    • IP数据报的格式

      • 从整体来看:首部前面是固定长度,共20字节,是所有IP数据报必须具备的,后面的是可选字段(实际很少用到)

      • 固定部分中的各个字段:

        • 区分服务(不太重要,不用理会)

    • IP层转发分组的流程

      • 一句话总结转发流程:一边走一边看,船到桥头自然直。

      • 通过上面那张图,我们可以看到,路由表是按照主机所在网络地址来制定。当有IP数据报需要进行分组转发时,就查表,根据目的网络地址来确定下一条的路由器。如果该路由器与目的网络相连,就选择进行直接交付;负责就要继续间接交付(通过路由器到达目的主机所在的目的网络)

      • 从路由表的角度来说,是这样的:路由表没有给分组指明到某个网络的完整路径。到某个网络应当先到某个路由器(即下一跳路由器)。在到达下一跳路由器后,再继续查找其路由表,知道再下一步应当到哪一个路由器。 这样一步一步地查找下去,直到最后到达目的网络。

      • 另外,当路由器收到待转发的数据报,不是将下一跳路由器IP地址填入IP数据报,而是送入下层的网络接口软件。它使用ARP将下一跳路由器的IP地址转换成硬件地址,并将此硬件地址放在链路层的MAC帧首部,然后根据这个硬件地址找到下一跳的路由器。

      • 最后,路由表中还有一个默认路由的概念——只要目的网络不属于前面路由表中的其他网络,一律默认选择默认路由

      • 对我们上面论述的内容做一个整理,就是这样图所描述的分组转发算法。

  • 划分子网和构造超网

    • 划分子网与子网掩码

      • 划分子网

        • 由来:原来的二级IP地址,给每一个物理网络分配一个网络号会使得路由表太大而使网络性能变坏。

        • 后来在IP地址中,把主机号host-id部分在划分出一部分作为“子网号字段”,这样的做法就叫划分子网。

        • 划分子网的基本思路:反思从其他网络发送给本单位某主机的IP数据报,仍然是根据IP数据报的目的网络号先找到连接在本单位网络上的路由器。 然后此路由器在收到IP数据报后,再按目的网络号和子网号找到目的子网。 最后将IP数据报直接交付给目的主机。

      • 子网掩码

        • 由于从IP数据报无法直接判断源主机和目的主机所连接的网络是否进行了子网划分,就引入“子网掩码”的概念,找出IP地址中子网掩码部分。

        • 子网掩码长32为,左边是一连串1,对应于网络号和子网号,右边是一连串0,对应于网络号。

        • 子网掩码的运算:将IP地址和子网掩码逐位坐与运算,就可以得到子网的网络地址。

    • 使用子网时分组的转发

      • 由于在划分子网的情况下,从IP地址不能唯一地得到网络地址,所以分组转发算法有所改动

    • 无分类变址CIDR(构造超网)

      • CIDR

        • 问题的由来:剩余的IP地址不多了,IP地址的利用率比较低,要提升利用率;2.路由表中的项目数增长较快,要想办法减少路由表中的项目数。

        • CIDR(无分类域间路由选择)。使用各种长度的“网络前缀”来代替地址中的网络号和子网号。

      • 名词:路由聚合(构成超网)——因为一个CIDR地址块可以表示很多的地址,这种地址的聚合就被称为路由聚合。

        • 路由聚合的好处:1.减少了路由器之间的路由选择信息的交换,提升了互联网的性能;2.由于一个地址块可以表示多个网络,减小了项目表中的数目。

        • 例子:

      • 最长前缀匹配

        • 当路由器收到一个IP数据包时,它会将数据包的目的IP地址与自己本地路由表中的所有路由表进行逐位(Bit-By-Bit)对比,直到找到匹配度最长的条目,这就是最长前缀匹配机制。

        • 如果将目的网络与路由表中的项目做与运算,得到的结果都是匹配的话,那就选网络位数最多的。下面是一个例子(结果是选择项目二):

  • 网际控制报文协议ICMP

    • 写在前面,由于这一步分内容PPT写的比较浅,也比较少,感兴趣的可以去这里看看:https://zhuanlan.zhihu.com/p/369623317

    • ICMP是 Internet Control Message Protocol 的缩写,即互联网控制消息协议。它是互联网协议族的核心协议之一。它用于 TCP/IP 网络中发送控制消息,提供可能发生在通信环境中的各种问题反馈,通过这些信息,使网络管理者可以对所发生的问题作出诊断,然后采取适当的措施解决问题。

    • ICMP报文的格式

      • 通过图我们可以看到,虽然ICMP是网络层协议,但它不像IP协议和ARP协议一样直接传递给数据链路层,而是先封装成IP数据报然后再传递给数据链路层、

    • ICMP报文的种类

      • 差错报文

      • 询问报文

    • ICMP的应用距离

      • 我们常说的ping一下,就是这个

  • 互连网的路由选择协议

    • 有关路由选择协议的基本概念

      • 路由选择是个非常复杂的问题 它是网络中的所有结点共同协调工作的结果。 路由选择的环境往往是不断变化的,而这种变化有时无法事先知道。

      • 分层次的路由选择协议

        • 原因

          • 1.互联网规模大

          • 2.许多单位不愿意外界了解本单位网络的布局细节和所采取的路由选择协议

        • 自治系统

          • 定义:在单一的技术管理下的一组路由器,而这些路由器使用一种 AS 内部的路由选择协议和共同的度量以确定分组在该 AS 内的路由,同时还使用一种 AS 之间的路由选择协议用以确定分组在 AS之间的路由。

          • 简单来说就是:在内部用一种路由选择协议,在外面又用一种路由选择协议来确定AS之间的路由。

        • 两大类路由选择协议

          • 内部网关协议IGP

            • 在自治系统内部使用的路由选择协议,用得最多的事RIP,OSPF

          • 外部网关协议EGP

            • 若源站和目的站在不同的自治系统中,数据报需要转到一个自治系统的边界,就需要使用外部网关协议将路由选择信息传递到另一个自治系统中。

    • 内部网关协议RIP

      • 基本概念

        • 距离:从一个路由器到费直接连接的网络的距离定义为所经过的路由器数加1.; 从一个路由器到直接相连的网络的距离定义为1.

        • RIP允许一条路径最多只能包含15个路由器,最大值为6时即相当于不可达。

      • 路由信息协议RIP的工作原理

        • 总的来说,RIP是一种分布式的,基于距离向量的路由选择协议。RIP会根据自己的路由表,选择一条具有最少路由器的路由。哪怕还存在另一条高速但路由器较多的路由。

        • 路由表的建立:路由器在刚刚开始工作时,只知道到直接连接的网络的距离(此距离定义为1)。它的路由表是空的。 以后,每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息。 经过若干次更新后,所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。

      • 距离向量算法

        • 例子:

        • 这里关于“相同的下一跳”和“不同的下一跳”:在旧路由表中,A,C,F,指得就是下一跳的路由器是那个,Net指的是目的网络。 而这里相同的下一跳就是:从C来,那么项目表二:net2 的下一跳也是C 所以是相同的下一跳,要被替换。 下一跳不同但是更新跳数少的也要被替换。

      • RIP协议的报文格式

      • RIP协议存在的问题:当网络出现故障时,要经过比较长的时间 (例如数分钟) 才能将此信息传送到所有的路由器。

        • 优缺点:

    • 内部网关协议OSPF

      • 这个协议和Dijkstra 提出的最短路径算法 SPF有关系,回忆一下那个算法的原理对学习这个算法会有比较大的帮助。当然,不记得也没关系,多看几遍PPT也能明白基本原理。

      • 1.协议的基本特点

        • 基本要点

          • 1.概念:链路状态:就是说明本路由器与哪些路由器相邻以及该链路的“度量”的信息。

          • OSPF协议在链路状态变化是,路由器会用洪泛法相所有路由器发送信息,告知与本路由器相邻的所有路由器的链路状态。 由于各路由器频繁的交换链路状态信息,因此所有的路由器最终都能建立一个链路状态数据库。这个数据库实际上就是全网的拓扑结构图。 为了是OSPF能够用于规模很大的网络,而不会因为频繁交换信息影响网络性能,OSPF将一个自治系统划分为若干更小的范围,叫做区域。区域内部的路由器只知道本区域的完整网络拓扑,而不知道其他区域的网络拓扑情况。在这其中,又划分出主干区域,用于连接其他区域。

        • 其他特点

      • 2.OSPF的五种分组类型

        • 基本操作:

    • 外部网关协议BGP

      • 从整体来看,BGP是不同自治系统的路由器之间交换路由信息的协议。所交换的信息就是要到达某个网络所要经过的一些列AS。当相互交换信息后,根据所采用的策略从收到的路由信息中找出到达AS的较好路由。

      • 具体的一些细节:

        • 1.由于互联网的规模太大,自治系统之间的路由选择是十分困难的。而对于要找到自治系统之间的路由选择,要找到最佳路由更是不现实的,所以上面才说,我们是在AS之间交换“可达性”信息,找到一条能够到达目的网络且比较好的路由

        • 2.每一个自治系统会显着一个路由器作为该自治系统的“BGP发言人”,由这个BGP发言人与其他自治系统中的BGP发言人交换路由信息。

        • 3.交换路由信息的过程: 先建立 TCP 连接,然后在此连接上交换 BGP 报文以建立 BGP 会话(session),利用 BGP 会话交换路由信息。

          • 使用TCP连接交换路由信息的两个BGP发言人,彼此成为对方的邻站或对等站。

        • 4.BGP协议的特点:

          • ①BGP支持CIDR,因此,BGP的路由表也就包括目的网络前缀、下一跳路由器以及到达该目的网络所要经过的各个自治系统序列。

          • ②BGP刚刚运行时,BGP的邻站是交换整个的BGP路由表。但以后只需要在发生变化时更新有变化的部分。这样做对节省网络带宽和减少路由器的处理开销都有好处。

        • BGP-4使用的报文

    • 路由器的构成

      • 路由器的任务和作用

        • 作用:1.连通不同的网络;2.选择信息传送的线路

        • 任务:将输入端口收到的分组,按照分组要去的目的地,把该分组从路由器的某个合适的输出端口转发给下一跳路由器。

      • 路由器的结构

        • 路由选择部分

          • 路由选择部分,也叫控制部分。它的核心构建是路由交换机。

          • 路由交换机的任务就是根据所选定的路由选择协议构造出路由表,同时经常或定期地和相邻路由器交换路由信息而不断更新和维护路由表。

        • 分组转发部分

          • 输入端口

            • 输出端口的处理流程:输入端口装有物理层、数据链路层和网络层的处理模块。在数据链路层剥去首部和尾部后,将分钟送到网络层的队列中排队等待处理。 网络层的输入端口处理模块有一个缓冲区。当输入链路的发送速率超过交换结构接收分组的速度时,来不及发送的分组交暂存在这个缓冲区。

          • 交换结构

            • 转发与路由的辨析:“转发”就是路由器根据转发表将用户的IP数据报从合适的端口转发出去。;“路由选择”就是根据从各路由器得到的关于网络拓扑的变化情况,动态地改变所选择的路由。

            • 三种交换方法

              • 通过存储器 (1) 当路由器的某个输入端口收到一个分组时,就用中断方式通知路由选择处理机。然后分组就从输入端口复制到存储器中。 (2) 路由器处理机从分组首部提取目的地址,查找路由表,再将分组复制到合适的输出端口的缓存中。 (3) 若存储器的带宽(读或写)为每秒 M 个分组,那么路由器的交换速率(即分组从输入端口传送到输出端口的速率)一定小于 M/2。

              • 通过总线 (1) 数据报从输入端口通过共享的总线直接传送到合适的输出端口,而不需要路由选择处理机的干预。 (2) 因为每一个要转发的分组都要通过这一条总线,因此路由器的转发带宽就受总线速率的限制。 (3) 现代的技术已经可以将总线的带宽提高到每秒吉比特的速率,因此许多的路由器产品都采用这种通过总线的交换方式。

              • 通过纵横交换结构 (crossbar switch fabric) (1) 这种交换结构常称为互连网络 (interconnection network)。 (2) 它有 2N 条总线,可以使 N 个输入端口和 N 个输出端口相连接。 (3) 当输入端口收到一个分组时,就将它发送到与该输入端口相连的水平总线上。 (4) 若通向所要转发的输出端口的垂直总线是空闲的,则在这个结点将垂直总线与水平总线接通,然后将该分组转发到这个输出端口。 (5) 但若该垂直总线已被占用(有另一个分组正在转发到同一个输出端口),则后到达的分组就被阻塞,必须在输入端口排队。

          • 输出端口

            • 输出端口的处理流程:输出端口从交换结构接受分组,数据链路层模块会给分组加上链路层的首部和尾部,然后交给物理层后发送到外部链路。 与输入端口类似,输出端口也有一个缓冲区。当交换结构传送的分组的速度超过输出链路的发送速率是,来不及发送的分组交暂存在这个缓冲区。 若干路由器的处理速率比不上分组进入队列的速率,那么队列的存储空间最终必然减小到0.后面再进入的分组由于没有存储空间就会被丢弃。路由器的输出或输出队列产生溢出是造成分组丢失的主要原因。

  • IPv6

    • 从IPv4到IPv6的变化

    • IPv6的基本首部

      • IPv6数据报的一般形式——由两部分构成:基本首部和有效载荷。其中有效载荷包括零个或多个拓展首部,在加上后面的数据部分。

      • 基本首部的具体细节

        • 更改:

        • 字段介绍

          • 这里的意思就是标识这个“流”所享受的服务质量。如果标识服务质量高,它就可能更快更少失真的传输。

      • 拓展首部

        • IPv6把原来IPv4中选项的功能放在拓展首部,并将拓展首部交给路径两段的源站和目的站的主机来处理,而不需要路由器来处理。

    • IPv6的地址

      • 基本地址类型

        • 单播:传统的点对点通信;

        • 多播:一点对多点的通信

        • 任播:目的站是一组计算机,但数据报在交付时只交付其中的一个,通常是距离最近的一个。

      • IPv6将视线IPv6的主机和路由器叫做“结点”。IPv6地址是分配给结点上面的接口的。其中,一个接口可以有多个单播地址,其中的任何一个地址都可以当做到达该结点的目的地址。

      • 地址记法

        • 冒号十六进制记法

          • IPv6共128位,跟原来一样,为了便于阅读,分为8组,每一组都用十六进制来表示,各组之间用冒号分隔。例如:

          • 也可以把数字前面的0省略。例如把0000中的前三个0省略,写成1个0

          • 还有一个概念叫做“零压缩”。就是一连串的,连续的0可以为一对冒号所取代。 有两点需要注意的是: 1.在一个地址中只能使用一次零压缩。如果前面的一连串0使用零压缩了,那后面另一串0就不能再使用; 2.不管这一连串0占用了多少个分组,压缩后看起来都是一对冒号。

        • 与点份十进制记法后缀的结合

      • IPv6地址分类

        • 未指明地址 1.这是 16 字节的全 0 地址,可缩写为两个冒号“::”。 2.这个地址只能为还没有配置到一个标准的 IP 地 址的主机当作源地址使用。 3.这类地址仅此一个。

        • 环回地址 1.即 0:0:0:0:0:0:0:1(记为 ::1)。 2.作用和 IPv4 的环回地址一样。 3.这类地址也是仅此一个。

        • 多播地址 1.功能和 IPv4 的一样。 2.这类地址占 IPv6 地址总数的 1/256。

        • 本地链路单播地址 (Link-Local Unicast Address) 1.有些单位的网络使用 TCP/IP 协议,但并没有连接到互联网上。连接在这样的网络上的主机都可以使用这种本地地址进行通信,但不能和互联网上的其他主机通信。 2.这类地址占 IPv6 地址总数的 1/1024。

    • 从IPv4向IPv6过渡

      • 为了确保网络的可靠性和稳定性,向IPv6过渡只能采取逐步演进的办法,而且新安装的IPv6系统能够向后兼容:IPv6系统能够接受和转发IPv4分组,并能为IPv4分组提供路由。下面介绍两种向IPv6过渡的技术策略。

      • 双协议栈技术

        • 双协议栈技术就是指:在完全过渡到IPv6之前,使一部分主机或路由器装有两个协议栈,一个IPv4,一个IPv6。在和IPv6主机通信是采用IPv6地址,在和IPv4主机通信时采用IPv4地址。

      • 隧道技术

        • 隧道技术指的是:在IPv6数据报进入IPv4网络时,把IPv6数据报封装成IPv4数据报,在IPv4数据报离开IPv4网络的隧道时,再把数据部分(原来的IPv6数据报)交给主机的IPv6协议栈

    • ICMPv6

      • 之前我们讲过ICMP,这是一个用来反馈差错信息的协议。在IPv6中,它的新版本就被称为ICMPv6。

      • 更原来的一个显著差别就是它还把地址解析协议ARP和网际组管理协议IGMP合并到了一起。

      • 报文分类

        • CMPv6 是面向报文的协议,它利用报文来报告差错,获取信息,探测邻站或管理多播通信。

  • IP多播

    • IP多播的基本概念

      • 之前,我们讨论过“多播”的概念。所谓多播,就是一对多的通信。比如:软件更新。游戏公司并不是给每一个人发一个更新包,而是游戏公司只发一次更新包,然后利用多播,使每一个人都收到一个更新包。

      • 互联网上的多播需要靠路由器来实现。这些能够运行多播协议的路由器就被称为“多播路由器”

      • 通过下面两张图,我们来大致了解一下单播与多播的区别,以及多播的工作方式

      • 多播IP地址

        • IP多播所传送的分组需要使用多播IP地址。在多播数据包的目的地址写入的是多播组的标识符。也就是IP地址中的D类地址(多播地址)。多播地址只能用于目的地址,而不能用于源地址。

    • 网际组管理协议IGMP和多播路由选择协议

      • 为了使路由器知道多播成员的信息,需要用到网际组管理协议;为了与其他多播路由器协同工作,以便把多播数据报以最小代价传送给所有的组成员,这就需要多播路由选择协议。

      • IGMP

        • 作用:使多播路由器知道多播组成员的信息。更确切的说,是让连接在本地局域网上的多播路由器知道本局域网上是否有主机参与或推出某个多播组。

        • 工作流程

        • 一些具体措施

      • 多播路由选择协议

        • 实际上就是找出以源主机为根节点的多播转发树。

        • 技术方法

          • 洪范与剪除

          • 隧道技术

          • 基于核心的发现技术

  • 虚拟专用网VPN和网络地址转换NAT

    • 虚拟专用网VPN

      • 基本概念

        • 本地地址:仅在机构内部使用的IP地址,可由本机构自行分配,而不需要想互联网的管理机构申请。但是本地地址不能直接连接因特网

        • 全球地址:全球唯一的IP地址,必须向互联网的管理机构申请。可以依据这个IP地址上网

        • 专用网(本地互联网):采用本地地址的互连网

      • 利用公用的互联网作为本机构各专用网之间的通信载体,这样的专用网又被称为“虚拟专用网VPN”

      • 通过下面这个图片,我们来具体看看VPN是怎么工作的

        • 部门A使用本地地址,在发送IP数据报时,也是在首部填写本地地址。但是在经过路由器时,被加密并在外面使用了全球地址。这样,就可以使用互联网进行正常通信。

      • 我们把部门间的内部网络所构成的VPN称为内联网;而一个机构和某些外部结构共同建立的虚拟专用网VPN成为外联网。使用外联网的操作被称为“远程接入VPN”——联想一下大学时寒暑假在家当利用VPN远程登录校园网,你就可以理解什么是远程接入VPN了。

    • 网络地址转换NAT

      • 这是一种在专用网上使用专用地址与互联网进行通信(但并不加密)的技术

    • 基本原理

      • 在安装NAT软件以后,路由器就可以具备网络地址转换功能。而这样的路由器也被成为NAT路由器。 当使用本地地址的主机与外界进行通信时,NAT路由器上会将其本地地址转换为全球IP地址,这样就成功实现本地地址与互联网进行通信

    • 网络地址转换过程

      • NAT 路由器将数据报的源地址 IP a 转换成全球地址 IP g ,并把转换结果记录到NAT地址转换表中,目的地址 IP b保持不变,然后发送到互联网。

      • NAT 路由器收到主机 B 发回的数据报时,知道数据报中的源地址是 IP b 而目的地址是 IP g 。

      • 根据 NAT 转换表,NAT 路由器将目的地址 IP g 转换为 IP a ,转发给最终的内部主机 A。

      • 为了更有效的利用NAT路由器上的全球IP地址,现在常用的NAT转换表还把运输层的端口号也利用上。这样就可以使多个拥有本地地址的主机,共用一个NAT路由器上的全球IP地址。

  • 多协议标记交换MPLS

    • 名词解释

      • 标记:指每个分组被打上一个标记,根据这个标记对分组进行转发

      • LSR标记交换路由器:支持MPLS技术的路由器

      • MPLS域:该域中有许多彼此相邻的路由器,且所有路由器都是LSR

      • LSP:标记交换路径

    • 基本工作过程:

      • 1.各LSR使用专用的标记分配协议交换报文,并找到标记交换路径LSP。各LSR根据这些路径构造分组转发表 这一步算是准备阶段,虽然这一步可能比直接转发慢,但是因为构造了分组转发表同时是使用硬件进行检索,后续的分组速度会快很多。

      • 2.分组进入MPLS域,入口节点把分组打上标记,并按照转发表转发给下一个LSR(需要注意的是,一个标记只在两个LSR之间才有意义,分组每经过一个LSR,都要更换新的标记。)

      • 3.) 当分组离开 MPLS 域时,MPLS 出口结点把分组的标记去除。再以后就按照一般分组的转发方法进行转发。

    • 简单地说,就是在进来的时候,根据入口LSR就构造好一个转发表或者说一条固定的转发路径,而不是“每一个路由器逐跳进行路由选择”

    • MPLS的首部

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/11132.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++笔记(STL标准库)

1.STL六大部件 容器 Containers分配器 Allocators:帮容器分配内存算法 Algorithms迭代器 Iterators:算法通过迭代器操作容器里的数据,是一种泛化的指针适配器 Adapters:修改或扩展已有类或函数的接口以满足特定的需求仿函数 Func…

亲测-wordpress文章实时同步发布修改删除多个站点的WP2WP插件

一款将wordpress文章同步到其他WordPress网站的插件,通过这款插件,可以保持不同博客之间文章发布、修改、删除的同步。 安装步骤: 主站和分站都要上传这个插件 1.把插件上传到wp-content\plugins解压出来wp2wp文件夹,然后启用插…

【数据结构】心里有 “B树“ 么?

序言 在学习数据库之前,博主觉得有必要学习B树系列,以便之后更好地了解其原理,既然说到这里了,那就再说几句,数据库是帮助我们管理存在硬件当中的数据,如果要从中读取数据,就要考虑到硬件的读取…

poll 机制

poll 机制 一、poll机制概述二、使用流程三、编程3.1 驱动编程3.1 应用编程 四、POLL 机制的内核代码详解五、编译后上机实验 poll 机制与休眠唤醒机制的区别: 休眠唤醒方式时,进程如果没有得到唤醒信号,需要一直休眠,进程就干不了…

免费思维13招之七:空间型思维

免费思维13招之七:空间型思维 本篇给你带来的是空间型思维。 空间型思维,具体分为内部空间型思维和外部空间型思维。 什么叫内部空间型思维呢? 内部空间型就是充分利用现有空间或资源为社会提供免费服务,积累人气,增加流量,从而带动消费。 为什么你生意不好?为什么你…

ppt保存文件奇怪问题

我发现ppt中的形状保存成jpg,png和pdf时,格式不一样 比如 当右键单击时,然后选择另存为图片 png格式 jpg格式 pdf格式 感觉还是很奇怪,就pdf的格式比较靠谱一点

2024年建筑施工特种作业人员安全生产知识试题

100分题库提供安全员考试试题、建筑安全员考试预测题、建筑安全员ABC考试真题、安全员证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 单选题(1-10) 1.因生产安全事故受损害的从业人员,除…

Busybox 在 Docker 中的部署和启动

可以使用 docker pull 指令下载 busybox:latest 镜像: PS C:\Users\yhu> docker pull busybox:latest latest: Pulling from library/busybox ec562eabd705: Pull complete Digest: sha256:5eef5ed34e1e1ff0a4ae850395cbf665c4de6b4b83a32a0bc7bcb998e24e7bbb St…

ElasticSearch集群环境

ElasticSearch集群环境 1、Linux单机 下载地址:LINUX X86_64 (elastic.co) 下载之后进行解压 tar -zxf elasticsearch-7.8.0-linux-x86_64.tar.gz 名字太长了改个名字改成es mv elasticsearch-7.8.0 es因为安全问题,Elasticsearch 不允许 root 用户…

性能优化 | el-table中内嵌大量el-input控件导致渲染卡顿的问题

场景 项目中有一个应用场景,用户需要在表单中大量使用选择框以及输入框填写数据(每一行大概有三十几个输入框),当选择框与输入框达到一定数量的时候,页面会出现输入不连续、卡顿的现象,如下图:…

C++基础与深度解析 | 什么是C++ | C++开发环境与相关工具 | C++编译/链接模型

文章目录 一、什么是C二、C的开发环境与相关工具三、C的编译/链接模型 一、什么是C C是一门比较流行的编程语言(高级语言),同时也是一门复杂的语言。从TIOBE 编程社区指数中可以看出:在2024.04中,其编程语言受欢迎程度…

HCIP【BGP综合实验】

目录 一、实验拓扑图: 二、实验要求: 三、实验思路: 四、实验步骤: 1、进行网段的子网划分(整个实验总共有19条网段): (1)首先,根据实验要求,将172.16.0.0/16全部划…

2024湖南理工学院程序设计竞赛(同步赛) G. 区间递减(思维题 分类讨论 ST表)

题目 https://ac.nowcoder.com/acm/contest/82672/G 思路来源 出题人 涼風青葉7代码 题解 注意到三种情况即可, 第一种情况,10 9 8 1 2,保留1 第二种情况,6 5 10 9 4 4,保留5 4 4 第三种情况,6 5 4&…

jdk8的新特征

1: jdk8中新增的方法 在jdk8中对接口进行了增强,在jdk8之前 interface 接口名{ 静态常量: 抽象方法: } 在jdk8之后 interface 接口名{ 静态常量: 抽象方法: 默认方法: 静态方法: } 2…

JAVA基础--IO

IO 什么是IO 任何事物提到分类都必须有一个分类的标准,例如人,按照肤色可分为:黄的,白的,黑的;按照性别可分为:男,女,人妖。IO流的常见分类标准是按照*流动方向*和*操作…

Google与哈佛大学的科学家团队共同创造了一张人脑中一个极小部分的精细地图

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

插件:Best HTTP

一、简介 WebSocket WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。…

【SRC实战】无法支付的修改金额支付漏洞

挖个洞先 https://mp.weixin.qq.com/s/F4f8R4uKN0Q9BnTmjDMleg “ 以下漏洞均为实验靶场,如有雷同,纯属巧合 ” 01 — 漏洞证明 一、企业用户,标准商品 “ 支付订单需要公对公银行卡转账,如何绕过?” 1、点击任意…

java入门-面向对象的三大特性

面向对象三大特性 封装 什么是封装 封装 是将代码及其处理的数据绑定在一起的一种编程机制,该机制保证了程序和数据都不受外部干扰且不被误用。 封装的作用 访问控制符 方法传参-值传递 传参类型是基本类型 程序案例: public static void main(St…

C++笔记(体系结构与内核分析)

1.OOP面向对象编程 vs. GP泛型编程 OOP将data和method放在一起,目的是通过封装、继承、多态提高软件的可维护性和可扩展性GP将data和method分开,可以将任何容器与任何算法结合使用,只要容器满足塞饭所需的迭代器类型 2.算法与仿函数的区别 …