互联网的核心是一系列的协议,总称 互联网协议,规定计算机如何连接和组网
四层模型 应用层 传输层 网络层 网络接口层
应用层 传输层 网络层 数据链路层 物理层
应用层 表示层 会话层 传输层 网络层 数据链路层 物理层
物理层 : 电脑连接网络 双绞线 光纤 无线电波等,把电脑和网络连接起来,规定网络的电气特性,负责传输0和1的电信号
数据链路层 : 物理层的上方 确定物理层传输的0和1的分组方式和代表的意义,以太网 的协议占据主导,大家都遵循Ethernet的协议
以太网协议:一组电信号构成数据包(帧);每帧=标头(head)+数据(data);标头=发送者 接收者 数据类型等,18哥字节;数据=数据,46-1500字节,数据太长分割发送
网卡地址就是接收地址,以太网规定连接网络必须有网卡接口,就是mac地址,网卡地址mac是独一无二的48个二进制,就是12个十六进制数
addr协议来获取mac地址,向本网络所有计算机都发送数据包,每台计算机对比标头是不是自己的mac地址,是就接收不是就丢弃,就是广播
网络层 :依靠mac地址就可以找到世界上任何电脑了,但是广播的方式效率太低 不安全,而且子网络的数据包是没法广播的,在非子网络采用路由的方式发送,就诞生了网络层
引入一套新的地址,区分发送方和接收方是不是同一个子网,就是网络地址 网址;这样每台计算机地址= 网络地址 + mac地址;mac地址是绑定网卡的,网址是网络管理员分配的
网络地址的协议:IP协议,现在广泛使用的是第四版IPV4 ,32哥二进制位组成,通常分成4段从 0.0.0.0 ~ 255.255.255.255
ip协议发送的数据叫做ip数据包= 标头 + 数据;标头 = 版本 长度 ip地址等,20-60字节;数据就是ip数据包的具体内容,最大65535字节
传输层:有了mac地址和ip地址就能在任何两台计算机之间通信;一台计算机上有不同的进程在运行都需要网络发收数据,如何区分ip数据包是哪个进程的呢,这就是port的引入
port就是使用网卡的进程的编号(0-65535的整数,正好16哥二进制位,0-1023被系统征用了),每个数据包都发送到主机的特定的端口号,进程通过监听自己的端口号就知道是自己的数据包
加入端口号的协议:udp协议,就是在数据前边加上端口号 upd数据包 = 标头(8字节) + 数据(最大65535);标头主要定义发送端口和接收端口 数据部分就是数据包
tcp协议 解决可靠性的传输问题,就是确保数据不会丢失,没有长度限制,但是资源消耗多实现复杂
应用层:应用层收到传输层的数据,要对数据进行解包;这层 规定了通信的数据格式,统一的数据格式才知道怎么解开包的数据