본문 바로가기

분류 전체보기681

728x90
반응형
NS-3에서 수중 통신 시뮬레이션하는 방법 조사 본 글은 2017년 12월 14일 21시 07분에 썼던 글이며 블로그 자료 이전으로 날짜만 갱신된 글입니다. 우리 연구실에 6년 동안 진행하는 수중 센서 네트워크 연구 프로젝트가 들어오면서 나의 연구 주제에 수중도 추가되었다. 어차피 기존에 익혀두었던 지식을 토대로 수중환경의 특징을 고려해서 연구하면 되니 시간이 충분하다면 주제를 바꾸는 건 큰 문제가 없기에 전환하였다. 우리 연구실은 2007년부터 수중 네트워크 연구를 했었기에 관련 연구 경험이 있는 편이었다고 한다. 지금까지는 시뮬레이터를 주로 NS-2를 썼다고 한다. 이번에 연구 기간이 긴 프로젝트가 생긴 김에 현재 가장 활발히 사용되는 NS-3에서 수중 시뮬레이션이 가능한 지 조사해보았다. 1. UAN(Underwater Acoustic Netwo.. 2020. 5. 19.
이제 PaperMC 기반 플러그인 개발 방법을 기록하고자 한다. 너무 일만 하고 있다보니 의욕이 완전히 없어지는 시점이 온 것 같다. 그래서 내가 좋아하는 게임의 플러그인을 개발하는 것으로 내가 흥미있어 하는 것을 해보고자 한다. 최근 마인크래프트 서버 유행을 조사해보니 과거에는 바닐라 서버로 게임할 것 아니면은 버킷 외에는 사실상 쓸만한 대안이 없는 수준이었던 것으로 기억하는데 최근에는 몇몇 분쟁으로 인해 버킷에서 파생된 서버 프로그램들이 많이 생긴 것으로 확인했다. 그래서 이것 저것 조사한 결과 PaperMC 기반의 서버를 구축하여 개발한 플러그인을 구동하는 것이 가장 빠르고 재미있을 것으로 판단하였고 개발하면서 알게된 자료를 본 블로그에 기록하고자 한다. 오랜만에 마인크래프트 계정으로 로그인하니 닉네임이 KSaGiTo 나온다. 그리운 닉네임이다. 2020. 4. 22.
[윈도우 10] 자동 업데이트와 디펜더(백신)을 비활성화 하는 법 컴퓨터를 쓰다보면 컴퓨터의 가용자원은 적은데 안에 데이터가 중요하지 않은 경우가 종종 발생한다. 그 경우 윈도우10에서 자원을 너무 많이 가져다 쓰는 두 가지 서비스를 비활성화만 해도 상당히 많은 가용자원 확보가 가능하다. 그 두가지 서비스는 윈도우 자동 업데이트와 윈도우 디펜더이며 비활성화 방법은 아래에 기술하겠다. 먼저 윈도우 디펜더부터 비활성화 하겠다. 윈도우키를 눌러서 '정책'을 입력하면 '그룹 정책 편집'이라는 프로그램이 나타난다. 클릭해서 실행한다. '컴퓨터 구성-관리 템플릿-Windows 구성 요소-Windows Defender 바이러스 백신'에 가서 'Windows Defender 바이러스 백신 사용 안 함'을 더블 클릭한다. 사용에 체크를 하고 확인을 누른다. 윈도우키를 누르고 '서비스'.. 2020. 2. 27.
시놀로지 DS218J 프로토콜별 파일 전송속도 비교 파일 전송 프로토콜을 비교한 이유 시노롤지 DS218J는 파일 전송을 위해 다양한 프로토콜을 지원하는데 워낙 지원하는 수가 많다보니 어떤 프로토콜을 써야 파일 전송속도가 가장 좋을 지가 궁금하여 테스트해보았다. 비교한 프로토콜은 FTP와 FTPS, SFTP, HTTP, HTTPS, SMB이다. 단순히 생각해보면 암호화-복호화 과정을 거치지 않는 FTP와 HTTP, SMB(평문통신)가 가장 성능이 좋을 것으로 예상한다. 파일 전송 프로토콜 비교를 위한 환경 클라이언트 프로그램으로 FTP와 FTPS는 파일질라(FileZilla)를 활용하였고 SFTP와 HTTP, HTTPS는 레이드라이브(RAIDRIVE) 1.8.0(2019.11.29), SMB는 윈도우 파일 탐색기를 사용하였다. 통신환경은 NAS와 PC는 .. 2019. 12. 25.
시놀로지 DS218J에서 점보프레임(9K)을 설정해보았다. 점보프레임을 테스트한 이유 최근에 시놀로지 DS218J를 장만하여 시놀로지에 입문하게 되면서 여러가지를 테스트해보고 있다. 예상했던 것 처럼 구매한 NAS 하드웨어 스펙의 한계로 통신속도가 썩 마음에 들지는 않아 이것 저것을 설정해가며 실험 중이다. 실험해본 것 중 하나가 '점보프레임 설정에 따른 통신속도는 어떻게 변화할 것인가?' 인데 결론부터 말하자면 점보프레임을 안 쓰는 것이 통신 속도가 훨씬 좋았다. ※ 점보프레임은 이더넷 네트워크에서 전송 속도를 높이기 위해 데이터 프레임(MTU) 크기를 늘려서 통신하는 것을 말한다. 표준상(RFC 894) 데이터 프레임이 최대 1500 바이트로 제한되어 있으나 점보프레임은 이를 그 이상으로 늘려서 사용한다. 점보프레임은 비표준 기술이므로 업체별로 자체표준이 있.. 2019. 12. 18.
XE3에서 COMPOSER_HOME 설정하기 XE3는 라라벨(Laravel) 기반으로 작성된 CMS(Content Management System)이다보니 라라벨에서 사용하는 컴포저(Composer)라는 의존성 관리 툴을 활용하고 있다. 이 툴을 활용해서 플러그인과 같은 것들을 생성할 수 있다고 한다. 필자의 경우 이 Composer 설치 경로를 설정하지 않아서 'COMPOSER_HOME environment variable must be set for composer to run correctly.'라고 에러가 났었다. XE3의 경우 컴포저를 내장하고 있으므로 XE3 내에서 컴포저 관련 파일들이 저장될 공간을 만들고 그 경로를 XE3 관리자 페이지에서 설정하면 해결된다. 사이트 루트경로로 가서 컴포저 저장소로 활용할 폴더를 '.composer'라.. 2019. 10. 3.
IIS+PHP7 환경에서 XE3용 MIME 설정하기 XE3에서 일부 기능에서는 파일 확장자를 사용하지 않는 것들이 있는데 이 때문에 정상적으로 기능이 작동하지를 못 한다. IIS+PHP7로 서버를 구성하였다면 MIME(Multipurpose Internet Mail Extensions) 설정을 별도로 해줘야 한다. 파일 확장자가 없으므로 IIS+PHP7으로 구성한 서버의 기본 설정으로는 서버가 파일을 보내주지 않으므로 저렇게 해당 주소에 이미지가 없다고 대체 이미지가 뜬다. 실제 경로에 가보면 이렇게 파일이 있다. 윈도우 이미지 뷰어로 열어보면 잘 보인다. 확장자 없는 파일도 전송되도록 MIME를 수정해줘야 한다. IIS(인터넷 정보 서비스) 관리자로 가서 해당 사이트의 IIS MIME 형식 설정을 연다. 우측 상단의 '추가'를 누르고 위 이미지 처럼 '.. 2019. 10. 3.
XE3 에서 'The operation is locked.' 경고 해결하는 법 XE3에서 작업하다보면 어떤 이유 때문에 진행하던 작업을 강제 중단해야하는 경우가 있다. 그러다보면 XE3에서 특정 리소스가 잠긴 상태 그대로 남게 되고 이 때문에 'The operation is locked. Make sure that another process is running.'이라는 문구를 보게 될 것이다. 이를 해결하는 방법은 간단하다. XE3가 설치된 경로의 /storage/app/operations.json 파일을 열어서 해당 작업이 잠긴 것을 해제해주면 된다. "lock": true, 되어 있는 것을 "lock": false, 로 바꾸면 된다. 2019. 10. 3.
XE3에서 관리자 2차 비밀번호 분실시 확인하는 법 XE3가 무엇인지 알아보겠다고 설치한 지 몇달의 시간이 지난 후에 드디어 시간이 되서 관리자 페이지를 살펴보려고 했는데 2차(2단계) 비밀번호를 입력해라고 떠서 좀 당황했다. 2차 비밀번호를 잊어버려서 찾는다고 시간을 좀 버렸다. 비밀번호는 평문으로 사이트가 설치된 폴더에 있는 파일에 저장되어 있었다. 2차 비밀번호 파일 경로 : {XE3가 설치된 경로}/config/production/auth.php 'password'에 들어가는 문자열 값이 현재 2차 비밀번호이다. 저 부분을 확인해서 그대로 쓰거나 변경하고 싶으면 변경하면 된다. 기존 비밀번호가 저장된 파일 정보 2019. 9. 8.
XE에서 도메인변경 후 잘못된 요청입니다가 뜰 때 본 글은 2017년 7월 18일 11시 11분에 썼던 글이며 블로그 자료 이전으로 날짜만 갱신된 글입니다. XE에서 도메인변경 후 로그인할 때 잘못된 요청입니다가 뜰 때가 있다. 원인은 다양하게 많겠지만 보통 다음과 같은 행동을 취하면 해결된다. 브라우저의 캐시와 쿠키를 삭제하고 \files\config\db.config.php 파일을 열어서 'default_url' => 'http://www.xpressengine.com/' 이 부분을 확인한 후 지정된 기본 주소로 접속하여 로그인을 시도하면 된다. 크롬에서는 위와 같이 설정->인터넷사용기록삭제 에 가면 캐시와 쿠키를 삭제할 수 있다. 2019. 7. 28.
2. 멀티위 쿼드콥터 부품 주문 본 글은 2015년 4월 5일 13시 14분에 썼던 글이며 블로그 자료 이전으로 날짜만 갱신된 글입니다. 항상 소프트웨어 개발만 했었기에 그렇게 많은 부품이 필요없었다. 하지만 이번에는 하드웨어도 다루기 때문에 내가 역대 진행했던 프로젝트 중에서 주문하는 부품 갯수가 가장 많은 프로젝트가 될 것 같다. 지난 번에 언급한 주제 두 가지 중에 RF통신을 활용한 쿼드콥터 제어와 실시간 영상 송수신을 통한 FPV(First Person View) 레이싱을 개발할 수 있도록 재료를 주문하였다. 1. Argonaut AQ320 premiere FPV kit - 320 미니쿼드 (전원보드, BEC 내장형)쿼드콥터의 몸체가 되는 재료이다. 전원보드가 있어서 별도의 BEC 구입이 필요없다. BEC(Battery Elim.. 2019. 7. 18.
1. 캡스톤디자인의 주제로 쿼드콥터를 제작하게 되었다. 본 글은 2015년 4월 4일 14시 33분에 썼던 글이며 블로그 자료 이전으로 날짜만 갱신된 글입니다. 이번 학기 캡스톤디자인 주제로 쿼드콥터를 제작하게 되었다. 캡스톤 멤버이신 분과 근처 회사원이신 형님, 다른 프로젝트 건으로 합류하신 형님으로 총 4명이서 개발한다. 기왕하는 김에 진행과정과 코드 전체를 문서로 작성하여 온라인에 공개하고 작성한 문서는 모아서 전자책까지 쓰는 것을 목표로한다. 저작권은 우리에게 있지만 모든 것은 무료로 배포된다. 쿼드콥터는 한 가지 또는 두 가지 방향으로 개발이 될 것 같다. 1. 블루투스와 좌표를 이용한 쿼드콥터 자동제어사업단간의 이해관계 문제로 정해져 있는 주제다. 스마트폰에서 쿼드콥터를 블루투스 통신으로 제어한다는 것인데 실유효거리가 10m 밖에 안 되기 때문에 .. 2019. 7. 13.
이더넷(Ethernet) 연결한 미박스(Mi Box)를 텔레비 오레오 롬에서 글로벌 오레오 롬으로 변경하기 얼마 전에 방에 있는 TV에서 넷플릭스를 시청하기 위해 미박스를 중고로 구매해서 왔는데 텔레비 버전이라서 넷플릭스가 재생되지 않았다. 넷플릭스를 지원하지 않는 기기라는 메시지가 뜨고 있던 와중 이것 저것 누르다보니 미박스 화면에서 업데이트가 가능하다는 메시지가 떴는데 별 생각 없이 업데이트 했다가 넷플릭스가 재생되지않고 리커버리 모드도 리모컨으로 진입되지 않는 고물딱지가 되어 애먹었기에 혹시나 이런 상황이 되신 분들을 위해 시행착오를 겪지 말라고 글을 하나 쓴다. 텔레비용 미박스에서 넷플릭스를 보려면 텔레비 롬에서 글로벌(샤오미) 롬으로 교체해야 하고 이 롬 교체를 위해서 리커버리 모드로 미박스를 부팅해야 하는데 텔레비용 미박스를 오레오(8.0.0)으로 업데이트하면 리커버리 모드를 리모컨으로 못 들어가게.. 2019. 7. 3.
VPN(Virtual Private Network)을 경유하지않고 외부망 이용하기 VPN(Virtual Private Network)은 물리적으로 같은 네트워크에 있는 것이 아니어도 하나의 네트워크에 있는 것처럼 네트워크를 구성할 수 있는 기술이다. 이 기술을 활용하면 사용자는 서울(Network A, 192.168.0.%)에 있어도 대구에 있는 자신의 회사 네트워크(Network B, 192.168.1.%)에 접속하여 회사 네트워크를 이용할 수 있게 된다. VPN으로 네트워크를 구성하면 네트워크 정책상 외부(서울)에 서비스를 제공하지 않고도 VPN에 연결된 외부 장치(192.168.0.2)는 내부에 있는 서비스를 이용할 수 있게 된다. 또한 암호화 VPN을 구성하면 내부에서 외부로 데이터가 유출되어도 내용이 암호화 되어 있어 해독이 불가능하기에 보안이 확보되는 것이 큰 특징이다. 윈.. 2019. 5. 2.
NS-3에서 프로토콜 모듈을 추가해보자 본 글은 2017년 12월 15일 07시 48분에 썼던 글이며 블로그 자료 이전으로 날짜만 갱신된 글입니다. NS-3을 이용해 시뮬레이션을 하기 위하여 NS-3에 없는 기존에 있던 모듈을 나의 NS-3에 추가해야 하는 경우가 있다. 일단 NS-3 시뮬레이터가 이미 빌드되어 있다고 가정하고 설명한다. 먼저 추가하고자 하는 모듈을 ns-3.x/src 폴더에 넣는다. 나는 aqua-sim-ng 모듈을 다운 받았다. 이렇게 모듈을 src 폴더에 넣어준 후 다음의 명령어를 입력한다. $ ./waf configure --enable-examples --enable-tests $ ./waf build 그러면 위와 같은 로그들이 쭈욱 나타난다. 정상적으로 모듈 빌드와 테스트가 완료되었는 지를 확인하고 다음의 명령어를 .. 2019. 4. 14.
파이썬 웹 개발 환경 구축 4 - 파이참(PyCharm)에서 장고(Django) 개발 환경 설정하기 파이참이 설치되었고 잘 실행된다면 이제는 파이참(PyCharm)에서 장고(Django) 개발 환경을 구성하는 일이 남았다. 장고 개발 환경 구축은 장고 패키지 설치부터 시작하여 장고 프로젝트 생성, 장고 실행 설정을 통해 구축이 완료된다. Create New Project를 클릭하여 새로운 프로젝트를 생성한다. 새로운 프로젝트 설정은 위와 같이한다. File - Settings 를 클릭하여 파이참 설정으로 간다. Project: 프로젝트명 - Project Interpreter 에 가서 우측 상단의 + 를 클릭하여 패키지를 설치한다. Django를 검색하여 Install Package를 눌러서 설치한다. 장고 패키지 설치가 완료되면 Package 'Django' installed successfully .. 2019. 3. 25.
IoTivity의 예제를 라즈베리파이와 안드로이드에 실행시켜보았다. 본 글은 2017년 7월 27일 17시 18분에 썼던 글이며 블로그 자료 이전으로 날짜만 갱신된 글입니다. 운영체제와 네트워크 인터페이스와 무관하게 어플리케이션에게 장치간 연결성을 제공하는 솔루션 중 하나가 IoTivity이다. IoTivity는 어플리케이션을 개발하기 용이하도록 프레임워크를 제공한다. 최근에 내가 IoTivity를 활용한 개발이 어느 정도 가능한 지를 확인하는 일을 맡게 되어서 진행 중인데 버전별로 메뉴얼도 충분하지 않고 빌드 시간도 너무 길어서 아주 시간을 많이 허비했다. 하지만 그나마 IoTivity가 경쟁 솔루션 대비 잘 정리되어 있는 것이고 그나마 국제적으로 강력한 지원을 받고 있는 플랫폼이라는 것에 위안을 삼아 진행하고 있다. 꾸역꾸역 빌드를 하고 안드로이드에 예제 앱을 올려서.. 2019. 3. 25.
NS-3(Network Simulator 3) 소개 본 글은 2016년 8월 8일 21시 34분에 썼던 글이며 블로그 자료 이전으로 날짜만 갱신된 글입니다. NS-3 개요 NS-3(Network Simulator 3, http://www.nsnam.org/) 시뮬레이터는 2006년에 오픈소스 프로젝트로 시작된 무료 네트워크 시뮬레이션 프로그램이다. NS-3는 discrete-event 기반 네트워크 시뮬레이터로써 주로 연구 및 교육용으로 사용한다. NS-3는 독립 이벤트 시뮬레이터로 패킷레벨의 시뮬레이션이 가능하며 계층구조, 유선 및 무선 네트워크를 지원한다. NS-3 특징 NS-3는 FreeBSD와 Linux, SunOS, Solaris, Windows(Cygwin) 플랫폼을 지원하며 C++로 작성되었다. NS-3는 현재도 활발히 사용 되는 NS-2와 .. 2019. 3. 25.
파이썬 웹 개발 환경 구축 3 - 파이참(PyCharm) 통합개발환경(IDE) 설치하기 콘솔과 텍스트에디터로 개발하는 것은 빌드와 실행 등의 반복(노가다) 작업을 수행해야하고 패키지 정보를 쉽게 찾는 등의 생산성을 향상시킬 수 있는 편의기능이 없으므로 파이썬을 지원하는 통합개발환경(IDE, Integrated Development Environment)을 활용하여 생산성을 확보하는 것이 좋다. 쉽게 설명하면 자바를 배울 때 이클립스를 사용하는 것과 C/C++를 배울 때 비주얼 스튜디오를 사용하는 것과 같다. 파이참 에디션(라이센스)별 제공 기능 비교 : https://www.jetbrains.com/pycharm/features/editions_comparison_matrix.html 파이썬의 통합개발환경은 파이참(PyCharm)이 대표적이다. 파이참 에디션(라이센스)은 프로페셔널(유료)과.. 2019. 3. 25.
파이썬 웹 개발 환경 구축 2 -파이썬에 장고(Django) 프레임워크 설치하기 필자는 파이썬으로 웹 개발을 하는 것이 목표이기 때문에 장고(Django) 프레임워크(Framework)를 사용할 수 있는 개발환경을 구축해야 했다. 본 글에서는 장고 프레임워크를 설치하고 예제 프로젝트를 생성하여 실행해서 정상적으로 장고 프레임워크가 설치되었는지를 확인한다. 파이썬을 설치했고 환경 변수 중 Path를 설정했다면 'pip -V'를 입력하면 PIP(패키지 매니저, Package manager)가 설치되어 있음을 알 수 있다. 이 패키지 매니저로 장고 프레임워크를 간단한 명령어 입력만으로 설치할 수 있다. 'pip install django'를 입력하여 장고 프레임워크 설치를 시작한다. 정상적으로 설치되었다면 'Successfully installed django'이 나올 것이다. ※ 삭제는.. 2019. 2. 24.