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

DJ1-3 计算机网络和因特网

目录

一、物理介质

1. 双绞线

2. 同轴电缆

3. 光纤线缆

4. 无线电磁波

二、端系统上的 Internet 服务

1. 面向连接的服务

TCP(Transmission Control Protocol)

2. 无连接的服务

UDP(User Datagram Protocol)

TCP 和 UDP 的应用场景

三、网络核心部分

1. 电路交换

2. 报文交换

3. 分组交换

4. 比较分组交换与电路交换

5. 总结:网线的分类


一、物理介质

  • 物理链路:在发送方和接收方之间传播位(bit)信号。
  • 导引型媒体:信号在固态介质中有向传播, 如:光纤、双绞线、同轴电缆等。
  • 非导引型媒体:信号在大气空间或外太空空间自由传播,如:无线电等。

光纤(光)、双绞线(电)、同轴电缆(电)、无线电(电磁波)

1. 双绞线

是指两根彼此绝缘且相互缠绕成螺旋状的铜线。缠绕的目的是减少电磁干扰,提高传输质量。

  • 屏蔽双绞线(STP,Shielded Twisted Pair)      
  • 非屏蔽双绞线(UTP,Unshielded Twisted Pair)

一根网线共有 4 对双绞线,即 8 根线,两端需要连接水晶头。

参考视频:双绞线及七类水晶头压接讲解_哔哩哔哩_bilibili

拓展知识 1

最开始,若想在端系统 A 和 B 之间传输信息,则必须根据双绞线引脚功能进行配对,即 A 的输出必须配对 B 的输入,从而在两者之间形成交叉线。再后来,使用网卡即可自适应地调整引脚功能,从而在两者之间使用直通线。

  • 交叉线:同一根网线的两端使用不同的线序,即一端使用 568A,一端使用 568B 。
  • 直通线:同一根网线的两端使用相同的线序,即两端都使用 568A 或 568B 。

拓展知识 2

由于双绞线传输的是电信号,而电信号在传输过程中会产生损耗,因此在工程布线中,要求双绞线的长度 ≤ 100m 。

2. 同轴电缆

是指两根彼此绝缘的同心导体。

双向传输

3. 光纤线缆

光纤传导光脉冲,每个光脉冲代表 1 位。

  • 高速传输:高速点对点传输,可达数十或数百 Gbps 。
  • 低误码率:中继到更远传输距离。
  • 防止电磁干扰,难以被分光窃听。

单模光纤纤芯细,对光的入射角有严格的要求。

  • 由于光信号几乎按直线传播,因此传得又远又快。
  • 由于光信号入射角相同,因此不会出现弯道超车的情况。

多模光纤纤芯粗,对光的入射角没有那么高的要求。

  • 由于光信号有多种入射角,因此可能出现弯道超车的情况。
  • 为避免弯道超车,就需要增大两次传输之间的间隔时间,从而导致带宽减小。

另一种分类方式:根据纤芯数量,分为单芯光纤和多芯光纤。

4. 无线电磁波

是指以电磁频谱承载信号。

  • 没有物理连线
  • 双向传输
  • 受传播环境的影响

多路径衰落(干扰物表面反射)、盲区衰落(障碍物绕/透)、干扰(其它电磁信号)。

无线链路的类型有:

  • 地面微波
  • 局域无线通道
  • 广域无线通道
  • 卫星通道

二、端系统上的 Internet 服务

1. 面向连接的服务

目的:在端系统间传送数据。

握手:客户和服务器事先进入戒备状态,为接下来的分组交换做好准备。流程如下。

在两个端系统之间建立连接。

TCP(Transmission Control Protocol)

TCP 具有 4 大特性:

  • 属于 Internet 的面向连接的服务。
  • 可靠、顺序(编号)、字节流传输:解决数据错误、丢失(确认和重传)、时延等问题。
  • 流量控制:解决速率不匹配问题,发送方不至于淹没接收方。
  • 拥塞控制:当网络拥塞时发送者降低发送速率。

字节流传输是指采用没有边界的数据发送,其对立面为数据报传输。流量控制还能解决接收方缓冲能力有限,导致丢包的问题。

2. 无连接的服务

目的:在端系统间传送数据。

UDP(User Datagram Protocol)

  • 属于 Internet 的无连接服务
  • 不可靠数据传输
  • 无流量控制
  • 无拥塞控制

优点:由于传输时不需等待,因此传输速度更快,从而其实时性更好。

TCP 和 UDP 的应用场景

使用 TCP 的网络应用

  • HTTP(Web)
  • FTP(file transfer)
  • Telnet(remote login)
  • SMTP(email)

使用 UDP 的网络应用

  • 流媒体
  • 视频会议
  • DNS
  • Internet 电话

三、网络核心部分

网络核心部分是由相互连接的路由器构成的网络。基本原理有:

  • 电路交换:每次会话预留沿其路径(线路)所需的独占资源,如:电话网。
  • 分组交换:数据以离散的数据块通过网络来发送。

报文交换的出现时间位于两者之间。

1. 电路交换

1M 为带宽,单位为 bps 。显然这种独占会导致资源浪费,因此引入分片和多路复用。

① 要求呼叫建立

  • 建立一个专门的端到端线路,意味着每个链路上预留一个线路

② 将网络资源(如:链路带宽)分片。

  • 频分(frequency division)
  • 时分(time division)

③ 采用多路复用(Multiple Access)的方式。

  • 分片分配到会话
  • 分片没有被会话使用的情况下,分片空载(不共享)

④ 电路级性能得到保证。

频分(FDMA)和时分(TDMA)

频分采用并行方式,因此无延迟。时分采用串行方式,因此需要等待;可通过减小单位时间来减少等待时间。

假设单位时间为 1s,将每个 1s 的 0-0.1s 分配给 “由 A 传输给 B”,即分配一个固定的时隙给 “由 A 传输给 B”。

电路交换举例

从主机 A 到主机 B 经一个电路交换网络需要多长时间发送一个 640Kb 的文件?假设所有链路都是 1.536 Mbps,每个链路使用 TDM 划分成 24 个时隙,创建一条端到端的链路需要 500msec 。

2. 报文交换

报文:用户一次传输的数据总量。

假设 A 的报文比 C 的报文早一位到达 R1,则 C 需要等待 10s 直到 A 的报文传输完毕才能传输。此外,若 A 的数据出错,则 B 只能丢掉全部数据,进行重传,C 需要再等待 10s 。

根源在于:没有限制报文的大小。

3. 分组交换

(1)每个端到端的数据流被划分成分组

  • 所有分组共享网络资源
  • 每个分组使用链路全部带宽
  • 按需使用网络资源

(2)采用统计复用

在统计复用中,A 和 B 的分组没有固定的顺序;在时分复用中,每个主机获得各 TDM 循环帧的固定时隙。

(3)存在资源竞争

① 资源需求总量可以大于可获得资源的总量

② 拥塞:采用分组队列,等待使用链路。

③ 存储转发:分组每次转发 1 站。

  • 所有分组均在同 1 个链路上传输
  • 每经过 1 个链路就转发 1 次
  • 转发分组前,要求收到完整分组

  • 存在同一个分组跨越两个路由器
  • 不存在同一个分组跨越两段通信链路

(4)分组交换网络的分类

① 数据报网络:TCP/IP

  • 分组目的地址决定下一跳
  • 会话期间路由可以改变
  • 比方:驱车逐段问路

不记录状态信息,不建立连接。

② 虚电路网络:X.25、FR、ATM

  • 每个分组有 1 个标签(虚电路号,virtual circuit ID),标签决定下 1 跳
  • 连接建立时确定固定的路径,并且将保持于整个会话期间
  • 路由器必须为每个连接维护状态信息

虚电路网络模拟电路交换但不会独占资源。

4. 比较分组交换与电路交换

假设 n 个用户共享 1Mbps 的通信链路,每个用户在活动期所需的传输率为 100Kbps,且只有 10% 的时间活动。

对于电路交换

如果有 10 位用户使用该通信链路。

浪费资源。

对于分组交换

如果有 35 位用户使用该通信链路,则同时有 10 位以上活动用户的概率小于 0.0004 。

能够满足。

分组交换允许更多的用户使用网络!

分组交换是最后的赢家吗?

优点:

  • 适合大量的突发数据传输
  • 资源共享
  • 简单, 不需要建立连接

缺点:

  • 过度竞争导致分组延迟与丢失
  • 需要可靠数据传输、拥塞控制协议

问题:如何提供电路级的性能?

  • 对于音视频的网络应用需要带宽保障
  • 仍然是 1 个没有解决的问题(教材 CH9)

5. 总结:网线的分类

虚电路网络一定是面向连接的。

数据报网络既可以提供面向连接的服务,也可以提供无连接的服务。

如:Internet 为网络应用既提供面向连接的传输服务(TCP),也提供无连接的传输服务(UDP)。

相关文章:

DJ1-3 计算机网络和因特网

目录 一、物理介质 1. 双绞线 2. 同轴电缆 3. 光纤线缆 4. 无线电磁波 二、端系统上的 Internet 服务 1. 面向连接的服务 TCP(Transmission Control Protocol) 2. 无连接的服务 UDP(User Datagram Protocol) TCP 和 UD…...

Git学习笔记(六)-标签管理

发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签…...

Semaphore 源码解读

一、Semaphore Semaphore 通过设置一个固定数值的信号量,并发时线程通过 acquire() 获取一个信号量,如果能成功获得则可以继续执行,否则将阻塞等待,当某个线程使用 release() 释放一个信号量时,被阻塞的线程则可以被唤…...

RZ/G2L工业核心板U盘读写速率测试

1. 测试对象HD-G2L-IOT基于HD-G2L-CORE工业级核心板设计,双路千兆网口、双路CAN-bus、2路RS-232、2路RS-485、DSI、LCD、4G/5G、WiFi、CSI摄像头接口等,接口丰富,适用于工业现场应用需求,亦方便用户评估核心板及CPU的性能。HD-G2L…...

《SQL与数据库基础》18. MySQL管理

SQL - MySQL管理MySQL管理系统数据库常用工具mysqlmysqladminmysqlbinlogmysqlshowmysqldumpmysqlimportsource本文以 MySQL 为例 MySQL管理 系统数据库 Mysql数据库安装完成后,自带了以下四个数据库,具体作用如下: 数据库含义mysql存储My…...

达梦关系型数据库

达梦关系型数据库一、DM8 安装1. 安装包下载2. Docker 安装3. Linux 安装4. Windows 安装二、DM 管理工具三、命令行交互工具 DIsql四、DM8 SQL使用1. 创建模式2. 创建表3. 修改表4. 读写数据5. 查看库下所有的表名6. 查看表字段信息GitHub: link. 欢迎star国产自主研发的大型…...

Postgresql | 执行计划

SQL优化主要从三个角度进行: (1)扫描方式; (2)连接方式; (3)连接顺序。 如果解决好这三方面的问题,那么这条SQL的执行效率就基本上是靠谱的。看懂SQL的执行计…...

Vue3之父子组件通过事件通信

前言 组件间传值的章节我们知道父组件给子组件传值的时候,使用v-bind的方式定义一个属性传值,子组件根据这个属性名去接收父组件的值,但是假如子组件想给父组件一些反馈呢?就不能使用这种方式来,而是使用事件的方式&a…...

在云服务器安装tomcat和mysql

将 linux 系统安装包解压到指定目录进入 bin 目录执行./startup.sh 命令启动服务器执行./shutdown.sh 关闭服务器在浏览器中访问虚拟机中的 tomcat ip端口具体操作入下解压tomcat压缩包解压,输入tom按table键自动补全tar -zxvf 启动tomcat进入bin目录在linux启动to…...

IO多路复用(select、poll、epoll网络编程)

目录一、高级IO相关1.1 同步通信和异步通信1.2 阻塞与非阻塞1.3 fcntl 函数二、五种IO模型2.1 阻塞式IO模型2.2 非阻塞式IO模型2.3 多路复用IO模型2.4 信号驱动式IO模型2.5 异步IO模型三、认识IO多路复用四、select4.1 认识select函数4.2 select函数原型4.3 select网络编程4.4 …...

Spark单机伪分布式环境搭建、完全分布式环境搭建、Spark-on-yarn模式搭建

搭建Spark需要先配置好scala环境。三种Spark环境搭建互不关联,都是从零开始搭建。如果将文章中的配置文件修改内容复制粘贴的话,所有配置文件添加的内容后面的注释记得删除,可能会报错。保险一点删除最好。Scala环境搭建上传安装包解压并重命…...

C++网络编程(一)本地socket通信

C网络编程(一) socket通信 前言 本次内容简单描述C网络通信中,采用socket连接客户端与服务器端的方法,以及过程中所涉及的函数概要与部分函数使用细节。记录本人C网络学习的过程。 网络通信的Socket socket,即“插座”,在网络中译作中文“套接字”,应…...

【Docker】Linux下Docker安装使用与Docker-compose的安装

【Docker】的安装与启动 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sudo yum install docker-cesudo systemctl enable dockersudo systemct…...

构造函数与普通函数,显式原型与隐式原型,原型与原型链

原型与原型链1 学前先了解一些概念1.1 构造函数和普通函数的区别1.1.1 调用方式1.1.2 函数中this的指向不同1.1.3 写法不同1.2 问题明确2 原型与原型链2.1 原型2.2 显式原型与隐式原型2.3 原型链3 原型链环形结构1 学前先了解一些概念 1.1 构造函数和普通函数的区别 构造函数…...

跨过社科院与杜兰大学金融管理硕士项目入学门槛,在金融世界里追逐成为更好的自己

没有人不想自己变得更优秀,在职的我们也是一样。当我们摸爬滚打在职场闯出一条路时,庆幸的是我们没有沉浸在当下,而是继续攻读硕士学位,在社科院与杜兰大学金融管理硕士项目汲取能量,在金融世界里追逐成为更好的自己。…...

macOS 13.3 Beta 3 (22E5236f)With OpenCore 0.9.1开发版 and winPE双引导分区原版镜像

原文地址:http://www.imacosx.cn/112494.html(转载请注明出处)镜像特点完全由黑果魏叔官方制作,针对各种机型进行默认配置,让黑苹果安装不再困难。系统镜像设置为双引导分区,全面去除clover引导分区&#x…...

InceptionTime 复现

下载数据集: https://www.cs.ucr.edu/~eamonn/time_series_data/ 挂梯子,开全局模式即可 配置环境 虚拟环境基于python3.9, tensorflow下载:pip install tensorflow,不需要tensorflow-gpu(高版本python&…...

谷粒学院开发(二):教师管理模块

前后端分离开发 前端 html, css, js, jq 主要作用:数据显示 ajax后端 controller service mapper 主要作用:返回数据或操作数据 接口 讲师管理模块(后端) 准备工作 创建数据库,创建讲师数据库表 CREATE TABLE edu…...

2021牛客OI赛前集训营-提高组(第三场) T4扑克

2021牛客OI赛前集训营-提高组(第三场) 题目大意 小A和小B在玩扑克牌游戏,规则如下: 从一副52张牌(没有大小王)的扑克牌中随机发3张到每个玩家手上,每个玩家可以任意想象另外两张牌&#xff0…...

【OJ比赛日历】快周末了,不来一场比赛吗? #03.11-03.17 #12场

CompHub 实时聚合多平台的数据类(Kaggle、天池…)和OJ类(Leetcode、牛客…)比赛。本账号同时会推送最新的比赛消息,欢迎关注!更多比赛信息见 CompHub主页 或 点击文末阅读原文以下信息仅供参考,以比赛官网为准目录2023-03-11&…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度

文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...

Linux 中如何提取压缩文件 ?

Linux 是一种流行的开源操作系统,它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间,使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的,要在 …...

LRU 缓存机制详解与实现(Java版) + 力扣解决

📌 LRU 缓存机制详解与实现(Java版) 一、📖 问题背景 在日常开发中,我们经常会使用 缓存(Cache) 来提升性能。但由于内存有限,缓存不可能无限增长,于是需要策略决定&am…...

Qemu arm操作系统开发环境

使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...

前端开发者常用网站

Can I use网站:一个查询网页技术兼容性的网站 一个查询网页技术兼容性的网站Can I use:Can I use... Support tables for HTML5, CSS3, etc (查询浏览器对HTML5的支持情况) 权威网站:MDN JavaScript权威网站:JavaScript | MDN...

英国云服务器上安装宝塔面板(BT Panel)

在英国云服务器上安装宝塔面板(BT Panel) 是完全可行的,尤其适合需要远程管理Linux服务器、快速部署网站、数据库、FTP、SSL证书等服务的用户。宝塔面板以其可视化操作界面和强大的功能广受国内用户欢迎,虽然官方主要面向中国大陆…...