1. OSI,TCP/IP,五层协议的体系结构
OSI分层(7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
TCP/IP分层(4层):网络接口层、网际层、运输层、应用层。
五层协议(5层):物理层、数据链路层、网络层、运输层、应用层。
每一层的作用如下:
物理层:该层为上层协议提供了一个传输数据的物理媒体。
数据链路层:数据链路层在物理介质上提供可靠的传输。该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。
网络层:网络层负责对子网间的数据包进行路由选择。此外,网络层还可以实现拥塞控制、网际互连等功能。
传输层:传输层负责提供端到端的、可靠的或不可靠的传输。此外,传输层还要处理端到端的差错控制和流量控制问题。
会话层:会话层管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。
表示层:表示层对上层的数据变换以保证一个主机应用层信息可以被另一个主机的应用程序理解。表示层的数据转换包括数据的加密、压缩、格式转换等
应用层:为操作系统或应用程序提供访问网络服务的接口。
Q:TCP的三次握手和四次挥手
Q:TCP和UDP的区别
1、TCP面向连接;UDP是无连接的,即发送数据之前不需要建立连接
2、TCP提供可靠的服务,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付
3、UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高要求的通信。
4.每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信
5、TCP对系统资源要求较多,UDP对系统资源要求较少。
Q:拥塞控制和流量控制都是什么,两者的区别?
流量控制是端到端的控制,例如A通过网络给B发数据,A发送的太快导致B没法接收(B缓冲窗口过小或者处理过慢),这时候的控制就是流量控制,原理是通过滑动窗口的大小改变来实现。
拥塞控制是A与B之间的网络发生堵塞导致传输过慢或者丢包,来不及传输。拥塞控制能够防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不至于过载。
Q:访问一个网页的过程
1、OSI(七层计算机网络模型)、TCP\IP(四层计算机网络模型)、五层计算机网路模型相关知识点?
OSI:指开放系统互联,是七层计算机网络模型,各层从下到上依次为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
TCP/IP:指传输控制协议/因特网互联协议,是四层计算机网络模型,各层从下到上依次为:网络接口层、网际层、传输层、应用层。
五层计算机网模型:是结合OSI七层 模型和TCP/IP四层模型的产物,各层从下到上依次为:物理层、数据链路层、网络层、传输层、应用层。
其中路由器工作在网络层,交换机工作在数据链路层、集线器和网卡工作在物理层。
2、简述ARP地址解析协议的工作过程?
(1)每一个主机都会在自己的ARP缓冲区中建立一个ARP列表,表示IP地址和MAC地址之间的关系。
(2)当源主机要发送数据时先检查自己的ARP列表中是否有相应的IP地址的MAC地址,如果有直接发送,如果没有则向该网段的所有主机发送数据报,该数据报包含:源主机的IP地址、源主机的MAC地址、目的主机的IP地址
(3)该网段中的所有主机在接收到源主机发送的数据报时,先检查数据报中的IP地址是否是自己的,如果不是则忽略,如果是则把源主机的IP地址和MAC地址存入到自己的ARP列表中,然后把自己的MAC地址写入响应报文中,告诉源主机自己是它要找的目的主机。
(4)源主机接收到ARP响应报后将目的主机的IP地址和MAC地址存入自己的ARP列表中,然后进行数据的发送。如果源主机一直没有收到相应数据报,则表示ARP查询失败。
3、TCP和UDP、IP协议的区别?
TCP:是工作在传输层的协议,提供面向连接的,可靠的数据流传输服务,并且TCP注重数据的安全性
UDP:是工作在传输层的协议,提供非面向连接的,不可靠的数据流传输服务,UDP不需要连接等待,所以他的传输速度很快,但是其安全性却一般
IP:是工作在网络层的协议,是为了实现相互连接的计算机进行通信而设计的协议。
4、面向连接和非面向连接各自的特点?
面向连接:指当通信双方在进行通信之前要先建立一个能够彼此沟通的通路,并在通信的过程中,该通路的连接情况一直被实时监控和管理。
非面向连接:指通信双方在进行通信是不需要实现建立连接,而是在需要通信时,发送节点直接往网络上发送信息,在信息传输的过程中不进行监控。
5、ICMP协议、TFTP协议、HTTP协议?
ICMP:指因特网控制报文协议,是TCP/IP的一个子协议族,用于在IP主机和路由器之间传输控制信息。它包括差错报告报文和询问报文。
TFTP:指文件传输协议,也是TCP/IP 的一个子协议族,用于在客户机和服务器之间传输文件。
HTTP:指超文本传输协议,是一个属于应用层面向对象的协议。
6、交换机和路由器的差别、实现原理以及在哪个层次上实现的?
交换机:用于局域网,利用主机的MAC地址进行传输数据,不需要关心IP地址,工作在数据链路层。
路由器:根据IP地址进行路由,找到下一跳的路由器,工作在网络层
7、TCP的三次握手过程?为什么要采用三次握手?
建立连接的过程是利用客户机/服务器模式,假设A是客户端,B是服务器端
(1)三次握手的过程:主机A向主机B发送连接请求,主机B收到主机A的请求并向主机A发送确认信息,主机A再次确认主机B发送过来的确认信息。
(2)作用:为了防止失效的连接请求报文又再次发送给主机B而产生错误。
失效的连接请求报文指主机A发送给主机B的报文信息由于网络等问题而延迟到达主机B,主机A等不到主机B的确认信息然后再次向主机B发送请求报文。考虑到这样一种情况,第一次延迟到达的报文段突然到达了主机B,此时主机B认为是主机A再一次建立了请求连接从而发送确认信息,但是此时主机A却不会理会主机B的确认信息,导致主机B一直等待主机A发送信息,浪费主机B的资源。
8、帧界定的方法?
帧界定就是确定帧的界限,方法有:字节计数法、字符填充法、零比特填充法。
9、实现可靠传输的协议?
(1)停止等待协议:发送窗口和接收窗口均为1,每发送完一帧就停止发送,直到收到确认信息后再发送下一帧。所需要的缓冲空间最小,但是信道的利用率很低。
(2)连续ARQ协议:发送窗口大于1,接收窗口等于1,允许发送方连续发送信息帧,但是一旦某一帧出现错误,则该帧之后的n帧都要重新发送。虽然提高了信道的利用率,但是允许发送的帧越多可能要退回来重新发送的帧也就越多。
(3)选择重传ARQ协议:发送窗口和接收窗口都大于1,发送方仅仅重新传输出现错误的帧,而不必将出错误的帧之后的所有帧都重传,减少了开销。
10、数据链路层互联的设备?
网桥:互联两个采用不同数据链路层协议,不同传输介质,不同传输速率的网络。
交换机:是在数据链路层实现互联的存储转发设备。
11、网络接口卡(网卡)的功能?
(1)缓存数据
(2)进行串并联的转换
(3)对计算机的操作系统安装设备驱动程序
(4)实现以太网协议
12、CSMA/CD(载波监听多点接入/碰撞检测)工作过程?
每个设备在发送数据之前首先要检查一下总线上是否有其他设备正在使用总线,如果有的话先不发送数据,避免产生碰撞。设备在发送数据的同时对总线做检测,如果检测出冲突则立刻停止发送数据,发送一段干扰信号来告诉其他设备总线现在有冲突,等待一段时间后再进行发送
其工作过程简单总结为:发前先检测,空闲即发送,边发边监听,冲突则退避
13、TTL是指什么?有什么作用?
TTL指生存时间,他表示数据报在网络中的时间,每经过一个路由TTL的值就减1,如果TTL的值为0时,则将该数据报丢弃。假如两个路由器之间形成了环路,如果没有TTL的话,那么数据报可能会一直循环下去,而有了TTL,当TTL的值为0时就会丢弃该数据报,不至于出现死循环。
14、路由表的作用以及工作过程?
路由表决定了一个数据报怎样从一个子网传送到另一个子网中,即从一个网卡接收的数据报传送到哪一个网卡上去的问题。当路由器从一个网卡接收一个数据报时,用该数据报中的目标IP地址与路由表中每一行的子网掩码做与运算(&),得到的结果与该行的目标网络号对比,如果相同则把该路由器作为备用路由器。
15. NAT协议、DHCP协议、DNS协议的作用
NAT协议:网络地址转换,属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。
DHCP协议:动态主机设置协议是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:1,内部网络或网络服务供应商自动分配IP地址给用户。内部网络管理员对所有计算机地址IP作中央管理。
DNS协议:DNS 是域名系统 (Domain Name System) 的缩写,是因特网的一项核心服务,
1.它作为可以将域名和IP地址相互映射的一个分布式数据库
2.能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
14. TCP对应的协议和UDP对应的协议
14.1 TCP对应的协议
(1) FTP:定义了文件传输协议,使用21端口。常说某某计算机开了FTP服务便是启动了文件传输服务。下载文件,上传主页,都要用到FTP服务。
(2) Telnet:它是一种用于远程登陆的端口,用户可以以自己的身份远程连接到计算机上,通过这种端口可以提供一种基于DOS模式下的通信服务。如以前的BBS是-纯字符界面的,支持BBS的服务器将23端口打开,对外提供服务。
(3) SMTP:定义了简单邮件传送协议,现在很多邮件服务器都用的是这个协议,用于发送邮件。如常见的免费邮件服务中用的就是这个邮件服务端口,所以在电子邮件设置-中常看到有这么SMTP端口设置这个栏,服务器开放的是25号端口。
(4) POP3:它是和SMTP对应,POP3用于接收邮件。通常情况下,POP3协议所用的是110端口。也是说,只要你有相应的使用POP3协议的程序(例如Fo-xmail或Outlook),就可以不以Web方式登陆进邮箱界面,直接用邮件程序就可以收到邮件(如是163邮箱就没有必要先进入网易网站,再进入自己的邮-箱来收信)。
(5)HTTP协议:是从Web服务器传输超文本到本地浏览器的传送协议。
14.2 UDP对应的协议
(1) DNS:用于域名解析服务,将域名地址转换为IP地址。DNS用的是53号端口。
(2) SNMP:简单网络管理协议,使用161号端口,是用来管理网络设备的。由于网络设备很多,无连接的服务就体现出其优势。
(3) TFTP(Trival File Transfer Protocal),简单文件传输协议,该协议在熟知端口69上使用UDP服务
12. HTTP中,POST与GET的区别
(1)Get是从服务器上获取数据,Post是向服务器传送数据。
(2))Get传送的数据量小,不能大于2KB;post传送的数据量较大
(4)根据HTTP规范,GET用于信息获取,而且应该是安全的和幂等的。
I.所谓安全的意味着该操作用于获取信息而非修改信息。换句话说,GET 请求一般不应产生副作用。就是说,它仅仅是获取资源信息,就像数据库查询一样,不会修改,增加数据,不会影响资源的状态。
II.幂等的意味着对同一URL的多个请求应该返回同样的结果。