【JavaEE】初识⽹络原理

news2024/9/21 14:18:54

目录

一、计算机相互连接的方式

        1.1 局域网LAN

        1.2 广域网WAN

二、网络通信的基础

        1.1 IP地址

        1.2 格式

        1.3 端口号

三、认识协议

        1.1 概念

        1.2 五元组:

        1.3 协议分层        

        1.4 OSI七层模型

        1.5 TCP/IP五层(或四层)协议


一、计算机相互连接的方式

        1.1 局域网LAN

        局域网(Local Area Network)简称LAN,局域网是本地局部组件的一种私有网络,局域网内的主机之间能相互通信,又称为内网;局域网和局域网之间在没有连接情况下是不能互相通信的。

⽹络互连:将多台计算机连接在⼀起,完成数据共享。 数据共享本质是⽹络数据传输,即计算机之间通过⽹络来传输数据,也称为⽹络通信。

        局域网有多种组建网络的方式,其中包括基于网线直连、基于集线器组建、基于交换机直组建、基于交换机和路由器组建。

        1.2 广域网WAN

        广域网(Wide Area Network)简称WAN,通过路由器将多个局域网连接起来,在物理上组成很大范围的网络,就形成了广域网。广域网内部的局域网都属于其子网。

二、网络通信的基础

        网络互连的目的是为了进行网络通信,也就是为了传输数据,更具体一点,是在网络主机中的不同进程之间,基于网络传输数据。

        1.1 IP地址

  IP地址主要用于标识网络主机和其他网络设备的网络地址

        1.2 格式

  IP地址是一个 32 位的二进制数字,通常被分割为4个"8位二进制数"

        1.3 端口号

        在网络通信中,IP地址用于标识主机网络地址,而端口号用于定位主机上运行的进程,格式是0~65535范围中的数字,在网络通信中,一个端口号只可以绑定一个进程,但是一个进程可以绑定多个端口号。

三、认识协议

        1.1 概念

        网络协议简称协议,网络协议是网络通信中所有网络设备都需要遵守的一组规则,比如如何建立连接,如何相互识别,传递数据的格式等。协议(protocol)最终体现为在网络上传输数据报的格式

        1.2 五元组:

                在TCP/IP协议中,用五元组来标识一个网络通信:

                1.2.1 源IP:标识源主机

                1.2.2 源端口号:标识源主机发送数据的进程

                1.2.3 目的IP:目标主机的IP

                1.2.4 目的端口号:目标主机接受数据的进程

                1.2.5 协议号:标识发送进程 和 接受进程双方约定的数据格式

        1.3 协议分层        

分层是为了面向接口变成,定义好使用的规范,使用方不必在意接口的实现逻辑,对于提供方,利用封装的特性,隐藏了实现的细节。

        1.4 OSI七层模型

OSI(Open System Interconnection)七层网络模型是一个逻辑上的定义和规范,把网络从下到上分为了七层。

实际组建⽹络时,只是以 OSI 七层模型设计中的部分分层,也即是以下 TCP/IP 五层(或四层)模型来 实现。

        1.5 TCP/IP五层(或四层)协议

        TCP/IP通讯采用了五层的层级结构,每一层都呼叫自己的下一层所提供的网络资源来完成自己的需求。

                1.5.1 应用层:负责应⽤程序间沟通,如简单电⼦邮件传输(SMTP)、⽂件传输协议(FTP)、⽹络远程访问协议(Telnet)等。我们的⽹络编程主要就是针对应⽤层。

                1.5.2 传输层:负责两台主机之间的数据传输。如传输控制协议 (TCP),能够确保数据可靠的从源主机发送到⽬标主机。

                1.5.3 网络层:负责地址管理和路由选择。例如在IP协议中,通过IP地址来标识⼀台主机,并通过路由表 的⽅式规划出两台主机之间的数据传输的线路(路由)。路由器(Router)⼯作在⽹路层。

                1.5.4 数据结构层:负责设备之间的数据帧的传送和识别。例如⽹卡设备的驱动、帧同步(就是说从⽹线上 检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就⾃动重发)、数据差错校验等⼯作。 有以太⽹、令牌环⽹,⽆线LAN等标准。交换机(Switch)⼯作在数据链路层。

                1.5.5 物理:负责光/电信号的传递⽅式。⽐如现在以太⽹通⽤的⽹线(双绞线)、早期以太⽹采⽤的的同 轴电缆(现在主要⽤于有线电视)、光纤,现在的wifi⽆线⽹使⽤电磁波等都属于物理层的概念。物理 层的能⼒决定了最⼤传输速率、传输距离、抗⼲扰性等。集线器(Hub)⼯作在物理层。

⽹络设备所在分层:

        对于⼀台主机,它的操作系统内核实现了从传输层到物理层的内容,也即是TCP/IP五层模型的下四 层;

        对于⼀台路由器,它实现了从⽹络层到物理层,也即是TCP/IP五层模型的下三层;

        对于⼀台交换机,它实现了从数据链路层到物理层,也即是TCP/IP五层模型的下两层;

        对于集线器,它只实现了物理层;

这里指的是传统意义上的路由器和交换机,对于现代科技的发展,出现了很多3层或4层的交换机和路由器。

=========================================================================

最后如果感觉对你有帮助的话,不如给博主来个三连,博主会继续加油的ヾ(◍°∇°◍)ノ゙

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

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

相关文章

【计算机网络 - 基础问题】每日 3 题(七)

✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/fYaBd 📚专栏简介:在这个专栏中,我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏&…

合并RAR分卷压缩包

因为文件压缩之后体积仍然过大,大家可能会选择进行分卷压缩,那么rar分卷压缩包之后如何合并成一个压缩包文件呢?今天我们来学习rar分卷压缩包,合并成一个的方法。 最基础的方法就是将分卷压缩包解压出来之后,再将文件…

AttributeError: module ‘numpy‘ has no attribute ‘object‘.

报错: AttributeError: module numpy has no attribute object. np.object was a deprecated alias for the builtin object. To avoid this error in existing code, use object by itself. Doing this will not modify any behavior and is safe. 位置&#xff…

HBase集群环境搭建

HBase集群环境搭建 一、集群规划二、前置条件三、集群搭建3.1 下载并解压3.2 配置环境变量3.3 集群配置1. hbase-env.sh2. hbase-site.xml3. regionservers4. backup-masters 3.4 HDFS客户端配置3.5 安装包分发 四、启动集群4.1 启动ZooKeeper集群4.2 启动Hadoop集群4.3 启动HB…

rtems 5.3 qemu realview_pbx_a9 环境搭建:生成 rtems arm 工具链

前言 rtems 是一款比较优秀的 RTOS,官方网址 https://www.rtems.org/ 当前 rtems 最新发布的版本:rtems-5.3 版本, 下载地址 https://ftp.rtems.org/pub/rtems/releases/5/5.3/ rtems 支持的 平台也是比较多的,当前支持 STM32F4…

差分进化算法(DE算法)求解实例---旅行商问题 (TSP)

目录 一、采用DE求解 TSP二、 旅行商问题2.1 实际例子:求解 6 个城市的 TSP2.2 **求解该问题的代码**2.3 代码运行过程截屏2.4 代码运行结果截屏(后续和其他算法进行对比) 三、 如何修改代码?3.1 减少城市坐标,如下&am…

关系数据库(6,7,8)

目录 除运算 例子 关系演算 元组关系演算语言ALPHA 检索操作 更新操作 插入操作 删除操作 除运算 其中x,y,z是属性组,r对s的除运算得到新的关系p(x),列数减少了,变得只有一列。 例子 当…

103.WEB渗透测试-信息收集-FOFA语法(3)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:102.WEB渗透测试-信息收集-FOFA语法(2) FOFA使用实例 组件框架 …

基于yolov5的混凝土缺陷检测系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv5的混凝土缺陷检测系统是一项利用深度学习技术,特别是YOLOv5算法,实现对混凝土结构中缺陷进行自动检测和识别的系统。该系统通过收集大量的混凝土图像数据,并标注缺陷区域,如裂缝、空洞、剥落等&#xff0…

Github 2024-09-16 开源项目周报 Top14

根据Github Trendings的统计,本周(2024-09-16统计)共有14个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目4TypeScript项目2Go项目2JavaScript项目2Shell项目2Rust项目2C++项目2Jupyter Notebook项目1C#项目1React: 用于构建用户界面的JavaS…

中国矿业大学《2023年868+2007年自动控制原理真题》 (完整版)

本文内容,全部选自自动化考研联盟的:《25届中国矿业大学868自控考研资料》的真题篇。后续会持续更新更多学校,更多年份的真题,记得关注哦~ 目录 2007年复试真题 2023年初试真题 Part1:完整版真题 2007年复试真题 2…

【自动驾驶】控制算法(八)横向控制Ⅳ | 调试与优化

写在前面: 🌟 欢迎光临 清流君 的博客小天地,这里是我分享技术与心得的温馨角落。📝 个人主页:清流君_CSDN博客,期待与您一同探索 移动机器人 领域的无限可能。 🔍 本文系 清流君 原创之作&…

寄存器的位数据调测方法(摩尔信使MThings)

图中是一种典型MODBUS寄存器位数据定义方式,这种数据定义主要基于数据紧凑设计原则(精确位宽分配),将明确含义(取值范围)的字段分配最小必要的数据长度,进而减少寄存器总数,提升数据…

【更新】上市公司-供应链金融水平数据(2000-2023年)

上市公司供应链金融是指上市公司利用其产业链核心地位,通过整合金融资源,为供应链上下游企业提供包括融资、结算、风险管理等在内的综合金融服务。为了衡量上市公司的供应链金融水平,参考周兰等(2022)的研究方法&#…

统信服务器操作系统【d版字符系统升级到dde图形化】配置方法

统信服务器操作系统d版本上由字符系统升级到 dde 桌面系统的过程 文章目录 一、准备环境二、功能描述安装步骤1. lightdm 安装2. dde 安装 一、准备环境 适用版本:■UOS服务器操作系统d版 适用架构:■ARM64、AMD64、MIPS64 网络:连接互联网…

Redis Key的过期策略

Redis 的过期策略主要是指管理和删除那些设定了过期时间的键,以确保内存的有效使用和数据的及时清理。 具体来说,Redis 有三种主要的过期策略:定期删除(Scheduled Deletion)、惰性删除(Lazy Deletion&#…

要想实现稳定利润就来Anzo Capital 昂首资本官网

都知道低波动性交易策略不仅降低了风险,还提供了一种在波动市场中保持冷静的方法,但投资者要想在低波动性交易策略下实现稳定的利润,还需来Anzo Capital 昂首资本官网。 Anzo Capital 昂首资本官网的交易策略基于几个核心原则。首先&#xf…

基于yolov8的无人机检测系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv8的无人机检测系统是一项前沿技术,结合了YOLOv8深度学习模型的强大目标检测能力与无人机的灵活性。YOLOv8作为YOLO系列的最新版本,在检测精度和速度上均有显著提升,特别适用于复杂和高动态的场景。 该系统通过捕获实…

【python】python入门基础理论+实践,这一篇就够了

文章目录 简介:第一个hello world字符串str多引号字符串拼接字符串方法格式化方法判断方法查、改、计数、替换特殊方法 布尔型bool列表类型深浅copy列表生成式练习列表去重(不能用set)找到列表中第二大的数(不能用sort)判断一个列表是不是另外…

python selenium网页操作

一、安装依赖 pip install -U seleniumselenium1.py: from selenium import webdriver from selenium.webdriver.common.by import Bydriver webdriver.Chrome() driver.get("https://www.selenium.dev/selenium/web/web-form.html") title driver.ti…