[linux] 网络基础
Posted 一个正直的男孩
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[linux] 网络基础相关的知识,希望对你有一定的参考价值。
大家好今天浅聊一下电脑与电脑之间是如何通信的,通信的方式,没有网络的情况下如何进行通信等…………
文章目录
在没有网络的情况下如何通信
在最早的时候如果要跨主机间通信一般都是物理交互(需要存储介质) 图 1-1,但显然这样的效率明显不高且成本也有点高,那么为了提高效率就有了局域网(用交换机连接多台主机) 图1-2
(1-1)
(1-2)
那么在局域网中传输数据一定也是需要某种机制(协议
)保证数据可以安全的到达目标主机
协议
协议广义层面来讲其实就是约定,只要俩台主机间约定,那么他们之间可以保证数据不会丢失。但是现在又出现了下面的问题
- 电脑牌子五花八门(如果是厂商规定,牌子不一样那么协议也只有在本牌子机型下生效)
- 硬件网卡 (同上)
- 操作系统不一样
那么为了解决这个就直接威机构(
1969年美国国防部建立最早的网络
)对其进行统一规定协议,大家都遵守,俗称网络协议
网络协议
协议:约定的规则(共识)
协议是分层的,高内聚底耦合大家懂听过吧,就是一个大项目中分了多个小模块,模块内是高内聚的(一个地方错了整个模块就崩),模块与模块间是低耦合的(一个模块崩了不会影响别的模块),那么协议也是,他也是由多个“模块组成的
”
俩个模型
osi七层模型
(2-1)
这就是提出的理论上的协议,但是实践发现成本和难度太高,进行了阉割但效果一致
TCP/IP五层模型
(2-2)
宏观认识TCP/IP五层模型各层的用处
- 物理层 (光/电型号传输的方式)
- 数据链路层 (俩个设备间信息的传递)
- 网络层 (确定目标主机的ip)
- 传输层 (确保数据不会丢包,丢包则重新发送)
- 应用层 (按照协议,使用数据)
拓展
光/电信号在传输的途中是会衰退的(集线器:放大收到的信号)
网络传输(长距离通信)
(2-3)
现实例子
(2-3)传输数据可以理解送快递,商家就是张三顾客就是李四,当商家发货就会需要包装啥的就可以理解在进行各个层的贯穿,然后开始送,经过一个个省,当是你会发现他不是一路不停的奔向你的,而是有各个驿站(可以理解局域网切换),最后顾客收到货物在包装等给搞完就是收到了货物。
拓展
广域网:其实也就是多个局域网组成而形成的,就像每个国家就是一个局域网,那么聚集起来也就是地球村,也就是广域网
局域间通信
虽然现在很少用这个了,但是有时候会没有网(到点断校园网),不知道大家是否有拿局域网玩过游戏,我之前就用局域网和朋友玩MC(我的世界)……,那么在局域网中是如何通信的呢??
场景:机房上课
事件:老师给张三发了个你好
(3-1)
那么在这个局域网中老师发给张三的你好,别的同学是否可以看到?如果可以看到那么同学是如何识别老师是发给谁的?
当然是可以看到,在局域网中数据是共享的。每一台主机都有自己MAC地址,发送方会发送数据就会 MAC地址+数据,别的同学只需要和气进行对比怒
MAC地址
MAC地址:局域网中主机的标识符
作用:
- 用来标识数据链路层中的节点
拓展
MAC地址是在网卡出产时就确定了(网卡的序列号),但是一些网卡支持修改,其地址长度为6字节
问
那多台主机同时发想要发送数据呢?
答
那么他们会发生碰撞(需要深入了解数据链路层),那么他们就会回休眠(挂起)一段时间(不确定多长一般要看操作系统),然后再次发送数据,也就是说明,局域网其实是临界资源
结尾
上述就是简答的网络的一些概念,如果对你有所帮助就点个赞吧
以上是关于[linux] 网络基础的主要内容,如果未能解决你的问题,请参考以下文章