JavaEE 初阶第十八期:叩开网络世界的大门

专栏:JavaEE初阶起飞计划

个人主页:手握风云

目录

一、网络发展史

1.1. 独立模式

1.2. 网络互连

二、网络分类

2.1. 局域网

2.2. 广域网

三、IP地址

3.1. 概念

3.2. 格式

四、端口号

4.1. 概念

4.2. 格式

五、协议

5.1. 概念

5.2. 作用

5.3. 五元组

5.4. 协议分层

六、TCP/IP分层模型

七、网络设备所在分层

八、封装和分用


一、网络发展史

1.1. 独立模式

        在互联网诞生之前,早期的计算机系统是独立且封闭的。这些大型主机(Mainframe)通常服务于单一机构,比如大学、政府部门或大型企业。每台计算机都拥有自己的操作系统和处理能力,但它们彼此之间无法直接通信或共享数据。这个阶段的计算模式类似于一个独立的岛屿,信息和资源被严格地限制在各自的系统内部。

        这种“独立模式”的特点是:

  • 封闭性强:系统之间缺乏标准化的通信协议,数据传输需要通过物理介质(如磁带或软盘)手动复制和移动。
  • 资源利用率低:每个系统都必须独立拥有所有所需的资源和数据,无法实现资源的集中管理和共享。
  • 沟通受限:不同机构或部门之间的数据交换效率低下,极大地阻碍了合作与信息流通。

        然而,正是这种模式的局限性,促使人们思考如何让计算机能够互相连接,从而为后来的网络互连奠定了基础。

1.2. 网络互连

        “网络互连”是互联网发展史上最关键的飞跃。它的核心思想是创建一个“网络的网络”,让原本孤立的计算机系统能够通过统一的规则互相交流。这一进程始于20世纪60年代末,美国国防部高级研究计划局(ARPA)创建的 ARPANET 是其雏形。

        “网络互连”模式的关键转折点是 TCP/IP 协议族的诞生。这套协议就像是不同语言之间的“通用翻译器”,它将数据分割成小的数据包,并确保这些数据包能够准确、高效地在不同类型的网络中传输和重组。这使得不同制造商、不同技术的计算机系统能够首次实现无缝连接。

        随着越来越多的网络(包括大学、研究机构和后来的商业网络)接入 ARPANET,并采用 TCP/IP 协议,一个跨越地域、开放互联的全球网络逐渐形成。这就是现代互联网的开端。

二、网络分类

2.1. 局域网

        局域网(Local Area Network,简称 LAN)是本地、局部组建的私有网络,也称为内网。其内部主机之间能方便地进行网络通信,但未连接的局域网之间无法直接通信。组建方式多样,包括基于网线直连多台主机,或通过集线器、交换机,以及交换机与路由器组合等方式实现连接。

2.2. 广域网

        广域网(Wide Area Network,简称 WAN)则是通过路由器将多个局域网连接起来,形成的大范围网络,局域网是广域网的子网。例如,将分布在各地甚至海外的分公司通过专线连接,便构成广域网;全球化的公共型广域网即互联网(公网、外网),是广域网的子集,有时 “广域网” 也泛指互联网。

三、IP地址

3.1. 概念

        IP地址主要用于标识网络主机、其他网络设备(如路由器)的网络地址。简单说,IP地址用于定位主机的网络地址。就像我们发送快递一样,需要知道对方的收货地址,快递员才能将包裹送到目的地。

3.2. 格式

        IP地址本质上一个32位的整数,32位地址分成4个部分,以.分割,通常用“点分十进制”来表示,每个部分都是0~255之间的十进制整数。

四、端口号

4.1. 概念

        在网络通信中,IP地址⽤于标识主机网络地址,端口号可以标识主机中发送数据、接收数据的进程。 简单说:端口号用于定位主机中的应用程序,像Chrome浏览器、微信,都需要联网。比如,快递,不光需要确认收货地址,还需要确认收件人的手机号。

4.2. 格式

        口号是0~65535范围的数字,在网络通信中,进程可以通过绑定⼀个端口号,来发送及接收网络数据。

五、协议

5.1. 概念

        协议,网络协议的简称,网络协议是⽹络通信(即网络数据传输)经过的所有网络设备都必须共同遵从的⼀组约定、规则。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。

5.2. 作用

        计算机之间的传输媒介是光信号和电信号。通过"频率"和"强弱"来表示0和1这样的信息。要想传递各种不同的信息,就需要约定好双⽅的数据格式。协议如同网络世界的 “语言”,确保不同设备(如计算机、服务器、路由器、手机等)之间能够理解彼此发送的信息,实现有序、可靠的通信。统一了数据格式,合理分配网络资源。

5.3. 五元组

        在TCP/IP协议中,是用于唯一标识一个网络连接或数据流的五个关键信息的组合,主要用于网络设备(如路由器、防火墙、负载均衡器)对数据包进行识别、过滤、转发或追踪:

  1. 源 IP 地址:发送数据包的设备的 IP 地址,用于标识数据的来源设备。
  2. 目的 IP 地址:接收数据包的设备的 IP 地址,用于标识数据的目标设备。
  3. 源端口号:发送方设备上发起通信的进程所使用的端口号,通常在客户端随机分配(动态端口)。
  4. 目的端口号:接收方设备上对应服务的端口号,用于定位目标设备上的特定服务(如 80 端口对应 HTTP 服务)。
  5. 传输层协议:数据包所使用的传输层协议,常见的有 TCP(传输控制协议)和 UDP(用户数据报协议)。

5.4. 协议分层

  • 分层的作用

        网络通信是一个非常复杂的话题,为了解决复杂的问题,网络协议相应地也会非常复杂。我们就可以进行拆分,每个协议负责一个部分。拆分之后,协议就会变多,还得需要分层,约定协议与协议之间的调用关系。

        分层之后,每个协议只负责自己的那一部分,因此协议也更简单,更好理解。并且解耦合更加方便,可以灵活地对协议进行替换。

六、TCP/IP分层模型

  1. 物理层:网络通信中依赖的硬件设施,网线、光纤、天线;
  2. 数据链路层:负责两个节点之间的通信,通过网线、光纤或者无线信号连接的设备;
  3. 网络层:负责任意两个节点之间的路径规划;
  4. 传输层:管理两个节点之间的数据传输,并且只关心传输的起点和终点,不关心传输的过程;
  5. 应用层:负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)。

七、网络设备所在分层

  • 对于⼀台主机,它的操作系统内核实现了从传输层到物理层的内容,也即是TCP/IP五层模型的下四层;
  • 对于⼀台路由器,它实现了从网络层到物理层,也即是TCP/IP五层模型的下三层
  • 对于⼀台交换机,它实现了从数据链路层到物理层,也即是TCP/IP五层模型的下两层;

八、封装和分用

        我们想象这样一个场景:我在微信中想一个好友发送一条信息“hello”。

  • 发送方

        发送方从应用层输入“hello”,然后点击“发送”按钮。微信应用程序能获取到字符串,然后按照一定的应用层协议构造成应用层数据包。接下来把应用层数据包通过操作系统的API传给传输层。传输层涉及到的TCP/UDP协议打包成传输层数据包。接着再把传输层数据包传到网络层。在网络层,通过IP协议,在传输层数据包的基础上加上IP报头,再传给数据链路层。数据链路层最重要的协议是以太网协议,在IP数据报基础上拼接信息。最后是物理层,需要把0101这样的数据转化成光信号或者电信号通过物理介质传播出去。

  • 接收方

        在物理层收到光信号或者电信号,转化成0101数字信号,交给数据链路层。数据链路层通过以太网协议进行解析,去掉帧头帧尾,取出载荷,进一步交给网络层。网络层通过IP协议也会进行解析,取出载荷,进一步交给传输层。传输层通过UDP协议,进一步交给应用层。应用层再通过微信应用程序的进行解析,最后把消息显示到界面上。

        封装,相当于包装快递;分用,相当于拆快递。

        交换机从物理层到数据链路层进行分用,解析到数据之后,会对数据重新进行封装,再次发送出去。

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

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

相关文章

SOME/IP-SD中IPv4 SD端点选项详解

<摘要> 本解析围绕IPv4 SD端点选项在AUTOSAR AP R22-11规范中的定义与应用展开。该选项是SOME/IP服务发现&#xff08;SD&#xff09;协议中的关键字段&#xff0c;用于在网络地址不可达或变化的场景下&#xff08;如经NAT网关或使用多宿主设备时&#xff09;&#xff0c…

.NET 8 集成 JWT Bearer Token

注意&#xff1a;这是一种非常简单且不是最低限度安全的设置 JWT 的方法。步骤 1——安装软件包首先&#xff0c;您需要安装一些 NuGet 包。dotnet add package Microsoft.AspCore.Authentication.JwtBearer dotnet add package System.IdentityModel.Tokens.Jwt步骤 2——创建…

模型汇总-数学建模

一、优化模型1.线性规划线性规划&#xff08;Linear Programming, LP&#xff09;是一种数学优化方法&#xff0c;用于在给定的线性约束条件下&#xff0c;找到线性目标函数的最大值或最小值。它是运筹学中最常用的方法之一。线性规划的标准形式最大化问题标准形式&#xff1a;…

2025年09月计算机二级MySQL选择题每日一练——第十二期

计算机二级中选择题是非常重要的&#xff0c;本期是这个系列的最后一期了&#xff01; 答案及解析将在末尾公布&#xff01; 今日主题&#xff1a;综合应用进阶 1、设有如下创建表的语句&#xff1a; CREATE TABLE tb_test( ID INT NOT NULL PRIMARY KEY, sno CHAR(10) NOT …

计组(2)CPU与指令

一、总体认识CPU1、软硬件角度CPU&#xff0c;全称就是中央处理器。从硬件上来说&#xff0c;CPU是一个超大规模集成电路&#xff0c;通过电路实现加法、乘法乃至各种各样的处理逻辑。从软件来说&#xff0c;CPU就是一个执行各种计算机指令的逻辑机器。2、计算机指令所谓的计算…

用Java让家政服务触手可及

家政服务不仅仅包括日常保洁&#xff0c;随着社会的发展&#xff0c;从日常保洁、衣物清洁到家电维修、月嫂保姆&#xff0c;家政服务的场景越发多元。用户不仅追求服务的 “专业度”&#xff0c;更看重 “便捷性”—— 能否快速找到服务、预约服务、了解服务效果&#xff1f;上…

Python OpenCV图像处理与深度学习:Python OpenCV特征检测入门

特征检测与描述&#xff1a;探索图像中的关键点 学习目标 通过本课程&#xff0c;学员们将掌握特征检测的基本概念&#xff0c;了解如何使用OpenCV库中的SIFT和SURF算法进行特征点检测和特征描述符的计算。实验将通过理论讲解与实践操作相结合的方式&#xff0c;帮助学员深入理…

ECDH (椭圆曲线迪菲-赫尔曼密钥交换)

文章目录一、什么是ECDH&#xff1f;二、为什么需要 ECDH&#xff1f;要解决什么问题&#xff1f;三、原理与图示四、核心比喻&#xff1a;混合颜料五、技术实现步骤1. 约定公共参数2. 生成密钥对3. 交换公钥4. 计算共享密钥5. 密钥派生六、注意事项七、安全性基础八、优势特点…

Spring Boot实战:打造高效Web应用,从入门到精通

目录一、Spring Boot 初相识二、搭建开发环境2.1 安装 JDK2.2 安装 IDE&#xff08;以 IntelliJ IDEA 为例&#xff09;2.3 初始化 Spring Boot 项目三、Spring Boot 基础配置3.1 配置文件详解&#xff08;application.properties 和 application.yml&#xff09;3.2 自定义配置…

2025网络安全宣传周知识竞赛答题活动怎么做

网络安全答题PK小程序可以结合竞技性、趣味性和知识性&#xff0c;设计以下核心功能模块&#xff0c;提升用户参与度和学习效果&#xff1a;一、核心PK功能实时对战匹配 随机匹配在线用户&#xff08;按段位/积分相近原则&#xff09; 好友定向PK&#xff08;支持分享邀请对战&…

echo、seq、{}、date、bc命令

文章目录echo、seq、{}、date、bc命令echo案例seq命令案例{}花括号列表扩展序列扩展嵌套扩展datebc(高精度计算器)echo、seq、{}、date、bc命令 echo echo命令是一个常用的Shell命令&#xff0c;用于在终端上输出文本。它的基本语法如下&#xff1a; echo [option] [string]…

Vue2之Vuex

文章目录 数据准备新建项目选择模块安装vscode工具打开 删除无用文件删除src/assets文件下的所有内容删除src/components文件下的所有内容修改src/app.vuevscode运行项目 一、 概述1.是什么2. 使用场景3.优势4 Vuex流程图5.注意&#xff1a; 二、需求: 多组件共享数据创建三个组…

2025具身智能赛道观察:技术、产业与视频基础设施

引言 2025 年&#xff0c;具身智能&#xff08;Embodied Intelligence&#xff09;毫无疑问已经成为全球资本追逐的“风口赛道”。从人形机器人、无人配送&#xff0c;到低空经济和智能驾驶&#xff0c;几乎所有与物理世界深度结合的领域&#xff0c;都被纳入具身智能的广义范…

【商业银行风控模型(python版本,实操合集,附带anaconda安装教程,持续更新)】

Anaconda&#xff08;Python工具&#xff09;安装1.Mac中安装Anaconda2.点击“Free Download”下载后&#xff0c;点击“Skip registration”&#xff0c;跳过注册环节。 3.conda list4.安装完成Anaconda基本操作命令 # 查看当前虚拟环境下的所有包 conda list # 查看某个特定的…

FPGA DDR 地址映射-黄金法则

FPGA 中 DDR 控制器的地址映射顺序&#xff08;Address Mapping Order&#xff09; 是优化设计速度&#xff08;带宽和效率&#xff09; 的关键。简单来说&#xff0c;地址映射顺序决定了线性地址如何映射到 DDR 芯片内部的物理结构&#xff08;Bank、Row、Column&#xff09;。…

网络安全设备监控指标

网络安全设备监控指标 近日看到一篇设备情况汇报&#xff0c;内容写得有些欠缺&#xff0c;因此我特意问了一下AI&#xff0c;整理了一下思路。以下是监控需要关注的性能指标。权当抛砖引玉。根据指标可以做监控&#xff0c;也可以做调研指标。 业务承载能力 吞吐量&#xff08…

JSP程序设计之JSP指令

1、JSP指令概念与分类 &#xff08;1&#xff09;概念 JSP指令相当于在编译期间的命令&#xff0c;用来设置与整个JSP页面相关的属性&#xff0c;它并不直接产生任何可见的输出&#xff0c;用来设置全局变量、声明类、要实现的方法和输出内容的类型等。在JSP文件被解析为Java…

Generative Art with p5.js: Creating Beauty from Code

Are you ready to make something truly beautiful with p5.js? Forget about boring bar charts and sales data—let’s create art that moves, breathes, and responds to your touch. We’re going to explore generative art, where code becomes your paintbrush and a…

Wi-Fi技术——网络安全

一、数据帧的安全 1、无线网络安全的发展 理论上无线电波范围内的任何一个站点都可以监听并登录无线网络&#xff0c;所有发送或接收的数据&#xff0c;都有可能被截取&#xff0c;因此无线网络安全十分重要。 原始802.11的安全策略为WEP&#xff0c;其存在根本性的漏洞&#x…

Java提供高效后端支撑,Vue呈现直观交互界面,共同打造的MES管理系统,含完整可运行源码,实现生产计划、执行、追溯一站式管理,提升制造执行效率

前言在当今竞争激烈的制造业环境中&#xff0c;企业面临着提高生产效率、降低成本、保证产品质量以及快速响应市场变化等多重挑战。制造执行系统&#xff08;MES&#xff0c;Manufacturing Execution System&#xff09;作为连接企业上层计划管理系统&#xff08;如ERP&#xf…