网络基本知识
最近看了一些关于网络的知识,需要在这里记录和笔记
本章讲解一下网络路由通讯相关的基本知识
基本概念
IP:在互联网中的通讯的一个标识地址,表示这个设备端的位置
MAC:本来是设备的网卡地址。
OSI:应用层(Application)、表示层(Presentation)、会话层(Session)、传输层(Transport)、网络层(Network)、数据链路层(Data Link)、物理层(Physical)
交换机:其实我的理解就是将两个端口的之间联系起来,然后这个联系实际上是通过MAC地址。大致猜测路由器会建立一个MAC和端口的映射表,将MAC地址和端口联系起来,然后中间进行消息的转发。
场景一
先讨论一个简单的:一个局域网下两个设备的通讯发生的事情。
A和B之间要建立TCP或者UDP通讯,在OSI通讯层中是需要知道对端的MAC地址和IP,但是实际编码的时候我们实际上只是关注对端的端口和IP.
首先A向B通讯,A会在设备端内部ARP映射表中查询,IP和MAC地址映射关系
如果没有查询到,A会通过ARP协议想局域网中询问 who is B ,B收到了这个ARP信息就会回应,这样A就知道这个IP对应的MAC地址
A就会对B进行组装TCP或者UDP资源包,交换机通过网线收到数据包,交换机通过解包知道这个包对应的目标位置,知道目标的实际物理端口从而进行转发.
B就收到了对应的数据包从而进行回应TCP协议的内容
场景二
A在路由器C下面,C和B 是一个交换机下
A和B之间建立TCP或者UDP通讯,A向B进行发起通讯,
- 首先A通过B的IP地址,和自己的子网掩码判断A和B不是一个局域网内,A需要向B发送的包中的IP层的IP 则是B,MAC层则是路由器的MAC地址
2)路由器收到了A发送的包,路由器基于IP通过复杂路由算法找到的下一个路由点,然后进行数据包的拆分和重新组装,直到B收到的A的请求包
场景三:
比这个复杂的就是三层路由的网络环境,大致这个两种情况的叠加。也就很好理解了