计算机网络问题


1. 电路交换与分组交换的区别?优劣对比。

电路交换:电路交换在通信之前要在通信双方之间建立一条被被双方独占的物理通路。

优点: 时延小,实时性强,不存在失序,交换设备及控制较为简单
缺点:连接建立的时间很长,信道被独占,信道利用率低。

分组交换:分组交换采用存储转发方式,将一个长报文分割为若干个较短的分组,然后把这些分组(携带源地址,目的地址和编号信息)逐个的发送出去。

优点: 无建立连接时延,故障之后可以重选路径,不独占信道可提高信道吕勇率,分组较短出错几率小。
缺点:转发时延,可能存在拥塞,适用于数字信号,可能出现分组失序需要在接收端进行排序。

2. OSI有哪几层

物理层,数据链路层,网络层,传输层,会话层,表示层,应用层

3. TCP/IP有哪几层

应用层:DHCP(主机配置),DNS(域名系统),TELNET,FTP,HTTP,SMTP(邮件),SNMP(网络管理)

DHCP:主机需要知道自己的IP地址,子网掩码,路由器的IP地址,名字服务器的IP地址。主机通过UDP向DHCP服务器请求这些信息。
DNS:解析程序把域名发给服务器递归找到IP地址。

运输层:进程到进程的通信,封装解封装,复用和分用TCP,UDP,SCTP

UDP是面向无连接的协议,没有流量控制,差错控制和拥塞控制,提供校验和检错,错误则悄悄丢弃。
TCP是面向流的协议,以字节为拥塞和流量的控制单位

网络层:IP,ICMP,ARP

接收到IP分组之后,先分析IP的地址属于哪一类,然后用对应的子网掩码去解析网络地址,找到下一跳的路由器,并且通过ARP找到下一跳路由器的物理地址。

物理与数据链路层:局域网技术,以太网MAC,原来还存在LLC

4. 硬件(MAC)地址的概念及作用。

标识主机的具体物理地址

5. ARP协议的用途 及算法、在哪一层上会使用arp

ARP是在网络层上通过IP协议知道下一跳路由或主机的IP地址后,通过广播ARP报文寻找下一跳的物理地址的算法。

6. CRC冗余校验算法,反码和检验算法。

7. 如何实现透明传输。

8. 知道各个层使用的是哪个数据交换设备。(交换机、路由器、网关)

9. 路由表的内容。

网络ID:就是目标地址的网络ID;子网掩码 (用来判断 IP 所属网络);
下一跳地址/接口(Next hop / interface):就是数据在发送到目标地址的旅途中下一站的地址。
花费(Cost):就是数据发送过程中通过路径所需要的花费。 路由的服务质量;路由中需要过滤的出/入连接列表

10. 分组转发算法。

单播路由算法RIP(距离矢量),OSPF(链路状态),BGP

11. IP报文的格式,格式的各个字段的含义要理解。

首部和数据。首部包括版本号,长度,服务类型,

12.MTU的概念,啥叫路径MTU? MTU发现机制,TraceRoute(了解)。

原因:不同的底层都有自己的帧格式,有不同的数据字段最大长度(MTU),比如以太网MTU为1500字节,FDDI为4352字节,PPP为296字节;IP的最大长度为65535字节,当要封装成帧时必须根据要转发的具体物理网络进行分片(fragmentation),每个分片都要包含HEADER部分。

13.RIP协议的概念及算法。

14.ICMP协议的主要功能。

存在原因:IP协议没有差错报告或差错纠正机制。IP协议缺少主机和管理查询的机制。
差错报文:ICMP总是把差错报文报告给最初的数据源。五种差错:重点不可达,源点抑制,超时,参数问题,改变路由。
查询报文:能对某些网络问题进行诊断:回送请求和应答(确定IP级能否彼此通信,还可以用ping来检查某一个主机的可达性),时间戳请求和应答

15.组播和广播的概念,IGMP的用途。(环回地址、广播地址)

16.Ping协议的实现原理,ping 命令格式。

ping命令是用来查看网络上另一个主机系统的网络连接是否正常的一个工具。ping命令的工作原理是:向网络上的另一个主机系统发送ICMP报文,如果指定系统得到了报文,它将把报文一模一样地传回给发送者,这有点象潜水艇声纳系统中使用的发声装置。

17.子网划分的概念,子网掩码。
18.IP地址的分类,如何划分的,及会计算各类地址支持的主机数。
19.DNS的概念,用途,DNS查询的实现算法。
20.TCP与UDP的概念,相互的区别及优劣。
21.UDP报文的格式,字段的意义。

最长为65535字节,包括首部和数据,首部8字节包括源端口号,目的端口号,总长度和校验和

22.TCP 报文的格式,字段的意义。

首部20-60字节,包括源端口号,目的端口号(16bit),序号,确认号,控制帧,窗口尺寸,校验和,紧急指针。

23.TCP通过哪些措施,保证传输可靠?

TCP的编号系统,按字节编号,提供按字节的差错控制,返回确认号
TCP的流量控制和拥塞控制

24.三次握手,四次断开过程。

首先,服务器的运输层要被动打开。第一次握手:客户进程主动打开运输层,发送第一个报文段SYN和序列号(初始序列号);第二次握手:服务器返回SYN(用于同步之后的序列号),ACK确认收到,返回客户端要使用的窗口大小;第三次握手:客户返回ACK和确认号,并且指定服务器窗口大小。

四次关闭的过程是:客户端发送ACK和FIN,
服务器返回ACK进入半关闭状态,最后服务器返回ACK+FIN,客户返回ACK

25.TIME_WAIT状态的概念及意义。

是客户端收到第二个FIN,然后已经发送ACK等待,超时就关闭。


26.滑动窗口协议 与停止等待协议的区别。
27.TCP的流量控制和拥塞控制实现原理(会画拥塞控制的典型图)。
28.TCP的快速重传与快速恢复算法。
29.TFTP 与 FTP的区别。
30.阻塞方式和非阻塞方式,阻塞connect与非阻塞connect。(比较难,有兴趣可以了解)
31.HTTP基本格式。(java程序员必须掌握)

推荐阅读更多精彩内容