본문 바로가기

Total

[C언어] parse Mac Address int parse_mac_address(char *strNum, uchar_t rslt_hex[]) { int enteredNum = 0; int orgIndex = 0; int oprIndex = 0; char numChar[100]; while(orgIndex 2 ) return -1; rslt_hex[enteredNum++] = strtoul(numChar, NULL, 16); oprIndex = 0; } else { if(strNum[orgIndex] >'F' || strNum[orgIndex] < '0') return(-1); numChar[oprIndex++] = strNum[orgIndex]; } orgIndex++; } return (enteredNum); } 입력 포맷 : AA:BB:CC..
NBMA(Non-Broadcast Multi-Access) 네트워크 NBMA(Non-Broadcast Multi-Access) 네트워크는 브로드캐스트 기능이 지원되지 않는 멀티 액세스 네트워크를 말한다. 대표적인 NBMA 네트워크로는 ATM, X.25, Frame Relay 네트워크가 있다. 참고로, 이더넷의 경우는 브로드캐스트 멀티 액세스(BMA, Broadcast Multi-Access) 네트워크로 라우팅 정보를 보낼 때 B/Mcast 패킷 하나만 보내면 된다. 대부분의 NBMA 네트워크는 내부에서 가상회로(Virtual Circut) 방식을 사용하여 Multi-Access를 구현한다. 즉, 하나의 물리적 회선으로 연결되어 있지만, 내부적으로는 복수개의 가상회선을 사용하여 각각 연결되어 있다. NBMA 네트워크에서는 한 포트로 브로드캐스트 패킷을 보내도 기본적으로 다..
[네트워크] 라우팅(Routing) 개론 간략 정리 1. Classful vs Classless 1.1 classful 라우팅 정보를 교환할 때 Network Address의 경계를 나타내는 Mask가 해당 Class를 벗어나지 않는다. 즉, A,B,C클래스의 범위인 /8, /16, /24의 고정적인 크기를 갖는다.(서브넷팅이 되었다고 할지라도) - 라우터와 교환되는 주소에 대한 정보는 Class 단위로 이루어진다. - 라우팅 정보를 교환할 때 가변적인 Mask 값을 전달하지 못하고, 언제나 Class 단위로 교환된다. - IP Address의 사용이 비효율적, 몇 안되는 호스트의 네트워크도 Class단위로 할당해야하고 남은 IP Address는 다른 네트워크에서 사용할 수 없다. - Prefix를 전달하지 못하기 때문에 VLSM과 같은 유용한 기능을 사..
인간의 두얼굴, 착각 세상은 실제로 아름다워서가 아니라 세상이 아름답다고 착각하는 사람들때문에 아름다워지는 것입니다.
[네트워크] 프레임 릴레이, F/R 초기 네트워크의 규모(WAN)가 커지면서 이를 수용하기 위해서 종단간 1:1(Point-To-Point)로 연결을 해주는 전용선(PC, Permanent Circuit) 을 임대해서 사용했습니다. 하지만 원거리의 경우 설치비용이 만만치 않고 모든 서비스마다 점대점 서비스를 제공하기가 어려워 기존에 설치된 공중망을 이용한 서비스가 등장하게 되는데 그게 바로 매우 느린 서비스로 유명한 X.25 입니다. 여튼 초창기 서비스들은 비싼 임대료에 비해 실제 사용시간은 정해져 있어서 비효율적이었습니다. 그래서 사용하지 않을때는 회선을 양보할 수 있도록 고안된 Circuit Switched 방식이 등장하게 됐고,X.25프로토콜의 단점들을 보완해서 Frame-Relay(최대 45Mbps)가 그 중의 대표적인 프로토콜입니..
Packet Drop을 위한 널 인터페이스(NULL Interface) ip route 10.10.10.10 255.255.255.255 null0 ip route 10.10.20.0 255.255.255.0 null0 와 같은 방법으로 설정하면 특정 목적지의 주소를 바로 Drop 시킬 수 있다. access-list는 패킷이 cpu까지 올라가야하므로 성능면에서 좋다. 실제로 null 인터페이스로 보내질때마다 패킷의 소스 IP로 icmp unreachable 에러메시지를 전송하는데 패킷이 많을경우 부하가 될 수 있으니 icmp 에러메시지에 대한 옵션을 꺼두는 것이 좋다. [추가] 세노의 아이디를 쓰셨던 박병석이란 분이 게시판에 쓴 내용입니다. 쉽게 설명이 되어 있어서 첨부합니다. . . . 제로님께서 요청하셨던 '어떻게 null interface 가 routing loop ..
CSPF (Constrained Shortest Path First) Certain Conditions 즉, Constraints를 충족시키는 SPF route 이다. 예를 들어 두 적어도 IS System 사이에 10Mbps의 밴드위스를 만족시켜야한다는 조건이 들어간 Shortest Path를 계산하는 경우이다. Constraints는 보통 인터페이스의 Traffic Engineering 파라메터 값이고, 이는 라우팅 프로토콜(ISIS-TE, OSPF-TE)을 통해서 동기화가 이루어진다. TE를 포함한 라우팅 프로토콜이 수집한 정보는 CSPF에 직접 전달이 되며 MPLS망의 RSVP의 시그널링을 위한 경로를 구하기 위해 사용된다. + CSPF 동작 원리 [클릭]
DOS Batch Script : FTP 파일 자동 전송 1, ftp 로그인 정보와 파일 전송 명령을 txt파일에 순서대로 저장한다. 사용자이름 패스워드 디렉토리 이동 옵션 및 전송모드설정 (option) get/put quit ex) ID password cd apn320/user/sources/metaswitch/output/linux/debug bi get dcwms quit 2. 메모장을 열어 bat 확장자의 스크립트 파일을 작성한다. ftp -i -s:ftp.txt 10.3.0.15 + 2번에서 만든 xxx.bat 파일을 더블 클릭하면 자동 수행된다. 작업표시줄이나 바탕화면에 바로가기를 해두면 편하다. +
루프백 인터페이스 (Loopback Interface) 루프백 인터페이스(Loopback Interface)는 라우터나 스위치에 설정하는 가상의 인터페이스 루프백 인터페이스는 논리적인 것이어서 튼튼하다. 즉, 장애로 인하여 다운될 수 있는 이더넷, 시리얼등과 같은 물리적인 인터페이스에 비해서 루브팩 인터페이스는 네트워크 관리자가 다운시키거나 라우터가 다운되지 않는 한 동작한다. OSPF, BGP등에서 라우터 아이디로 사용됩니다. Loopback Interface를 설정하는 3가지 이유 1. 위와 같은 이유 2. Loopback Interface를 사용하는 이유는 OSPF에서 자주 사용합니다. 일반적으로 OSPF는 BroadCast 구간 내에서는 DR과 BDR을 선출을 합니다. 기존의 IS-IS와는 달리 모든 네이버와 인접관계를 맺는 방식이 아니라 OSPF의 ..
[라우팅,Routing] RIB 와 FIB RIB와 FIB를 키로 구글링을 해보면 대부분 아래와 같은 글이 여기저기서 검색된다. RFC1322의 2.1.1 Storage Overhead를 참조하면 다음과 같이 서술되어 있다. The RIB contains the routing information that entities exchange via the inter-domain routing protocol. the RIB is the input to the route computation. RIB는 inter-domain 라우팅 프로토콜을 통해 교환하는 라우팅 정보 엔터티들을 포함하고 있다. RIB는 경로 계산의 입력물이라고 할 수 있다. The FIB contains the information that the entities use to for..
[C언어] GCC Compile Option Option 설명 -c file 해당 file을 compile -o file 실행 파일명을 file로 설정함 -Wn Warning Level을 n으로 설정함. 대부분의 경우 모든 warning message를 보기위해 -Wall로 설정함 -Ipath Include directory를 path로 설정함 -Lpath Link를 위한 Library를 directory를 path로 설정함 -llib Link시 해당 lib를 같이 link하게 함 -v gcc의 version을 출력 -On Optimize Level을 n으로 설정함 이 option을 주면 실행파일의 크기가 작아지고, 실행속도가 빨라지나 그만큼 위험성이 따름. 대부분의 경우 -O1 또는 -O2를 사용함 Wn 즉, 컴파일 경고 메시지를 설정하는 옵션을..
[C언어] Endian 체크 #define LITTLE_ENDIAN 1 #define BIG_ENDIAN 2 #define PDP_ENDIAN 3 #1 int get_endian() { static long int str[2] = { 0x41424344,0x0 }; /* ASCII "ABCD" */ if (strcmp("DCBA", (char *) str) == 0) return LITTLE_ENDIAN; else if (strcmp("ABCD", (char *) str) == 0) return BIG_ENDIAN; else if (strcmp("BADC", (char *) str) == 0) return PDP_ENDIAN; } #2 int endian(void) { int i = 0x00000001; if ( ((char *)&..
[C언어] BIT READ/WRITE MACRO #define READ_U8(_val, _ptr) { \ _val = *((unsigned char *) (_ptr)); \ } #define READ_S8(_val, _ptr) { \ _val = *((char *) (_ptr)); \ } #define READ_U16(_val, _ptr) { \ _val = *((unsigned short *) (_ptr)); \ } #define READ_S16(_val, _ptr) { \ _val = *((short *) (_ptr)); \ } #define READ_U24(_val, _ptr) { \ _val = *((unsigned int *) (_ptr)) >> 8; \ } #define READ_S24(_val, _ptr) { \ _val = *((int ..
네트워크, MPLS (Multiprotocol Label Switching) 개념잡기 MPLS (Multiprotocol Label Switching) MPLS는 네트웍 트래픽 흐름의 속도를 높이고 관리하기 쉽게 하기 위한 입증된 표준 기술이다. MPLS는 주어진 패킷 열에 대하여 특정 경로를 설정하는 것에 관여하는데, 각 패킷 내에는 라벨이 있어서 라우터 입장에서는 그 패킷을 전달해야할 노드의 주소를 보는데 소요되는 시간을 절약할 수 있다. MPLS는 멀티프로토콜이라고 불리는데, 그 이유는 IP, ATM 및 프레임 릴레이 네트웍 프로토콜 등과 함께 동작하기 때문이다. MPLS는 네트웍의 OSI 표준 참조모델과 관련하여, 3 계층(라우팅)이 아닌, 스위칭을 하는 2 계층에서 대부분의 패킷이 전달될 수 있게 한다. MPLS는 트래픽을 전반적으로 빠르게 움직이게 하는 것 외에도, QoS를 위..
멀티캐스트(Multicast) 개론 간략 정리 1. H/W multicast (대부분의 경우 이더넷 멀티캐스트) 이더넷 멀티캐스트 주소 : 01.00.00.00.00.00 최상위 옥텟중 최하위 비트를 사용함 2. IP Multicast best-effort => 멀티캐스트 데이타그램이 손실, 지연, 중복 또는 순서가 틀리게 전달될 수도 있다. 멀티캐스트 주소는 무조건 destination 필드에만 올 수 있다. Class D : 224.0.0.0 ~ 239.255.255.255 224.0.0.0 예약되어 어떤 그룹에도 할당될 수 없다. 224.0.0.1 IP 멀티캐스트에 참여하는 모든 호스트와 라우터를 포함하는 all hosts group에 영구히 할당, 지역망에서 주로 사용되고 인터넷에서 모든 호스트를 지시하는 IP 멀티캐스트 주소는 없다. 3. ..
[IS-IS] Three NSAP Formats ISO8348/Ad2 1. Simple format 2. OSI NSAP format 3. Government OSI Profile(GOSIP) NSAP format (GOSIP Version2) CISCO Router는 위 세 가지 타입 모두를 지원하지만,,, 일반적으론 AFI -1B와 Area - 2B로 구성된 Area Address를 사용하는 것 같다. 위처럼 공식적인 도메인을 사용할 필요가 없다면 IS-IS가 IGP이기때문에 대부분 사설망에 할당된 도메인 48~50을 AFI값으로 사용함. 대부분 49 (?) ex) 49.0001 + IS-IS 라우터에는 일반적으로 하나의 NET 주소가 할당된다. 하나의 라우터에 여러 개(시스코는 Max 3개로 제한)의 NET 주소를 할당할 수 있지만 이럴 경우 그..
다이애나 효과, 지식채널e - 눈물의 선물 1997년 교통사고로 사망한 다이애나 황태자비를 눈물로 애도한 영국인들, 그리고 한동안 절반으로 줄어든 우울증 환자들의 수 심리학자들은 이 현상을 울음을 통해 스트레스와 우울증이 해소된 것이라고 풀이 슬플 때 울지 않으면 다른 장기가 대신 운다. -헨리 모슬리(영국 정신과 의사) 건강하게 우는 법 자신을 100% 이해해주고 받아들여 줄 수 있는 사람 앞에서 목 놓아 우는 것. 그래..가끔은 Shandi-lee X {pieces I} by Shandi-lee
[C언어] structure file dump and reading T_MMDB_EXT_VLAN_TAG_OPER_PROFILE = *MMDB_EXT_VLAN_TAG_OPER_PROFILE[MAX_MMDB_EXT_TAG_RULE]; // DUMPING #ifdef SUPPORT_GPON_EXT_VLAN_OPER sprintf(buf, "rm -rf %s", MMDB_EXT_VLAN_PROFILE_CONFIG_FILE); system(buf); fp = fopen(MMDB_EXT_VLAN_PROFILE_CONFIG_FILE, "wb"); if ( NULL != fp ) { for (ii=0; ii
05윈도우즈 7 - ATI 라데온 64비트용 그래픽 드라이버 다운로드 [링크] http://game.amd.com/us-en/drivers_catalyst.aspx?p=win7/windows-7-64bit 링크로 들어 가서 중간쯤 ATI Catalyst™ 10.3 Components for Windows 7 (64 bit) 항목에서 1번 디스플레이 드라이버 (Display Driver) 그리고 2번에서 한글판을 선택한 후 3번 Catalyst Control Center(Korean) 을 다운받아 설치 하시면 됩니다.
64비트 다음 팟 플레이어 설치와 CoreAVC 코덱 설정 [다운로드] http://potplayer.daum.net/PotPlayer64/v2/PotPlayerSetup64.exe [관련카페] http://cafe.daum.net/pot-tool KMP 제작자가 개발하고 있다는 말에 왠지 모를 신뢰가~~ 굳이 32비트 팟플도 64비트 시스템에 잘 돌아갑니다만 좀 더 무거운 동영상을 재생할 경우 64비트 CoreAVC 비디오 코텍을 연결해서 사용할 경우 좀 더 가벼운 재생을 할 수 있습니다. 물론 장단점은 있지만,, 자세한 내용은 http://cafe.naver.com/window7.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=61945 에 기술되어 있는데 로그인이 필요합니다. [CoreAVC 연결하는 방법 보기] http:/..