当前位置: 首页 > news >正文

软件设计师——计算机网络学习笔记

一、计算机网络

网络基础

1. 计算机网络的分类

在这里插入图片描述

2. 网络拓扑结构

总线型(利用率低、干扰大、价格低)
星型(交换机形成的局域网、中央单元负荷大)
环型(流动方向固定、效率低扩充难)
树型(总线型的扩充、分级结构)
分布式(任意节点连接、管理难成本高)
在这里插入图片描述
一般来说,办公室局域网是星型拓扑结构,中间节点就是交换机,一旦交换机损坏,整个网络都瘫痪了,这就是星型结构。同理,由路由器连接起来的小型网络也是星型结构。

3. OSI参考模型

OSI层功能单位设备
物理层负责比特流在物理介质上的传输,包括电压、线速、针脚等电气特性。比特(Bit)网卡、中继器、集线器
数据链路层帧传输、错误检测与纠正、MAC寻址帧(Frame)交换机、网桥
网络层负责逻辑寻址和路由选择,实现不同网络间的数据包传输。数据包(Packet)路由器、三层交换机
传输层端到端连接、流量控制、可靠性保障段(Segment,TCP)或数据报网关、防火墙
会话层建立、管理、终止会话数据(Data)不常见(软件实现为主)
表示层数据格式转换、加密/解密、压缩数据(Data)软件协议栈
应用层直接为用户应用提供服务,如文件传输、电子邮件等。数据(Data)代理服务器、应用网关

由低层到高层分别为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层(速记词:巫术忘传会飙鹰)。

网络设备

1. 网卡(Network Interface Card, NIC)

网卡是计算机与网络之间的硬件接口,负责将数据转换为电信号或光信号进行传输。功能包括物理地址(MAC地址)识别、数据封装与解封装、流量控制等。有线网卡通过RJ-45接口连接网线,无线网卡通过天线接收Wi-Fi信号。


2. 中继器(Repeater)

中继器工作在物理层,用于放大或再生网络信号以延长传输距离。作用仅限于信号增强,不改变数据内容,也无法识别数据包的目标地址。中继器功能单一,无法隔离冲突域或广播域。


3. 集线器(Hub)

集线器是物理层设备,功能类似于多端口中继器。所有连接到集线器的设备共享同一冲突域,数据广播到所有端口,缺乏定向传输能力。因其效率低,现代网络已逐渐被交换机取代。


4. 网桥(Bridge)

网桥工作在数据链路层,用于连接两个MAC层协议相同的网络(局域网)并过滤流量。通过MAC地址表学习目标设备位置,仅转发目标地址在另一端的帧,从而减少不必要的广播流量。


5. 交换机(Switch)

交换机是高性能的网桥升级版,在数据链路层转发数据帧,基于MAC地址进行点对点通信。每个端口独立构成冲突域,支持全双工通信。通过MAC地址表实现点对点数据传输,显著提升网络效率。交换机隔离冲突域,但默认不隔离广播域(除非使用VLAN)


6.路由器(Router)

路由器工作在网络层(OSI第三层),负责在不同网络间转发数据包。功能包括IP地址寻址、路由选择(如OSPF、BGP协议)、NAT(网络地址转换)和防火墙基础防护。路由器处理IP地址,而交换机处理MAC地址。


7.网关(Gateway)

网关是高层协议转换设备,工作于传输层及以上(OSI第四至七层)。用于连接不同协议的网络(如TCP/IP与SNA),或实现应用层协议转换(如邮件网关)。广义上,路由器也可视为一种网关。


8.防火墙(Firewall)

防火墙是网络安全设备,工作层次从网络层到应用层不等。监控进出网络的数据流,基于规则允许或拦截流量。功能包括:

  • 包过滤:基于IP、端口等规则阻止非法流量。
  • 状态检测:跟踪连接状态以识别异常会话。
  • 应用层防护:深度检测HTTP、FTP等协议内容。
  • VPN支持:加密远程访问流量。
    可分为硬件防火墙(如企业级设备)和软件防火墙(如Windows Defender)。

网络协议

1. TCP/IP协议

在这里插入图片描述

2. 常见网络协议端口号及作用

端口号协议名称作用
20/21FTP文件传输协议(20用于数据传输,21用于控制连接)
22SSH安全外壳协议,用于加密远程登录和管理
23Telnet远程登录协议(明文传输,安全性较低)
25SMTP简单邮件传输协议,用于发送邮件
53DNS域名系统协议,用于域名解析
67/68DHCP动态主机配置协议(67为服务器端,68为客户端)
80HTTP超文本传输协议,用于网页浏览
110POP3邮局协议版本3,用于接收邮件
143IMAP互联网消息访问协议,用于邮件管理(比POP3更高级)
161SNMP简单网络管理协议,用于网络设备监控和管理
443HTTPS安全的HTTP协议,通过SSL/TLS加密传输数据
465SMTPS加密的SMTP协议(基于SSL)
587SMTP(提交)邮件提交端口(通常与STARTTLS加密配合使用)
993IMAPS加密的IMAP协议(基于SSL/TLS)
995POP3S加密的POP3协议(基于SSL/TLS)
3306MySQLMySQL数据库默认端口
3389RDP远程桌面协议,用于Windows远程访问
5432PostgreSQLPostgreSQL数据库默认端口
5900VNC虚拟网络计算协议,用于远程桌面控制
6379RedisRedis数据库默认端口

** 网际层协议**
IP 的主要功能包括将上层数据(如TCP、UDP数据)或同层的其他数据(如ICMP数据)封装到IP数据中;将IP数据报送到最终目的地;为据报到达其他网络中的目的地的路径。
地址解析协议ARP的作用是将IP地址转换为物理地址,反地址解析协议RARP的作用是将物理地址转换为IP地址。
Internet 控制信息协议(ICMP)是网际层的另一个比较重要的协议。由于 IP 是一种尽力传送的通信协议,即传送的数据报可能会丢失、重复、延迟或乱序,因此IP需要一种避免差错并在发生差错时报告的机制。ICMP就是一个专门用于发送差错报文的协议。ICMP定义了五种差错报文(源抑制、超时、目的不可达、重定向和要求分段)和四种信息报文(回应请求、回应应答、地址屏蔽码请求和地址屏蔽码应答)。
传输层协议
传输控制协议TCP是TCP/IP 协议族中最重要的协议之一,利用TCP在源主机和目的机之间建立和关闭连接操作时,均需要通过三次握手来确认建立和关闭是否成功,如图10-7所示。
在这里插入图片描述
用户数据报协议UDP是一种不可靠、无连接的协议。UDP协议软件的主要作用是将UDP消息展示给应用层,并不负责重新发送丢失或出错的数据消息,不对接收到的无序IP数据报重新排序,不消除重复的IP数据报等。

常用的网络诊断命令

ping: 用于测试与目标主机的连通性和延迟。发送ICMP回显请求包,接收回显应答包。
tracert: 追踪数据包从源到目标的路径,显示经过的每一跳(路由器)及延迟。
nslookup: 查询DNS记录,验证域名解析是否正常。
netstat: 显示网络连接、路由表、接口统计等信息。
ipconfig: 查看或配置网络接口信息(IP地址、子网掩码、网关等)。

IP

1. IP地址

计算机存放的IP地址是 32位的二进制代码,每隔8位插入一个空格,可提高可读性,为了便于理解和设置,一般会采用点分十进制方法来表示:将32位二进制代码每8位二进制转换成一进制,就变成了4个十进制数,而后在每个十进制数间隔中插入.如下所示
在这里插入图片描述
Internet中的地址可以分为五类:A类、B类、C类、D类和E类,各类地址分配方案如图。
在这里插入图片描述
在这里插入图片描述
特殊地址:
在这里插入图片描述
169.254 是自动专用IP地址,当DHCP故障时为主机分配的临时IP地址
主机位:全0是本地网络地址,全1是广播地址,其他是主机地址。

2. 子网掩码

子网掩码(Subnet Mask)是一种32位的二进制数字,用于划分IP地址的网络部分和主机部分。它与IP地址结合使用,通过逻辑“与”运算确定网络地址。子网掩码由连续的1和连续的0组成,1表示网络位,0表示主机位。

IP地址类别默认子网掩码IP地址范围
A类255.0.0.01.0.0.1 - 126.255.255.254
B类255.255.0.0128.0.0.1 - 191.255.255.254
C类255.255.255.0192.0.0.1 - 223.255.255.254

子网掩码通常有两种表示形式:

  • 点分十进制:如255.255.255.0,对应二进制为11111111.11111111.11111111.00000000。
  • CIDR斜线表示法:如/24,表示掩码中1的个数为24位。

3. 子网划分

我们一般采用子网划分的方法来划分网络,将主机号拿出几位作为子网号,就可以划分出多个子网,此时IP地址组成为:网络号+子网号+主机号。(本质还是保留了分类编址结构)
网络号和子网号都为1,主机号都为0,这样的地址为子网掩码。

如何判断两个IP地址是否在同一网段?

只需要确定其网络号+子网号是否相同,可以将子网掩码和源IP地址进行与运算,得出网络地址,判断网络地址是否相同即可。网络号不同的主机属于不同的网段,不能直接通信,必须通过网络路由才能互相通信。
要注意的是:子网号可以为全0和全1,主机号不能为全0或全1,因此,在计算时,主机数需要 - 2,而子网数不用。

特殊情况处理
如果子网掩码不同,即使IP地址看起来相似,也可能不在同一网段。例如:
IP地址1:192.168.1.10,子网掩码:255.255.0.0,网络地址:192.168.0.0
IP地址2:192.168.1.20,子网掩码:255.255.255.0,网络地址:192.168.1.0
此时网络地址不同,不在同一网段。

http://www.xdnf.cn/news/1346311.html

相关文章:

  • 华为网路设备学习-29(BGP协议 四)路由策略-实验
  • 分段渲染加载页面
  • 【LeetCode 热题 100】139. 单词拆分——(解法一)记忆化搜索
  • 浏览器开发CEFSharp+X86+win7(十三)之Vue架构自动化——仙盟创梦IDE
  • STM32F1 EXTI介绍及应用
  • 光耦合器:电子世界的 “光桥梁“
  • ZYNQ启动流程——ZYNQ学习笔记11
  • X00238-非GNSS无人机RGB图像卫星图像视觉定位python
  • 25年8月通信基础知识补充1:中断概率与遍历容量、Sionna通信系统开源库、各种时延区分
  • Android 16环境开发的一些记录
  • Prometheus+Grafana监控redis
  • 制造企业用档案宝,档案清晰可查
  • 81 柔性数组造成的一些奇怪情况
  • 农业-学习记录
  • 关于 WebDriver Manager (自动管理浏览器驱动)
  • 当下一次攻击发生前:微隔离如何守护高敏数据,防范勒索攻击下的数据泄露风险!
  • 一、Python IDLE安装(python官网下的环境安装)
  • 腾讯云EdgeOne安全防护:快速上手,全面抵御Web攻击
  • Datawhale AI夏令营---coze空间共学
  • 【图像算法 - 21】慧眼识虫:基于深度学习与OpenCV的农田害虫智能识别系统
  • 关于日本服务器的三种线路讲解
  • 在自动驾驶中ESKF实现GINS时,是否将重力g作为变量考虑进去的目的是什么?
  • ASPICE过程能力确定——度量框架
  • Unity--判断一个点是否在扇形区域里面(点乘和叉乘的应用)
  • 视觉语言大模型应用开发——基于 CLIP、Gemini 与 Qwen2.5-VL 的视频理解内容审核全流程实现
  • ref 简单讲解
  • flutter geolocator Android国内定位失败问题解决
  • JVM 调优全流程案例:从频繁 Full GC 到百万 QPS 的实战蜕变
  • 【大模型本地运行与部署框架】Ollama的cmd常用命令
  • Linux 软件编程(九)网络编程:IP、端口与 UDP 套接字