计算机网络 | 面试整理


一、体系结构

OSI的七层模型

物理层、数据链路层、网络层、传输层、会话层、表示层、应用层

TCP/IP 4层模型

网络接口层、网际层、传输层、应用层

折中的5层模型

物理层、数据链路层、网络层、传输层、应用层


二、网络层

IPv4 和IPv6的区别

IPv4:32位

  • 分ABCDE类地址(p150页)——子网掩码??

IPv6:128位

IP 数据报的首部
  • TTL
子网划分

原:IP地址 = {<网络号>,<主机号>}
现:IP地址 = {<网络号>,<子网号>,<主机号>}
为什么要子网划分?
原来的两级地址不够灵活,IP地址的利用率不够高

子网掩码
  • 为了告诉主机或路由器对一个A、B、C类网络进行了子网划分
  • (p152)进行子网划分了之后,不容易看出子网的地址,用了子网掩码之后,就可以告诉主机或路由器当前子网对原网络号中的主机号的借位。
  • 子网掩码->网络号:子网掩码与IP地址逐位相与,得到的就是子网的网络号
CIDR
  • 无分类编址,“斜线记法”,128.14.32.5/20,20表示网络前缀的比特数,前20位为网络号
  • 仍采用子网掩码的概念
私有IP地址
  • A类:10.0.0.0 ~ 10.255.255.255
  • B类:172.16.0.0~172.31.255.255
  • C类:192.168.0.0~192.168.255.255
    ** 所有路由器对目的地址是私有地址的IP数据报均不转发 **
NAT

1. 是什么

  • (p151)Net Address Transfer 网络地址转换,将专用网络地址转换为公用网络地址
  • 可以对外隐藏内部管理的IP地址,内部网络的IP地址可以复用,大大节省了IP地址的消耗

2. IP地址转换过程

  • 使用本地的主机和外界通信时,NAT转换表中存放着{本地IP地址 :端口}到{全球IP地址:端口}的映射(这种方式可以让多个私有IP地址映射到同一个全球IP地址上)
    例子:我在家访问某一个共有IP地址
  • 家里的网关路由器开启NAT功能
  • 网关路由器会把本地IP地址映射成共有IP,然后发送到因特网,本地IP->共有IP的转换
    (网关路由器的LAN(局域网)端接收到本地发出的IP数据报,这个时候就把本地IP地址映射成全球IP地址,发送到路由器的WAN(广域网)端,WAN(广域网)端就把这个数据发送到因特网上
  • 因特网返回数据的时候,网关路由器又将全球IP地址转换成本地IP地址,再发送到设备上,这个就是地址转换的过程
ARP

(p155)Adress Resolution Protocol:IP地址 -> MAC地址

路由算法
1. 距离-向量算法 (动态)
  • 距离:路由器的条数,经过一个路由器条数就+1,加到16就不能再加了,此时默认路由不可达
  • 好消息传得快,坏消息传得慢
  • “收敛”:路由表的信息与网络的实况保持一致
  • 与直接相邻的结点做交换路由信息,所有结点都必须参与路由向量交换
2. 链路状态路由算法 OSPF(动态)
  • 主动测试所有邻接结点的状态,会定期地将链路状态传播给所有其他结点
  • 一个结点检查所有结点
路由协议
域内路由协议
  • RIP 距离-向量
  • OSPF 算法
域间路由协议

BGP:边界网关协议


三、传输层

UDP

无连接,不可靠

TCP

有连接、可靠

3次握手

  • 客户端-服务器:SYN连接请求
  • 服务器-客户端:ACK确认 + SYN连接请求
  • 客户端-服务器:ACK确认
    目的是为了确认全双工的通道是否能够正常的传输数据

4次挥手

  • 客户端-服务器:FIN连接释放请求

  • 服务器-客户端:AKC确认
    这个时候从客户端-服务器的传输通道已经关闭了

  • 服务器-客户端:FIN连接释放请求

  • 客户端-服务器:AKC确认
    服务器-客户端的通道关闭
    3次握手的本质也是4次握手

为什么要3次握手?2次不行?

全双工通道,2次只能确认一个方向的传输是否通畅

TCP粘包


四、应用层

DNS

DNS是什么

p254

  • 域名系统,用于域名解析(域名-IP地址之间互相转换的过程)
  • 使用UTP协议

DNS解析过程

  • 客户机向本地域名服务器发出DNS请求报文
  • 本地域名服务器,先在本地DNS缓存中查找请求的域名,有就直接返回
  • 没有就以DNS客户的身份依次向根域名服务器、顶级域名服务器、权限域名服务器发送请求,依次查找
  • 找到之后,本地域名服务器再将解析到的IP地址返回给客户端

HTTP

基于TCP的

http和https的区别

  • 安全:https使用了ssl进行加密
  • 端口:http-80 https-443
  • https需要有CA整数,http不需要
  • http-明文传输,https-加密传输
  • http速度比https快

Http1 和 Http2 的区别

http1 是字符串传送,http2 是二进制传送

http响应码

3开头:重定向有关

301和302的区别

  • 301:永久转移
  • 302:暂时性转移
4开头:请求错误
  • 400 : (错误请求) 服务器不理解请求的语法
  • 404 (未找到) 服务器找不到请求的网页
  • 407 (需要代理授权) 此状态代码与 401(未授权)类似,但指定请求者应当授权使用代理
  • 408 (请求超时) 服务器等候请求时发生超时

baidu.com 的过程

这个问题主要涉及两个过程

域名解析

  • 本地域名服务器
  • 根域名服务器、顶级域名服务器、权限域名服务器

网络应用模型

P2P

客户机和客户机之间直接通信

C/S

客户端/服务器:对客户端计算机的性能要求比较高;客户端需要安装和配置相应的软件

B/S

浏览器/服务器:对客户端计算机的性能要求没那么高;客户端不需要安装和配置相应的软件,有浏览器即可

FTP

文本传输协议

SMTP POP3

邮件传输协议
SMTP采用“推”的方式,POP3采用“拉”的方式


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值