TCP为什么可靠?
三次握手,超时重传,滑动窗口,拥塞控制。
讲一下浏览器从接收到一个URL到最后展示出页面,经历了哪些过程?
- 缓存解析。先去缓存当中看看有没有,从 浏览器缓存-系统缓存-路由器缓存-ISP DNS 缓存 当中查看,如果有从缓存当中显示页面,没有就进行DNS解析。
- DNS解析。
- TCP连接。
- 发送HTTP请求。
- 服务器处理请求并返回HTTP报文。
- 关闭TCP连接
- 浏览器解析渲染页面。
路由器和交换机的区别?
交换机–同一网络内部数据的快速传输转发,不需要修改数据帧,位于数据链路层,使用硬件处理。
路由器–不同网络间数据的跨网络传输转发,需要修改数据帧,位于网络层,使用软件处理。
网络协议分层结构
OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。
五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。
WEB服务器、DNS服务器、FTP服务器
WEB服务器:WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。
DNS服务器:DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器。
FTP服务器:FTP是用来在两台计算机之间传输文件
TCP和UDP的区别
UDP,在传送数据前不需要先建立连接,远地的主机在收到UDP报文后也不需要给出任何确认。虽然UDP不提供可靠交付,但是正是因为这样,省去和很多的开销,使得它的速度比较快,比如一些对实时性要求较高的服务,就常常使用的是UDP。对应的应用层的协议主要有 DNS,TFTP,DHCP,SNMP,NFS 等。
TCP,提供面向连接的服务,在传送数据之前必须先建立连接,数据传送完成后要释放连接。因此TCP是一种可靠的的运输服务,但是正因为这样,不可避免的增加了许多的开销,比如确认,流量控制等。对应的应用层的协议主要有 SMTP,TELNET,HTTP,FTP 等。
- TCP 是面向连接的,UDP 是面向无连接的
- TCP程序结构较复杂,UDP程序结构较简单
- TCP 是面向字节流的,UDP 是基于数据报的
- TCP 保证数据正确性,UDP 可能丢包
- TCP 保证数据顺序,UDP 不保证
计算机网络中各层所对应的数据传送类型
传输层 — — 数据段(Segment)
网络层 — — 数据包(Packet)
数据链路层 — — 数据帧(Frame)
物理层 — — 比特(Bit)