1、计算机网络之面试常考 整顿一下计算机网络某些面试常考点,参照书籍:《计算机网络》第五版 谢希仁那本,但愿对人们有所协助 OSI,TCP/IP,五层合同体系构造,以及各层合同 OSI分层 (7层):物理层、数据链路层、网络层、传播层、会话层、表达层、应用层。 TCP/IP分层(4层):网络接口层、 网际层、运送层、 应用层。 五层合同 (5层):物理层、数据链路层、网络层、运送层、 应用层。 每一层合同如下: 物理层:RJ45、CL
2、OCK、IEEE802.3 (中继器,集线器,网关) 数据链路:PPP、FR、HDLC、VLAN、MAC (网桥,互换机) 网络层:IP、ICMP、ARP、RARP、OSPF、IPX、RIP、IGRP、(路由器) 传播层:TCP、UDP、SPX 会话层:NFS、SQL、NETBIOS、RPC 表达层:JPEG、MPEG、ASII 应用层:FTP、DNS、Telnet、SMTP、HTTP、WWW、NFS 每一层作用如下: 物理层:通过媒介传播比特,拟定机械及电气规范(比特Bit) 数据链路层:将比特组装成帧和点到点传递(帧Frame) 网络层:负责数据包从源到宿
3、传递和网际互连(包PackeT) 传播层:提供端到端可靠报文传递和错误恢复(段Segment) 会话层:建立、管理和终结会话(会话合同数据单元SPDU) 表达层:对数据进行翻译、加密和压缩(表达合同数据单元PPDU) 应用层:容许访问OSI环境手段(应用合同数据单元APDU) IP地址分类 A类地址:以0开头, 第一种字节范畴:0~127(1.0.0.0 - 126.255.255.255); B类地址:以10开头, 第一种字节范畴:128~191(128.0.0.0 - 191.255.255.255); C类地址:以110开头, 第一种字节范畴:1
4、92~223(192.0.0.0 - 223.255.255.255); 10.0.0.0—10.255.255.255, 172.16.0.0—172.31.255.255, 192.168.0.0—192.168.255.255。(Internet上保存地址用于内部) IP地址与子网掩码相与得到主机号 ARP是地址解析合同,简朴语言解释一下工作原理。 1:一方面,每个主机都会在自己ARP缓冲区中建立一种ARP列表,以表达IP地址和MAC地址之间相应关系。 2:当源主机要发送数据时,一方面检查ARP列表中与否有相应IP地址目主机MAC地址,如果有,则直接发送数据,如果没有,就
5、向本网段所有主机发送ARP数据包,该数据包涉及内容有:源主机IP地址,源主机MAC地址,目主机IP地址。 3:当本网络所有主机收到该ARP数据包时,一方面检查数据包中IP地址与否是自己IP地址,如果不是,则忽视该数据包,如果是,则一方面从数据包中取出源主机IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己MAC地址写入ARP响应包中,告诉源主机自己是它想要找MAC地址。 4:源主机收到ARP响应包后。将目主机IP和MAC地址写入ARP列表,并运用此信息发送数据。如果源主机始终没有收到ARP响应数据包,表达ARP查询失败。 广播发送ARP祈求,单播发送ARP响应。
6、 各种合同 ICMP合同:因特网控制报文合同。它是TCP/IP合同族一种子合同,用于在IP主机、路由器之间传递控制消息。 TFTP合同:是TCP/IP合同族中一种用来在客户机与服务器之间进行简朴文献传播合同,提供不复杂、开销不大文献传播服务。 HTTP合同:超文本传播合同,是一种属于应用层面向对象合同,由于其简捷、迅速方式,合用于分布式超媒体信息系统。 DHCP合同:动态主机配备合同,是一种让系统得以连接到网络上,并获取所需要配备参数手段。 NAT合同:网络地址转换属接入广域网(WAN)技术,是一种将私有(保存)地址转化为合法IP地址转换技术, DHCP合同:一种局域网网络合同,使
7、用UDP合同工作,用途:给内部网络或网络服务供应商自动分派IP地址,给顾客或者内部网络管理员作为对所有计算机作中央管理手段。 描述:RARP RARP是逆地址解析合同,作用是完毕硬件地址到IP地址映射,重要用于无盘工作站,由于给无盘工作站配备IP地址不能保存。工作流程:在网络中配备一台RARP服务器,里面保存着IP地址和MAC地址映射关系,当无盘工作站启动后,就封装一种RARP数据包,里面有其MAC地址,然后广播到网络上去,当服务器收到祈求包后,就查找相应MAC地址IP地址装入响应报文中发回给祈求者。由于需要广播祈求报文,因而RARP只能用于具备广播能力网络。 TCP三次握手
8、和四次挥手全过程 三次握手: 第一次握手:客户端发送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连接一旦建立,在通信双方中
9、任何一方积极关闭连接之前,TCP 连接都将被始终保持下去。 四次握手 与建立连接“三次握手”类似,断开一种TCP连接则需要“四次握手”。 第一次挥手:积极关闭方发送一种FIN,用来关闭积极方到被动关闭方数据传送,也就是积极关闭方告诉被动关闭方:我已经不 会再给你发数据了(固然,在fin包之前发送出去数据,如果没有收到相应ack确认报文,积极关闭方依然会重发这些数据),但是,此时积极关闭方还可 以接受数据。 第二次挥手:被动关闭方收到FIN包后,发送一种ACK给对方,确认序号为收到序号+1(与SYN相似,一种FIN占用一种序号)。 第三次挥手:被动关闭方发送一种FIN,用来关闭被动关闭
10、方到积极关闭方数据传送,也就是告诉积极关闭方,我数据也发送完了,不会再给你发数据了。 第四次挥手:积极关闭方收到FIN后,发送一种ACK给被动关闭方,确认序号为收到序号+1,至此,完毕四次挥手。 在浏览器中输入www.百度.com后执行所有过程 1、客户端浏览器通过DNS解析到www.百度.comIP地址220.181.27.48,通过这个IP地址找到客户端到服务器途径。客户端浏览器发起一种HTTP会话到220.161.27.48,然后通过TCP进行封装数据包,输入到网络层。 2、在客户端传播层,把HTTP会话祈求提成报文段,添加源和目端口,如服务器使用80端口监听
11、客户端祈求,客户端由系统随机选取一种端口如5000,与服务器进行互换,服务器把相应祈求返回给客户端5000端口。然后使用IP层IP地址查找目端。 3、客户端网络层不用关系应用层或者传播层东西,重要做是通过查找路由表拟定如何到达服务器,期间也许通过各种路由器,这些都是由路由器来完毕工作,我不作过多描述,无非就是通过查找路由表决定通过那个途径到达服务器。 4、客户端链路层,包通过链路层发送到路由器,通过邻居合同查找给定IP地址MAC地址,然后发送ARP祈求查找目地址,如果得到回应后就可以使用ARP祈求应答互换IP数据包当前就可以传播了,然后发送IP数据包到达服务器地址。 TCP
12、和UDP区别? TCP提供面向连接、可靠数据流传播,而UDP提供是非面向连接、不可靠数据流传播。 TCP传播单位称为TCP报文段,UDP传播单位称为顾客数据报。 TCP注重数据安全性,UDP数据传播快,由于不需要连接等待,少了许多操作,但是其安全性却普通。 TCP相应合同和UDP相应合同 TCP相应合同: (1) FTP:定义了文献传播合同,使用21端口。 (2) Telnet:一种用于远程登陆端口,使用23端口,顾客可以以自己身份远程连接到计算机上,可提供基于DOS模式下通信服务。 (3) SMTP:邮件传送合同,用于发送邮件。服务器开放是25号端口。 (4) POP
13、3:它是和SMTP相应,POP3用于接受邮件。POP3合同所用是110端口。 (5)HTTP:是从Web服务器传播超文本到本地浏览器传送合同。 UDP相应合同: (1) DNS:用于域名解析服务,将域名地址转换为IP地址。DNS用是53号端口。 (2) SNMP:简朴网络管理合同,使用161号端口,是用来管理网络设备。由于网络设备诸多,无连接服务就体现出其优势。 (3) TFTP(Trival File Transfer Protocal),简朴文献传播合同,该合同在熟知端口69上使用UDP服务。 DNS域名系统,简朴描述其工作原理。 当DNS客户机需要在程序中使用名称时,
14、它会查询DNS服务器来解析该名称。客户机发送每条查询信息涉及三条信息:涉及:指定DNS域名,指定查询类型,DNS域名指定类别。基于UDP服务,端口53. 该应用普通不直接为顾客使用,而是为其她应用服务,如HTTP,SMTP等在其中需要完毕主机名到IP地址转换。 面向连接和非面向连接服务特点是什么? 面向连接服务,通信双方在进行通信之前,要先在双方建立起一种完整可以彼此沟通通道,在通信过程中,整个连接状况始终可以被实时地监控和管理。 非面向连接服务,不需要预先建立一种联系两个通信节点连接,需要通信时候,发送节点就可以往网络上发送信息,让信息自主地在网络上去传,普通在传播
15、过程中不再加以监控。 TCP三次握手过程?为什么会采用三次握手,若采用二次握手可以吗? 答:建立连接过程是运用客户服务器模式,假设主机A为客户端,主机B为服务器端。 (1)TCP三次握手过程:主机A向B发送连接祈求;主机B对收到主机A报文段进行确认;主机A再次对主机B确认进行确认。 (2)采用三次握手是为了防止失效连接祈求报文段突然又传送到主机B,因而产生错误。失效连接祈求报文段是指:主机A发出连接祈求没有收到主机B确认,于是通过一段时间后,主机A又重新向主机B发送连接祈求,且建立成功,顺序完毕数据传播。考虑这样一种特殊状况,主机A第一次发送连接祈求并没有丢失,而是由于网络节点导
16、致延迟达到主机B,主机B觉得是主机A又发起新连接,于是主机B批准连接,并向主机A发回确认,但是此时主机A主线不会理睬,主机B就始终在等待主机A发送数据,导致主机B资源挥霍。 (3)采用两次握手不行,因素就是上面说实效连接祈求特殊状况。 端口及相应服务? 服务 端标语 服务 端标语 FTP 21 SSH 22 telnet 23 SMTP 25 Domain(域名服务器) 53 HTTP 80 POP3 110 NTP(网络时间合同) 123 MySQL数据库服务 3306 Shell或 cmd 514 POP-2 109
17、 SQL Server 1433 IP数据包格式 IP数据报由首部 和数据 两某些构成。首部由固定某些和可选某些 构成。首部固定某些有20字节。可选某些长度变化范畴为1——40字节。固定某些字段: TCP数据报格式? 源端口 目端口 序号 确认序号 数据偏移 保存 URG ACK PSH RST SYN FIN 窗口 检查和 紧急指针 选项和填充 数据 字段名 字节(Byte) 字段名 字节(Byte) 源端口 2 目端口 2 序号 4 确认号 4,是盼望收到对方下一种报文段数据第一种字节序号 数据偏移
18、 4bit 指出TCP报文段数据起始处距离TCP报文段起始有多远 保存 6bit 紧急比特URG 确认比特ACK 只有当ACK=1时,确认号字段才有效 推送比特PSH 复位比特RST 同步比特SYN 终结比特FIN 窗口 2 检查和 2 (涉及首部和数据两某些,同步还要加12字节伪首部进行校验和计算) 选项 长度可变(范畴1——40) 一种TCP报文段分为首部和数据两某些。首部由固定某些和选项某些构成,固定某些是20字节。TCP首部最大长度为60。首部固定某些字段: TCP12字节伪首部: 源IP地址(4
19、 目IP地址(4) 0 (1) 6(1) 代表这是TCP,IP合同中提到过 TCP长度(2) TCP数据报格式? 顾客数据报UDP由首部和数据某些构成。首部只有8个字节,由4个字段构成,每个字段都是两个字节。 字段名 字节 字段名 字节 源端口 2 目端口 2 长度 2 检查和 2 (检查首部和数据,加12字节伪首部) UDP12字节伪首部: 源IP地址(4) 目IP地址(4) 0 (1) 17(1) 代表这是UDP UDP长度(2) 以太网MAC帧格式? 前导码 前定界符 目地址 源目地址 长度
20、字段 数据字段 校验字段 7B 1B 6B 6B 2B 46-1500 4B 理解互换机、路由器、网关概念,并懂得各自用途 1)互换机 在计算机网络系统中,互换机是针对共享工作模式弱点而推出。互换机拥有一条高带宽背部总线和内部互换矩阵。互换机所有端口都挂接在这条背 部总线上,当控制电路收到数据包后来,解决端口会查找内存中地址对照表以拟定目MAC(网卡硬件地址)NIC(网卡)挂接在哪个端口上,通过内部 互换矩阵迅速将数据包传送到目端口。目MAC若不存在,互换机才广播到所有端口,接受端口回应后互换机会“学习”新地址,并把它添加入内部地址表 中。 互换机工作于OS
21、I参照模型第二层,即数据链路层。互换机内部CPU会在每个端口成功连接时,通过ARP合同学习它MAC地址,保存成一张 ARP表。在此后通讯中,发往该MAC地址数据包将仅送往其相应端口,而不是所有端口。因而,互换机可用于划分数据链路层广播,即冲突域;但它不 能划分网络层广播,即广播域。 互换机被广泛应用于二层网络互换,俗称“二层互换机”。 互换机种类有:二层互换机、三层互换机、四层互换机、七层互换机分别工作在OSI七层模型中第二层、第三层、第四层盒第七层,并因而而得名。 2)路由器 路由器(Router)是一种计算机网络设备,提供了路由与转送两种重要机制,可以决定数据包从来源端到目端所通过
22、 路由途径(host到host之间传播途径),这个过程称为路由;将路由器输入端数据包移送至恰当路由器输出端(在路由器内部进行),这称为转 送。路由工作在OSI模型第三层——即网络层,例如网际合同。 路由器一种作用是连通不同网络,另一种作用是选取信息传送线路。 路由器与互换器差别,路由器是属于OSI第三层产品,互换器是OSI第二层产品(这里特指二层互换机)。 3)网关 网关(Gateway),网关顾名思义就是连接两个网络设备,区别于路由器(由于历史因素,许多关于TCP/IP 文献曾经把网络层使用路由器(Router)称为网关,在今天诸多局域网采用都是路由来接入网络,因而当前普通指网关就是路
23、由器IP),经常在家 庭中或者小型公司网络中使用,用于连接局域网和Internet。 网关也经常指把一种合同转成另一种合同设备,例如语音网关。 在老式TCP/IP术语中,网络设备只提成两种,一种为网关(gateway),另一种为主机(host)。网关能在网络间转递数据包,但主机不能 转送数据包。在主机(又称终端系统,end system)中,数据包需通过TCP/IP四层合同解决,但是在网关(又称中介系 统,intermediate system)只需要到达网际层(Internet layer),决定途径之后就可以转送。在当时,网关 (gateway)与路由器(router)还没有区别。 在
24、当代网络术语中,网关(gateway)与路由器(router)定义不同。网关(gateway)能在不同合同间移动数据,而路由器(router)是在不同网络间移动数据,相称于老式所说IP网关(IP gateway)。 网关是连接两个网络设备,对于语音网关来说,她可以连接PSTN网络和以太网,这就相称于VOIP,把不同电话中模仿信号通过网关而转换成数字信号,并且加入合同再去传播。在到了接受端时候再通过网关还原成模仿电话信号,最后才干在电话机上听到。 对于以太网中网关只能转发三层以上数据包,这一点和路由是同样。而不同是网关中并没有路由表,她只能按照预先设定不同网段来进行转发。网关最重要一点就是端口映射,子网内顾客在外网看来只是外网IP地址相应着不同端口,这样看来就会保护子网内顾客。






