//小飞机 返回顶部

计算机网络_4网络层

1.简介与基本概念

  多个网络通过路由器互连称为一个互连网络,网络层处理与此相关的问题

  • 尽最大努力交付

  网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。每一个IP数据报独立发送,这样路由器简单,价格低。

  那么可靠性的任务交给谁来完成?运输层。

  • 虚拟互联网络

  物理互联不现实,因此通过路由器实现网络互联和路由选择。

  ICP/IP的做法是:网络层采用标准化协议,但互连的网络可以异构。互连的计算机网络使用相同的网际协议IP(Internet Protocol),但互连之后,就可以看成是同一个虚拟互连网络(internet),利用IP协议,使互连起来的从网络层看起来是一个统一网络,简称为IP网。

  • 分类的IP地址

①什么是IP地址?

  因特网是一个单一、抽象的网络,IP地址是给因特网的每台主机(或路由器)的每个接口分配的一个唯一的32位标识符,目前由ICANN(Internet Corporation for Assigned Names and Numbers)公司进行分配。

  分类的IP地址:IP地址 = 网络号(net-id) + 主机号(host-id)

②ABC类IP分析

  可指派网络数 指派网络号范围 主机号 占IP地址的
A

126=2^7-2

[1-126]

16777214=2^24-2 50%
B 16383=2^14-1 [128.1-191.255] 65534=2^16-2 25%
C 2097151=2^21-1 [192.0.1-223.255.255] 254=2^8-2 12.5%

  分级的作用:分配IP地址时仅分配网络号,主机号自主分配,便于管理;路由器根据网络号转发分组,不考虑主机号,减少路由表存储空间以及查找路由表的时间;

③举个栗子

  • IP地址与硬件地址

  物理地址:数据链路层和物理层使用的地址,放在MAC帧的首部

  IP地址:网络层和其上使用的地址,为逻辑地址,放在IP数据报的首部。

2.网际协议IP

2.1网际协议IP及配套协议

  与IP协议配套使用几个协议。

  IP数据报的意义

  • 实验:网络命令的使用

  Ping是一个使用ICMP(网际控制报文)协议的程序,可以在IP主机和路由器之间传递控制消息,可以测试连通性。Windows上运行Ping会发送4个ICMP回送请求,每个32字节,如果正常的话,就会得到4个回送应答。

运行命令行cmd,进行实验

非常重要的小技巧!:命令+空格+?可以弹出命令的提示

1. 检测网络故障

①Ping 127.0.0.1:本地环回地址

本地IP会向127.0.0.1发送请求,127.0.0.1收到后会返回数据到本机,均在本地进行,相当于饶了一圈,所以称为环回地址,可以验证本地计算机是否正确安装了TCP/IP协议,配置是否正确。

TTL:Time to Live,指的是数据包最多可以经过多少路由器,每经过一次,TTL-1,当TTL为0时2路由器会丢弃。

②Ping本机IP:检查本地配置是否存在问题

③Ping其他IP:如局域网内其他IP,网关IP,远程IP等,均可检测连通性

④Ping localhost:本地主机,127.0.0.1的别名

⑤Ping www.×××.com:如有故障,则表示本地DNS的IP地址不正确,或者DNS服务器故障

2.网络状态Netstat:显示与IP.TCP,UDP,ICMP协议相关的统计数据,一般来检测本机各端口的网络连接

①关于以太网的统计数据:Netstat -e

②显示所有协议的使用状态:Netstat -s

3.IPconfig:显示当前所有的TCP/IP配置值,DHCP(刷新动态主机配置协议)和DNS(域名系统)的设置。

①给出所有接口配置:IPconfig /all

②刷新配置:IPConfig /renew,使用DHCP的客户端向DHCP重新租用IP地址(一般网卡会给一个与之前一样的IP地址)

4.ARP命令:查看本地或另一台计算机的ARP高速缓存中的内容

①arp -a:查看全部项目

5.Tracert:跟踪路由路径,也就是数据报访问目标的路线图

①直接使用Tracert,例如Tracert www.163.com访问网易服务器

6.Netstat:提供关于NetBIOS的统计数据

①NBtstat -a 另一台主机的IP地址:查看对方主机的MAC地址

2.2地址解析协议ARP

  每个主机会设一个ARP高速缓存,存储的是本局域网上的各主机和路由器的IP地址到硬件地址的映射表。当主机A要向本数据网上的主机B发送IP数据报时,就先在ARP高速缓存查看有没有B的IP地址,如果有,就找出其硬件地址,写入MAC帧,通过局域网把MAC帧发往此硬件地址。

  如果主机A没有主机B的IP地址,或者主机A刚通电,高速缓存为空怎么获得其他地址呢?

step1:主机A在局域网广播发送ARP请求,内容为:“我的IP地址是××,硬件地址是××,我想知道IP地址为××的主机B的硬件地址”

step2:局域网上所有主机运行的ARP进程收到此ARP请求。

step3:主机B收到后向主机A发送ARP响应分组,给出硬件地址,其他主机则忽略。

step4:主机A收到主机B的ARP响应分组后,在ARP高速缓存中写入主机B的IP地址到硬件地址的映射。

2.3IP层转发分组

  IP转发分组的过程是“走一步看一步”的,例如从家里到机场,不知道该怎么走,那么每到一个路口(路由器)就问一次路,路人(路由表)会告诉你,下一步怎么走,重复这个过程直到抵达最终目的地。

  分组转发具体算法如下:
①数据->路由器->从数据报的首部提取目的主机的IP地址D,得出目的网络地址为N。

②路由器判断:若网络N与路由器直连,则直接交付。否则③

③查路由表:若有目的地址为D的特定主机路由,则传给它,否则④

④查路由表:若有到网络N的路由,则传送,否则⑤

⑤查路由表:若有默认路由,则传送,否则报告出错。

  结合上述,路由器有几个重要特点:

①路由表记录网络,而不是主机号。每个网络有很多主机,要是记主机号,路由表就会太庞大。

②走一步,看一步,路由主要的信息是目的网络地址+下一跳地址。知道下一跳就可以前往下个路由,再根据目的网络地址查下一跳地址,直到到达最后一个路由器,再直接交付。

③优先传送特定主机路由。可以对特定的目的主机指明其路由,这样会优先传给该路由。(便于调试等)

④使用默认路由以减少路由表空间和搜索时间。当找不到目的网络时,路由器就会传给默认路由,在网络只有很少的对外连接时比较有用。

posted @ 2022-04-14 23:21  Yo然儿  阅读(215)  评论(0)    收藏  举报
//看板娘 //页首目录 //页脚目录