问题1:OSI有哪几层?会画出来,知道主要几层的各自作用
问题2:知道各个层使用的是哪个数据交换设备。(交换机、路由器、网关)
问题1:ARP的作用?
ARP为IP地址到对应的硬件地址提供动态映射
问题2:点对点链路使用ARP吗?
不使用
问题3:ARP高效运行的关键是什么?
关键是每个主机上都有一个ARP的高速缓存
帧类型:ARP:0x0806 (2)
ARP首部:
硬件类型:硬件地址的类型,1表示以太网地址(2)
协议类型:协议地址的类型,0x0800表示IP地址(2)
硬件地址长度:字节为单位 6(1)
协议地址长度:字节为单位 491
操作类型:2个字节。ARP请求1,ARP回复2,RARP请求3,RARP应答4 (2)
发送者硬件地址:6个字节 (6)
发送者IP地址:4个字节 (4)
目标硬件地址:6个字节(6)
目标IP地址:4个字节(4)
CRC校验:4个字节(4)
总结:
ARP总共28个字节
记忆方法:以太网先目的后源,ARP先发送端后目的源。先硬件后协议。
问题5:ARP协议有什么弱点?
问题6:ARP代理的概念和应用场景
若ARP请求是从一个网络的主机发送给另一个网络上的主机,那么连接这两个网络的路由器就可以回答该请求,这个过程叫做ARP代理。ARP代理路由器响应ARP请求的MAC地址为路由器的MAC地址而非ARP请求的主机的MAC地址。
ARP代理的应用环境:
两个物理网络之间的路由是使用相同的网络号,两个路由器设置成ARP代理,实现相互隐瞒物理网络。
问题7:免费ARP
指主机发送ARP查找自己到底IP地址,即数据链路层SIP=DIP
作用有两个:
问题8:数据链路层MTU的最大值和最小值是多少?
最小MTU为64字节
。对于IEEE802.3,两个站点的最远距离不超过2500m,由4个中继器连接而成,其冲突窗口为52.2us(2倍电缆传播延迟加上4个中继器的双向延迟)。对于10Mbps的IEEE802.3来说,这个时间等于发送64字节,即512位的时间,64字节就是由此而来。如果一个站点已经传输了512bit,就认为它已经占用了这个信道。最大MTU为1500字节
,即数据字段的最大长度。问题1:如何理解IP的不可靠和无连接。
不可靠:指的是不能保证数据报能成功地到达目的地。
发生错误时候,丢弃该数据包,发送ICMP消息给信源端。可靠性由上层提供。
无连接:IP不维护关于后续数据报的状态信息。
体现在,IP数据可以不按顺序发送和接收。A发送连续的数据报,到达B不一定是连续的,来回路由选择可能不一样,路线也不一样,到达先后顺序也不一样。
版本号:IPV4就是4,IPV6就是6(4)
首部长度:4个字节为单位。最小为5,最大为15。所以最小长度20个字节,最大为60个字节。(4)
服务类型:QoS用,目前不怎么使用。(8)
总长度:字节为单位。最多可以传送65535字节的IP数据包。(16)
表示字段(8)
标志(3)
段偏移(5)与分片有关。
生存时间TTL:经过一个路由器减一。字段为0时,数据报被丢弃,并且发送ICMP报文通知源主机。目的是防止数据报在选路是无休止地在网络中流动。(8)
协议:区分上层协议(8)
首部校验和:仅对首部进行校验。(16)【对比:ICMP、IGMP、TCP、UDP:对首部和数据进行校验】
源地址:(32)
目的地址:(32)
问题3:为什么IP首部中要有总长度字段?
因为一些数据链路(以太网)需要填充一些数据以达到最小长度。因为以太网帧的最小长度是46个字节,但是ip长度可能更短,所以需要总长度来确定IP数据部分的内容。
问题4:IP首部校验和怎么计算的?与ICMP、IGMP、TCP、UDP的首部校验和有什么区别和共同点?
共同点:用到的算法都是一样的。
区别:IP计算的时候没有将数据包括在内。
ICMP、IGMP、TCP、UDP同事覆盖首部和数据校验码。
问题5:主机和路由器本质区别是什么?
主机从不把数据报从一个接口转发到另一个接口,而路由器则要转发数据报。
问题6:IP路由选择的过程是怎么样的?
根据最长匹配原则,找到条目,发送到指定的路由器。如果不能找到,返回一个“主机不可达”或“网络不可达”的错误。
问题7:IP路由选择的特性有什么?
问题8:IP搜索路由表的步骤
搜索匹配的主机地址——》搜索匹配的网络地址——》搜索默认选项
IP层进行的选路,实际上是一种选路机制。它搜索路由表并决定向哪个网络接口发送分组。
问题9:如果路由表中没有默认项,而又没有找到匹配项,这时如何处理?
结果取决于该IP数据报是由主机产生的还是被转发的。
如果数据报是由本机产生的,那么就给发送该数据报的应用程序返回一个差错,或者是“主机不可达差错”或者是“网络不可达差错”。
如果是被转发的数据报,就给原始发送了一份ICMP主机不可达的差错报文。
问题10:IP地址的分类是如何划分的,及会计算各类地址支持的主机数。
问题1:ICMP的层次和作用
ICMP一般认识是在三层的。主要传递一些差错报文和其他需要注意的信息。
问题2:ICMP报文的分类?
ICMP分为两类,一类是ICMP查询报文,另一类是ICMP差错报文。
问题3:ICMP的主机不可达报文是在什么情况下发出的?
三层设备(路由器)给该主机寻路时,没有找到相应路径,向源IP发回ICMP主机不可达。
问题4:什么情况下不会导致产生ICMP差错报文?
问题5:ICMP重定向差错报文是怎么来的?在何种场合出现?
问题6:重定向报文有什么规则?
重定向报文只能有路由器生成。
重定向报文是为主机而不是为路由器使用的。
问题1:UDP和TCP的简单介绍
UDP是一个简单的面向数据报的运输层协议:进程的每个输出操作都正好产生一个UDP数据报,并组装成一份待发送的IP数据报。
TCP是面向流字符,应用程序产生的全体数据与真正发送的单个IP数据报可能没什么联系。
问题2:UDP报头字段和含义?
源端口号(2)
目的端口号(2)
UDP长度:是UDP的报文总长度,是多余的。IP总长度减去首部长度就是此值。(2)
UDP校验和:校验和是可选的。(TCP是必选的)校验和和覆盖UDP首部和数据(TCP也一样覆盖首部和数据,但是IP指覆盖首部)(2)
问题3:UDP的校验和是怎么计算的?
UDP的校验和要计算首部和数据部分。首部还包括伪首部。
多了12个字节的伪首部。
注意:UDP长度计算两次。如果校验和有错,则UDP数据报被悄悄丢弃,不产生任何差错报文。
问题4:为什么要加有伪首部?
目的是让UDP两次检查数据是否已经到达正确目的地。
IP接受正确的目的地址,传送到正确的上层程序。
所有伪首部包括:源IP地址,目的IP地址,0,协议号,UDP长度。
问题1:TCP通过哪些方式来保证可靠性?
问题2:TCP和UDP的概念相互的区别及劣势
问题3:TCP、UDP为什么存在伪报头?
UDP(TCP)校验和:是根据UDP(TCP)数据报和伪报头计算得到的差错检测值。
伪报头包含源和目的IP地址,以及来自IP数据报报头的协议值。IP数据报在网络中传送时包含UDP数据报。
伪报头并不会在网络中传送,校验和所包含的伪报头内容可以避免目的端错误地接受错误路由的数据报。校验和值的计算方法和IP报头校验和的计算方法类似。
问题4:为什么要3次握手,4次挥手?
问题5:TCP的流量控制机制
主要有下面的四种机制:
1. 慢启动(慢开始):
2. 拥塞避免:
总结:
无论在慢开始阶段还是在拥塞避免阶段,只要发送方判断网络出现拥塞(其根据就是没有收到确认,虽然没有收到确认可能是其他原因的分组丢失,但是因为无法判定,所以都当做拥塞来处理),就把慢开始门限设置为出现拥塞时发送窗口大小的一半。然后把拥塞窗口设置为1,执行慢开始算法。如图所示:
3. 快速重传:
4. 快速恢复:
问题1:DNS概念,用途,DNS查询的实现算法
概念:
主机解析域名的顺序:
问题2:GET和POST区别
操作方式 | 数据位置 | 明文密文 | 数据安全 | 长度限制 | 应用场景 |
---|---|---|---|---|---|
GET | HTTP报头 | 明文 | 不安全 | 长度较小 | 查询数据 |
POST | HTTP正文 | 可明可密 | 安全 | 支持较大数据传输 | 修改数据 |
问题3:Cookies和Session的区别
问题4:HTTP2.0和HTTP1的区别