JAVAEE——网络初始

news2024/9/22 21:29:33

文章目录

  • 网络发展史
    • 独立模式
    • 网络模式
      • 局域网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五层模型

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

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

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

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

相关文章

RISCV指令集体系简读之RV32I

RV32I 指令格式 用于寄存器-寄存器操作的R类型指令用于短立即数和访存load操作的I型指令用于访存store操作的s型指令用于条件跳转操作的B类型指令用于长立即数的U型指令用于无条件跳转的J型指令 特点: 所有指令都是32bits, 简化了指令解码;…

SuperMap GIS基础产品FAQ集锦(20240415)

一、SuperMap iDesktopX 问题1:请教一下,同一份数据,用idesktop11.0.1、idesktopX11.1.1和idesktopX11.1.1的临时包,做同一分析,得到的结果数据集都不一样,有的是57条,有的是86条,有…

如何在树莓派安装Nginx并实现固定公网域名访问本地静态站点

文章目录 1. Nginx安装2. 安装cpolar3.配置域名访问Nginx4. 固定域名访问5. 配置静态站点 安装 Nginx(发音为“engine-x”)可以将您的树莓派变成一个强大的 Web 服务器,可以用于托管网站或 Web 应用程序。相比其他 Web 服务器,Ngi…

【C++语言】初步认识面向对象编程类和对象(上)

文章目录 前言一.初步认识面向过程和面向对象编程1.面向过程编程初步认识2.面向对象编程初步认识 二.C类1. 类的引入:2. 类的定义3.类的访问限定符&&封装3.1 访问限定符3.2 封装 4.类的实例化5.如何计算类的大小 总结C语言系列学习目录 前言 面向对象编程 类…

深度探索:Secure Hash Algorithm(SHA)全景解析

title: 深度探索:Secure Hash Algorithm(SHA)全景解析 date: 2024/4/15 18:33:17 updated: 2024/4/15 18:33:17 tags: SHA安全抗碰撞性算法版本实现细节性能优化发展历史应用案例 密码学中的哈希函数 一、哈希函数的定义 哈希函数是一种数…

车载终端设备主板方案_MTK平台智能后视镜行车记录仪PCBA定制开发

智能后视镜集成了车辆行车记录、倒车影像、AR实景导航、语音助手、ADAS辅助、云电子狗、蓝牙通话、影音娱乐等功能,为驾驶者提供全方位的驾驶辅助体验。 智能后视镜主板解决方案,采用了联发科MT6762八核处理器,拥有主频2.0GHz,采用…

Ubuntu与主机windows共享文件夹

一、创建共享文件夹: 虚拟机->设置->选项->共享文件夹->总是启用->选择本地的共享文件夹(如E:\Share)->确定。 二、设置挂载: 首先赋予/etc/fstab文件可编辑的权限; sudo chmod 777 /…

Langchain入门到实战-第二弹

Langchain入门到实战 Langchain快速入门官网地址Langchain概述Langchain调用大模型更新计划 Langchain快速入门 官网地址 声明: 由于操作系统, 版本更新等原因, 文章所列内容不一定100%复现, 还要以官方信息为准 https://python.langchain.com/Langchain概述 LangChain是一个…

从旺店通·旗舰奇门到金蝶云星空通过接口配置打通数据

从旺店通旗舰奇门到金蝶云星空通过接口配置打通数据 对接系统旺店通旗舰奇门 慧策(原旺店通)是一家技术驱动型智能零售服务商,基于云计算PaaS、SaaS模式,以一体化智能零售解决方案,帮助零售企业数字化智能化升级&#…

实时渲染 -- 流明(Lumen)

首先我们需要知道Lumen需要解决哪些问题。 很多人都会问,既然已经有了硬件的Raytracing ,我们为什么还要Lumen呢。这是由于很多硬件并不支持 Realtime Raytracing,对于支持的那些硬件, N 卡还算是勉强可以,而 A 卡支持…

科技感画册制作方法,视觉效果直接拉满

随着科技的不断进步,科技感画册制作也变得更加精彩和引人注目。通过巧妙地运用先进的设计工具和技术,以及结合创新的视觉元素,可以轻松地将画册的视觉效果直接拉满。 那你想知道怎么制作吗?现在我来教你这个方法吧,方法…

第二期书生浦语大模型训练营第三次笔记

RAG RAG是什么? RAG(Retrieval Augmented Generation)技术,通过检索与用户输入相关的信息片段,并结合外部知识库来生成更准确、更丰富的回答。解决 LLMs 在处理知识密集型任务时可能遇到的挑战, 如幻觉、知识过时和缺…

Unity开发holoLens2应用时的ProjectSettings配置

正确的进行Unity工程配置,才能进行后续的【发布】和【部署】操作… 本案例开发环境说明: Unity2021.3.18Win10VS2022HoloLens2 一、平台设置 二、Quality画面质量设置 三、Player玩家设置 四、XR-Plug设置 五、环境测试 导入一个官方demo&#xff0c…

安装jmeter和ant

安装jmeter和ant 安装java环境 安装jdk和jre 下载Java SE Development Kit 8 Java SE subscribers will receive JDK 8 updates until at least December 2030. 选择指定包进行安装,如windows 共享账号参考:Oracle官网 账号及密码 目前官网下载低…

论文速读:Do Generated Data Always Help Contrastive Learning?

在对比学习领域,最近很多研究利用高质量生成模型来提升对比学习 给定一个未标记的数据集,在其上训练一个生成模型来生成大量的合成样本,然后在真实数据和生成数据的组合上执行对比学习这种使用生成数据的最简单方式被称为“数据膨胀”这与数据…

Android,AMS、WMS、PKMS添加动态控制debug开关功能

问题背景 在framework源码中有很多debug开关,通常我们想要看某个模块的日志,比如说广播,就需要去修改源码,把对应的debug值改为true,但是这种方法耗时耗力,比如说我想看sendBroadcast的流程,但是BroadcastQueue中有很多debug开关,如下: 这种就需要去修改对应的源码才…

消费增值新模式:让每一分钱都更有价值

亲爱的消费者们,大家好!今天我想和大家探讨一种新颖的消费方式——消费增值,它让您的每一次消费都蕴含了额外的价值,让消费变得更加有意义。 在过往的消费观念里,我们往往只是简单地将钱花出去,购买所需的商…

文件传输工具WinSCP安装与使用教程

目录 一、WinSCP下载 二、WinSCP安装 三、WinSCP使用 WinSCP介绍: WinSCP 是一个 Windows 环境下使用的 SSH 的开源图形化 SFTP 客户端。同时支持 SCP 协议。它的主要功能是在本地与远程计算机间安全地复制文件,并且可以直接编辑文件。 一、WinSCP下…

图片壁纸社区app前后端开源小程序源码

图片壁纸社区APP前后端开源小程序源码,修改了开源版的前端样式,变成图片社区,也可以用来作为壁纸 源码下载地址抄笔记 (chaobiji.cn)

SpringBoot与Vue前后分离项目中返回结果为Long类型精度丢失问题处理

SpringBoot与Vue前后分离项目中返回结果为Long类型精度丢失问题处理 文章目录 SpringBoot与Vue前后分离项目中返回结果为Long类型精度丢失问题处理1. 前后分离环境1. 表结构2. 实体类 2. 问题描述3. 原因分析4. 处理方法(后端)1. 处理方式1(JsonSerialize注解)2. 处理方式2(Jso…