「PPT 下载」Google DevFest Keynote | 复杂的海外网络环境下,如何提升连接质量

(全网都在找的《社交泛娱乐出海作战地图》,点击获取👆)
12 月 10 日,“Google DevFest 2023 上海站”大会如期在上海市东方万国宴会中心举办。延续过往的技术交流碰撞、前沿技术学习基调传统,本届大会聚焦行业前瞻、AI 洞见、出海加速等议题,吸引数千开发者齐聚一堂、热烈交流。关注【融云全球互联网通信云】了解更多
融云 IM 通讯技术专家吴浩受邀在出海加速主题论坛分享《复杂多变的海外网络环境下,如何提升 B/C 端的连接质量》。

关注【融云全球互联网通信云】后台回复【PPT】获取讲师 PPT
应用出海面临的网络难题及发展机遇
近年来,在企业自身业务扩增需求的驱动下,越来越多的开发者将目光投向海外。而应用出海首先要面对的,便是全球网络参差不齐引发的掣肘。
根据艾瑞咨询《全球互联网通信云行业研究报告》(关注【融云全球互联网通信云】后台回复【白皮书】获取),海外网络环境复杂多样,与中国三家运营商相比,各大洲运营商数量增加了几十倍至百倍。

除运营商繁多外,开发者还要面对 4/5G 网络覆盖率低、网络调度策略复杂、网络调用链路长等多个方面的复杂情况。
如下图示,从 2G、3G、4G 到 5G,不同代际的网络建设成熟度、延迟时间、适用的应用类型各不相同。

具体到全球各重点市场,根据 GSMA 全球移动通信协会数据,当前 4/5G 网络在北美、欧洲、亚太、拉美、独联体、中东北非、非洲占比分别为 95%、86%、74%、66%、58%、51%、23%。
这说明,在非洲、中东北非的很多地区仍处在 2/3G 网络为主的基建情况下,骨干网络延迟较高,跨大洲网络通信延迟不少都在 100ms 以上。
但这也是机遇所在,从 2022 年到 2030 年各地区的 4/5G 增长预期来看,目前基建已经十分完善的北美、欧洲、亚太地区分别拥有 3%、13%、22% 的增长率;而拉美、中东北非、独联体、非洲将分别走出 26%、29%、34% 和 40% 的增长率。
相应地,高增长地区的移动用户增长和智能手机占比增长也都非常可观,意味着未来会有比较大的市场空间。

总之,目前全球各地的移动网络覆盖率差异较大且质量不稳定,加之地缘政治造成的协议封禁等情况频繁存在,对应用底层通信能力的网络覆盖、全球性能提出了更高的要求。
融云的解决方案和最佳实践
融云伴随开发者出海布局全球化业务多年,通过“IM 即时通讯+RTC 实时音视频+X 通信周边能力”的核心架构,给全球数十万开发者提供专业、简单、稳定的互联网通信云服务。
在 B 端企业和 C 端用户的通信质量保障上,融云主要通过基础链路、协议通道、调度策略三大方面来实现优化。

同时,通过缩短 B/C 端距离、心跳保活、链路调度、传输协议、多链路通道等方式拉近 B/C 端的距离。
具体来说,融云采用多云融合的方式,B 端调用优先走同一数据中心链路,其次是加速链路和公网链路。数据中心可下沉到距离用户更近的区域,根据用户归属进行调度。
同时,考虑到投入大小的问题,服务商无法在所有地区保持优势,一般是在不同区域拥有相对优势。融云还融合了多家服务商能力进行统一调度,打造庞大、无拥塞的全球网络。

在链路通道方面,融云基于 QUIC 对私有通信协议进行了优化。考虑到海外不同地区的网络特点,在某些地区,个别运营商可能对 UDP 进行 QoS 限速,融云采用 TLS 优先,TCP 为辅,QUIC 保底的方式进行链路接入。
相比于 TCP+TLS,QUIC 建连速度提升了 1~3 倍。其客户端第一次建连的握手协商需 1-RTT(Round-Trip Time,往返时延)。
已建连的客户端重新建连时,通过应用数据和协商参数合并的方式,QUIC 重用在先前的连接中协商的参数,可以做到 0-RTT,使得客户端能够在握手完成前就发送应用数据。

在链路调度方面,融云主要通过动态地址隔离、协议动态协商、主地址择优下发、链路竞速、动态增权等关键点实现最优调度。

应用建立连接时,首先会根据其地域、网络类型、运营商、连接速度和时长等情况,通过客户端与服务端动态协商下发最优接入地址;然后采用多链路竞速在保证链路优先级的情况下择优选择,结合终端的链路实时探测增权保证终端链路的最终连接。
这样,就可以在保证接入链路稳定性的同时提升连通率、连接速度。
网络连接问题之外,全球化业务还将面对复杂的生态协同和产品研发周期问题。为实现对全球化社交泛娱乐业务的全场景赋能,融云还在全流程产品和全生态协同两大方面持续发力。

在生态方面,融云甄选全球行业领军品牌,构成了完整的服务生态;在流程方面,融云在项目启动、集成、运营等阶段提供全流程一站式技术支持服务。
比如,在国际化 SDK 方面,融云推出了 Global IM UIKit,产品开箱即用支持开发者更好应对国际服的新考卷;在可视化数据方面,融云“北极星”数据平台可为客户提供 IM 和 RTC 业务的调试、排障、监控、告警服务。
相关文章:
「PPT 下载」Google DevFest Keynote | 复杂的海外网络环境下,如何提升连接质量
(全网都在找的《社交泛娱乐出海作战地图》,点击获取👆) 12 月 10 日,“Google DevFest 2023 上海站”大会如期在上海市东方万国宴会中心举办。延续过往的技术交流碰撞、前沿技术学习基调传统,本届大会聚焦行…...
Logstash输入Kafka输出Es配置
Logstash介绍 Logstash是一个开源的数据收集引擎,具有实时管道功能。它可以从各种数据源中动态地统一和标准化数据,并将其发送到你选择的目的地。Logstash的早期目标主要是用于收集日志,但现在的功能已经远远超出这个范围。任何事件类型都可…...
Bash脚本处理ogg、flac格式到mp3格式的批量转换
现在下载的许多音乐文件是flac和ogg格式的,QQ音乐上下载的就是这样的,这些文件尺寸比较大,在某些场合使用不便,比如在车机上播放还是mp3格式合适,音质这些在车机上播放足够了,要求不高。比如本人就喜欢下载…...
Android 依据Build相关信息判断机型
Android 依据Build相关信息判断机型 本文主要通过Build的相关信息获取机型,目前机型判断的较少,后续继续维护更新 public static String parseBuild() {StringBuilder sb new StringBuilder();String deriveFingerprint Build.FINGERPRINT;String manufacturer Build.MANU…...
2024年甘肃省职业院校技能大赛信息安全管理与评估赛项一阶段样题一
2024年甘肃省职业院校技能大赛高职学生组电子与信息大类信息安全管理与评估赛项样题一 竞赛需要完成三个阶段的任务,分别完成三个模块,总分共计 1000分。三个模块内容和分值分别是: 1.第一阶段:模块一 网络平台搭建与设备安全防…...
ARM:作业3
按键中断代码编写 代码: key_it.h #ifndef __KEY_IT_H__ #define __KEY_IT_H__#include "stm32mp1xx_gpio.h" #include "stm32mp1xx_exti.h" #include "stm32mp1xx_rcc.h" #include "stm32mp1xx_gic.h"void key1_it_config(); voi…...
基于OpenCV+CNN+IOT+微信小程序智能果实采摘指导系统——深度学习算法应用(含python、JS工程源码)+数据集+模型(二)
目录 前言总体设计系统整体结构图系统流程图 运行环境Python环境TensorFlow 环境Jupyter Notebook环境Pycharm 环境微信开发者工具OneNET云平台 相关其它博客工程源代码下载其它资料下载 前言 本项目基于Keras框架,引入CNN进行模型训练,采用Dropout梯度…...
*上位机的定义
上位机是指在分布式控制系统中,负责监控和控制下位机(也称为远程终端设备)的计算机或者计算机网络。它通常是一个高性能的计算设备,运行着特定的监控软件,用于实时监测、控制和管理下位机设备。 上位机负责与各个下位…...
架构LAMP
目录 1.什么是LAMP 2.LAMP组成及作用 3.搭建Apache httpd服务 4.编译安装mysqld 服务 5.编译安装PHP 解析环境 6.安装论坛 1.什么是LAMP LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务…...
vue实现浏览器不同分辨率下的不同样式,css的媒体查询与js判断当前浏览器宽度
前言: 实现实现浏览器不同分辨率下的不同样式的方法很多,这里整理两种,1个是css的媒体查询来实现,另一个是js判断当前浏览器的宽度,然后动态给他添加不同的class名,或者动态用style修改样式,添加…...
CentOS7 安装包 MariaDB 10.4.x
CentOS7 安装包 MariaDB 10.4.x 统一 MariaDB安装包 https://www.alipan.com/s/fvLg3gN7LPX 提取码: nh81 打开「阿里云盘」...
js中箭头函数简单介绍
1.箭头函数是 ES6 中新增的一种函数定义方式, 简单举例为 var nameA function(a){return a} 可以用箭头函数简化为 var nameA a >a; 返回的是你输入的值 比如 nameA(5) 返回的就是5 nameA(2) 返回的就是2 以上两个表达的含义是一样的。nameA为名字 2.…...
分布式ID服务实践
背景 分布式场景下需要一个全局 ID 来标识唯一性,比如在单数据库时通过表唯一主键即可实现唯一 ID,分库分表时就需要全局唯一 ID。 业务对唯一 ID 的要求如下: 全局唯一性 不能出现重复的 ID 号,既然是唯一标识,这…...
YOLOv8改进 | 2023主干篇 | 利用RT-DETR特征提取网络PPHGNetV2改进YOLOv8(超级轻量化精度更高)
一、本文介绍 本文给大家带来利用RT-DETR模型主干HGNet去替换YOLOv8的主干,RT-DETR是今年由百度推出的第一款实时的ViT模型,其在实时检测的领域上号称是打败了YOLO系列,其利用两个主干一个是HGNet一个是ResNet,其中HGNet就是我们…...
C现代方法(第26章)笔记——<stdarg.h>、<stdlib.h>和<time.h>标准库
文章目录 第26章 <stdarg.h>、<stdlib.h>和<time.h>标准库26.1 <stdarg.h>: 可变参数26.1.1 调用带有可变参数列表的函数26.1.2 v...printf函数26.1.3 v...scanf函数(C99) 26.2 <stdlib.h>: 通用的实用工具26.2.1 数值转换函数26.2.1.1 测试数值…...
CCKS2023-面向金融领域的主体事件检测-亚军方案分享
赛题分析 大赛地址 https://tianchi.aliyun.com/competition/entrance/532098/introduction?spma2c22.12281925.0.0.52b97137bpVnmh 任务描述 主体事件检测是语言文本分析和金融领域智能应用的重要任务之一,如在金融风控领域往往会对公司主体进行风险事件的检测…...
Linux下通过find找文件---通过修改时间查找(-mtime)
通过man手册查找和-mtime选项相关的内容 man find | grep -A 3 mtime # 这里简单介绍了 -mtime ,还有一个简单的示例-mtime n Files data was last modified n*24 hours ago. See the comments for -atime to understand how rounding affects the interpretati…...
图文教程:stable-diffusion的基本使用教程 txt2img(多图)
之前我介绍了SD的安装过程,那么这篇将介绍怎么使用SD 使用模型 SD安装好之后,我们只有一个默认的模型。这个模型很难满足我们的绘图需求,那么有2种方法。 1是自己训练一个模型(有门槛)2是去网站上找一个别人练好的模…...
VisualSVN Server的安装全过程
目录 背景: 安装过程: 步骤1: 步骤2: 步骤3: 步骤4: 步骤5: 安装出现的bug: 问题: 解决办法: 总结: 背景: VisualSVN Server 是一款免费的 SVN (Subversion) 服务器软件,…...
Python 进阶(十六):二进制和ASCII码的转换(binascii 模块)
大家好,我是水滴~~ 本文详细介绍了Python中的binascii模块及其使用方法。通过binascii模块,我们可以方便地进行二进制和ASCII字符串之间的转换操作。文章中包含大量的示例代码,希望能够帮助新手同学快速入门。 《Python入门核心技术》专栏总…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...
shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...
docker 部署发现spring.profiles.active 问题
报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...
【Linux手册】探秘系统世界:从用户交互到硬件底层的全链路工作之旅
目录 前言 操作系统与驱动程序 是什么,为什么 怎么做 system call 用户操作接口 总结 前言 日常生活中,我们在使用电子设备时,我们所输入执行的每一条指令最终大多都会作用到硬件上,比如下载一款软件最终会下载到硬盘上&am…...
Python实现简单音频数据压缩与解压算法
Python实现简单音频数据压缩与解压算法 引言 在音频数据处理中,压缩算法是降低存储成本和传输效率的关键技术。Python作为一门灵活且功能强大的编程语言,提供了丰富的库和工具来实现音频数据的压缩与解压。本文将通过一个简单的音频数据压缩与解压算法…...
QT开发技术【ffmpeg + QAudioOutput】音乐播放器
一、 介绍 使用ffmpeg 4.2.2 在数字化浪潮席卷全球的当下,音视频内容犹如璀璨繁星,点亮了人们的生活与工作。从短视频平台上令人捧腹的搞笑视频,到在线课堂中知识渊博的专家授课,再到影视平台上扣人心弦的高清大片,音…...
