计算机网络入门

计算机网络

一、计算机网络基础

  • 定义计算机网络
  • 计算机网络的发展历程
  • 计算机网络的分类(局域网、广域网、互联网等)

1. 计算机网络的定义:

计算机网络是指通过通信链路将多台计算机连接在一起,以便它们之间能够相互通信和共享资源的系统。这些资源可以包括文件、打印机、应用程序等。计算机网络的目的是为了使不同地点的计算机之间能够高效地传输数据,共享信息,并协同完成任务。

2. 计算机网络的发展历程:

  • 1950-1960: 早期计算机网络主要是由军方和大学创建的,如美国的ARPANET(Advanced Research Projects Agency Network)。
  • 1970: 发展初期,网络主要用于实验和研究。TCP/IP协议成为标准。
  • 1980: ARPANET拓展为国际网络,并逐渐演化为现代互联网的雏形。商业网络也开始出现。
  • 1990: 互联网的爆发期,万维网(World Wide Web)的诞生推动了信息的广泛传播。
  • 2000-今: 云计算、移动互联网、物联网等技术的发展,使计算机网络变得更加普及和复杂。

3. 计算机网络的分类:

a. 按照地理范围划分:

  • 局域网(LAN,Local Area Network): 小范围内的网络,通常在一个建筑物或者校园内,速度较快。
  • 城域网(MAN,Metropolitan Area Network): 涵盖城市范围的网络,连接多个局域网。
  • 广域网(WAN,Wide Area Network): 跨越地理区域,可以连接不同城市、国家甚至大洲的网络。

b. 按照拓扑结构划分:

  • 星型网络: 所有计算机都连接到一个中央节点。
  • 总线型网络: 所有计算机连接到一条中央线路。
  • 环型网络: 计算机连接成一个环形结构。
  • 网状网络: 所有计算机都直接连接到其他计算机,形成一个复杂的网状结构。

c. 按照用途划分:

  • 互联网: 全球范围的公共网络,连接了数以亿计的设备。
  • 企业网络: 用于组织内部通信和资源共享的网络。
  • 家庭网络: 连接家庭内部设备的网络,例如家庭局域网。

二、网络体系结构

  • OSI模型和TCP/IP模型的介绍
  • 各层的功能和作用

网络体系结构主要有两个重要的模型,即OSI模型(开放系统互联模型)和TCP/IP模型(传输控制协议/因特网互联协议模型)。这两个模型都是为了在不同厂商的网络设备之间实现互操作性而设计的。以下是对它们的简要介绍以及各层的功能和作用:

OSI模型(开放系统互联模型):

  1. 物理层(Physical Layer):
    • 功能: 负责传输比特流,定义了物理媒介的特性和传输速率。
    • 作用: 主要关注硬件层面,如电缆、连接器、传输速率等。
  2. 数据链路层(Data Link Layer):
    • 功能: 将比特流划分为数据帧,提供物理地址(MAC地址)和错误检测。
    • 作用: 负责点对点的数据传输,通过物理地址进行寻址,实现可靠的数据链路。
  3. 网络层(Network Layer):
    • 功能: 提供逻辑地址(IP地址)和路由,实现不同网络之间的数据包转发。
    • 作用: 处理数据的逻辑传输,负责数据在网络中的路径选择。
  4. 传输层(Transport Layer):
    • 功能: 提供端到端的通信和数据流控制,确保可靠的数据传输。
    • 作用: 分段、重组和管理端到端的数据传输,包括TCP和UDP协议。
  5. 会话层(Session Layer):
    • 功能: 管理不同应用之间的对话,确保数据同步和恢复。
    • 作用: 建立、管理和终止应用程序之间的通信会话。
  6. 表示层(Presentation Layer):
    • 功能: 数据格式转换、加解密、压缩和解压缩。
    • 作用: 确保应用程序能够正确解释收到的数据,处理数据的格式问题。
  7. 应用层(Application Layer):
    • 功能: 提供网络服务,包括文件传输、电子邮件、远程登录等。
    • 作用: 提供用户接口和网络服务,是最接近用户的一层。

TCP/IP模型(传输控制协议/因特网互联协议模型):

  1. 链路层(Link Layer):
    • 功能: 类似于OSI模型的物理层和数据链路层,定义物理媒介和寻址。
  2. 网络层(Internet Layer):
    • 功能: 类似于OSI模型的网络层,提供逻辑地址(IP地址)和路由。
  3. 传输层(Transport Layer):
    • 功能: 与OSI模型的传输层类似,提供端到端的通信和数据流控制,包括TCP和UDP协议。
  4. 应用层(Application Layer):
    • 功能: 与OSI模型的应用层类似,提供网络服务,是最接近用户的一层。

TCP/IP模型将会话层、表示层的功能合并到应用层中,将OSI模型的七层整合为四层。在实际应用中,TCP/IP模型更为常用,尤其是在互联网环境中。

三、网络设备与技术

  • 路由和交换机

交换机和路由器在网络中的使用是基于它们各自的功能和优势。以下是一些情境,说明了在何时使用交换机和路由器,并简要概述了它们之间的区别:

1. 使用交换机(Switch):

  • 在局域网络(LAN)内部: 交换机通常用于构建局域网络,以提供高速、低延迟的数据传输。它适用于连接多个设备,如计算机、打印机和其他网络设备。
  • 在大型组织中: 对于大型企业、学校或数据中心等组织,交换机可用于连接大量设备,并通过划分虚拟局域网络(VLAN)来隔离流量。
  • 对于数据中心: 在数据中心环境中,交换机用于连接服务器,提供高吞吐量、低延迟的数据传输。

2. 使用路由器(Router):

  • 在不同网络之间: 路由器用于连接不同的网络,将数据从一个网络传送到另一个网络。例如,连接局域网和互联网,或连接公司的分支办公室。
  • 实现网络分割: 当需要将大型网络划分为多个子网时,路由器用于在这些子网之间转发数据,并提供安全性和管理的好处。
  • 处理网络层的协议: 路由器工作在网络层,处理IP地址,因此它对于实现跨越不同子网的通信是至关重要的。

区别:

  1. 工作层次不同: 交换机工作在数据链路层(第二层),而路由器工作在网络层(第三层)。
  2. 处理的信息不同: 交换机通过MAC地址来转发数据帧,而路由器使用IP地址来转发数据包。
  3. 传输范围不同: 交换机主要在局域网络内传输数据,而路由器在不同网络之间传输数据。
  4. 隔离方式不同: 交换机通过端口隔离流量,而路由器通过不同的子网实现流量隔离。
  5. 用途不同: 交换机用于提供快速的内部局域网络通信,而路由器用于连接不同网络,提供不同网络之间的通信。

在实际网络中,通常会同时使用交换机和路由器,以满足不同层次和需求的网络通信。交换机和路由器的联合使用能够构建出高效、灵活和安全的网络架构。

四、IP基础

  • IPv4概述
  • IPv6概述
  • IPv4和IPv6的差异

IPv4(Internet Protocol version 4):

  • 地址长度: IPv4地址是32位二进制数,通常以点分十进制表示,例如:192.168.1.1。
  • 地址空间: 提供大约42亿个地址,这个数量在当前互联网规模下逐渐显得不够用,导致IPv4地址短缺。
  • 掩码: IPv4使用子网掩码来划分网络中的主机和子网。常见的子网掩码包括255.255.255.0,表示网络部分占24位,主机部分占8位。

IPv6(Internet Protocol version 6):

  • 地址长度: IPv6地址是128位二进制数,通常以冒号分隔的16进制表示,例如:2001:0db8:85a3:0000:0000:8a2e:0370:7334。
  • 地址空间: 提供了巨大的地址空间,理论上可以支持大约3.4 x 10^38个地址,解决了IPv4地址短缺的问题。
  • 掩码: IPv6采用了地址前缀长度(Prefix Length)来表示网络部分和主机部分的划分。例如,2001:0db8:85a3::/64,表示前64位用于网络部分,后64位用于主机部分。

区别:

  1. 地址长度: IPv4地址长度为32位,IPv6地址长度为128位。
  2. 地址表示法: IPv4地址使用点分十进制表示法,而IPv6地址使用冒号分隔的十六进制表示法。
  3. 地址空间: IPv6提供了巨大的地址空间,消除了IPv4中因地址短缺而产生的问题。
  4. 配置方式: IPv6支持自动配置(如SLAAC)和动态主机配置协议(DHCPv6),简化了网络配置。
  5. NAT(Network Address Translation): IPv4广泛使用NAT来解决地址短缺问题,而IPv6设计时考虑了地址空间的充足性,避免了对NAT的依赖。
  6. 安全性: IPv6在设计时考虑了安全性,集成了IPsec,而IPv4的IPsec是一个可选的扩展。
  7. 支持服务质量(QoS): IPv6对服务质量的支持更为内置,而IPv4需要通过附加协议来实现。

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

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

相关文章

【nlp】4.2 nlp中标准数据集(GLUE数据集合中的dev.tsv 、test.tsv 、train.tsv)

nlp中标准数据集 1 GLUE数据集合介绍1.1 数据集合介绍1.2 数据集合路径2 GLUE子数据集的样式及其任务类型2.1 CoLA数据集文件样式2.2 SST-2数据集文件样式2.3 MRPC数据集文件样式2.4 STS-B数据集文件样式2.5 QQP数据集文件样式2.6 (MNLI/SNLI)数据集文件样式2.7 (QNLI/RTE/WNLI…

【网络】传输层 --- 详解TCP协议

目录 一、协议段格式及其策略确认应答(ACK)机制6个标志位超时重传流量控制滑动窗口1、先谈滑动窗口一般情况2、再谈特殊窗口 拥塞控制拥塞窗口 延迟应答&&捎带应答面向字节流粘包问题 二、三次握手和四次挥手三次握手为什么是3次?不是2、4、5、6次呢 四次挥…

[datastore@cyberfear.com].Elbie、[thekeyishere@cock.li].Elbie勒索病毒数据怎么处理|数据解密恢复

引言: 随着科技的进步,勒索病毒变得越来越复杂,而[datastorecyberfear.com].Elbie、[thekeyisherecock.li].Elbie勒索病毒是其中的一种令人头疼的威胁。本文将深入介绍[datastorecyberfear.com].Elbie、[thekeyisherecock.li].Elbie勒索病毒…

邻接表存储实现有向网构建

7-2 邻接表存储实现有向网构建 编程实现:以邻接表的存储方式,创建一个有向网,顶点为字符型。 输入格式: 第一行输入顶点个数和边的个数,中间用空格分开。下一行开始依次输入顶点,空格或回车分开。接着依次输入边依附…

NoSQL基础知识小结

NoSQL 基础知识 什么是 NoSQL? NoSQL(Not Only SQL 的缩写)泛指非关系型的数据库,主要针对的是键值、文档以及图形类型数据存储。 NoSQL 数据库天生支持分布式,数据冗余和数据分片等特性,旨在提供可扩展的高可用高…

【代码】基于VMD(变分模态分解)-SSA(麻雀搜索算法优化)-LSTM的光伏功率预测模型(完美复现)matlab代码

程序名称:基于VMD(变分模态分解)-SSA(麻雀搜索算法优化)-LSTM的光伏功率预测模型 实现平台:matlab 代码简介:提出了变分模态分解(VMD)和麻雀搜索算法(SSA)与长短期记忆神经网络 (LSTM)相耦合,…

C语言数组

数组 一维数组 定义一维数组 定义一维数组的一般形式: 类型符 数组名 [常量表达式];其中: 数组名的命名规则和变量名相同,遵循标识符命名规则。常量表达式的值表示数组中元素的个数,也称为数组的长度。常量表达式可以包含常量…

Linux云服务器打包部署前端Vue项目

1. 打包 在项目包的终端使用命令打包成dist文件。 npm run build2. Linux云服务器上创建文件夹 mkdir /home/www/dist注:dist文件夹不用创建,将打包好的dist.zip放进去,然后解压就行。 3. 安装nginx yum install -y nginx4. 修改配置文件…

Spark-06:Spark 共享变量

目录 1.广播变量(broadcast variables) 2.累加器(accumulators) 在分布式计算中,当在集群的多个节点上并行运行函数时,默认情况下,每个任务都会获得函数中使用到的变量的一个副本。如果变量很…

Android 相机库CameraView源码解析 (一) : 预览

1. 前言 这段时间,在使用 natario1/CameraView 来实现带滤镜的预览、拍照、录像功能。 由于CameraView封装的比较到位,在项目前期,的确为我们节省了不少时间。 但随着项目持续深入,对于CameraView的使用进入深水区,逐…

【LeetCode】挑战100天 Day17(热题+面试经典150题)

【LeetCode】挑战100天 Day17(热题面试经典150题) 一、LeetCode介绍二、LeetCode 热题 HOT 100-192.1 题目2.2 题解 三、面试经典 150 题-193.1 题目3.2 题解 一、LeetCode介绍 LeetCode是一个在线编程网站,提供各种算法和数据结构的题目&…

java stream流常用方法

filter(Predicate predicate)&#xff1a;根据指定条件过滤元素。 List<Integer> numbers Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); List<Integer> evenNumbers numbers.stream().filter(n -> n % 2 0).collect(Collectors.toList()); System.out.pr…

VS2010 VS2015环境编译boost库

VS2010下安装boost库 去www.boost.org下载最新的boost&#xff0c;我下载了boost_1_46_1.7z&#xff08;我放在D:/cpp目录下&#xff09;解压到当前文件夹打开VS2010->VS TOOLS->VS命令提示CD D:/cpp/boost_1_46_1输入bootstrap&#xff0c;便生成bjam.exe文件输入bjam …

[建议收藏] 一个网站集合所有最新最全的AI工具

今天给大家推荐一个宝藏的AI工具合集网站&#xff0c;有了这个网站&#xff0c;你们再也不用去其他地方找AI工具了。 名称&#xff1a;AI-BOT工具集 这个网站精选1000AI工具&#xff0c;并持续每天更新添加&#xff0c;包括AI写作、AI绘画、AI音视频处理、AI平面设计、AI自动编…

Atcoder Beginner Contest 330——A~F题

A - Counting Passes Description Problem Statement N N N people labeled 1 , 2 , … , N 1,2,\dots,N 1,2,…,N took an exam, and person i i i scored A i A_i Ai​ points. Only those who scored at least L L L points pass this exam. Determine how many peopl…

SpringBoot:邮件发送

官网文档&#xff1a;39. Sending Email (spring.io)。 Sending Email Spring框架提供了JavaMailSender实例&#xff0c;用于发送邮件。 如果SpringBoot项目中包含了相关的启动器&#xff0c;那么就会自动装配一个Bean实例到项目中。 在SpringBoot项目中引入如下Email启动器&a…

Add, Divide and Floor(cf round 158 div2)

题目&#xff1a;给你一个整数数组 a1,a2,…,an 。在一次操作中&#xff0c;你可以选择一个整数 x &#xff0c;并用 (a[i]x)/2 替换 ai ( (a[i]x)/2表示将 y(a[i]x)/2舍入为最接近的整数(下取整)。 ⌊y⌋ 表示将 y 舍入为最接近的整数&#xff09;来替换从 1 到 n 的所有 i。…

【数据分享】2019-2023年我国区县逐月新房房价数据(Excel/Shp格式)

房价是一个城市发展程度的重要体现&#xff0c;一个城市的房价越高通常代表这个城市越发达&#xff0c;对于人口的吸引力越大&#xff01;因此&#xff0c;房价数据是我们在各项城市研究中都非常常用的数据&#xff01;之前我们分享过2019-2023年我国地级市逐月房价数据&#x…

Spring Boot 项目中读取 YAML 文件中的数组、集合和 HashMap

在 Spring Boot 项目中&#xff0c;我们经常使用 YAML 文件来配置应用程序的属性。在这篇博客中&#xff0c;我将模拟如何在 Java 的 Spring Boot 项目中读取 YAML 文件中的数组、集合和 HashMap。 1. 介绍 YAML&#xff08;YAML Aint Markup Language&#xff09;是一种人类…

OpenMp并行编程

目录 介绍编译用法>OpenMp parallel>OpenMp for>OpenMp private、firstprivate、lastprivate>OpenMp section>OpenMp reduction>OpenMp single>OpenMp master>OpenMp barrier OpenMp的API函数 介绍 OpenMp是一种并行编程模型&#xff0c;旨在简化多线…