MyDevLife (257) 썸네일형 리스트형 04. Router 개념 라우터(게이트웨이) 는 스위치보다 비싸며 속도도 스위치보다 떨어지고 구성하는 방법 역시 스위치보다 힘들다. 하지만 라우터를 사용하는 이유는 브로드캐스트 때문이다. 스위치 동작중 Flooring 이 일어나면 자신을 제외한 모든 노드로 데이터를 전달하는데 라우터가 없다면 이 동작은 지구상에 모든 PC 에 시그널을 보내는 것이 된다. 위의 그림과 같은 상황이다. 이와 같은 상황을 방지하기 위해 스위치가 보낸 정보가 브로드캐스트인 경우 이것을 라우터 한대에서 받고 이 정보 중 상대 서버 경로 다시 가장 가까이에 있는 라우터에 이 정보를 포함하여 보내어 WAN 에서 해당 서버가 있는 LAN 망과 연결된 라우터에 전달하는 것이다. 즉 라우터는 여러 내부 네트워크(LAN)를 연결하는 브릿지 역할을 하여 하나의 내부망.. 03. Switch 개념 Hub 멀티포트 + 리피터 의 기능을 가진다. 허브란 포트가 여러개 달린 장비인데, 랜카드와 연결된다. 허브를 통해 연결된 호스트는 서로 통신할 수 있는데 그 방식이 허브의 한 포트를 통해 들어온 데이터를 허브와 연결된 나머지 모든 포트로 뿌려주어 데이터를 다른 호스트가 받을 수 있게 한다. 네트워크를 만드는 방법중 이더넷을 사용하며 따라서 CSMA/CD 의 적용을 받는다. 즉 하나의 PC 가 허브에 데이터를 보내고 있을 때 또 다른 PC 가 데이터를 같은 Collision Domain 상에 (허브로 묶여있는 네트워크) 보내면 Collision 이 발생하고 눈치껏 통신하게 된다. Switch 허브는 콜리전 도메인에 속한 다른 PC 에 정보를 보낼때 한번에 한 노드만 다른 노드들로 정보를 보낼수 있지만 브.. 02. OSI 7 Layer 초기 여러 정보 통신 업체 장비들은 자신의 업체 장비들끼리만 연결이 되어 호환성이 없었다. 모든 시스템들의 상호 연결에 있어 문제없도록 표준을 정한것이 OSI 7계층이다. 즉, 표준(호환성)과 학습도구로써 제작되었다. OSI 7 Layer 는 개방형 시스템 상호 연결 모델의 표준이다. 인터넷에서 사용되는 TCP/IP 는 OSI 참조 모델을 기반으로 상업적이고 실무적으로 이용될 수 있도록 단순화한 것이다. 동작 정리 OSI 7계층은 응용, 표현, 세션, 전송, 네트워크, 데이터링크, 물리계층으로 나뉜다. 전송 시 7계층에서 1계층으로 각각의 층마다 인식할 수 있어야 하는 헤더를 붙이고 (캡슐화) 수신 시 1계층에서 7계층으로 진행하며 각 계층에서 헤더를 떼어낸다. (디캡슐화) 그래서 전체 과정은 아래와 같.. 01. Overview 네트워크란 Net (그물) + Work 의 합성어로 그물처럼 촘촘히 통신에 사용되는 노드들을 연결한 것을 말한다. 여기서 노드는 통신에 연결되어 사용되는 장비로 컴퓨터, 네트워크 장비, 모바일, TV, 프린터 등 네트워크에 연결되는 모든 기기들이다. 내부 네트워크에 있는 노드가 통신하기 위해서는 보통 스위칭 허브라 불리는 L2 스위치 장비를 이용하여 스위칭(Switching) 을 통해 통신하고 내부 네트워크에서 가상 머신에 내부 네트워크를 할당할 수 있는데 이를 가상랜(VLAN, Virtual LAN) 이라 하며 외부 네트워크에 있는 노드와 통신하기 위해 라우터 및 L3 스위치 장비가 일반적으로 사용된다. (라우터나 L3 스위치는 외부 네트워크에 연결하기 위한 장비이므로 이를 디폴트 게이트웨이 (Defa.. 20. Recipe - SubMake SubMake 를 구성하고자 하는 경우 $(MAKE) 매크로를 사용한다. 다른 Makefile 을 Sub Make 로 돌리는 것이므로 보통 특정 폴더로 들어가서 make 명령을 실행하게 되므로 해당 폴더명을 cd [폴더명] && $(MAKE) 와 같은 형식으로 사용해야 하지만 이는 가독성이 떨어지므로 옵션 -C [폴더명] 으로 cd 명령을 날릴수 있다. SubMake 로 인자전달 $(MAKE) 매크로를 사용하는 경우 MAKEFLAGS 변수가 SubMake 로 자동 전달된다. 예를들어 사용자가 `make -ks' 라고 하면 MAKEFLAGS는 값 `ks' 값을 저장하고 있으며 SubMake 도 이 옵션으로 동작한다. 이때 일부 옵션만 사용하고자 하는 경우 아래와 같이 사용한다. 위와 같이 $(MAKE) M.. 19. Recipe - Interrupts Recipe 수행중 인터럽트가 일어나면 make 는 target file 을 삭제한다. 이렇게 타겟을 삭제하는 목적은 make가 다음에 실행될 때 처음부터 다시 만들어 져서 다음번에 빌드시에 다시 Target 을 만들도록 하여 불완전한 Target 파일을 사용하지 않도록 하기 위해서이다. 18. Recipe - Error Recipe 는 앞서 "Rule 의 구성" 에서 살펴본 바와 같이 선행조건이 만족될 때 수행될 명령이며 보통 한줄씩 실행되는 쉘 명령 라인들로 이루어진다. Syntax 각 쉘 명령이 리턴한 후, make는 그것의 종료 상태값을 조사하고 exit code 가 0 이 아니면 강제 종료한다. 강제 종료하지 않고 진행하고자 한다면 보통 `-i` 혹은 `-k` 옵션을 많이 사용하여 make 유틸리티가 중간에 멈추지 않고 계속해서 빌드를 수행하도록 한다. Makefile 내부의 특정 쉘 커맨드에 대해서만 에러를 무시하도록 하고자 한다면 `-` 를 사용한다. 17. Recipe - ECHO Recipe 는 앞서 "Rule 의 구성" 에서 살펴본 바와 같이 선행조건이 만족될 때 수행될 명령이며 보통 한줄씩 실행되는 쉘 명령 라인들로 이루어진다. Syntax command 를 확인하기 위한 shell echo 명령시 쉘 커맨드가 '@' 로 시작하는 echo 를 입력하는 경우 명령이 쉘에 전달되기 전에 버려져 화면에 출력되지 않는다. make는 `-n' 또는 `--just-print' 플래그를 받으면 실행 없이 echo 만 하고 이련 경우 '@' 로 시작하는 명령들도 실행한다. make는 `-s` 또는 `--silent` 플래그를 받으면 실행된 command 를 표시하지 않는다. 이전 1 ··· 13 14 15 16 17 18 19 ··· 33 다음