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

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...

MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...
python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)
更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...

有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
Java + Spring Boot + Mybatis 实现批量插入
在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法:使用 MyBatis 的 <foreach> 标签和批处理模式(ExecutorType.BATCH)。 方法一:使用 XML 的 <foreach> 标签ÿ…...