分布式系统与计算机网络系统的区别与联系_计算机网络与分布式系统的主要区别

分布式系统与计算机网络系统的区别与联系_计算机网络与分布式系统的主要区别,第1张

分布式计算机系统与计算机网络系统的重要区别是:计算机在不同的 *** 作系统下,工作方式不同。

分布式系统与计算机网络的主要区别不在它们的物理结构上,而是在高层软件上。分布式系统是一个建立在网络之上的软件系统,这种软件保证了系统高度的一致性与透明性。

分布式系统的用户不必关心网络环境中资源分布情况,以及连网计算机的差异,用户的作业管理与文件管理过程是透明的。

扩展资料:

分布式计算机系统特点:

无主从区分;计算机之间交换信息;资源共享;相互协作完成一个共同任务。

通过多路传输数据点线,将主机和若干台外围处理机联成一个整体,共同担负整个计算功能的系统。主机专门从事计算量大的数值计算,外围处理机则承担系统的控制 *** 作。其优点是:

1、加快了机器的运算速度。

2、简化了主机的逻辑结构。

3、使 *** 作系统在一定程度上得到了简化。故现代大型武器系统的设计,常采用分布式计算机系统。

计算机网络系统特点:

计算机网络系统是由网络硬件和网络软件组成的。在网络系统中,硬件的选择对网络起着决定性的作用,而网络软件则是挖掘网络潜力的工具。

1、计算机网络建立的主要目的是实现计算机资源的共享。计算机资源主要是指计算机硬件、软件与数据。

2、互连的计算机是分布在不同的地理位置的多台独立的“自治计算机”。连网的计算机既可以为本地用户提供服务,也可以为远程用户提供网络服务。

3、连网计算机之间遵循共同的网络协议

首先,对于题主这个问题,我想做个比喻,

你去餐馆吃饭,可是你在纠结吃什么菜,问身边的人,大部分人给你说,大家都喜欢吃他家的葱爆肉,说的食材多么好,厨师多么拿手,可是你不吃葱,这道菜你依旧没办法享受。这个例子我想表达的意思就是,都应该是选择一个我们喜欢吃的食材,做出来的菜,才合胃口,就是吃饱了都还可以再吃两口的那种,如果听大家的,不和胃口,你就是吃两口就饱了,岂不是浪费掉了。

选择学习编程也是一个道理,都应该先去了解各个编程语言的信息,它的就业方向,它能做些什么,找到一个你比较感兴趣的方向,然后根据兴趣学习就好,这样既不会浪费时间成本,也可以让自己学习的动力更大。

首先我们先了解一下各个语言之间的层级关系

黑马程序员

硬件层级:就是CPU、内存、显卡等,不属于软件范畴
汇编层级:可读性差,但是现在有编译器哈,所以市场汇编语言的工程师需求变量是很少的。高级语言需求量增大了。因为高级语言很好读;
系统层级:Windows、Linux、Mac、OS、Andriod、IOS等等。就是电脑软件都是跑在 *** 作系统上的。
应用层级:是更加偏重软件的程序的执行流程和功能的。开发起来体量非常大。
脚本层级:这里面不涉及楼主上面说的四种语言,我就是略说一下。脚本级语言的代码很直给的,代码速度快。但是虽然可读性强,但是编译器把脚本语言翻译成汇编语言的成本很大。

各大语言的简单介绍和应用

1Java(排名第一)
Java功能强大,简单易用。具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。由于其语言特性好,框架丰富,常常被应用于企业中,你可能经常会听到一些关于J2EE,Hibernate等的讨论。而且,现如今的安卓手机的标准编程语言也是Java。
总结
Java主要用于企业级开发, 安卓手机, 网页,游戏后台。

2C和C++(永不过时,越老越吃香)
理论上,只要硬件驱动和API合适,C和C++就可以用于任何开发,效率可以说是所有编程语言里最高的。排除你系统里没有C/C++编译器的情况。一般的系统里C一般都具备,但是可能有些是没有C++编译器的。
目前,C语言主要用来服务应用,开发底层模块和嵌入式。尽管C++也可以,但是由于其复杂性,程序员更多的是选择C语言来做。C++适合一些复杂但又要求高效率的,比如大型游戏等等。
总结
C主要用于服务应用,开发底层模块和嵌入式。
C++主要用于大型游戏开发和一些规模大、性能高的程序开发。
3JavaScript(凡是能用js编写的程序,终将使用js编写)

java VS JS
雷锋VS雷峰塔
外行人可能觉得Javascript听起来跟Java有关,实则没有任何联系。
毫无疑问,Javascript最广泛的是在web前端。通俗的说,当网站传送一些用各种“标签”代表的格式文档时后,Javascript负责把这些文档“转化”成一些客户端动态效果。除此之外,NodeJS还用于开发服务器端。
> nodejs是js的升级版,基于google v8引擎开发的后端语言,可以写服务器
总结
JavaScript主要做web前端以及服务器端开发。

4PHP(最好的语言,份额被go抢)
PHP是一种通用开源脚本语言,语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,,主要适用于Web开发领域,PHP是web后端的王者。

总结
PHP主要用于Web开发,后端较多,也可以用于整个web服务器,比如论坛引擎。
前端(网页waiter) ---请求--> 处理(服务器Server) ---》 返回给页面
5Python
Python语法简洁清晰,具有比较丰富和强大的库,而由于它可以把用其他语言制作的模块轻松地联结在一起,又称其为胶水语言。
IEEE发布2017年编程语言排行榜:Python位居首位。应用比较广泛,像信息安全、物联网开发、桌面应用、大数据处理都需要用python。
总结
Python主要用于服务器、物联网开发,大数据处理等。

6go
值得一学:
开发速度,执行效率,从高到低: c> go > python
go语言所有执行需要的库都打包在一个exe中,编译好的exe程序,直接在第三方系统就可以运行
GUI:图形化
GUI
难度,从难道易:c > go > pthon
> docker, k8s,区块链

推荐学习思路:

找到喜欢的应用领域--->明确学习目的--->找到重点学习内容--->看视频学习

有了一定的基础之后:

找到项目--->按照源码看思路--->渗入理解--->抄源码--->不看源码自己还原

在进阶之后的提升:

找到带源码的项目--->不要再抄源码而是在项目基础上实现自己的新增功能--->看书优化代码

因为不知道题主要学习什么编程语言,所以暂时思路就是这样的。当明确自己要学习的内容之后,可以自己做或者找到合适自己的学习路线图,按照自己的未来发展方向找到学习内容的重点开始学习。

摘 要:MANET因具有自组性、机动性及抗毁性而受到人们的高度关注。在阐述MANET的起源与发展及其工作原理的基础上,较全面详细地分析了MANET的关键技术;介绍了MANET在法军、美军通信中的应用。
关键词:MANET 关键技术 军事通信
中图分类号:TN911文献标识码:A 文章编号:1007-3973(2012)007-089-03
1 引言
MANET(Mobile Ad-hoc Network,MANET)起源于1971年美国夏威夷大学设计实现的第一个分组无线网络——ALOHA系统,在军事通信中具有广阔的应用前景。美国DARPA(Defense Advanced Research Project Agency)在1972年、1993年和1994年分别启动于分组无线网(PRNET,Packet Radio NETwork)、高残存性自适应网络SURAN和全球移动信息系统GloMo三个项目,取得丰硕的理论和应用成果,并一直持续深入研究PRNET技术。1991年成立的IEEE80211标准委员会使用术语“Ad Hoc网络”来描述这种特殊的自组织对等式多跳无线移动通信网络。1997年成立IETF MANET工作组,致力于MANET协议的标准化,加速推动了商用MANET的研发。
以局域网技术、数据分组交换技术为基础,MANET由一组带有无线收发装置的移动分组无线单元(Packet Radio Unit,PRU)组成,是一种多跳临时性移动通信网络。PRU由无线电台、天线和数字控制器组成。在MANET网络中传送的信息以分组为基本单元,每个分组包括包头和正文两部分。包头通常包括该分组在分组无线网中的源地址、目的地址和相关路由信息;正文部分则是需要传送的消息,正文部分可包含IP数据或其他数据。MANET不设中心站、采用分布式网络结构,每个节点均可作为源节点、目的节点或中继节点,且利用分组包头中的控制信息分包为每个分组选择传输合适的路由。
和依赖于固定基础设施的通信网络相比,MANET具有自身的特点和优点,近年来受到人们的广泛关注。
2 MANET的关键技术
不依赖于固定的基础设施、节点可能随时进入/离开网络、整个网络采用分布式结构运行,MANET有很多技术难点,其关键技术主要有:MAC协议、QoS保障、路由协议、功率控制、安全问题、网络互联和网络资源管理等。
21 MANET的MAC协议
链路层解决的主要问题包括介质接入控制以及数据的传送、同步、纠错和流量控制等,分为媒介访问控制层(MAC)和逻辑链路控制层(LLC)。MAC协议决定节点什么时候允许发送其分组,且通常控制对物理层的所有访问。
在MANET中存在隐藏终端和暴露终端问题,要在MAC层解决这两个固有问题,因而不能直接应用载波侦听多址访问(CSMA)协议(WLAN中使用最多的异步随机访问协议)。MANET的MAC协议有竞争协议、分配协议和混合协议三类。竞争协议使用直接竞争来决定信道访问权并通过随机重传来解决碰撞问题,在传输载荷轻的时候碰撞次数少、信道利用率高、分组传输时延小;但在传输载荷增大时,协议性能下降很快甚至致使网络崩溃。改进的竞争协议代表有:多址访问与碰撞回避(MACA)协议、信道获取多址访问(FAMA)协议、IEEE80211 MAC等。分配协议使用同步通信模式,时隙与节点的映射决定一个节点在其特定时隙内允许访问的信道。分配协议往往在中等到繁重传输载荷条件下运行良好,但信道时隙化导致在轻传输载荷条件下的时延相对于竞争协议是非常大的。分配协议有:五步预留协议(FPRP)、跳频预留多址访问协议(HRMA)等。混合协议能够保持所组合的各个协议的优点又能避免其缺陷,在传输载荷轻的时候表现为竞争协议的性能,而在传输载荷重的时候近似表现为分配协议的性能。典型的混合协议有:TDMA/CSMA混合协议、Meta-协议等。
22 路由协议
MANET设计中的一个关键问题是开发能够在两个节点之间提供高质量高效率通信的路由协议。Internet路由协议不能适应MANET网络节点的移动性和网络拓扑结构不断变化,专门的适用于MANET的路由协议应能够满足功能:能感知网络拓扑的变化、维护网络拓扑的连接、高度自适应的路由。IETF MANET已经完成的标准化路由协议主要有:主动式路由协议有最优化链路状态路由协议(OLSR)和基于反向路径转发的拓扑分发协议(TBRPF);按需路由协议有按需距离矢量路由协议(AODV)和基于节点间相互关系的路由协议(ABR);综合主动式路由思想和按需路由思想的路由协议称为混合型路由协议,有域路由协议(ZRP)和抢先式路由协议等。
分组无线网应用环境复杂多样,不同的应用环境追求不同的性能,这导致很难寻找MANET的最优路由协议。如:在军事应用中更关注系统的抗毁性、隐蔽性和保密性;而在无线会议系统中则更注重端到端的时延和吞吐量。不同类型的路由协议具有自身的优缺点,适应于不同的网络环境。不可能用一种路由算法作为标准的路由协议去比较好地解决所有MANET路由问题,路由算法的最优化石针对具体网络环境的工程化问题。混合型路由协议因其固有的灵活性,而具有很好的应用前景。
MANET的用户通常是具有协同工作关系的群体,而群组通信必须由多播路由协议提供通信支持。但有线网络环境中使用的多播路由协议(如:多播开放最短路径优先协议MOSPF等)在移动分组无线网中不再适用,因为动态的网络拓扑结构会导致分发树的破坏,而不得不因连接变化而调整。原达等提出了适用于移动分组无线网的多播路由协议。在移动分组无线网环境中,多播路由协议起着非常重要的作用。在协议中采用按需路由发现策略,动态建立路由信息及维持多播组成员关系。控制开销小、实现简单,能够适应较低带宽的大规模动态网络环境,具有稳定的分组转发成功率和良好的伸缩性,获得了较好的多播数据传输质量。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/dianzi/10675394.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-10
下一篇2023-05-10

发表评论

登录后才能评论

评论列表(0条)

    保存