何为网络协议?一图知晓网络过程。

图片

网络协议就是计算机之间沟通的语言

为了有效地交流,计算机之间需要一种共同的规则或协议,

就像我们和老外沟通之前,要先商量好用哪种语言,

要么大家都说中文,要么大家都说英语,这才能有效地沟通。

网络协议就是计算机之间的语言,它们有一定的规则,规定了数据是怎么传输的,确保了数据在互联网上的传输是有序、可靠的。

🎢 链路过程

发送端:从下到上(应用层到物理层)。

接收端:从上到下(物理层到应用层)。

OSI参考模型:

OSI(Open System Interconnect),即开放式系统互连。

名称

层次

功能

物理层

1

实现计算机系统与网络间的物理连接

数据链路层 

2

进行数据打包与解包,形成信息帧

网络层

3

提供数据通过的路由

传输层

4

提供传输顺序信息与响应

会话层

5

建立和中止连接

表示层

6

数据转换、确认数据格式

应用层 

7

提供用户程序接口

协议层次

图片

下面这张动图形象地展示了8种流行的网络协议:

图片

图片

一、HTTP(超文本传输协议)

图片

「HTTP协议就像一个邮递员,负责把网页内容送到你的电脑上。」

**协议定义**:超文本传输协议(Hypertext Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣,因为它使开发和部署非常地直截了当。

**场景**:当我们使用浏览器访问网页时,浏览器会向服务器发送HTTP请求,请求获取网页内容。服务器接收到请求后,会返回相应的HTML、CSS、JavaScript等文件,浏览器再将这些文件解析并渲染成我们看到的网页。

图片

二、HTTPS(超文本传输协议安全版)

图片

HTTPS协议就像一位保镖,守护着我们的信息安全。无论是在网上银行交易还是在网上购物,保镖都会确保我们的资金和个人信息不会被不法分子窃取。

**协议定义**:HTTPS (全称:Hypertext Transfer Protocol Secure),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在HTTP 的基础下加入SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面。

**场景**:在进行网上银行、网上支付或登录个人账号等敏感操作时,HTTPS协议会保护我们的数据不被窃取或篡改。通过使用加密技术,HTTPS确保数据在传输过程中的机密性和完整性。

图片

三、WebSocket

图片

「WebSocket就像一位实时的接线员,能够让我们与网站进行实时对话。无论是与朋友聊天还是查看股票行情,接线员都会实时传递信息给我们,让我们随时掌握最新动态。

**协议定义**:WebSocket 是独立的、创建在 TCP 上的协议。Websocket 通过HTTP/1.1 协议的101状态码进行握手。为了创建Websocket连接,需要通过浏览器发出请求,之后服务器进行回应,这个过程通常称为“握手”(handshaking)。

**场景**:WebSocket常用于实时聊天、股票行情、在线游戏等需要实时交互的应用中。通过WebSocket,服务器可以实时推送最新的消息或数据给客户端,实现信息的即时更新和交互。

图片

四、TCP(传输控制协议)

图片

TCP就像一位严谨的快递员,他会仔细核对包裹的内容,确保没有遗漏或错误。无论遇到多大的风雨或困难,他都会坚持将包裹安全送达目的地

**协议定义**:传输控制协议(TCP,Transmission Control Protocol)是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议

**场景**:TCP广泛应用于文件传输、电子邮件、网页浏览等场景。无论是下载文件还是发送邮件,TCP都会确保数据能够准确无误地到达目的地。

图片

五、UDP(用户数据报协议)

图片

UDP就像一位粗心的快递员,他送快递的速度很快,但偶尔也会丢件。虽然有些小瑕疵,但在某些场景下,我们更看重的是他的速度和效率。

**协议定义**:UDP是一种无连接的、不可靠的、基于数据报的传输层通信协议。它追求的是传输速度而非可靠性,适用于对实时性要求较高但对数据完整性要求不高的场景。

**场景**:UDP常用于视频流媒体、在线游戏等实时性要求较高的应用中。在这些场景中,即使偶尔丢失一些数据包,也不会对整体体验造成太大影响。

图片

六、SMTP(简单邮件传输协议)

图片

「SMTP就像一位勤劳的邮递员,负责将我们的信件准确无误地送到收件人的信箱里。无论是重要的商务邮件还是温馨的祝福,他都会尽职尽责地完成传递任务。」

**协议定义**:SMTP是一种用于发送电子邮件的协议,它规定了电子邮件在发送过程中的格式和传输方式。

**场景**:当我们使用电子邮件客户端或网页邮箱发送邮件时,SMTP协议会负责将邮件从我们的邮箱传递到收件人的邮箱。

图片

七、FTP(文件传输协议)

图片

「FTP就像一位专业的文件搬运工,他可以帮助我们将文件从一个地方搬运到另一个地方。无论是备份重要文件还是分享资料给同事,他都能高效地完成任务。」

**协议定义**:文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。

**场景**:FTP常用于在不同计算机之间共享文件,比如将文件从本地计算机上传到服务器,或从服务器下载文件到本地计算机。

这些网络协议虽然各自有不同的特点和适用场景,但它们共同构成了互联网的基石。正是有了这些协议的存在,我们才能享受到便捷的在线生活。希望通过本文的介绍,你能对这些网络协议有更深入的了解和认识!

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

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

相关文章

OSPF中配置静态路由负载分担实验简述

OSPF中配置静态路由负载分担 实验简述 在静态路由负载分担中,多个路由器被配置为共享负载的目标,以实现流量的均衡分配。 到达目的地有N条相同度量值的路径,默认值60,N条路由是等价路由,数据报文在N条链路上轮流发送。…

探索基于WebRTC的有感录屏技术开发流程

title: 探索基于WebRTC的有感录屏技术开发流程 date: 2024/4/7 18:21:56 updated: 2024/4/7 18:21:56 tags: WebRTC录屏技术屏幕捕获有感录屏MediaStream实时传输音频录制 第一章:技术原理 WebRTC(Web Real-Time Communication)是一种开放源…

SQL Sever 2008 安装教程

先从官网下载程序:下载地址 打开上述链接后,点击下载按钮。 就会跳出下面这个界面,如果你的电脑是64位的请选择下图中这两个程序。 下载完成后,在电脑磁盘中找到这两个文件,注意安装的顺序,先安装 SQLEXPR…

Linux:软硬链接及动静态库

一、Linux中的链接文件 1.1硬链接及应用场景 ln//创建硬链接 我们再创建一个硬链接生成的文件。 我们可以看到mlink.hard的inode和makefile.c的inode都是一样的,inode一样里面的数据自然也是一样。相当于对make.file进行了一个重命名,所以硬链接一定没…

2023年蓝桥杯省赛——买二赠一

目录 题目链接:1.买二赠一 - 蓝桥云课 (lanqiao.cn) 题目描述 输入格式 输出格式 样例输入 样例输出 样例说明 思路 队列贪心 代码实现 总结 题目链接:1.买二赠一 - 蓝桥云课 (lanqiao.cn) 题目描述 某商场有 N 件商品,其中第 i 件…

漫谈:“标准”是一种幻觉 C++语言标准的意义

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的,可以在任何平台上使用。 “标准”这个词很迷惑&#xf…

铸铁平台的单围和双围是什么——北重机械

铸铁平台的单围和双围是指平台的围栏结构。单围指平台只有一面围栏,通常用于平台的三个边界上,另一边是与建筑物相连的。双围指平台两侧围栏都有,即平台四个边界都有围栏。双围结构比单围结构更加安全,可以防止人员和物品从平台四…

CleanmyMac 苹果电脑清理软件,为你的 Mac 提速!

Apple Macbook 已成为当今职场不可或缺的高效助手,尤其在普遍的远程办公场景下,其运行流畅度对工作效率及用户体验至关重要。虽然长期使用会使Mac电脑性能自然衰退,但大部分导致系统变慢的因素其实可经由用户自行调整得到显著改善&#xff0c…

linux 设置命令输入行高亮(与软件无关:xshell等)

在命令执行后输出内容比较多的情况下,很难查看自己的历史命令 这个配置是系统的配置:取消.bashrc文件中force_color_prompt=yes的注释即可 (和连接服务器的软件无关) 具体的操作如下: 执行以下命令,查看配置所在的行数root@hecs-166280:~# cat .bashrc -n | grep force_…

Java Lambda 表达式(详细)

Java Lambda 表达式 Lambda 的发展史 Java Lambda 表达式是在 Java 8 版本中引入的重要特性,它描述了一种更简洁、更灵活的方式来处理函数式编程。 在 Java 8 之前,要实现函数式编程,需要通过匿名类实现接口的方式。这样的代码通常比较冗长…

深入MyBatis的动态SQL:概念、特性与实例解析

MyBatis 是一个优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。它可以使用简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO,即普通的 Java 对象为数据库中的记…

MacOS Docker 部署 Redis 数据库

一、简介 Redis是一个开源的、使用C语言编写的、基于内存亦可持久化的Key-Value数据库,它提供了多种语言的API,并支持网络交互。Redis的数据存储在内存中,因此其读写速度非常快,每秒可以处理超过10万次读写操作,是已知…

milvus search api的数据结构

search api的数据结构 此api的功能是向量相似度搜索(vector similarity search) 一个完整的search例子: 服务端collection是一个hnsw类型的索引。 import random from pymilvus import (connections,Collection, )dim 128if __name__ __main__:connections.connect(alias…

Django检测到会话cookie中缺少HttpOnly属性手工复现

一、漏洞复现 会话cookie中缺少HttpOnly属性会导致攻击者可以通过程序(JS脚本等)获取到用户的cookie信息,造成用户cookie信息泄露,增加攻击者的跨站脚本攻击威胁。 第一步:复制URL:http://192.168.43.219在浏览器打开,…

基于java JSP 实现的固定资产管理系统

开发语言:Java 框架:ssm 技术:JSP JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea 系统展示 前台首页功能模块 固…

Spring: 后端状态码如何与http状态码保持一致

文章目录 一、背景二、解决方案 一、背景 今天使用postman在做接口测试的时候发现了一个有趣的问题:响应体的status和http的status一样,出于好奇对该现象进行了总结。 二、解决方案 通过拦截器ResponseBodyAdvice,做到统一拦截 Controll…

day03 51单片机

51单片机学习 1 模块化编程 1.1 什么是模块化编程 随着我们的代码越来越复杂,我们的main.c越来越长,阅读性也越来越差。如果将来开始做项目,我们可能要同时操作好几个模块,这种情况下我们无法再把代码写到同一个文件,而是要分模块管理代码。 具体实现方法,就是将源码…

三防平板定制服务:亿道信息与个性化生产的紧密结合

在当今数字化时代,个性化定制已经成为了市场的一大趋势,而三防平板定制服务作为其中的一部分,展现了数字化技术与个性化需求之间的紧密结合。这种服务是通过亿道信息所提供的技术支持,为用户提供了满足特定需求的定制化三防平板&a…

YOLOV8 + 双目测距

YOLOV8 双目测距 1. 环境配置2. 测距流程和原理2.1 测距流程2.2 测距原理 3. 代码部分解析3.1 相机参数stereoconfig.py3.2 测距部分3.3 主代码yolov8-stereo.py 4. 实验结果4.1 测距4.2 测距跟踪4.3 测距跟踪分割4.4 视频展示 相关文章 1. YOLOv5双目测距(python&…

matlab/simulink仿真全合集---电力电子的simulink仿真

simulink仿真新手大礼包,共整理了9份simulink仿真模型,每一份都是完美运行,适合电气工程专业/电力电子专业的新手学习。 1、Boost电路 simulink 仿真,boost 电路模块搭建和用传递函数进行验证, 电流开环控制 、电流闭…