•  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

CiGLBServer(r15 Blame)

r15
r1

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

(새 문서)
3== 개요 ==
4 *[[CiGLBServer]](이하 GLB)는 SettopBox (이하 STB)이 VOD 재생 요청을 했을 때 가장 먼저 만나는 바이너리다.
5 *G/W 의 역할을 한다.
6 *요청받은 내용을 LoadBalancer 라는 바이너리에게 요청 사항을 전달해주고 그 응답값을 다시 받아와 STB에게 보낸다.
7 *이를 토대로 STB은 어떤 VOD 서버로 요청하면 될지 정보를 확인할 수 있다.
8
r11
9===# 해당 프로세스와 연동 된 프로세스 #===
10||<-2> ''' 연동된 프로세스 정보''' ||
11|| '''프로세스 명''' || '''설명''' ||
12|| [[LoadBalancer2|LoadBalancer2]][* LB] || CiGLBServer가 실행될 때 ServiceMonitor에 의해 자동으로 시작되며, LB 프로세스와 클라이언트 요청 처리를 위해 VOD 서버로 리다이렉션 합니다. ||
13|| VOD 서버 || 직접적인 통신을 수행하지 않지만, 리다이렉션 대상이 되는 서비스이며, VOD 서버의 포트 설정[* redirect_port.cfg]이 연결되어 있습니다. ||
14|| ServiceMonitor || CiGLBServer는 ServiceMonitor에 의해 자동 실행됩니다. 비정상 종료 시 재시작하도록 설정되어 있습니다.||
15|| cache‑manager || CiGLBServer는 이 프로세스와 연동해 요청을 처리할 때 캐시를 활용하거나, 필요 시 재시작 명령을 전달합니다. ||
16|| vodcmd || VOD 관련 상태를 확인하기 위해 명령어가[* ./vodcmd all status] 사용됩니다. ||
17
r13
18=== '''CiGLBServer 관련 이슈 사항''' ===
19====# CiGLBServer 에서 세션 할당 실패 이슈 #====
20 *현상 : CiGLBServer 패치 후 재시작 시 세션 할당이 되지 않는 현상
r15
21 *확인 및 조치 방법 : [br] 1. GLB 바이너리의 버전과 서버 OS의 버전이 동일한지 [br] '''# ls -alrt /usr/local/castis/CiGLBServer''' [br] 2. 잘못 되어 있다면 동일 한 GLB 바이너리로 변경 후 재시작 [br] '''# ln -sf /usr/local/castis/CiSRMServer_el5_x86_64_3.0.6.1 CiGLBServer''' [br] 3. GLB.log에 에러 발생하는지 확인 [br] '''# grep Error /var/log/castis/glb_log/GLB.log'''
r13
22
23 * '''참고 사항'''
24{{{CiGLBServer,3.0.7,2025-08-08,01:16:05.360,Error,SMPoolThreadID[1] SMPoolThread.cpp:InitInstance(45),,"Failed to load dll(so) for OneTimeURL, LibFileName[./CiEncryptionKey.so]"
25CiGLBServer,3.0.7,2025-08-08,01:18:33.597,Error,SMPoolThreadID[1] SMPoolThread.cpp:PostMessageFromListen(84),,Failed to PostMessage for SMPool from Listen}}}
26 *위 에러 로그 발생 시 CiEncryptionKey.so 라이브러리를 확인
27 *CiGLBServer 바이너리의 OS 버전과 CiEncryptionKey.so 의 OS 버전이 일치 하는지 확인
28
r1

(새 문서)
29== 설정 ==
30 *GLB의 기본 동작 관련된 설정값이다.
31
r9
32===# 관련 설정 파일 #===
33 *프로세스 메인 설정 파일
r12
34>/usr/local/castis/[[CiGLBServer.cfg 설정 파일|CiGLBServer.cfg]]
r9
35
36
r10
37 *서비스 별 LB 설정 파일
r14
38>/usr/local/castis/[[glb.cfg 설정 파일|glb.cfg]]
r9
39
40
r10
41 *Filler=Y 큐톤 매핑 정보
42>/usr/local/castis/cuetone_mapping_info.cfg
r9
43
44
r10
45 *Filler=N 큐톤 매핑 정보
46>/usr/local/castis/cuetone_mapping_info_byFiller.cfg
r9
47
r1

(새 문서)
48=== 주요 로그 ===
49==== RTSP Describe (VOD 서비스) 정보 요청 입수 ====
50 *VOD에 한해 아래 로그를 표시한다(RTSP의 FLOW)
51>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"
52 1.RTSP요청
53 1.UUID = GLB 서버가 자체적으로 생성하는 추적용 값.
54 1.uri(STB에서 요청하는 rtsp 주소)
55 1.rtsp://GLB_IP/파일 이름?p=v1 VOD 요청 (고정값)
56 1.:카테고리 ID (현재 VOD 에선 비어있음)
57 1.:F 무료 VOD(R 유료시청, S 코너가입시청
58 1.:6자리 숫자 RegionID (가입자 동코드)
59 1.:11자리 숫자 가입자 SAID (UserID):이어보기 여부 (N 처음부터, Y 이어보기)
60 1.:S3 (OTS 기본형 (사후광고 제공함) <- Postplay 재생가능 단말기종 구분자 (V1~V4, S1~S4))”
61
62==== RTSP Describe (VOD 서비스) 정보 요청 ====
63>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]"
64
65 1.AssetID[애셋ID(파일이름)]
66 1.UUID[GLB 추적용 ID]
67 1.ClientIP[고객 IP]
68
69==== RTSP Describe (VOD 서비스) 정보 요청 결과 ====
70>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]"
71 1.LB[LSM, ADC]
72 1.AssetID[파일이름]
73 1.UUID[GLB 추척 ID]
74 1.result[결과]
75 1.Client 고객 IP[요청한 고객 STB IP]
76
77==== RTSP Setup (VOD 서비스) 요청 입수 ====
78>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""}]"
79 1.RTSP요청 고객(STB) IP
80 1.SessiondId[세션Id].
81 1.uri(STB에서 요청하는 rtsp 주소)://GLB_IP/파일 이름?p=v1 VOD 요청 (고정값)
82 1.:카테고리 ID
83 1.:F 무료 VOD(R 유료시청, S 코너가입시청:6자리 숫자 RegionID (가입자 동코드)
84 1.:11자리 숫자 가입자 SAID (UserID):이어보기 여부 (N 처음부터, Y 이어보기)
85 1.:S3 (OTS 기본형 (사후광고 제공함) Postplay 재생가능 단말기종 구분자 (V1~V4, S1~S4))
86 1.device_info : STB이나 요청하는 장비의 정보
87 1.“어플이름”
88 1.”버전정보”
89 1.”펌웨어”
90 1.”펌웨어 버전 정보”
91 1.”SAID”
92 1.”가입자 정보”
93 1.”Model”
94 1.”STB 모델명”
95
96==== VOD 서비스 요청 ====
97>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]"
98 1.GLB로 온 세션 요청
99 1.AssetID[요청한 파일]
100 1.StreamID[]
101 1.SessionId[]
102 1.ClinetIP[요청한 STB IP]
103
r3
104==== LB로부터 VOD 서비스에 대해 VOD 서버 할당 요청 결과 ====
105>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]"
106 1.StreamID
107 1.SessionID
108 1.SessionInt.(deprecated)
109 1.AssetID
110 1.VOD Server IP
111 1.결과값 표시
112 1.LB[LSM,ADC]
113 1.ClinetIP[요청한 STB IP]
114
115==== VOD 세션 셋업 완료 ====
116>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[]"
117 1.StreamID[]
118 1.SessionId[]
119 1.RequestURL
120 1.요청 URL://GLB_IP/파일 이름?p=v1 VOD 요청 (고정값)
121 1.:카테고리 ID (현재 VOD 에선 비어있음)
122 1.:F 무료 VOD(R 유료시청, S 코너가입시청
123 1.:6자리 숫자 RegionID (가입자 동코드)
124 1.:11자리 숫자 가입자 SAID (UserID)
r7
125 1.:이어보기 여부 (N 처음부터, Y 이어보기)
126 1.:S3 (OTS 기본형 (사후광고 제공함) <- Postplay 재생가능 단말기종 구분자 (V1~V4, S1~S4))”]
127 1.AssetID[요청한 파일]
128 1.ClinetIP[요청한 STB IP]
129 1.LLB[LSM IP, ADC IP]
130 1.VOD[VOD IP, VOD IP]
131 1.DestinationIP[LB IP]
132 1.UDPPort[0]
133 1.DataFree[0]
134 1.ServiceType[]
135
136 *LLB의 경우 GTV 지역/중앙에서는 안 쓴다 (VIP를 쓰기 때문), UDPPort나 DataFree의 경우 GTM 에서 사용함, ServiceType의 경우 VOD는 공백
137
138==== VOD 세션 종료 ====
139>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]"
140 1.StreamID
141 1.SessionID
142 1.파일크기
143 1.LB[LSM,ADC]
144
145==== RTSP Setup (A CUETONE 서비스) 요청 입수 ====
146>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]"
147 1.RTSP요청 요청 고객(STB)
148 1.IP
149 1.SessiondId[세션Id].
150 1.uri(STB에서 요청하는 rtsp 주소)://GLB_IP/cueTone?p=c1(큐톤 종류 A큐톤=c1)
151 1.:채널 ID
152 1.:6자리 숫자 RegionID (가입자 동코드)
153 1.:11자리 숫자 가입자 SAID (UserID)
154 1.:채널 ProviderID(01 OTV, 02 OTS)
155 1.:셋탑박스 모델
156 1.&필러 삽입 세션여부
157 1.&adUpdate=큐톤광고 사용 유무
158 1.&adid=통합광고ID
159 1.&adidYN=ADID사용유무
160 1.&userSeg=타겟광고사용유무(Y:타겟+메스, N:매스)
161 1.device_info[STB이나 요청하는 장비의 정보]
162
163==== A CUETONE 광고 셋업 완료 ====
164>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]"
165 1.StreamID[]
166 1.SessionId[]
167 1.RequestURL
168 1.rtsp://GLB_IP/cueTone?p=c1(큐톤 종류 A큐톤=c1)
169 1.:채널 ID:6자리 숫자 RegionID (가입자 동코드)
170 1.:11자리 숫자 가입자 SAID (UserID)
171 1.:채널 ProviderID(01 OTV, 02 OTS)
172 1.:셋탑박스 모델
173 1.&필러 삽입 세션여부
r3
174 1.&adUpdate=큐톤광고 사용 유무
175 1.&adid=통합광고ID
176 1.&adidYN=ADID사용유무
177 1.&userSeg=타겟광고사용유무(Y:타겟+메스, N:매스)
178 1.device_info[STB이나 요청하는 장비의 정보]
179 1.AssetID[요청한 파일]
180 1.ClinetIP[요청한 STB IP]
181 1.LLB[LSM IP, ADC IP]
182 1.VOD[VOD IP, VOD IP]
183 1.DestinationIP[LB IP]
184 1.UDPPort[0]
r4
185 1.ServiceType[ACUETONE]
186
187==== RTSP Setup (B CUETONE 서비스) 요청 입수 ====
188>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]"
189 1.RTSP요청 요청 고객(STB) IP
r3
190 1.SessiondId[세션Id].
191 1.uri(STB에서 요청하는 rtsp 주소)://GLB_IP/cueTone?p=c1(큐톤 종류 B큐톤=c2)
r6
192 1.:채널 ID
193 1.:6자리 숫자 RegionID (가입자 동코드)
194 1.:11자리 숫자 가입자 SAID (UserID)
195 1.:채널 ProviderID(01 OTV, 02 OTS)
196 1.:셋탑박스 모델
197 1.&필러 삽입 세션여부
198 1.&adid=통합광고ID
199 1.&adidYN=ADID사용유무
200 1.&userSeg=타겟광고사용유무(Y:타겟+메스, N:매스)
201 1.device_info[STB이나 요청하는 장비의 정보]
202
203==== B CUETONE 광고 셋업 완료 ====
204>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]"
205
206==== RTSP Setup (D CUETONE 서비스) 요청 입수 ====
207>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"
208 1.RTSP요청 요청 고객(STB) IP
209 1.SessiondId[세션Id].
210 1.uri(STB에서 요청하는 rtsp 주소)://GLB_IP/cueTone?p=c1(큐톤 종류 D큐톤=c3)
211 1.:채널 ID
212 1.:6자리 숫자 RegionID (가입자 동코드)
213 1.:11자리 숫자 가입자 SAID (UserID)
214 1.:채널 ProviderID(01 OTV, 02 OTS)
215 1.:큐톤 광고 시작 시간(UNIX 시간,밀리세컨드)
r3
216 1.:큐톤 광고 지속시간(초)
217 1.:큐톤 event ID,인벤토리 영역 구분값
218 1.:stbModel
219 1.&필러 삽입 세션여부
220 1.&adid=통합광고ID
221 1.&adidYN=ADID사용유무
222 1.&userSeg=타겟광고사용유무(Y:타겟+메스, N:매스)
223
224==== D CUETONE 광고 셋업 완료 ====
225>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]"
r5
226
227==== CUETONE 광고 서비스 요청 ====
228>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]"
229 1.GLB로 온 세션 요청
r6
230 1.AssetID[cueTone]
231 1.StreamID[]
232 1.SessionId[]
233 1.ClinetIP[요청한 STB IP]
234
235==== CUETONE 정보를 찾지 못한 경우 ====
236>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)"
237
238==== SODE 서비스 요청 ====
239>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]"
240 1.GLB로 온 세션 요청
241 1.AssetID[요청한 파일]
242 1.StreamID[]
243 1.SessionId[]
244 1.ClinetIP[요청한 STB IP]
245
246==== SODE 세션 셋업 완료 ====
247>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]"
248 1.StreamID[]
249 1.SessionId
250 1.세션ID
251 1.sessionInt.(호환성 이슈)
252 1.RequestURL[요청URL]
253 1.AssetID[요청한 파일]
254 1.ClinetIP[요청한 STB IP]
255 1.LLB[LSM IP, ADC IP]
256 1.VOD[VOD IP, VOD IP]
257 1.DestinationIP[LB IP]
258 1.UDPPort[0]
259 1.DataFree[0]
260 1.ServiceType[SODE]
261
262 *LLB의 경우 GTV 지역/중앙에서는 안 쓴다 (VIP 값을 같이 쓰기 때문)
263 *UDPPort나 DataFree의 경우 GTM 에서 사용함
r8
264 *ServiceType의 경우 SODE와 cueTone의 경우 값을 표기함