首页 计算机基础知识
pay pay

计算机技术与网络基础知识总结

日期: 2021年12月
阅读: 1143
作者: Python自学网

本篇文章旨在与让大家对计算机和网络之间的基础知识有个简单的了解,我们先从计算机技术开始,简单聊聊计算机技术的发展过程,然后引出我们作为IT编程学习者需要掌握的一些网络技术,对于我们学习Python会有很大的帮助,比如我们后面要深入学习的socket服务器,IP协议,http协议等等,如果你不了解这些网络基础知识,那么你的编程技术就像空中楼阁。为此我参考各种文献和网络文章,从几个方面对计算机技术与网络基础知识进行详细的总结,毕竟本人不是所有知识都很精通,所以有些内容来源自网络专业人士解答,有些是我自己的知识总结。

一、计算机技术

首先声明计算机技术的内容是十分广泛的,这里不仅包括运算方法的基本原理与运算器设计、指令系统、中央处理器(CPU)设计、流水线原理及其在CPU设计中的应用、存储体系、总线与输入输出,还有计算机技术的发展史。对于我们来说只需要简单了解一下计算机技术就可以了。

1.计算机硬件技术

计算机系统是由数量和品种繁多的部件组成的。各种部件技术内容十分丰富,主要有运算与控制技术、信息存储技术和信息输入输出技术等。

运算与控制技术

计算机的运算和逻辑功能主要是由中央处理器、主存储器、通道或I/O处理器以及各种外部设备控制器部件实现的。中央处理器处于核心地位。运算算法的研究成果对加速四则运算,特别是乘除运算有重要作用,随着器件价格的降低,从逻辑方法上大大缩短进位与移位的时间。

指令重叠、指令并行、流水线作业以及超高速缓冲存储器等技术的应用,可提高中央处理器的运算速度。微程序技术的应用,使原来比较杂乱和难以更动的随机控制逻辑变得灵活和规整,它把程序设计的概念运用于机器指令的实现过程,是控制逻辑设计方法上的一大改进,但因受到速度的限制,多用于中、小型计算机、通道和外部设备部件控制器中。早期计算机的各种控制,均集中于处理器,使系统效率很低。

多道程序和分时系统技术的产生和各种存储器和输入输出部件在功能和技术上的发展,使计算机系统内部信息的管理方法与传输成为重要问题,计算机的控制从集中式走向分布式,出现了存储器控制技术与通道、外部设备部件控制技术等。

信息存储技术

存储技术使计算机能将极其大量的数据和程序存放于系统之中,以实现高速处理。由于存储手段在容量、速度、价格三者之间存在尖锐矛盾,存储器不得不采取分级的体系,形成存储器的层次结构,自上至下可分为超高速缓冲存储器、高速主存储器(又称内存储器)和大容量外存储器等。主存储器是存储体系的核心,直接参与处理器的内部操作,因此它应具有与处理器相适应的工作速度和足够大的容量。50年代以来虽出现多种基于不同物理原理的存储方法,但均未获得理想的结果。50年代中期,铁氧体磁心存储器问世,沿用达20年之久,直到70年代中期,MOS存储器技术兴起后才逐步被淘汰。

MOS存储器在速度、价格、功耗、可靠性及工艺性能等方面均有很大优越性,是主存储器比较理想的手段。主存储器的工作速度,一直未能跟上处理器,一般慢5~10倍。为充分发挥处理器潜力,出现了超高速缓冲存储器。超高速缓冲存储器通常以与处理器同类的双极型器件构成,使二者速度相匹配,但由于价格较高,容量一般只有主存储器的几百分之一。

计算机巨量的数据,存储于速度较慢价格较低的外存储器中,外存储器主要有磁盘机和磁带机。存储器的层次结构相对缓和了速度、容量、价格三者之间的矛盾,但给用户带来存储空间调度的困难。为此,一般以硬件自动调度缓存空间,使之透明于用户;以虚拟存储方法(见虚拟存储器),在操作系统软件的支持下,实施主存与外存之间的自动调度。

信息输入输出技术

输入输出设备是计算机送入数据和程序、送出处理结果的手段。输入的基本方法是以穿孔卡片或纸带为载体,经卡片或纸带输入机将数据和程序送入计算机,70年代初期出现的键控软盘数据输入方法(即数据输入站)已逐渐普及。将文字、数据的印刷(或手写)体直接读入计算机的光文字阅读机已经实现,语音图像直接输入计算机的技术也已取得一定成果。

在输出方面,最普通的是建立在击打技术基础上的各类打印机,但速度受到机械运动的限制。非击打技术的输出设备能显著提高速度,主要有将电压直接加在电介质涂覆纸张以取得静电潜像的静电式打印机;靠激光在光导鼓上扫描而形成静电潜像的激光静电式打印机;利用喷墨雾点带电荷后受电极偏转而形成文字的喷墨式打印机等。作为轻便输出手段,则以利用热敏纸张遇热变色原理的热敏打印机比较流行。人机对话输出多采用以显像管进行图像文字显示的终端设备。计算机的输入输出技术正向智能化发展。

2.计算机系统知识

计算机作为一个完整系统所运用的技术。主要有系统结构技术、系统管理技术、系统维护技术和系统应用技术等。

系统结构

它的作用是使计算机系统获得良好的解题效率和合理的性能价格比。电子器件的进步,微程序设计和固体工程技术的进步,虚拟存储器技术以及操作系统和程序语言等方面的发展,均对计算机系统结构技术产生重大影响。它已成为计算机硬件、固件、软件紧密结合,并涉及电气工程、微电子工程和计算机科学理论等多学科的技术。

系统管理

计算机系统管理技术其实就是我们生活中所说的操作系统,操作系的目的就是在于合理高效的调度计算机的软件和硬件资源,以提高机器的吞吐能力、解题时效,便利操作使用,改善系统的可靠性,降低算题费用等。

系统维护

计算机系统实现自动维护和诊断的技术。实施维护诊断自动化的主要软件为功能检查程序和自动诊断程序。功能检查程序针对计算机系统各种部件各自的全部微观功能,以严格的数据图形或动作重试进行考查测试并比较其结果的正误,确定部件工作是否正常。

系统应用

计算机系统的应用十分广泛。程序设计自动化和软件工程技术是与应用有普遍关系的两个方面。程序设计自动化,即用计算机自动设计程序,是使计算机得以推广的必要条件。早期的计算机靠人工以机器指令编写程序,费时费力,容易出错,阅读和调试修改均十分困难。

二、网络技术基础知识总结

网络技术基础知识也十分广泛,这里先给大家列列举一些必要的知识点,还有一部分我们在后面的学习会结合Python自学网的课程来和大家详细讲解。下面是后面的一些相关课程的链接。

1.网络传输协议

  1. socket网络编程
  2. TCP/IP协议
  3. UDP协议 
  4. HTTP协议
  5. ......

计算机网络学习的核心内容就是网络协议的学习。网络协议是为计算机网络中进行数据交换而建立的规则、标准或者说是约定的集合。因为不同用户的数据终端可能采取的字符集是不同的,两者需要进行通信,必须要在一定的标准上进行。包括上面列举出来的必讲课程,下面的内容我们将从底层向高层逐步讲解网络技术。

首先是网络层次的划分,只有了解这点才能形成正确的网络架构思维,网络层次在1978年以前还是比较混乱的,为了使不同计算机厂家生产的计算机能够相互通信,以便在更大的范围内建立计算机网络,国际标准化组织(ISO)在1978年提出了"开放系统互联参考模型",即著名的OSI/RM模型。它将计算机网络体系结构的通信协议划分为七层,自下而上依次为:物理层(Physics Layer)、数据链路层(Data Link Layer)、网络层(Network Layer)、传输层(Transport Layer)、会话层(Session Layer)、表示层(Presentation Layer)、应用层(Application Layer)。其中第四层完成数据传送服务,上面三层面向用户。除了标准的OSI七层模型以外,常见的网络层次划分还有TCP/IP四层协议以及TCP/IP五层协议,它们之间的对应关系如下图所示。

OSI七层网络模型

OSI七层网络模型

TCP/IP的四层

TCP,IP的四层

TCP/IP的五层模型

TCP,IP的五层模型

OSI七层模型是其他两种情况的基础,无论是四层模型还是五层模型都是有OSI模型演变而来的,所以我们来给大家解释一下OSI七层模型。

1.物理层

激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性。该层为上层协议提供了一个传输数据的可靠的物理媒体。简单的说,物理层确保原始的数据可在各种物理媒体上传输。物理层记住两个重要的设备名称,中继器(Repeater,也叫放大器)和集线器。

2.数据链路层

数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。为达到这一目的,数据链路必须具备一系列相应的功能,主要有:如何将数据组合成数据块,在数据链路层中称这种数据块为帧(frame),帧是数据链路层的传送单位;如何控制帧在物理信道上的传输,包括如何处理传输差错,如何调节发送速率以使与接收方相匹配;以及在两个网络实体之间提供数据链路通路的建立、维持和释放的管理。数据链路层在不可靠的物理介质上提供可靠的传输。该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。

有关数据链路层的重要知识点:

  1. 数据链路层为网络层提供可靠的数据传输;
  2. 基本数据单位为帧;
  3. 主要的协议:以太网协议;
  4. 两个重要设备名称:网桥和交换机。

3.网络层

网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、保持和终止等。它提供的服务使传输层不需要了解网络中的数据传输和交换技术。如果您想用尽量少的词来记住网络层,那就是"路径选择、路由及逻辑寻址"。

网络层中涉及众多的协议,其中包括最重要的协议,也是TCP/IP的核心协议——IP协议。IP协议非常简单,仅仅提供不可靠、无连接的传送服务。IP协议的主要功能有:无连接数据报传输、数据报路由选择和差错控制。与IP协议配套使用实现其功能的还有地址解析协议ARP、逆地址解析协议RARP、因特网报文协议ICMP、因特网组管理协议IGMP。具体的协议我们会在接下来的部分进行总结,有关网络层的重点为:

  1. 网络层负责对子网间的数据包进行路由选择。此外,网络层还可以实现拥塞控制、网际互连等功能;
  2. 基本数据单位为IP数据报;
  3. 包含的主要协议:IP协议(Internet Protocol,因特网互联协议);ICMP协议(Internet Control Message Protocol,因特网控制报文协议);ARP协议(Address Resolution Protocol,地址解析协议);RARP协议(Reverse Address Resolution Protocol,逆地址解析协议)。
  4. 重要的设备:路由器。

 4.传输层

第一个端到端,即主机到主机的层次。传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输。此外,传输层还要处理端到端的差错控制和流量控制问题。 传输层的任务是根据通信子网的特性,最佳的利用网络资源,为两个端系统的会话层之间,提供建立、维护和取消传输连接的功能,负责端到端的可靠数据传输。在这一层,信息传送的协议数据单元称为段或报文。 网络层只是根据网络地址将源结点发出的数据包传送到目的结点,而传输层则负责将数据可靠地传送到相应的端口。 有关网络层的重点:

  1. 传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输以及端到端的差错控制和流量控制问题;
  2. 包含的主要协议:TCP协议(Transmission Control Protocol,传输控制协议)、UDP协议(User Datagram Protocol,用户数据报协议);
  3. 重要设备:网关。

5.会话层

会话层管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。会话层还利用在数据中插入校验点来实现数据的同步。

6.表示层

表示层对上层数据或信息进行变换以保证一个主机应用层信息可以被另一个主机的应用程序理解。表示层的数据转换包括数据的加密、压缩、格式转换等。

7.应用层

为操作系统或网络应用程序提供访问网络服务的接口。

会话层、表示层和应用层重点:

  1. 数据传输基本单位为报文;
  2. 包含的主要协议:FTP(文件传送协议)、Telnet(远程登录协议)、DNS(域名解析协议)、SMTP(邮件传送协议),POP3协议(邮局协议),HTTP协议(Hyper Text Transfer Protocol)。

2.IP地址

IP协议是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。各个厂家生产的网络系统和设备,如以太网、分组交换网等,它们相互之间不能互通,不能互通的主要原因是因为它们所传送数据的基本单元(技术上称之为“帧”)的格式不同。

IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。例:点分十进IP地址(100.4.5.6),实际上是32位二进制数(01100100.00000100.00000101.00000110)。

参考文章:百度百科:https://baike.baidu.com/item/IP%E5%9C%B0%E5%9D%80/150859?fr=aladdin

3.DNS协议

DNS是域名系统(DomainNameSystem)的缩写,该系统用于命名组织到域层次结构中的计算机和网络服务,可以简单地理解为将URL转换为IP地址。域名是由圆点分开一串单词或缩写组成的,每一个域名都对应一个惟一的IP地址,在Internet上域名与IP地址之间是一一对应的,DNS就是进行域名解析的服务器。DNS命名用于Internet等TCP/IP网络中,通过用户友好的名称查找计算机和服务。

4.HTTP协议

超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。

http协议

HTTP 协议包括哪些请求?

  1. GET:请求读取由URL所标志的信息。
  2. POST:给服务器添加信息(如注释)。
  3. PUT:在给定的URL下存储一个文档。
  4. DELETE:删除给定的URL所标志的资源。

 HTTP中,POST与GET的区别

  1. Get是从服务器上获取数据,Post是向服务器传送数据。
  2. Get是把参数数据队列加到提交表单的Action属性所指向的URL中,值和表单内各个字段一一对应,在URL中可以看到。
  3. Get传送的数据量小,不能大于2KB;Post传送的数据量较大,一般被默认为不受限制。
  4. 根据HTTP规范,GET用于信息获取,而且应该是安全的和幂等的。

对于计算机技术与网络基础知识总结暂且讲解到这里,python自学网后面的课程会逐步深入的介绍相关知识点和应用技术。

回顶部