大数据课程H1——TELECOM的电信流量项目架构

文章作者邮箱:yugongshiye@sina.cn              地址:广东惠州

 ▲ 本章节目的

⚪ 了解TELECOM项目的架构和环境配置;

⚪ 了解TELECOM项目的数据字典;

一、简介

1. 概述

1. 当用户通过网络设备(手机、平板电脑、笔记本电脑等)进行上网的时候,信号经过基站进行传输的时候,会在基站这儿留下日志。

2. 可以通过分析日志来获取用户的行为记录,例如用户浏览了哪个网站或者用户喜欢哪个APP等行为,从而可以做到相对精准的推荐。

2. 架构

1. 因为此处做的是离线的数据分析,所以没有使用到HBase。

2. 硬件环境:至少需要三台服务器,每一台服务器至少是2核4G(推荐是2核8G),磁盘至少是20G(推荐是50G~60G)。

3. 软件环境:三台服务器上都需要安装Flume,第一台服务器上需要安装Hive。可以选择安装Hadoop的伪分布式或者也可以选择安装Hadoop的完全分布式,如果选择安装Hadoop的完全分布式,那么在这之前需要先安装好Zookeeper。

软件

版本

Flume

1.9.0

Hive

3.1.2

Hadoop

3.1.3

Zookeeper

3.5.7

MySQL

5.7.33

二、数据字典

1. 数据字段

序号字段名类型长度说明

0

reporttime

string

14

从文件名截取获取,动态填上

1

 Length

unsigned int

2

用于指示整个XDR所占用字节数

2

City

byte

2

城市区号,如010代表北京

3

Interface

unsigned int

1

接口类型,16进制编码

1. Uu

2. X2

3. UE_MR

4. Cell_MR

5. S1-MME

6. S6a

7. S11

8. S10

9. SGs

10. S5/S8

11. S1-U

12. Gn

13~20 预留

21. IDC出口

22.省网出口

23.省网网间出口

24.骨干网网间出口

4

xDR ID

unsigned int

16

DPI设备内唯一的xDR编号,16进制编码。一个会话生成一个xDR ID

S1-U接口中,一个会话在同一个小区中的传输过程生成一个xDR ID,如该会话切换到新的小区,则生成新的XDR ID及会话记录

对于超长会话设立时间阈值,超过阈值则该条记录结束,重新生成另一条会话记录并生成新的XDR ID,阈值默认为5分钟

5

RAT

unsigned int

1

RAT类型,16进制编码

1. UTRAN

2. GERAN

3. WLAN

4. GAN

5. HSPA Evolution

6. EUTRAN

6

IMSI

byte

8

用户IMSI(TBCD编码),通过Gn/S11接口信令获取

7

IMEI

byte

8

终端IMEI(TBCD编码),通过Gn/S11接口信令获取

8

MSISDN

byte

16

用户号码(TBCD编码),通过Gn/S11接口信令获取

9

Machine IP Add type

Unsigned int

1

设备IP地址类型

0x01:IPv4

0x02:IPv6

10

SGW/GGSN IP Add

byte

4(16)

对于Gn口,填写GGSN的用户面IP地址;对于S1-U口,填写SGW的用户面IP地

Ipv4:4字节

Ipv6:16字节

11

eNB/SGSN IP Add

byte

4(16)

对于Gn口,填写SGSN的用户面IP地址;对于S1-U口,填写eNB用户面IP地址:

Ipv4:4字节

Ipv6:16字节

12

SGW/GGSN Port

byte

2

对于Gn口,填写GGSN的端口;对于S1-U口,填写SGW端口

13

eNB/SGSN Port

byte

2

对于Gn口,填写SGSN的端口;对于S1-U口,填写eNB端口

14

eNB/SGSN GTP-TEID

byte

4

对于Gn口,填写该业务对应承载的SGSN侧GTP-TEID;对于S1-U口,填写该业务对应承载的eNB侧GTP-TEID

15

SGW/GGSN GTP-TEID

unsigned byte

4

对于Gn口,填写该业务对应承载的GGSN侧GTP-TEID;对于S1-U口,填写该业务对应承载的SGW侧GTP-TEID

16

TAC

byte

2

TAC

17

Cell ID

Byte

4

UE所在小区的ECI

18

APN

String

32

APN

19

App Type Code

byte

1

业务类型编码,参见附录D XDR类型编码定义

20

Procedure Start Time

dateTime

8

TCP/UDP流开始时间,UTC时间),从1970/1/1 00:00:00开始到当前的毫秒数。

21

Procedure End Time

dateTime

8

TCP/UDP流结束时间,UTC时间),从1970/1/1 00:00:00开始到当前的毫秒数。

22

Protocol Type

byte

2

协议类型,集团规定的协议识别分类,参加《XXXX数据流量DPI识别能力规范》中的“DPI设备协议识别能力要求”

23

App Type

byte

2

应用大类

集团规定的18种应用大类,参见《XXXX数据流量DPI识别能力规范》

24

App Sub-type

byte

2

应用小类

根据集团定义的识别规则识别出来的小类, 参见《XXXX数据流量DPI识别能力规范》

集团未定义的各厂家根据自己的DPI进行识别

25

App Content

byte

1

应用小类的内容细分,如微信文本、微信语音等

0.心跳,1.文本,2.图片,3.音频,4.视频,5.其他文件

如无则填全F

26

App Status

byte

1

标识业务是否成功

0:业务成功

1:业务失败

2:业务未识别

27

USER_IPv4

byte

4

终端用户的IPv4地址,如无则填全F

28

USER_IPv6

byte

16

终端用户的IPv6地址,如无则填全F

29

User Port

byte

2

用户的四层端口号

30

L4 protocal

byte

1

L4协议类型:

0:TCP

1:UDP

31

App Server IP_IPv4

byte

4

访问服务器的IPv4地址,如无则填全F

32

App Server IP_IPv6

byte

16

访问服务器的IPv6地址,如无则填全F

33

App Server Port

byte

2

访问的服务器的端口

34

UL Data

byte

4

上行流量

单位:字节

对于场景一,定义为从内层IP包头开始计算的数据包大小总和;对于其他场景,定义为从链路层封装开始计算的数据包大小总和。

35

DL Data

byte

4

下行流量

单位:字节

对于场景一,定义为从内层IP包头开始计算的数据包大小总和;对于其他场景,定义为从链路层封装开始计算的数据包大小总和。

36

UL IP Packet

byte

4

上行IP包数,内层IP包的个数

37

DL IP Packet

byte

4

下行IP包数,内层IP包的个数

38

上行TCP乱序报文数

byte

4

上行TCP乱序报文数。L4协议非TCP传输时,此字段填0

39

下行TCP乱序报文数

byte

4

下行TCP乱序报文数。非TCP传输时,此字段填0

40

上行TCP重传报文数

byte

4

上行TCP重传报文数。非TCP传输时,此字段填0

41

下行TCP重传报文数

byte

4

下行TCP重传报文数,

非TCP传输时,此字段填0

42

TCP建链响应时延(ms)

byte

4

TCP建链响应时延(ms),非TCP传输时,此字段填0

43

TCP建链确认时延(ms)

byte

4

TCP建链确认时延(ms),非TCP传输时,此字段填0

44

UL_IP_FRAG_PACKETS

byte

4

以内层IP包的分片为准

45

DL_IP_FRAG_PACKETS

byte

4

以内层IP包的分片为准

46

TCP建链成功到第一条事务请求的时延(ms)

byte

4

TCP建链成功到第一条事务请求的时延(ms)。没有事务的时候可以不填写,此时填0

47

第一条事务请求到其第一个响应包时延(ms)

byte

4

第一条事务请求到其第一个响应包时延(ms)。没有事务的时候可以不填写,此时填0

48

窗口大小

byte

4

窗口大小,TCP 建链协商后的窗口。非TCP传输时,此字段填0

49

MSS大小

byte

4

MSS尺寸,TCP层的最大分段大小。非TCP传输时,此字段填0

50

TCP建链尝试次数

byte

1

TCP SYN的次数,一次TCP流多次SYN的数值。非TCP传输时,此字段填0

51

TCP连接状态指示

byte

1

TCP连接状态指示

0:成功

1:失败

52

会话是否结束标志

byte

1

1:结束

2:未结束

53

HTTP版本

byte

1

0x01----HTTP0.9

0x02----HTTP1.0

0x03----HTTP1.1

0x04----HTTP2.0

0x05----WAP1.0

0x06----WAP1.1

0x07----WAP1.2

54

事务类型

byte

2

HTTP/WAP2.0的事务类型,遵照HTTP/WAP1.x协议上的编码

55

HTTP/WAP事务状态

byte

2

HTTP/WAP2.0层的响应码,参见附录A 状态编码

56

第一个HTTP响应包时延(MS)

byte

4

第一个HTTP响应包相对于第一个HTTP请求包(如get命令)的时延

57

最后一个HTTP内容包的时延(MS)

byte

4

最后一个HTTP内容包相对于第一个HTTP请求包(如get命令)的时延

58

最后一个ACK确认包的时延(ms)

byte

4

最后一个HTTP包的ACK相对于第一个HTTP请求包(如get命令)的时延,如果无ACK,则按照最后一个数据包计算

59

HOST

char

64

访问域名

60

URI

char

512

访问的URI,对于超过512字节的URI进行截短

61

X-Online-Host

char

128

针对wap代理上网的私有头部字段,对于cmnet上网该字段与HOST字段相同

62

User-Agent

char

256

终端向访问网站提供的终端信息,包括IMEI、浏览器类型等

63

HTTP_content_type

char

128

HTTP的内容是文字还是图片、视频、应用等,具体编码参考附录A

64

refer_URI

char

128

参考URI

65

Cookie

char

256

协议中Cookie字段

66

Content-Length

byte

4

协议中Content-Length字段

67

目标行为

byte

1

目标行为

0:会话是用户主动点击的页面

1:站点目标而产生的页面

68

Wtp中断类型

byte

1

WTP层的失败类型

69

wtp中断原因

byte

1

WTP层失败原因

70

title

char

256

网站名称,在上网内容里解析

71

key word

char

256

网站关键字,在上网内容里解析

72

业务行为标识

byte

1

0-业务登陆

1-页面访问

2-刷新

3-未识别

判断规则详见《业务KPI定义(20130821)》

73

业务完成标识

byte

1

0-业务成功

1-业务失败

2-未识别

成功的判断规则:状态码<400

74

业务时延(ms)

byte

4

登陆、访问响应或者刷新时延,具体指标描述参见《业务KPI定义(20130821)》

75

浏览工具

byte

1

详见附录F"浏览工具",未识别的数据用0填充,该字段不能为空

76

门户应用集合

byte1

详见附录G"门户应用集合",未识别的数据用0填充,该字段不能为空

77

未知列

例:1:894/1102??这样字段

2. 应用大类

序号

业务类型

业务说明

1

即时通信

互联网消息即时收发业务,如:QQ、飞信等

2

阅读

向用户提供在线或离线阅读服务的业务,如:移动手机阅读、熊猫阅读等

3

微博

微博业务,如:移动微博、新浪微博等

4

导航

提供浏览、查询、导航等功能的电子地图类业务,如:谷歌地图、高德导航等

5

视频

向用户提供音视频内容的直播、分享和下载服务的网站和应用(不包括传统意义上基于P2P技术的视频业务),如:优酷、手机电视等

6

音乐

提供音乐在线欣赏和下载服务的网站和应用,如:咪咕音乐、QQ音乐等

7

应用商店

提供应用程序、音乐、图书等内容浏览、下载及购买服务的业务,如:Mobile Market、AppStore等

8

游戏

基于客户端或者网页的游戏业务:QQ游戏、开心农场等

9

支付

电子商务类业务,如:手机支付、支付宝、网银等

10

动漫

提供动漫在线欣赏和下载服务的网站和应用,如:手机动漫、爱看动漫等

11

邮箱

电子邮箱业务,如:139邮箱、QQ邮箱等

12

P2P业务

基于P2P技术的资源共享业务,包括下载和视频两部分,前者如:迅雷、eMule等,后者如:迅雷看看、PPLive等

13

VoIP业务

互联网语音通信业务,如:Skype、Uucall等

14

彩信

彩信业务

15

浏览下载

基于HTTP、WAP、FTP等的普通浏览和下载业务

16

财经

金融资讯、股票证劵类业务,如:手机商界、大智慧等

17

安全杀毒

提供网络安全服务的应用,如:360安全卫士、麦咖啡等;以及网络恶意流量,如:病毒、攻击等

18

其他业务        

3. 应用小类举例

业务类型子业务
序号子业务名称优先级备注

即时通信

1

飞聊

必选

自有业务

2

飞信

必选

        

3

Gtalk

必选

互联网业务

4

MSN

必选

        

5

QQ

必选        

6

TM

必选

7

阿里旺旺

必选        

8

米聊

必选

9

微信

必选

10

人人桌面

必选

11

AOL AIM

可选

12

Gadu_Gadu

可选

13

go聊

可选

14

ICQ

可选

15

IMVU

可选

16

Lava-Lava

可选

17

NetChat

可选

18

Paltalk

可选

19

PowWow

可选

20

TeamSpeak

可选

21

Trillian

可选

22

VZOchat

可选

23

Xfire

可选

24

百度Hi

可选

25

都秀

可选

26

陌陌

可选

27

天翼Live

可选

28

翼聊

可选

29

网易

泡泡

可选

30

新浪UC

可选

31

新浪UT

可选

32

雅虎通

可选

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript闭包和this

目录 JavaScript闭包和this 1 闭包 1.1 变量作用域 1&#xff09;函数内部可以读取全局变量 2&#xff09;函数外部无法读取函数内部的局部变量 1.2 读取函数内部的局部变量 1&#xff09;在函数内部再定义一个函数 2&#xff09;为外部程序提供访问函数局部变量的入口 1.3…

【CSS】ios上fixed固定定位的input输入框兼容问题

需求 &#xff1a; 实现一个简单的需求&#xff0c;上方是搜索框并且固定顶部&#xff0c;下方是滚动的内容list 问题 : 若如图上方使用固定定位, 下方用scroll-view, 在安卓上是没有问题的, 但是发现ios上会出现兼容问题 : 问题1: 当content list滚动到中间时再去搜索, 展…

c语言每日一练(1)

前言&#xff1a; 每日一练系列&#xff0c;每一期都包含5道选择题&#xff0c;2道编程题&#xff0c;博主会尽可能详细地进行讲解&#xff0c;令初学者也能听的清晰。每日一练系列会持续更新&#xff0c;暑假时三天之内必有一更&#xff0c;到了开学之后&#xff0c;将看学业情…

你值得拥有——流星雨下的告白(Python实现)

目录 1 前言 2 霍金说移民外太空 3 浪漫的流星雨展示 4 Python代码 1 前言 我们先给个小故事&#xff0c;提一下大家兴趣&#xff1b;然后我给出论据&#xff0c;得出结论。最后再浪漫的流星雨表白代码奉上&#xff0c;还有我自创的一首诗。开始啦&#xff1a; 2 霍金说…

Oracle锁的学习

Oracle数据库中的锁机制 数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时&#xff0c;在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据&#xff0c;破坏数据库的一致性。 在数据库中有两种基本的锁类…

spark history网络流量占用高问题记录

生产环境遇到一台机器网络流量占用高告警 由于监控只有机器总的网络流量&#xff0c;没有具体进程的 于是只能登陆服务器&#xff0c;安装nethogs&#xff1a;yum install nethogs 然后执行nethogs命令查看进程流量 观察到主要是spark history server这个进程占用流量高(最高…

puppeteer监听response并封装为express服务调用

const express require(express); const puppeteer require(puppeteer); const app express(); let browser; // 声明一个全局变量来存储浏览器实例app.get(/getInfo, async (req, res) > {try {const page_param req.query.page; // 获取名为"page"的查询参数…

openCV图像读取和显示

文章目录 一、imread二、namedWindow三、imshow #include <opencv2/opencv.hpp> #include <iostream>using namespace std; using namespace cv;int main(int argc,char** argv) {cv::Mat img imread("./sun.png"); //3通道 24位if (img.empty()) {std:…

Alchemy Catalyst 2023 crack

Alchemy Catalyst 2023 crack Alchemy CATALYST是一个可视化本地化环境&#xff0c;支持本地化工作流程的各个方面。它帮助组织加快本地化进程&#xff0c;比竞争对手更快地进入新市场&#xff0c;并为他们创造新的收入机会。 创建全球影响力 高质量的产品和服务翻译对跨国组织…

windows创建占用特定端口程序

默认情况下&#xff0c;远程桌面使用的是3389端口。如果您想将远程桌面端口更改为8005&#xff0c;以达到模拟程序占用端口8005的情况&#xff0c;可以执行以下操作&#xff1a; 如执行以下命令&#xff0c;则1&#xff0c;2&#xff0c;3步相同操作可以跳过&#xff0c;直接往…

二进制安装K8S(单Master集群架构)

目录 一&#xff1a;操作系统初始化配置 1、项目拓扑图 2、服务器 3、初始化操作 二&#xff1a; 部署 etcd 集群 1、etcd 介绍 2、准备签发证书环境 3、master01 节点上操作 &#xff08;1&#xff09;生成Etcd证书 &#xff08;2&#xff09;创建用于存放 etcd 配置文…

链表OJ题讲解2

&#x1f493;博主个人主页:不是笨小孩&#x1f440; ⏩专栏分类:数据结构与算法&#x1f440; &#x1f69a;代码仓库:笨小孩的代码库&#x1f440; ⏩社区&#xff1a;不是笨小孩&#x1f440; &#x1f339;欢迎大家三连关注&#xff0c;一起学习&#xff0c;一起进步&#…

策略模式(C++)

定义 定义一系列算法&#xff0c;把它们一个个封装起来&#xff0c;并且使它们可互相替换((变化)。该模式使得算法可独立手使用它的客户程序稳定)而变化(扩展&#xff0c;子类化)。 ——《设计模式》GoF 使用场景 在软件构建过程中&#xff0c;某些对象使用的算法可能多种多…

深入理解Streamlit中的按钮行为(四):示例与最佳实践

文章目录 1 前言&#x1f680;2 Streamlit中if st.button()的使用时机 &#x1f3af;&#x1f4a1;3 按钮的逻辑3.1 通过按钮显示临时消息的常用逻辑 &#x1f4e2;&#x1f4a1;3.2 状态保留按钮 &#x1fa84;&#x1f518;3.3 切换按钮 &#x1f504;&#x1f518;3.4 控制流…

Tensorrt 原生Activate 算子讲解

Tensorrt operators docs&#xff1a; Activation Apply an activation function on an input tensor A and produce an output tensor B with the same dimensions. import numpy as np from cuda import cudart import tensorrt as trt # 输入张量 NCHW nIn, cIn, hIn, wI…

Scrum敏捷开发流程图怎么画?

1. 什么是Scrum敏捷开发流程图&#xff1f; Scrum敏捷开发流程图是一种可视化工具&#xff0c;用于形象地描述Scrum敏捷开发方法中的工作流程和活动。Scrum敏捷开发流程图展示了项目从需求收集到产品交付的整个开发过程&#xff0c;帮助团队理解和跟踪项目进展&#xff0c;促…

02.Redis实现添加缓存功能

学习目标&#xff1a; 提示&#xff1a;学习如何利用Redis实现添加缓存功能 学习产出&#xff1a; 流程图 1. 准备pom环境 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId&g…

EXCEL,多条件查询数字/文本内容的4种方法

目录 1 问题&#xff1a;如何根据多条件查询到想要的内容 2 方法总结 2.1 方法1&#xff1a; sumif() 和sumifs() 适合查找符合条件的多个数值之和 2.2 方法2&#xff1a;使用lookup(1,0/((区域1条件1)*(区域2条件2)*....),结果查询区域) 2.3 方法3&#xff1a;使用 ind…

广西茶叶元宇宙 武隆以茶为媒 推动茶文旅产业融合发展

8月4日&#xff0c;重庆市武隆区启动为期3天的“武隆首届玩茶荟”。本次活动以“中国最美玩茶地——武隆”为主题&#xff0c;吸引众多国内知名专家、茶企和茶馆相关负责人&#xff0c;共同探索武隆茶文旅融合发展新路径和新业态。 广西茶叶元宇宙&#xff1a;广西茶叶元宇宙 …

React安装ant design组件库,并使用

ant design是一个很棒的组件库&#xff0c;官方地址&#xff1a;快速上手 - Ant Design 但是如何在React里面用起来&#xff0c;好像并不是很顺畅&#xff0c;没有像Vue里面那么友好&#xff0c;因为我踩过这个坑&#xff0c;虽然安装很简单&#xff0c;但是想要出样式&#x…