유니코드 #3

출처 : http://www.bsidesoft.com/?p=3526&

UTF16 인코딩의 개요

1회차에서 유니코드 기본 개념을 살펴보고 2회차에서는 UTF8을 공부했습니다.

이번 포스팅에는 대부분의 응용프로그램 내부에서 사용되는 UTF16을 알아봅니다.

UTF8만으로는 안되는 걸까…
UTF8은 전송 시에 유리하지만 UTF16은 프로그램 실행 시 유리하니까.
그렇긴 하지만.

UTF16의 감을 잡기 위해 브라우저의 자바스크립트가 작동하는 절차에 대해 생각해볼까요.

  1. 우리가 작성한 xxx.js 파일은 UTF8로 저장합니다. W3C권장사항이고 최근에는 UTF8이 대세입니다.
  2. 브라우저에서는 우선 xxx.js를 읽어들여 UTF8기준으로 디코딩하여 코드포인트를 해석합니다.
  3. 해석된 코드포인트를 자바스크립트 엔진에게 전달하면 엔진은 코드포인트를 UTF16으로 인코딩하여 메모리에 적재합니다.

“파일용 인코딩”과 “프로그램 내부에 사용하는 인코딩”은 다를 수 있습니다.

  1. 파일을 디코딩하고 메모리용으로 다시 인코딩하는 작업이 중복되어 초기 작동 시에는 부담이 되지만,
  2. 프로그램이 실행될

유니코드 #2

출처 : http://www.bsidesoft.com/?p=3496&

심화된 인코딩 탐구

저번 포스팅에서는 유니코드에 대한 개요와 인코딩이란 무엇인가에 대한 기초개념을 살펴봤습니다.
다음과 같은 내용이 나왔죠.

  • 코드포인트 – 문자에 할당된 고유한 숫자값
  • 평면 – 코드포인트를 관리하기 위한 그룹범위
  • 코드유닛 – 일정한 크기를 하나의 문자로 바라보는 단위
  • 인코딩 – 코드유닛과 코드포인트의 크기 차이를 처리하기

이번 시간에서는 여러가지 인코딩방식에 따라 실질적인 인코딩을 처리해가면서 구체적인 내용을 살펴볼 예정입니다.

약간만 더 복잡해질거야.
…말도 안..

유니코드 인코딩의 종류

유니코드에서 사용하는 인코딩은 표준으로 지정되어있습니다. UTF8, UTF16, UTF32 라는 세 가지로 각각 뒤에 붙은 숫자는 코드유닛의 비트 크기입니다.

  1. UTF8 : 8비트 = 1바이트를 코드유닛으로 사용하는 인코딩. 인터넷에 교환되는 대부분의 파일에 사용됨.
  2. UTF16

유니코드 #1

출처 : http://www.bsidesoft.com/?p=3435

개요

본래 우리가 작성한 문서에 있는 문자들은 그대로 저장될 수는 없습니다. 반드시 숫자로 바뀐 후 저장되죠. 따라서 문자를 숫자로 바꿔주는 표가 꼭 필요합니다.
이러한 문자를 숫자로 바꿔주는 표 중에 가장 유명한 건 아스키표입니다. 아스키표를 사용하면 영어, 숫자, 기초적인 기호들에 대해 고유한 숫자 값을 부여해 변환할 수 있습니다.
하지만 한국어나 일본어, 중국어 등 아스키표에 포함되지 않은 문자들은 각 나라마다 별도의 변환표를 만들어서 표준으로 지정했습니다.

보통 이러한 개별 표들은 아스키와 호환되면서 자기 나라 말이 잘 표현될 수 있도록 정의됩니다. 따라서 ‘영어 + 한국어’, ‘영어 + 일본어’는 잘 표현되지만, ‘영어 + 한국어 + 아랍어’는 깨지기 마련입니다. 한국에서 정의한 표에 아랍어를 …

RESTful이란 무엇인가?

출처 : http://blog.remotty.com/blog/2014/01/28/lets-study-rest/

이 글에서는 REST(Representational State Transfer)에 대해서 알아보겠습니다.

목차

머리말

바로 위에서 REST에 대해서 알아본다고 하였지만, REST의 정의와 같은 것은 생략할 예정입니다. 진짜로 이글에서 다룰 것은 실제 RESTFul한 API를 작성할 때 도움될만한 것들을 공부합니다. 또한 여러가지 규칙이 있지만 어느 규칙이 진짜이고, 표준화 된것이 없기때문에(이런것으로 알고있습니다.) 실제 많은 사이트들이 약간씩은 다른 형태로 REST API를

이클립스에서 maven 플러그인을 설치하고 다음과 같은 에러가 나올 때…

Maven plugin을 설치하고 다음과 같은 에러가 발생하였다.

 

Eclipse is running in a JRE, but a JDK is required
Some Maven plugins may not work when importing projects or updating source folders.

eclipse.ini를 열어서 다음을 추가해준다.

-vm
C:\Program Files\Java\jdk1.6.0_10\bin\javaw.exe

[SIP] Call Forking 이란?

출처 : http://blog.naver.com/websearch/70043618853

Call Forking 은 하나의 전화번호로 전화를 호출하여서 여러 개의 전화기에 전화벨을 울려주는 기능을 의미합니다.

Call Forking SIP Flow 는 Cisco Unified Communications Manager SIP Line Messaging Guide(Standard) 에 아래와 같이 잘 그려져 있더군요.
아래의 그림에서 (d2)[3], (d3)[4] 가 Call Forking 하는 기능을 잘 표현해 주고 있습니다. 하나의 전화기에서 수신하면 다른 전화기에는 CANCEL 메시지를 보내서 통화 요청을 중지시키는 점도 확인하세요.

G 계열 코덱 비교 (G.711,G.722,G.723,G.726,G.728,G.729)

출처 : http://blog.naver.com/websearch/70044938826

코덱 종류

알고리즘(압축방식)

속도 Bit
rate(BW)

encoding
time

MOS

설명

 G.711  PCM  64 Kbps  10 ms  4.1  PSTN 통화 품질
 G.726  ADPCM  16K, 24K, 32K  10 ms  3.85  BW 크면 품질 좋음
 G.722  SB-ADPCM  64 Kbps      멀티미디어 음성 회의. AM 방송 품질
 G.723  MLQ  6.3 Kbps

 5.3 Kbps

 30 ms  3.9  MS 넷미팅 기본 코덱
 G.723.1

 MPC-MLQ

 ACELP

 6.3 Kbps

 5.3 Kbps

 37.5 ms

 3.9

 3.61

 이동통신
 G.728  LD-CELP  16 Kbps  15 ms  3.61  디지털 이동 통신
 G.729  CS-ACELP  8 Kbps  10 ms  3.9  VoIP 에서 가장 보편적인
코덱

[문자인코딩] 유니코드, UTF-8, UTF-16, UTF-32 간단 정리 Application

출처 : http://ggaman.com/tt/896

유니코드란?

unicode는 모든 문자에 index를 줘 놓은 것이다. 더 이상도 아니고, 더 이하도 아니다.
이 index를 code point라고 부르는데, 그냥 index라고 칭하도록 하자.

‘A’라는 글자는 0x0041 이라는 index를 가진다.
‘a’라는 글자는 0x0061 이라는 index를 가진다.
‘가’라는 글자는 0xac00 이라는 index를 가진다.
( 더 많은 글자와 index를 보려면 http://www.unicode.org/charts/  를 참고하자 )

표현방법

저렇게 정해져 있는 index를 표시하는 방법에는 UTF와 UCS두가지 종류가 있다.
( UTF – Unicode Transformation Format ,    UCS – Universal Character Set )

UCS
UCS는 몇바이트로 index를 표현할 수 있느냐를 나타낸다.
즉 UCS-2는 2byte로 index를 나타낼꺼고 UCS-4는 4byte를 이용해서 index를 나타낼거라는거다.

UTF
UTF는

SIP 응답 목록

모든 SIP 응답의 목록

1xx = 정보용 응답

  • 100 시도 중
  • 180 전화 벨 울림
  • 181 통화 전달 중
  • 182 대기 중
  • 183 세션 진행

2xx = 성공 응답

  • 200 확인
  • 202 수락: 참조용으로 사용

3xx = 경로 변경 응답

  • 300 복수 선택
  • 301 영구 이동
  • 302 임시 이동
  • 305 프록시 사용
  • 380 대체 서비스

4xx = 요청 실패

  • 400 잘못된 요청
  • 401 권한 없음: 등록기관만 사용 가능. 프록시는 프록시 인증 407을 사용해야 합니다.
  • 402 요금 청구됨(향후 사용을 위해 예약)
  • 403 금지
  • 404 찾을 수 없음: 사용자를 찾을 수 없음
  • 405 메소드가 허용되지 않음
  • 406 수락할 수 없음
  • 407 프록시