计算机网络核心知识点总结&面试笔试要点

计算机网络之基础篇

一、计算机网络概述
1.什么是计算机网络
  计算机网络主要由一些通用的、可编程的硬件互连而成,通过这些硬件,可以传送不同类型的数据,并且可以支持广泛和日益增长的应用。
2.计算机网络的分类
  按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN)
  按照网络使用者:公用网络、专用网络
3.计算机网络的发展历史
  互联网的发展历史:
   第一阶段:单个网络ARPANET,交换机+电脑
   第二阶段:三层结构互联网,主干网+地区网+校园网
   第三阶段:多层次ISP(Internet Service Provider,网络服务提供商)互联网,主干ISP+地区ISP+校园/公司/家庭…
  中国互联网的发展历史:
   1980年开始互联网实验,1989年第一个公立网络建立运行,1994年接入国际互联网。
4.计算机网络的层次结构
  层次结构设计的基本原则:
   各层之间是相互独立的;
   每一层需要有足够的灵活性;
   各层之间完全解耦。
  OSI七层模型:并没有成为广泛使用的标准模型,标准制定周期过长,设计不合理。
(9-3-0753)
  TCP/IP四层模型:
在这里插入图片描述
5.计算机网络的性能指标
  速率:bps=bit/s
  时延:发送时延、传播时延、排队时延、处理时延
  往返时间RTT:数据报文在端到端通信中的来回一次的时间
二、物理层概述
1.物理层的作用:连接不同的物理设备,传输比特流。
2.信道的基本概念:信道是往一个方向传输信息的媒体,一条通信电路包含一个发送信道和一个接受信道。
  单工通信信道:只能一个方向通信,没有反方向反馈的信道;
  半双工通信信道:双方都可以发送和接受信息,但
不能同时发送也不能同时接收

  全双工通信信道:双
方都可以同时发送和接收

 3.信道的分用-复用技术:大大提升信道的利用率,如下图,分为频分复用、时分复用、波分复用、码分复用。
在这里插入图片描述
三、数据链路层
 1.数据链路层概述
  封装成帧:“帧”是数据链路层数据的基本单位,帧的结构如下图:
在这里插入图片描述
  透明传输:“透明”是指即使控制字符在帧数据中,但是要当做不存在去处理。原理如下图,即在控制字符前加上转义字符ESC。
在这里插入图片描述
  差错检测:奇偶校验码、循环冗余校验码CRC
   奇偶校验码:局限性:当出错两位时,检测不到错误。
   循环冗余检验码:根据传输或保存的数据而产生固定位数校验码
2.最大传输单元
  最大传输单元MTU(Maximum Transmission Unit),数据链路层的数据帧不是无限大的,数据帧长度受MTU限制。
  路径MTU:由链路中MTU的最小值决定。
3.以太网协议详解
  MAC地址:每一个设备都拥有唯一的MAC地址,共48位,使用十六进制表示。
  以太网协议:是一种使用广泛的局域网技术,是一种应用于数据链路层的协议,使用以太网可以完成相邻设备的数据帧传输,数据格式如下:
在这里插入图片描述

计算机网络之网络层篇

一、网络层IP协议相关
1.IP协议详解
  虚拟互联网络的产生:实际的计算机网络错综复杂;物理设备通过使用IP协议,屏蔽了物理网络之间的差异;当网络中主机使用IP协议连接时,无需关注网络细节,于是形成了虚拟网络。如下图所示:
在这里插入图片描述
  IP协议使得复杂的实际网络变为一个虚拟互联的网络;并且解决了在虚拟网络中数据报传输路径的问题
  IP数据报的格式:在这里插入图片描述
  其中,版本指IP协议的版本,占4位,如IPv4和IPv6;首部位长度表示IP首部长度,占4位,最大数值位15;总长度表示IP数据报总长度,占16位,最大数值位65535;TTL表示IP数据报文在网络中的寿命,占8位;协议表明IP数据所携带的具体数据是什么协议的,如TCP、UDP。
2.IP协议的转发过程
  仅从网络层来看,转发过程如下图所示:
在这里插入图片描述
3.IP地址的子网划分
  分类的IP地址:A类(8网络号+24主机号)、B类(16网络号+16主机号)、C类(24网络号+8主机号),对比如下:在这里插入图片描述
  无分类编址CIDR:网络前缀+主机号,更加有效的分配IPv4的地址空间。
4.网络地址转换NAT技术
  用于多个主机通过一个公有IP访问访问互联网的私有网络中,减缓了IP地址的消耗,但是增加了网络通信的复杂度。
二、网络层其他协议
1.ARP协议与RARP协议
  ARP(Address Resolution Protocol)协议指地址解析协议,可以把网络层32位地址转化为数据链路层MAC48位地址
  ARP缓存表:是IP地址与MAC地址的映射对应表(IP地址是变化的):在这里插入图片描述
  RARP(Reverse Address Resolution Protocol)协议指逆地址解析协议,可以把数据链路层MAC48位地址转化为网络层32位地址。
2.ICMP协议
  网际控制报文协议(Internet Control Message Protocol),可以报告错误信息或者异常情况,ICMP报文封装在IP数据报当中。结构如下:
在这里插入图片描述
  ICMP协议的应用:
   Ping应用:网络故障的排查;
   Traceroute应用:可以探测IP数据报在网络中走过的路径。
三、IP的路由算法
1.路由的概述
  关于路由算法的要求:正确的完整的、在计算上应该尽可能是简单的、可以适应网络中的变化稳定的公平的
  自治系统AS:指处于一个管理机构下的网络设备群,AS内部网络自治管理,对外提供一个或多个出入口,其中自治系统内部的路由协议为内部网关协议,如RIP、OSPF等;自治系统外部的路由协议为外部网关协议,如BGP。
2.内部网关路由协议
  a.RIP协议:
   距离矢量(DV)算法:每一个节点使用两个向量Dᵢ和Sᵢ,Dᵢ描述的是当前节点到别的节点的距离,Sᵢ描述的是当前节点到别的节点的下一节点,每一个节点与相邻的节点交换向量Dᵢ和Sᵢ的信息,每一个节点根据交换的信息更新自己的节点信息,如下图:
(10-10-0320)
   RIP协议的过程:
    (1)路由器初始化路由信息(两个向量Dᵢ和Sᵢ);
    (2)对相邻路由器X发过来的信息,对信息的内容进行修改(下一跳地址设置为X,所有距离加1)
       i. 检索本地路由,将信息中新的路由插入到路由表里面
       ii. 检索本地路由,对于下一跳为X的,更新为修改后的信息
       iii. 检索本地路由,对比相同目的的距离,如果新信息的距离更小,则更新本地路由表
    (3)如果3分钟没有收到相邻的路由信息,则把相邻路由设置为不可达(16跳)。
  b.OSPF协议相关:
   Dijikstra算法:解决有权图从一个节点到其他节点的最短路径问题,该算法“以起点为中心,向外层层扩展”。
   算法描述:
      (1)初始化两个集合(S, U)(S为只有初始顶点点A的集合,U为其他顶点集合);
      (2)如果U不为空,对U集合顶点进行距离的排序,并取出距离A最近的一个顶点D;
        i. 将顶点D的纳入S集合
        ii.更新通过顶点D到达U集合所有点的距离(如果距离更小则更新,否则不更新)
        iii. 重复2步骤
      (3) 直到U集合为空,算法完成。
   链路状态(LS)协议:向所有的路由器发送信息,消息描述该路由器与相邻路由器的链路状态(距离、时延、带宽等),只有链路状态发生变化时,才发送更新信息。
   OSPF(Open Shortest Path First:开放最短路径优先)协议:核心是Dijkstra算法。
   OSPF协议的过程:(10-12-1149)
   RIP与OSPF的对比:(10-12-1204)
3.外部网关路由协议
  BGP(Border Gateway Protocol)边际网关协议:是运行在AS之间的一种协议。

计算机网络之传输层篇

一、UDP协议详解
 1.UDP(User Datagram Protocol: 用户数据报协议),是一个非常简单的协议,结构如下:
(11-2-0303)
 2.UDP协议的特点:

  • UDP是无连接协议;
  • UDP不能保证可靠的交付数据
  • UDP是面向报文传输的;
  • UDP没有拥塞控制
  • UDP首部开销很小。

二、TCP协议
 1.TCP(Transmission Control Protocol: 传输控制协议),是计算机网络中非常复杂的一个协议,其结构如下:(11-3-0057)
2.TCP协议的特点:

  • TCP是面向连接的协议;
  • TCP的一个连接有两端,即点对点通信;
  • TCP提供可靠的传输服务;
  • TCP协议提供全双工通信;
  • TCP是面向字节流的协议;
     3.TCP首部之TCP标记的作用
    (11-3-1413)
     4.可靠传输的基本原理
      停止等待协议:是最简单的可靠传输协议,但是该协议对信道的利用率不高
      连续ARQ(Automatic Repeat reQuest:自动重传请求)协议:滑动窗口+累计确认,大幅提高了信道的利用率
     5.TCP协议的可靠传输
      基于连续ARQ协议,在某些情况下,重传的效率并不高,会重复传输部分已经成功接收的字节
     6.TCP协议的流量控制
      流量控制指让发送方发送速率不要太快,TCP协议使用滑动窗口实现流量控制。
     7.TCP协议的拥塞控制
      拥塞控制与流量控制的区别:流量控制考虑点对点的通信量的控制,而拥塞控制考虑整个网络,是全局性的考虑。
      拥塞控制的方法:慢启动算法+拥塞避免算法,如下图,纵坐标表示每一次发送数据报文的数量,横坐标表示发送的次数:(11-7-0711)
     8.TCP连接的三次握手
      如图所示,具体标记详见上面3.TCP标记的含义与作用:(11-8-0641)
      问:为什么发送方要发出第三个确认报文呢?
      答:避免已经失效的的连接请求报文传送到对方,引起错误
     9.TCP协议的四次挥手
      如图所示(11-9-0513)
      问:等待计时器为什么需要等待2MSL(最长报文断寿命,一般为2min)?
      答:最后一个报文没有确认,确保发送方的ACK可以到达接收方如果2MSL时间内没有收到,则接收方会重发;确保当前连接的所有报文都已经过期。

计算机网络之应用层篇

一、DNS详解
  DNS(Domain Name System:域名系统):解决IP地址复杂难以记忆的问题。
  1.IP—>DNS服务—>便于记忆的域名
  2.域名由点、字母和数字组成,分为顶级域(com,cn,net,gov,org)、二级域(baidu,taobao,qq,alibaba)、三级域(www)
(12-2-0852)
二、DHCP协议
  DHCP(Dynamic Configuration Protocol:动态主机设置协议):是一个局域网协议,是应用UDP协议的应用层协议。
  作用:为临时接入局域网的用户自动分配IP地址。
三、HTTP协议
  HTTP(HyperText Transfer Protocol:超文本传输协议):是可靠的数据传输协议。
  HTTP请求的方式对比:
   GET:请求指定的页面信息,并返回实体主体。
   POST:向指定资源提交数据进行处理请求。
   DELETE:请求服务器删除指定的页面。
四、HTTPS协议
  HTTPS(secure)安全的HTTP协议。
持续更新。。。

  • 136
    点赞
  • 920
    收藏
    觉得还不错? 一键收藏
  • 27
    评论
java面试笔试资料包括JAVA基础核心知识点深度学习Spring面试题等资料合集: JAVA核心知识点整理-282页 Java与哈希算法.docx Java中Lambda表达式的使用.docx JAVA多线程之线程间的通信方式.docx Java注解详解.docx Java线程池.docx JDK1.8Stream操作.docx JDK8有新特性.docx JVM堆三代.docx JVM的垃圾回收机制详解和调优.docx Spring源码分析之IoC.docx 关于线程和线程池的学习与使用.docx 深入理解JVM垃圾回收机制.docx 深入理解多线程实现的另一种方式Callable.docx 红黑树简介.docx 线程死锁及解决办法.docx 线程锁之重入锁.docx 线程间的通信.docx 虚拟机内存结构和垃圾回收docx.docx 锁分类的了解.docx 集合的扩容机制.png SpringMVC部分.docx Spring部分.docx 第一题.pdf 第七题 谈谈MySQL支持的事务隔离级别 (1).pdf 第三题 对比HashTable HashMap TreeMap有什么不同.pdf 第二题 Exception Error区别.pdf 第五题 如何保证集合是线程安全的.pdf 第八题 Java并发类库提供的线程池有哪几种 分别有什么特点.pdf 第六题 synchronized和ReentLock有什么区别.pdf 第四题 ArrayList LinkedList Vector的区别.pdf docker讲得最清楚.doc Dubbo是什么?能做什么?.doc java 基于TCP协议的Socket编程和通信.doc Java面试高级篇—说说TCP,UDP和socket,Http之间联系和区别.doc MySQL千万级的大表要怎么优化(读写分离、水平拆分、垂直拆分).doc redis缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级.doc RPC (Remote Procedure Call)即远程过程调用.doc Spring 面试问题 TOP 50(干货推荐收藏必备).doc springboot常见面试题.doc svn和git的区别及适用场景.doc ZooKeeper.doc 为什么分布式一定要有Redis.doc 分布式、高并发、多线程,到底有什么区别.doc 分布式事务.doc 四款消息队列大比拼.docx 多台web服务器之间共享session.docx 消息中间件Kafka与RabbitMQ.doc 电商项目描述注意点.doc 秒杀业务的流量削峰场景如何解决.doc 面试题:Kafka、ActiveMQ、RabbitMQ、RocketMQ 有什么优缺点.doc

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值