面试常见问题_计算机网络
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机网络
OSI与TCP/IP各层的结构与功能,都有哪些协议。
TCP/IP
相似之处:
基于独立的协议族,层的功能划分相似
差异:
ISO/OSI:从概念模型到协议实现;
TCP/IP:从协议实现到概念描述
层次数量差别;
●UDP
,UDP
时●TCP
●TCP
●
TCP用于传输层有必要实现可靠性传输的情况。UDP主要用于对高速传输和实时性有较高要求的通信或广播通信。
区别:
1)TCP面向连接;UDP是无连接的,发送数据之前不需要建立连接。
2)TCP提供可靠的服务。TCP传送的数据无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,不保证可靠交付。
3)TCP面向字节流,实际上TCP把数据看成一串无结构的字节流;UDP是面向报文的,UDP没有拥塞控制,网络出现拥塞不会使源主机的发送速率降低。
4)
5)TCP
6)TCP
✧IP
✓
✓
✓
✓总长度:占16位,值首部和数据之和的长度,单位为字节,数据报最大长度65535字节,总长度不超过最大传送单元MTU(1500)
✓标识:占16位,它是一个计数器,用来产生数据报标识。
✓标志:占3位,只有前两位有意义。标志字段最低位MF(morefragment)MF=1表示“还有分片”。MF=0
表示最后一个分片。标志字段中间位DF(Don’tfragment)当DF=0允许分片。
✓片偏移:12位,较长的分组在分片后某片在原分组中的相对位置。以8字节为偏移单位。
✓生成时间:TTL,8位,数据报在网络中可通过的路由器的最大值。
✓协议:8位,指出数据报写的数据所用的协议,以便目的主机的IP层将数据上交那个处理过程。(TCP、UDP、
✓
✓
✓
✓
✓
✓
✓
✓
✓URG:为1时,表明紧急指针字段有效。通知系统此报文段有紧急数据,应尽快传送(优先级高的数据)✓ACK:为1是确认号字段有效,为0时无效.
✓PSH:接收到的PSH=1的报文,尽快交付应用进程,不等待整个缓冲区填满。
✓RST:为1表明TCP连接中出现差错,必须释放连接,然后重新建立。
✓SYN:为1表示这是一个连接请求或连接接受报文。
✓FIN:用来释放一个连接。为1表明该报文段的发送端的数据已经发送完毕,要求释放连接。
✓窗口:2字节,用来让对方设置发送窗口的依据。
✓校验和:2字节,校验范围包括首部和数据。在计算校验和时,要在TCP报文段前加12个字节的伪首部。
✓
✓
✓填充
TimeWait
1)
2)
什么是拥塞?在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能变坏,这种情况叫拥塞。
拥塞控制就是防止过多的数据注入网络,使网络中的路由器或链路不至过载。拥塞控制是一个全局性的过程,和流量控制不同,流量控制是点对点通信量的控制。
拥塞窗口cwnd:发送方维持一个拥塞窗口的状态变量。其大小取决于网络的拥塞程度,并且动态变化。发送方让自己的发送窗口等于拥塞窗口。如果考虑接收方的接收能力,发送窗口可能小于拥塞窗口。控制拥塞窗口原则:只要网络没有出现拥塞,窗口就增大一些,只要出现拥塞,窗口就减小一些。
✧慢开始与拥塞避免
1,不是加确认)
✧
快重传:发送方只要一连接收到三个重复确认就立即重传对方尚未收到的报文段。
快恢复:当发送端收到连续三个重复的确认是,把慢开始门限ssthresh减半,但不执行慢开始算法。由于发送方现在认为网络很可能没有发生拥塞(因为可以收到三个连续重复确认),因此不执行慢开始算法,而是将cwnd 设置为慢开始门限ssthresh减半后的数值,开始执行拥塞避免算法。
发送窗口的上限值:发送方的发送窗口的上限值应当取为接收方rwnd和拥塞窗口cwnd中较小的一个。
当rwnd 当cwnd ✧随机早起检测RED RED Lav ✧TCP 塞。 ✧1 须等待这个数据报的ACK,才能发送下一个。 ARQ(AutomaticRepeatreQuest)自动重传请求。重传的请求是自动进行的。接收方不需要请求发送方重传某个出错的分组。 ✧回退N(Go-back-N)表示需要再退回来重传已发送的N个分组。 累计确认:不必对收到的分组逐个发送确认,而是对按序到达的最后一个分组发送确认。优点是容易实现,即使确认丢失也不必重传。缺点是:不能向发送方反映接收方已经正确收到的所有分组。 ✧选择确认SACK:接收方收到了不连续的字节块。如果这些字节块的序号在接收窗口内,那么接收方收下这 些数据,但要把这些信息准确的告诉发送方,是发送方不再发送重复的数据。 ✧ URL: 版本: 版本: 状态码: 2XX表示成功,如接受或知道了。 3XX表示重定向,表示要完成的请求还必须采取进一步行动。 4XX表示客户的差错,如请求中有错误的语法或不能完成。 5XX表示服务器的差错,如服务器失效无法完成请求。 8.Http的状态码含义。 状态码:1XX表示通知信息,如请求收到了或正在进行处理。 2XX表示成功,如接受或知道了。 3XX表示重定向,表示要完成的请求还必须采取进一步行动。 HTTP1.0 HTTP1.1 延迟。 这样显着减少了所需时间。 HTTP1.0不支持Host请求头字段,在HTTP1.1中增加了Host请求头字段,WEB浏览器可以使用主机头名来明确表示要访问服务器上的哪个WEB站点,实现了在一台WEB服务器上可以在同一个IP地址和端口号上使用不同的主机名来创建多个虚拟WEB站点。