计算机网络面试参考题

搜索baidu,会用到计算机网络中的什么层?每层是干什么的.

1,浏览器输入URL

2.浏览器要将URL解析为IP地址,解析域名就需要用到DNS协议(应用层),首先主机会查询DNS的缓存,如果没有就给本地DNS 发送查询请求.DNS的查询分为两种方式,一种是递归查询,一种是迭代查询.如果是迭代查询,本地的DNS服务器,向根域名服务器发送查询请求,根域名服务器告知该域名的一级域名服务器,然后本地域名服务器给该一级域名服务器发送查询请求,然后依次类推直到查询到该域名的IP 地址.DNS服务器是基于UDP的,因此会用到UDP协议(传输层).

3.得到IP地址后,浏览器就要与服务器建立一个http连接.因此就要用到http协议(应用层).http生成一个get 请求报文,将该报文传给TCP层(传输层)处理,所以还会用到TCP协议.如果采用https还会使用https协议先对http数据包进行加密.TCP 层如果有需要先将HTTP数据包分片,分片依据路径MTU和MSS.TCP的数据包然后会发送给IP层(网络层),用到IP协议.IP层通过路由选路,一跳一跳发送到目的地址.当然在一个网段内的寻址是通过以太网协议实现的,以太网协议需要直到目的IP地址的物理地址,又需要ARP协议(网络层).
其中:
(五层协议)
1.DNS协议,http协议,https协议属于应用层, 应用层是体系结构中的最高层,应用层确定进程之间通信的性质以及满足用户的需要.
2.TCP/UDP属于传输层
传输层的任务是负责主机两个进程之间的通信.
3.IP协议,ARP协议属于网络层
网络层负责为分组交换网上的不同主机提供通信.网络层的另一个任务就是要选择合适的路由, 使源主机运输层所传下来的分组能够交付到目的主机.
4.数据链路层:
当发送数据时, 数据链路层的任务就是将在网络层交下来的IP数据报组装成帧, 在两个相邻结点间的链路上传送以帧为单位的数据.
5.物理层
物理层的任务就是透明地传送比特流.

OSI七层模型
物理层:RJ45, CLOCK, IEE802.3协议

数据链路层:PPP, FR, MAC, VLAN协议

网络层:IP, ARP, ICMP协议

传输层:UDP,TCP协议

会话层:建立,管理和终止会话,RPC, NFS, SQL协议

表示层:对数据进行翻译,加密和压缩,JPEG, MPEG, ASII协议

应用层:允许访问OSI环境的手段,DNS, HTTP, FTP,( WWW, telent, SMTP)协议

TCP/IP四层模型

网络接口层:MAC, VLAN

网络层:IP, ARP, ICMP

传输层:TCP, UDP.

应用层:HTTP, DNS,SMTP

TCP和UDP的区别和各自适用的场景

参考回答:

1)TCP和UDP区别

1) 连接

TCP是面向连接的传输层协议,即传输数据之前必须先建立好连接。

UDP无连接。

2) 服务对象

TCP是点对点的两点间服务,即一条TCP连接只能有两个端点;

UDP支持一对一,一对多,多对一,多对多的交互通信。

3) 可靠性

TCP是可靠交付:无差错,不丢失,不重复,按序到达。

UDP是尽最大努力交付,不保证可靠交付。

4)拥塞控制,流量控制

TCP有拥塞控制流量控制保证数据传输的安全性。

UDP没有拥塞控制,网络拥塞不会影响源主机的发送效率。

5) 报文长度

TCP是动态报文长度,即TCP报文长度是根据接收方的窗口大小当前网络拥塞情况决定的。

UDP面向报文,不合并,不拆分,保留上面传下来报文的边界。

6)首部开销

TCP首部开销大,首部20个字节

UDP首部开销小,8字节。(源端口,目的端口,数据长度,校验和.

7)包大小:

UDP 包的大小就应该是 1500 - IP头(20) - UDP头(8) = 1472(Bytes) TCP 包的大小就应该是 1500 - IP头(20) - TCP头(20) = 1460 (Bytes)

2)TCP和UDP适用场景

从特点上我们已经知道,TCP 是可靠的但传输速度慢,UDP 是不可靠的但传输速度快。因此在选用具体协议通信时,应该根据通信数据的要求而决定。

若通信数据完整性需让位与通信实时性,则应该选用TCP 协议(如文件传输、重要状态的更新等);反之,则使用 UDP 协议(如视频传输、实时通信等)。

请你说一下TCP怎么保证可靠性.

TCP保证可靠性:
(1)序列号、确认应答、超时重传
数据到达接收方,接收方需要发出一个确认应答,表示已经收到该数据段,并且确认序号会说明了它下一次需要接收的数据序列号。如果发送发迟迟未收到确认应答,那么可能是发送的数据丢失,也可能是确认应答丢失,这时发送方在等待一定时间后会进行重传。这个时间一般是2RTT(报文段往返时间)+一个偏差值。
(2)窗口控制与高速重发控制/快速重传(重复确认应答)
TCP会利用窗口控制来提高传输速度,意思是在一个窗口大小内,不用一定要等到应答才能发送下一段数据,窗口大小就是无需等待确认而可以继续发送数据的最大值。如果不使用窗口控制,每一个没收到确认应答的数据都要重发。
使用窗口控制,如果数据段1001-2000丢失,后面数据每次传输,确认应答都会不停地发送序号为1001的应答,表示我要接收1001开始的数据,发送端如果收到3次相同应答,就会立刻进行重发;但还有种情况有可能是数据都收到了,但是有的应答丢失了,这种情况不会进行重发,因为发送端知道,如果是数据段丢失,接收端不会放过它的,会疯狂向它提醒…
(3)拥塞控制
如果把窗口定的很大,发送端连续发送大量的数据,可能会造成网络的拥堵(大家都在用网,你在这狂发,吞吐量就那么大,当然会堵),甚至造成网络的瘫痪。所以TCP在为了防止这种情况而进行了拥塞控制。
慢启动:定义拥塞窗口,一开始将该窗口大小设为1,之后每次收到确认应答(经过一个rtt&#

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值