在正文开始之前,请问:您是否不熟悉 OSI 和 TCP/IP 的基础?
据观察数据包mtu,即使是理论基础薄弱的人也多少有所了解。
为什么?
因为OSI和TCP/IP是很基础但又很重要的知识,很多知识点都是在它们的基础上串联起来的。作为底层,掌握的越透彻,对上层的理解就越顺畅。
比如今天的网络基础科普,就是按照OSI级别一一进行的。
很多想入门的朋友问了:
如何在空闲时间获得一点入口?
有没有比较完整的理论基础资料,发过去看看?
所以今天,我准备了这两个内容。
一篇是这篇文章,36张图片,涵盖了大部分网络基础技术点。
深度不够,但广度足够。强烈建议作为网络工程师的你收藏+反复阅读。
01
计算机网络基础
01
计算机网络分类
按网络范围分:广域网(WAN)、城域网(MAN)、局域网(LAN);
按网络用户:公网、私网。
02
计算机网络的层次结构
TCP/IP四层模型与OSI架构的比较:
03
层级设计的基本原则
04
计算机网络性能指标
速率:bps=bit/s
Latency:发送延迟、传播延迟、排队延迟、处理延迟
往返时间 RTT:端到端通信中数据包的往返时间。
02
物理层
物理层的作用:
连接不同的物理设备来传输比特流。该层为向上层协议传输数据提供可靠的物理介质。简单来说数据包mtu,物理层就是保证原始数据可以在各种物理介质上传输。
物理层设备:
信道的基本概念:信道是一种单向传输信息的介质,通信线路包括发送信道和接收信道。
03
数据链路层
01
数据链路层概述
数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将数据从网络层可靠地传输到相邻节点的目标网络层。数据链路层通过不可靠的物理介质提供可靠的传输。
该层的功能包括:物理地址寻址、数据分帧、流量控制、数据错误检测、重传等。
关于数据链路层的重要知识点:
封装成帧:“帧”是数据链路层数据的基本单位:
透传:“透传”是指即使控制字符在帧数据中,也应该视作不存在。即在控制符前加上转义符ESC。
02
数据链路层错误监控
错误检测:奇偶校验码、循环冗余校验码CRC
03
最大传输单元MTU
MTU(Maximum Transmission Unit),数据链路层的数据帧不是无限的,数据帧的长度受MTU限制。
Path MTU:由链路中MTU的最小值决定。
04
以太网协议详解
MAC地址:每个设备都有一个唯一的MAC地址,共48位,用16进制表示。
以太网协议:是一种应用广泛的局域网技术,是应用于数据链路层的协议。使用以太网可以完成相邻设备的数据帧传输:
局域网分类:
EthernetEthernetIEEE802.3
以太网帧结构
MAC地址(物理地址、局域网地址)
04
网络层
网络层的目的是实现数据在两端系统之间的透明传输,其具体功能包括寻址和路由、连接建立、维护和终止等。数据交换技术是报文交换(基本被数据包代替) :采用存储转发方式,数据交换单位为消息。
网络层涉及的协议很多,其中最重要的协议,也是TCP/IP的核心协议——IP协议。IP协议非常简单,只提供不可靠的、无连接的传输服务。IP协议的主要功能是:无连接数据报传输、数据报路由和差错控制。
有地址解析协议ARP、反向地址解析协议RARP、因特网报文协议ICMP、因特网组管理协议IGMP等与IP协议一起使用来实现其功能。
我们将在下一节中总结具体的协议。关于网络层的关键点是:
1. 网络层负责在子网之间路由数据包。此外,网络层还可以实现拥塞控制、互联网互联等功能;
2、基本数据单元为IP数据报;
三、主要协议包括:
4、重要设备:路由器。
路由器相关协议:
01
IP协议详解
IP互联网协议是互联网网络层的核心协议。
虚拟互联网的产生:实际的计算机网络错综复杂;物理设备通过IP协议屏蔽物理网络之间的差异;当网络中的主机使用IP协议连接时,无需关注网络的细节,从而形成一个虚拟网络。
IP协议使复杂的实际网络成为虚拟的互联网络;解决了虚拟网络中数据报传输路径的问题。
其中,version是指IP协议的版本,占4位,如IPv4、IPv6;
第一位的长度表示IP头的长度,占4位,最大值为15位;
总长度表示IP数据报的总长度,占16位,最大值为65535;
TTL表示IP数据报在网络中的生存期,占用8位;
协议表示IP数据携带的具体数据是什么协议,如TCP、UDP等。
02
IP协议的转发过程
03
IP 地址的子网划分
A类(8个网络ID+24个主机ID)、B类(16个网络ID+16个主机ID)、C类(24个网络ID+8个主机ID)可用于标识网络中的主机或路由器。组广播地址,E类地址保留。
04
网络地址转换NAT技术
用于多台主机通过公网IP上网的私网,减缓了IP地址的消耗,但增加了网络通信的复杂度。
NAT 的工作原理:
对于从内网出去的IP数据报,将其IP地址替换为NAT服务器拥有的合法公网IP地址,并将替换关系记录在NAT转换表中;
从公共互联网返回的IP数据报根据其目的IP地址检索NAT转换表,将目的IP地址替换为检索到的内部私有IP地址,然后将IP数据报转发到内部网络。
05
ARP协议和RARP协议
地址解析协议ARP(Address Resolution Protocol):提供网卡(网络适配器)的IP地址到对应硬件地址的动态映射。网络层的32位地址可以转换为数据链路层的MAC48位地址。
ARP即插即用,自动创建ARP表,不需要系统管理员配置。
RARP(Reverse Address Resolution Protocol)协议是指反向地址解析协议,可以将数据链路层的MAC48位地址转换成网络层的32位地址。
06
ICMP协议详解
互联网控制消息协议(Internet Control Message Protocol),可以报告错误信息或异常情况,ICMP消息被封装在IP数据报中。
ICMP协议的应用:
07
网络层路由概述
路由算法要求:
正确、完整、计算简单、适应网络变化、稳定和公平。
自治系统AS:
指在一个管理机构下的一组网络设备。自治系统内部网络自主管理,对外提供一个或多个出入口。自治系统内部的路由协议是内部网关协议,如RIP、OSPF等;自治系统外的路由协议是外部网关协议,如BGP。
静态路由:
手动配置,难度大,复杂度高;
动态路由:
08
内部网关路由协议RIP协议
路由信息协议RIP(Routing Information Protocol)【应用层】,基于距离-矢量路由算法,较小的AS(自治系统),适用于小型网络;RIP 消息,封装到 UDP 数据报中。
RIP协议特点:
09
内部网关路由协议之OSPF协议
开放最短路径优先协议OSPF(Open Shortest Path First)【网络层】,基于链路状态路由算法(即Dijkstra算法),大规模AS,适用于大型网络,直接封装在IP数据报中传输。
OSPF协议的优点:
RIP与OSPF的比较(路由算法决定其性质):
10
外部网关路由协议BGP协议
BGP (Border Gateway Protocol) 边界网关协议【应用层】:是运行在AS之间的协议,寻找好的路由:第一次交换所有信息,以后只交换变化的部分,BGP封装成TCP段.
05
传输层
第一个是端到端,即主机到主机级别。传输层负责对上层数据进行分段,提供端到端、可靠或不可靠的传输。
此外,传输层还处理端到端的错误控制和流量控制问题。
传输层的任务是根据通信子网的特点,充分利用网络资源,提供建立、维护和取消两端系统会话层之间传输连接的功能,并负责端到端的可靠数据传输。
在这一层,用于信息传输的协议数据单元称为段或消息。
网络层只根据网络地址将源节点发送的数据包传送到目的节点,而传输层则负责将数据可靠地传送到相应的端口。
关于网络层的要点:
01
UDP协议详解
UDP(User Datagram Protocol:用户数据报协议),是一个非常简单的协议。
UDP协议的特点:
UDP数据报结构:
包头:8B,四个字段/2B【源端口| 目的港 | UDP 长度 | checksum]数据字段:应用数据
02
TCP协议详解
TCP(Transmission Control Protocol:传输控制协议)是计算机网络中非常复杂的协议。
TCP协议的功能:
TCP协议的特点:
TCP段结构:
最大段长度:段中封装的应用层数据的最大长度。
TCP 标头:
TCP标志的作用:
03
可靠运输的基础
基本的:
错误检测:使用编码来检测数据包传输过程中的比特错误