草庐IT

什么是多接入边缘计算(MEC)?一文读懂!

佚名 2023-03-28 原文
MEC允许服务提供商将计算流程转移到边缘,以获得更好的性能、延迟和安全性。

什么是多接入边缘计算(MEC)?

多接入边缘计算(MEC)是一种网络架构,允许计算、网络和移动服务提供商将一些计算和基于云的流程转移到网络环境的边缘,从而实现更好的性能、延迟和安全性。

多接入边缘计算(MEC)是由欧洲电信标准协会(ETSI)提出的一个想法或概念。与数据中心不同,这种网络架构在网络边缘提供用户所需的服务和云计算操作,更接近最终用户。MEC的含义可分解如下:

  1. 多接入:MEC曾经被称为移动边缘计算。后来,ETSI MEC委员会将“多接入”替换“移动”。当电信网络发展到5G时,它可以容纳和统一管理不同的接入技术。多接入允许MEC系统通过客户选择的技术为客户访问网络提供无缝体验。
  2. 边缘:将网络操作和应用重新定位到网络边缘可以实现超低延迟。例如,当服务器和运营商的主要网络网关都位于住所附近时,流量可以在本地进行管理,而无需担心流量和处理时间线。
  3. 计算能力:网络的计算能力向网络边缘分布。这些技术包括视频编解码器、3D图形建模、视频分析和人工智能。
边缘计算是在用户或数据源的实际位置或附近发生的计算。MEC是面向服务提供商的边缘计算应用。

随着服务提供者从物理设备过渡到基于服务的体系结构,将出现了一种分离,使移动工作负载能够在更大的生态系统中运行。当移动任务被放置在远离环境的地方,比如在基站或访问层,并且当它与用户发起的工作负载相匹配时,由此产生的计算活动比以前更接近用户。

许多服务提供商正在将工作负载和服务从网络的核心(数据中心)转移到网络的边缘,转移到现有站点或中心办公室。当服务提供商将移动工作负载迁移到更靠近客户端,以提高吞吐量并减少延迟时,就会出现多接入边缘计算。

为什么需要MEC?

当应用程序可以在使用其地方附近运行时,其性能会得到增强,并且处理活动也会更快地完成。多接入边缘计算设置提供超低延迟和高带宽,以及应用程序可能实时使用的数据和无线网络数据。这是MEC最大的优势。

RAN功能的改进是应该使用MEC的另一个原因。无线接入网(RAN)是终端用户设备和运营商网络其余部分之间的关键连接点。RAN将终端用户设备与运营商提供的服务连接起来,包括语音、数据和OTT应用(如视频流媒体)或医疗保健服务(如远程医疗),这些应用为服务提供商带来收入。

MEC实现使RAN可供批准的应用开发人员和内容供应商使用,使用户能够在应用层以及网络操作和数据处理的较低级别部署边缘计算。

服务提供商将成为高密度设置多接入边缘计算的早期用户,例如体育场馆和初始5G部署。例如,制造业中的物联网(IoT)网关是MEC实现的理想选择。

MEC的主要特点

多接入边缘计算(MEC)具有以下主要特征:

1、接近最终用户

MEC在信息源附近收集关键数据进行分析或处理,消除了将信息传回核心站点的需求。它还允许在移动网络组件的“顶部”托管应用和服务,即在网络层之上。这些应用和服务可能受益于接近客户端,并从本地无线网络获取上下文信息。

2、数据传输延迟低

通常,多接入边缘计算网络的延迟小于20毫秒。这加快了响应速度并增强了客户体验。它通过使网络设备更接近最终用户来减少网络延迟。在边缘,诸如图形处理单元(GPU)、现场可编程门阵列(FPGA)和专用集成电路(ASIC)等加速器可以减少计算延迟。

3、实时应用的适用性

MEC适用于需要近实时或实时决策和结果管理的应用。凭借如此低的延迟,企业可以轻松地访问接近实时的数据传输和分析。实时细分应用案例包括AR/VR汽车、工业4.0、物联网智能城市等。MEC适用于不能容忍延迟超过10到20毫秒的实时应用。

4、不间断运行能力

边缘应用是本地化的,这使得它们可以独立于网络的其余部分运行,即使从核心中移除。这表明,如果正确实现该技术,多接入边缘计算可能是非常可靠和安全的。

5、与现有应用的互操作性

2017年,欧洲电信标准协会(ETSI)的多接入边缘计算行业规范小组(MEC ISG)发布了首个标准化应用编程接口(API)包,可实现MEC互操作性。MEC不需要将应用集成或转移到新环境,从而实现更高效的开发和部署。

6、更高程度的虚拟化

MEC还在网络外围提供云计算和IT服务景观。云的资源可以位于任何地方,包括集中式数据中心、蜂窝站点、中心节点、聚合器站点、城市数据中心或客户场所。软件定义的访问层可能被用作分布式云的增强。

大多数边缘计算项目使用开源硬件和软件来利用云和虚拟化原理,如软件定义网络(SDN)和网络服务虚拟化(NFV)。

MEC的9个示例

多接入边缘计算(MEC)提供了一种环境,使应用能够更快地处理任务。它有助于在应用中实现低延迟、高带宽、实时访问数据和无线网络信息的环境,从而使之能够更好地执行。MEC的一个关键用例是5G网络。让我们来看看5G和其他一些如何使用MEC的示例:

1、增强5G的力量

作为5G部署的一部分,服务提供商将被要求虚拟化功能,以简化网络运营,提高网络的灵活性和可靠性,并使之能够开发新的功能和服务。MEC是满足5G技术的吞吐量和延迟需求,同时增强用户体验的一种手段。

MEC和5G可以合作提供新的服务和应用。MEC平台是实现5G提供的增值应用或“智能”服务的平台。例如,将在MEC平台上安装AI/ML应用。

2、优化视频传输

MEC可以在应用中实施,使用传输控制协议(TCP)的吞吐量指导来优化最终用户视频流。HTTP直播流(HLS)是一种基于TCP传输协议的常用视频流协议,用于直播和点播。HLS会降低或提高流的质量,因为TCP流的可用带宽取决于客户端设备的基础网络条件。

TCP中的网络拥塞会导致数据包丢失和严重的延迟,从而导致网络资源的低效使用和应用性能的降低。MEC为后端视频服务器提供关于特定时间间隔内估计的可用吞吐量信息的近实时数据。有了这些信息,视频服务器可以协助TCP拥塞控制决策,从而提高网络资源的使用。这种效率的提高可以优化视频传输,并在流媒体视频时提供更好的用户体验。

3、本地缓存病毒内容

病毒内容在同一地理区域内被多个用户在同一时间多次消费,增加了网络带宽的压力。因此,宽带网络的容量成为一个瓶颈。本地缓存内容可以提高消费者的体验质量(QoE)和服务质量(QoS),同时还可以节省回程容量需求。

授权的MEC应用可用于本地存储在特定地理区域经常使用的内容。一旦发出请求,使用者就可以从应用的本地缓存访问内容。这种技术最大限度地减少了在核心网络上传输内容可能导致的额外延迟,从而增强了消费者的QoE。

4、支持增强现实(AR)、虚拟现实(VR)和认知辅助

游戏、房地产、健康和健身以及远程工作领域的技术进步增加了对AR和VR应用的需求。这些是低延迟的沉浸式应用,可以在MEC主机上或直接在客户端设备上实现MEC应用。这些应用具有延迟、计算和存储资源等要求,用户每次发出请求时都必须这些要求。

应用程序中的MEC系统负责选择满足其所有要求的MEC主机。它还确保客户端设备与移动网络环境之间的连接,即使条件发生变化。例如,当访问本地存储的应用程序的用户想要访问位于云环境中的另一个应用程序时,MEC系统会确保保持连接。

5、简化游戏体验

游戏行业正经历着对专业和业余游戏的巨大需求。游戏是电脑、智能手机和游戏机上非常流行的应用程序。需要网络连接的网络游戏有时会因为滞后而导致糟糕的用户体验。游戏延迟是由于游戏试图从核心网络之外的服务器访问数据而导致的。

将MEC解决方案集成到游戏中提供了一个平台,可以将游戏服务器应用程序定位在离无线电更近的地方,从而降低延迟值并增强应用的性能。MEC应用还可以处理其他需求,例如存储和计算能力。此外,MEC解决方案即使在基础条件发生变化时,例如当用户不断移动时,也能保持客户端设备和游戏应用程序之间的连接。

6、位置跟踪

位置跟踪涉及使用地理定位算法,来跟踪已开启全球定位系统(GPS)的有源设备的实时和基于网络测量的位置。组织可以将MEC解决方案与有源设备位置跟踪服务集成,以提高效率。

MEC应用可以从客户端设备收集与位置相关的信息,处理和执行数据分析,并将数据发送给所需方。位置跟踪是一种高效且可扩展的解决方案,组织可以将其应用于人群管理、校园管理、智慧城市以及提供量身定制的广告。

7、去重网络流量

许多用户依靠智能手机或电脑在网上访问类似的内容。通常,流量会重复出现,因为多个用户都在观看来自社交媒体平台或内容提供商(例如Netflix、Instagram或Tiktok)的相同热门节目。流量去重允许使用更少的计算资源更有效地使用这些平台。

流量去重技术包括压缩器和解压缩器两个功能。这些功能识别流量中的重复模式,然后将其存储在离用户较近的解压缩器中。重复的流量模式由压缩器识别,压缩器发送与存储在解压缩器中的特定模式匹配的索引。

MEC解决方案服务使解压缩器能够执行流量路由。它们还允许解压缩检测重复模式,存储并重建原始内容。

8、实现车辆与基础设施之间的通信

在车辆和路边设备之间交换重要的安全和操作信息,可以提高运输系统的安全性和效率。远程信息处理应用包括从车辆和路边传感器收集信息的算法,以提前检测高风险情况,并向该地区附近的车辆发送警报。

企业可以使用MEC来扩大覆盖范围,通过将汽车连接到高度分布式的移动网络环境来收集和分析更多的数据。MEC使路边应用能够接收更多车辆和路边传感器的数据,并对其进行分析,并以极低的延迟向附近的车辆发送警告。低延迟使驾驶员能够快速接收信息,从而立即做出挽救生命的决定。

9、协调边缘传输的视频广播

组织者可以在大型体育场和音乐会中应用边缘视频编排,多个终端用户可以实时接收来自体育场摄像机的直播视频流。用户可以从不同的摄像角度访问视频,并查看提供的回放。边缘视频编排应用与MEC解决方案集成,以增强这些应用的性能。MEC平台将数据流量从摄像头和传感器路由到视频编排应用和最终用户。

MEC最佳实践和技巧

以下是在准备采用MEC时要记住的五个最佳实践。

1、仔细考虑用例

确定能够从集成MEC解决方案中获益的应用。MEC解决方案适用于需要低延迟的应用,如游戏、VR、AR和实时视频分析。这种最佳实践是至关重要的,因为MEC需要大量的初始投资。

2、配置现有应用以利用MEC潜力

开发人员应该配置应用,将部分计算负载卸载到MEC应用,以增强所选应用的性能。例如,MEC服务允许在网络边缘处理实时视频处理等任务,从而减轻中央数据中心的负载。因此,中央数据中心被释放出来执行其他任务,从而提高整体运营效率。

3、利用MEC提高网络安全性

用户可以使用MEC来提高在计算机网络中传输的敏感数据的安全性。MEC允许用户将信息存储在更靠近网络边缘的地方,这通常比中央数据中心更安全,而中央数据中心更容易受到拒绝服务攻击。MEC解决方案还在网络边缘提供了额外的保护层。因此,它们将数据泄露的风险降至最低,并确保数据安全。因此,将MEC纳入网络安全策略是必不可少的最佳实践。

4、将MEC定位为对消费者差异化价值主张的一部分

MEC有助于优化网络性能,这应该成为服务价值主张的一部分。网络运营商可以通过集成MEC解决方案来执行流量去重和流量路由等任务。这将确保其消费者通过网络请求信息时,可以快速访问来自各种网站或应用程序的信息,从而提高消费者的满意度。

5、将MEC与业务关键型应用程序和流程相结合

为需要最大可用性的业务关键型应用程序实现MEC是一种最佳实践。这样就可以确定该技术的投资回报率。MEC将资源分布在多个MEC节点上。它还允许应用程序能够执行流量路由,以优化发送数据包的最佳路由。因此,MEC在最大限度地减少业务应用的中断和停机时间方面发挥着重要作用。

充分利用MEC的技巧

以下是在实施MEC后充分利用MEC的进一步提示:

  1. 定期监控和优化应用程序和网络中的MEC性能,以确保它始终满足应用程序和消费者的需求。
  2. 紧跟最新的MEC技术和最佳实践,以确保从解决方案中获得最佳效果。
  3. 确保MEC架构的设计和配置支持本地化内容和服务,如本地内容缓存或活动设备位置跟踪。
  4. 设计一个弹性平台,在不影响网络可用性的情况下满足应用的高可用性需求。确保有一个故障安全机制,以便在出现故障的情况下将消费者的中断降至最低。
MEC是全球网络发展的下一步。它将允许运营商分散计算资源的压力,从而使数据中心不会紧张。在沉浸式技术、物联网激增和人工智能无处不在的时代,MEC有潜力改变用户体验互联网服务的方式,尽管它是在后台工作!

有关什么是多接入边缘计算(MEC)?一文读懂!的更多相关文章

  1. ruby - 为什么我可以在 Ruby 中使用 Object#send 访问私有(private)/ protected 方法? - 2

    类classAprivatedeffooputs:fooendpublicdefbarputs:barendprivatedefzimputs:zimendprotecteddefdibputs:dibendendA的实例a=A.new测试a.foorescueputs:faila.barrescueputs:faila.zimrescueputs:faila.dibrescueputs:faila.gazrescueputs:fail测试输出failbarfailfailfail.发送测试[:foo,:bar,:zim,:dib,:gaz].each{|m|a.send(m)resc

  2. ruby-on-rails - Rails - 子类化模型的设计模式是什么? - 2

    我有一个模型:classItem项目有一个属性“商店”基于存储的值,我希望Item对象对特定方法具有不同的行为。Rails中是否有针对此的通用设计模式?如果方法中没有大的if-else语句,这是如何干净利落地完成的? 最佳答案 通常通过Single-TableInheritance. 关于ruby-on-rails-Rails-子类化模型的设计模式是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

  3. ruby - 什么是填充的 Base64 编码字符串以及如何在 ruby​​ 中生成它们? - 2

    我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%

  4. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  5. ruby - 为什么 4.1%2 使用 Ruby 返回 0.0999999999999996?但是 4.2%2==0.2 - 2

    为什么4.1%2返回0.0999999999999996?但是4.2%2==0.2。 最佳答案 参见此处:WhatEveryProgrammerShouldKnowAboutFloating-PointArithmetic实数是无限的。计算机使用的位数有限(今天是32位、64位)。因此计算机进行的浮点运算不能代表所有的实数。0.1是这些数字之一。请注意,这不是与Ruby相关的问题,而是与所有编程语言相关的问题,因为它来自计算机表示实数的方式。 关于ruby-为什么4.1%2使用Ruby返

  6. ruby-on-rails - 使用一系列等级计算字母等级 - 2

    这里是Ruby新手。完成一些练习后碰壁了。练习:计算一系列成绩的字母等级创建一个方法get_grade来接受测试分数数组。数组中的每个分数应介于0和100之间,其中100是最大分数。计算平均分并将字母等级作为字符串返回,即“A”、“B”、“C”、“D”、“E”或“F”。我一直返回错误:avg.rb:1:syntaxerror,unexpectedtLBRACK,expecting')'defget_grade([100,90,80])^avg.rb:1:syntaxerror,unexpected')',expecting$end这是我目前所拥有的。我想坚持使用下面的方法或.join,

  7. ruby - ruby 中的 TOPLEVEL_BINDING 是什么? - 2

    它不等于主线程的binding,这个toplevel作用域是什么?此作用域与主线程中的binding有何不同?>ruby-e'putsTOPLEVEL_BINDING===binding'false 最佳答案 事实是,TOPLEVEL_BINDING始终引用Binding的预定义全局实例,而Kernel#binding创建的新实例>Binding每次封装当前执行上下文。在顶层,它们都包含相同的绑定(bind),但它们不是同一个对象,您无法使用==或===测试它们的绑定(bind)相等性。putsTOPLEVEL_BINDINGput

  8. ruby - Infinity 和 NaN 的类型是什么? - 2

    我可以得到Infinity和NaNn=9.0/0#=>Infinityn.class#=>Floatm=0/0.0#=>NaNm.class#=>Float但是当我想直接访问Infinity或NaN时:Infinity#=>uninitializedconstantInfinity(NameError)NaN#=>uninitializedconstantNaN(NameError)什么是Infinity和NaN?它们是对象、关键字还是其他东西? 最佳答案 您看到打印为Infinity和NaN的只是Float类的两个特殊实例的字符串

  9. ruby-on-rails - 如果 Object::try 被发送到一个 nil 对象,为什么它会起作用? - 2

    如果您尝试在Ruby中的nil对象上调用方法,则会出现NoMethodError异常并显示消息:"undefinedmethod‘...’fornil:NilClass"然而,有一个tryRails中的方法,如果它被发送到一个nil对象,它只返回nil:require'rubygems'require'active_support/all'nil.try(:nonexisting_method)#noNoMethodErrorexceptionanymore那么try如何在内部工作以防止该异常? 最佳答案 像Ruby中的所有其他对象

  10. ruby - 为什么 SecureRandom.uuid 创建一个唯一的字符串? - 2

    关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭8年前。Improvethisquestion为什么SecureRandom.uuid创建一个唯一的字符串?SecureRandom.uuid#=>"35cb4e30-54e1-49f9-b5ce-4134799eb2c0"SecureRandom.uuid方法创建的字符串从不重复?

随机推荐