전체 글 238

[UDP] 특성

UDP 특성 패킷 유실 UDP를 받아들이는 입장에서는 들어오는 UDP를 memcpy 로 큐에 밀어넣는데 발생하는 비용이 소요되고 이 큐에 있는 것을 다른 쓰레드에서 소비하는데 제대로 소비하지 못하면 큐도 밀려 UDP 패킷 유실이 발생 이것은 최소한의 소비 패턴과 패킷의 들어오는 발생 빈도를 바탕으로 잘 튜닝을 해야하는 문제입니다. 지훈현서 블로그 참고 UDP 헤더의 목적은 UDP 헤더 내 Port # = 2152를 통해 UDP 헤더 다음에 GTP 헤더가 있음을 알리는 것입니다. UDP는 TCP와 달리 재전송 mechanism이 없기 때문에 eNB와 EPC간 전송되는 유저 데이터에 대한 재전송은 불가능하고, 이는 단말(UE)과 목적지(예. naver 서버)간에 TCP 재전송 혹은 응용 레벨의 재전송 방법에..

엔지니어 2016.12.06

[Linux] Bonding 본딩 설정

Bonding 이란?------------- Linux kernel에 내장된 기술2개 이상의 Network Interface Card를 논리적으로 1개의 interface로 묶음Bandwidth, redundancy 향상- https://www.kernel.org/doc/Documentation/networking/bonding.txt Bonding 구성 방법----------------- - Interface alias 'bond0:1 bond0:2'를 이용하여 여러 IP 주소 지정https://oracle-base.com/articles/linux/nic-channel-bonding - 일반 본딩 설정 링크 모음http://onecellboy.tistory.com/279 Bonding mode----..

엔지니어 2016.12.05

[GDB] 자주 쓰는 명령어

보통 프로세스가 죽고나서 dump된 core 파일을 보다보니그때마다 사용하는 명령어를 매번 검색해서 찾기가 불편하여이곳에 모아서 보려함. * GDB 명령어2017.12.29 심볼 테이블에 대해 확인하기 위한 명령어 예시구조체 안의 정보를 찾아서 확인한다고 봐도 될 것 같다. (gdb) bt (gdb) frame 9 #9 0x00002b459abc0e5f in test_GenCancelTrct (pStParser=0x7bb3590, pStTrct=0x2aab1a951e50) at test_Utility.c:834 834 test_Utility.c: 그런 파일이나 디렉토리가 없음. in test_Utility.c (gdb) whatis pStTrct type = stTrct_t * (gdb) ptype pS..

엔지니어 2016.11.17

Unsupported major.minor version 52.0 Error in Java (ubuntu 14.04)

참고: http://stackoverflow.com/questions/22489398/unsupported-major-minor-version-52-0 빌드는 1.8 JDK에서 해놓고 톰캣에 올려서 돌릴때는 1.7 JDK에서 돌린 경우 발생할 수도 있다고하는데역시나.. ㅜ.ㅜ OS: ubuntu 14.04 # update-alternatives --config java대체 항목 java에 대해 (/usr/bin/java 제공) 3개 선택이 있습니다. 선택 경로 우선순� 상태------------------------------------------------------------* 0 /usr/lib/jvm/java-8-oracle/jre/bin/java 1072 자동 모드 1 /usr/lib/jvm/j..

엔지니어 2016.07.18

futex 함수 (Fast User muTEX)

strace로 프로세스 상태를 체크하다가 보게 되었습니다. FUTEX 란?   출처 : http://www.hanbit.co.kr/preview/1492/sample_chap01.pdf리눅스 커널 2.6에는 새로운 프로세스 간의 통신으로 FUTEX라는 것이 있습니다. 이것은 동일 머신 상의 복수 프로세스 간에 잠금(Lock) 처리를 합니다. 동일 페이지를 프로세스에 매핑하고, 그 위에 잠금 변수를 공유하게 함으로써 경합이 발생하지 않는 한 시스템 콜 개입 없이 잠금 처리를 할 수 있습니다. 많은 프로 세스나 스레드가 협조하여 동작하는 응용 프로그램에서는 매우 유용한 구조입니다. FUTEX_WAIT ?                           출처 : https://meenakshi02.wordpre..

엔지니어 2016.02.04