一、OSI参考模型

自下而上:物理层(物理介质,比特流)、数据链路层(网卡、交换机)、网络层(IP协议)、传输层(TCP/UDP协议)、会话层(创建/建立/断开连接)、表示层(翻译,编码,压缩,加密)、应用层(HTTP协议)

简化为TCP/IP模型:网络层(物理层、数据链路层、网络层)、传输层,会话层,应用层(表示层,应用层)

1.物理层

主要设备:中继器、集线器

物理层中双绞线的传输距离是有限的,信号会缩减,影响数据的传输。为了使传输的数据能够准确的传输,中继器是可以放大传输信号,保持原数据的准确。

比如,双绞线的传输距离是100m,而超过100m则信号会衰减

在两台pc中间加上一个中继器,则相当于两台pc到中继器的距离均为100m,有助于信号的增强。

集线器和中继器的区别是:中继器只有两个以太网接口,而集线器相当于多个端口的中继器。

知识点:冲突域、广播域

冲突域:当两个比特流在同一介质上同时传输就是产生冲突,冲突域是指发送数据给一个单一目标(单播)所影响的范围

广播域:发送数据给一个不明确的目标所影响的范围

集线器有一个冲突域和一个广播域

IP地址192.168.1.1ping1.2:

>ping 192.168.1.2(ping命令所用的协议有ICMP/ARP协议)

返回数据说明两者是相通的,可以发送信息

当1.1想向1.2发送数据时,发送报文时,将包发送到集线器,集线器将包广播发送给所有连接在集线器上的其他端口,当1.3,1.4发现该包不是发送给他们的,就将拒绝接收,而1.2发现是发送给它时,就做出应答,返回一个应答包,应答包先发到集线器,集线器又进行广播,然后再发送到1.1上。

但是!!数据包向所有的端口发送,不安全,且所有的机器共享带宽,更容易产生拥塞,所以不能用于较大的网络

集线器是物理设备,不是智能的,所以不具备学习能力,故每次发送数据只能使用广播的方式。

2.数据链路层

功能:完成网络之间相邻结点的可靠传输,通过Mac地址负责主机之间的数据的可靠传输。

物理层传输的是比特流,而数据链路层传输的是帧。

主要设备:网卡、网桥、交换机

网卡:网络适配器,连接计算机与网络的硬件设备,整理计算机发往网线的数据,将数据分解成大小的数据包之后向网络上发送

Mac地址与IP地址的区别:

Mac地址:是厂商烧录在只读存储器上的,出厂厂商的唯一标识,且不可更改

IP地址:网络地址,相当于门牌号

查看网卡的Mac地址(十六进制)命令:

ipconfig /all

Pysical Address :xx-xx-xx-xx-xx-xx

网桥:将两个LAN链接在一起,变成一个LAN,并按Mac地址转发;分割冲突域;

例如:如何分割冲突域

每个PC机网卡的Mac地址:AA-AA-AA-AA-AA-AA、BB....

网桥更具Mac地址学习能力,目标Mac地址转发

IP地址192.168.1.1ping1.2:

>ping 192.168.1.2(ping命令所用的协议有ICMP/ARP地址解析协议)

过程:

1.1第一次发送ICMP数据包到集线器,集线器发给1.2和网桥,网桥接收到数据包后(工作原理是根据原Mac地址(1.1的Mac地址)学习,目标Mac地址(1.2Mac地址)进行转发,Eth0/1端口学到Mac地址),学到1.1Mac地址,网桥把包传输到下一个集线器,集线器会把包发给1.3,1.4,这两个会扔掉不属于它们的包,1.2接收到后会返回数据给集线器,集线器发送给网桥,这时网桥会学到1.2的Mac地址,由于网桥已经记录了1.1的Mac地址,则会直接发送给1.1而不会又进行广播发给1.3和1.4。

通过第一次发送数据包和接受目标的应答,网桥的每个端口都将学到也就是记录到两个Mac地址,原Mac地址和目标的Mac地址。

交换机:工作过程和网桥类似

交换机有三种转发方式:

(1)对已知单播帧只往对应端口进行转发

(2)对未知单播帧,即交换机还没有学习到的Mac进行广播转发,所有端口进行广播

(3)对广播帧或组播帧进行广播

IP地址192.168.1.1ping1.2:

>ping 192.168.1.2(ping命令所用的协议有ICMP/ARP地址解析协议)

工作过程:

工作过程与网桥一致,交换机的端口通过原Mac地址发送数据学到Mac地址,接收应答的数据包学到目标Mac地址,最终每个端口都学到Mac地址记录在交换机Mac地址表中

可以通过命令查找交换机的Mac地址表:

show mac-address-tables

交换机有几个端口就有几个冲突域,且只有一个广播域

交换机和网桥的区别:

网桥只有两个端口,交换机至少有四个端口也有8个、16个等端口,网桥基于软件转发,交换机基于硬件转发,可以通过命令查看Mac地址表,而网桥不行。且交换机的造价比网桥低。

交换机分类:

(1)传统二层交换机

(2)VLAN交换机,有网管功能

(3)三层交换机:VLAN交换机+路由器,属于网络层的设备,而不是数据链路层的设备

3.网络层

完成网络中主机间的报文传输(物理层比特流,数据链路层帧),网络层识别的地址是IP地址。

涉及的协议:IP/IPX

主要设备:路由器

路由器:通信中转站,例如快递的中转站,将不同网络和网段进行数据翻译,使其可以相互理解,构成一个大的网络。

IP地址192.168.1.1ping1.2:

>ping 192.168.1.2

1.2与1.1属于同一个网段,可以接收数据和应答

IP地址192.168.1.1ping2.2:

>ping 192.168.2.2

显示超时,没有返回任何数据,两者不属于同一个网段,不能通信

如何使两者进行通信?有两种方法:

(1)添加一个路由器:

工作原理:

路由器之所以可以翻译不同网段之间的通信是因为其本身具备丰富的协议,可以连接不同的网段和网络。路由器可以判断网络地址以及选择路径的功能。

(2)修改子网掩码,这点后面IP地址再补充

物理层、数据链路层、网络层之间的区别:

4.传输层

是整个网络关键的部分,是实现两个用户进程间端到端的可靠通信,处理数据包的错误等传输问题。是向下通信服务最高层,向上用户功能最底层。即向网络层提供服务,向会话层提供独立于网络层的传送服务和可靠的透明数据传输。

主要协议:TCP传输控制协议/UDP用户数据报协议,涉及服务使用的端口号,主机根据端口号识别服务,区分会话。

TCP协议:解决数据是否完整传输,是否正确

UDP协议:UDP协议实现了端口,从而使数据包传送到IP地址的基础上,还可以进一步将其送到具体的某一个端口上。

UDP传输与IP传输相似,但IP协议是ip地址之间的通信,但通信需要多个通信通道,将每个通道分配给每一个进程使用,UDP则是实现端口的通信。

服务与以及相对应的端口文件:C:\Windows\System32\drivers\etc\servies

例如:www服务端口号为80

5.会话层:主要功能是在两个结点间建立、维护和释放面向用户的连接,并对会话进行管理和控制,保证会话数据可靠传送。

例如:你通过秘书与对方建立联系,则你发出建立联系的请求相当于一个会话,秘书相当于传输层,然后秘书进行拨号联系对方,当对方接通对话,则会话的连接建立。

6.表示层:主要负责数据格式的转换,即翻译,压缩与解压缩,加密与解密。

例如:你想下午两点出发去上海,你对上海的朋友说下午两点过来,朋友的理解却是你下午两点到上海,两个人两种理解,而表示层则是进行格式转换和信息的表示。

7.应用层:应用层是网络体系中最高的一层,也是唯一面向用户的一层,也可视为为用户提供常用的应用程序,例如电子邮件,上网浏览等网络服务都是应用层程序。

对于这三层的定义还是不能理解,上网搜了以上比较通俗的解释。

应用层的主要协议:HTTP,HTTPS,FTP(上传,下载),SMTP(邮件)

HTTP协议:超文本传输协议,包括url地址,域名,源地址,发送的数据方法(Get,Post等),浏览器信息等

OSI模型的总结

OSI模型上层(会话层,表示层,应用层)处理用户接口、数据格式、应用访问。

OSI模型下层(物理层,数据链路层,网络层,传输层)处理数据在网络介质中的传送。

二、数据封装过程

封装:

应用层:发送数据---------表示层:数据格式转换,加密,压缩等----------会话层:建立连接-----------传输层:差错校验,流量控制,TCP/UDP传输,添加端口号信息(源端口,目标端口)+数据------------网络层:分组,数据包(IP地址+数据)--------数据链路层:帧(帧头(帧头包含Mac地址)+帧数据)------------物理层:比特流(0,1)

解封装:

物理层:比特流(0,1)---------数据链路层:帧(帧头(帧头包含Mac地址)+帧数据)--------网络层:分组,数据包(IP地址+数据)-------传输层:差错校验,流量控制等;UDP/TCP(传送和接收端口信息+数据)---------会话层:建立连接-----------表示层:数据格式转换,解密,解压缩等-----------应用层:接收的数据

图解:(网上找的)

https://www.cnblogs.com/evablogs/p/6709707.html

OSI参考模型(转)的更多相关文章

  1. 【转】TCP/IP协议栈及OSI参考模型详解

    OSI参考模型 OSI RM:开放系统互连参考模型(open systeminterconnection reference model) OSI参考模型具有以下优点: 简化了相关的网络操作: 提供设 ...

  2. OSI参考模型及各层功能,TCP与UDP的区别

    OSI参考模型:ISO/IEC 7498标准定义了网络互联的7层结构模型,即开放系统互连参考模型. OSI参考模型定义了开放系统的层次结构.层次之间的相互关系,以及各层所包括的可能的服务.OSI的服务 ...

  3. TCP/IP协议栈及OSI参考模型详解

    OSI参考模型 OSI RM:开放系统互连参考模型(open systeminterconnection reference model) OSI参考模型具有以下优点: 简化了相关的网络操作: 提供设 ...

  4. OSI参考模型 VS TCP/IP参考模

    OSI参考模型 VS TCP/IP参考模   TCP/IP各层对应的协议   TCP/IP的层                                对应的TCP/IP协议           ...

  5. TCP/IP协议原理与应用笔记06:OSI参考模型全称

    1. ISO是一个组织,OSI是一个模型. 2. OSI不是协议,是网络体系结构的概念模型 3. OSI参考模型全称为: Open System Interconnection Reference M ...

  6. OSI参考模型初识

    纪念我曾今热爱的数通(^o^). 1.osi参考模型 2.数据的封装和解封装 3.主机和主机间通信

  7. OSI参考模型各层的主要功能

    OSI参考模型将整个通信功能划分为7个层次,其划分的主要原则是: 1网络中各主机有相同的层次 2 不同主机的同等层具有相同的功能 3同一主机内相邻层之间通过接口通信 4 每层可以使用下层提供的服务,并 ...

  8. TCP/IP四层模型与OSI参考模型

    TCP/IP四层模型: 1.链路层(数据链路层/网络接口层):包括操作系统中的设备驱动程序.计算机中对应的网络接口卡 2.网络层(互联网层):处理分组在网络中的活动,比如分组的选路. 3.运输层:主要 ...

  9. osi参考模型(开放系统互连参考模型)

    自互联网诞生以来,随着网络飞速发展,用户迫切要求能在不同体系结构的网络空间交换信息,使得不同的网络能够互联起来. 国际化标准组织(International Organization for Stan ...

  10. 理解OSI参考模型(转)

    文章转自 https://www.cnblogs.com/evablogs/p/6709707.html 一个视频网站上不小心搜到网络知识的视频,突然以前大学的没有真正接受的知识点,一下子豁然开朗,赶 ...

随机推荐

  1. 20180629利用powerdesigner生成数据字典

    原创作品,如有错误,请批评指正 第一步新建一个PDM模型 第二步 点击“FILE”--->"RESERVER ENGINEER"--->"DATABASE&q ...

  2. nyoj_33_蛇形填数_201308221636

    蛇形填数时间限制:3000 ms  |  内存限制:65535 KB 难度:3描述 在n*n方陈里填入1,2,...,n*n,要求填成蛇形.例如n=4时方陈为:10 11 12 19 16 13 28 ...

  3. [转]使用代码去描述WCF配置文件

    转自:使用代码去描述WCF配置文件 在应用程序部署的时候,WCF客户端因为服务器地址的变化,需要修改程序配置文件的地址URL,手动修改很不方便,还会造成错误,所以尽量把描述WCF配置文件的配置使用代码 ...

  4. C#和JAVA中编写事务代码

    C#  DAL层代码,运行多条增删改,使用事务操作: /// <summary> /// 运行 多条增删改 (非查询语句) /// </summary> /// <par ...

  5. 新手玩个人server(阿里云)

    阿里云如火如荼的0元活动,事实上一開始我仅仅是去直播吧看阿森纳vs贝西克塔斯.姑且算是一种乱入,url这样的奇妙的东西应该是万维网的最真实的写照.当然那是上周第一会回合的事了.可是故事却如此的类似.并 ...

  6. WCF学习笔记——契约不能少了set

    我定义的WCF契约里,有一个类,里面的属性,有一个因为只读,所以只写了个get.结果客户端就报错. [DataContract] public class UserItem { public User ...

  7. yun install java

    # yum install java-1.7.0-openjdk # yum install java-1.7.0-openjdk-devel 需要执行以上两步 查看版本 # java -versio ...

  8. Codeforces 2018-2019 ICPC, NEERC, Southern Subregional Contest

    2018-2019 ICPC, NEERC, Southern Subregional Contest 闲谈: 被操哥和男神带飞的一场ACM,第一把做了这么多题,荣幸成为7题队,虽然比赛的时候频频出锅 ...

  9. Codeforces--630I--Parking Lot(规律)

     I - Parking Lot Crawling in process... Crawling failed Time Limit:500MS     Memory Limit:65536KB  ...

  10. Codeforces--617B--Chocolate(规律)

     Chocolate Time Limit: 1000MS   Memory Limit: 262144KB   64bit IO Format: %I64d & %I64u Submit ...