计算机网络——第四章 网络层

网络层:遵循ARP协议(根据IP地址获取物理地址的一个TCP/IP协议),IP协议(提高网络的可扩展性),ICMP协议(用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息),IGMP协议(用于IP主机向任一个直接相邻的路由器报告他们的组成员情况)。

如果只是在局域网中进行主机之间的通信,那么只需要物理层和链路层即可,但是如果在城域网乃至广域网之间进行网络通信的话,就需要网络层,需要主机连接路由器。

网络层的主要功能是 实现网络互连,使得数据包能在各网络之间相互传输。

网络层需要解决以下问题:

·网络层向运输层提供的服务是“可靠传输”还是“不可靠传输”

·网络层寻址问题(IP问题)

·路由选择问题(网络中通过哪些路由器传输数据包,走哪条网络路径)

1.网络层向运输层提供的服务是不可靠运输

首先我们先讨论的是,网络层向运输层提供的服务是“可靠传输”还是“不可靠传输”?这个问题在计算机网络领域中曾引起长期的争论,争论焦点的实质就是:在计算机通信中,可靠交付应当由谁来负责?是网络还是端系统

( 1 )网络层中采取的可靠运输——面向连接的虚电路服务(与电路交换的基本过程 “先建立连接,随后进行数据传输,最后释放连接” 类似)

虚电路服务认为 “可靠通信的任务应当由网络来进行保证” 。它主要就是借助电信网成功的经验,采用面向连接的方式进行通信。  于是,虚电路的三个基本过程也为建立连接,数据传输,释放连接。但需要注意的是:虚电路服务建立的连接即虚电路VC是一种逻辑链路,它实际是不存在的,但是电路交换的连接是物理链路,是实际存在的。 具体的操作是 : 通信双方沿着虚电路发送分组,且目的主机的地址仅在连接建立阶段使用,之后每个分组的首部只需要带着一条虚电路的编号(构成虚电路的每一段链路都有一个虚电路编号)。转发过程中,属于同一条虚电路的分组均按照同一路由进行转发。这种通信方式加上可靠传输的网络协议,就可使所发送的分组最后正确到达接收方。

            不过呢,这种方法并没有被采用。

( 2 )网络层中真正采取的不可靠运输——无连接的数据报服务

数据报服务认为 “可靠通信的任务应当由用户主机来保证” 。

·灵活性:数据报服务是一种无连接的服务,每个数据包都是独立的实体,可以按需发送和接收。这种灵活性适用于对实时性要求高、传输内容不需要按顺序到达的应用。例如,实时音视频通信或实时游戏中,对低延迟和快速传输的需求较高。

·简单性:数据报服务不需要在通信之前建立连接,减少了通信的开销和延迟。它适用于短暂的、一次性的通信,无需额外的连接建立和管理。

·适应性:数据报服务可以适应网络中的动态变化,例如,可以通过路由选择算法根据当前的网络拓扑和负载情况动态选择传输路径。这种适应性使得数据报服务更适用于分布式和动态网络环境。

综上:TCP/IP体系结构的因特网的网络层提供的是简单灵活、无连接的、尽最大努力交付的数据报服务。

尽最大努力交付的好处:网络本身不提供端到端的可靠传输服务,使得路由器的造价大大降低,简单灵活,能适应多种网络中的动态变化。

两者区别:

2.网络中使用IP地址来解决网络中的寻址问题

IP协议使用IP地址来唯一标识网络中的主机和路由器。IP地址分为IPv4 和 IPv6 ,主流是IPv4,Pv4地址由32比特表示,分为四组,每组8比特,通常将二进制转换为十进制,以点分十进制表示(例如,192.168.0.1)

当前的IP地址是因特网上的主机和路由器所使用的地址,用于标识两部分信息:

  • 网络编号:标识因特网上数以百万计的网络。
  • 主机编号:标识同一网络上的不同主机。(或路由器各接口)

IP地址:是计算机在网络中的唯一身份ID,与现实世界中快递的配送需要有具体的住宅地址是一个道理。

IP地址 = 网络地址(前三个十进制数) + 主机地址(第四个十进制数)(又称:主机号和网络号组成)

首先,我们必须要知道 什么是 IP地址。

接下来粗略了解

IP地址发展的三个阶段:分类编址、划分子网、无分类编址

( 1 )分类编址

只有“A”、“B”、“C”能分配给主机和路由器

主机号全为 0 的为自身网络地址

主机号全为 1  的为广播地址

网络号为01111111 的地址是本地还回测试地址,不能指派给主机或路由器

( 2 )划分子网

随着网络的商业化,互联网用户激增,导致原先充裕的IP地址资源渐渐枯竭,且由于早期分配网络不合理,如给一座大学就分配了一个A类网络,导致这些使用率低下。因此需将这些使用率低下的网络进行细分,拆分成多个子网。这就是子网划分。

( 3 )无分类编址

划分子网在一定程度上缓解了因特网的发展问题,但数量巨大的C类网因为其地址空间太小而没有得到充分使用,但是互联网的IP地址使用仍在消耗,整个IPv4地址面临着全部耗尽的威胁。

无分类指的是,在地址后面加个 “/20” ,表示网络号占 20比特,剩下的32 - 20 = 12 比特为主机号

将IP地址和子网掩码 做 相与 & 即可得出 此时的网络地址

可以看出 无分类编址的IPv4地址 数量大大增加,可是在分配IPv4地址的时候需要将一个地址分为不同的地址块(也就是将一个蛋糕分成很多块,对于所有人围在一起吃蛋糕,将蛋糕分成一块一块的更方便人们吃),IPv4提供了两种应用规划:定长的子网掩码FLSM 、 变长的子网掩码VLSM 。

其中定长的子网掩码FLSM就是将每块蛋糕因需分成同样大小。

变长的子网掩码VLSM是不同蛋糕根据所需分成不同大小。

写完了IP地址的概念,接下来就要学习,主机如何通过IP地址来发送IP数据报

发送IP数据报的方式:

( 1 )直接交付:在同一个网络(同一个IP地址块)中,主机与主机之间可以直接通信,这称为 “直接交付”。

( 2 )间接交付:在不同网络中,主机与主机之间的通信需要靠路由器来中转,这属于“间接交付”。

例如:

上图中,主机C和主机F在不同的子网中,那么主机C是要先判断主机F是否在同一个子网中。

主机C与F之间通信的前提是,已知主机C和主机F和C的子网掩码,主机C将自身IP地址和自身子网掩码& 后得到主机C的网络地址192.168.0.0,然后主机C再将主机F的IP地址和自身(主机C)的子网掩码& 后得到主机F的网络地址 192.168.0.128 所以主机C判断出 C 和 F的网络地址不同,所以两者不在同一个网络中,所以两者之间的通信为间接交付,需要依靠路由器。

这时候主机C要解决的问题是 找哪个路由器接口转发出去,这就涉及到了一个名词——“默认网关”。

默认网关

每个主机都会有一个默认网关,默认网关其实是一个路由器接口的IP地址,主机将IP数据报传输给默认网关,由默认网关将IP数据报转发出去。

不过,默认网关会检查收到的IP数据报:

·IP数据报的首部是否出错

如果出错,则丢弃IP数据报并告知源主机

·根据接收到的IP数据报的目的地址,在路由器的路由表中查找匹配的条目

如果匹配则知道是同一个路由器,直接接口转发即可

反之,则进行跳到下一个路由器

注意⚠️:路由器是隔离广播域的(即广播IP数据报,因为广播IP数据报是主机发送给所在网络中各个主机和路由器的),这是很有必要的。试想一下,如果英特网中数量巨大的路由器收到广播IP 数据报后都进行转发,则会造成巨大的广播风暴,严重浪费因特网资源。

小tips:

广播IP数据报用于在局域网中向所有主机发送网络信息。它可以用于以下几种情况:

  1. 发送网络公告:当您需要向整个网络广播一条通知或公告时,可以使用广播IP数据报。例如,当您在局域网中添加新设备或有重要的系统更新时,您可以发送广播消息以通知所有连接到网络的设备。
  2. 发现网络设备:广播IP数据报还可以用于发现网络中的其他设备。例如,在局域网中,您可以发送广播消息以查找可用的打印机或其他网络服务。
  3. DHCP(动态主机配置协议):DHCP是一种用于自动分配IP地址和其他网络配置参数给设备的协议。当设备加入网络时,它可以发送广播IP数据报以请求IP地址和其他配置参数。

那么又引申出一个问题:路由表中的信息是如何添加及修改的呢?

这里引申出一个名词:路由选择协议

路由选择协议

分为静态路由选择、动态路由选择:

静态路由配置

举例:

有些概念还是要理解清楚的:默认路由,特定路由,黑洞路由

默认路由

举例

默认路由可以被所有网络匹配,但路由匹配有优先级,默认路由是优先级最低的

由于英特网中包含了众多的网络,如果我们给R添加针对这些网络的每一条路由条目,则会给人工配置带来巨大的工作量,并且使的路由表变得非常大,降低了查表转发的速度。实际上,对于具有相同下一跳的不同目的网络的路由条目,我们可以用一条默认路由条目来替代。默认路由条目中的目的网络地址为0.0.0.0

特定主机路由

有时候,我们可以给路由器添加针对某个主机的特定主机路由条目

一般用于网络管理人员对网络的管理和测试

我们知道,IP地址前缀越长,路由越具体,而路由器一般会选择最长前缀的地址。

黑洞路由

黑洞路由是解决当路由器进入到不存在网络时,将所有无关路由吸入其中,使它们有来无回的路由

IP数据报进入黑洞路由后就被丢弃。

当有需要的时候黑洞路由会失效。

一般在静态路由选择中,出现的问题常见的是:环形路由。

为了解决环形路由的问题,我们在IP数据中添加了一个生存时间TTL,假设TTL为16,当进入一个路由器中,路由器先判断TTL是否等于0,如果等于则舍弃,反之TTL减一,再查找路由表转发IP数据。

以上均为静态路由选择的配置和在其中可能产生的问题。

动态路由选择

因特网是全球最大的互联网络,它所采用的路由选择协议具有以下三个主要特点,分别是:

·自适应:因特网采用的是动态路由选择,能较好的适应网络状态的变化。
·分布式:因特网中的各路由器,通过相互间的信息交互,共同完成路由信息的获取和更新
·分层次:将整个因特网划分为许多较小的自治系统AS,例如一个较大的因特网服务提供商,就可划分为一个自治系统,在自治系统内部和自治系统外部,采用不同类别的路由选择协议,分别进行路由选择。
 

下面我们来举例说明,因特网采用的分层次路由选择协议,假设这是因特网中的很小的一部分,我们可以将这些网络和路由器划归到两个不同的自治系统:

自治之间的路由选择,简称为域间路由选择。自治系统内部的路由选择,简称为域内路由选择
域间路由选择使用外部网关协议EGP类别的路由选择协议,域内路由选择使用内部网关协议IGP这个类别的路由选择协议


需要说明的是外部网关协议EGP和内部网关协议IGP只是路由选择协议的分类名称,而不是具体的路由选择协议。另外名称中使用的是网关这个名词,是因为在因特网早期的RFC文档中没有使用路由器,而使用的是网关这一名词。现在新的RFC文档中又改用路由器这一名词,因此外部网关协议EGP可改称为外部路由协议ERP,内部网关协议IGP,可改称为内部路由协议IRP。

注意:
在一个自治系统内部使用的具体的内部网关协议,与因特网中其他自治系统中选用何种内部网关协议无关。

给出我们常见的IGP 和 EGP路由选择协议:

路由选择协议是在路由器上运行的,下面我们就来看看

路由器的基本结构:

路由器的任务是分组转发,其中可以分为两部分:路由选择部分,分组转发部分。

其中:

路由选择部分是规定了遵循哪种路由选择协议,以此来 周期性的与其他路由器进行路由信息的交互,来更新路由表。

分组转发部分由三部分构成,分别是交换结构,一组输入端口,一组输出端口。

路由器的工作过程:

··信号从某个输入端口进入路由器,物理层将信号转换成比特流,送交数据链路层处理,数据链入层从比特流中识别出帧去掉帧头和帧尾后,送交网络层处理。如果送交网络层的分组是普通代转发的数据分组,则根据分组首部中的目的地址进行查表转发,若找不到匹配的转发条目,则丢弃来分组,否则按照匹配条目中所指示的端口进行转发。


··转发出去时,网络层更新数据分组首部中某些字段的值,例如将数据分组的生存时间减1,然后送交数据链路层进行封装,数据链路层将数据分组封装成帧,送交物理层处理,物理层将帧看作是比特流,将其变换成相应的电信号进行发送。


··如果送交网络层的分组是路由器之间交换路由信息的路由报文,则把这种分组送交路由选择处理机,路由选择处理机根据分组的内容来更新自己的路由表。路由表一般仅包含从目的网络到下一跳的映射,路由表需要对网络拓扑变化的计算最优化,而转发表是从路由表得出的,转发表的结构应当是查找过程最优化

注意:我们不严格区分路由表和转发表,以此来更好的学习理解。

路由器的各端口一般都具有输入缓冲区和输出缓冲区

  • 输入缓冲区用来暂存,新进入路由器,但还来不及处理的分组。

  • 输出缓冲区用来暂存,已经处理完毕,但还来不及发送的分组。

讲完路由器,接下来我们来学习一下路由选择协议。

路由选择协议:

1.内部网关协议IGP之一的路由信息协议RIP

其实就是以自身路由器到各网络之间的距离长度为标准选择路径,在路由信息协议RIP中,不管路径的带宽大小,只看距离。如下图,R1到R5只会走R4这条路径:

等价负载均衡:

当到达同一目的网络,有多条距离相等的路由时,RIP可以进行等价负载均衡,也就是将通信量均衡的分布到多条等价的路由上。如下图:

路由信息协议RIP包含以下三个要点,

第一个要点是和谁交换信息?答案是仅和相邻路由器交换信息。我们来举例说明相邻路由器的概念,下图中R1与R2故为相邻路由器,因为它们是直连的,中间没有其他路由器。同理,R2与R3也互为相邻路由器,但是R1与R3不是相邻路由器,因为它们之间还存在其他路由器。


第二个要点是交换什么信息?答案是路由器自己的路由表。


第三个要点是何时交换信息,答案是周期性交换,例如每30秒发送一次RIP更新报文
 

路由信息协议RIP具体工作过程可自行观看湖科大B站视频,更有助于理解复习。

路由信息协议RIP的缺点:坏消息知道的慢(只有到最大路径距离为16时,才知道自身无法到达目的网络)。

路由信息协议RIP的小结:

2.开放最短路径优先OSPF

举例说明,在思科路由器中,OSPF计算代价的方法是用100兆比特每秒除以链路带宽,计算结果小于1的值仍记为1,大于1且有小数的舍去小数。我们可以很容易的得出下图中各路由器的链路状态:

OSPF包含以下5种分组类型

1.问候分组

OSPF相邻路由器之间通过交互问候分组来建立和维护邻居关系

如图所示:

问候分组需要封装在IP数据报中发送,发往组播地址224.0.0.5,IP数据报首部中的协议号字段的取值应为89,来表明IP数据报的数据载荷为OSPF分组,问候分组的发送周期为10秒,若40秒仍未收到来自邻居路由器的问候分组,则认为该邻居路由器不可达。

因此每个路由器都会建立一张邻居表,其中的每一个条目对应记录其各邻居路由器的相关信息,包括邻居ID,接口以及死亡倒计时。

例如R2是R1的一个邻居路由器,为简单起见,邻居ID就记为R2(实践中应填写相应的路由器ID),该邻居路由器与自己的接口1相连,将接口号记为1,死亡倒计时还剩36秒,若在死亡倒计时到达0之前,再次收到了来自R2的问候分组,则重新启动针对该邻居条目的40秒死亡倒计时,否则当死亡倒计时为0,则判定该邻居路由器不可达。

R4是R1的另一个邻居路由器,邻居ID记为R4,该邻居路由器与自己的接口0相连,将接口号记为0,死亡倒计时还剩余18秒。


2.链路状态

使用OSPF的每个路由器都会产生链路状态通告,其中包含以下两类内容:

··一类是直连网络的链路状态信息
··另一类是邻居路由器的链路状态信息。


假设N1是路由器R4的直连网络,则R4的链路状态通告应包含:

··与其直连网络N1的链路状态信息
··邻居路由器R1的链路状态信息
··邻居路由器R3的链路状态信息
 

3.数据库描述

使用OSPF的每个路由器都有一个链路状态数据库,用于存储链路状态通告,通过各路由器洪范发送封装有自己链路状态通告的链路状态更新分组,各路由器的链路状态数据库最终将达到一致

例如这是路由器R2的链路状态数据库,其中记录有系统中各路由器的链路状态通告:

接下来我们来举例说明OSPF协议的基本工作过程:

OSPF协议的基本工作过程:

相邻路由器之间周期性发送问候分组,以便建立和维护邻居关系,

建立邻居关系后,给邻居路由器发送数据库描述分组,也就是将自己的链路状态数据库中的所有链路状态项目的摘要信息发送给邻居路由器。

例如 R1收到R2的数据库描述分组后,发现自己缺少其中的某些链路状态项目,于是就给R2发送链路状态请求分组。R2收到后,将R1所缺少的链路状态项目的详细信息,封装在链路状态更新分组中发送给R1。R1收到后,将这些所缺少的链路状态项目的详细信息添加到自己的链路状态数据库中,并给R2发送链路状态确认分组。需要说明的是R2也可以像R1请求自己所缺少的链路状态项目的详细信息。最终 R1和R2的链路状态数据库将达到一致,这也就是链路状态数据库达到同步。

每30分钟或链路状态发生变化时,路由器都会发送链路状态更新分组,收到该分组的其他路由器,将洪范转发该分组,并给该路由器发回链路状态确认分组,这又称为新情况下的链路状态数据库同步。

但是

当OSPF路由器在多点接入网络中建立邻居关系时,如果不采用其他机制,将会产生大量的多播分组。例如这5台路由器连接在同一个多点接入网络中,他们周期性的发送问候分组,以建立和维护邻居关系。这些路由器中的任意两个路由器都互为邻居关系,如图所示,邻居关系的数量为N乘以N-1,然后再除以2,其中N是路由器的数量,这样每个路由器要向其他N减一个路由器发送问候分组和链路状态更新分组。

为了减少所发送分组的数量,OSPF采用选举指定路由器DR和备用的指定路由器BDR的方法

并且所有的非DR,BDR只与DR,BDR建立邻居关系。(选个指定人来执行问候分组)

非DR,BDR之间不能直接交换信息,而必须通过DR,BDR进行交换。若DR出现问题,则由BDR顶替DR。实现DR和BDR的选举并不复杂,无非就是各路由器之间交换一些选举参数,例如路由器优先级、路由器ID,接口IP地址等,然后根据选举规则选出DR和BDR。

如下,

区域的概念及好处:

采用分层次划分区域的方法,虽然使交换信息的种类增多了,同时也使OSPF协议更加复杂了,但这样做却能使每一个区域内部交换路由信息的通信量大大减小,因而使OSPF协议能够用于规模很大的自制系统中

边界网关协议BGP的基本工作原理

因特网采用分层次的路由选择协议,内部网关协议这一类别的协议,用于自治系统内部的路由选择,典型的协议有路由信息协议RIP 和开放最短路径优先OSPF,他们都是设法使分组在一个自治系统内部,尽可能有效的从源网络传输到目的网络,无需考虑自治系统外部其他方面的策略。

外部网关协议这一类别的协议用于自治系统之间的路由选择。典型的协议是边界网关协议BGP。在不同自治系统内,度量路由的代价可能不同,因此对于自治系统之间的路由选择,使用代价作为度量来寻找最佳路由是不可行的,这是因为代价是由网络管理员来决定的,不同的网络之间代价有所不同,代价无法统一的条件下,使用代价来寻找最佳路由路径是没有意义的
 

边界网关协议BGP只能是力求寻找一条能够到达目的网络且比较好的路由,也就是不能兜圈子,而并非要寻找一条最佳路由。

BGP小结(这里关系到TCP所以先粗略了解即可):

我们都知道,网络层中IPv4地址是非常重要的,而IPv4地址其实属于IPv4数据报的一部分,接下来我们来详细学习IPv4数据报。

IPv4数据报:

一个 IP 数据报由首部数据两部分组成。

首部是每个IP数据报必有的,下面是首部的结构图:

版本字段,该字段占4个比特,用来表示IP协议的版本,通信双方使用的IP协议的版本必须一致,目前广泛使用的IP协议的版本号为4,即IPv4

首部长度字段,该字段占4个比特,用来表示IP数据报首部的长度

区分服务字段,该字段占8个比特,用来获得更好的服务。该字段在旧标准中叫做服务类型,但实际上一直没有被使用过。1998年因特网工程任务组IEFT把这个字段改名为区分服务,利用该字段的不同数值,可提供不同等级的服务质量。只有在使用区分服务时,该字段才起作用,一般情况下都不使用该字段

总长度字段,该字段占16比特,用来表示IP数据报的总长度,也就是首部和数据载荷的长度总和,最大取值为十进制的65535,以字节为单位,需要注意的是在实际应用中很少传输这么长的IP数据报。

标识,标志,片偏移这三个字段,他们共同用于进行IP数据报分片,网际层封装出的IP数据报,它将在数据链路层封装成帧。每一种数据链路层协议都规定了帧的数据载荷的最大程度,称为最大传输单元MTU。例如以太网的数据链路层规定,MTU的值为1500个字节,如果某个IP数据报的总长度超过MTU时,将无法封装成帧,需要将源IP数据报分片为更小的IP数据报,再将各分片IP数据报封装成帧。
 

生存时间字段TTL,进入路由器就会减1,当等于0时就会被丢弃。

协议字段

首部检验和字段

可选字段,该字段的长度从1个字节到40个字节不等,用来支持排错、测量以及安全措施。可选字段增加了IP数据报的功能,但这同时也使得IP数据报的首部长度成为可变的,这就增加了每一个路由器,处理IP数据报的开销,实际上可选字段很少被使用。


填充字段,该字段用来确保首部长度为四字节的整数倍,使用全0进行填充。我们之前刚刚介绍过首部,长度字段是以四字节为单位的,换句话说,IP数据报的首部长度一定是四字节的整数倍。由于首部中的可选字段的长度,从1个字节到40个字节不等,那么当20字节的固定部分加上1~40个字节长度不等的可变部分,会造成首部长度不是四字节的整数倍时,就用取值为全零的填充字段,填充相应的字节,以确保IP数据报的首部长度是四字节的整数倍。
 

以上就是IPv4数据报的详细介绍。

网际控制报文协议ICMP

架构IP网络时需要特别注意两点:

  • 确认网络是否正常工作
  • 遇到异常时进行问题诊断
  • 而ICMP就是实现这些问题的协议

ICMP的主要功能包括:

  • 确认IP包是否成功送达目标地址
  • 通知在发送过程当中IP包被废弃的具体原因
  • 改善网络设置等

有了这些功能以后,就可以获得网络是否正常,设置是否有误以及设备有何异常等信息,从而便于进行网络上的问题诊断。

其中,ICMP差错报告报文共有以下5种,它们分别是:

  • 终点不可达
  • 源点抑制
  • 时间超过
  • 参数问题
  • 改变路由(重定向)

ICMP协议的两个典型应用:

  • 一个是分组网间探测PING(Packet Internet Groper)
  • 另一个是跟踪路由

这里就不详细介绍了。

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

VPN是一种隐藏您的互联网协议(IP)地址的服务

  • 由于 IP 地址的紧缺,一个机构能够申请到的IP地址数往往远小于本机构所拥有的主机数。
  • 考虑到互联网并不很安全,一个机构内也并不需要把所有的主机接入到外部的互联网。
  • 假定在一个机构内部的计算机通信也是采用 TCP/IP 协议,那么从原则上讲,对于这些仅在机构内部使用的计算机就可以由本机构自行分配其 IP 地址。

并且,在现在的网络中,IP地址分为公网IP地址和私有IP地址。公网IP是在Internet使用的IP地址,而私有IP地址则是在局域网中使用的IP地址。

私有IP地址是一段保留的IP地址。只使用在局域网中,无法在Internet上使用。

虚拟专用网络(VPN)的功能是:在公用网络上建立专用网络,进行加密通讯。在企业网络中有广泛应用。VPN网关通过对数据包的加密和数据包目标地址的转换实现远程访问。VPN可通过服务器硬件、软件等多种方式实现。

因此虚拟专用网中的各主机所分配的地址应该是无需申请,就可由本机构自由分配的专用地址(私人地址或私有地址),而不是需要申请的在因特网上使用的公有地址。

我们举例说明:下图中

10.1.0.1为私有地址、125.1.2.3为公有地址

假设部门A中的这台主机要给部门B中的另一台主机发送数据,它会将待发送数据封中成内部IP数据报,发送给路由器R1,其首部中源地址字段的值为部门A中该主机的IP地址,目的地址字段的值为部门B中另一台主机的IP地址。R1收到该数据报后,发现其目的网络必须通过因特网才能到达,就将该内部IP数据报进行加密,这样就确保了内部IP数据报的安全,然后重新添加上数据报的首部,封装成为在因特网上发送的外部数据报,且首部中源地址字段的值为路由器R1的全球地址,目的地址字段的值为路由器R2的全球地址。

路由器R2收到该外部IP数据报后,去掉其首部,将其数据部分进行解密,恢复出源来的内部IP数据报,这样就可以从其首部提取出源地址和目的地址,根据目的地址将该内部IP数据报发送给相应的主机。很显然两个专用网内的主机间发送的数据报是通过了公用的因特网,但在效果上好像是在本机构的专用网上传送一样。

网络地址转换NAT

在计算机网络中,网络地址转换(Network Address Translation,缩写为NAT),也叫做网络掩蔽或者IP掩蔽(IP masquerading),是一种在IP数据包通过路由器防火墙时重写来源IP地址或目的IP地址技术。这种技术被普遍使用在有多台主机但只通过一个公有IP地址访问因特网的私有网络中。它是一个方便且得到了广泛应用的技术。当然,NAT也让主机之间的通信变得复杂,导致了通信效率的降低。

个人小结:

最后,我们来理顺一下计算机网络的网络层的知识,首先我们知道,要想在不同的网络中进行通信,网络层提供给运输层的提供怎样的服务,是可靠传输服务,还是不可靠传输服务?不同的网络体系结构是不一样的,而互联网是不可靠传输服务;接着我们要想,如何在网络中,甚至在更大的互联网中寻找到目的主机,TCP/IP协议体系的网际层使用IP地址,然后我们学习了IP地址的历史分类以及首部组成;紧接着,我们学了在网络and互联网中采用的IP数据报的传输方法分别是:直接交付(在同一个网络中主机直接通信)、间接交付(在不同网络中用路由器作为中转通信);接着,我们要学习路由器是如何在互联网中进行中转的,这里涉及到了路由选择协议:静态路由选择(人工加进去的IP地址)、动态路由选择(路由器根据路由选择协议的规则来进行IP数据报的转发);动态路由选择中,将互联网互联网分成一个个自治系统,在自治系统内外部的路由器遵循不同的路由选择协议:内部路由协议IGP外部路由协议EGP;再详细介绍了常用的内外部路由协议以及工作流程,这里的路由选择协议是IP数据报在传输过程中路由器在不同网络中转遵循的协议,而接下来我们学习的ICMP网络控制报文协议主要用于在主机与路由器之间传递控制信息,包括报告错误、交换受限控制和状态信息等。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息,这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用,要区分开来,最后我们学习了在私有地址和公有地址之间的加密与转换的方法:VPN、NAT。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值