计算机网络 | 期末复习
物理层:
奈氏准则:带宽(w Hz),在不考虑噪音的情况下,最大速率(2W)码元/秒
信噪比S/N:以分贝(dB)为度量单位。信噪比(dB)=10log10(S/N)
将没有单位的S/N转换为单位为dB
香农公式(必考,结合信噪比公式):C=Wlog2(1+S/N)(bit/s)
速率=带宽*log2(1+S/N) 单位bit/s
信道复用技术
频分复用技术(FDM)Frequency Division Multiplexing
时分复用技术(TDM)Time Division Multiplexing
统计时分技术(STDM)
码分复用(CDM)Code Division Multiplexing
传输媒体:分为导引型和非导引型。
(1)导引型:
双绞线(UTP和STP):分为无屏蔽双绞线UTP和屏蔽双绞线STP,双绞线最便宜;同轴电缆(电视用的就是);光缆、光纤
(2)非导引型:
无线电波:信号向所有方向传播,穿透力强,广泛用于通信领域;
微波:信号向固定方向传播。如卫星通信,优点是距离远、覆盖广,通信容量大,缺点是受气候影响,传播时延长,误码率高,成本高。
红外线、激光:信号向固定方向传播。
宽带接入技术
ADSL:非对称数字用户线(电话线上网)
HFC(光纤同轴混合网):改造有线电视网
FTTx:双向传播,电视上网
数据链路层
两种信道
(1)点对点信道:一对一通信,采用协议数据单元(PDU)——帧
采用PPP协议
(2)广播信道:一对多通信,采用CSMA/CD协议,采用以太网帧,局域网LAN就是采用广播信道
CSMA/CD
载波监听多路访问/碰撞检测
先听后发,边听边发,冲突停止,延迟重发
多点接入:总线型网络
载波监听:不管在发送数据前,还是正在发送数据都不停地监听信道。
碰撞检测:发送前监听信道,避免冲突,发送时监听信道,如果发现有其他站在发送,就立即中断本站的发送。
争用期(2τ)又叫碰撞窗口
在争用期没有碰撞就一定不会碰撞

在(0,2的k次方-1)里面选一个数字,然后乘以争用期(2τ)
k在min(重传次数,10)
重传16次不成功则丢弃
基本退避时间为征用期2t(51.2µs),对于10Mbit/s以太网也可以说争用期是512比特时间,1比特时间就是发送1比特需要的时间。
为什么要规定最小帧长
在冲突发生时,为了使两个站点都能及时正确接受到冲突发生的信号,要满足传输一帧的时间大于2倍的信道传输时延,因为如果发送消息的时间小于2倍的信道传输时延(2倍的端到端之间的数据传播时延),则在检测到冲突之前信息就已经发送完毕,所以发送数据帧的时间应长于争用期

以太网最小帧长:64B

τ=传播距离/传播速率
最短帧长=数据率*2τ
以太网规定帧间最小间隔是9.6µs,相当于96比特时间
课后习题:3.24

以太网7B:前同步码 1B:帧开始定界符, 6B:目的地址,6B:源地址,2B:类型,46~1500B:数据,4B:FCS
以太网最短帧长64B(数据46B且不算前同步码和帧开始定界符)
其实发送:64B+8B=72B(576bit)
传播时延:225bit
最大检测时间:450bit<576bit(发送时间)
检测到碰撞前数据不会发送完毕,(如果A在发送完毕之前没有检测到碰撞,能肯定A所发送的帧不会和B发送的帧发生碰撞)
3.25

使用CSMA/CD协议时,一个站不可能同时进行发送和接收(但必须边发边监听),因此使用CSMA/CD的以太网只能进行半双工通信。
局域网:网络为一个单位所有,且地理范围和站点数目均有限。局域网可以按网络拓扑结构进行分类为:星型网(使用了集线器),总线网,环形网
局域网逻辑:总线网,物理:星型网



数据链路层的三个问题
(1)封装成帧:将网络层传来的IP数据报加上首部和尾部(帧定界符),构成一个帧
(2)透明传输:实际存在但是看不到,用字节填充法来解决透明传输转义字符的问题
(3)差错检测:不纠错,只检查错误。对错误的帧直接丢弃

最大传送单元MTU:帧的数据部分最大长度,即IP数据报的总长度(不包括帧头和帧尾!p74图3-4记清楚)。
以太网交换机(交换式集线器)工作在数据链路层。以全双工方式工作,没有碰撞问题,不使用CSMA/CD协议。之所以还叫以太网,是因为它仍然采用以太网帧结构。
以太网MAC帧to物理层:加上8字节首部!p98(在MAC帧前面再加8字节)

7B前同步码,1B帧开始定界符
6B目的 6B源地址,2B类型,46-1500B数据 4BFCS
IEEE802.3规定出现以下情况之一即为无效的MAC帧:
(1)帧的长度不是整数个字节;
(2)用收到的帧检验序列FCS查出有错;
(3)帧的数据字段不在46~1500字节之间。
虚拟局域网VLAN:将一个较大的局域网分割成一些较小的局域网,每一个小局域网是一个小的广播域。虚拟局域网只是局域网提供给用户的一种服务,而不是一种新型局域网。
虚拟局域网VLAN:将一个较大的局域网分割成一些较小的局域网,每一个小局域网是一个小的广播域。虚拟局域网只是局域网提供给用户的一种服务,而不是一种新型局域网。
以太网的适配器有过滤功能:包括三种帧——单播帧、广播帧、多播帧。
网络层
虚电路需要建立连接,数据报服务不需要建立连接

路由器之间传送的两大类信息:
转发源主机和目的主机之间的数据
传送路由信息

地址掩码(又称子网掩码):网络前缀(网络号)全为1,主机号全为0。将二进制的IP地址与地址掩码按位与AND运算(有0则0,全1为1)可以得到网络地址。

TCP报文的首部+应用层数据在IP数据报的数据部分
IP数据报的数据+首部在MAC帧的数据部分
计算机网络中MAC地址与IP地址_mac地址是数据链路层和物理层使用的地址,又称 地址;而ip地址是网络层和以上各层使-CSDN博客

地址解析协议ARP在主机ARP高速缓存中存放一个从IP地址到硬件地址的映射表,并且这个映射表还经常动态更新(新增或超时删除)。每一台主机都设有一个ARP高速缓存(ARP cache),里面有本局域网上的各主机和路由器的IP地址到硬件地址的映射表,这些都是该主机目前知道的一些地址。那么主机怎样知道这些地址呢?我们可以通过下面的例子来说明。
【网络】网络层协议ARP和IP协议转发流程_arp协议 ip转发-CSDN博客
IP数据报格式

网际控制报文协议ICMP:ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告。ICMP报文有两种:ICMP差错报告报文和ICMP询问报文。其中,ICMP差错报告报文有四种:(1)终点不可达(2)时间超过(3)参数问题(4)改变路由
路由选择协议
内部网关协议IGP:1个AS内使用。如OSPF和RIP。
外部网关协议EGP:AS之间使用。如BGP。

运输层
网络层为主机间的通信提供服务,而运输层则在网络层的基础上,为应用进程之间的通信提供服务
UDP
无连接(不需要建立连接),尽最大努力交付(不保证可靠交付)
面向报文,没有拥塞控制,支持一对一,一对多,多对一,和多对多的交互通信
首部开销小(8B)

为什么说UDP是面向报文的:
UDP对于应用层交下来的报文,不合并,并拆分,加个首部就传给IP层
所以应用程序就要选择合适的大小的报文
报文太小,会使IP首部相对长度大,降低IP层的效率;报文太大,需要进行分片,降低IP层的效率
UDP的首部


4个字段均为2B
源端口 目的端口 长度 检验和
比较MAC帧(先是目的地址,再是源地址)

TCP和UDP协议的区别以及原理_tcp和udp的区别-CSDN博客
TCP和UDP详解_tcp udp-CSDN博客
三次握手连接
四次挥手:

【通俗易懂】三次握手与四次挥手_三次握手和四次挥手-CSDN博客
TCP和UDP协议的区别以及原理_tcp和udp的区别-CSDN博客
端口号
![]()

慢开始阶段拥塞窗口是2倍增大,拥塞控制阶段是+1的增大,超时的情况拥塞窗口大跳水直接变成1,收到三个确认的情况拥塞窗口降为当前的1/2。

应用层:

相关文章:
计算机网络 | 期末复习
物理层: 奈氏准则:带宽(w Hz),在不考虑噪音的情况下,最大速率(2W)码元/秒 信噪比S/N:以分贝(dB)为度量单位。信噪比(dB)…...
动手实操微软开源的GraphRAG
微软在今年4月份的时候提出了GraphRAG的概念,然后在上周开源了GraphRAG,Github链接见https://github.com/microsoft/graphrag,截止当前,已有6900Star。 安装教程 官方推荐使用Python3.10-3.12版本,我使用Python3.10版本安装时,在…...
【网络安全】实验七(ISA防火墙的规则设置)
一、实验目的 二、配置环境 打开两台虚拟机,并参照下图,搭建网络拓扑环境,要求两台虚拟机的IP地址要按照图中的标识进行设置,并根据搭建完成情况,勾选对应选项。注:此处的学号本人学号的最后两位数字&…...
实验代码结构介绍
提高模型复用性,让模型对应的配置更加清晰,代码书写条理 学习自https://zhuanlan.zhihu.com/p/409662511 Project ├── checkpoints # 存放模型 ├── data # 定义各种用于训练测试的数据集 ├── eval.py # 测试代码 ├── loss.py # 定义的…...
Java多线程不会?一文解决——
方法一 新建类如MyThread继承Thread类重写run()方法再通过new MyThread类来新建线程通过start方法启动新线程 案例: class MyThread extends Thread {public MyThread(String name) {super(name);}Overridepublic void run() {for(int i0;i<10;i){System.out.…...
Mac上pyenv的安装及使用
Mac上pyenv的安装及使用 安装 brew update brew install pyenv 报错 git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallowgit -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow那就执行这2句 还报错 git -C /…...
【SpringBoot】IDEA查看spring bean的依赖关系
前因:研究springcloud config组件时,我发现config-server包下的EnvironmentController不在扫描的包路径下却可以响应客户端的请求,这引起了我的注意,我的问题是:EnvironmentController是怎么被添加进bean工厂的。本章就…...
项目代码优化(1)——下单逻辑
给一个电商开发的系统排查,发现漏洞很多。很多经验不够的开发者很容易忽视的逻辑错误陷阱。在给一个项目做二次开发时候,检测到的相关经典案例。这里整理支付和产品相关的逻辑,方便后续查看。,这里进行一些简单的逻辑漏洞梳理与修…...
探索 WebKit 的缓存迷宫:深入理解其高效缓存机制
探索 WebKit 的缓存迷宫:深入理解其高效缓存机制 在当今快速变化的网络世界中,WebKit 作为领先的浏览器引擎之一,其缓存机制对于提升网页加载速度、减少服务器负载以及改善用户体验起着至关重要的作用。本文将深入探讨 WebKit 的缓存机制&am…...
JVM:介绍
文章目录 一、什么是JVM二、JVM的功能1、解释和运行2、内存管理3、即时编译 三、常见的JVM四、Java虚拟机规范五、HotSpot发展历程 一、什么是JVM JVM的全称为Java Virtual Machine,Java虚拟机。本质上是一个运行在计算机上的程序,职责是运行Java字节码…...
和鲸“101”计划领航!和鲸科技携手北中医,共话医学+AI 实验室建设及创新人才培养
为进一步加强医学院校大数据管理与应用、信息管理与信息系统,医学信息工程等专业建设,交流实验室建设、专业发展与人才培养经验,6 月 22 日,由北京中医药大学(简称“北中医”)主办,上海和今信息…...
Linux 网络抓包工具tcpdump编译
tcpdump 的编译步骤 1. 下载源代码 访问 tcpdump 的官方网站(如:http://www.tcpdump.org/)下载最新的源代码压缩包,如tcpdump-4.9.2.tar.gz(注意版本号可能会有所不同)。 2. 解压缩源代码 使用 tar 命令…...
『C++成长记』string模拟实现
🔥博客主页:小王又困了 📚系列专栏:C 🌟人之为学,不日近则日退 ❤️感谢大家点赞👍收藏⭐评论✍️ 目录 一、存储结构 二、默认成员函数 📒2.1构造函数 📒2.…...
【c++】C++ IO流
本专栏内容为:C学习专栏,分为初阶和进阶两部分。 通过本专栏的深入学习,你可以了解并掌握C。 💓博主csdn个人主页:小小unicorn ⏩专栏分类:C 🚚代码仓库:小小unicorn的代码仓库&…...
解密智慧校园基础数据的学年管理功能
在智慧校园平台中,学年管理模块构成了教育活动有序运行的基石,它精心设计来适应多样化的学术日程,确保学校的各项事务都能在清晰规划的学年框架内顺利推进。这一核心功能不仅关乎时间的界定,更深层次地融入了教育管理的每一个细微…...
Python酷库之旅-第三方库Pandas(009)
目录 一、用法精讲 19、pandas.read_xml函数 19-1、语法 19-2、参数 19-3、功能 19-4、返回值 19-5、说明 19-6、用法 19-6-1、数据准备 19-6-2、代码示例 19-6-3、结果输出 20、pandas.DataFrame.to_xml函数 20-1、语法 20-2、参数 20-3、功能 20-4、返回值 …...
VPN 的入门介绍
VPN(虚拟专用网络) 简介 虚拟专用网络,简称虚拟专网(VPN),其主要功能是在公用网络上建立专用网络,进行加密通讯。在企业网络中有广泛应用。VPN网关通过对数据包的加密和数据包目标地址的转换实…...
移动UI: 什么特征会被认为是简洁风格,用案例告诉你
什么是简洁风格,恐怕一百个人有一百个是理解,本文通过理论分析案例的方式进行探讨。 移动 UI 中的简洁风格通常具有以下几个特征: 1. 平面化设计: 简洁风格的移动 UI 善于运用平面化设计,即去除过多的阴影、渐变和立…...
除了伦敦外,英国还有这些热门留学城市
在同学们选择出国留学时,首先要考虑到的便是择校的问题。除了排名、专业、录取要求之外,城市因素也占据了很大比重。 抛开学校自身的优势外,一座城市的氛围、成本、环境都是需要考虑的因素。下面就我们来盘点一下英国热门的留学城市。 爱丁…...
2390. 从字符串中移除星号
2390. 从字符串中移除星号 题目链接:2390. 从字符串中移除星号 代码如下: class Solution { public:string removeStars(string s) {vector<char> sta;for(int i0;i<s.size();i){if(s[i]*) {sta.pop_back();}else {sta.push_back(s[i])…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...
SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
掌握 HTTP 请求:理解 cURL GET 语法
cURL 是一个强大的命令行工具,用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中,cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...
快速排序算法改进:随机快排-荷兰国旗划分详解
随机快速排序-荷兰国旗划分算法详解 一、基础知识回顾1.1 快速排序简介1.2 荷兰国旗问题 二、随机快排 - 荷兰国旗划分原理2.1 随机化枢轴选择2.2 荷兰国旗划分过程2.3 结合随机快排与荷兰国旗划分 三、代码实现3.1 Python实现3.2 Java实现3.3 C实现 四、性能分析4.1 时间复杂度…...
高效的后台管理系统——可进行二次开发
随着互联网技术的迅猛发展,企业的数字化管理变得愈加重要。后台管理系统作为数据存储与业务管理的核心,成为了现代企业不可或缺的一部分。今天我们要介绍的是一款名为 若依后台管理框架 的系统,它不仅支持跨平台应用,还能提供丰富…...
用 FFmpeg 实现 RTMP 推流直播
RTMP(Real-Time Messaging Protocol) 是直播行业中常用的传输协议。 一般来说,直播服务商会给你: ✅ 一个 RTMP 推流地址(你推视频上去) ✅ 一个 HLS 或 FLV 拉流地址(观众观看用)…...
