网络分层模型和常见协议介绍

news2024/12/26 1:15:00

文章目录

  • 网络分层模型和常见协议介绍
    • 网络分层模型介绍
    • 常见各层协议介绍

网络分层模型和常见协议介绍

image-20230915111138235

理解性记忆:这是我自己创造的一个理解性记忆口诀,大家别笑我😄

七层:因为七层协议并没有得到应用,所以物(理层) 联(数据路层) 网(络层) 专业的叔叔只会(话层)使(表层)用(用层)网络,不会应用

五层:因为五层协议最完善,所以物(理层)联(数据路层)网(络层)专业的叔叔将 ”会(话层)使(表层)用(用层)“ 直接改为 ”应用(用层)“,表明了自己想要应用五层协议的决心

四层:因为四层协议被应用了,所以物(理层)联(数据路层)网专业的叔叔能够了加入网络(网络接口层)公司,物联层和数据链路层合并成立网络接口层

网络分层模型介绍

  • 为什么要对网络进行分层

    分层这个操作在计算机领域是很常见的,比如我们熟知的 MVC 分层、MVVM分层,不同层对应不同的职责,让每一层的职责更加专业化(使之符合软件开发中的单一职责原则),降低整个系统的复杂度,同时实现层与层之间的耦合度,一次提高整个系统的可维护性,同时便于后续的扩展。再比如,在早期Web开发都是使用 JSP,前端后端代码都混合着写在一起,但是现在都是前后端分离,前端负责写前端的代码,后端负责写后端的代码,这样简化了开发,提高了开发效率。

    总结:对网络进行分层是为了降低网络系结构的复杂度提高网络结构的可维护性可扩展性

  • 网络分层的历史

    早期网络(1974年之前)互相通信的两个计算机必须高度协调工作才行,但是这种协调工作十分复杂,网络沟通的成本十分困难且巨大,于是在 1974 年,IBM 公司宣布了 SNA 这个著名的网络分层标准,后续的网络科技公司也都陆续推出了自己公司的标准。

    备注:最早提出分层概念的不是 IBM 公司,而是在1962年 Leonard Kleinrock 设计 ARPA网络 的团队提出的

  • OSI七层协议模型的历史

    续借上文,继 IBM 发布自己的网络分层标准之后,其它公司也陆续推出了自己公司的网络分层标准,这就导致用户在使用不同公司的网络设备时,无法实现正常的通信,十分不利于网络的推广,给用户带来不必要的烦恼。于是1974年,国际标准化组织成立专门的机构来制定一个通用的标准,这个标准就算OSI七层协议模型。

    总结:OSI七层协议是为了使不同设备之间的网络沟通更加方便让网络更加易于推广。总的来讲 OSI七层协议是为了标准化网络,事物标准化能带来很多好处:降低沟通成本提高便利性提高一致性让生产厂家不必过度关心沟通问题有更多的精力放在设备的更新和优化上

  • 既然有了OSI七层协议为什么还有TCP/IP四层协议

    前文我们提到了 OSI 七层协议是 1974 年开始制定的,但是最终协议的发布是在 1983 年,从协议开始指定到协议的成功指定历时 9 年,这也足见网络协议标准是制定是多么困难的!而 TCP/IP 协议早在 1973 年由卡恩与瑟夫就已经制定成功了,在 OSI 协议制定的期间,TCP/IP 协议就已经被应用于市场,并经过不断的完善和扩展,已经形成了十分完善的生态了,后面等到 OSI 协议制定出来之后,各厂家兼顾成本也不愿意再去更换网络协议了,于是 TCP/IP 就成了整个互联网的国际标准协议了

    总结:OSI的失败是由于专家们缺乏实际经验,没有商业区动力,同时在设计的时候考虑的太多导致制定周期长,丧失了市场,同时 OSI 协议的各层之间存在重叠,加大了网络的复杂性。所以做事不能过于追求完美,要以完成度和效率作为追求标准,同时做技术也是一样,不能为了技术而搞技术,要以业务为驱动力去研究技术

  • 为什么有了 TCP/IP 四层协议还需要设计五层协议

    前面完美已经知道 TCP/IP 协议是在 1974 年制定,这个协议制定的太早了,随着物联网的发展,虽然他也在不断完善,但是一些弊端还是无法避免的,比如:

    1. 缺乏细粒度控制:四层协议模型中没有明确的会话层,而会话管理和控制是应用程序之间交互的关键部分。缺少会话层可能限制了对通信会话的更细粒度控制和管理,如会话的建立、同步、终止等。
    2. 安全性限制:四层协议模型在传输层提供了基本的错误检测和纠正功能,但在应对安全性挑战方面的功能相对有限。会话层可以提供更强大的安全性保护措施,例如加密、身份验证等。缺乏会话层可能对数据的机密性、完整性和认证产生一定的限制。

    为了解决这些 TCP/IP 早期设计的不足指出,五层协议就诞生了,它综合了 OSI 和 TCP/IP 两种协议的优点,是一种更加完善的协议。但是由于大多数互联网应用和服务都建立在四层协议模型的基础上,例如Web浏览器、电子邮件、文件传输等,这就导致更换成本是十分巨大的,各厂商也不愿意推导重来,所以目前互联网还是采用 TCP/IP 四层协议。

    其实这种情况在计算机界是很常见的,比如 IPv4 和 IPv6,IPv4初始设计也存在不足导致现在 IP 数量不足,后面虽然出现了 VLAN 技术缓解了这一紧张局面,但是 IPv6 的推广也是在慢慢进行中的,JavaScript的 ES4 版本同样由于更新力度太大,遭到各大厂商地址,最终也没有推广起来,直接就到 ES5 了……

    总结:设计五层协议的目的是为了弥补 TCP/IP 四层协议早期设计的不足

  • 七层协议中各层之间的职责

    • 应用层(Application Layer):提供应用程序间的通信和交互服务,包括文件传输、电子邮件、Web浏览器等。
    • 表示层(Presentation Layer):处理数据格式、加密和解密,确保数据在不同系统之间的兼容性。
    • 会话层(Session Layer):建立、管理和终止会话连接,同时处理会话期间的同步和数据传输。
    • 网络层(Network Layer):负责寻址、路由和分包,通过IP地址转发数据包到目标主机。
    • 传输层(Transport Layer):提供端到端的数据传输服务,确保数据的可靠性和完整性,例如TCP和UDP协议。
    • 数据链路层(Data Link Layer):提供可靠的数据传输,通过帧进行数据分组和错误检测。
    • 物理层(Physical Layer):负责传输比特流,处理物理介质上的电气、机械和功能特性。

    PS:四层和五层协议中各层的职责可以对比着七层协议中的各层职责,比如:五层协议中的应用层就兼顾了七层协议中的应用层和表示层还有会话层三层的职责

  • TCP/IP各层对应的物理设备

    • 应用层(Application layer):服务器、客户端相关应用软件,这一层主要是软件
    • 传输层(Transport Layer):传输层的物理设备通常是主机上的端口。每个应用程序都可以使用不同的端口号进行标识。在传输层,主要涉及到的设备是主机上的传输协议栈,如TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)。
    • 网际层(Network Layer):网络层不涉及特定的物理设备。它定义了IP地址和路由器之间的通信方式。路由器是网络层的关键设备,负责接收和转发IP数据包,根据目标IP地址选择最佳路径进行路由。
    • 网络接口层(Network interface layer):物理层(Physical Layer)涉及的物理设备包括传输介质和相关设备,如电缆光纤中继器(Repeater)、集线器(Hub)等。物理层的主要任务是将比特流转换为适合于传输媒介的电信号,并进行传输。数据链路层(Data Link Layer):数据链路层的物理设备包括网卡(Network Interface Card,NIC)或网卡接口,也称为网络适配器网桥(Bridge)、交换机(Switch)。网卡与主机相连,负责实现数据包的封装和解封装,以及通过物理介质传输数据帧。

常见各层协议介绍

这一小节主要介绍 TCP/IP 四层协议各层中的常见的协议

  • 应用层常见协议介绍
    • HTTP(Hypertext Transfer Protocol):用于在Web浏览器和Web服务器之间传输超文本内容。
    • HTTPS(Hypertext Transfer Protocol Secure):用于在Web浏览器和Web服务器之间通过加密方式传输超文本内容。HTTPS基于TLS/SSL协议提供安全性。
    • FTP(File Transfer Protocol):用于在客户端和服务器之间进行文件传输,支持上传、下载、删除等操作。
    • SFTP(SSH File Transfer Protocol):一种通过SSH协议进行文件传输的安全文件传输协议。
    • SMTP(Simple Mail Transfer Protocol):用于电子邮件的发送和传输,在发送方和接收方之间进行邮件传递。
    • POP3(Post Office Protocol version 3):用于电子邮件的接收,允许用户从邮件服务器上下载邮件到本地客户端。
    • IMAP(Internet Message Access Protocol):也用于电子邮件的接收,支持在客户端和邮件服务器之间对邮件进行管理和同步。
    • DNS(Domain Name System):用于将域名解析为对应的IP地址,实现域名与IP地址之间的映射。
    • DHCP(Dynamic Host Configuration Protocol):用于动态分配IP地址和其他网络配置信息给网络设备,使得设备能够自动获取网络参数。
    • SNMP(Simple Network Management Protocol):用于网络设备的管理和监控,可以获取和修改网络设备的状态信息。
    • Telnet:用于远程登录和执行命令的协议,但通信内容不加密,已逐渐被SSH取代。
    • SSH(Secure Shell):用于通过加密的方式远程登录和执行命令,提供了安全的远程终端访问。
    • NTP(Network Time Protocol):用于同步计算机系统时钟的协议,确保计算机时间的准确性。
  • 传输层常见协议介绍
    • TCP(Transmission Control Protocol):提供面向连接、可靠的数据传输服务,确保数据的完整性和顺序性。
    • UDP(User Datagram Protocol):提供无连接、不可靠的数据传输服务,传输速度快,适用于实时性要求高的应用。
    • SCTP(Stream Control Transmission Protocol):一种面向消息的传输协议,具备TCP的可靠性和UDP的多路复用功能,适用于多流多路复用、容错性需求较高的应用。
    • DCCP(Datagram Congestion Control Protocol):提供基于UDP的可靠传输和拥塞控制机制,适用于对实时性要求高且对拥塞敏感的应用。
    • RSVP(Resource Reservation Protocol):用于在网络中为特定通信会话分配资源,支持实时多媒体流和服务质量(QoS)的传输。
  • 网络层常见协议介绍
    • IP(Internet Protocol):是最核心的网际层协议,用于将数据包从源主机传输到目标主机。IP协议定义了数据包的格式、寻址方案和路由选择算法。
    • ICMP(Internet Control Message Protocol):用于在IP网络上发送错误报告、网络状况信息以及进行网络诊断。例如,ping命令就是使用ICMP来测试主机之间的连通性。
    • ARP(Address Resolution Protocol):用于将IP地址解析为对应的物理(MAC)地址,以实现在局域网上进行数据包的直接交换。
    • RARP(Reverse Address Resolution Protocol):与ARP相反,它将物理(MAC)地址解析为对应的IP地址,主要用于无盘工作站等特殊设备。
    • IPsec(Internet Protocol Security):提供IP层的安全性,包括数据加密、认证和数据完整性保护等功能,用于构建安全的虚拟专用网络(VPN)。
    • OSPF(Open Shortest Path First):一种动态路由协议,用于计算并选择最短路径来进行数据包的转发,常用于内部网关协议(IGP)。
    • BGP(Border Gateway Protocol):一种外部网关协议(EGP),用于在不同自治系统之间进行路由选择和交换网络可达性信息。
    • ICMPv6(Internet Control Message Protocol version 6):IPv6环境下使用的ICMP协议版本,与IPv4环境下的ICMP类似,但支持IPv6的特性和功能。
  • 网络接口层常见协议介绍
    • Ethernet:以太网是一种广泛使用的局域网协议,定义了数据帧的格式、传输速率、MAC地址等。它是最常见的有线局域网技术。
    • Wi-Fi(无线保真):Wi-Fi是一组无线局域网协议和标准,基于IEEE 802.11系列标准。它允许通过无线信号进行数据传输,适用于无线网络环境下的移动设备连接。
    • PPP(Point-to-Point Protocol):PPP是一种用于串行点对点连接的协议,通常用于拨号上网或专线连接。它提供了数据链路层的功能,支持多种网络层协议的封装和传输。
    • HDLC(High-Level Data Link Control):HDLC是一种数据链路层协议,主要用于广域网中点对点连接。它提供了可靠的数据传输和错误检测纠正功能。
    • PPPoE(Point-to-Point Protocol over Ethernet):PPPoE是将PPP封装在以太网中的协议,常用于ADSL等宽带接入方式。
    • ATM(Asynchronous Transfer Mode):ATM是一种基于电路交换的数据传输技术,常用于广域网和运营商网络中。
    • Token Ring:Token Ring是一种局域网协议,使用环形拓扑结构和令牌传递的方式来控制数据访问。

参考资料

  • 计算机网络各层分别有哪些设备? - 知乎 (zhihu.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1038186.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【算法】相向双指针

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

【GO】LGTM_Grafana_gozero_配置trace(4)_代码实操及追踪

最近在尝试用 LGTM 来实现 Go 微服务的可观测性,就顺便整理一下文档。 Tempo 会分为 4 篇文章: Tempo 的架构官网测试实操跑通gin 框架发送 trace 数据到 tempogo-zero 微服务框架发送数据到 tempo 本文就是写一下如何在 go-zero 微服务框架里面配置 t…

套接字socket编程的基础知识点

目录 前言(必读) 网络字节序 网络中的大小端问题 为什么网络字节序采用的是大端而不是小端? 网络字节序与主机字节序之间的转换 字符串IP和整数IP 整数IP存在的意义 字符串IP和整数IP相互转换的方式 inet_addr函数(会自…

83、SpringBoot --- 下载和安装 MSYS2、 Redis

★ 下载和安装MSYS2(作用:可在Windows模拟一个Linux的编译环境) 得到Redis的编译环境——在Linux平台上,这一步可以省略。(1)登录MSYS2官网(http://repo.msys2.org/distrib/ )下载M…

前端新轮子Nue,号称替代Vue、React和Svelte

新的简约前端开发工具集Nue.js 于周三发布。在 Hacker News 上介绍它时,前端开发者和Nue.js 的创作者Tero Piirainen表示,它是 React、Vue、Next.js、Vite、Svelte 和 Astro 的替代品。他在 Nue.js的 FAQ 中进一步解释说,它是为网站和响应式用…

【Vue.js】使用Element搭建登入注册界面axios中GET请求与POST请求跨域问题

一,ElementUI是什么? Element UI 是一个基于 Vue.js 的桌面端组件库,它提供了一套丰富的 UI 组件,用于构建用户界面。Element UI 的目标是提供简洁、易用、美观的组件,同时保持灵活性和可定制性 二,Element…

Spring学习笔记6 Bean的实例化方式

Spring学习笔记5 GoF之工厂模式_biubiubiu0706的博客-CSDN博客 Spring为Bean提供了多种实例化方式,通常包括4中(目的:更加灵活) 1.通过构造方法实例化 2.通过简单工厂模式实例化 3.通过factory-bean实例化 4.通过FactoryBean接口实例化 新建模块 spring-005 依赖 <!--S…

自动化测试、压力测试、持续集成

因为项目的原因&#xff0c;前段时间研究并使用了 SoapUI 测试工具进行自测开发的 api。下面将研究的成果展示给大家&#xff0c;希望对需要的人有所帮助。 SoapUI 是什么&#xff1f; SoapUI 是一个开源测试工具&#xff0c;通过 soap/http 来检查、调用、实现 Web Service 的…

github想传至远程仓库显示fatal: remote origin already exists. (远程来源已经存在 解决办法)

参考:https://blog.csdn.net/qq_40428678/article/details/84074207 在当我们输入git remote add origin https://gitee.com/(github/码云账号)/(github/码云项目名).git 就会报如下的错 fatal: remote origin already exists. 翻译过来就是&#xff1a;致命&#xff1a;远程…

zabbix自定义监控、钉钉、邮箱报警 (五十六)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 一、实验准备 二、安装 三、添加监控对象 四、添加自定义监控项 五、监控mariadb 1、添加模版查看要求 2、安装mariadb、创建用户 3、创建用户文件 4、修改监控模版 5、…

新版Chromedriver在哪下载(Chromedriver 116.0.5845.188的寻找之旅)

不知道什么时候Chrome自动升级到116.0.5845.188了&#xff0c;害得我原来的Chromedriver 114无法使用了&#xff0c;无奈之下只好重新去下载。 可寻遍网络&#xff0c;都没找到Chromedriver116的版本。网上大多网友给的下载网址是chromedriver.storage.googleapis.com/index.ht…

数据结构与算法之时间复杂度和空间复杂度(C语言版)

1. 时间复杂度 1.1 概念 简而言之&#xff0c;算法中的基本操作的执行次数&#xff0c;叫做算法的时间复杂度。也就是说&#xff0c;我这个程序执行了多少次&#xff0c;时间复杂度就是多少。 比如下面这段代码的执行次数&#xff1a; void Func1(int N) {int count 0;for…

Ubuntu 20.04 安装MySQL 8.0.34

MySQL安装 sudo wget https://cdn.mysql.com/archives/mysql-8.0/mysql-server_8.0.31-1ubuntu20.04_amd64.deb-bundle.tar下载MySQL文件。 sudo mkdir /mysql8创建目录。 sudo tar -xf mysql-server_8.0.31-1ubuntu20.04_amd64.deb-bundle.tar -C /mysql8进行解压。 需…

结构体基础知识——(OneNote笔记本)

结构体基础知识——&#xff08;OneNote笔记本&#xff09; 代码&#xff1a; #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h>//struct Stu //{ // //学生的相关属性 // char name[20]; // int age; // char sex[5]; // char tele[12]; //} s3, s4; //s3&#x…

RISC-V 基础指令汇总

加载指令 存储指令 PC寻址指令 auipc rd, imm这条指令把 imm &#xff08;立即数&#xff09;左移12位并带符号扩展到64位后&#xff0c;得到一个新的立即数&#xff0c;这个新的立即数是一个有符号的立即数&#xff0c;再加上当前 PC 值&#xff0c;然后存储到 rd 寄存器中。…

【面试经典150 | 滑动窗口】无重复字符的最长子串

文章目录 写在前面Tag题目来源题目解读解题思路方法一&#xff1a;滑动窗口 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法&#xff0c;两到三天更新一篇文章&#xff0c;欢迎催更…… 专栏内容以分析题目为主&#xff0c;并附带一些对于本题涉及到的数据结构等…

用git给github私有仓库上传文件

创建私有仓库可以参考这篇文章的前面7步&#xff1a; 关于Github私有仓库的创建 然后我想在私有仓库上传文件该怎么办呢&#xff1f; 在你的文件夹右键git bash 初始化git git init添加本地文件 git add .上传本地 git commit -m "first commit"设置branch&am…

NetSuite BOM成本查询

这是个23.2的新功能&#xff0c;如题所示是对BOM成本的一个查询工具&#xff0c;是对之前版本那个无用的“Costed Bill of Materials Inquiry”的一次救赎。 其重要的功能是&#xff1a; •基于BOM所使用的版本、工艺路线和成本模板&#xff0c;通过Break Down的方式计算一个装…

Spring学习笔记5 GoF之工厂模式

Spring学习笔记4 Bean的作用域_biubiubiu0706的博客-CSDN博客 出了GoF23种设计模式.还有javaee的设计模式(DAO模式,MVC模式) 设计模式:是一种可以被重复利用的解决方案 GoF23种设计模式可分为三大类: 创建型(5个):解决对象创建问题. 单例模式&#xff0c;工厂方法模式&#x…

18795-2012 茶叶标准样品制备技术条件

声明 本文是学习GB-T 18795-2012 茶叶标准样品制备技术条件. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本标准规定了各类茶叶(除再加工茶)标准样品的制备、包装、标签、标识、证书和有效期。 本标准适用于各类茶叶(除再加工茶)感官品质…