计算机网络5层模型
应用层常见协议
DNS协议
作用:用于实现网络设备名字到IP地址映射的网络服务
特点:DNS是因特网使用的命名系统,它将人们易于记忆的主机名(如www.example.com)转换为机器可识别的IP地址。
FTP协议
作用:用于实现交互式文件传输功能。
特点:FTP支持Standard(主动模式)和Passive(被动模式)两种模式,数据和控制链路分开传输。客户端通过命令字告诉服务器相关信息,服务器则通过状态码反馈操作结果。
HTTP协议
作用:用于实现WWW服务,是万维网上能够可靠地交换文件的重要基础。
特点:HTTP是一个面向对象的协议,基于TCP的可靠传输,采用客户端/服务器的工作模式。在HTTP通信过程中,客户端向服务器发起请求,服务器响应返回客户端需要的信息。
SMTP协议
作用:用于实现电子邮箱传送功能。
特点:SMTP是一种提供可靠且有效电子邮件传输的协议,建模在FTP文件传输服务上。SMTP服务器在默认端口25上监听客户请求,通过三次握手建立连接,然后双方用命令字和状态码进行交互。
SNMP协议
作用:用于管理与监视网络设备(如路由器、交换机等)
特点:SNMP是专门设计用于在IP网络管理网络节点的一种标准协议,使网络管理员能够管理网络效能、发现并解决网络问题以及规划网络增长。
Telnet协议
作用:用于实现远程登录功能。
特点:Telnet是一个简单的远程终端协议,也是因特网的正式标准,又称为终端仿真协议。
POP3
作用:通常被用来接收电子邮件
特点:POP3协议允许用户从邮件服务器上下载邮件到本地计算机上阅读。
传输层协议
TCP协议
特点:TCP是一种面向连接的、可靠的、基于字节流的传输层协议。它提供了数据完整性、顺序性和可靠性的传输,适用于对数据传输要求严格的场景。
功能:TCP通过确认、重传和校验机制来保证数据的可靠传输确保数据不丢失、不重复、按顺序到达。同时,TCP还使用滑动窗口机制来进行流量控制,避免发送方发送速度过快导致接收方无法处理。此外,TCP还通过拥塞控制机制来避免网络拥塞。
UDP协议
特点:UDP是一种无连接的、不可靠的传输层协议。它不需要在数据传输前建立连接,也不保证数据包的顺序性和完整性,
功能:UDP的主要优点是传输效率高、实时性好,适用于对实时性要求高、对数据可靠性要求不高的场景。例如,音频和视频流媒体传输常使用UDP协议,因为即使偶尔丢失一些数据包,也不会对整体播放效果造成太大影响。
网络层协议
IP协议
互联网协议是网络层的核心协议,负责将数据包从一个网络发送到另一个网络。IP协议定义了数据包的格式,以及如何在网络中寻址和路由这些数据包
ICMP协议
互联网控制消息协议是一个用于发送错误消息和其他通知给IP主机的协议。ICMP主要用于诊断网络问题,如数据包无法到达目标主机时发送的“目标不可达"消息。
RIP协议
路由信息协议是一种距离向量路由协议,它允许路由器在IP网络中交换路由信息。RIP基于跳数(即经过路由器的数量)来计算最佳路径,但由于其简单性,它不适合大型网络。
IGMP协议
互联网组管理协议用于管理多播组成员。多播是一种将数据包发送给一组选定接收者的技术,IGMP帮助路由器了解哪些主机是特定多播组的成员。
OSPF协议
开放最短路径优先是一种链路状态路由协议,用于在IP网络中计算最佳路径。OSPF使用Diikstra算法来确定从源到目的地的最短路径,并生成一个无环的路由表。
数据链路层协议
IEEE 802.3协议
它描述了物理层和数据链路层的MAC子层的实现方法,在多种物理媒体上以多种速率采用CSMA/CD(载波侦听多路访问/冲突检测)访问方式。
PPP协议
PPP是一种点到点链路层协议,主要用于在全双工的同异步链路上进行点到点的数据传输。能够实现不同厂商设备之间的互操作性,是广域网中常用的链路层协议之一
ARP协议
就是网络中的设备用来查找另一个设备的物理地址(如以太网MAC地址)时所使用的协议。当你知道一个设备的IP地址,但想要和它进行通信时,你需要知道它的物理地址,因为数据包最终是通过物理网络传输的。这时,ARP协议就发挥作用了,
CSMA/CD协议
CSMA/CD协议是数据链路层的一种重要协议,它通过载波监听和碰撞检测机制,实现了在共享信道上的高效数据传输
物理层协议
RS232协议
RS-232(Recommended Standard 232)是一种标准的串行通信协议,由电子工业联盟(EIA)制定。它定义了串行通信的电气特性、信号时序和数据格式。RS-232协议广泛应用于计算机与外设之间、计算机与计算机之间、以及计算机与工业设备之间的通信。
电气特性:RS-232使用正负电压来表示逻辑状态,通常+3到+15伏表示逻辑“0”(MARK),-3到-15伏表示逻辑“1”(SPACE)。
信号线:RS-232接口通常有25个引脚,但实际通信只需要少数几个引脚,如TXD(发送数据)、RXD(接收数据)、DTR(数据终端就绪)、DSR(数据集就绪)、RTS(请求发送)、CTS(清除发送)等。
数据格式:RS-232支持可变的数据位(5到8位)、可变的停止位(1或2位)和奇偶校验位(无、奇校验或偶校验)。
传输速率:RS-232的传输速率可以从300波特到115.2千波特不等,具体取决于设备和电缆的长度。
距离限制:RS-232通常用于短距离通信,最大距离通常在15米左右,但可以通过使用特殊的电缆和设备扩展到更远的距离。
全双工/半双工:RS-232支持全双工通信,即数据可以同时双向传输,也可以配置为半双工,即数据只能在一个方向上传输。
连接:RS-232使用DB-25或DB-9连接器,但DB-9更为常见。
相关文章:
计算机网络5层模型
应用层常见协议 DNS协议 作用:用于实现网络设备名字到IP地址映射的网络服务 特点:DNS是因特网使用的命名系统,它将人们易于记忆的主机名(如www.example.com)转换为机器可识别的IP地址。 FTP协议 作用:用于实现交互式文件传输功能。 特点:FTP支持Standard(主动…...

Python毕业设计选题:基于Python的无人超市管理系统-flask+vue
开发语言:Python框架:flaskPython版本:python3.7.7数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 系统首页 超市商品详情 购物车 我的订单 管理员登录界面 管理员功能界面 用户界面 员…...

WindowsDocker安装到D盘,C盘太占用空间了。
Windows安装 Docker Desktop的时候,默认位置是安装在C盘,使用Docker下载的镜像文件也是保存在C盘,如果对Docker使用评率比较高的小伙伴,可能C盘空间,会被耗尽,有没有一种办法可以将Docker安装到其它磁盘,同时Docker的数据文件也保存在其他磁盘呢? 答案是有的,我们可以…...

Java面试经典 150 题.P80. 删除有序数组中的重复项 II(004)
本题来自:力扣-面试经典 150 题 面试经典 150 题 - 学习计划 - 力扣(LeetCode)全球极客挚爱的技术成长平台https://leetcode.cn/studyplan/top-interview-150/ 题解: class Solution {public int removeDuplicates(int[] nums)…...

【Three.js】SpriteMaterial 加载图片泛白,和原图片不一致
解决方法 如上图所示,整体泛白了,解决方法如下,添加 material.map.colorSpace srgb const imgTexture new THREE.TextureLoader().load(imgSrc)const material new THREE.SpriteMaterial({ map: imgTexture, transparent: true, opacity:…...
了解神经网络中的激活函数
一、激活函数的特征 非线性,激活函数必须是非线性函数。可微性,训练网络模型时,基于梯度的模型最优化方法要求激活函数必须是可导的。单调性,单调递增或单调递减,单调函数保证模型的简单。隐藏层一般需要使用激活函数…...

配置BGP与IGP交互和路由自动聚合示例
组网需求 如图所示,用户将网络划分为AS65008和AS65009,在AS65009内,使用IGP协议来计算路由(该例使用OSPF做为IGP协议)。要求实现两个AS之间的互相通信。 配置思路 采用如下的思路配置BGP与IGP交互: 在AR…...

代码随想录算法训练营第三十三天 | 62.不同路径 63.不同路径
LeetCode 62.不同路径: 文章链接 题目链接:62.不同路径 思路: 动态规划 使用二维数组保存递推结果 ① dp数组及下标含义 dp[i][j]:表明从(0, 0)到下标为(i, j)的点有多少条不同的路径 ② 递推式: 机器人只能向下或向…...

使用Flask构建RESTful API
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 使用Flask构建RESTful API Flask简介 环境搭建 安装Flask 项目结构 创建应用 路由定义 请求处理 获取查询参数 获取请求体 响应…...

基于springboot的Java学习论坛平台
基于springboot的Java学习论坛平台 摘 要 在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括学习平台的网络应用,在外国学习平台已经是很普遍的方式,不过国内的管理平台可能还处于起步阶段。学习平台具…...
Python离线环境搭建
引言 在软件开发过程中,我们常常会遇到内网环境无法直接访问外网的情况,这就需要我们通过一些特殊手段来搭建Python开发环境。本文将详细介绍如何利用U盘在内网机与外网机之间迁移Python环境及其依赖包。 工具准备 1台内网机1台外网机1个U盘 操作步骤…...

windows下kafka使用出现的问题
kafka启动 启动kafka需要先启动zookeeper,在kafka根目录下先启动zookeeper .\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties启动kafka 另开一个cmd命令行 .\bin\windows\kafka-server-start.bat .\config\server.propertieskafka与jdk版…...

ctfshow文件包含web78~81
目录 web78 方法一:filter伪协议 方法二:input协议 方法三:data协议 web79 方法一:input协议 方法二:data协议 web80 方法一:input协议 方法二:日志包含getshell web81 web78 if(isset($_GET[file]…...
鸿蒙生态认识
好的,让我们更深入地探讨鸿蒙生态的发展机遇、面临的挑战,以及未来的潜力。 对鸿蒙生态的认知与分析 鸿蒙系统作为一种新兴的操作系统,旨在打破设备之间的壁垒,打造一个更加连通的生态环境。以下是对其崛起的进一步分析…...

Hadoop-004-Big Data Tools插件的使用
一、Big Data Tools插件配置流程 1、安装Big Data Tools插件 以IntelliJ IDEA 2024.2.3为例打开setting, 搜索安装Big Data Tools插件后重启IDEA 2、Windows系统基础配置 Windows系统需要做一些基础设置,配合插件使用,将之前下载的hadoop-3.2.4.tar.gz 解压到D…...
linux8在线扩容/home目录
虚机新增1T磁盘 [rootrsb ~]# cat /etc/redhat-release Red Hat Enterprise Linux release 8.8 (Ootpa) [rootrsb ~]# vgs VG #PV #LV #SN Attr VSize VFree ol 2 3 0 wz--n- <2.00t 0 [rootrsb ~]# lvs LV VG Attr LSize Pool Origin Dat…...

【C/C++】模拟实现strcpy
学习目标: 使用代码模拟实现strcpy。 逻辑: strcpy 函数的返回类型是 void 即不返回数据。strcpy 函数的参数类型是 char* ,用于接收数组。strcpy 函数要把一个数组复制到另一个数组。 代码: #define _CRT_SECURE_NO_WARNINGS …...
网络编程番外——IO多路复用的应用说明
一、IO多路复用与多线程 IO多路复用,IO Multiplexing,其实就是在IO上进行监听处理导致线程被阻塞(如果非阻塞就必须不断的轮询,仍然是占用此线程),如果一个IO对应一个线程是不是太浪费了。而且在诸如网络I…...

【Java爬虫的淘宝寻宝记】—— 淘宝商品类目的“藏宝图”
引言: 在淘宝这个广袤的“商品宇宙”中,每一件商品都是一颗璀璨的星球,而商品类目就是连接这些星球的星际航道。今天,我们将派遣一位勇敢的Java爬虫宇航员,去揭开这些星际航道背后的秘密——商品类目。准备好了吗&…...

探索Python文档自动化的奥秘:揭开docxtpl库的神秘面纱
文章目录 探索Python文档自动化的奥秘:揭开docxtpl库的神秘面纱1. 背景介绍2. 库简介3. 安装指南4. 基础函数介绍5. 实际应用场景6. 常见问题及解决方案7. 总结 探索Python文档自动化的奥秘:揭开docxtpl库的神秘面纱 1. 背景介绍 在日常工作中…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...

PL0语法,分析器实现!
简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
鸿蒙(HarmonyOS5)实现跳一跳小游戏
下面我将介绍如何使用鸿蒙的ArkUI框架,实现一个简单的跳一跳小游戏。 1. 项目结构 src/main/ets/ ├── MainAbility │ ├── pages │ │ ├── Index.ets // 主页面 │ │ └── GamePage.ets // 游戏页面 │ └── model │ …...

C++实现分布式网络通信框架RPC(2)——rpc发布端
有了上篇文章的项目的基本知识的了解,现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...
绕过 Xcode?使用 Appuploader和主流工具实现 iOS 上架自动化
iOS 应用的发布流程一直是开发链路中最“苹果味”的环节:强依赖 Xcode、必须使用 macOS、各种证书和描述文件配置……对很多跨平台开发者来说,这一套流程并不友好。 特别是当你的项目主要在 Windows 或 Linux 下开发(例如 Flutter、React Na…...

高效的后台管理系统——可进行二次开发
随着互联网技术的迅猛发展,企业的数字化管理变得愈加重要。后台管理系统作为数据存储与业务管理的核心,成为了现代企业不可或缺的一部分。今天我们要介绍的是一款名为 若依后台管理框架 的系统,它不仅支持跨平台应用,还能提供丰富…...

leetcode_69.x的平方根
题目如下 : 看到题 ,我们最原始的想法就是暴力解决: for(long long i 0;i<INT_MAX;i){if(i*ix){return i;}else if((i*i>x)&&((i-1)*(i-1)<x)){return i-1;}}我们直接开始遍历,我们是整数的平方根,所以我们分两…...