网络基础的介绍
一、网络相关概念
1.为什么要产生网络?
因为计算机之间需要相互协作,所以网络的产生是必然的
2.协议
<1>初识协议
1)协议的作用:减少通信成本,同于快速形成共识
2)协议的本质是一种约定
3)协议分层是为了更好的进行模块化和解耦合
<2>再识协议
1)本地通信所有的设备是通过“线”连接起来的
2)网络通信:多台主机通过网络通信,本质也是从设备到设备,只不过是距离变长了
3)TCP/IP协议:本质是一种网络长距离通信的解决方案
4)TCP/IP协议也可以分层,是因为问题本身可以分层
5)网络协议栈必定是层状的
6)网络是操作系统的一部分,无论是Linux还是Windows他们的网络部分是一模一样的
<3>究竟是什么是协议?
协议就是约定好的结构体
二、网络传输的基本流程
<1>局域网网络传输流程图(以以太网为例)
1)MAC地址:用来标识数据链路层中相连的节点,长度为6Byte,一般用16进制+冒号表示
2)MAC地址通常是唯一的
3)没有交换机的情况下,一个以太网就是一个碰撞域--->共享的资源
所有发送数据的主机都要进行碰撞检测和碰撞避免--->互斥属性
----->以太网的本质是临界资源,主机的本质是执行流
4)主机之间的通信本质是两个协议栈在通信
5)网络协议栈每一层都有协议(同层之间认为自己和对方同层在直接通信)
细节1:(不考虑应用层)任何协议报头必须要能做到和有效载荷分离;报头中必须包含将自己的有效载荷交付给上层的哪一个的具体协议
细节2:底层收到报文,单该报文不是发送给我的,数据链路层直接丢弃
<2>跨网络传输的流程图
1)IP地址:在IP协议里用来标识网络中不同主机的地址
2)IPv4:4Byte;IPv6:8Byte
3)路由过程中,IP地址不变,MAC地址一直在变,因为MAC地址只在本局域网内有效
4)网络层的IP本质是给网络提供一层虚拟层,让世界上所有的网络都叫IP网络
5)路由器只管网络层和数据链路层
tips:MAC地址可看作”当下目标“,IP地址可看作”最终目标“