从设备分析计算机网络
为了实现计算机网络的通信,最简单的我们可以直接将计算机用网线连接起来,这样两台计算机之间就可以通信了
但是设备多了以后,想要实现计算机的通信,自然线也就多了起来,且连接的错乱复杂
这时会出现了一个中间设备HUB集线器
集线器上连接的设备之间的通信使用广播,设备A想发送数据到设备B,将数据加上源地址和目标地址的MAC地址封装成帧(也就是我们平时所说的MAC帧),然后进行广播,B听到以后进行接收
很明显这样如果多个设备同时广播会造成信息的干扰,所以就有了CSMA/CD协议,在发生前先侦听,信道上没人在发数据才发送,并且在发送的时候进行碰撞检测,一旦发生了碰撞就停止发送
这样每次只有一个设备能发送数据,链路的利用率很低,只适合很小的规模的网络,所以又有了交换机进行改进
交换机记录了每台设备的MAC地址和交换机的端口的映射关系,这样就可以由交换机实现一对一的数据发送而不用广播,并且交换机使用的线实际上就可以是现在的网线,可以进行全双工的通信
但是交换机在最初维系的映射关系表是空表,要有一个建表的过程,建表的时候依旧是在广播
交换机可以进行桥接,所有有人想用交换机区去连接全世界的互联网,但只用交换机去连接全世界的设备进行通信也是不太现实的,因为
① 交换机维系的记录表记录的数量只有几千个,所以并不是所有的地址都能被记录
② 没有被记录的地址会使用广播进行查找,可能会造成消息的洪范,效率也很低
所以使用MAC地址和交换机去进行网络的连接也只适合小范围,主机数量少的的网络,为了让全世界的网络进行通信,就有了路由器
通过路由器去连接两个网络,为了在网络层面去标识每个主机,就有了IP地址,IP地址不仅仅是去标识每个计算机,更重要的是去标识一个网络,通过子网掩码等东西判断当前设备在哪个网络下,就更便于数据的转发
为什么有了IP地址还需要MAC地址
IP地址是不能直接用来通信的,他只是一个抽象的地址,我们通信还是需要真实的MAC地址,主机A向主机C跨网段发送消息,虽然IP数据包写的源地址和目的地址都是A和C的IP地址,但是经过不同的路由器进行转发都要把源目的MAC地址变成当前的MAC地址和下一跳的目的地址才能通信
我们家里的路由器
我们家里使用的路由器实际上是 路由器+交换机+无线AP
外网和内网
因为IPV4地址即将用完,所以使用了NAT技术,使用内网和外网概念
来源:CSDN
作者:今天又学java了
链接:https://blog.csdn.net/weixin_43907800/article/details/104533484