前言
QA
A,B,C,D类网段的首字段范围是多少?
A类:1 - 126 B类:128 - 191 C类: 192 - 223 D类: 224-239 E类:240-255
预留给企业私用的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
D类:224.0.0.0 - 239.255.255.255
E类:240.0.0.0 - 255.255.255.255
什么是子网掩码?
子网掩码用于区分IP地址的网络部分和主机部分,通过子网掩码,可以将一个网络划分为多个子网,从而更好地管理和利用网络资源。
默认网关的作用是什么?
帮助网络中的设备与外部网络进行通信,尤其是当目标设备位于不同子网时。
一、OSI参考模型
OSI(Open Systems Interconnection)模型是一个标准化的网络通信参考模型,由 ISO(国际标准化组织) 提出,用于定义网络通信的各个层次和功能。OSI模型将网络通信划分为 七层,每一层都具有特定的功能,分别是:
物理层(Physical Layer)
- 定义:负责物理介质的传输和接收数据。==建立、维护、组建网络,定义了介质和接口的标准,实现了比特流的传输。==
- 功能:定义硬件设备如何通过物理介质(如电缆、光纤、无线电波)进行数据传输。涉及电压电缆类型、信号速率等。
- 设备:集线器、网线、光纤等。
数据链路层(Data Link Layer)
- 定义:负责节点之间的数据传输和错误检测。==建立逻辑链路,帧传输、帧同步、帧交换,(二层交换 三层路由)交换机根据MAC(硬件地址)地址转发数据。==
- 功能:将数据打包成帧,负责在相邻网络节点之间的可靠数据传输,并进行错误检测和校正。
- 协议:PPP、HDLC、Ethernet(以太网)、ARP等。
- 设备:交换机、网桥、网络接口卡(NIC)。
网络层(Network Layer)
- 定义:负责不同网络之间的路由选择和数据包转发。==定义IP地址,实现不同网络间的通信,选择最优路由。==
- 功能:确定最佳路径,将数据从源端传输到目的端,解决不同网络间的连接问题。
- 协议:IP、ARP、ICMP、IGMP、IPSec等。
- 设备:路由器。
传输层(Transport Layer)
- 定义:提供端到端的通信控制,保证数据的完整性和可靠性。==定义传输数据的端口(端与端),实现了程序与程序之间的互联。==
- 功能:负责数据分段、传输控制、流量控制和错误恢复。主要协议是面向连接的TCP和无连接的UDP。
- 协议:TCP、UDP等。
会话层(Session Layer)
- 定义:负责建立、管理和终止应用程序之间的会话。==建立、管理、终止会话(断点断传)。==
- 功能:管理会话连接,控制数据交换的顺序和同步,保证长时间通信过程中的数据流动。
- 协议:NetBIOS、RPC等。
表示层(Presentation Layer)
- 定义:负责数据的格式化和转换。==数据表现形式,明文、加密、压缩。==
- 功能:提供数据的语法和语义翻译,负责数据加密、解密、压缩和格式转换,确保不同系统之间的数据可以互相理解。
- 协议:SSL/TLS、JPEG、MPEG等。
应用层(Application Layer)
- 定义:为用户提供网络服务接口。==给用户使用网络的一个接口。==
- 功能:直接面向用户,提供各种网络服务,如文件传输、电子邮件、远程登录等。应用层协议通过这个层与用户交互。
- 协议:HTTP、FTP、SMTP、DNS、SNMP等。
OSI模型的作用
- 提供了一个通用的框架,使得不同厂商生产的设备能够在同一网络中互相通信。
- 有助于分离不同功能层次,使得网络协议的开发和实现更加模块化和灵活。
二、TCP/IP模型
TCP/IP五层模型是在经典的四层TCP/IP模型基础上进一步细化的一种网络模型。它将网络通信的功能划分为五个不同的层次,分别是:物理层、数据链路层、网络层、传输层 和 应用层。这种五层模型通常用于网络教学或理解网络协议的详细工作过程。五层模型的优点在于它结合了OSI模型的七层结构和TCP/IP模型的实际应用。
1、 TCP/IP五层模型的结构
(1). 物理层(Physical Layer)
功能:负责在物理媒介上传输比特流(0和1)。物理层定义了设备的物理连接方式,包括电压、信号频率、连接器类型、传输介质(如电缆、光纤、无线电波)等。
主要任务:将数据以电信号或光信号的形式在物理媒介上传输,同时接收来自物理媒介的信号。
设备:集线器、网线、光纤、电缆、无线设备等。
(2). 数据链路层(Data Link Layer)
- 功能:负责在同一网络(如局域网)中的节点之间传输数据帧,并提供错误检测、流量控制和介质访问控制(MAC)。它将物理层的比特流封装成帧进行传输,并处理链路层上的错误。
- 主要任务:
- 封装数据包为帧,包含源MAC地址和目的MAC地址。
- 通过协议(如以太网协议)确保数据能够准确发送到目的节点。
- 错误检测与纠正,如CRC(循环冗余校验)。
- 设备:交换机、网卡、桥接器。
- 协议:以太网(Ethernet)、Wi-Fi、PPP(Point-to-Point Protocol)。
(3). 网络层(Network Layer)
- 功能:负责跨不同网络的节点之间的通信,主要任务是路由选择和逻辑寻址。网络层通过IP地址来标识网络中的每个设备,并决定数据包通过哪个路径从源设备发送到目的设备。
- 主要任务:
- 根据IP地址进行路由选择,确保数据包能够跨越多个网络到达最终目的地。
- 处理数据包的分片与重组,确保数据包可以在不同的网络上通过。
- 设备:路由器。
- 协议:IP(Internet Protocol,包括IPv4和IPv6)、ICMP(Internet Control Message Protocol)、ARP(Address Resolution Protocol)。
(4). 传输层(Transport Layer)
- 功能:提供端到端的传输服务,确保数据能够从发送端的应用程序传输到接收端的应用程序。传输层提供两种传输方式:面向连接的可靠传输(TCP)和无连接的不可靠传输(UDP)。
- 主要任务:
- 通过TCP提供可靠的数据传输服务,确保数据无误、按序到达,并进行流量控制和拥塞控制。
- 通过UDP提供快速、不可靠的数据传输,适用于实时应用(如视频流、在线游戏等)。
- 端口号标识不同应用程序,确保数据能够送达正确的应用程序。
- 协议:TCP(Transmission Control Protocol)、UDP(User Datagram Protocol)。
(5). 应用层(Application Layer)
- 功能:负责直接为用户和应用程序提供网络服务。应用层包含大量的协议,定义了如何在网络中传输特定类型的应用数据(如网页、文件、电子邮件等)。
- 主要任务:提供应用程序与网络之间的接口,支持各种网络应用,如网页浏览、文件传输、电子邮件等。
- 协议:
- HTTP/HTTPS(HyperText Transfer Protocol / Secure HTTP):用于网页浏览。
- FTP(File Transfer Protocol):用于文件传输。
- SMTP(Simple Mail Transfer Protocol):用于电子邮件的发送。
- DNS(Domain Name System):用于域名解析,将域名转换为IP地址。
- Telnet/SSH:用于远程登录和控制。
2、TCP/IP五层模型与OSI七层模型的对比
TCP/IP五层模型层次 | OSI七层模型层次 | 功能描述 | PDU协议数据单元 |
---|---|---|---|
应用层==计算机== | 应用层、表示层、会话层 | 提供应用程序服务,数据格式化,管理会话 | 报文(Message) |
传输层==防火墙== | 传输层 | 提供端到端的数据传输服务,流量控制、可靠性 | 段(Segment) |
网络层==路由器== | 网络层 | 数据包路由选择与转发,IP地址管理 | 包(Packet) |
数据链路层==交换机== | 数据链路层 | 数据帧的传输,介质访问控制,错误检测与纠正 | 帧(Frame) |
物理层==网卡== | 物理层 | 比特流传输,物理介质的定义与管理 | 比特流(Bits) |
3、各层的功能示例
- 物理层:通过电缆、光纤、无线信号等传输二进制数据(0和1)。
- 数据链路层:网络适配器(网卡)通过以太网协议封装数据帧,添加源MAC地址和目的MAC地址,将数据发送到局域网内的另一台设备。
- 网络层:路由器根据数据包的目的IP地址选择最佳路径,将数据包从一个网络转发到另一个网络。
- 传输层:TCP协议确保数据包按顺序到达,并提供可靠的传输机制,应用程序收到完整的数据。
- 应用层:用户在浏览器中输入网址,HTTP协议通过网络从服务器上获取网页并显示给用户。
4、TCP/IP五层模型的特点
简洁实用:五层模型在描述计算机网络时更加直观,尤其适合网络教学和实际网络设计。
分工明确:每一层都有特定的职责,确保数据从物理传输到应用展示的完整过程。
实际应用广泛:五层模型基于TCP/IP协议族,是互联网及其他计算机网络的实际运行模型。
5、总结
TCP/IP五层模型是网络通信中的经典模型,它将复杂的网络功能划分为五个层次,分别负责不同的任务。通过这一模型,网络中的数据可以从物理介质上传输、路由、传递给应用程序,确保设备之间能够互通有无。这种模型简洁、实用,是理解和构建网络的基础。
在计算机网络中,PDU(Protocol Data Unit,协议数据单元)是指网络协议中每一层进行数据交换时使用的数据格式。每一层处理的数据单位不同,因此每一层的PDU也不同。在TCP/IP五层模型中,各层的PDU有不同的名称,它们描述了在该层次上所传输的数据结构。以下是五层模型中每一层的PDU:
6、TCP/IP五层模型中的PDU
(1)物理层(Physical Layer)
- PDU名称:比特(Bits)
- 描述:物理层的PDU是比特流。在这一层,数据以二进制比特(0和1)的形式通过物理介质(如电缆、光纤或无线信号)传输。
(2) 数据链路层(Data Link Layer)
- PDU名称:帧(Frame)
- 描述:数据链路层的PDU称为帧。帧包含了源和目的MAC地址,以及数据链路层的控制信息。帧负责在同一局域网(如以太网)内传输数据,并提供错误检测和纠正功能。
(3) 网络层(Network Layer)
- PDU名称:数据包(Packet)
- 描述:网络层的PDU称为数据包。数据包包含源IP地址、目的IP地址等网络层的控制信息,负责将数据在不同网络之间进行路由和转发。
(4) 传输层(Transport Layer)
- PDU名称:段(Segment,TCP)或数据报(Datagram,UDP)
- 描述:传输层的PDU在使用TCP协议时称为段(Segment),使用UDP协议时称为数据报(Datagram)。这层的PDU包含端口号、序列号、校验和等信息,用于确保数据能够从源主机的应用程序传递到目的主机的应用程序,并且保证可靠性(在TCP中)。
(5) 应用层(Application Layer)
- PDU名称:报文(Message)或数据(Data)
- 描述:应用层的PDU称为报文或数据。这一层的PDU与特定的应用协议(如HTTP、SMTP等)相关,数据在这一层直接与应用程序交互。
7、各层PDU总结
层级 | PDU名称 | 描述 |
---|---|---|
物理层 | 比特(Bits) | 数据以0和1的形式在物理介质上传输。 |
数据链路层 | 帧(Frame) | 数据链路层在本地网络上传输的单元,包含源MAC地址、目的MAC地址。 |
网络层 | 数据包(Packet) | 数据在网络层传输的单元,包含IP地址,用于跨网络的路由和转发。 |
传输层 | 段(Segment,TCP)/ 数据报(Datagram,UDP) | 传输层的传输单元,包含端口号和控制信息,用于可靠传输或快速传输。 |
应用层 | 报文(Message)/数据(Data) | 应用程序之间交互的单元,根据特定的应用协议进行传输。 |
8、解释各层PDU的关系
- 在应用层,数据被生成并被打包成报文或数据,然后传递到传输层。
- 传输层将应用层的数据封装成段(TCP)或数据报(UDP),加入传输层的控制信息(如端口号和序列号)。
- 网络层进一步将传输层的段或数据报封装成数据包,并加入网络层的控制信息(如IP地址),确保数据可以跨网络传输。
- 数据链路层将数据包封装成帧,加上数据链路层的控制信息(如MAC地址),以确保数据在本地网络中传输。
- 最后,物理层将帧转换成比特流,通过物理介质进行传输。
每一层的PDU都基于上一层的PDU进行封装或解封装,这就是数据在网络中传输的完整过程。
三、数据通信
数据解封装
1、数据封装
数据封装是指在计算机网络中,数据通过各层协议传输时逐层添加控制信息的过程。每一层协议都为其上层数据添加头部或尾部信息,确保数据能够在网络中正确传输并被最终接收和处理。数据封装使得网络中的不同层次各自处理相应的任务,实现模块化和功能分离。
数据封装的过程通常遵循从应用层到物理层的顺序,每一层都封装上一层的数据为自己的协议数据单元(PDU)。数据到达接收方时,各层会按照相反的顺序逐层解封装,直到还原出原始的应用层数据。
数据封装的主要步骤如下:
(1)应用层:
- 数据生成:在应用层,用户使用的应用程序(如浏览器、邮件客户端等)生成数据。这个数据通常是报文(Message),然后应用层协议(如HTTP、FTP、SMTP等)将这些报文处理并传递到传输层。
- PDU:报文或数据。
(2)传输层:
- 添加传输层头部:传输层(TCP或UDP)将应用层的数据打包,并为其添加传输层头部(包括源端口号、目的端口号、序列号等)。如果使用的是TCP协议,还会增加序列号和校验和等信息,以提供可靠的传输。
- PDU:段(Segment,TCP)或数据报(Datagram,UDP)。
(3) 网络层:
- 添加网络层头部:网络层负责跨网络传输数据包。它会将传输层的段或数据报封装为数据包,并加上源IP地址、目的IP地址等信息。网络层协议主要是IP协议,用于在不同网络间路由数据。
- PDU:数据包(Packet)。
(4) 数据链路层:
- 添加数据链路层头部和尾部:数据链路层负责在同一局域网(如以太网、Wi-Fi)中传输数据。它会将网络层的数据包封装为帧,并加上源MAC地址、目的MAC地址等信息。数据链路层还会添加帧的尾部,用于错误检测(如CRC校验)。
- PDU:帧(Frame)。
(5) 物理层:
- 转换为比特流:物理层将数据链路层的帧转换为电信号、光信号或无线电波等,作为比特流传输。物理层负责数据在传输介质上的实际传输。
- PDU:比特(Bits)。
2、网络封装
数据链路层=局域网=以太网
以太帧最小64,最大1518
Mac地址有48位,前24为由IEEE定义规则,后24未由厂商定义位置
单播地址:给一个节点使用的,MAC地址第8为为0表示单播地址
组播地址:逻辑地址,MAC地址第8为1表示单播地址
3、交换机工作原理
学习
通过学习数据帧的源 MAC 地址来形成 MAC 地址表。
广播
若目标 MAC 地址在 MAC 地址表中没有,交挨租就向该数据倾的入接口外的其他所有接口广播该数据帧。
转发
交换机根据 MAC 地址表和自标 MAC 地址,单播转发数据帧。
更新
交换机 MAC 地址表中的转发条目是动态学习到的,老化时间是 300 秒。
如果发现一个帧的入接囗和 MAC 地址表中该源 MAC 地址所对应的接口不同,交换机将MAC 地址小新学习到新的接囗。
交换机:解决了冲突域实现了全双工
4、广播域
能接收到同样广播消息的网络节点的集合。
VLAN、LAN 和 WAN 都是网络技术的关键概念,它们涉及不同规模的网络架构和用途。让我们逐一解释它们的定义和区别:
特性 | LAN | VLAN | WAN |
---|---|---|---|
全称 | Local Area Network(局域网) | Virtual Local Area Network(虚拟局域网) | Wide Area Network(广域网) |
覆盖范围 | 单个建筑、办公室、家庭等小区域 | 逻辑划分,无需物理地理范围限制 | 城市、国家、全球范围 |
连接方式 | 有线或无线 | 基于逻辑划分,通常依赖于 LAN | 光纤、卫星、专线、VPN 等 |
速度 | 高速(100 Mbps 至 10 Gbps 以上) | 高速,依赖于底层的局域网 | 相对较慢,依赖连接类型 |
广播域 | 整个 LAN 内的设备共享广播域 | 每个 VLAN 是独立的广播域 | 广域网通常不涉及广播域问题 |
主要功能 | 设备互联和资源共享 | 通过逻辑网络隔离提高安全性和管理灵活性 | 连接地理位置分散的 LAN 网络 |
通信方式 | 内部设备直接通信 | VLAN 间通信需要路由器等三层设备 | 通过路由器、ISP 网络或互联网 |
应用场景 | 办公室、家庭 | 企业内部不同部门的网络隔离 | 企业跨地域连接、远程办公等 |
5、VLAN
ACCESS模式:接入层的接口层
默认不同的vlan之间不能ping通,可切分广播域,有效阻止广播报文的防洪
PVID (Port VLAN ID):交换机每个接口都有的一个属性,接口值就是vlan值
数据帧
标准数据帧:MAC、IP、TCP、数据、效验码
最小数据部分46,最大数据部分1500
ACCESS模式:access接口接收到标准数据帧对这个数据帧进行检测,检测这个数据帧带不带vlan值,如果不带,数据帧上会打上一个标签,标签就是这个接口的pvid地址
Vlan数据帧:MAC、IP、TCP、1、数据、效验码
四、网络协议
1、ICMP
ICMP(Internet Control Message Protocol,互联网控制消息协议)是一种网络协议,主要用于在网络设备之间传递控制信息和错误报告。ICMP 是 IP 协议的一个重要组成部分,属于网络层(Layer 3),并且通常与 IP 协议一起使用,协议号为1。
作用
为网络的连通性测试以及网络故障的定义和排查提供有效提示。
报文类型
Requset:请求 Reply:应答报文
应用
ping命令使用此协议
-t 一直ping
-c +num 指定次数
-l 指定数据包大小
ARP报文老化时间1200s
2、TCP,UDP
TCP:传输控制协议,可靠的、面向连接的协议,传输速率低
UDP:不可靠协议,传输速率高
3、STP
目的:==为了解决ARP广播报文的环路问题==
作用:==在一个环路形成后,指定哪个端口是阻塞端口==
STP协议角色
[!IMPORTANT]
1.根网桥:选一个交换机作为树的根(ROOT bridge)
2.根端口,在每个非根网桥选择一个端口作根端口(ROOT PORT RP)
3.指定端口:在每条线路上选择一个端口作为指定端口
4.阻塞端口:在一个环路里,但指定完以上三个角色后,最后剩下的端口就是阻塞端口