目录
一.网络层的功能
网络层:就是选择数据传输的最佳路径(不同网段之间只能进行路由器进行转发)
1.定义了基于IP协议的逻辑地址
2.连接不同的媒介类型
3.选择数据通过网络的最佳途径
4.网络层负责对子网间的数据包进行路由选择。此外,网络层还可以实现拥塞控制、网际互连等功能
5.基本数据单位为IP数据报
6.包含的主要协议:
- IP协议
- ARP协议
- ICMP协议
二.IP数据包格式
IP数据包格式,分为20字节固定部分(每个IP数据包必须包含)和最长40字节的可变长部分。各字段含义如下:
- 版本号(4bit):指IP协议版本,目前常用IPv4,表示为0100,通信双方版本须一致。
- 首部长度(4bit):IP数据包的包头长度(不包括数据) ,单位是32位字(1个32位字长是4字节)。
- 优先级与服务类型(8bit):用于表示数据包的优先级和服务类型,实现服务质量要求。
- 总长度(16bit):IP数据包的总长度,最长为65535字节,包括包头和数据。
- 标识符(16bit):IP对上层数据分片时,给所有分片数据分配一组编号放入该字段,保证分片能正确重组。
- 标志(3bit):和标识符一起传递,指示不可以被分片或者最后一个分片是否发出(完整) 。
- 段位偏移量(13bit):指示在一个分片序列中各分片的连接顺序。
- TTL(time to live)生命周期(8bit):防止数据包在网络中无限循环转发,每经过一个路由器 -1,值为0时数据包将被丢弃 。
- 协议号(8bit):指出封装的上层协议,如ICMP为1 、TCP为6 、UDP为17。
- 首部校验和(16bit):只检验数据报的首部,不包括数据部分。
- 源IP (发送方IP地址 32bit),目的IP(接收方IP地址 32bit)及可选项(可变部分,用于实现一些扩展功能,长度可变)。
三.ICMP协议
1.定义与基本概念:
ICMP是TCP/IP协议族的子协议,属于网络层协议 。它允许主机或路由器报告差错情况和提供有关异常情况的报告,为网络设备提供了一种标准化机制,用于传送连接和网络状态等重要信息。所有连接到网络的设备,包括路由器和端点设备,都可以处理ICMP消息。它在IP主机、路由器之间传递主机是否可达、路由是否可用等控制消息。并且,ICMP已经过调整,可以同时使用IPv4和IPv6。
2.主要作用:
-
诊断网络问题:网络管理员可以通过分析ICMP消息来定位网络故障,例如检测链路质量、识别网络延迟或丢包率。ping和tracert这两个常用网络管理命令就是利用ICMP协议来实现网络功能。ping用来测试网络可达性,tracert用来显示到达目的主机的路径。
-
支持路由选择:某些类型的ICMP消息被用于路由协议中,比如IGP(Interior Gateway Protocols)和EGP(Exterior Gateway Protocols)中的路由更新和维护。
-
协助网络配置:ICMP重定向消息能够指导主机调整路由表,以更优路径转发数据包。
-
错误报告:对于具有无连接通信模型的用户数据报协议(UDP)尤其重要。UDP不提供可靠、有序的数据包传输,发送UDP数据包时,数据包可能会丢失,也可能在传送时出现校验和错误等故障。如果发生这种情况,接收方会将ICMP错误报告消息发回给发送方,以通知该问题。
四.ping命令
1.Windows系统中常用参数
-t参数会一直不停的执行ping
-w 数字 超时等待时间
-n 数字 指定ping包的个数
-a 参数可以显示主机名称
五.ARP协议
1.ARP协议的作用
- 将IP地址转换成mac地址
- 检测IP地址是否冲突