计算机网络——链路层(1)

计算机网络——链路层(1)

  • 小程一言
    • 专栏链接: [link](http://t.csdnimg.cn/ZUTXU)
    • 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家, [跳转到网站](https://www.captainbed.cn/qianqiu)
  • 链路层
    • 概述
      • 常见协议
      • 主要作用
      • 总结
    • 差错检测和纠正技术
      • 差错检测技术方法
      • 总结
    • 多路访问链路和协议
      • 常见的多路访问链路和协议
      • 总结
    • 交换局域网(计算机网络自顶向下参考书加入)
      • 工作原理
      • 优点
      • 总结
    • 链路虚拟化(了解)
      • 通过技术实现
      • 优点
      • 总结

小程一言

我的计算机网络专栏,是自己在计算机网络学习过程中的学习笔记与心得,在参考相关教材,网络搜素的前提下,结合自己过去一段时间笔记整理,而推出的该专栏,整体架构是根据计算机网络自顶向下方法而整理的,包括各大高校教学都是以此顺序进行的。
面向群体:在学计网的在校大学生,工作后想要提升的各位伙伴,

专栏链接: link

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家, 跳转到网站

在这里插入图片描述

链路层

在这里插入图片描述

概述

计算机网络中的链路层负责在相邻节点之间传输数据帧。链路层主要包括物理层和数据链路层两个子层。

物理层负责传输数据比特流,包括传输介质、接口、传输速率等物理特性。数据链路层则负责将数据帧从一个节点传输到另一个节点,包括数据帧的封装、帧同步、流量控制、差错检测和纠正等功能。

常见协议

以太网、无线局域网(Wi-Fi)、蓝牙、PPP(点对点协议)、HDLC(高级数据链路控制)等

主要作用

实现可靠的数据传输,并提供了数据链路的逻辑和物理连接。

总结

链路层在计算机网络中起着连接相邻节点、传输数据帧和控制数据流的重要作用,是网络通信中不可或缺的一部分。
在这里插入图片描述

差错检测和纠正技术

在计算机网络中,差错检测和纠正技术是非常重要的,它们可以帮助网络系统检测和纠正数据传输过程中可能出现的错误,确保数据的完整性和可靠性

差错检测技术方法

  • 常见的是循环冗余校验(CRC)和校验和。
  • CRC是一种基于多项式的差错检测方法,通过对数据进行除法运算并将余数附加到数据末尾,接收方可以利用余数来检测出数据传输中是否出现了差错。
  • 校验和则是一种简单的差错检测方法,它将数据进行求和运算并将结果附加到数据末尾,接收方可以通过重新计算校验和并与接收到的校验和进行比较来检测差错。
  • 差错纠正技术则是指在检测到差错后,可以通过一定的方法来对数据进行修正,以保证数据的正确性。
  • 常见的差错纠正技术包括海明码和纠删码。
    1.海明码是一种能够检测并纠正多位差错的编码技术,它通过对数据进行编码并添加冗余位来实现差错检测和纠正。
    2.纠删码则是一种能够检测并纠正数据丢失和差错的编码技术,它通过对数据进行编码并添加冗余信息来实现数据的纠正和恢复。
    在这里插入图片描述

总结

差错检测和纠正技术在计算机网络中起着至关重要的作用,它们可以帮助网络系统确保数据传输的可靠性和完整性,提高网络的性能和可靠性。

多路访问链路和协议

多路访问是指多个节点共享同一条通信链路的技术。这种技术可以有效地提高网络资源的利用率,实现多个节点之间的数据传输。
在这里插入图片描述

常见的多路访问链路和协议

CSMA/CD、CSMA/CA、TDMA和CDMA等。

  1. CSMA/CD
    是一种常见的多路访问协议,它主要用于以太网中。在CSMA/CD中,节点在发送数据之前会先监听信道,如果信道空闲,则节点可以发送数据;如果信道被占用,节点会等待一段随机的时间后再次监听。如果多个节点同时发送数据导致碰撞,节点会停止发送并等待一段随机的时间后再次发送。这样可以避免碰撞,提高网络的效率。

  2. CSMA/CA
    是另一种多路访问协议,主要用于无线局域网(WLAN)中。与CSMA/CD不同的是,CSMA/CA在发送数据前会发送一个RTS(Request to Send)信号,接收方在收到RTS后回复CTS(Clear to Send)信号,表示信道空闲,发送方才可以发送数据。这样可以避免碰撞,提高了无线网络的效率。

  3. TDMA和CDMA
    是另外两种多路访问技术。在TDMA中,时间被划分成多个时隙,不同节点在不同的时隙中发送数据,从而避免碰撞。而在CDMA中,不同节点使用不同的码来进行数据传输,接收方可以通过解码来获取自己需要的数据,从而实现多路访问。
    在这里插入图片描述

总结

多路访问链路和协议在计算机网络中扮演着重要的角色,它们可以有效地提高网络资源的利用率,实现多个节点之间的数据传输,从而提高网络的效率和可靠性。

交换局域网(计算机网络自顶向下参考书加入)

交换局域网是指在局域网中使用交换机来实现数据传输和通信的网络。交换局域网的特点是具有高速低延迟高效的数据传输能力,能够满足局域网中大量数据传输的需求。

在交换局域网中,交换机起着关键的作用。交换机是一种网络设备,可以根据目的地址将数据包从一个端口转发到另一个端口,从而实现数据传输。交换机可以根据数据包的目的地址和端口的状态来决定数据包的转发路径,从而实现高效的数据传输。
在这里插入图片描述

工作原理

当一台计算机发送数据包时,交换机会根据目的地址将数据包转发到目标计算机所在的端口,而不会广播到整个网络中。这样可以避免网络拥堵和数据碰撞,提高数据传输的效率和稳定性。

优点

高速、低延迟、高效和可靠的数据传输能力,可以满足局域网中大量数据传输的需求。而且,交换局域网还支持多种网络协议和服务,可以实现多种应用和服务的需求。

总结

交换局域网通过使用交换机来实现高效的数据传输和通信,提高了局域网的性能和稳定性,满足了局域网中大量数据传输的需求。
在这里插入图片描述

链路虚拟化(了解)

链路虚拟化是指通过软件技术将物理网络链路划分成多个独立的虚拟链路,使得不同的网络流量可以在同一物理链路上进行独立传输,从而实现对网络资源的更有效利用和管理。

通过技术实现

包括虚拟局域网(VLAN)、虚拟私有网络(VPN)、虚拟链路聚合(VLA)、虚拟链路交换(VLS)、虚拟链路路由(VLR)等。这些技术可以在不同的网络设备上实现,如交换机、路由器、防火墙等。

优点

提高网络资源的利用率、降低网络管理成本、增强网络安全性等。它也可以为不同的网络应用提供更灵活的网络配置和管理方式,从而更好地满足不同用户的需求。

总结

链路虚拟化是计算机网络中非常重要的一项技术,它可以为网络的性能、安全性和管理提供更多的选择和灵活性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/368193.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[每日一题] 02.03 - 质因数分解

质因数分解 枚举到n的平方根(得包括平方根) 偶数去除 import math n int(input()) if n % 2 0:print(max(n // 2,2)) else:for i in range(3,int(math.sqrt(n)) 1,2):if n % i 0:print(max(n // i,i))

2023年度总结 | 关于意义,爱与回望——写给清醒又无知的20岁

Hi,大家好,我是半亩花海,一名再普通不过的大学生。2023年,20岁,充实而零乱的一年,清醒又无知的一年。年末,最近的一些事儿也让我逐渐地有感而发,心静,除杂,思…

redis布隆过滤器(Bloom)详细使用教程

文章目录 布隆过滤器1. 原理2. 结构和操作3. 特点和应用场景4. 缺点和注意事项 应用-redis插件布隆过滤器使用详细过程安装以及配置springboot项目使用redis布隆过滤器下面是布隆过滤器的一些基础命令 扩展 布隆过滤器 Bloom 过滤器是一种概率型数据结构,用于快速判…

在低代码平台上实现精益软件开发:提高效率与灵活性的关键实践

什么是精益软件开发? 精益软件开发是一种敏捷的软件开发框架。它基于最小化浪费和最大化价值的原则。该框架基于最小可行产品策略运行,该策略强调交付具有基本基本功能的产品,然后根据收到的反馈进行迭代以即兴发挥并提供卓越。 精益软件开发…

编译opencv4.6问题汇总,第三方软件包见我发的资源

win10系统 python3.8.2,cmake-3.15.5-win64-x64,opencv4.6 编译方式见:OpenCV的编译 - 知乎 本文主要总结问题。赠人玫瑰手留余香。 问题1 Problem with installing OpenCV using Visual Studio and CMake (error code: MSB3073) 解决方法…

魔改冰蝎 —— 绕过检测,自动生成免杀后门

为什么要魔改工具? 生成的代码很容易被监测 生成的后门很容易被杀软杀掉 了解冰蝎流量特征 开启http代理,数据经过BP抓包进行分析数据 冰蝎数据包分析: 1、三个请求头固定 AcceptAccept-LanguageUser-Agent(内部有十个&a…

VSCODE使用ssh远程连接时启动服务器失败问题

错误情况 ping服务器的ip可通并且使用terminal可以ssh连接到远程服务器。但使用vscode的remote-ssh时,在「输出」栏出现了一直报 Waiting for server log… 的情况! 解决方法一 重置服务器设置,包括以下手段: 1.清理服务器端的…

问题:测风站应设置在平直的巷道中,其前后()范围内不得有障碍物和拐弯等局部阻力。 #微信#媒体

问题:测风站应设置在平直的巷道中,其前后()范围内不得有障碍物和拐弯等局部阻力。 参考答案如图所示

windows安装配置anaconda 创建并激活自己的虚拟环境(亲测可行,装不好你打我)

一.下载 选择一:进入清华镜像选择过去的版本 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 本人电脑配置不高,并且一般过去的版本比较稳定,因此保守起见选择2022年5月的版本。 选择二:进入官网,下载最…

备战蓝桥杯---搜索(应用基础1)

话不多说&#xff0c;直接看题&#xff1a; 显然&#xff0c;我们直接用深搜&#xff0c;我们可以先把空位用结构体存&#xff0c;然后打表存小方块&#xff0c;再用数组存行列。 下面是AC代码&#xff1a; #include<bits/stdc.h> using namespace std; int a[12][12];…

【Python小游戏】五子棋小游戏(完整代码)

文章目录 写在前面Tkinter简介五子棋小游戏游戏介绍程序设计运行结果注意事项写在后面写在前面 本期内容:基于tkinter开发一个五子棋小游戏 实验环境 python3.11及以上pycharmtkinterTkinter简介 Tkinter是Python中最常用的图形用户界面(GUI)库之一,用于创建窗口、对话框…

SqlSever查询某个表的列名称、说明、备注、注释,类型等信息

背景:在工程项目中,有时需要对数据查询进行展示,常规的表格展示虽然能解决大部分问题;但在数据量比较大的情况就如果一次完整的展示信息,势必会造成数据加载中增加耗时,影响数据的展示效果;常规的解决方案都是在数据加载中采取分页的模式,降低数据的加载耗时;但如果要…

Servlet(未完结~)

文章目录 前言1 Servlet简介2 Servlet初识2.1 Servlet开发流程2.2 配置欢迎页 3 Servlet案例开发!3.1 开发登录页3.2 开发后台Servlet3.3 配置Servlet 4 HttpServletRequest4.1 回顾http请求4.2 自定义servlet流程图4.3 HttpServletRequest4.4获取请求行信息4.5获取请求头信息4…

【成品论文57页】2024美赛F题成品论文57页+每一小问配套代码数据

基于数据预测下的减少非法野生动物贸易研究 近年来&#xff0c;非法野生动物贸易每年涉及的金额高达 265 亿美元&#xff0c;被认为是全球第四大 非法贸易。本文基于收集的数据&#xff0c; 对非法野生动物贸易进行研究。 问题一&#xff0c;为了确定五年项目的研究对象我们利用…

Python Moviepy 视频编辑踩坑实录2:音频如何修改为单通道

一、前言&#xff1a; 通过上一篇博文的处理&#xff0c;《Python Moviepy 视频编辑踩坑实录1&#xff1a;谁动了我的音频比特率》我们成功的把音频文件的音频采样率&#xff0c;成功的转化为了目标值&#xff1a;16000&#xff0c;但是接下来遇到了&#xff0c;下面的问题&am…

给大家分好类!看下C++ STL标准模板库,有哪些模板容器类?

C STL&#xff08;Standard Template Library&#xff09;标准模板库&#xff0c;提供了多种容器&#xff0c;这些容器可用于存储和操作数据。 本文对一些常见的 C STL 容器做个简单分类&#xff0c;方便大家根据不同项目需要进行选择使用。 01 序列容器&#xff1a; std::v…

【SpringBoot】 热部署 ContextRefresher.refresh() 自定义配置一键刷新 ~

前言 在实际项目中&#xff0c;有时候我们希望能够在不重启应用的情况下动态修改Spring Boot的配置&#xff0c;以便更好地应对变化的需求。本文将探讨如何通过从数据库动态加载配置&#xff0c;并提供一键刷新的机制来实现这一目标。 背景 最近的项目中&#xff0c;我遇到了…

Deepin如何开启与配置SSH实现无公网ip远程连接

文章目录 前言1. 开启SSH服务2. Deppin安装Cpolar3. 配置ssh公网地址4. 公网远程SSH连接5. 固定连接SSH公网地址6. SSH固定地址连接测试 前言 Deepin操作系统是一个基于Debian的Linux操作系统&#xff0c;专注于使用者对日常办公、学习、生活和娱乐的操作体验的极致&#xff0…

Bagging的随机森林;Boosting的AdaBoost和GBDT

集成学习应用实践 import numpy as np import os %matplotlib inline import matplotlib import matplotlib.pyplot as plt plt.rcParams[axes.labelsize] 14 plt.rcParams[xtick.labelsize] 12 plt.rcParams[ytick.labelsize] 12 import warnings warnings.filterwarnin…

java学习(面向对象基础)

一、继承(代码复用性&#xff09; 继承可以解决代码复用&#xff0c;让我们的编程更加靠近人类思维&#xff0c;当多个类存在相同的属性&#xff08;变量&#xff09;和方法时&#xff0c;可以从这些类中抽象出父类&#xff0c;在父类中定义这些相同的属性和方法&#xff0c;所…