目录
一、前言
为了更加深入了解网络层和传输层的相关技术,本次继续拓展网络层和传输层的基础知识,同时携带相关的验证和总结。
二、学习目的
- 了解IP地址作为逻辑地址在寻址后,如何做错误侦测和消息反馈的,如ping的时候,对端服务未响应,谁在管理消息机制。
- 了解计算机同网段,在网络层如何进行传输的。
- 了解计算机之间相互连接和关闭的方式。
- 了解各个协议传输的特征和优缺点。
三、网络层
3.1ICMP基础知识
ICMP协议的定义:它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
ICMP协议的作用:在TCP/IP协议族中是一个侦测错误与回馈信息机制,通过IP数据包封装的,用来发送错误和控制消息。
ICMP消息反馈如下:
类型 | 编码 | 描述 |
---|---|---|
0 | 0 | Echo Reply |
3 | 0 | 网络不可达 |
3 | 1 | 主机不可达 |
3 | 2 | 协议不可达 |
3 | 3 | 端口不可达 |
5 | 0 | 重定向 |
8 | 0 | Echo request |
命令展示如图:
整体展示,如图所示
在做ping命令时的,数据抓包。
3.2ARP基础知识
ARP(地址解析协议)协议定义:是根据IP地址获取物理地址的一个TCP/IP协议。
ARP协议作用:节约资源。
ARP工作原理:主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存。
原理如图所示:
命令知识:
arp -a 查看arp缓存
arp -d 清空arp缓存
消息体展示,如图:
四、传输层
3.1TCP基础知识
TCP协议定义:传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。
TCP协议优势:
(1)基于流的方式;
(2)面向连接;
(3)可靠通信方式;
(4)在网络状况不佳的时候尽量降低系统由于重传带来的带宽开销;
(5)通信连接维护是面向通信的两个端点的,而不考虑中间网段和节点。
TCP协议做了如下的规定:
①数据分片:在发送端对用户数据进行分片,在接收端进行重组,由TCP确定分片的大小并控制分片和重组;
②到达确认:接收端接收到分片数据时,根据分片数据序号向发送端发送一个确认;
③超时重发:发送方在发送分片时启动超时定时器,如果在定时器超时之后没有收到相应的确认,重发分片;
④滑动窗口:TCP连接每一方的接收缓冲空间大小都固定,接收端只允许另一端发送接收端缓冲区所能接纳的数据,TCP在滑动窗口的基础上提供流量控制,防止较快主机致使较慢主机的缓冲区溢出;
⑤失序处理:作为IP数据报来传输的TCP分片到达时可能会失序,TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层;
⑥重复处理:作为IP数据报来传输的TCP分片会发生重复,TCP的接收端必须丢弃重复的数据;
⑦数据校验:TCP将保持它首部和数据的检验和,这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到分片的检验和有差错,TCP将丢弃这个分片,并不确认收到此报文段导致对端超时并重发。
TCP 报文:
源端口号 | 目标端口号 | |||||||
序列号 | ||||||||
确认号 | ||||||||
首部长度 | 保留 | UGR | ACK | PSH | RST | SYN | FIN | 窗口大小 |
检验和 | 紧急指针 | |||||||
选项 |
TCP的三次握手:
TCP的四次挥手
3.2UDP基础知识
UDP定义:一个无连接的传输协议。
UDP优势:消耗低,速度快。