计算机网络
⑴计算机网络的基本组成元素有哪些?
答:计算机网络的基本组成元素有网络设备,连接网络设备的介质,传输信息,控制网络通信的规则,构建以及维护网络的工具和命令。总的来讲,也就是信源(用于发送信息的主体),信宿(接受消息并解释),信道(用于传输信息的通道)。
⑵信号和数据的关系?
答:数据是计算机或计算机系统传达意思的实体或者载体,容器,数据指一些基于发送发和接收方共同商定的规则或惯例而传输的有意义的信息,数据的形式有文本,图像,音频,视频。数据又可分为模拟数据和数字数据,二者的区别在于数据是否是连续的,模拟数据是在某个区间生产的连续值,例如声音和视频,数字数据是离散的,例如ASCII码。
信号是数据的传输方式,将数据传输到另一端,无论使用物理线路还是无线电波,数据都需要被转换成信号,信号是数据的电子或电磁编码方式,用于传输数据。模拟信号和数字信号的区别也是是否是连续变化。
通常情况下,数字信号传输数字数据,模拟信号传输模拟数据,但也可以使用模拟信号传输数字信号,数字信号传输模拟数据。比特流就是数字信号。
⑶比特率?以及换算关系?
答:比特率是用于表述数字信号,即每秒钟比特间隔的数目。比特间隔是指发送单个比特所需的时间。即比特率是一秒钟发送的比特数,通常以比特每秒(bps)表示。又因为bps单位有些小,所以有时候我们使用M bps, G bps。我们的平常看到的100Mps换算下来为: 100*1024 / 8 / 1024 = 12.5M/S..
⑷网络拓扑有哪些?
答:即网络设备之间的连接方式,网络拓扑结构有总线型,星型,网状型,环型。
总线型拓扑结构:使用一条电缆连接多个系统,在电缆的两端使用终结器,用来吸收电子信号以及清空电缆,防止数据包在电缆中来回反射。优点是搭建方便,成本低,缺点是一个时间段只能有一个主机在电缆中通信,其次故障排除不易。
星型拓扑结构:使用一个集线器或者交换机作为连接的中心,其他设备连接在中心中。优点是搭建容易,成本低,缺点是对中心设备的负载过重,同时如果中心设备出现故障,则会造成网络瘫痪。
网状型拓扑结构:在每个设备之间都有一个点对点的连接线路。优点是可靠性高,容错性好,每个设备独享设备的总带宽,缺点是搭建不容易,成本高。
环型拓扑结构:每个系统以点对点的方式与邻接的系统相连,网络中的所有系统将构成一个闭合的环。优点是所有设备进行平行通信,缺点是如果有一个系统节点出错,真个网络瘫痪。
⑸常用的传输介质有哪些?
答:双绞线,同轴电缆,电缆,光纤,无线电,微波和卫星通道。
⑹介绍分段和复用?以及为什么这样做?
答:当进行网络通信的时候,如果被传输的比特流过大,不进行分段的话,在进行传输时,它会占据信道,对于其他设备的传输会造成阻塞,而且还会有较大的延迟,其次,如果在传输的过程中出现故障,则需要重新传输整个信号。对信号进行分段,即将数据流分成小块的段,有以下优点:可以实现将不同的对话在网络上交错展开,即多路复用;分段可以提高网络通信的可靠性。复用就是在一条电缆上,传输多个数据,数据之间互不干扰,复用有可分为时分复用,频分复用,码分复用。
⑺RTT以及带宽和吞吐量的介绍?
答:RTT(Round Trip Time),在TCP协议中,当一台主机向连接发送一个报文段(数据包),它会开启一个计时器,如果计时器在规定的时间内没有收到该报文段数据的确认,则认为超时,则主机就会进行报文段的重传。将计时器开启到过期的时间称做计时器超时时间。往返时间就是该数据包被发送出去的时间到接受到该报文的确认的时刻。每个发送的报文段都有与其对应的RTT。
在数据传输中,数据带宽定义一个数据通道的最大容量,即最大允许的信号传输速率,eg:一个100Mbps的传输通道不能承受速率高于100Mbps的流量。吞吐量是给定时间周期内通过网络传输的实际数据量。
⑻通信网络的类型?
答:首先是为什么引入通信网络?当我们需要进行网络通信的时候,如果按照点对点的连接方式,对于过多的设备来说,这个是不现实的,注意这里和网络拓扑结构分开,因为两个问题是从不同的角度出发,通信网络指的是为了网络传输而引入的,而网络拓扑结构是物理上如何连接多个设备。因此我们需要一个通信网络,将每个通信设备连接到网络节点上。通信网络分为两个基本类别:广播网络和交换网络。
广播网络:一个节点会给所有节点发送信号,其他节点可以会收到信号。
交换网络:由一系列称为交换机的互连节点构成,在交换网络中,发送的信号不会发送给网络上所有的设备,而是经过交换机有选择的进行线路上的传输。交换网络又分为:电路交换网络,分组交换网络,消息交换网络。
⑼什么是协议?协议栈?
答:协议即一些特定的规则,网络协议即进行网络传输的规则,规范。协议栈即完整一套网络协议层次,他们协同工作,提供网络互联的能力。eg:TCP/IP,OSI。
⑽OSI模型和TCP/IP模型?
答:OSI模型又称Open System Interconnection,开放系统互联模型,它是由ISO,International Standards Organization,国际标准化组织提出的。它分为7层,主要任务是网络中的设备如何发送数据,接受数据,如何通讯,如何互连。七层如下:
应用层:为应用程序提供网络服务,eg:电子邮件,文件传输;
表示层:保证数据被接受,即规定数据的格式,数据的传输语法。例如ASCII,GIF,JPEG.;
会话层:建立,管理,终止应用之间的会话;
传输层:处理系统之间的数据传输问题,并进行差错检验,流量控制;
网络层:提供两个终端系统之间的连接和路径的选择;路由器工作在这一层;
数据链路层:提供数据的可靠传输,负责物理寻址,网络拓扑,流量控制,错误通知;
物理层:使用信号来传输比特。
OSI模型用来描述用户产生的数据,通过中间形式转化为数据流,并通过网络发送出去。当进行发送的时候,数据自上而下的通过OSI的协议栈,但数据被接受的时候,数据是自下而上的通过协议栈。在发送的时候,每经过一层,就会对数据进行封装,即添加协议头,除了物理层,在进行接受的时候,每层都会去掉相应的协议头,对数据进行解析。
TCP/IP模型即传输控制协议/网际互联协议,一般分为4层或5层,分为应用层,传输层, 互联网层,网络接口层。
应用层:定义了在TCP/IP应用协议以及与传输层交接的主机程序接口如何使用网络,它的协议有HTTP,TELENT,FTP,DNS...;
传输层:提供节点这件的通信会话管理,协议有TCP,UDP;
互联网层:将数据打包成IP数据报,它含有用于在主机和网络之间路由数据报所需要的源和目的地址的信息,协议有IP,ICMP,ARP,RARP;
网络接口层:定义数据 物理地通过网络的细节,协议有以太网,令牌环,FDDI,X.25。
OSI模型和TCP/IP模型的比较:
OSI是参考模型,TCP/IP是OSI模型的具体实现;
TCP/IP模型将表示层和会话层合并到应用层中,将数据链路层和物理层合并到网络接口层,
TCP/IP模型更简单,层数少。
⑾TCP,UDP介绍?
答:TCP,UPD是工作在传输层的网络协议,TCP,传输控制协议,是一个面向连接的安全可靠的协议,在进行连接需要进行三次握手,当数据传输完毕的时候,有需要进行四次挥手。
三次握手:
1.由客户端发送请求建立连接的报文,报文包括有客户端随机生成的seq序列号,并将报文的SYN标志位1,表示需要建立TCP连接;SYN=1,seq=x
2.服务端在接受到客户端的请求报文,回复客户端报文,随机生成一个seq序列号,并将SYN置为1,并产生一个ACK字段,ACK字段数值是在客户端发送过来的序列号的基础上加1,以便用来告诉客户端建立TCP请求已得到验证。SYN=1,seq=y,ack=x+1;
3.客户端接受到服务端的确认报文后,回复服务端报文,将SYN置为1,seq为上一次随机序列值加1,ACK为服务端的seq加1。SYN=1,seq=x+1,ack=y+1;
四次挥手:
1.客户端发送断开TCP连接的请求报文,其中报文包含一个随机生成的seq序列,并且报文中的FIN字段设置为1,表示要断开TCP;FIN=1,seq=x;
2.服务器接受到请求报文后,发送回复报文,随机生成一个seq序列,并且产生一个ACK字段,ACK字段是客户端发送过来的序列号的值加1,以便客户端收到信息后,知道自己的请求得到确认,并将FIN字段置为1。FIN=1,seq=y,ack=x+1;
3.服务端在回复完客户端的TCP断开请求后,不会马上断开TCP的连接,服务器会先保证在断开前将正在传输的数据传输完毕,一旦传输完毕,服务器会随机生成一个seq序列号,并将FIN置为1,发送给客户端。FIN=1,seq=z,ack=x+1;
4.客户端接受到服务器的断开请求后,会回复服务器的断开请求,包含随机生成的seq序列,FIN置为1,ACK为收到的seq加1。FIN=1,seq=h,ack=z+1。
UDP:用户数据报协议
是一个不可靠的无连接的协议,将数据报从一个计算机发送到另一个计算机,数据报中有目的地址,但是它不保证数据报安全到达,同时也不保证数据报的顺序,没有差错检验和流量控制。
⑿端口的作用?
答:端口是用来表示一个应用程序的,在网络上,使用IP地址来表示网络上的主机,使用端口在表示主机上的应用程序。端口的数字可以从0-65535,因为端口使用16b数字表示。
端口数字从0-1023是为特定服务保留的端口,例如:ftp端口为21,http端口为80,Telnet协议为23,简单邮件协议为25。
如有纰漏,敬请指出,谢谢。