为了账号安全,请及时绑定邮箱和手机立即绑定

网络分层模型和TCP/IP协议族(上篇)

网络分层模型和TCP/IP协议族——网络传输哪里难

实习完回家后,准备来回顾一下网络基础的相关知识点。

网络传输

先举一个简单易懂的例子。



5c99bb750001f38b07200284.jpg


网络传输,我们可以比喻为2个人:甲 和 乙。然后他们之间需要传递一张图片picture。因为现在的图片还是挺大的,差不多几M的样子,这时候,就像是把一栋house传送过去。

如何传送呢?

  • 需要知道目标地址 寻址和路由

  • 需要有一条到目标地址的路 数据链路

  • 需要把大楼拆成包装箱能放下的大小 分片

  • 需要将每一个部分进行编号 序列码

  • 需要将包装箱装车 封装

  • 车队运输时可能会堵车 拥塞控制

  • 检查每一车是否完整 错误检验和校正

  • 处理在运输路上丢失和损毁的部分 数据重发

  • 拆成包装,将每一部分重新组装起来 重组

协议

接着上面说的,我们肯定需要一些 流程规范、运输指南的使用说明,比如:

  • 如何查找目的地

  • 如何选择运输路线

  • 如何拆分和重建大楼

这些规范被称为协议

协议需要注意这些:
  1. 协议有很多种

  2. 不同的协议处理不同层次的问题

  3. 发送方和接收方要使用相同的协议,才能还原数据


网络分层模型和TCP/IP协议族——协议的战争

继续上一部分,讲讲网络协议的东西。

之前主要分为2 part,一边是osi,一边是tcp/ip。可以形象地称为 协议斗争。

什么是OSI?

OSI就是有国际标准化组织ISO提出的Open System Interconnection Reference Model(开放式系统互联通信参考模型)



5c99bb7500017a8407200527.jpg


他们主要提出了layer 7.



5c99bb75000135ae06100700.jpg



媒介层主要是做比较基础的部分,主机层是基于媒介层做了一些上层建筑封装等...相对单一

物理层

物理层 -> (不一定可靠) 点对点的数据直链,传输的是bit比特。

数据链路层

一个可靠的点对点数据直链。

  • 检错和纠错(CRC码)

  • 多路访问

  • 寻址

传递的是frame 数据帧

网络层

  • 在网络的各个节点之间进行地址分配、路由和(不一定可靠的)报文分发。

  • 路由

  • 拥塞控制

传递的是package 数据包

传输层

被称为4层 / L4

  • 在网络的各个节点之间可靠地分发数据包

  • 所有传输遗留问题

  • 复用

  • 流量

  • 可靠

传输的是segment 数据段

在传输层之上的有会话层和表示层,但是用的不太多

应用层

称为7层 / L7

网络进程到应用程序。
针对特定应用,规定各层协议、时序、表示等,进行封装。
在端系统中用软件来实现,比如http等。

TCP/IP



5c99bb760001833f07200515.jpg



它是怎么工作的?



5c99bb76000174ca07200477.jpg



ARP也就是通过ip地址来反查以太网mac地址。



5c99bb7700015a7f07200451.jpg


我们来看看它到底包装了哪些?



5c99bb7700016afe05770642.jpg


我们再来看看OSI的渊源



5c99bb770001781907200338.jpg


为什么失败了?

  • 进程缓慢

  • 过于复杂

  • 收费

TCP/IP的渊源



5c99bb770001970607200318.jpg



最后还是TCP/IP赢了


网络分层模型和TCP/IP协议——以太网

以太网其实讲的就是:怎么传
IP协议讲的就是:解决往哪里传的问题
UDP和TCP:解决可靠性的问题

怎么传输的?

最初是通过同轴电缆。



5c99bb780001493607200282.jpg


然后发现了一种算法来解决这个问题。

CSMA/CD也就是载波监听多路访问/冲突检测

我用大白话来讲解一下,大概就是这样的:

一条同轴电缆上,串联着许多台计算机,如果说computerA想发送数据(data),那么它会这样做:

  1. 先检查一下这个网络有没有人在使用

  • 如果有人使用,它就不传了,避免冲突

  • 没人使用,那就可以传数据。

  1. 如果说,存在这么一个情况:2个计算器同时检测到网络没人使用,然后他们准备同时发数据,这个时候会出现什么事呢?

  • computer在发送数据前,它会检查电压,一旦电压超过指定值,它就会停止传输数据,通过物理知识我们可以知道,串联是电流处处相等,电压=各处相加。

  • 一旦检测到电压超值,那么computer会stop send data,然后等待一段时间,再继续传值,这个等待的时间是随机产生的。

最后,梅特卡夫把这套系统名为以太网

以太网发展过程



5c99bb7e0001916107200374.jpg


网卡和mac地址



5c99bb7e00012a8605490309.jpg



二层交换机

交换机是根据mac地址来转发数据的

以太网数据帧格式



5c99bb7f00014abe07200228.jpg


这里提到的FCS帧检验序列,也就是用于检验是否丢帧。


点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Web前端工程师
手记
粉丝
12
获赞与收藏
33

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消