网络
人与人之间要有语言才可以进行通讯,语言就是一种可以共享数据信息的规则,那么计算机与计算机之间也要有统一的连接标准才能够完成相互通信,这个标准被称为互联网协议,而网络是就是物理连接介质(电平信号) + 互联网协议。
互联网协议
TCP/IP 五层
互联网协议是有很多的,TCP/IP 五层模型的出现目的就是将众多的互联网协议根据功能以及解决的问题分成几个模块,这样更容易发现问题并且去针对性的处理问题。
每层运行的常见设备如下所示:
物理层
物理层主要解决的是数据如何通过介质从一台机器传送给另外一台机器的问题。物理层通过基于电器特性发送高低电平信号传输数据,从一个基站传送到另一个基站。点平即是 “电压平台”,指的是电路中某一点电压的高低状态,在网络信号中高电平用数字 “1” 标识,低电平用数字 “0” 表示。电平的高低是个相对概念,3v 对于 7v是低电平,但对于 1v 就是高电平。
在这一层的工作的基建主要有中继器、中继塔、集线器、双绞线、光缆等。
数据链路层
由于单纯的电平信号是没有任何意义的,所以我们需要一套协议以及设备来将这些电平信号进行处理,处理成为互联网中可以传输的内容,比如电平信号多少位一组,每组表示什么含义。数据链路层的功能就是定义电平信号的分组方式。
1. 以太网协议
数据链路层基于以太网协议进行数据传输,通过mac地址寻址的广播方式进行数据传输,只能在局域网内传播。
Ethernet 以太网规定:一组电平信号构成一个数据包,叫做“帧”,每一数据帧由报头 Head 和数 data 两部分组成。
Head:固定18字节,其中发送者 / 源地址6字节,接受者 / 目标地址6字节,数据类型6字节。
Data:最短46字节,最长1500字节。
数据链路层的数据最短为64字节,最长为1518字节,超过的部分分片发送。
2. MAC 地址
数据链路层中的数据包中Head部分有发送者与接受者的地址,这个地址便是网卡的mac地址,Ethernet 规定接入 Internet 的设备必须配有网卡,Mac地址就是网卡的地址。所以数据包寻址的时候,会根据网卡的地址来决定数据会被谁所接受,这也是网卡所起的作用。
Mac地址,每块网卡在出厂的时候都会刻上一个全世界唯一的Mac地址,这个地址是不允许重复的,长度为48位的二进制数,通常用12位的十六进制数表示,前6位是厂商编号,后六位是流水线号。
3. 数据链路层的通讯,广播
Ethernet 以太网通讯的协议非常粗暴,直接以广播的形式在局域网中传输数据,所以一个局域网中的所有电脑都会受到广播信号,但因为有MAC地址的缘故,会根据数据包中的目标地址来匹配自己的MAC地址决定是否响应这个数据,如果匹配则相应,如果不匹配则丢弃掉这条消息。
所以数据链路层会带着MAC地址将数据通过传输层广播到局域网中,一个局域网中是有很多的PC机器的,每台PC机器的MAC地址唯一。
网络层
有了传输层、数据链路层的协议,计算机之间已经可以通信了,但是数据链路层的协议作用范围只能在局域网中进行数据传输,如果是广域网中,仍然采用广播的方式,那么整个广域网中的所有计算机都会收到这个广播,那么这份传输量是很巨大的,如果有几亿台机器,这份性能以及效率都是个灾难,所以广域网之间传输肯定不能用广播的方式。