Network Protocols and Architecture (3)

PS: message 我翻译的是消息,应该是报文更好点。

Week3、 Communicating on the Local Area Network

1. Distributing Messages to Other Networks

1.1 Dividing the Local Network

随着网络规模的增长,通常有必要将一个接入层网络划分成多个接入层网络。基于不同的标准有不同的划分网络方法,包括:

  1. Broadcast containment 广播控制
  2. 安全需求
  3. 物理位置
  4. 逻辑分组

分布层将这些独立的本地网络连接起来,控制其间流量。它负责确保本地网络主机上主机之间的通信保持在本地。只有发送给其他网络的流量才会被传递出去。

组成分布层的网络设备被设计用来互联网络,而不是单独的主机。单个主机通过访问层设备(如交换机)连接到网络。访问层设备通过分部层设备(如路由器)彼此连接。

查看下图有关互联独立网络的附加信息

Broadcast_Containment

分布层中的路由器可以将广播限制在需要监听它们的本地网络上。尽管广播是必要的,但是在同一个本地网络上连接太多的主机会产生过多的广播流量,进而会减慢网速。

Security

分布层中的路由器可以分离并保护机密信息所在的某些计算机组。路由器还可以隐藏内部计算机的地址,以防止受到攻击,并控制谁可以进入或离开本地网络。

Locations

分布层的路由器可用于互联组织中地理位置分散的各个本地网络

Logical_Grouping

分布层中的路由器可用于对具有共同需求或用于访问资源的用户(例如公司内的部门)进行逻辑分组。

1.2 Now We Need Routing

大多数情况下,我们希望我们的设备可以连接到本地网络之外:连接到其他家庭、企业和因特网。本地网段之外的设备称为远程主机。当源设备将数据包发送ou到远程目标设备时,则需要路由器和路由的帮助。路由是确定到达目的地的最佳路径的过程。

路由器是连接多个第三层IP网络的网络设备。在网络的分布层,路由器引导流量并执行其他对网络有效运行至关重要的功能。路由器和交换机一样,能够解码、读取发送给它们的消息。与基于第二层MAC地址进行转发决策的交换机不同,路由器基于第三层IP地址进行转发决策。

数据包格式包含目标主机和源主机的IP地址,以及在它们之间发送的消息数据。路由器读取目标IP地址的网络部分,并使用它来找到哪个连接的网络是将消息(报文)转发到目标的最佳途径。

Q: 不要和以太网帧弄混了,我感觉我已经有点混了,到后面再理一理,网络层次不同。。。

只要源主机和目标主机的IP地址网络部分不匹配,就必须使用路由器来转发消息(报文)。如果位于网络1.1.1.0上的主机需要向网络5.5.5.0上的主机发送消息,则该主机会将消息转发到路由器。路由器收到该消息后,对以太网帧进行解封,然后读取IP数据包中的目标IP地址。然后,它确定消息将发往的位置,将数据包重新封装回新的帧(Nice!),并将帧转发到其目的地。

观看下面动画,查看转发消息时交换机和路由器如何使用帧中的MAC和IP地址。

forwarding_message

Q :这怎么和我之前看的以太网帧格式不同,IP packet 封装在哪个部位??data 里??

2. Keeping a Table

2.1 Selecting a Path

路由器如何决定将消息发送到目标网络的路径???

路由器上的每个端口都连接到不同的局域网。每个路由器包含一个表,表中列出了所有本地连接的网络以及其连接的端口。这些路由表还可以包含有关路由器用来访问非本地连接的其他远程网络的路由信息。

路由器接收到帧以后,会对帧进行解码,以获得包含目标IP地址的数据包。它将目标IP地址的网络部分与路由表中列出的网络进行匹配。如果目标网络地址在表中,则路由器会将包封装在新帧中以将其发送出去(PS: 他还将在新帧中插入新的目标MAC地址,并重新计算FCS字段)。它将新帧从路径关联的接口转发到目标网络。将数据包转发到目标网络的过程称为路由

路由器接口不转发寻址到本地网络广播IP地址的消息。因此,本地网络广播不会通过路由器发送到其他本地网络。
观看以下动画,查看路由器如何转发数据包、阻止广播。

Selecting_a_Path

2.2 Building the Tables

路由器将数据包转发到以下两个位置之一:

  • A、包含实际目标主机的直接连接的
  • B、转发到到达目标主机的路径上的另一个路由器。

当路由器封装帧以将其转发出以太网接口时,他必须包含目标MAC地址。如果目标主机是本地连接到路由器的网络的一部分,则这是实际目标主机的MAC地址。如果路由器必须将数据包转发到另一台路由器,它将使用连接的路由器的MAC地址。路由器从ARP表获取这些MAC地址。

每个路由器接口都是其所连接的本地网络的一部分,并为该网络维护自己的ARP表。ARP表中包含该网络上所有单个主机的MAC地址和IPv4地址。

观看以下动画,查看主机和路由器如何处理和转发数据包。

Build_the_Table

2.3 How Routers Use Tables

路由器在本地和远程网络之间传输信息。为此,路由器必须使用路由表来存储信息。路由表与单个主机的地址无关。路由表包含网络的地址以及到达这些网络的最佳路径。

有两种方法进入路由表:
1、通过从网络中其他路由器接收到的信息动态更新。
2、由网络管理员手动输入。
路由器使用路由表来确定使用哪个接口将消息转发到其预期目的地。

如果路由器无法确定将消息转发到何处,它将丢弃该消息。((⊙o⊙)…),网络管理员使用默认路由配置路由表,以防止丢弃数据包,因为到目标网络的路径不在路由表中。默认路由是路由器转发包含未知目标IP网络地址的数据包的接口。这个默认路由通常连接到另一个可以将包转发到其最终目的地网络的路由器。

查看下图信息,以查看路由表中每种条目类型的描述。

Routing_Table

  • Type 连接类型,C代表直接
  • Network 目的地的网络地址
  • Port 用于将数据包转发到指定目标网络的路由器上的接口。

2.4 Sending to Remote Networks

主机用于将消息发送到远程网络上的目标的方法与主机在同一本地网络上发送消息的方法不同。当主机需要将消息发送到位于同一网络上的另一个主机时,它将直接转发该消息。主机将使用ARP发现目标主机的MAC地址。IPv4数据包包含目标IPv4地址,并将该数据包封装到包含目标MAC地址的帧中并转发出去。

当主机需要将消息发送到远程网络时,它必须使用路由器。主机像以前一样在数据包中包含目标主机的IP地址。但是,当将数据包封装到帧中时,它将路由器的MAC地址作为帧的目标地址。这样,路由器将基于MAC地址接收帧

源主机如何确定路由器的MAC地址?通常在其TCP/IP设置中配置的默认网关地址为主机提供路由器的IPv4地址。默认网关地址是与源主机连接到相同本地网络的路由器接口的地址。本地网络上的所有主机都使用默认网关地址将消息发送到路由器。而当主机知道默认网关IPv4地址时,它可以使用ARP确定MAC地址。然后将路由器的MAC地址放在帧里,该帧发往另一个网络。

查看附图以查看不同设备的IP配置和默认网关地址

Sending_to_Remote_Networks

H2_H3_IP

The subnet mask is used along with the source IP address to determine if two hosts are on the same network. An AND operation is performed on the IP address and subnet mask to determine the network.
子网掩码与源IP地址一起使用,以确定两个主机是否在同一网络上。对IP地址和子网掩码执行AND操作以确定网络。

3. Creating a LAN

3.1 Local Area Networks

局域网(LAN)指一个局域网或一组统一管理控制的互联局域网。在联网初期,LAN被定义为存在于单个物理位置的小型网络。虽然LAN可以是安装在家庭或小型办公室中的单个本地网络,但LAN的定义已演变为包括由数百个主机组成的互连的本地网络,这些主机安装在多个建筑物和位置中。

要记住的是: 局域网内的所有本地网络都处于一个管理控制之下。局域网的其他共同特征是它们通常使用以太网或无线协议,并且它们支持高数据速率。

内部网通常用于指属于某个组织的专用局域网,旨在仅供该组织的成员、雇员或其他经过授权的人访问。

查看下图中的不同局域网类型,请注意是否存在可以创建或限制广播域的设备。

Single_LAN

Multiple_LAN

PS:局域网和子网概念不同

3.2 Assigning Hosts to a LAN

在LAN内,可以将所有主机放置在单个本地网络上,也可以将它们划分在由分布层连接的多个网络之间。答案取决于所需的结果。如图1所示,将所有主机放置在单个本地网络上可以使所有其他主机看到它们。这是因为只有一个广播域,并且主机使用ARP相互查找。

在简单的网络设计中,将所有主机保留在单个本地网络中可能是有益的。但是,随着网络规模的扩大,增加的流量将降低网络性能和速度。在这种情况下,将某些主机移至远程网络可能会有所帮助。

如图2所示,在远程网络上放置其他主机将减少流量需求的影响。但是,如果不使用路由,则一个网络上的主机将无法与另一网络上的主机通信。路由器增加了网络配置的复杂性,并且可能导致从一个本地网络发送到另一个本地网络的数据包出现延迟或时间延迟。

Figure 1. Placing All Hosts in One Local Network Segment

Figure 2. Placing Hosts in Remote Network Segments


   转载规则


《Network Protocols and Architecture (3)》 Adward 采用 知识共享署名 4.0 国际许可协议 进行许可。
  目录