计算机网络之入门

1.网络的发展

1.1计算机网络定义

计算机网络是以共享资源(硬件、软件和数据等)为目的而连接起来的、在协议控制下,由一台或多台计算机、若干台终端设备、数据传输设备等组成的系统之集合。

这些计算机系统应当具有独立自治的能力,是可以独立运行的系统

1.2发展过程

1946年,第1台计算机:ENICA诞生

硬件发展:电子管—>晶体管—>中小规模集成电路—>大规模/超大规模集成电路—>...

软件发展:单用户OS—> 分时多用户OS—>网络OS—>分布式OS—>...

单机: 单个用户独占系统资源(主机)(1946年)

     

分时系统:   分时多用户系统(大型机)(50年代末期) 多个用户利用多台终端共享单台计算机的资源

远程访问系统:利用通信线路将远程终端连至主机,不受地域限制地使用计算机的资源 (60年代中后期)

网络: 将多台计算机连在一起,相互共享资源        1968年, 第一个计算机网络 ARPANET 诞生

覆盖网:面向应用的网络(在支撑网络的基础上增添组件,使其满足各类应用需求)— 21世纪初期

典型系统:

以信息资源共享为目的的网格;

以闲散资源共享为目标的对等网(P2P网)

2.网络的功能

计算机联网的主要目的—跨越时空:

1.资源共享

硬件共享:大型计算机的处理能力,昂贵的外设;    

软件共享:应用软件,系统软件等;    

数据共享:用户数据(市场信息)等。

2.数据传输

支持用户之间的数据传输(如电子邮件、文件传输、IP电话等),计算机网络可以使得分布于全球的计算机协作起来。形成一个巨大的、虚拟的计算机。

3.网络的分类

1. 根据网络覆盖范围分类

广域网  (Wide Area Network--WAN)

局域网  (Local Area Network--LAN)

城域网  (Metropolitan Area Network--MAN)

园区网  (Campus Network/Enterprise Network):覆盖整个企业,淡化覆盖范围的概念。         不同覆盖范围的网络采用了不同的技术,应用的普及导致范围的淡化,目前习惯用技术来分析网络类型。

2.按网络拓扑结构分类

(1)星形网络: 以一台中心处理机为主而构成的网络,其它入网机器仅与该中心处理机之间有直接的物理链路,所有网上传输的信息均需通过该处理机转发。

            

(2)总线网络: 所有入网机器共用一条物理传输信道。

(3)环形网络:入网设备通过转发器接入网络,每个转发器仅与两个相邻转发器有直接的物理线路,所有转发器构成了环形网络。

(4)网状网络 : 利用专门负责数据通信和传输的结点机构成 入网设备直接接入结点机进行通信。 两个结点之间的连接不唯一,完整性、可靠性高。

           

主要用于地理范围大、 入网主机多(机型多)的环境, 常用于构造广域网络

(5)树状拓扑结构 : 星型网络的扩展。

3.根据管理性质分类

公用网 :资源可供任何人使用         电话网、公共数据网、DDN等

专用网 :资源仅供有限对象使用          国家安全网、军事网、气象网、电力网等

利用公用网组建专用网—虚拟专用网(VPN)         金融网,教育网,政府网等  

互联网   (Internet—因特网)    

内联网    (Intranet,如企业网)    

外联网    (Extranet,如企业之间网络)

4.根据交换方式分类 (信息在网络设备(交换机)中的转移方式)

(1)电路交换网:交换机采用程控跳线接续工作方式(类似电话),无存储能力。

具有建立链路数据传输释放链路三个阶段;通信过程中,自始自终占用该条线路,且不允许其它用户共享其信道容量。

(2)报文交换网:交换机采用具有“存储-转发”能力的计算机,用户数据可以暂时保存于交换机内,等待线路空闲时,再进行用户数据的一次性传输,多个用户的数据可以经过一条链路传输。

(3)分组交换网  

类同报文交换技术,规定了交换机处理和传输的数据长度(称之为分组)不同用户的数据分组可以交织地在网络中的物理链路上传输。

目前,大多数计算机网络(包括广域网和局域网)都采用了分组交换技术,只是分组的大小有所不同。

5.按功能分类

(1)通信子网:网络中面向数据传输或者数据通信的部分资源集合,主要支持用户数据的传输;该子网包括传输线路、交换机和网络控制中心等硬软件设施。

(2)资源子网:网络中面向数据处理的资源集合、主要支持用户的应用;该子网由用户的主机资源组成,包括接入网络的用户主机,以及面向应用的外设(例如:终端)、软件和可共享的数据(例如:公共数据库)等。

4.通信协议的基本概念

1.进程间通信

各进程间相互制约的等待或互通消息。

同一系统中:   共享内存、共享缓冲区、共享文件   等待方式、   并行方式

不同系统之间:   两台计算机之间的进程通信   通过网络,越过通信链路

2.网络通信的基本结构

(1)通信接口程序:负责将计算机信息传输到线路上;从线路上接收信息并传送给计算机。

(2)网络控制程序(NCP):负责控制和监视进程使用网络资源的情况;具有建立通信链路、分配存储器、控制计算机与网络之间信息流的功能。

(3)通信接口:为两个系统的设备和部件之间连接服务的,包括四个方面:

        物理方面(接口有多少个插脚)

        电气方面(电路信号的电压大小、以及与时间的关系)

        逻辑方面(语法上):说明数据流如何通过、接口“流”到线路上,如何控制等。

        过程方面: 说明数据流穿入接口时的命令、顺序、控制信息的内容等。

(4)网络通信协议:一组约定和规则的集合。通信的两个实体在通信内容、通信方式、以及通信时序等方面,要遵从相互可以接收的协议(相同或兼容的协议)。

协议的三要素 : 

①语法   确定通信双方通信时数据报文的格式

②语义   确定通信双方通信的内容

③时序规则  指出通信双方信息交互的顺序(建链、数据传输、拆链、数据重传等)

网络通信协议举例:两台计算机之间进行文件传输,   主机A(发送方)发文件给主机B(接收方)。   定义简单的协议文件传输协议:  

5.未来规划

计划近期内专门做一期计算机网络的专栏,感兴趣的小伙伴可以关注点亮小爱心哟!

                                                      

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

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

相关文章

无芯封装基板适用于先进封装技术 我国行业发展面临一定挑战

无芯封装基板适用于先进封装技术 我国行业发展面临一定挑战 无芯封装基板指去除作为核心支撑层的芯板,仅由积层板构成的封装基板。与传统带有芯层的封装基板相比,无芯封装基板具有轻量化、密度高、信号传输质量高、散热性能好、布线灵活性好等优势&#…

为什么每一名程序员都应该学习 C++?

掌握 C 可不容易,但一旦你掌握了,就会获得丰厚的回报。 通常,程序员在他们的编程生涯中会使用多种编程语言。然而,我们也看到,有些程序员一直在使用同一种编程语言。例如,我们经常遇到有几十年经验的 Java…

pd17虚拟机安装包:Parallels Desktop 17 激活版

Parallels Desktop 17 是一款功能强大的虚拟机软件,可以在 Mac 计算机上运行 Windows、Linux 和其他操作系统。使用 Parallels Desktop,您可以创建虚拟机并在其中安装各种操作系统,从而能够在同一台计算机上同时运行多个操作系统。 该软件具…

华为仓颉编程语言正式发布,仓颉编程教程

目录 前言 基本概念 标识符 变量 类型 基础数据类型 表达式 if 表达式 while 表达式 for-in 表达式 程序结构 函数 定义函数 调用函数 lambda表达式 应用实例(遍历目录) 枚举 定义与实例化 成员访问规则 match表达式 应用实例&…

探索ONLYOFFICE桌面编辑器8.1:更强大的办公软件(新功能全新详解)

引入 时间到达2024年,办公软件已经成为不可或缺的的一部分。想到办公软件不知道大家首先想到那些产品 office 亦或是 WPS,但一个前者需要购买才能使用完整服务,一个漫天的弹广告不充会员什么都用不了。那难道世面上就没有一块正在好用无广告的…

Clonable接口和拷贝

Hello~小伙伴们!本篇学习Clonable接口与深拷贝,一起往下看吧~(画图水平有限,两张图,,我真的画了巨久,求路过的朋友来个3连~阿阿阿~~~) 目录 1、Clonable接口概念 2、拷贝 2、1浅拷贝 2、2深拷贝 1、Clon…

Linux学习第52天:Linux网络驱动实验(三):一往(网)情深

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 许久没有更新,的确是最近有点懈怠了。没有任何借口,接受所有的批评。接下来无论如何也要坚持下去,不管处于什么境地、什么原因&am…

鼠标与键盘交互设计

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 在海龟绘图中,也支持与鼠标或键盘的交互操作。它提供了监听键盘按键事件、鼠标事件以及定时器等方法,下面分别进行介绍。 1键…

背包模型——AcWing 423. 采药

背包模型 定义 背包模型是一种常见的算法问题模型,它主要涉及将一些物品放入一个容量有限的背包中,以达到某种最优目标,如最大化价值或最小化重量等。 运用情况 常用于资源分配、项目选择、货物装载等实际问题中。例如,在选择…

AWS云中的VPC启用流日志保存S3(AWS中国云)

问题 需要在AWS中国云中对VPC启用流日志操作。 步骤 创建s3桶 这里设置一个s3桶名,创建即可。如果出现已存在具有相同名称的存储桶错误,就换个桶名再试一试吧。 启用vpc流日志 找到vpc流日志入口操作,如下图: 设置vpc流日志…

『亚马逊云科技产品测评』程序员最值得拥有的第一台专属服务器 “亚马逊EC2实例“

授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道 引言 自2006年8月9日,在搜索引擎大会(SES San Jo…

嵌入式EMC

名词介绍: EMC:兼容,设备间相互兼容在共同环境下工作的能力。包括:EMI和EMS EMI:interference干扰,自身对其他设备的干扰 EMS:susceptibility抗干扰能力 EMS包含以下: 浪涌&…

Java文件操作小项目-带GUI界面统计文件夹内文件类型及大小

引言 在Java编程中,文件操作是一项基本且常见的任务。我们经常需要处理文件和文件夹,例如读取、写入、删除文件,或者遍历文件夹中的文件等。本文将介绍如何使用Java的File类和相关API来统计一个文件夹中不同类型文件的数量和大小。 准备工作…

c++基本数据类型和计算(三)习题讲解

1.【单选题】 int a450; int main() { int a100; { int a 999; std::cout << a; } } A.999 B.100 C.450 解析&#xff1a;这道题考察作用域&#xff0c;本身遵守就近原则&#xff0c;所以选A。 2.【单选题】 int a; { int b 100; } ab<&l…

MySQL 基础概念

MySQL逻辑架构 MySQL 服务器逻辑架构图 最上层的服务并不是MySQL所独有的&#xff0c;大多数基于网络的客户端/服务器的工具或者服务都有类似的架构&#xff0c;比如连接管理、授权认证、安全等等。 大多数MySQL的核心服务都在第二层&#xff0c;包括查询解析、分析、优化、…

手持小风扇品牌有哪些?分享口碑最好的五款手持小风扇

手持小风扇在炎热的夏季成为了许多人解暑的好帮手。它们不仅轻便便携&#xff0c;随时随地都能为我们带来清凉和舒适。然而&#xff0c;市场上手持小风扇的品牌繁多&#xff0c;让人眼花缭乱。为了帮助大家做出更明智的选择&#xff0c;接下来我们将分享口碑最好的五款手持小风…

vscode关于java扩展

包含IDEA同款代码提示&#xff0c;vscode的debug&#xff0c;除了创建类要手动新建java文件以外&#xff0c;其他都还行&#xff0c;满足初学者要求。

Python+Pytest+Allure+Yaml接口自动化测试框架详解

PythonPytestAllureYaml接口自动化测试框架详解 编撰人&#xff1a;CesareCheung 更新时间&#xff1a;2024.06.20 一、技术栈 PythonPytestAllureYaml 版本要求&#xff1a;Python3.7.0,Pytest7.4.4,Allure2.18.1,PyYaml6.0 二、环境配置 1、安装python3.7&#xff0c;并配置…

C++编程逻辑讲解step by step:根据关键词自动判断文章的类别,去掉无关词后统计文章中每个单词出现的频率。

题目分析 根据关键词自动判断文章的类别。共2篇文章&#xff08;用char s1[]和char s2[]保存&#xff09;&#xff0c;去掉无关词后&#xff08;用char irrelevant[][10]保存&#xff09;&#xff0c;统计文章里面每个单词出现的频率&#xff1a;关键词个数去掉无关词后的文章…

前端JS必用工具【js-tool-big-box】学习,数值型数组的正向排序和倒向排序

这一小节&#xff0c;我们说一下前端 js-tool-big-box 这个工具库&#xff0c;添加的数值型数组的正向排序和倒向排序。 以前呢&#xff0c;我们的数组需要排序的时候&#xff0c;都是在项目的utils目录里&#xff0c;写一段公共方法&#xff0c;弄个冒泡排序啦&#xff0c;弄…