物理层:

网线连接在客户端计算机上,其实是连接在了计算机的一个叫做网卡的设备上,网卡是专门负责与外界通信的。网线一般是双绞线或者光缆,也可以使用无线电波,中间经过交换机,路由器,防火墙等等一堆设备统称为物理连接介质,可以理解为经过互联网,再连接到服务端设备。首先工作的是物理层,发送电信号

数据链路层:

电信号分为两种,高电平和低电平,高电平可以被人定义成数字 1,低电平可以被人定义成数字 0。假如我客户端发送一个 0010101100,服务端相应的就会收到这些数字。但是单纯的一段二进制数字这是没有意义的,一定要明确,从哪里开始到哪里结束这表示一段内容,从哪里开始到哪里结束这又表示另外一段内容。这也就是说,我们要给这些二进制数字进行分组

以太网协议规定:

  • 一组电信号构成一个数据报,叫做‘帧’
  • 每一数据帧分成:报头head和数据data两部分

这一点和我们写信类似,有信封,有信的内容,信封上面会写明这封信的发送者接受者分别是谁, 信里面的信纸上写的就是信的内容。

head包含:(固定18个字节)

  • 发送者/源地址,6个字节
  • 接收者/目标地址,6个字节
  • 数据类型,6个字节

data包含:(最短46字节,最长1500字节)

注意:头固定长度18个字节,也只有固定长度,接收者才知道按照什么标准来读取

  • 数据报的具体内容

head长度+data长度=最短64字节,最长1518字节,超过最大限制就分片发送

以太网规定head里面要有发送者的源地址和接受者的目标地址,源地址可以理解为是发送者的家,目标地址就是接收者的家。那么,在计算机中如何标识家在哪里?

使用mac地址,注意这个mac地址不是你用的苹果电脑那个mac,只是巧合同名了。MAC地址(Media Access Control Address),直译为媒体访问控制地址,也称为局域网地址(LAN Address),以太网地址(Ethernet Address)或物理地址(Physical Address),它是一个用来确认网上设备位置的地址。

mac地址是计算机上一个唯一的地址,是在计算机的网卡上的,每块网卡出厂时都被烧制上一个
世界唯一的mac地址,长度为48位2进制,通常由12位16进制数表示(前六位是厂商编号,后六位是流水线号)
这样做的目的就是要保证每一个mac地址是全世界独一无二的

网络层:

网络层有一个IP协议,我们常说的IPV4就是IP协议的第四个版本,IPV6就是IP协议的第六个版本

传输层:

传输层有一个TCP协议和UDP协议,这两个协议都是基于端口工作的协议

会话层:负责文件发送/接收

表示层:负责数据压缩、编码

应用层:

应用层就是应用软件,应用软件是你写的,这个标准可以由你来定,当然了你也可以遵循一些大家已经定制好了的应用层协议的标准,常见的有 http,mail,ftp

发送过程:

应用层软件(有协议或无协议)===>传输层(TCP/UDP协议)===>网络层(ip协议)===>数据链路层(以太网协议)===>物理层===>电信号发送(100011001010110)

接收过程则相反

OSI协议的更多相关文章

  1. TCP/IP协议与OSI协议

    OSI协议是一个理想化的协议,它把网络传输过程分为七层模型,以达到形象化的理解的效果,在实际应用中没有被使用.TCP/IP协议可以看作是它的简化版,是目前应用最广泛的网络协议,许多协议都是以它为基础而 ...

  2. OSI协议与TCP\IP协议之间的关系

    OSI协议 TCP\IP协议 五层协议(学习参考) 应用层 应用层 应用层 表示层 会话层 运输层 运输层 运输层 网络层 网络层 网络层 数据链路层 网络接口层 数据链路层 物理层 物理层 基于五层 ...

  3. OSI协议简述版

    OSI简介 OSI只是计算机网络中的一种协议名称缩写,它只是电脑间传输数据的协议,并不代表具体的物理设备,并且这种协议,只是被人为的划分为五层:物理层.数据链路层.网络层.传输层.应用层.记住,它只是 ...

  4. TCP/IP协议和OSI协议

    作为一个与网络密切相关的Web前端工程师,TCP/IP和OSI模型不可不知,至少要知道一下这些常识性知识,在这我做一下记录 TCP/IP协议簇: TCP/IP是一组协议的代名词,包括许多别的协议,组成 ...

  5. 网络基础之网络协议篇---CS架构--网络通信--osi 协议---套接字socket--粘包

    1 C\S 客户端/服务器架构: .硬件 C/S架构 (打印机) .软件 C/S 架构 互联网中处处是C/S架构 如黄色网站是服务端,你的浏览器是客户端(B/S架构也是C/S架构的一种) 腾讯作为服务 ...

  6. OSI协议介绍

    应用层 为网络用户或应用程序提供各种服务,代表协议有Telnet,FTP,HTTP,SNMP等 表示层 负责所传输的信的语法和语义,用于处理再多个通信系统之间交换信息的表示方式,代表协议有ASCII, ...

  7. OSI 协议

  8. OSI七层协议与TCP连接

    概述 为了追求效率,我们写代码,不可能去关注底层知识,但往往到出了问题,或者性能调优.我们就会速手无策,仔细为自己查缺补漏,总结知识点. 网络协议 互联网的本质就是一系列的网络协议,让不同计算机能够互 ...

  9. OSI协议和TCP/IP协议笔记

    1.OSI协议: 第7层应用层:OSI中的最高层.是用户与网络的接口.该层通过应用程序来完成网络用户的应用需求,如文件传输.收发电子邮件等.在此常见的协议有:HTTP,HTTPS,FTP,TELNET ...

随机推荐

  1. findContours()函数

    函数原型 findContours(InputOutputArray image, OutputArrayOfArrays contours, OutputArray hierarchy, int m ...

  2. C# WPF联系人列表(1/3)

    微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. C# WPF联系人列表(1/3) 阅读导航 本文背景 代码实现 本文参考 1.本文背景 聊天软 ...

  3. c++标准库与对应的函数

    #include <algorithm> sort(obj.begin(),obj.end());//从小到大 reverse(obj.begin(),obj.end());//从大到小 ...

  4. CSS背景说明及连写

    一.CSS背景说明 CSS 可以添加背景颜色和背景图片,以及来进行图片设置. 1.1 背景图片(image) background-image 属性允许指定一个图片展示在背景中(只有CSS3才可以多背 ...

  5. maven第一次创建项目太慢解决方法

    问题: 第一次用maven创建项目的时候,因为本地仓库中没有jar包,需要从中央仓库下载,所以会比较慢 解决方法: 因为从中央仓库下载默认使用的国外的镜像下载,速度比较慢,我们可以把镜像修改为从阿里云 ...

  6. kubernetes安装-二进制

    主要参考https://github.com/opsnull/follow-me-install-kubernetes-cluster,采用Flanel和docker 系统信息 角色 系统 CPU C ...

  7. UVA-1588

    只用C来写 题目:https://vjudge.net/problem/UVA-1588 #include<stdio.h> #include<string.h> #defin ...

  8. [TJOI2007] 足彩投注

    足彩投注 题目概述 题目背景 了解足球彩票的人可能知道,足球彩票中有一种游戏叫做"胜负彩",意为猜比赛的胜负.下面是一些与胜负彩有关的术语 注 :每一组有效组合数据. 投 注:彩民 ...

  9. Java 运行报错:不支持发行版本 5

    解决方案: 第一步:在Intellij中点击“File” -->“Project Structure”,看一下“Project”和“Module”栏目中Java版本是否与本地一致: 第二步:点击 ...

  10. ES6基础与解构赋值(高颜值弹框小案例!)

    let只作用在当前块级作用域内使用let或者const声明的变量,不能再被重新声明let不存在`变量提升` console.log(dad); var dad = '我是爸爸!';//预定义undef ...