一、以太网帧格式
1、什么是广播帧和多播帧?
广播帧:数据包的目标 MAC 地址所有 bit 都为 1,局域网内所有网卡都能接收到这个帧。
多播帧:将网络中某些主机网卡设置成多播传送工作模式,网卡绑定多播地址,即网卡可接收目标 MAC 地址和多播地址的帧。
2、无法修改网卡的 MAC 地址,但可以自定义网络连接中的 MAC 地址,让计算机工作在自定义的 MAC 地址下。
3、MAC 帧的要求
(1)帧最小长度为 64 字节
(2)帧间最小间隔为 9.6 us
4、为什么 MAC 帧无结束定界符?
(1)需要开始帧定界符,在 MAC 帧前插入 8 个字节,7 字节前同步码 + 1 字节帧开始定界符。
(2)以太网规定帧间最小间隔为 9.6us,用于清除接收缓存便于下次接收,因此帧与帧之间有间隔。
(3)由于帧间存在间隔,那么找到帧开始定界符后连续到达的比特流都属于同一个帧,不需要结束定界符。
二、网络层
(1)PC1 的 ARP 表项中没有 PC2 的 MAC 地址,因此 PC1 将广播一个 ARP 请求,交换机通过 port1 接收到这个 ARP 请求,此时交换机查找内部转发表发现无对应关系,即将 PC1 的 MAC 地址与端口信息更新到交换机内部转发表。
(2)交换机会广播这个 ARP 请求到局域网内每个端口,PC2 接收到 ARP 请求后对比 IP 地址,发现就是传给自己的,接着返回一个 “ARP 应答”,交换机收到 ARP 应答后,将 PC2 的 MAC 地址与端口信息更新到交换机内部转发表。
(3)PC1 收到 “APR 应答”后,将 PC2 的 MAC 地址与端口信息更新到自己的 ARP 缓存表中,下次再与 PC2 通信直接发送数据到 PC2,不需要再次发送广播包。
2、静态路由
由管理员告诉路由器没有直连的网络下一跳应该给谁,因此管理员可以根据配置的路由表决定数据包往哪条路径走。它只适合网络规模较小的场景。
例:实现 PC0 和 PC1 通信,如何添加路由表?
(1)首先配置各网段中设备的 IP 地址,在各自网段内能 ping 通,然后添加静态路由表告知各路由器它没有直连的网段应该怎么走。
路由器直连网段不用配置,它自动添加到路由表。如:Router0 直连两个网段 198.168.0.0 和 172.16.0.0 已自动添加到路由表。
查看 Router0 的路由表:
(2)要实现 PC0 和 PC1 通信,手动配置静态路由:
Router0 添加静态路由:ip route 192.168.1.0 255.255.255.0 172.16.0.2(到目的网段,下一跳应该给 172.16.0.2)
Router1 添加静态路由:ip route 192.168.1.0 255.255.255.0 172.16.1.2(到目的网段,下一跳应该给 172.16.1.2)
Router2 添加静态路由:ip route 192.168.1.0 255.255.255.0 172.16.2.2(到目的网段,下一跳应该给 172.16.2.2)
这时候 PC0 ping PC1 仍无法 ping 通,但此时 PC0 发出的数据包已经达到了 PC1,但 PC1 响应回复不知如何走。
Router3 添加静态路由:ip route 192.168.0.0 255.255.255.0 172.16.2.1(到目的网段,下一跳应该给 172.16.2.1)
Router2 添加静态路由:ip route 192.168.0.0 255.255.255.0 172.16.1.1(到目的网段,下一跳应该给 172.16.1.1)
Router1 添加静态路由:ip route 192.168.0.0 255.255.255.0 172.16.0.1(到目的网段,下一跳应该给 172.16.0.1)
3、动态路由
路由器自己学习到每个网段如何走并自己选择最佳路径。
RIP 协议
(1)每个路由器周期性广播路由表给其它路由器,且认为途径的路由器数量最少的路径即为最佳路径。
(2)最大跳数 15 跳,如果超过 15 跳就被认为不可到达,因此 RIP 协议不适合网络规模较大的环境。
(3)仅和相邻路由器交换信息,交换的信息是路由表,按固定时间间隔(一般 30 s)交换路由信息。
需要给每个路由器配置 RIP 协议,如:RouterA 配置 RIP 协议
router rip
network 192.168.0.0
network 192.168.1.0
network 192.168.2.0
network 192.168.7.0
OSPF 协议:根据带宽选择最佳路径。
4、ARP 协议和逆向 ARP 协议
ARP 协议:发送广播包解析同网段目标 IP 地址的 MAC 地址;如果数据传递到其它网段,就解析路由器的 MAC 地址。
逆向 ARP 协议:发送广播包根据 MAC 地址解析 IP 地址,常用于主机使用 DHCP 协议从 DHCP 服务器请求 IP 地址。
三、传输层
1、传输层如何传输数据?
(1)当计算机 A 通过网络访问计算机 B 时,计算机 A 动态生成一个源端口号(目的是告诉 B 返回数据时把数据送到自己的哪个端口),在传输层添加源端口号和目的端口号。
(2)计算机 B 收到数据后会读取数据包的源端口号和目的端口号,B 返回的数据后就把原来数据包中的原端口号作为目的端口号,而把自己的端口号作为原端口号再送回 A。