TCP/IP协议栈、ARP协议及以太网技术

       
-------------已经到底啦!-------------
 

关于网络基础知识的归纳总结;后续会(也可能不会)更新

OSI参考模型

20190422230945318.PNG

  1. 物理层:定义了一些介质,包括双绞线,光纤,网线等等。(Attention:传递信息索利用的设备,如上等等,并不在物理层协议之内,而是在物理层协议的下面)网络通信的目的是将数据从一端传输到另一端,在链路上传输的只能是数字信号。(数字信号有两种可能:0和1)
    数据单位:比特流

数据终端设备(Data Terminal Equipment,DTE)
具有一定的数据处理能力和数据收发能力的设备,用于提供或接收数据。常见的DTE设备有路由器、PC、终端等。

数据通信设备(Data Communications Equipment,DCE)
在DTE和传输线路之间提供信号变换和编码功能,并负责建立、保持和释放链路的链接。常见的DCE设备有CSU/DSU、NT1、广域网交换机、MODEM等。
两者的区别是:DCE提供时钟,而DTE不提供时钟;DTE的接头是针头(俗称公头),而DCE的接头是孔头(俗称母头)。

  1. 数据链路层:是提供对物理层的控制,在线路两端去协商什么是0,什么是1.也就是说如果使用的是网线的话,是使用高频还是低频,需要两端去协商一致。具有流量控制功能
    数据单位:帧(SMAC、DMAC),随着每一段链路发生改变

  2. 网络层:实现跨线路的数据传输。主要负责寻找地址和路由选择
    数据单位:包(打包)(SIP、DIP)

  3. 传输层:进行端对端的控制而无需在路由器上处理(TCP/UDP)
    数据单位:段(分段)

983980-20161122175036159-1060298763.png
拟物化来说,传输层就是传输你选购的物件,网络层则是打包好这批物件从出发地到终点站的传输,数据链路层则是将所有物件封装在集装箱中在传输中途径大的中转站分类拣货MAC地址发生改变而原有的IP地址不改变的过程
QQ截图20210916100704.png

20190422230945318.PNG

TCP/IP分层模型

OSI和TCP/IP的区别

20160818160129197.png

QQ截图20210916101855.png

TCP原理

QQ截图20210916101903.png

QQ截图20210916101945.png

QQ截图20210916102014.png

QQ截图20210916102022.png

QQ截图20210916102029.png

TTL(TIME TO LIVE)值的功能:防止环路

ARP协议

ARP(地址解析协议)
根据已知的IP地址解析获取相对应的MAC地址

QQ截图20210916102348.png

QQ截图20210916102359.png

QQ截图20210916102411.png

QQ截图20210916102419.png

QQ截图20210916102426.png

假设主机A想要访问主机C需要知道主机C的SMAC&DIP
主机A发送一个数据包给主机C获得C的MAC地址映射在ETH_II表中、ARP中存在SIP\DIP\SMAC
ARP报文是以广播的形式进行发送
ARP报文不能穿越路由器,不能转发到其他广播域
免费ARP可以用来探测IP地址是否冲突

以太网技术

以太网是建立在CSMA/CD(载波监听多路访问、冲突检测)机制上的广播型网络,只是局域网中的一个协议,并不等同局域网
QQ图片20210916090211.png
常见的以太网设备包括Hub、交换机等。交换机工作在数据链路层,具有检查并转发的过程;转发数据帧,有效隔离冲突域
但在交换式的以太网中无法隔离广播域
==广播域:交换机不能隔离广播域,路由器可以隔离广播域==

QQ图片20210916091055.png

每一个以太网卡上都有一个特有的MAC地址用来标识
QQ图片20210916091240.png

以太网帧

QQ图片20210916091937.png
通常使用第一种
802.3格式的典型:ISIS动态路由协议

MAC地址和IP地址的差别:

  1. 以太网的MAC地址:48bit 6 Byte IP地址:32bit
  2. MAC地址唯一不可变 IP地址唯一却可变
  3. 基于制造商进行MAC地址分配 基于网络拓扑进行IP地址分配
    MAC地址构成:
    OUI:厂商代码,由IEEE分配 3 Byte 24bit
    制造商分配: 3 Byte 24bit

MAC地址可分为单播、广播、组播MAC地址
QQ截图20210916093221.png

  1. 单播以太帧:一对一的传输
    QQ截图20210916093314.png
  2. 组播以太帧:一对多的传输
    QQ截图20210916093455.png
  3. 广播以太帧:多对多的传输
    QQ截图20210916093410.png

以太网中的交换机

QQ截图20210916093945.png

QQ截图20210916094135.png
初始情况下,交换机的MAC地址表是空的,表项中不存在目的MAC地址的信息,此时DMAC为未知单播帧。

那交换机该如何处理呢?

由于表中不存在DMAC,那么交换机就会从所有端口(除了接收SMAC的端口)将信息发送出去

上面是我的通俗见解;下面是官方解释:
图片1.png
假设主机A想要访问主机B
SIP: 10.1.1.1
DIP: 10.1.1.2
SMAC: 00-01-02-03-AA
DMAC: 00-01-02-03-BB

QQ截图20210916100131.png

交换机刚刚启动时,里面没有任何映射关系
1、首先根据SMAC地址更新MAC地址表,将收到该数据帧的接口和SMAC地址的对应关系映射到MAC地址表中
2、查看MAC地址,如果MAC地址表中有该地址,根据对应的接口进行转发,如果MAC地址表中没有该地址,则以泛洪的形式发送该报文(泛洪:除收到该数据帧的接口之外,全部发送)

主机B收到并处理该数据帧,向主机A回复,并将数据帧发往交换机
(交换机的两个任务:学和转发)

同网段数据通信全过程

QQ截图20210916104143.png

交换机刚上电时MAC地址表为空
QQ截图20210916104154.png

QQ截图20210916104325.png
接收到主机1的数据帧,记录他的SMAC地址和端口号
QQ截图20210916104355.png

主机2收到来自主机1发送的数据帧后,返回响应给主机1;此时SMAC为MAC2,SIP为IP2;交换机接收到主机2的响应数据帧依旧学习,记录他的SMAC地址和端口号
QQ截图20210916104403.png

MAC地址的老化时间是300s