当前位置: 首页 > news >正文

网络基础---初识网络

前言

作者:小蜗牛向前冲

名言:我可以接受失败,但我不能接受放弃

  如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 

目录

一、局域网/广域网

 二、协议

1、网络协议初识

2、OSI七层模型

3、TCP/IP五层模型 

三、网络传输基本流程 

1、认识报文

 2、网络传输基本流程

本期学习目标:对局域网/广域网的概念有基本认识,认识协议是什么,理解OSI七层模型和TCP/IP五层模型,网络传输基本流程

一、局域网/广域网

局域网(LAN)

  • 局域网是一种覆盖较小地理范围的网络,通常局限于单个建筑物、办公室、校园或者家庭。
  • 在局域网内,设备之间的通信速度很快,通常以千兆位或更高的速度进行通信。
  • 典型的局域网技术包括以太网、Wi-Fi、局域网通用串行总线(USB)等。
  • 局域网通常由路由器、交换机、集线器等设备组成,用于连接和管理局域网内的设备。

 

广域网(WAN)

  • 广域网覆盖的范围更大,可以是跨越城市、国家甚至是全球的范围。
  • 广域网连接不同地理位置的局域网、城市、企业等,使得这些地点之间可以进行远程通信和数据交换。
  • 与局域网相比,广域网的通信速度可能较慢,受到距离和中间设备的影响。
  • 典型的广域网技术包括互联网、专用线路、光纤、无线电链接等。
  • 广域网通常由路由器、调制解调器、光纤转接器等设备组成,用于连接不同地点的网络。

 二、协议

1、网络协议初识

什么是协议呢?其实是一种约定。那为什么要这样呢?打一个不恰当的比方,在那个电话费比较贵的年代,小芳和在外面工作的小方约定,打电话铃声响一声表示想对方了写一封信过去了,响二声表示自己将要过去......。那他们为什么要这样做呢?其实本质上来说是了减少通信的花费的成本。

而在网络中,五湖四海的人想交流沟通,而每个人都有自己的方言(自己的网络标准),那对方不理解什么意思啊,所以为了节约通信成本,大家都统一说普通话(这就是协议)。

协议的本质其实是为了尽可能能的减少通信成本

从网络的发展历史来说,计算机生产厂商有很多; 计算机操作系统, 也有很多; 计算机网络硬件设备, 还是有很多; 如何让这些不同厂商之间生产的计算机能够相互顺畅的通信? 就需要有人站出来, 约定一个共同的标准, 大家都来遵守, 这就是 网络协议

这里重点为大家简单的介绍一下:OSI七层模型和TCP/IP五层模型

2、OSI七层模型

OSI(Open Systems Interconnection)七层模型是一种用于理解和描述计算机网络体系结构的标准化框架。它将网络通信的功能划分为七个不同的层次,每个层次负责特定的任务,并与上下层进行通信。

分层名称功能每层功能的概述
7应用层
  • 应用层是最高层,提供了网络服务和用户应用程序的接口。
  • 它包含各种应用程序,例如 Web 浏览器、电子邮件客户端、文件传输协议等。
  • 典型协议:HTTP(Hypertext Transfer Protocol)、SMTP(Simple Mail Transfer Protocol)、FTP(File Transfer Protocol)等。
6表示层
  • 表示层负责数据的格式化、加密和压缩,以确保数据在不同系统之间的兼容性。
  • 它提供了数据的语法和语义转换,以便应用层能够正确解释数据。
  • 例如:数据的加密、压缩和格式转换。
接收不同形式的信号,文字流,声音等
5会话层
  • 会话层负责建立、管理和终止会话(或连接)。
  • 它提供了会话的同步、控制和管理功能。
  • 例如:在两台计算机之间的会话或会议。
如何建立连接,连接多久
4传输层
  • 传输层负责端到端的数据传输和可靠性。
  • 它提供了数据的分段、流量控制、错误检测和纠正,以及端到端的可靠性保证。
  • 典型协议:TCP(Transmission Control Protocol)、UDP(User Datagram Protocol)等
3网络层
  • 网络层负责在不同网络之间传输数据包,并进行路由选择和地址转发。
  • 它提供了数据包的路由、寻址和分组。
  • 典型设备和协议:路由器,IP(Internet Protocol)、ICMP(Internet Control Message Protocol)等。
2数据链路层
  • 数据链路层负责在直接连接的节点之间传输数据帧。
  • 它提供了数据的可靠传输、错误检测和纠正,以及流量控制。
  • 典型设备和协议:网桥、交换机,以太网、PPP(点对点协议)等。
1物理层
  • 物理层是网络通信的最底层,负责在物理介质上传输原始比特流。
  • 它定义了数据在传输介质上的传输方式,包括电压、电流、光信号等。
  • 典型设备和协议:网线、集线器、中继器,以太网、WiFi、光纤等。

iOs模拟不仅仅复杂,还不是那么好用,于是人们又推出TCP/IP五层模型 。

3、TCP/IP五层模型 

  1. 物理层(Physical Layer)

    • 与OSI模型的物理层相对应,负责定义连接到网络的硬件标准,例如电缆、光纤、网卡等。
    • 该层的功能主要是将比特流从一个节点传输到另一个节点,处理硬件设备之间的物理连接。
  2. 数据链路层(Data Link Layer)

    • 在TCP/IP模型中,数据链路层包含了OSI模型的数据链路层和部分网络层的功能。
    • 负责将数据帧从一个物理节点传输到相邻的物理节点,提供了对物理层的访问和链路的管理。
    • 典型协议:以太网(Ethernet)。
  3. 网络层(Network Layer)

    • 与OSI模型的网络层相对应,负责在网络上寻址、路由选择和分组传输。
    • 该层的功能包括将数据包从源主机传输到目标主机,并通过路由器进行跨网络的传输。
    • 典型协议:Internet Protocol(IP)。
  4. 传输层(Transport Layer)

    • 传输层在TCP/IP模型中与OSI模型的传输层相对应,负责端到端的通信,提供可靠的数据传输服务。
    • 典型协议:Transmission Control Protocol(TCP)、User Datagram Protocol(UDP)。
  5. 应用层(Application Layer)

    • 与OSI模型的会话层、表示层和应用层相对应,包含了用户接口和网络应用程序。
    • 负责提供网络服务和用户应用程序的接口,支持各种应用程序,如Web浏览器、电子邮件客户端等。
    • 典型协议:Hypertext Transfer Protocol(HTTP)、Simple Mail Transfer Protocol(SMTP)、File Transfer Protocol(FTP)等。

通过分层,我们就明确了每层的功能,从而更好的制定协议 

三、网络传输基本流程 

1、认识报文

在计算机网络中,通信的基本单位是报文(Message)。报文是网络中传输的数据单元,它承载了发送方想要传递给接收方的信息。报文的结构和内容根据通信的应用和协议而变化,但通常包含了必要的控制信息和实际的数据。

报文=报头+有效载荷

那我们上面说的TCP/IP模型,每一层都有报文,每层的报文我们又称为协议报文,上面我们说的协议其实就是通过报文来表示的。每一份数据最终在被发送或者在不同的协议层中,都要有自己的报头。

在局域网中,二台主机能够直接进行通信,对于每台机器来说自己的”名字“,, 每一台主机都有网卡,每一张网卡有自己的地址,MAC地址。那他们又是怎么进行网络通信的呢?

下面我们先了解一下这些基础概念:

主机名

  • 主机名是给计算机在网络上起的一个名字。这个名字通常用来标识网络上的某个设备,以便于人们记忆和识别。主机名并不是唯一的,可以在网络中有相同主机名的多台机器,但每个主机名应该在其所在的局域网内是唯一的。

网卡

  • 每一台主机都有至少一张网卡,用于与网络进行通信。网卡是计算机与网络之间的接口,负责将数据帧从计算机发送到网络上,或者接收从网络上来的数据帧。

 MAC地址

  • 每张网卡都有一个唯一的MAC地址,这是一个由厂商分配的全球唯一的硬件地址。MAC地址通常是一个48位的十六进制数,用于在局域网中唯一标识一张网卡。在数据链路层(通常是以太网)中,MAC地址被用于确定数据帧的目标和源。

IP 

它是一种在网络上为计算机和其他设备分配和标识的地址系统。IP地址是网络上用于标识和定位计算机或其他网络设备的唯一地址。

每个设备(如计算机、路由器、服务器等)连接到互联网时都需要一个IP地址。IP地址分为两个主要类型:

  • IPv4地址: 是32位二进制数,通常以点分十进制的形式表示,例如,192.168.1.1。IPv4地址空间有限,因此随着互联网的发展,IPv6逐渐被引入来扩展地址空间。

  • IPv6地址: 是128位二进制数,以冒号分隔的八组十六进制数字表示,例如,2001:0db8:85a3:0000:0000:8a2e:0370:7334。IPv6提供了更广泛的地址空间,以满足日益增长的互联网连接需求。

 2、网络传输基本流程

上面我们认识了报文,报文中就有效载荷其实就是我们要传输的内容,上层在向下层交互的时候,就要加上自己的报头,形成新的协议。

跨网段的主机的文件传输. 数据从一台计算机到另一台计算机传输过程中要经过一个或多个路由器 

数据在网络中传输的过程如下图:

 

上面我们提到了封装,解包。 

数据包封装和分用

  • 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame).
  • 应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装 (Encapsulation).
  • 首部信息中包含了一些类似于首部有多长, 载荷(payload)有多长, 上层协议是什么等信息.
  • 数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部, 根据首部中的 "上层协议 字段" 将数据交给对应的上层协议处理称为解包

相关文章:

网络基础---初识网络

前言 作者:小蜗牛向前冲 名言:我可以接受失败,但我不能接受放弃 如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、局域网…...

【Java】Java类动态替换Class

Java类动态替换Class 通过Java的Class对象,可以实现动态替换Class。 预习几个知识点 getClassLoader Java提供的ClassLoader可用于动态加载的Java类,可以通过多种形式获取ClassLoader。比如通过Class类获取 // 通过Class获取 ClassLoader classLoade…...

【驱动系列】C#获取电脑硬件显卡核心代号信息

欢迎来到《小5讲堂》,大家好,我是全栈小5。 这是《驱动系列》文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点…...

AutoGen实战应用(二):多代理协作(Multi-Agent Collaboration)

AutoGen是微软推出的一个全新工具,它用来帮助开发者创建基于大语言模型(LLM)的复杂应用程序. AutoGen能让LLM在复杂工作流程启用多个角色代理来共同协作完成人类提出的任务。在我之前的一篇博客: AutoGen实战应用(一):代码生成、执行和调试 中我们通过一…...

c++文件操作 (1) -- 读写文件

目录 为什么使用文件操作 文件输入流和输出流 -- 相对于内存而言 文件操作 1. 文件操作常用类以及头文件 2. 文件输入流(写文件操作) 1. 写文本文件 1)文件操作是使用对象来实现的 2)文件输出 3)打开文件 open函数 &#xff…...

PHP操作Mysql记录数多引发的空白错误

1 错误由来 php操作三张表,一张表有近四十万条记录,另外两张表记录数在三万左右,三张表又关联。应用左连接left join。 $qLStr "select pu.pd_no, pu.common_name, pu.purchase_cost, pu.medication_area, pu.total_dosage, pu.contro…...

transformer和vit学习笔记

以下记录自己对transformer的学习笔记,可能自己看得懂【久了自己也忘了看不懂】,别人看起来有点乱。以后再优化文档~ 小伙伴请直接去看学习资源: Transformer的理解T-1_哔哩哔哩_bilibili 首先,时序处理:一些模型的出…...

人脸识别 FaceNet人脸识别(一种人脸识别与聚类的统一嵌入表示)

人脸识别 FaceNet人脸识别(一种人脸识别与聚类的统一嵌入表示) FaceNet的简介Facenet的实现思路训练部分 FaceNet的简介 Facenet的实现思路 import torch.nn as nndef conv_bn(inp, oup, stride 1):return nn.Sequential(nn.Conv2d(inp, oup, 3, stride…...

Python tkinter (6) Listbox

Python的标准Tk GUI工具包的接口 tkinter系列文章 python tkinter窗口简单实现 Python tkinter (1) —— Label标签 Python tkinter (2) —— Button标签 Python tkinter (3) —— Entry标签 Python tkinter (4) —— Text控件 GUI 目录 Listbox 创建listbox 添加元素…...

优雅的python(二)

🌈个人主页:小田爱学编程 🔥 系列专栏:c语言从基础到进阶 🏆🏆关注博主,随时获取更多关于c语言的优质内容!🏆🏆 😀欢迎来到小田代码世界~ &#x…...

Git安装详细步骤

目录 1、双击安装包,点击NEXT​编辑 2、更改安装路径,点击NEXT 3、选择安装组件 4、选择开始菜单页 5、选择Git文件默认的编辑器 6、调整PATH环境 7、选择HTTPS后端传输 8、配置行尾符号转换 9、配置终端模拟器与Git Bash一起使用 10、配置额外…...

首发:2024全球DAO组织发展研究

作者,张群(专注DAO及区块链应用研究,赛联区块链教育首席讲师,工信部赛迪特邀资深专家,CSDN认证业界专家,微软认证专家,多家企业区块链产品顾问) DAO(去中心化自治组织&am…...

【大数据】详解 Flink 中的 WaterMark

详解 Flink 中的 WaterMark 1.基础概念1.1 流处理1.2 乱序1.3 窗口及其生命周期1.4 Keyed vs Non-Keyed1.5 Flink 中的时间 2.Watermark2.1 案例一2.2 案例二2.3 如何设置最大乱序时间2.4 延迟数据重定向 3.在 DDL 中的定义3.1 事件时间3.2 处理时间 1.基础概念 1.1 流处理 流…...

【数据结构1-2】二叉树

树形结构不仅能表示数据间的指向关系,还能表示出数据的层次关系,而有很明显的递归性质。因此,我们可以利用树的性质解决更多种类的问题。 但是在平常的使用中,我们并不需要使用这么复杂的结构,只需要建立一个包含int r…...

ajax点击搜索返回所需数据

html 中body设置&#xff08;css设置跟进自身需求&#xff09; <p idsearch_head>学生信息查询表</p> <div id"div_1"> <div class"search_div"> <div class"search_div_item"> …...

Redis6基础知识梳理~

初识NOSQL&#xff1a; NOSQL是为了解决性能问题而产生的技术&#xff0c;在最初&#xff0c;我们都是使用单体服务器架构&#xff0c;如下所示&#xff1a; 随着用户访问量大幅度提升&#xff0c;同时产生了大量的用户数据&#xff0c;单体服务器架构面对着巨大的压力 NOSQL解…...

在Python中如何使用集合进行元素操作

目录 1. 创建集合 2. 添加或删除元素 3. 集合运算 4. 其他集合操作 总结 在Python中&#xff0c;集合&#xff08;set&#xff09;是一种基本的数据结构&#xff0c;用于存储无序且唯一的元素。这意味着集合中的每个元素都是独一无二的&#xff0c;且集合不保持任何元素的…...

2024年阿里云幻兽帕鲁Palworld游戏服务器优惠价格表

自建幻兽帕鲁服务器租用价格表&#xff0c;2024阿里云推出专属幻兽帕鲁Palworld游戏优惠服务器&#xff0c;配置分为4核16G和4核32G服务器&#xff0c;4核16G配置32.25元/1个月、10M带宽66.30元/1个月、4核32G配置113.24元/1个月&#xff0c;4核32G配置3个月339.72元。ECS云服务…...

Atlassian Confluence Data Center and Server 权限提升漏洞复现(CVE-2023-22515)

0x01 产品简介 Atlassian Confluence是一款由Atlassian开发的企业团队协作和知识管理软件,提供了一个集中化的平台,用于创建、组织和共享团队的文档、知识库、项目计划和协作内容。是面向大型企业和组织的高可用性、可扩展性和高性能版本。 0x02 漏洞概述 Atlassian Confl…...

打开 IOS开发者模式

前言 需要 1、辅助设备&#xff1a;苹果电脑&#xff1b; 2、辅助应用&#xff1a;Xcode&#xff1b; 3、准备工作&#xff1a;苹果手机 使用数据线连接 苹果电脑&#xff1b; 当前系统版本 IOS 17.3 通过Xcode激活 两指同时点击 Xcode 显示选择&#xff0c;Open Develop…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK&#xff0c;开始写第二篇的内容了。这篇博客主要能写一下&#xff1a; 如何给一些三方库按照xmake方式进行封装&#xff0c;供调用如何按…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地

借阿里云中企出海大会的东风&#xff0c;以**「云启出海&#xff0c;智联未来&#xff5c;打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办&#xff0c;现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...

STM32标准库-DMA直接存储器存取

文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA&#xff08;Direct Memory Access&#xff09;直接存储器存取 DMA可以提供外设…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放

简介 前面两期文章我们介绍了I2S的读取和写入&#xff0c;一个是通过INMP441麦克风模块采集音频&#xff0c;一个是通过PCM5102A模块播放音频&#xff0c;那如果我们将两者结合起来&#xff0c;将麦克风采集到的音频通过PCM5102A播放&#xff0c;是不是就可以做一个扩音器了呢…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的&#xff0c;比GNOME简单得多&#xff01; 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

什么是EULA和DPA

文章目录 EULA&#xff08;End User License Agreement&#xff09;DPA&#xff08;Data Protection Agreement&#xff09;一、定义与背景二、核心内容三、法律效力与责任四、实际应用与意义 EULA&#xff08;End User License Agreement&#xff09; 定义&#xff1a; EULA即…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...