JavaEE——网络初识 (简单介绍两种协议以及网络通信的基础概念)

文章目录

  • 一、简单了解网络发展
  • 二、网络通信基础认识
  • 三、利用UDP举例解释网络信息传输

一、简单了解网络发展

总的来讲,网络的发展史就是,先是一小部分的计算机之间连接通信,随着技术发展,逐渐扩大范围,形成了我们当前使用的互联网。在这之中,最主要的改变就是网络组建的方式

  1. 局域网组建
  • 基于集线器组建
    在这里插入图片描述

  • 基于交换机组建
    在这里插入图片描述
    只是组建局域网(不能跨局域网)

  • 以路由器组建
    在这里插入图片描述
    路由器将多个局域网进行联系。

  1. 广域网组建

广域网,即 Wide Area Network ,简称 WAN。

通过路由器,将多个局域网连接起来,在物理层面上组成大范围的网络,就形成了广域网。广域网中的局域网都属于子网。 如图:

在这里插入图片描述

二、网络通信基础认识

  1. IP 地址
    简单来讲就是用来定为主机的网络地址

  2. 端口号
    标识一个具体的应用程序,格式为(0 - 65535)之间的数字。

  3. 认识协议
    概念: 通俗来讲,就是通信双方进行的一种约定。通过这个约定,让双方互相理解对方的含义。

对于网络通信,是一个比较复杂的事情,需求的场景复杂了,实现的功能也就会复杂。因此,在实际情况中,会将这些庞大,繁杂的协议拆分成相对简单较小的协议,再将这些小的协议分层整合进行使用

在当前互联网世界,分层方式大致分为两种:

  1. OSI 七层网络模型
    因为该网络模型既复杂有不实用,所以在这里就简单了解一下即可。
    在这里插入图片描述

  2. TCP/IP 五层网络模型

在这里插入图片描述
如上图所示,越往下层,越接近硬件设备,越往上越接近用户。
在这里我们要明白一点,上层协议要调用下层协议,下层协议要给上层协议提供服务。

解释每层模型的含义

  • 物理层: 约定了网络通信中的基础硬件设备是什么样。
    例如:通信使用的 网口 网线 的规格。

  • 数据链路层: 主要负责两个相邻两个节点之间具体如何传输。(就像是在网上买了一件快递,商家发货)

  • 网络层: 主要负责路径的规划,信息传输走那条路合适。(快递在运输时,快递公司考虑沿着那条路走)

  • 传输层: 只关心起点和终点,不在乎之间的过程。

  • 用户层: 应用程序描述出传递的数据,用户如何进行使用。

三、利用UDP举例解释网络信息传输

发送方

假设编写 hello 字符串,以qq这个引用程序进行发送。

  1. 应用层

在这里插入图片描述
如上图所示,用户在应用层生成了一个数据报,程序通过调用操作系统 api 将应用层数据传递给传输层。

这里的 应用层数据报 本质上就是一个遵守了约定格式的字符串。

  1. 传输层(进入操作系统内核)

在传输层中,需要将上面传输下来的应用层数据报 构造成 传输层数据报

在传输层使用到的协议,最知名的就是 UDP 和 TCP 。假设此处构造 UDP 数据报。
在这里插入图片描述
如上图所示:此处就像是字符串拼接一样,将报头和后面的数据拼接在一起

这里的 “报头” 就是一个标签,通过该标签表示出当前需要将数据怎样传输。

最后,传输层将这个 UDP数据报 传递给网络层。

  1. 网络层

通过知名协议 IP 协议。IP 协议基于上述的数据报,打包成为一个 IP 数据报。

在这里插入图片描述
同样的,这里的 IP报头 也是相当于一个字符串。包含着核心信息:源IP 和 目的 IP

在这里,我们还需要了解一个重点概念
一次通信中,基础的五元组。
在这里插入图片描述
形象的用一句话来解释就是,如下图:
在这里插入图片描述

网络层数据报构建好后,进一步交给 数据链路层。

  1. 数据链路层

这里又有一个知名协议 “以太网” 。基于上述数据,这里要将以太网数据再次打包为 “以太网数据帧”
在这里插入图片描述
如上图所示,之后再将数据往下传输,交给物理层。

  1. 物理层

将上述二进制数据转换成 电/光 信号,此时就真正的将数据发送出去。

接收方

在这里接收方的工作就是将上面发送方产生的数据报,依次按不同协议层进行拆解,最终传递到应用层,显示到用户界面上。(在这里就不进行过多的解释)

总结: “封装分用”
总的来讲,在网络传输中,自上而下,从应用层到物理层,称之为 “封装”
自下而上,从物理层到应用层,称之为“分用”

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

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

相关文章

ROS实现机器人移动

开源项目 使用是github上六合机器人工坊的项目。 https://github.com/6-robot/wpr_simulation.git 机器人运动模型 运动模型如下所示:👇 机器人运动的消息包: 实现思路:👇   为什么要使用/cmd_vel话题。因为这…

Tcp的粘包和半包问题及解决方案

目录 粘包: 半包: 应用进程如何解读字节流?如何解决粘包和半包问题? ①:固定长度 ②:分隔符 ③:固定长度字段存储内容的长度信息 粘包: 一次接收到多个消息,粘包 应…

FFmpeg 硬编码VideoToolBox流程

介绍 FFmpeg已经提供对 VideoToolBox 的编解码支持;主要涉及到的文件有videotoolbox.c、videotoolbox.h、videotoolboxenc.c、ffmepg_videotoolbox.c。在编译 FFmpeg 源码时,想要支持VideoToolBox,在 configure 时,需要–enable-…

AcWing算法提高课-1.3.17背包问题求具体方案

宣传一下算法提高课整理 <— CSDN个人主页&#xff1a;更好的阅读体验 <— 本题链接&#xff08;AcWing&#xff09; 点这里 题目描述 有 N N N 件物品和一个容量是 V V V 的背包。每件物品只能使用一次。 第 i i i 件物品的体积是 v i v_i vi​&#xff0c;价值…

2023年,App运行小游戏,可以玩出什么创意?

疫情过后&#xff0c;一地鸡毛。游戏行业的日子也不好过。来看看移动游戏收入&#xff1a;2022年&#xff0c;移动游戏收入达到920亿美元&#xff0c;同比下降6.4%。这告诉我们&#xff0c;2022年对移动游戏市场来说是一个小挫折。 但不管是下挫还是上升&#xff0c;移动游戏市…

Mac unsupported architecture

&#xff08;瓜是长大在营养肥料里的最甜&#xff0c;天才是长在恶性土壤中的最好。——培根&#xff09; unsupported architecture 在mac的m系列芯片中容易出现此类问题&#xff0c;因为m系列是arm64的芯片架构&#xff0c;而有些nodejs版本或npm包的芯片架构是x86的&#x…

解码大众全新数字高尔夫8汽车CAN FD行驶功能电气架构

据在大众原厂的伙伴介绍&#xff0c;全新数字高尔夫8将在11月上市销售&#xff0c;目前高尔夫8在行驶功能电气架构上采用的CAN FD&#xff0c;在多媒体这一块采用的以太网&#xff0c;后续估计大部分类似同样MQBEvo平台的车型均会复制升级过来&#xff0c;那么&#xff0c;未来…

福布斯发布2023云计算100强榜单,全球流程挖掘领导者Celonis排名17

近日&#xff0c;全球流程挖掘领导者Celonis入选福布斯2023 年云计算 100 强榜单&#xff0c;估值130亿美元&#xff0c;排名第17&#xff0c;Celonis已经是连续三年跻身榜单前20名。 本次榜单由福布斯与Bessemer Venture Partners和Salesforce Ventures联合发布&#xff0c;旨…

OSPF 动态路由协议 路由传递

影响OSPF路由选择的因素&#xff1a; 1.OSPF路由的开销值&#xff1a;宽带参考值默认为100. COST1000/接口带宽。此时接口 带宽的值可更改&#xff0c;更改后只改变参考数值&#xff0c;带宽仍然为初始值。 注意&#xff1a;更改COST需要 在路由的入方向&#xff0c;数据的出方…

Elasticsearch之kibana相关命令

1.中文分词器相关命令 2.拼音分词器相关命令

Linux 上安装部署Nacos

标题&#xff1a;在Linux上安装和部署Nacos Nacos是一个开源的分布式服务发现和配置管理平台&#xff0c;它可以帮助开发人员实现微服务架构中的服务注册、发现和动态配置管理。 步骤1&#xff1a;准备工作 在开始安装Nacos之前&#xff0c;确保您已经具备以下条件&#xff1…

帕累托森林:IEEE Fellow唐远炎院士出任「儒特科技」首席架构官

导语 「儒特科技」作为一家拥有全球独创性极致化微内核Web引擎架构的前沿科技企业&#xff0c;从成立即受到中科院软件所和工信部的重点孵化及扶持&#xff0c;成长异常迅速。前不久刚正式官方融入中国五大根操作系统体系&#xff0c;加速为其下游上千家相关衍生OS和应用软件企…