0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AWS、Azure、Google,VPC哪个厉害?

SSDFans 来源:ssdfans 作者:ssdfans 2020-12-03 14:17 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

故事的开始是这样的,遇到有人说他们想要去了解AWS的VPC的技术细节,然后说要在AWS的公有云上创建几个实例,希望通过抓包来分析AWS的VPC的实现细节。当时我就忍不住跳出来说,如果AWS的VPC可以提供这么的功能的话,他们的实现细节岂不早被人学会了。毕竟,VPC是基于overlay的网络,在三层的物理网络上实现一个大二层的专用网络,如果能看到物理三层的东西的话,岂不是太不安全了。

但是,后来的发展的确说明我可能想的太多,因为AWS的确从2015年开始就提供了VPC Flow Log[1]这样的服务。当然,大家也不要想太多,这个功能的目的主要是提供给大规模上云的用户来做自家的VPC内的网络故障排除的。如果AWS真的说可以让你抓到ENA上的网络包,建议你三思。

VPC的故事和其他人一样都是从OVS+VXLAN开始的,如下图。

AWS的服务提供如下的几种类型:

Accepted and rejected Traffic

No data and skipped records

Security group and network ACL rules

IPv6 traffic

TCP flag sequence

Traffic through a NAT gateway

Traffic through a transit gateway

需要注意的事,AWS说提供的是VPC Flow的信息,也就可以认为这个信息只能是一跳的内容,和传统的wireshark的TCP session还是不同的。

关于AWS的VPC log的格式以及使用场景,AWS一如既往地提供了详细文档,就不赘述了。其中有意思的点如下:

当创建一个客户可定制的flow log时候的选项包含:

${version} ${account-id} ${interface-id} ${srcaddr} ${dstaddr} ${srcport} ${dstport} ${protocol} ${packets} ${bytes} ${start} ${end} ${action} ${log-status} ${instance-id} ${subnet-id} ${vpc-id} ${pkt-srcaddr} ${pkt-dstaddr} ${tcp-flags} ${type}

其中,version 2和3 的区别:2是AWS default设置,并保存在S3上。3是客户定制的。

其中的两项需要多说一下:

pkt-srcaddr 和pkt-dstaddr. 当ena有多个IP地址,或者和NAT网关连接的时候,使用缺省的log的格式,其中的IP信息其实是不正确的,这个使用这个字段来提供正确的信息。

看了老大的服务,老二Azure肯定也要了解一下。[2] Azure毕竟是software公司出身,相对AWS的简单的CSV格式,提供了基于JSON的输出,而且比较合理地做了进一步的整合,提供了flowtuples的方式可以把一个TCPsession多个flow 保留在一起。因为包含了两个方向的,因此package_send有了两个方向的内容。

正因为做了聚合,因此不需要AWS那个相对比较别扭的pkt_srcaddr和pkt_destaddr. 和AWS相比,没有包含帐号信息,感觉是对于一个具体的VPC的subnetwork的flow信息。AWS 的格式则是包含了一个帐号内的一个VPC网络的子网内的一个EC2实例上的一个ENA网卡的包信息。

对于另一个巨头Google来讲,简直把这个log玩出了花[3]。因为google号称可以实现跨数据中心的迁移,因为在Flow log中包含了太多的信息。特别贴心的是有个五元组的结构,估计查询上肯定极为舒适。

不仅包含了实例的信息,源和目的的都有:

InstanceDetails 字段格式

字段 类型 说明
project_id 字符串 包含虚拟机的项目的 ID
vm_name 字符串 虚拟机的实例名称
region 字符串 虚拟机所在的地区
zone 字符串 虚拟机所在的区域

同时还包含了地理信息,对,你没看错:

GeographicDetails 字段格式

字段 类型 说明
continent 字符串 外部端点所在的大洲
country 字符串 外部端点所在的国家/地区,采用 ISO 3166-1 Alpha-3 国家/地区代码的形式表示。
region 字符串 外部端点所在的地区
city 字符串 外部端点所在的城市
ASN int32 此端点所属外部网络的自治系统编号 (ASN)。

当然Google的内部的cluster和pod的信息也不隐藏了。

只能说Google把一个VPC日志能够包含的,VPC可能涉及的,可以透露的信息都提供了。

而且,大家都知道Google喜欢RTT,他同样提供一个

rtt_msec int64
延迟基于时间间隔测量,仅适用于 TCP 流。测量延迟是发送 SEQ 和接收相应的 ACK 之间所经历的时间。延迟结果是网络 RTT 与应用所耗用的时间之和。

这个,可以算是很多网管都感兴趣的信息吧。

回到国内的公有云,目前能够拿到详细信息的有aliyun[4]和华为云。

浓浓的AWS风格,这个也没错,毕竟云业务要做到简单,可靠,耐操。毕竟云用户中不懂JSON和递归结构的才是优质客户。

华为云:

没有使用AWS和aliyun那种直接,扁平的方式,而是和Google一样加了一个project的概念来提供VPC中的subnetwork的信息。

最后,看到公有云上面玩的这么花,其实硬件厂家是拒绝的。network switch肯定也可以做,但是如果能做到Google这样的per cluster和pod,估计在现有架构上就难了。因此就有了INT

这下子,一个协议横跨软硬件,功能估计是复杂了很多,但是接受程度如何呢?

原文标题:AWS、Azure、Google,VPC哪家强?

文章出处:【微信公众号:ssdfans】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 谷歌
    +关注

    关注

    27

    文章

    6244

    浏览量

    110259
  • vpc
    vpc
    +关注

    关注

    0

    文章

    18

    浏览量

    8664
  • AWS
    AWS
    +关注

    关注

    0

    文章

    443

    浏览量

    26309

原文标题:AWS、Azure、Google,VPC哪家强?

文章出处:【微信号:SSDFans,微信公众号:SSDFans】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何使用 NuMaker 板和 Mbed OS 上的连接字符串连接到 Azure IoT?

    使用 NuMaker 板和 Mbed OS 上的连接字符串连接到 Azure IoT
    发表于 09-04 07:46

    谷歌查找我的设备配件(Google Find My Device Accessory)详解和应用

    谷歌查找我的设备配件(Google Find My Device Accessory)介绍 谷歌查找我的设备配件是与谷歌 “查找我的设备” 应用程序配合使用的配件,旨在帮助用户更方便地追踪和定位个人
    发表于 08-31 21:10

    网段隔离器哪个好用?有哪些推荐?

    ): 华为:华为的网段隔离器有公网NAT网关和私网NAT网关两种。公网NAT网关能为VPC内云服务器提供SNAT和DNAT功能,用户可通过简易配置构建VPC公网出入口。凭借强大的计算能力与全球化服务节点,能为用户提供稳定高效服务,适合需要快速部署和
    的头像 发表于 08-08 11:07 818次阅读
    网段隔离器<b class='flag-5'>哪个</b>好用?有哪些推荐?

    Tata Communications与AWS达成合作

    Communications与Amazon.com, Inc.旗下公司Amazon Web Services(AWS)联合宣布,双方将在印度构建先进的AI就绪网络。 此次战略合作将建立连接AWS三大基础设施节点
    的头像 发表于 07-30 21:47 641次阅读

    请问55912是否支持WLAN卸载和AnyCloud(AWS+MQTT) 功能吗?

    我可以知道 55912 是否支持 WLAN 卸载和 AnyCloud(AWS+MQTT) 功能吗? 如果是的话,我可以知道什么时候计划在 ModusToolbox 系统上线吗?
    发表于 07-09 06:42

    Google Fast Pair服务简介

    Google Fast Pair 是一项利用低功耗蓝牙(Bluetooth LE)技术,实现设备间快速安全配对及提供多种服务的协议。其主要功能包括: 设备处于配对模式时,显示半页通知,便于用户进行
    发表于 06-29 19:28

    旋转花键与齿轮传动哪个更具优势?

    旋转花键与齿轮传动哪个更具优势?
    的头像 发表于 06-03 18:08 446次阅读
    旋转花键与齿轮传动<b class='flag-5'>哪个</b>更具优势?

    2025 Google I/O大会演讲亮点回顾

    在今年的 Google I/O 大会上,我们展示了如何在 Google 的各个平台进行应用构建,并利用 Google DeepMind 的卓越 AI 模型实现创新,大展拳脚。以下是开发者主旨演讲中的重磅亮点内容,不容错过。
    的头像 发表于 05-28 09:34 764次阅读

    Google推出全新Cloud WAN解决方案

    超过 25 年来,Google 一直在推动网络技术的边界,其创新连接了全球数十亿用户使用 Gmail、YouTube 和 Search 等核心服务。这一切的基础是 Google 庞大的骨干网络。凭借
    的头像 发表于 05-14 16:48 1117次阅读

    Arm+AWS实现AI定义汽车 基于Arm KleidiAI优化并由AWS提供支持

    文中介绍的车载生成式 AI 应用演示由 Arm KleidiAI 进行优化并由 AWS 所提供的服务进行支持,展示了新兴技术如何帮助解决汽车行业的实际挑战。该解决方案可实现 1 至 3 秒的响应时间并将开发时间缩短数周,证明更高效且离线可用的生成式 AI 应用不仅能够实现,而且非常适合车载部署。
    的头像 发表于 04-03 19:24 1673次阅读
    Arm+<b class='flag-5'>AWS</b>实现AI定义汽车  基于Arm KleidiAI优化并由<b class='flag-5'>AWS</b>提供支持

    如何开发一款Google Find My Tag?

    My 网络的配件(如 AirTag)。通过结合 GPS、蓝牙和众包网络,Find My 提供了高精度的定位功能,同时保护用户隐私 Google Find My网络同样也是由数亿台运行较新版本
    发表于 03-05 17:39

    AWS Graviton4处理器上运行大语言模型的性能评估

    亚马逊云科技 (AWS) 新一代基于 Arm 架构的定制 CPU —— AWS Graviton4 处理器已于 2024 年 7 月正式上线。这款先进的处理器基于 64 位 Arm 指令集架构的 Arm Neoverse V2 核心打造,使其能为各种云应用提供高效且性能强
    的头像 发表于 02-24 10:28 1233次阅读
    在<b class='flag-5'>AWS</b> Graviton4处理器上运行大语言模型的性能评估

    如何利用Google Play实现出海应用增长

    本文内容来自于活动演讲内容的整理和总结,演讲人分别: Google Play 应用增长顾问 Tammy Taw,Google Play 商业拓展经理 Christina Li,Google Play
    的头像 发表于 01-22 11:52 1095次阅读
    如何利用<b class='flag-5'>Google</b> Play实现出海应用增长

    Google Play如何帮助您的应用变现

    本文内容来自于活动演讲内容的整理和总结,演讲人分别为: Google Play 资深产品经理 Kalpa Raj 和 Google Play 商业拓展经理 Maya Ma   在 Google
    的头像 发表于 01-21 11:21 1096次阅读
    <b class='flag-5'>Google</b> Play如何帮助您的应用变现

    Arm与AWS合作深化,AWS Graviton4展现显著进展

    Arm与亚马逊云科技(AWS)的长期合作关系,一直致力于为云计算领域带来性能更强劲、更高效和可持续的解决方案。双方通过专用芯片和计算技术的结合,不断推动云计算的发展。 在近期举行的AWS re
    的头像 发表于 12-18 14:17 847次阅读