计算机网络

来源:互联网 发布:6city类似软件 编辑:程序博客网 时间:2024/05/16 06:44

牛客网-精华专题-网络基础常考面试题
一.分层
OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
TCP/IP分层(4层):链路层、网络层、传输层、 应用层。
五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。

每一层的协议如下:
1.物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器)
2.数据链路:PPP、FR、HDLC、VLAN、MAC (网桥,交换机)
3.网络层:IP、ICMP、ARP、RARP、OSPF、IPX、RIP、IGRP、 (路由器)
4.传输层:TCP、UDP、SPX
5.会话层:NFS、SQL、NETBIOS、RPC
6.表示层:JPEG、MPEG、ASII
7.应用层:FTP、DNS、Telnet、SMTP、HTTP、WWW、NFS

IP协议的作用:把各种数据包准确无误的传递给对方,其中两个重要的条件是IP地址,和MAC地址(Media Access Control Address)。由于IP地址是稀有资源,不可能每个人都拥有一个IP地址,所以我们通常的IP地址是路由器给我们生成的IP地址,路由器里面会记录我们的MAC地址。

TCP协议:如果说IP协议是找到对方的详细地址。那么TCP协议就是把安全的把东西带给对方。各有分工,互不冲突。
为了确保信息能够确保准确无误的到达,TCP采用了著名的三次握手策略(three-way handshaking).

DNS:DNS(Domain names System) 和HTTP协议一样是处于应用层的服务,提供域名到IP地址之间的解析服务。

二.IP地址的分类
A类地址:以0开头, 第一个字节范围:1~127(1.0.0.0 - 127.255.255.255);
B类地址:以10开头, 第一个字节范围:128~191(128.0.0.0 - 191.255.255.255);
C类地址:以110开头, 第一个字节范围:192~223(192.0.0.0 - 223.255.255.255);
D类地址:以1110开头,第一个字节范围:224~239(224.0.0.0 - 239.255.255.255);(作为多播使用)
E类地址:保留

其中A、B、C是基本类,D、E类作为多播和保留使用。
以下是留用的内部私有地址:
A类 10.0.0.0–10.255.255.255
B类 172.16.0.0–172.31.255.255
C类 192.168.0.0–192.168.255.255
IP地址与子网掩码相与得到网络号:
ip : 192.168.2.110
&
Submask: 255.255.255.0


网络号 :192.168.2 .0
注:
主机号,全为0的是网络号(例如:192.168.2.0),主机号全为1的为广播地址(255.255.255.255)

三.ARP是地址解析协议,简单语言解释一下工作原理。
ARP是解决统一局域网上的主机路由器的IP地址和硬件地址的映射问题。
每一个主机都设有一个ARP高速缓存,里面有本局网上的各主机和路由器的IP地址到硬件地址的映射表。
当主机A要向本局域网上的某个主机B的IP地址发送IP数据报时,就先在其ARP高速缓存中查看有无主机B的IP地址,如果有,就在ARP高速缓存器中查找出其对应的硬件地址,再把这个硬件地址写入mac帧中,然后通过局域网把mac帧发往此硬件地址。
否则主机A就自动运行ARP,然后按以下步骤找出主机B的硬件地址:
(1)ARP进程在本局网上广播发发送一个ARP请求分组。
(2)在本局域网上的所有主机上运行的ARP进程都收到此ARP请求分组。
(3)主机B的IP地址与ARP请求分组中要查询的IP地址一致就收下这个ARP请求分组,并向主机A发送ARP响应分组,并在这个ARP响应分组中写如自己的硬件地址。
(4)主机A收到主机B的ARP响应分组后,就在其ARP高速缓存中写入主机B的IP地址到硬件地址的映射。

四. 各种协议
ICMP协议: 因特网控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。
TFTP协议: 是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。
HTTP协议: 超文本传输协议,是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。
NAT协议:网络地址转换属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,
DHCP协议:动态主机配置协议,是一种让系统得以连接到网络上,并获取所需要的配置参数手段,使用UDP协议工作。具体用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段。

五.RARP协议
RARP是逆地址解析协议,作用是完成硬件地址到IP地址的映射,主要用于无盘工作站,因为给无盘工作站配置的IP地址不能保存。工作流程:在网络中配置一台RARP服务器,里面保存着IP地址和MAC地址的映射关系,当无盘工作站启动后,就封装一个RARP数据包,里面有其MAC地址,然后广播到网络上去,当服务器收到请求包后,就查找对应的MAC地址的IP地址装入响应报文中发回给请求者。因为需要广播请求报文,因此RARP只能用于具有广播能力的网络。

六.TCP三次握手和四次挥手的全过程
三次握手:
第一次握手:客户端发送syn包(syn=x)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。

四次挥手
与建立连接的“三次握手”类似,断开一个TCP连接则需要“四次握手”。

  1. 客户端发送FIN包,请求断开连接,客户端进入FIN_WAIT1状态
  2. 服务端收到FIN包后返回应答,进入CLOSE_WAIT状态
  3. 客户端收到FIN的应答后进入FIN_WAIT2状态
  4. 服务端发送FIN请求包,进入LAST_ACK状态
  5. 客户端收到FIN请求包后,发送ACK应答进入TIME_WAIT状态
  6. 服务器收到ACK应答后,进入close状态。

七.在浏览器中输入www.baidu.com后执行的全部过程
事件顺序
(1) 浏览器获取输入的域名www.baidu.com
(2) 浏览器向DNS请求解析www.baidu.com的IP地址
(3) 域名系统DNS解析出百度服务器的IP地址
(4) 浏览器与该服务器建立TCP连接(默认端口号80)
(5) 浏览器发出HTTP请求,请求百度首页
(6) 服务器通过HTTP响应把首页文件发送给浏览器
(7) TCP连接释放
(8) 浏览器将首页文件进行解析,并将Web页显示给用户。

涉及到的协议
(1) 应用层:HTTP(WWW访问协议),DNS(域名解析服务)
(2) 传输层:TCP(为HTTP提供可靠的数据传输),UDP(DNS使用UDP传输)
(3) 网络层:IP(IP数据数据包传输和路由选择),ICMP(提供网络传输过程中的差错检测),ARP(将本机的默认网关IP地址映射成物理MAC地址)

九.DNS域名系统,工作原理。
当一个应用进程需要把某个域名解析为IP地址时,该应用进程就会调用解析程序,并成为一个DNS用户。
把待解析的域名放在DNS请求报文中,以UDP数据报的形式发送给本地域名服务器。
本地域名服务器查找到相应域名的IP地址后,就将该域名的IP地址信息放入应答报文中返回给客户进程。
如果本地域名服务器没有直接查找到对应的IP地址,则向根域名服务器发出迭代查询,再将查询到的IP地址信息回传给客户程序。

十.TCP的三次握手过程?为什么会采用三次握手,若采用二次握手可以吗?
答:建立连接的过程是利用客户服务器模式,假设主机A为客户端,主机B为服务器端。
(1)TCP的三次握手过程:主机A向B发送连接请求;主机B对收到的主机A的报文段进行确认;主机A再次对主机B的确认进行确认。

第一次握手,发送SYN报文,传达信息:“你好,我想建立连接”;
第二次握手,回传SYN+ACK报文,传达信息:“好的,可以建立链接”;
第三次握手,回传ACK报文,传到信息:“好的,我知道了,那我们连接”。然后就建立连接了。在发送报文之前各方都要确认可以进行连接。

之所以采取三次握手机制,不过是为了信息传输的可靠性,如果其中某个握手失败,这个过程将会重复,来确保其可靠性。
如果采取两次握手,相当于第二次握手结束便建立连接,如果发送SYN的一方不想连接了,也不会有反馈,另一方却一直在等待,浪费了时间。
当然可以采取4次甚至N次握手,但是有必要吗?建立连接的时间太长,效果也会大打折扣。

十一.了解交换机、路由器、网关的概念,并知道各自的用途
交换机(Switch)意为“开关”是一种用于电(光)信号转发的网络设备。
用途:人工交换 电路程控 集线比较
路由器:路由器就是连接两个以上个别网络的设备。
用途:连通不同的网络 信息传输
网关:又称网间连接器、协议转换器。默认网关在网络层上以实现网络互连,是最复杂的网 络互连设备.
用途:用于两个高层协议不同的网络互连。

原创粉丝点击