JAVAEE——网络初始

文章目录

  • 网络发展史
    • 独立模式
    • 网络模式
      • 局域网LAN
      • 路由器的诞生
  • 网络通信的基础
    • IP地址
    • 端口号
  • 认识协议
    • OSI七层模型
    • TCP/IP五层模型

网络发展史

独立模式

在原始的年代中电脑间想要通信需要两台电脑连接一根网线,但是一台电脑基本上只有一个接口。因此想要链接更多的电脑是不可以的。

网络模式

随着时代的发展越来越多的计算机需要进行通信,那么这时候原来的是无法满足人们的需求的,这时候该怎么办呢?于是就进入了网络时代。
网络共享:将多台电脑连接起来完成数据共享。

局域网LAN

进入网络时代后我们以网络覆盖范围为基准将网络分为了局域网,城域网,广域网局域网的建立是通过一个设备叫做集线器诞生的。他是什么样子的呢?换句话说我们为什么需要集线器呢?我们来看看下述示意图
在这里插入图片描述
在没有集线器的时候主机(可以理解为电脑)之间是通过一根网线进行直链接的,这时候有一个弊端那就是这里面的消息会通过这一根网线传向所有的电脑并且,更为严重的问题是假如我们的电脑越多,那么这一根网线的传输效率就非常的慢,这时候怎么 解决呢?那就是用集线器,实现各个电脑通过集线器可以将自己与其他主机进行连接。
在这里插入图片描述
此时多个电脑之间的网线只需要链接集线器就可以了,并且自己想要发送的消息只需要交给集线器由集线器交给目标就可以了那么这时候一个局域网就组成了。


但是这时候只是解决了当需要链接的主机过多,导致的网线太长之类的问题还没有解决我们的数据传输的问题呢,因为集线器发送消息就像老师点名一样把自己的数据发给与自己相连的所有主机,那么就没有私密性可言了,所以人们又发明了交换机
在这里插入图片描述
交换机是可以实现我们说的主机与主机之间的发消息的私密性问题,可是如果我们的电脑很多怎么办?这时候导致我们所需要的交换机也变多了,那么这时候怎么办?聪明的人们就想到了我再发明一个机器用来让交换机链接不就好了这时候路由器诞生了

路由器的诞生

在这里插入图片描述
此时就可以用路由器组成局域网了。

网络通信的基础

现在网络通信的硬件上的基础我们满足了我们已经组成了一个网络空间了,那么如何在这个网络内发送和接受消息呢?这时候我们要解决两个问题。

  1. 要能够在这个网络内找到某个主机
  2. 在找到这个主机后要找到这个主机中进行通信的那个进程

第一点大家应该比较容易理解就是第二点不懂,我们来讲述一下。我们用QQ进行举例,我们两个人用QQ互相发消息。
在这里插入图片描述
而如何确定一个唯一的进程呢?那么就需要知道这个进程运行在哪个主机上,并且需要知道这个进程在这台主机的端口号是多少由此才可以确定唯一的一个进程。

IP地址

有了上面的了解我们可以知道IP地址是用来确定一台主机的。
地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节),如:
01100100.00000100.00000101.00000110。
通常用“点分十进制”的方式来表示,即 a.b.c.d 的形式(a,b,c,d都是0~255之间的十进制整数)。如:
100.4.5.6。

端口号

端口号是用来确定这个主机上唯一的一个进程的。
端口号是0~65535范围的数字,在网络通信中,进程可以通过绑定一个端口号,来发送及接收网络数
据。

认识协议

那么有了上面的基础我们来认识一下协议,什么是协议呢?协议就是规定,一种约定的意思,就像两个公司之间合作需要有合同一样,两台主机间进行交流也是需要协议的,可是我们要知道一台主机发出一条消息是涉及到方方面面的,从上到下一次分为了很多层。

OSI七层模型

在这里插入图片描述
在这里插入图片描述
从上到下依次为,应用层,表示层,会话层,表示层,传输层,网络层,数据链路层,物理层。
但是这个模型不仅复杂繁琐,而且还没啥实际用处,因此在开发的时候我们用的一般都是TCP/IP五层协议

TCP/IP五层模型

在这里插入图片描述
那么上面说了那么多其实就是想要告诉各位我们的主机发送消息这中间时经过很多层的,因此我们要知道,想用一个协议去规范这么多层的程序和硬件时不可能的,因此我们就需要对每一层都设计出不同的协议,那么一个消息究竟时如何传递的呢?
在这里插入图片描述
这时候我们知道一个消息的发送是分为发送方,和接受方的,发送方发送消息从上而下要经过应用层,传输层,网络层,数据链路层,物理层的。那么在这些层的消息是如何传递的呢?
在这里插入图片描述
此时用户输入的数据在经过每层的时候每一层都需要按照特定的协议在这个数据前加自己的报头,这个作用是什么呢?主要是为了使得用户数据在传递过程中可以有效的识别,我们可以理解为送快递,你的快递每当经过一个网点的时候都会将包装上的信息和二维码进行更新。并且往里面加入新的信息这个过程就是加报头的过程,可是这个根协议有什么关系我们来看一下下面的图
在这里插入图片描述
发送方到接受方的消息传播就是这样的一张图,发送方输入消息,消息从上到下经过各个层级的时候,会加报头,那么接收方的设备接受到消息后,为了能把你需要的信息呈现出来就会对收到的信息从下往上进行解报头。也就是分用,那么如何保证你的主机加的报头我这个主机可以进行正确的分用呢?那就是在各个层之间规定好固定的协议,这样就可以保证每个层可以按照这个规定正确的解报头以及正确的分用了。

	努力挣钱让家庭幸福美满吧。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

函数重载和引用【C++】

文章目录 函数重载什么是函数重载?函数重载的作用使用函数重载的注意点为什么C可以函数重载,C语言不行? 引用什么是引用?引用的语法引用的特点引用的使用场景引用的底层实现传参时传引用和传值的效率引用和指针的区别 函数重载 什…

全国火情预报卫星遥感应用方案

一、引言 火情预报应急卫星遥感解决方案是一种利用卫星遥感技术进行火灾预警和应急响应的方法。该方案通过实时监测和分析森林、草原等地区的火情信息,为火灾预警和应急响应提供科学依据,有效减少火灾造成的损失。本技术文档将介绍火情预报应急卫…

Android-NDK的linux交叉编译环境

NDK工具包下载 NDK 下载 | Android NDK | Android Developers https://github.com/android/ndk/wiki/Unsupported-Downloads 以android-ndk-r26c下载为例,下载后将压缩包解压至/usr目录下 CMakeLists编译选项设置 编译平台变量判断条件中增加一下android条件…

7款公司电脑监控软件

7款公司电脑监控软件 研究证明,人们在家办公的效率比在办公室办公的效率低一半,其中原因是缺少监督,即便在公司办公,还存在员工偷闲的时刻,比如聊天、浏览无关网站、看剧、炒股等,企业想提高员工的工作效率…

TCP 三次握手与四次挥手面试题(计算机网络)

TCP 基本认识 TCP 头格式有哪些? 序列号:在建立连接时由计算机生成的随机数作为其初始值,通过 SYN 包传给接收端主机,每发送一次数据,就「累加」一次该「数据字节数」的大小。用来解决网络包乱序问题。 确认应答号&a…

STC89C52学习笔记(二)

STC89C52学习笔记(二) 综述:本文简要介绍了51单片机以及示例了如何成功创建并运行一个程序(点亮一个LED)。 一、单片机介绍 单片机简称MCU,MCUCPURAMROM定时器中断系统通讯协议等单片机任务是信息采集、…

T-Mamba:用于牙齿 3D CBCT 分割的频率增强门控长程依赖性

T-Mamba:用于牙齿 3D CBCT 分割的频率增强门控长程依赖性 摘要Introduction方法T-Mamba architectureTim block T-Mamba: Frequency-Enhanced Gated Long-Range Dependendcy for Tooth 3D CBCT Segmentation 摘要 三维成像中的高效牙齿分割对于正畸诊断至关重要&am…

vue 中使 date/time/datetime 类型的 input 支持 placeholder 方法

一般在开发时,设置了 date/time/datetime 等类型的 input 属性 placeholder 提示文本时, 发现实际展示中却并不生效,如图: 处理后效果如图: 处理逻辑 判断表单项未设置值时,则设置其伪类样式,文…

在线免费图像处理

功能 尺寸修改(自定义和内置常用的照片尺寸)图像压缩(比较好的情况最高可以压缩 10 倍, 如果是无损压缩可以压缩 5 倍左右,参数范围 50~70 左右)图像方向修改图像格式修改修改后的效果支持实时反馈, 并且支持点击图像预览,同时保留历史修改图片(在预览中可以查看)支持修改撤回…

2024-04-08 NO.6 Quest3 自定义交互事件

文章目录 1 交互事件——更改 Cube 颜色2 交互事件——创建 Cube2.1 非代码方式2.2 代码方式 ​ 在开始操作前,我们导入上次操作的场景,相关介绍在 《2024-04-08 NO.5 Quest3 手势追踪进行 UI 交互-CSDN博客》 文章中。 1 交互事件——更改 Cube 颜色 …

Java设计模式之创建型模式(二)原型模式

原型模式 1、原型模式1-1、应用场景1-2、举个 软栗子1-3、举个 硬栗子1-3、举个实务栗子 学习原型模式的目的:原型模式的目的在于通过复制现有的实例来创建新的对象,以避免通过构造函数创建对象时可能带来的性能开销,同时可以控制对象的深度复…

Matlab|基于蒙特卡洛的风电功率/光伏功率场景生成方法

目录 主要内容 部分代码 结果一览 下载链接 主要内容 该模型主要用于风电功率和光伏功率场景生成与缩减,利用多元高斯分布构建时间相关性,并采用蒙特卡洛方法进行仿真,风电功率采用Weibull分布,光伏功率采用Beta分布…

浅析人工智能与数字化的特点

人工智能无疑具有数字化的特点。作为现代科技的一个重要分支,人工智能的发展与数字化进程紧密相连,数字化已经成为了人工智能发展的基础和前提。 首先,我们来理解一下什么是数字化。数字化是将模拟信号转换为数字信号的过程,即将连…

[论文阅读笔记30] (AAAI2024) UCMCTrack: Multi-Object Tracking with Uniform CMC 详细推导

这是群友的一篇工作,之前也没仔细看,正好今天放假,打算读一下论文陶冶情操。 这篇文章的公式比较多,我做一篇笔记解释一下,希望对大家有帮助~ 论文地址: https://ojs.aaai.org/index.php/AAAI/article/view/28493 代…

java数据结构与算法刷题-----LeetCode238. 除自身以外数组的乘积

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 文章目录 1. 动态规划:左右乘积列表2. 滚动数组对动态规划过程…

uni-app(H5)论坛 | 社区 表情选择 UI组件

项目源码请移步:bbs 效果 实现思路 表情切换 人物、动物、小黄人不同表情之间的切换实际就是组件的切换 emoji表情 emoji表情本身就是一种字符 如需其他emoji表情可参考 EmojiAll中文官方网站 需要注意的就是数据库的存储格式需要支持emoji表情,我项…

聚道云连接器打通红圈CRM和金蝶云星辰,赋能环境科技公司数字化转型

一、客户介绍 某环境科技有限公司是一家专注于环保科技领域的领先企业,致力于为客户提供全方位的环境解决方案。公司拥有一支经验丰富、技术精湛的团队,不断推动环保技术的创新与应用。作为业内的佼佼者,该公司在环境治理、资源回收和节能减…

zookeeper源码(12)命令行客户端

zkCli.sh脚本 这个命令行脚本在bin目录下: ZOOBIN"${BASH_SOURCE-$0}" ZOOBIN"$(dirname "${ZOOBIN}")" ZOOBINDIR"$(cd "${ZOOBIN}"; pwd)"# 加载zkEnv.sh脚本 if [ -e "$ZOOBIN/../libexec/zkEnv.sh&qu…

GitHub教程:最新如何从GitHub上下载文件(下载单个文件或者下载整个项目文件)之详细步骤讲解(图文教程)

🐯 GitHub教程:最新如何从GitHub上下载文件(下载单个文件或者下载整个项目文件)之详细步骤讲解(图文教程) 📁 文章目录 🐯 GitHub教程:最新如何从GitHub上下载文件(下载单个文件或者下载整个项目文件)之详细步骤讲解(图…

FLV 封装格式详解

FLV 封装格式详解 FLV 封装格式详解简介FLV 格式FLV headerFLV bodyback-pointerFLV tagFLV tag headerFLV tag data:audio tagFLV tag data:video tagFLV tag data:script tag 总结:FLV 层次结构实例:flvAnalyser 解析…