蜂窝互联网接入:连接世界的无缝体验
通过Wi—Fi,人们可以方便地接入互联网,但无线局域网的覆盖范围通常只有10~100m。当我们携带笔记本电脑在外面四处移动时,并不是在所有地方都能找到可接入互联网的Wi—Fi热点,这时候蜂窝移动通信系统可以为我们提供广域无线接入服务。蜂窝移动通信系统非常复杂,详细讨论该系统已超出本书的范围,在此仅从通过蜂窝移动通信系统接入互联网的角度对该系统进行简要介绍。
蜂窝移动通信系统概述
蜂窝移动通信系统将整个地理覆盖区域划分成许多被称为小区(Cell)的小块区域,典型的小区如图3-49所示的六边形,形状类似“蜂窝”,因此而得名。每个小区由一个小功率收发基站(Base Station)为本小区内的用户服务。为了避免同频率信号之间的干扰,相邻小区使用不同频率,相距较远的若干不相邻小区可复用同一频率。

蜂窝移动通信系统经历了多次更新换代,其技术发展主要体现在空中接口无线通信技术和系统体系结构两个方面:
- 第一代(1G) :采用频分多址(FDMA)的模拟调制方式,频谱利用率低,只能提供模拟话音通信,现已被淘汰。
- 第二代(2G) :采用数字化技术,主要提供数字话音和短信服务,标准主要有GSM和IS-95 CDMA。GSM引入了时分多址(TDMA)的数字调制方式,提高了系统容量,并采用独立信道传送信令。后来扩展出对分组数据(即互联网业务)的支持(2.5G),可进行收发邮件和浏览网页等低速率数据通信。
- 第三代(3G) :能够提供话音和数据通信,具有比2G高得多的数据率,能够处理图像、视频流等多种媒体形式,并提供电话会议、电子商务等多种信息服务。主要有三个标准:WCDMA、CDMA2000和TD-SCDMA。
- 第四代(4G) :主要采用正交频分复用(OFDM)、多输入多输出(MIMO)等无线电新技术,比3G具有更高的带宽、更大的容量、更高的频谱效率。4G采用全IP网络结构,语音和数据都承载在IP数据报中进行传输。主要标准有LTE和LTE-A。
- 第五代(5G) :主要性能目标是超高速、大容量、低时延和大规模设备连接,不仅满足普通用户的上网需求,还满足高清视频、虚拟现实、自动驾驶、远程手术等需求。采用大规模MIMO、天线波束赋形、先进的多址技术和信道编码技术,并开发使用了新的频谱资源——毫米波。
蜂窝移动通信系统体系结构
蜂窝移动通信系统的体系结构主要包括三个功能子系统:用户设备(User Equipment, UE)、无线电接入网(Radio Access Network, RAN)和核心网(Core Network, CN)。我们以4G为例介绍蜂窝移动通信系统的体系结构。4G系统体系结构被称为演进型分组系统(Evolved Packet System, EPS),如图3-50所示。

- 用户设备(UE) :用户利用蜂窝移动通信系统上网的终端设备,如智能手机、移动无线网卡或内置在平板电脑中的蜂窝无线网卡。
- 无线电接入网(RAN) :在用户设备(UE)与核心网(CN)之间提供通信连接。4G系统体系结构中的无线电接入网称为演进型通用陆地无线电接入网(E-UTRAN),由互连的eNodeB构成。
- 核心网(CN) :主要作用是在用户设备(UE)和外部分组数据网(PDN)(如互联网)之间建立起一条传输用户IP数据报的通道,称为PDN连接。4G系统体系结构中的核心网被称为演进型分组核心网(EPC),由一些功能实体组成,主要包括移动性管理实体(MME)、服务网关(S-GW)、分组数据网网关(P-GW)、归属用户服务器(HSS)等。
各功能实体的作用:
- 移动性管理实体(MME) :负责接入控制、移动性管理和会话管理。
- 分组数据网网关(P-GW) :作为UE与外部分组数据网之间的网关,负责给UE分配IP地址,所有UE流量都通过P-GW转发到外部PDN。
- 服务网关(S-GW) :负责eNodeB和P-GW间的用户数据分组的路由和转发。
- 归属用户服务器(HSS) :存储用户签约信息、位置信息和安全信息。
移动终端接入互联网
以4G系统为例说明用户终端如何接入互联网。EPC需要在UE和PDN(如互联网)之间建立起一条IP通道,即PDN连接,用来承载各种不同的宽带数据业务。
接入过程:
- 附着注册:UE开机后首先找到一个eNodeB建立无线链路,并向系统进行注册。eNodeB为UE选择一个MME,并将附着请求转发给该MME。
- 建立连接:MME将UE信息发送给HSS,并为UE选择一个S-GW和一个P-GW,建立一条连接互联网的通道,同时P-GW为UE分配一个IP地址。该连接由UE到eNodeB的无线电链路、eNodeB到S-GW的GTP隧道和S-GW到P-GW的GTP隧道组成。

数据传输过程:
- 上行传输:UE发出一个IP数据报给互联网服务器,IP数据报通过无线电链路发送给eNodeB,然后eNodeB将该IP数据报封装为GTP分组在eNodeB到S-GW的GTP隧道中传输,再由S-GW转发给P-GW,最后P-GW将IP数据报转发到互联网。
- 下行传输:与上行传输过程正好相反。
切换和移动性:
- 当UE位置发生变化时,可能会导致PDN连接中的eNodeB、S-GW发生变化。若UE移动范围较小,只是eNodeB发生改变,要重建eNodeB到S-GW的GTP隧道。若UE的移动范围超出原来S-GW的服务范围,还要重建S-GW到P-GW的GTP隧道。
- 在UE的移动过程中,MME也可能发生变化,这时新的MME要从旧的MME获取UE的上下文信息,并向HSS通报UE位置的改变情况。一旦建立PDN连接,无论UE如何移动,PDN连接中的P-GW都不会发生改变,UE的IP地址也不会改变。
为什么需要S-GW:主要是因为eNodeB的数量巨大,全部直连到P-GW会让P-GW承受很大的负载,UE的任何事务,P-GW都要了解并处理。其次,这会让整个EPS架构的设计缺乏灵活性。在漫游场景中,跨国的P-GW和MME通信会涉及不同电信运营商以及不同网络之间的接入问题,因此需要S-GW为UE提供“本地(区域性)”的接入和移动性服务。
P-GW的角色:P-GW为UE分配公网的DNS服务器地址,并在P-GW与互联网之间配置NAT设备,将多个专网IP地址映射到同一个公网IP地址上。
结语
通过蜂窝移动通信系统接入互联网,用户可以在更广大的地理范围内实现高效、可靠的互联网接入。随着技术的不断进步,蜂窝移动通信系统将继续为用户提供更高的带宽、更低的时延和更大的连接能力,满足各种复杂的通信需求。
图文来源:《计算机网络教程》
相关文章:
蜂窝互联网接入:连接世界的无缝体验
通过Wi—Fi,人们可以方便地接入互联网,但无线局域网的覆盖范围通常只有10~100m。当我们携带笔记本电脑在外面四处移动时,并不是在所有地方都能找到可接入互联网的Wi—Fi热点,这时候蜂窝移动通信系统可以为我们提供广域…...
Sprint Boot 2 核心功能(一)
核心功能 1、配置文件 application.properties 同基础入门篇的application.properties用法一样 Spring Boot 2 入门基础 application.yaml(或application.yml) 基本语法 key: value;kv之间有空格大小写敏感使用缩进表示层级关系缩进不允…...
GitLab CI/CD实现项目自动化部署
1 GitLab CI/CD介绍 GitLab CI/CD 是 GitLab 中集成的一套用于软件开发的持续集成(Continuous Integration)、持续交付(Continuous Delivery)和持续部署(Continuous Deployment)工具。这套系统允许开发团队…...
阿里云调整全球布局关停澳洲云服务器,澳洲服务器市场如何选择稳定可靠的云服务?
近日,阿里云宣布将关停澳大利亚地域的数据中心服务,这一决定引发了全球云计算行业的广泛关注。作为阿里云的重要海外市场之一,澳洲的数据中心下架对于当地的企业和个人用户来说无疑是一个不小的挑战。那么,在阿里云调整全球布局的…...
排序(二)——快速排序(QuickSort)
欢迎来到繁星的CSDN,本期内容包括快速排序(QuickSort)的递归版本和非递归版本以及优化。 一、快速排序的来历 快速排序又称Hoare排序,由霍尔 (Sir Charles Antony Richard Hoare) ,一位英国计算机科学家发明。霍尔本人是在发现冒泡排序不够快…...
<数据集>穿越火线cf人物识别数据集<目标检测>
数据集格式:VOCYOLO格式 图片数量:3440张 标注数量(xml文件个数):3440 标注数量(txt文件个数):3440 标注类别数:1 标注类别名称:[person] 使用标注工具:labelImg 标注规则:对…...
a+=1和a=a+1的区别
文章目录 a1 和a a1的区别一、实例代码二、代码解释三、总结 a1 和a a1的区别 一、实例代码 public class Test {public static void main(String[] args) {byte a 10; // a a 1; // a (byte) (a 1);a 1;System.out.println(a);} }上面的对变量a进行加一操作时&a…...
设计模式使用场景实现示例及优缺点(结构型模式——桥接模式)
结构型模式 桥接模式(Bridge Pattern) 桥接模式(Bridge Pattern)是一种结构型设计模式,其主要目的是“将抽象与实现解耦,使得两者可以独立地变化”。这种模式通过提供抽象化和实现化之间的桥接结构&#…...
Spring——自动装配Bean
自动装配是Spring满足bean依赖的一种方式 Spring会在上下文中自动寻找,并自动给bean装配属性 在Spring中有三种装配的方式: 1. 在xml中显示配置 2. 在java中显示配置 3. 隐式的自动装配bean【重要】 测试 记得创建Cat、Dog、People类 public clas…...
云端典藏:iCloud中个人收藏品目录的智能存储方案
云端典藏:iCloud中个人收藏品目录的智能存储方案 在数字化生活不断推进的今天,个人收藏品的管理也趋向于电子化和云端化。iCloud作为苹果公司提供的云服务,为个人收藏品目录的存储和管理提供了一个安全、便捷、跨设备的解决方案。本文将详细…...
安全开发基础篇-数据溢出
上一节我们简单讲解了多语言的数据类型,我们只需要知道这个概念,并且在不同语言有不同的规矩就好。这节讲数据溢出,严格说应该是字符串溢出和整数溢出。 在软件开发中,字符串和整数溢出漏洞是常见的安全问题,它们可能…...
Scanner工具类
扫描控制台输入 1.nextLine nextLine() 方法会扫描输入流中的字符,直到遇到行末尾的换行符 \n,然后将该行的内容作为字符串返回,同时,nextLine() 会将 Scanner 对象的位置移动到下一行的开头,以便下一次读取数据时从下…...
springboot3 集成GraalVM
目录 安装GraalVM 配置环境变量 Pom.xml 配置 build包 测试 安装GraalVM Download GraalVM 版本和JDK需要自己选择 配置环境变量 Jave_home 和 path 设置setting.xml <profile><id>graalvm-ce-dev</id><repositories><repository><id&…...
HumanoidBench——模拟仿人机器人算法有未来
概述 论文地址:https://arxiv.org/pdf/2403.10506 仿人机器人具有类似人类的外形,有望在各种环境和任务中为人类提供支持。然而,昂贵且易碎的硬件是这项研究面临的挑战。因此,本研究开发了使用先进模拟技术的 HumanoidBench。该基…...
实现前端用户密码重置功能(有源码)
引言 密码重置功能是任何Web应用程序中至关重要的一部分。当用户忘记密码时,密码重置功能可以帮助他们安全地重设密码。本文将介绍如何使用HTML、CSS和JavaScript(包括Vue.js)来实现前端的密码重置功能。 1. 项目结构 首先,我们…...
《双流多依赖图神经网络实现精确的癌症生存分析》| 文献速递-基于深度学习的多模态数据分析与生存分析
Title 题目 Dual-stream multi-dependency graph neural network enables precise cancer survival analysis 《双流多依赖图神经网络实现精确的癌症生存分析》 01 文献速递介绍 癌症是全球主要的死亡原因,2020年约有1930万新发癌症病例和近1000万癌症相关死亡…...
【Hive SQL 每日一题】在线峰值人数计算
文章目录 测试数据需求说明需求实现 测试数据 -- 创建 user_activity 表 DROP TABLE IF EXISTS user_activity ; CREATE TABLE user_activity (user_id STRING,activity_start TIMESTAMP,activity_end TIMESTAMP );-- 插入数据 INSERT INTO user_activity VALUES (user1, 2024…...
谷粒商城学习笔记-18-快速开发-配置测试微服务基本CRUD功能
文章目录 一,product模块整合mybatis-plus1,引入依赖2,product启动类指定mapper所在包3,在配置文件配置数据库连接信息4,在配置文件中配置mapper.xml映射文件信息 二,单元测试1,编写测试代码&am…...
机器学习库实战:DL4J与Weka在Java中的应用
机器学习是当今技术领域的热门话题,而Java作为一门广泛使用的编程语言,也有许多强大的机器学习库可供选择。本文将深入探讨两个流行的Java机器学习库:Deeplearning4j(DL4J)和Weka,并通过详细的代码示例帮助…...
MongoDB教程(一):Linux系统安装mongoDB详细教程
💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 文章目录 引言一、Ubuntu…...
Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...
关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...
高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...
在Ubuntu24上采用Wine打开SourceInsight
1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...
