•  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

CiGLBServer(r9 Blame)

r9
r1

(새 문서)
1[[분류:서버]]
r2
2[목차]
r1

(새 문서)
3== 개요 ==
4 *[[CiGLBServer]](이하 GLB)는 SettopBox (이하 STB)이 VOD 재생 요청을 했을 때 가장 먼저 만나는 바이너리다.
5 *G/W 의 역할을 한다.
6 *요청받은 내용을 LoadBalancer 라는 바이너리에게 요청 사항을 전달해주고 그 응답값을 다시 받아와 STB에게 보낸다.
7 *이를 토대로 STB은 어떤 VOD 서버로 요청하면 될지 정보를 확인할 수 있다.
8
9== 설정 ==
10 *GLB의 기본 동작 관련된 설정값이다.
11
r9
12
13===# 관련 설정 파일 #===
14프로세스 메인 설정 파일
15>/usr/local/castis/CiGLBServer.cfg
16
17서비스 별 LB 설정 파일
18>/usr/local/castis/glb.cfg
19
20Filler=Y 큐톤 매핑 정보
21>/usr/local/castis/cuetone_mapping_info.cfg
22
23Filler=N 큐톤 매핑 정보
24>/usr/local/castis/cuetone_mapping_info_byFiller.cfg
r1

(새 문서)
25=== glb.cfg ===
26 *CiGLBServer의 경우 동적으로 설정이 적용되는 설정 값이 하나 있다.
27 *LLB 정보를 확인하는 이 설정이다.
28 *설정 파일을 보면 아래(서안동 GTV LSM) 처럼 되어 있는걸 확인할 수 있다.
29
30># LLB_Lable PK_LLB_ID LLB_IP
31>LLB 1 119.221.128.5
32>LLB 2 125.159.40.150
33># GLB_Lable FK_Destination_Group_ID FK_LLB_ID FK_LLB_ID FK_LLB_ID
34>GLB default 1 2
35>GLB cuetone 1 2
36
37 *여기서 보통 1차는 자기 자신의 VIP, 2차는 중앙 (광고 CDN의 경우 2차는 GTV LSM, 3차가 중앙) 으로 되어 있다.
38 *설정된 순서대로 요청을 한다고 보면 된다. (아래는 광고 CDN LSM의 설정 파일이다.)
39
40># LLB_Lable PK_LLB_ID LLB_IP
41>LLB 1 183.121.149.5
42>LLB 2 119.221.128.5
43>LLB 3 125.159.40.150
44>
45># GLB_Lable FK_Destination_Group_ID FK_LLB_ID FK_LLB_ID FK_LLB_ID
46>GLB default 1
47>GLB cuetone 1 2 3
48 *여기서 IP를 변경하면 바로 적용이 된다.
49
50==== glb.cfg 설정 에러 ====
51 *간혹 절체 이후 GLB에서 에러가 나는 경우가 드물게 있다.
52 *이 때 glb.cfg 의 설정을 참고하면 된다. [* Active(LSM, LSM#2) 서버와는 다른 엉뚱한 값이 설정된 Back 서버가 있었다.]
53
54=== 주요 로그 ===
55==== RTSP Describe (VOD 서비스) 정보 요청 입수 ====
56 *VOD에 한해 아래 로그를 표시한다(RTSP의 FLOW)
57>CiGLBServer,3.0.3,2024-03-12,09:21:50.385,Information,MarkupListenThread.cpp:OnRTSPDescribe(822),,"RTSP Describe request from 100.104.45.216, UUID = c88bb601-1c2e-4d01-aa39-9f4ca31843bf. uri = rtsp://125.153.250.5/MVIO204ESGL1500001_K20240219092112.mpg?p=v1::F:421023:66149732770:N:S3"
58 1.RTSP요청
59 1.UUID = GLB 서버가 자체적으로 생성하는 추적용 값.
60 1.uri(STB에서 요청하는 rtsp 주소)
61 1.rtsp://GLB_IP/파일 이름?p=v1 VOD 요청 (고정값)
62 1.:카테고리 ID (현재 VOD 에선 비어있음)
63 1.:F 무료 VOD(R 유료시청, S 코너가입시청
64 1.:6자리 숫자 RegionID (가입자 동코드)
65 1.:11자리 숫자 가입자 SAID (UserID):이어보기 여부 (N 처음부터, Y 이어보기)
66 1.:S3 (OTS 기본형 (사후광고 제공함) <- Postplay 재생가능 단말기종 구분자 (V1~V4, S1~S4))”
67
68==== RTSP Describe (VOD 서비스) 정보 요청 ====
69>CiGLBServer,3.0.3,2024-03-12,09:21:50.386,Information,SMPoolThreadID[2] SMPoolThread.cpp:ListenQueueRTSPDescribe(380),,"Parsed Session Request(RTSPDescribe), AssetID[MVIO204ESGL1500001_K20240219092112.mpg], UUID[c88bb601-1c2e-4d01-aa39-9f4ca31843bf], ClientIP[100.104.45.216]"
70
71 1.AssetID[애셋ID(파일이름)]
72 1.UUID[GLB 추적용 ID]
73 1.ClientIP[고객 IP]
74
75==== RTSP Describe (VOD 서비스) 정보 요청 결과 ====
76>CiGLBServer,3.0.3,2024-03-12,09:21:50.390,Information,SLPClientThread.cpp:OnDescribeResponse(674),,"OnDescribeResponse, LB[125.153.250.5, 125.153.250.5], AssetID[MVIO204ESGL1500001_K20240219092112.mpg], UUID[c88bb601-1c2e-4d01-aa39-9f4ca31843bf], result[result is success], Client[100.104.45.216]"
77 1.LB[LSM, ADC]
78 1.AssetID[파일이름]
79 1.UUID[GLB 추척 ID]
80 1.result[결과]
r3
81 1.Client 고객 IP[요청한 고객 STB IP]
82
83==== RTSP Setup (VOD 서비스) 요청 입수 ====
84>CiGLBServer,3.0.3,2024-03-22,07:26:47.475,Information,MarkupListenThread.cpp:OnRTSPSetup(1363),,"RTSP Setup request from 119.221.96.25, SessionId[2eede011-ed43-43dd-9495-7ae2a84cb5ed]. uri = rtsp://125.153.250.5/M02O20BVSGL1500001_K20240301012854.mpg?p=v1:CV000000000051793804:F:421034:62074529707:N:S3, device_info[SDK_v4.0.15.1; {""GigaGenieApp"":""18.01.00"",""FW"":""1.0.3120"",""SAID"":""62074529707"",""Model"":""CT1102""}]"
85 1.RTSP요청 고객(STB) IP
86 1.SessiondId[세션Id].
87 1.uri(STB에서 요청하는 rtsp 주소)://GLB_IP/파일 이름?p=v1 VOD 요청 (고정값)
88 1.:카테고리 ID
89 1.:F 무료 VOD(R 유료시청, S 코너가입시청:6자리 숫자 RegionID (가입자 동코드)
90 1.:11자리 숫자 가입자 SAID (UserID):이어보기 여부 (N 처음부터, Y 이어보기)
91 1.:S3 (OTS 기본형 (사후광고 제공함) Postplay 재생가능 단말기종 구분자 (V1~V4, S1~S4))
92 1.device_info : STB이나 요청하는 장비의 정보
93 1.“어플이름”
94 1.”버전정보”
95 1.”펌웨어”
96 1.”펌웨어 버전 정보”
97 1.”SAID”
98 1.”가입자 정보”
99 1.”Model”
100 1.”STB 모델명”
101
r7
102==== VOD 서비스 요청 ====
103>CiGLBServer,3.0.3,2024-03-22,07:26:47.476,Information,SMPoolThreadID[1] SMPoolThread.cpp:ListenQueueSetup(576),,"Parsed Session Request(GLB), AssetID[M02O20BVSGL1500001_K20240301012854.mpg], StreamID[5702fea5-dcea-4f0b-98d9-ae9aeccdb43c], SessionId[2eede011-ed43-43dd-9495-7ae2a84cb5ed], ClientIP[119.221.96.25]"
104 1.GLB로 온 세션 요청
105 1.AssetID[요청한 파일]
106 1.StreamID[]
107 1.SessionId[]
108 1.ClinetIP[요청한 STB IP]
109
110==== LB로부터 VOD 서비스에 대해 VOD 서버 할당 요청 결과 ====
111>CiGLBServer,3.0.3,2024-03-12,09:21:50.412,Information,SLPClientThread.cpp:OnOnDemandSessionResponse(916),,"OnOnDemandSessionResponse : 67d110a0-7544-4359-8d8f-8aec062b3f67, cb96bb8f-4c45-4a3b-a68a-f78edb6c4e7f, 29059391, MVIO204ESGL1500001_K20240219092112.mpg, 125.153.250.13, result is success, LB[125.153.250.5, 125.153.250.5], ClientIP[100.104.45.216]"
112 1.StreamID
113 1.SessionID
114 1.SessionInt.(deprecated)
115 1.AssetID
116 1.VOD Server IP
117 1.결과값 표시
118 1.LB[LSM,ADC]
119 1.ClinetIP[요청한 STB IP]
120
121==== VOD 세션 셋업 완료 ====
122>CiGLBServer,3.0.3,2024-03-12,09:21:50.412,Information,SMPoolThreadID[1] SMPoolThread.cpp:LLBQueueSetup(856),,"Successfully New Setup Session, StreamID[67d110a0-7544-4359-8d8f-8aec062b3f67], SessionId[cb96bb8f-4c45-4a3b-a68a-f78edb6c4e7f, 29059391], RequestURL[rtsp://125.153.250.5/MVIO204ESGL1500001_K20240219092112.mpg?p=v1::F:421023:66149732770:N:S3], AssetID[MVIO204ESGL1500001_K20240219092112.mpg], ClientIP[100.104.45.216], LLB[125.153.250.5,125.153.250.5], VOD[125.153.250.13,125.153.250.13], DestinationIP[125.153.250.5], UDPPort[0], DataFree[0], ServiceType[]"
123 1.StreamID[]
124 1.SessionId[]
125 1.RequestURL
126 1.요청 URL://GLB_IP/파일 이름?p=v1 VOD 요청 (고정값)
127 1.:카테고리 ID (현재 VOD 에선 비어있음)
128 1.:F 무료 VOD(R 유료시청, S 코너가입시청
129 1.:6자리 숫자 RegionID (가입자 동코드)
130 1.:11자리 숫자 가입자 SAID (UserID)
131 1.:이어보기 여부 (N 처음부터, Y 이어보기)
132 1.:S3 (OTS 기본형 (사후광고 제공함) <- Postplay 재생가능 단말기종 구분자 (V1~V4, S1~S4))”]
133 1.AssetID[요청한 파일]
134 1.ClinetIP[요청한 STB IP]
135 1.LLB[LSM IP, ADC IP]
136 1.VOD[VOD IP, VOD IP]
137 1.DestinationIP[LB IP]
138 1.UDPPort[0]
139 1.DataFree[0]
140 1.ServiceType[]
141
142 *LLB의 경우 GTV 지역/중앙에서는 안 쓴다 (VIP를 쓰기 때문), UDPPort나 DataFree의 경우 GTM 에서 사용함, ServiceType의 경우 VOD는 공백
143
144==== VOD 세션 종료 ====
145>CiGLBServer,3.0.3,2024-03-22,07:38:02.802,Information,SLPClientThread.cpp:OnTeardownNotification(1041),,"OnTeardownNotification : 5702fea5-dcea-4f0b-98d9-ae9aeccdb43c, 2eede011-ed43-43dd-9495-7ae2a84cb5ed, 23206258, LB[125.153.250.5, 125.153.250.5]"
146 1.StreamID
147 1.SessionID
148 1.파일크기
149 1.LB[LSM,ADC]
150
r3
151==== RTSP Setup (A CUETONE 서비스) 요청 입수 ====
152>CiGLBServer,3.0.3,2024-03-05,23:54:01.128,Information,MarkupListenThread.cpp:OnRTSPSetup(1283),,"RTSP Setup request from 125.152.42.4, SessionId[8aebb1a2-02ca-4a01-9397-0e9af462b442]. uri = rtsp://125.159.5.140/ACUETONE/cueTone?p=c1:752:306237:00000000000:01:MA4000&filler=N&adUpdate=Y&adid=999***********&adidYN=Y&userSeg=Y, device_info[SDK_v4.0.17]"
153 1.RTSP요청 요청 고객(STB)
154 1.IP
155 1.SessiondId[세션Id].
156 1.uri(STB에서 요청하는 rtsp 주소)://GLB_IP/cueTone?p=c1(큐톤 종류 A큐톤=c1)
157 1.:채널 ID
158 1.:6자리 숫자 RegionID (가입자 동코드)
159 1.:11자리 숫자 가입자 SAID (UserID)
160 1.:채널 ProviderID(01 OTV, 02 OTS)
161 1.:셋탑박스 모델
r4
162 1.&필러 삽입 세션여부
163 1.&adUpdate=큐톤광고 사용 유무
164 1.&adid=통합광고ID
165 1.&adidYN=ADID사용유무
166 1.&userSeg=타겟광고사용유무(Y:타겟+메스, N:매스)
r3
167 1.device_info[STB이나 요청하는 장비의 정보]
168
r6
169==== A CUETONE 광고 셋업 완료 ====
170>CiGLBServer,3.0.3,2024-03-05,23:54:01.130,Information,SMPoolThreadID[1] SMPoolThread.cpp:LLBQueueSetupForCueTone(963),,"Successfully New Setup Session, StreamID[c904e90b-4bf8-41ad-a2b1-eecd52a5ce6e], SessionId[8aebb1a2-02ca-4a01-9397-0e9af462b442, 0], RequestURL[rtsp://125.159.5.140/ACUETONE/cueTone?p=c1:752:306237:00000000000:01:MA4000&filler=N&adUpdate=Y&adid=999***********&adidYN=Y&userSeg=Y], AssetID[cueTone], ClientIP[125.152.42.4], LLB[125.159.5.140,125.159.5.140], VOD[125.159.5.109,125.159.5.109], DestinationIP[125.159.5.140], UDPPort[0], ServiceType[ACUETONE]"
171 1.StreamID[]
172 1.SessionId[]
173 1.RequestURL
174 1.rtsp://GLB_IP/cueTone?p=c1(큐톤 종류 A큐톤=c1)
175 1.:채널 ID:6자리 숫자 RegionID (가입자 동코드)
176 1.:11자리 숫자 가입자 SAID (UserID)
177 1.:채널 ProviderID(01 OTV, 02 OTS)
178 1.:셋탑박스 모델
179 1.&필러 삽입 세션여부
180 1.&adUpdate=큐톤광고 사용 유무
181 1.&adid=통합광고ID
182 1.&adidYN=ADID사용유무
183 1.&userSeg=타겟광고사용유무(Y:타겟+메스, N:매스)
184 1.device_info[STB이나 요청하는 장비의 정보]
185 1.AssetID[요청한 파일]
186 1.ClinetIP[요청한 STB IP]
187 1.LLB[LSM IP, ADC IP]
188 1.VOD[VOD IP, VOD IP]
189 1.DestinationIP[LB IP]
190 1.UDPPort[0]
191 1.ServiceType[ACUETONE]
192
r3
193==== RTSP Setup (B CUETONE 서비스) 요청 입수 ====
194>CiGLBServer,3.0.3,2024-03-05,23:50:31.407,Information,MarkupListenThread.cpp:OnRTSPSetup(1283),,"RTSP Setup request from 125.152.42.4, SessionId[024ead48-d7a9-4f27-8017-1521e4401ac0]. uri = rtsp://125.159.5.140/BCUETONE/cueTone?p=c2:752:306237:00000000000:01:MA4000&filler=N&adid=999***********&adidYN=Y&userSeg=Y, device_info[SDK_v4.0.17]"
195 1.RTSP요청 요청 고객(STB) IP
196 1.SessiondId[세션Id].
197 1.uri(STB에서 요청하는 rtsp 주소)://GLB_IP/cueTone?p=c1(큐톤 종류 B큐톤=c2)
198 1.:채널 ID
199 1.:6자리 숫자 RegionID (가입자 동코드)
200 1.:11자리 숫자 가입자 SAID (UserID)
201 1.:채널 ProviderID(01 OTV, 02 OTS)
202 1.:셋탑박스 모델
r5
203 1.&필러 삽입 세션여부
204 1.&adid=통합광고ID
205 1.&adidYN=ADID사용유무
206 1.&userSeg=타겟광고사용유무(Y:타겟+메스, N:매스)
r6
207 1.device_info[STB이나 요청하는 장비의 정보]
208
209==== B CUETONE 광고 셋업 완료 ====
210>CiGLBServer,3.0.3,2024-03-05,23:50:31.409,Information,SMPoolThreadID[2] SMPoolThread.cpp:LLBQueueSetupForCueTone(963),,"Successfully New Setup Session, StreamID[1bafed21-1a95-4417-8c4c-442a63337adb], SessionId[024ead48-d7a9-4f27-8017-1521e4401ac0, 0], RequestURL[rtsp://125.159.5.140/BCUETONE/cueTone?p=c2:752:306237:00000000000:01:MA4000&filler=N&adid=999***********&adidYN=Y&userSeg=Y], AssetID[cueTone], ClientIP[125.152.42.4], LLB[125.159.5.140,125.159.5.140], VOD[125.159.5.109,125.159.5.109], DestinationIP[125.159.5.140], UDPPort[0], ServiceType[BCUETONE]"
211
212==== RTSP Setup (D CUETONE 서비스) 요청 입수 ====
213>CiGLBServer,3.0.3,2024-03-25,10:02:59.900,Information,MarkupListenThread.cpp:OnRTSPDescribe(822),,"RTSP Describe request from 49.24.138.148, UUID = 4d724493-66a0-489e-8dc1-6a949f1c54bf. uri = rtsp://14.87.141.5/DCUETONE/cueTone?p=c3:451:420613:00000000000:01:1711328582193:120000:9967:200:NA2200&filler=N&adid=824***********&adidYN=Y&userSeg=Y"
214 1.RTSP요청 요청 고객(STB) IP
215 1.SessiondId[세션Id].
216 1.uri(STB에서 요청하는 rtsp 주소)://GLB_IP/cueTone?p=c1(큐톤 종류 D큐톤=c3)
217 1.:채널 ID
218 1.:6자리 숫자 RegionID (가입자 동코드)
219 1.:11자리 숫자 가입자 SAID (UserID)
220 1.:채널 ProviderID(01 OTV, 02 OTS)
221 1.:큐톤 광고 시작 시간(UNIX 시간,밀리세컨드)
222 1.:큐톤 광고 지속시간(초)
223 1.:큐톤 event ID,인벤토리 영역 구분값
224 1.:stbModel
225 1.&필러 삽입 세션여부
226 1.&adid=통합광고ID
227 1.&adidYN=ADID사용유무
228 1.&userSeg=타겟광고사용유무(Y:타겟+메스, N:매스)
229
230==== D CUETONE 광고 셋업 완료 ====
231>CiGLBServer,3.0.3,2024-03-25,04:00:19.889,Information,SMPoolThreadID[1] SMPoolThread.cpp:LLBQueueSetupForCueTone(963),,"Successfully New Setup Session, StreamID[1d3dba33-1fa2-42be-a791-d29ab4b9aec0], SessionId[9503f5c2-f067-4d30-b948-c2ac88878a65, 0], RequestURL[rtsp://118.53.65.5/DCUETONE/cueTone?p=c3:261:333021:00000000000:01:1711306823820:15000:26508:2300:KI1101&filler=N&adid=249***********&adidYN=Y&userSeg=Y], AssetID[cueTone], ClientIP[14.90.100.42], LLB[118.53.65.5,118.53.65.5], VOD[118.53.65.7,118.53.65.7], DestinationIP[118.53.65.5], UDPPort[0], ServiceType[DCUETONE]"
232
233==== CUETONE 광고 서비스 요청 ====
234>CiGLBServer,3.0.3,2024-03-05,23:54:01.129,Information,SMPoolThreadID[1] SMPoolThread.cpp:ListenQueueSetup(576),,"Parsed Session Request(GLB), AssetID[cueTone], StreamID[c904e90b-4bf8-41ad-a2b1-eecd52a5ce6e], SessionId[8aebb1a2-02ca-4a01-9397-0e9af462b442], ClientIP[125.152.42.4]"
235 1.GLB로 온 세션 요청
236 1.AssetID[cueTone]
237 1.StreamID[]
238 1.SessionId[]
239 1.ClinetIP[요청한 STB IP]
240
r8
241==== CUETONE 정보를 찾지 못한 경우 ====
242>CiGLBServer,3.0.3,2024-03-25,05:52:51.883,Error,MarkupListenThread.cpp:OnRTSPDescribe(894),,"Cannot Find cueTone Info cueTone(cueTone), ChannelID(451), ChannelProviderID(01), ClientIP(49.24.138.148)"
243
r6
244==== SODE 서비스 요청 ====
245>CiGLBServer,3.0.3,2024-03-22,00:09:51.118,Information,SMPoolThreadID[2] SMPoolThread.cpp:ListenQueueSetup(576),,"Parsed Session Request(GLB), AssetID[SODE/44228/01.07.21/kt-gtv-home_v01.07.21_20240220_kaon_release.apk], StreamID[621d60f2-3585-497d-9673-4858b8bdde9a], SessionId[30c28eb9-aae0-46e7-9b48-3e29e6d4c712], ClientIP[125.151.56.160]"
246 1.GLB로 온 세션 요청
247 1.AssetID[요청한 파일]
248 1.StreamID[]
249 1.SessionId[]
250 1.ClinetIP[요청한 STB IP]
251
252==== SODE 세션 셋업 완료 ====
253>CiGLBServer,3.0.3,2024-03-22,00:09:51.123,Information,SMPoolThreadID[2] SMPoolThread.cpp:LLBQueueSetup(856),,"Successfully New Setup Session, StreamID[621d60f2-3585-497d-9673-4858b8bdde9a], SessionId[30c28eb9-aae0-46e7-9b48-3e29e6d4c712, 18937024], RequestURL[/SODE/44228/01.07.21/kt-gtv-home_v01.07.21_20240220_kaon_release.apk], AssetID[SODE/44228/01.07.21/kt-gtv-home_v01.07.21_20240220_kaon_release.apk], ClientIP[125.151.56.160], LLB[125.151.12.5,125.151.12.5], VOD[125.151.12.8,125.151.12.8], DestinationIP[], UDPPort[0], DataFree[0], ServiceType[SODE]"
254 1.StreamID[]
255 1.SessionId
256 1.세션ID
257 1.sessionInt.(호환성 이슈)
258 1.RequestURL[요청URL]
259 1.AssetID[요청한 파일]
260 1.ClinetIP[요청한 STB IP]
261 1.LLB[LSM IP, ADC IP]
262 1.VOD[VOD IP, VOD IP]
263 1.DestinationIP[LB IP]
264 1.UDPPort[0]
265 1.DataFree[0]
266 1.ServiceType[SODE]
267
268 *LLB의 경우 GTV 지역/중앙에서는 안 쓴다 (VIP 값을 같이 쓰기 때문)
269 *UDPPort나 DataFree의 경우 GTM 에서 사용함
r8
270 *ServiceType의 경우 SODE와 cueTone의 경우 값을 표기함