zoukankan      html  css  js  c++  java
  • OSI网络七层结构学习整理

    以下是查阅一些资料过后,整理出来的关于OSI七层的知识点,留给自己以后快速复习


    OSI模型的体系结构标准定义了网络互连的七层框架,即:

    OSI中的上面4层(应用层、表示层、会话层、传输层)为高层,定义了程序的功能;下面3层(网络层、数据链路层、物理层)为低层,主要是处理面向网络的端到端数据流。

    • 7应用层( 最靠近用户的OSI层,普遍理解为用户的应用程序,主要提供网络服务(比如文件传输,文件管理,电子邮件的信息处理)

      DHCP(动态主机分配协议)
      DNS (域名解析)
      FTP(File Transfer Protocol)文件传输协议
      HTTP (Hypertext Transfer Protocol)超文本传输协议
      POP3 (Post Office Protocol 3)即邮局协议的第3个版本

    • 6表示层 数据的表示、安全、压缩,确保一个系统应用层所发送的信息被另一个系统的应用层读取(服务上层)

    • 5会话层 建立并管理会话,本地主机与远程主机正在进行会话

    • 4传输层 定义传输数据的协议端口号,流控(最重要的一层

      • 最小单位是数据段

      TCP(Transmission Control Protocol)传输控制协议
      UDP (User Datagram Protocol)用户数据报协议

    • 3网络层 (路由器) 实现网络之间的路径选择

      • (最小单位是分组报文,即包)

      IP(IPv4 · IPv6) Internet Protocol(网络之间互连的协议)
      ICMP :(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。
      RIP : 路由信息协议(RIP)是一种在网关与主机之间交换路由选择信息的标准。
      OSPF : (Open Shortest Path First开放式最短路径优先)。
      BGP :(Border Gateway Protocol )边界网关协议,用来连接Internet上独立系统的路由选择协议。

    • 2数据链路层 (网卡,网桥设备工作的地方)

      • 最小单位是帧
      • 控制网络层与物理层之间的通信,解决的是所传输数据的准确性的问题保证了数据的可靠性

      802.11 · 802.16 · Wi-Fi · WiMAX

    • 1物理层( (网线,集线器) 建立、维护、断开物理连接

      • 最小单位是比特

      以太网物理层 · 调制解调器 · 双绞线

    总结1

    • HTTP和FTP都属于最高层,应用层。
    • TCP是传输层。
    • IP是网络层,是这几个协议在协议栈的最底层

    总结2

    • 物理层:网卡,网线,集线器,中继器,调制解调器
    • 数据链路层:网桥,交换机
    • 网络层:路由器
    • 网关工作在第四层传输层及其以上。
    • 集线器是物理层设备,采用广播的形式来传输信息。
    • 交换机就是用来进行报文交换的机器。多为链路层设备(二层交换机),能够进行地址学习,采用存储转发的形式来交换报文。
    • 路由器的一个作用是连通不同的网络,另一个作用是选择信息传送的线路。选择通畅快捷的近路,能大大提高通信速度,减轻网络系统通信负荷,节约网络系统资源,提高网络系统畅通率。




    顺便记录一下自己的问题方便下次学习

    数据链路层的数据可靠性如何实现的? 大佬整理的答案

    不同应用程序之间是怎么样区别的? (以下是百度到的答案)

    OSI模型中的通信过程

    ​主机A向主机B发送数据,该数据的产生肯定是一个应用层的程序产生的,如IE浏览器或者Email的客户端等等。这些程序在应用层需要有不同的接口,IE是浏览网页的使用HTTP协议,那么HTTP应用层为浏览网页的软件留下的网络接口。Email客户端使用smtp和pop3 协议来收发电子邮件,所以smtp和pop3就是应用层为电子邮件的软件留下的接口。我们假设A向B发送了一封电子邮件,因此主机A会使用smtp协议来处理该数据,即在数据前加上SMTP的标记,以便使对端在收到后知道使用什么软件来处理该数据。

    应用层将数据处理完成后会交给下面的表示层,表示层会进行必要的格式转换,使用一种通信双方都能识别的编码来处理该数据。同时将处理数据的方法添加在数据中,以便对端知道怎样处理数据。

    ​表示层处理完成后,将数据交给下一层会话层,会话层会在A主机和B主机之间建立一条只用于传输该数据的会话通道,并监视它的连接状态,直到数据同步完成,断开该会话。注意:A和B之间可以同时有多条会话通道出现,但每一条都和其他的不能混淆。会话层的作用就是有办法来区别不同的会话通道。

    ​会话通道建立后,为了保证数据传输中的可靠性,就需要在数据传输的构成当中对数据进行不要的处理,如分段,编号,差错校验,确认、重传等等。这些方法的实现必须依赖通信双方的控制,传输层的作用就是在通信双方之间利用上面的会话通道传输控制信息,完成数据的可靠传输。

    ​网络层是实际传输数据的层次,在网络层中必须要将传输层中处理完成的数据再次封装,添加上自己的地址信息和对端接受者的地址信息,并且要在网络中找到一条由自己到接收者最好的路径。然后按照最佳路径发送到网络中。

    ​数据链路层将网络层的数据再次进行封装,该层会添加能唯一标识每台设备的地址信息(MAC地址),是这个数据在相邻的两个设备之间一段一段的传输。最终到达目的地。

    物理层将数据链路层的数据转换成电流传输的物理线路。

    ​通过物理线路传递的B主机后,B主机会将电信号转换成数据链路层的数据,数据链路层再去掉本层的硬件地址信息和其他的对端添加的内容上交给网络层,网络层同样去掉对端网络层添加的内容后上交给自己的上层。最终数据到达B主机的应用层应用层看到数据使用smtp协议封装,就知道应用电子邮件的软件来处理。

    两个OSI参考模型之间的通行看似是水平的,但实际上数据的流动过程是有最高层垂直的向下交给相邻的下层的过程。只有最下面的物理层进行了实际的通行。而其他层次只是一种相同层次使用相同协议的虚通信。


    字节跳动的大佬整理的一份关于各各层之间的关系的说明:点击前往 精彩

    放一篇看到的精华帖,方便以后复习



    (以上资料内容侵删)
    转载时请告知(以上资料内容侵删)
    每个人都知道的,哪怕已经很糟糕了但是努力生活依旧很重要。
  • 相关阅读:
    pygame中的图像和音乐
    pygame中鼠标画直线
    Python-GUI:button及entry的应用
    Linux查看物理CPU个数、核数、逻辑CPU个数
    阿里云nas使用记录
    字符集错误解决
    firewalld防火墙命令规则设置
    Linux之TCPIP内核参数
    nginx 301跳转https后post请求失效问题解决
    TCP queue 的一些问题
  • 原文地址:https://www.cnblogs.com/ppppian2020/p/12976900.html
Copyright © 2011-2022 走看看