计算机网络 | 期末复习
物理层:
奈氏准则:带宽(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])…...

UNION、UNION ALL、INTERSECT、MINUS
UNION、UNION ALL、INTERSECT、MINUS? 说明 UNION:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;IUNION ALL:对两个结果集进行并集操作,包括重复行,不进行排序&am…...

Perl 语言开发(九):深入探索Perl语言的文件处理
目录 1. 文件打开与关闭 1.1 打开文件 1.2 关闭文件 2. 读取文件内容 2.1 逐行读取 2.2 一次性读取整个文件 3. 写入文件内容 3.1 覆盖写入 3.2 追加写入 4. 文件测试操作 4.1 文件测试运算符 5. 文件路径操作 5.1 文件路径处理模块 5.2 获取文件路径信息 6. 文…...

稀疏之美:在Mojo模型中实现特征的稀疏表示
稀疏之美:在Mojo模型中实现特征的稀疏表示 在机器学习领域,特征的稀疏表示是一种高效的数据编码方式,尤其适用于具有大量特征和缺失值的数据集。稀疏表示使用特殊的数据结构来存储和处理数据,从而减少内存占用和提高计算效率。Mo…...

如何大幅减少 Vue.js 中的包大小和加载时间,提升用户体验!
大家好,我是CodeQi! 一位热衷于技术分享的码仔。 你知道吗,根据Google 的一项研究,如果网站加载时间超过 3 秒,53% 的移动用户会离开该网站? 性能优化是一个经常讨论的话题,但很多开发人员并不关心提高应用的速度。 在前端开发中,优化包大小和加载时间对于提升用户体…...

性能测试相关理解---性能测试流程(二)
六、性能测试流程(如何做性能测试?) 根据学习全栈测试博主的课程做的笔记 1、前期准备– 项目初期就开始,业务需求评审时尽量参与,对业务更深刻的认识(确定哪些是核心业务、哪些可能存在并发请求、确定什么地方会出现瓶颈,方便后…...

GD32 MCU ADC采样率如何计算?
大家在使用ADC采样的时候是否计算过ADC的采样率,这个问题非常关键! 以下为GD32F303系列MCU中有关ADC的参数,其中ADC时钟最大值为40MHz,12位分辨率下最大采样率为2.86MSPS.如果ADC时钟超频的话,可能会造成ADC采样异常&…...

.mkp勒索病毒:深度解析与防范
引言: 在数字化时代,网络安全问题日益严峻,其中勒索病毒作为一种极具破坏性的恶意软件,严重威胁着个人用户和企业机构的数据安全。在众多勒索病毒家族中,.mkp勒索病毒以其强大的加密能力和广泛的传播方式,成…...

5.opencv深浅拷贝
图像处理的复制操作 深浅拷贝 图像复制分成两种,第一种假复制,从原图片选择一部分图片拿出来观察,此时新生成的图片和原图实际上是同一张图片,即浅拷贝 将图片的一部分复制下来,放到新的内存中,即两张完全…...

C++11中新特性介绍-之(二)
11.自动类型推导 (1) auto类型自动推导 auto自动推导变量的类型 auto并不代表某个实际的类型,只是一个类型声明的占位符 auto并不是万能的在任意场景下都能推导,使用auto声明的变量必须进行初始化,以让编译器推导出它的实际类型,…...

STM32实现看门狗(HAL库)
文章目录 一. 看门狗1. 独立看门狗(IWDG)1.1 原理1.2 相关配置1.3 相关函数 2. 窗口看门狗(WWDG)2.1 原理2.2 相关配置2.3 相关函数 一. 看门狗 单片机在日常工作中常常会因为用户配置代码出现BUG,而导致芯片无法正常工…...