안녕하세요. 이번 시간에는 한글입력이 안될 때 어떻게 해야 되는지 방법에 대해서 알려드리겠습니다. 저도 여느 때처럼 블로그를 켜서 글을 쓰려는데 갑자기 한글이 안 쳐지길래 이렇게 찾아서 써봅니다.


우선 Win + R을 누른 후 'ctfmon'이라고 입력해줍니다.



이렇게 입력해주면 오른쪽 밑의 시간과 소리 등등 정보를 나타내는 창이 다음과 같이 나타나는 것을 볼 수 있습니다.



아마 원래 'A'라는 기호가 없었을건데 'ctfmon'이라고 입력해주면 생기게 됩니다. 이제 저 'A'를 눌러서 '가'로 바뀌게 한 다음 한글을 입력해주면 됩니다.




 이렇게 했는데도 안 된다는 분이 있을 수 있습니다. 이제 그 분들을 위한 추가 방법을 알려드리겠습니다. 다시 Win + R을 누른 후 'regedit'이라고 입력해줍니다. 'regedit'이란 레지스트리 편집기를 말합니다.



입력해 준 후 아래의 경로대로 들어가줍니다.


HKEY_CURRENT_USER -> Software -> Microsoft -> Windows -> CurrentVersion -> Run



그럼 위와 같은 화면을 보실 수 있는데 오른쪽의 레지스트리 목록에서 빈 공간을 우클릭 한 후 '새로 만들기 - 문자열 값'을 클릭해줍니다. 그 다음 아래와 같이 입력해줍니다.



입력이 완료됐으면 '확인'을 눌러 끝내준 후 다시 Win + R을 눌러 'ctfmon'이라고 입력해줍니다.


 이상으로 한글입력이 안될 때 할 수 있는 방법에 대한 포스팅을 마치도록 하겠습니다. 참고한 사이트의 링크는 아래에 있습니다.


http://devon.tistory.com/58

'Utility' 카테고리의 다른 글

메인보드 확인하는 방법  (0) 2018.11.07
마우스 반응속도 높이기  (1) 2018.08.28
윈도우 디펜더 끄기 - Window Defender Off  (0) 2018.08.27

 안녕하세요. 이번 시간에는 IP 주소를 각 클래스별로 나누어놓은 것에 대해 알아보겠습니다. 현재의 IPv4 체제는 다양한 용도에 따라 사용되고 있지만 이진수로 나타내었을 때 가장 앞에 있는 2개의 비트의 상태에 따라 다른 용도로 사용되고 있습니다. 그럼 어떨 때 어떠한 용도로 사용되는지 알아보도록 하겠습니다.


A 클래스 [ 1.0.0.0 ~ 126.255.255.255 ]

 : A클래스는 IP 주소 중에서 최상위 비트(가장 앞의 비트)가 0으로 시작하는 주소를 나타냅니다. 즉 이진수로 나타냈을 때 첫번째 옥탯(첫번째부터 여덟번째까지의 비트)가 00000000에서 01111111 사이의 주소를 나타냅니다. 이진수로 나타내면 아래와 같이 나타낼 수 있습니다.


00000000.00000000.00000000.00000000 ~ 01111111.11111111.11111111.1111111 ---> 이진수

0.0.0.0 ~ 127.255.255.255 ---> 십진수


 이렇게 나타낼 수 있는데 이때 주의할 것은 0과 127로 시작되는 주소는 각각 네트워크 전체를 나타내는 주소와 로컬 호스트(Loopback)을 나타내는 주소로 예약되어 있기 때문에 사용할 수 없습니다. 따라서 사용할 수 있는 네트워크 주소의 범위는


1.0.0.0 ~ 126.255.255.255 가 됩니다. 또한 A 클래스의 기본 서브넷 마스크는 255.0.0.0(prefix; 프리픽스 -> /8)으로서 7비트의 네트워크 ID와 24비트의 호스트 ID를 갖게 됩니다.


B 클래스 [ 128.0.0.0 ~ 191.255.255.255 ]

 : B 클래스는 IP 주소의 최상위 2개의 비트가 01로 시작하는 주소를 나타냅니다. 따라서 이진수로 나타내면 아래와 같이 나타낼 수 있습니다.


10000000.00000000.00000000.00000000 ~ 10111111.11111111.11111111.11111111 ---> 이진수

128.0.0.0 ~ 191.255.255.255 ---> 십진수


 B 클래스는 위의 주소 범위를 갖는 IP들이 속해있는 클래스입니다. 기본 서브넷 마스크 값은 255.255.0.0(prefix : /16)으로 32비트 중 호스트 비트와 네트워크 비트의 수가 같습니다.


C 클래스 [ 192.0.0.0 ~ 223.255.255.255 ]

 : C 클래스는 최상위 비트 2개가 1이고 3번째 비트가 0인 주소를 나타냅니다. 이진수로 나타내면 아래와 같이 나타낼 수 있습니다.


11000000.00000000.00000000.00000000 ~ 110111111.11111111.11111111.11111111 ---> 이진수

192.0.0.0 ~ 223.255.255.255 ---> 십진수


 C 클래스의 기본 서브넷 마스크는 255.255.255.0(/24)로 24개의 네트워크 ID와 8개의 호스트 ID를 갖습니다. C 클래스는 현재 일반 가정집에서 널리 쓰이고 있습니다. 


 이 외에도 D클래스 E클래스까지 있지만 두 개의 클래스는 연구용, 군사용 등 다른 특수한 목적으로 사용되기 때문에 실생활에서 가상의 네트워크에서 설정하는 것이 아니라면 보기 힘든 IP들입니다. 이상으로 각 클래스에 대한 설명을 마치도록 하겠습니다.

'Network ' 카테고리의 다른 글

라우터 & 스위치 기본설정  (0) 2018.09.27
Subnetting [ 서브넷팅 ]  (0) 2018.09.10
TCP/IP  (0) 2018.09.06
OSI 7계층  (0) 2018.09.03
OSI(Open Systems Interconnection) 참조 모델  (0) 2018.08.29

 안녕하세요. 이번시간에는 서브넷팅에 대해 알아보도록 하겠습니다. 서브넷팅은 간단히 말해서 큰 IP 대역을 작은 IP 대역으로 나눈다고 할 수 있겠습니다. 이 말만 들으면 다소 어렵게 느껴지지만 한번 이해하고 하는 방법을 알게 된다면 큰 어려움은 없을 것이라고 생각됩니다. 또 서브넷팅은 네트워크를 하는 사람이라면 필수적으로 이해해야 하는 부분이기 때문에 꼭 알고게셔야 합니다. 그럼 바로 들어가도록 하겠습니다.


 현재의 IP 주소는 32비트의 IPv4 주소체제를 사용하고 있습니다. 바로 와이파이를 설정할 때나 봤을법한 192.168.0.1/24 이런 숫자가 IP 주소라는 친구인데요. 컴퓨터나 핸드폰은 각 장치마다 이 IP 주소를 하나 혹은 이상을 갖고 있습니다. 그렇다면 이런 IP 주소는 어디에 쓰이는 것일까요? 제가 앞서 말했듯이 IP는 일종의 주소입니다. 주소라고 표현하는 이유는 모든 네트워크 통신이 이루어지는 장비는 이 주소를 갖고 있고 데이터를 보내야 할때 각 장치의 IP를 목적지로 해서 전송하기 때문입니다. 이런 IP 주소는 각 장치마다 하나 혹은 이상의 주소를 갖게 되는데 서브넷팅은 이러한 주소를 효율적으로 관리하고 할당하기 위해 사용하는 방법입니다.


 서브넷팅 하기에 앞서 서브넷마스크라는 것의 개념을 알아야 합니다. 서브넷마스크란 네트워크의 범위를 지정해주는 기능을 함으로써 0.0.0.0~255.255.255.255의 IP 주소 대역을 서브넷마스크를 통해 여러 개의 대역으로 나눌 수 있습니다. 192.168.0.1/24의 주소가 있다고 가정할 때 서브넷 마스크는 '/24' 이 부분이 됩니다. 이 표기방식은 프리픽스(prefix) 표기 방식으로 서브넷마스크에서 1로 설정돼 있는 비트의 수를 나타낸 값입니다. 만약 '/24'로 되어있다면 서브넷마스크에서 1의 개수는 24개가 되는 것입니다. 아래의 그림으로 설명해보도록 하겠습니다.


※ 서브넷마스크는 IP 주소와 AND연산을 통해 IP 주소의 범위를 지정합니다.


192.168.0.1 이라는 주소가 있을 때 이를 0과 1로 나타내면


11000000.10101000.00000000.00000001 이 됩니다. 이때 서브넷마스크가 '/24'라면 1의 개수가 24개라는 말이 됩니다.

11111111.11111111.11111111.00000000 ---> 서브넷마스크


 이렇게 놓고 위의 IP 주소와 아래의 서브넷마스크를 AND 연산을 하게 되면


11000000.10101000.00000000.00000000 이 됩니다. 이를 다시 10진수로 표현하면 192.168.0.0/24이 됩니다. 이것을 다르게 말하면 192,168.0.1/24는 192.168.0.0에서 192.168.0.255까지의 IP 주소가 들어있는 192.168.0.0/24의 대역에 속해있다고 할 수 있습니다. 위의 과정을 자세히 보면 서브넷마스크에서 1인 부분은 모두 IP 대역을 나타내고 0인 부분은 모두 호스트에 할당할 수 있는 IP를 나타내는 것을 확인할 수 있습니다. 때문에 서브넷마스크에서 1인 부분은 네트워크를 나타낸다고 해서 네트워크 ID라고 부르고 0인 부분은 호스트를 나타낸다고 해서 호스트 ID라고 부릅니다.


 서브넷팅을 하는 방법이 처음에는 어렵고 난감하게 느껴지실 수 있지만 몇번 해보고 적용해보면 쉽게 할 수 있다는 것을 깨달을 수 있습니다. 예를 들어 보겠습니다. 예를 들어 A라는 회사의 컴퓨터가 150대 있습니다. 이때 A회사에 알맞은 IP를 할당하기 위해서는 어떤 크기의 IP 대역을 할당받아야 할까요? 아래의 과정을 통해 알아보도록 하겠습니다.


※ 서브넷팅은 오로지 2의 제곱수로만 할당이 가능합니다. 이유는 서브넷마스크에서 1의 개수가 많아질수록 할당할 수 있는 IP의 개수는 2의 제곱씩 작아지기 때문입니다. 

EX> 192.168.0.0/24 -> 254개, 192.168.0.0/25 -> 126개, 192.168.0.0/26 -> 62개 ,,,,

 이때, IP 대역에서 첫번째 IP와 마지막 IP는 각각 네트워크를 나타내는 IP와 브로드캐스트 IP로 사용되기 때문에 호스트에 할당할 수 없습니다.


 우선 150대의 컴퓨터가 있기 때문에 할당해야 할 IP는 150보다 많아야 합니다. 그리고 2의 제곱 중 150보다는 크되 가장 작은 수를 찾아야 합니다. 그렇다면 256이 나옵니다. 256은 2^8이 됩니다. 따라서 150대의 컴퓨터에 IP를 할당하기 위해서는 총 254개의 IP 주소를 할당할 수 있는 IP를 구매해야 하고 A회사에서 121.240.0.0의 대역을 서브넷팅해서 구매한다고 결정했다면 서브넷팅은 호스트 ID를 8개로 해서 2^8인 256이 되도록 설정해야 합니다.


121.240.0.0

01101111.11110000.00000000.00000000 -> IP

11111111.11111111.11111111.00000000 -> subnet mask -> /24

-----------------------------------------------

121.240.0.0/24 이렇게 되어야 맞게 서브넷팅 했다고 할 수 있습니다.


 A회사에서 121.240.0.0/24의 대역을 구매했다면 121.240.0.1~121.240.0.150까지의 IP를 할당할 수 있게 됩니다. 하지만 만약 서브넷팅을 잘못해서 121.240.0.0/25의 대역을 구매했다면 121.240.0.1~121.240.0.126까지 총 126개의 컴퓨터까지 할당할 수밖에 없게 됩니다. 이때, 254개의 IP 중 150개의 IP를 사용하면 104개의 IP가 남게 되지만 이 IP들은 사용할 수 없으므로 추가되는 컴퓨터에 할당하거나 내버려두어야 합니다. 이것이 IPv4의 단점입니다.


 서브넷마스크가 원래 처음에는 접했을 때도 어렵고 알고 있다고 해도 설명하기 어려운 부분입니다. 따라서 많이 연습해보고 직접 설정해보는 것이 가장 좋은 방법입니다. 이상으로 서브넷마스크에 대한 설명을 마치도록 하겠습니다.


 만약 너무 어려워서 이해를 못하시곘다면 댓글로 남겨주세요. 최대한 자세히 알려드리겠습니다.

'Network ' 카테고리의 다른 글

라우터 & 스위치 기본설정  (0) 2018.09.27
IP 주소 클래스  (0) 2018.09.13
TCP/IP  (0) 2018.09.06
OSI 7계층  (0) 2018.09.03
OSI(Open Systems Interconnection) 참조 모델  (0) 2018.08.29

 안녕하세요. 이번 시간에는 TCP/IP(Transmission Control Protocol / Internetwork Protocol)에 대해 알아보도록 하겠습니다.


 TCP/IP란 현 세대에서 인터넷을 사용하는 모든 통신의 기본 프로토콜입니다. 현재의 네트워크는 TCP/IP를 통해 모든 통신이 가능합니다. TCP/IP는 OSI 7계층을 4개의 층으로 나누어 구성하는데, 1~2계층을 네트워크 접속 계층(Network Access Layer), 3계층을 인터넷 계층(Internet Layer), 4계층을 전송 계층(Transport Layer), 5~7계층을 응용 계층(Application Layer)으로 구분합니다. 각 계층의 역할은 아래와 같습니다.


 - 네트워크 접속 계층 : OSI 7계층 중 1,2 계층에 해당하는 역할을 하며 프레임의 송수신을 담당합니다. 대표적인 프로토콜로는 ARP(Address Resolution Protocol)이 있습니다.

 - 인터넷 계층 : IP 주소 체계를 관리하고, 패킷을 받았을 때 목적지 IP 주소를 찾아 해당 목적지로 패킷을 보내는 라우팅 기능을 합니다. 대표적인 프로토콜로는 IP와 ICMP(Internet Control Message Protocol)가 있습니다.

 - 전송 계층 : 종단 간 통신을 담당합니다. 대표적인 프로토콜로는 TCP(Transmission Control Protocol)과 UDP(Uesr Datagram Protocol)가 있습니다.

 - 응용 계층 : 네트워크를 통한 사용자의 데이터를 처리하는 역할을 합니다. 대표적인 프로토콜로는 HTTP, FTP 등이 있습니다.


※ ARP : 주소 변환 프로토콜로서 MAC 주소와 IP 주소를 매칭하여 MAC주소를 모를 경우 IP 주소를 통하여 MAC 주소를 알아내는 프로토콜입니다. 반대로 MAC 주소는 알지만 IP 주소를 모를 경우 사용하는 프로토콜은 RARP(Reverse Address Resolution Protocol)입니다.

※ TCP / UDP : TCP는 포트 번호를 사용하여 신뢰성 있는 통신을 제공하는 반면 UDP는 포트 번호는 사용하지만 신뢰성은 제공하지 않는 프로토콜입니다. 하지만 UDP는 헤더가 TCP보다 짧아 TCP보다 처리 속도가 빠르다는 장점이 있습니다.

※ TCP의 주요 사용 예시 : 인터넷 웹사이트, 은행 사이트 등등 보안이 필요한 상황

※ UDP의 주요 사용 예시 : 게임, 스트리밍 등등 속도가 중요한 상황


-TCP 헤더-

 TCP는 연결 지향형 서비스 제공 및 신뢰성 있는 데이터 전송을 보장합니다. 이러한 특성들은 TCP 세그먼트 헤더 내의 여러 필드에 의해 가능합니다. TCP 세그먼트의 헤더는 아래와 같은 구조를 이루고 있는데요. 그렇다면 하나씩 살펴보도록 하곘습니다.



 출발지 포트(Source Port) : 세그먼트가 출발된 호스트의 몇번 포트에서 나왔는지를 나타냅니다.

 목적지 포트(Destination Port) : 세그먼트가 목적지 호스트의 몇번 포트로 향하는지를 나타냅니다.

 순서 번호(Sequence Number) : 해당 세그먼트의 번호를 나타냅니다. TCP는 각 세그먼트에 번호를 포함하여 전송하고 수신할 때는 순서 번호를 통해 재조립합니다.

 수신 확인 응답 번호(Acknowledgement Number) : 해당 세그먼트가 무사히 도착했다는 의미를 발신 장치로 보내 수신 성공 여부를 알려줍니다.

 헤더 길이(Data Offset) : TCP 헤더의 크기를 나타냅니다. 최소 20비트에서 최대 60비트까지 가능합니다.

 예약 비트(Reserved) : 나중의 다른 목적이 생겼을 경우 사용하는 필드입니다.

 URG(Urgent) : 이 비트가 1로 설정돼있으면 긴급 포인터 필드로 지정된 긴급 데이터를 우선 처리합니다.

 ACK(Acknowledgement) : 이 비트가 1로 설정돼있으면 수신 확인 응답 번호 이전까지의 모든 세그먼트들이 잘 도착했음을 나타냅니다.

 PSH(Push) : 이 비트가 1일 경우 일반 데이터를 빨리 처리하도록 요청하는 비트입니다.

 RST(Reset) : 이 비트가 1일 경우 TCP 세션을 리셋합니다.

 SYN(Synchronization) : 통신을 시작할 때 두 호스트 사이의 세션을 초기화하고 시퀀스 넘버를 동기화하기 위한 제어 비트입니다.

 FIN(Finish) : 세션을 종료할 때 사용하는 제어 비트입니다.

 윈도우 사이즈(Window Size) : 수신측으로부터 시퀀스 넘버의 수신 없이 전송할 수 있는 데이터의 양을 지정합니다.

 TCP 체크섬(TCP Checksum) : TCP 데이터에 대한 오류 검사를 하기 위한 필드입니다.

 긴급 포인터(Urgent Pointer) : 데이터 전송 중 어느 곳에 긴급 데이터가 있는지를 명시하기 위한 포인터입니다.

 옵션(Options) : 최대 40바이트까지 가능하고 여러 옵션이 들어있습니다. 


-UDP 헤더-

 UDP 헤더는 TCP와 마찬가지로 전송 계층에서 동작하고 포트 번호를 기반으로 동작하지만 수신한 데이터에 대한 응답이 없고 데이터의 흐름을 제어하는 기능을 하지 않기 때문에 TCP 헤더보다 훨씬 짧은 헤더를 갖고 있습니다. UDP 세그먼트의 헤더 구조는 아래와 같습니다.



 출발지 포트(Source Port) : 세그먼트가 출발한 출발지 호스트의 포트 번호를 나타냅니다.

 목적지 포트(Destination Port) : 세그먼트가 향하는 목적지 호스트의 포트 번호를 나타냅니다.

 길이(UDP Length) : UDP 헤더와 데이터를 포함한 길이를 나타냅니다.

 체크섬(UDP Checksum) : UDP 헤더와 데이터의 오류를 나타내기 위한 필드입니다.


-IP 헤더-

 IP 프로토콜은 패킷을 출발지에서 목적지까지 전송하는 역할을 담당합니다. 그렇다면 IP 헤더의 구조와 역할에 대해 알아보도록 하겠습니다.



 버전(Version) : IP가 어떤 버전을 사용하는지를 나타냅니다. 현재는 IPv4를 사용하지만 점차 IPv6를 사용하는 추세로 넘어가고 있습니다.

 헤더(Internet Header Length) : 헤더의 길이를 나타내는 필드입니다.

 TOS(Type of Service) : 라우터나 호스트 등의 장치에서 패킷 처리에 대한 우선순위를 설정합니다.

 전체 길이(Total Length) : 헤더 + 데이터의 길이를 나타냅니다.

 식별자(Identification) : 각 패킷마다 부여되는 고유 번호를 말합니다. 패킷은 전송될 때 최대 전송 단위(MTU; Maximum Transfer Unit) 값에 의해 여러 프래그먼트(Fragment)로 분할된 후 전송되는데 이때 수신한 프래그먼트들은 식별자 값을 기준으로 재조립됩니다.

 플래그(Flags) : IP 패킷의 분할(fragmentation) 가능 여부, 해당 프래그먼트가 마지막인지 아닌지를 알려주는 필드입니다.

 분할 위치(Fragment Offset) : IP 패킷이 분할될 때 원래 어느 위치에 있었는지를 나타내는 필드입니다.

 TTL(Time-to-Live) : 패킷의 루핑(Looping) 현상으로 생기는 문제를 해결하기 위해 사용되며 말 그대로 패킷의 수명을 나타냅니다. TTL 값은 라우터를 하나 거칠때마다 -1되며 0이 되면 해당 패킷은 폐기됩니다.

 프로토콜(Protocol) : 패킷에 캡슐화되어 있는 상위 계층의 PDU가 어떤 프로토콜을 사용하는지 나타내는 필드입니다.

 헤더 체크섬(Header Checksum) : IP 헤더의 오류가 존재하는지를 검사하는 필드입니다.

 출발지 주소(Source Address) : 패킷이 출발한 출발지 장치의 IP 주소를 나타냅니다.

 목적지 주소(Destination Address) : 패킷이 향하는 목적지 장치의 IP 주소를 나타냅니다.

 옵션(Options) : IP 프로토콜의 동작 옵션을 정의하는 필드입니다.


이상으로 TCP/IP와 각 프로토콜의 헤더에 대해 알아보았습니다. 이상으로 TCP/IP에 대한 설명을 마치도록 하겠습니다.


※ TCP 헤더 사진 출처 : https://www.bing.com/images/search?view=detailV2&ccid=wKncs9P0&id=75E06E7F40DAD995567DDA715BD21C24634BE4E4&thid=OIP.SEFsKDK127AMxb2Snp0ypAHaDk&mediaurl=https%3a%2f%2fupload.wikimedia.org%2fwikipedia%2fcommons%2fd%2fda%2fTCP_header.png&exph=348&expw=722&q=tcp+header&simid=608042731728669634&selectedIndex=3&qft=+filterui%3alicense-L2_L3&ajaxhist=0


※ UDP 헤더 사진 출처 : https://www.bing.com/images/search?view=detailV2&ccid=c1OKLCzb&id=32CA892FD5B445207C40E6C9A3C6859455DEEF84&thid=OIP._c_FUeOtTnVwgeWwz9pobwHaB9&mediaurl=https%3a%2f%2fupload.wikimedia.org%2fwikipedia%2fcommons%2f0%2f0c%2fUDP_header.png&exph=192&expw=725&q=udp+header&simid=608002217291220812&selectedIndex=1&qft=+filterui%3alicense-L2_L3&ajaxhist=0


※ IP 헤더 사진 출처 : https://www.bing.com/images/search?view=detailV2&ccid=BVw7gxdc&id=E1310EABEC6E01D69B69F06F94A8B423908C62F4&thid=OIP.BVw7gxdc8UUuzrargNIPlQHaDl&mediaurl=https%3a%2f%2fupload.wikimedia.org%2fwikipedia%2fcommons%2ff%2ff9%2fIPv4_header_%25281%2529.png&exph=349&expw=720&q=IP+%ED%97%A4%EB%8D%94+%EA%B5%AC%EC%A1%B0&simid=608012112923591051&selectedIndex=7&qft=+filterui%3alicense-L2_L3&ajaxhist=0

'Network ' 카테고리의 다른 글

IP 주소 클래스  (0) 2018.09.13
Subnetting [ 서브넷팅 ]  (0) 2018.09.10
OSI 7계층  (0) 2018.09.03
OSI(Open Systems Interconnection) 참조 모델  (0) 2018.08.29
패킷트레이서 사용방법  (0) 2018.08.28

 이번 시간에는 OSI 7계층을 순서대로 알아보도록 하겠습니다.


1. 물리 [ Physical ]

 : 물리 계층은 사용자가 전송한 데이터를 장치 간 주고받을 수 있는 형태로 변환하는 계층입니다. 물리 계층은 아래의 특성들을 포함합니다.

 - 전기적 특성 : 전압의 크기와 전압이 변하는 시점에 관련된 특성입니다

 - 기능적 특성 : 물리적으로 연결된 장치 간 데이터를 주고받을 때 쓰이는 케이블의 기능적 특성입니다

 - 절차적 특성 : 데이터를 성공적으로 전송하기 위한 규정을 말합니다

 - 물리적 특성 : 표준 케이블 사이의 물리적 연결에 대해 정의합니다


 물리 계층은 데이터를 0과 1로 표현하는 등의 신호 전송만을 수행하는 계층이므로, 오류가 생겼는지 문제는 없는지에 관한 것에는 관여하지 않습니다. 물리 계층에서 사용되는 데이터의 단위는 비트(bit)입니다. L1 계층에서 사용되는 장비로는 UDP(Unshielded Twisted Pair)와 STP(Shielded Twisted Pair) 등등이 있습니다.


2. 데이터링크 [ Data Link ]

 : 데이터링크 계층은 직접 연결된 2개의 네트워크 장치 사이의 데이터 전송을 담당합니다. 이때 사용되는 데이터의 단위는 프레임(frame)이라고 합니다. 데이터링크 계층에서 행해지는 여러 역할들이 있지만 대표적으로는 아래의 기능들이 있습니다.

 - 프레이밍(Framing) : 1계층에서 수신한 데이터를 조합하여 프레임(Frame) 단위로 만들어 처리합니다. 또는 위의 계층에서 내려온 데이터를 프레임 단위로 만들어 신호로 전송합니다. 이때 각 계층별로 고정된 크기의 데이터 유닛을 일반적으로 PDU(Protocol Data Unit)이라고 합니다

 - 흐름 제어(Flow Control) : 송신 측과 수신 측 사이의 오가는 데이터가 너무 많거나 너무 적지 않도록 데이터의 흐름을 적절히 제어합니다

 - 오류 제어(Error Control) : 프레임을 전송할 때 발생한 오류를 복원하거나 재전송합니다. 

 - 접근 제어(Access Control) : 네트워크 상의 통신 매체가 여럿 존재할 경우, 각 장치들의 통신 상황을 고려하여 데이터의 전송 가능 여부를 판단합니다

 - 동기화(Synchronization) : 데이터링크 계층 프로토콜에 따라 프레임을 구분하거나 전송된 프레임의 타이밍 정보를 맞추기 위해 필요한 비트 패턴을 제공합니다


 위의 기능들을 수행하기 위해서 데이터링크 계층에서는 헤더와 트레일러라는 것을 사용합니다. 헤더에는 송신 장치 & 수신 장치의 주소가, 트레일러에는 오류 검출을 위한 코드가 들어갑니다. L2 계층에서 사용되는 장비로는 대표적으로 스위치(Switch)가 있습니다.


3. 네트워크 [ Network ] 

 : 네트워크 계층에서는 상위 계층으로부터 받은 데이터를 패킷(Packet) 혹은 데이터그램(Datagram)이라는 단위로 규격화해서 서 송수신하는 역할을 합니다. 즉 2계층에서는 MAC주소로 통신했다면 3계층에서는 IP 주소를 기반으로 통신합니다. 이때 사용되는 장치가 라우터(Router), L3 스위치(L3 Switch) 등등이 있습니다. 네트워크 계층의 주요 역할은 아래와 같습니다.

 - 패킷 전달(Packet Forwarding) : 종단 간 패킷 전달을 합니다.

 - 라우팅(Routing) : 종단 간 패킷을 전송할 때, 라우팅 프로토콜을 이용하여 가장 효율적인 경로를 통해 전달송합니다.

 - 논리 주소(Logical Address) : IP 주소라는 논리적인 주소를 사용함으로써, 사용자 데이터를 목적지 장치까지 전달합니다.


4. 전송 [ Transport ]

 : 전송 계층은 종단 간 데이터 통신을 제어하며, 세그먼트(Segment)라는 이름의 데이터 유닛을 사용합니다. 이전의 계층에서는 데이터를 전송하는데 의의를 두었다면 전송 계층부터는 사용자가 사용하는 서비스와 직접적으로 관련된 역할을 수행하게 됩니다. 전송 계층의 주요 역할은 아래와 같습니다. 

 - 종단 간 데이터 통신 보장 : 흐름 제어와 오류 제어 등을 수행함으로써 데이터의 통신을 보장합니다.

 - 지연(Delay)에 따른 문제 해결

 - 동시에 여러개의 논리적 연결 지원

 - 사용자 데이터 분할 및 재조합 : 사용자가 송신하는 데이터를 전송 가능한 고정된 크기의 세그먼트로 분할합니다. 그 후 순서 번호를 할당하고 송신합니다. 이때 수신한 데이터는 이 번호를 토대로 재조립하거나 폐기하는 역할을 합니다.


5. 세션 [ Session ]

 : 세션 계층은 종단 간 통신 세션의 시작과 종료를 의미하며, 세션 계층에서부터는 데이터 유닛을 메시지(message)라고 합니다. 세션 계층의 역할로는 메시지 그룹화, 데이터 전송 방향 결정, 데이터 중간 점검 및 복구를 위한 동기 점 생성과 같은 역할을 합니다.


6. 표현 [ Presentation ]

 : 표현 계층에서는 모든 컴퓨터가 이해할 수 있도록 데이터를 변환하는 역할을 합니다. 또 암호화를 통해 보안성을 높이고, 데이터 압축 기능으로 데이터가 효율적으로 전송될 수 있도록 합니다.


7. 응용 [ Application ] 

 : 응용 계층은 OSI의 최상위 계층으로서 주로 서비스를 나타냅니다. 응용 계층의 예시로는 FTP, SMTP, SNMP, HTTP 등등이 있습니다. 즉 응용 계층은 사용자가 사용하는 UI와 비슷하다고 할 수 있습니다.


※ OSI 7계층은 각 계층별로 캡슐화(encapsulation)이라는 것을 수행합니다. 캡슐화란 하위 계층으로 데이터가 내려갈 수록 각 계층에서 필요한 헤더를 붙이는 과정을 말합니다. 반대로 데이터를 수신했을 때는 역캡슐화(decapsulation)이라는 과정을 거쳐 상위 계층으로 올라갈수록 헤더를 제거하는 과정을 수행합니다.


 이상으로 OSI 7계층에 대한 설명을 마치도록 하겠습니다.

'Network ' 카테고리의 다른 글

Subnetting [ 서브넷팅 ]  (0) 2018.09.10
TCP/IP  (0) 2018.09.06
OSI(Open Systems Interconnection) 참조 모델  (0) 2018.08.29
패킷트레이서 사용방법  (0) 2018.08.28
Packet Tracer [ 패킷트레이서 ]  (0) 2018.08.27

 안녕하세요. 이번 시간에는 'Unix'에 대해 소개해보도록 하겠습니다. 


 유닉스(Unix)는 1970년대 초에 미국에 있는 AT&T 벨연구소의 켄 톰슨(Ken Tompson), 데니스 리치(Dennis Ritchie) 등에 의해서 여러 명이 함께 사용할 수 있는(다중 사용자) 운영체제로 개발되었으며 지금도 계속해서 발전 해오고 있습니다. 처음의 유닉스 OS(Operating System : 운영 체제)는 중형 컴퓨터에 사용하도록 고안되었으나 발전을 통해서 현대는 슈퍼컴퓨터, 메인프레임, 워크스테이션, PC, 핸드폰에 이르기까지 영역이 확대되고 있습니다.


 1990년대 초, 리누스 토발즈(Linus Torbalds)로 인해서 PC를 위한 OS인 리눅스(Linux)가 개발됩니다. 그로인해 더 광범위하게 사용되게 되었고 아이폰, 맥북 등의 개발사인 애플(Apple)의 OS도 유닉스 기반의 운영체제로 개발되어 현재까지 사용되고 있습니다.


 또한 최근에는 아이폰, 아이패드 등을 위해 MAC OS X를 기반으로 IOS가 개발되었고 리눅스 기반으로 된 안드로이드(Android) OS가 개발되어 전 세계적으로 많은 사람들이 사용하고 있습니다. 현재 유닉스는 슈퍼컴퓨터, 서버 시스템부터 PC와 스마트폰에 이르기까지 넓은 영역에서 사용되고 있습니다.


 유닉스의 대표적인 특징으로는 단순성과 이식성을 들 수 있습니다. 단순성은 말 그대로 단순한 구조로 이루어져 있다는 것이고, 이식성은 어떠한 환경에서도 작동이나 설치가 가능한 것을 나타냅니다. 우선 유닉스는 MIT 멀틱스(Multics) 시스템에 반대해 단순성(Simplicity)을 기본 베이스로 해서 설게되었으며 이식성(Portability)을 위해 C 언어로 다시 작성되었습니다. 이론적으로는 유닉스 OS는 C언어가 실행될 수 있는 환경이라면 어디에나 설치가 가능합니다.


※MIT Multics : 멀틱스는 현대의 운영 체제에 큰 영향을 미친 초기 시분할 운영 체제이다. 1964년 멀틱스 프로젝트가 시작되어 2000년 10월 30일에 마지막으로 멀틱스를 쓰던 컴퓨터가 종료되었다. 흔히 유닉스의 역사와 관련하여 멀틱스가 훌륭한 운영 체제가 되지 못했었다는 인식이 있기도 했으나 이는 잘못된 통념임이 밝혀지고 있다. 실제로 멀틱스는 현대적 기능들을 다수 가지고 있었던 훌륭한 운영 체제라고 할 수 있다 -위키백과-


그렇다면 유닉스의 장점들을 간략하게 살펴보도록 하겠습니다.

- 단순성 : 운영체제 자체가 단순하여 최소한도로 필요한 기능만 들어있다.

- 이식성 : C 언어로 작성되어 이식성이 뛰어나다. 이식성이 높으면 여러 다른 기종의 하드웨어에 동일한 OS를 사용할 수 있고, 그렇게 되면 서로 정보를 주고받는 것이 수월해진다.

- 개방성 : 소스 코드가 개방되어 있어 누구나 수정해서 사용할 수 있다. [ 오픈소스 ]

- 다중 사용자 다중 프로세스 OS : 여러 상요자가 동시에 사용할 수 있는 다중 사용자 운영체제이다. 또 여러 프로그램들이 동시에 실행될 수 있는 다중 프로세스 기능도 갖추고 있다.

- 쉘 스크립트 : 운영체제 내에서 명령어나 유틸리티 등으로 프로그램을 작성할 수 있는데 이러한 프로그램을 쉘 스크립트라고 한다. 쉘 스크립트를 사용하면 막대한 작업을 수행할 때 새로운 프로그램을 짜는 것이 아니라 기존에 있던 프로그램들을 적절히 결합하여 수행할 수 있다.

- 네트워킹 : 다양한 네트워크 응용 프로그램을 제공해서 현재 사용되고 있는 FTP, Telnet, WWW 등의 유닉스 기반의 서비스들을 사용할 수 있다.


이상으로 유닉스에 대한 간략한 소개를 마치도록 하겠습니다.

 안녕하세요. 이번 시간에는 OSI 참조 모델, 즉 OSI 7계층에 대해 알아보도록 하겠습니다. 


 우선적으로 OSI 7계층은 현재의 네트워크를 구축하고 있는 네트워크 장비들이 데이터를 어떤 식으로 주고받는지에 대해 알 수 있는 네트워크의 기본 중의 기본이라고 할 수 있습니다. 또한 OSI 7계층은 네트워크를 구축하거나 네트워크를 설계하는데 있어 필수적이라고 할 수 있습니다. OSI 7계층은 아래와 같이 7개의 층으로 이루어져 있으며 각각의 층마다 고유한 기능을 갖고 있습니다.



 OSI 7계층은 아래서부터 물리, 데이터링크, 네트워크, 트랜스포트, 세션, 표현, 응용의 순으로 이루어져 있습니다.(각 계층의 이름은 오른쪽의 'OSI model' 항목을 보시면 됩니다) OSI 7계층의 동작 과정은 데이터를 전송하는 호스트는 응용 계층에서 시작해서 물리 게층으로 데이터를 내려보내고, 데이터를 수신하는 호스트는 반대로 물리 계층에서 응용 계층으로 올려 보내는 방식으로 동작합니다. 이러한 구조적 특성 때문에 장치간에 데이터가 어떻게 왔다갔다 하는지 쉽게 알 수 있습니다. 또한 이러한 표준화된 구조 덕에 서로 다른 기종 간에도 데이터를 주고받을 수 있고 OS가 다르다고 해서 통신에 문제가 되지 않는다는 장점이 있습니다.


 이상으로 OSI 7계층에 대한 설명을 마치도록 하겠습니다. 각 층에 대한 자세한 설명은 다음 블로그에 이어서 하도록 하겠습니다. 참고로 'TCP/IP model' 항목은 OSI 7계층을 역할별로 다르게 구분한 계층이고 'Protocols and services' 항목은 각 계층에서 사용하는 프로토콜과 서비스에 대한 설명입니다.


※ 사진 출처 : https://www.bing.com/images/search?view=detailV2&ccid=Krism%2bgh&id=181C6BE995B440DAA6C22827FA8AE98CE4A3E26B&thid=OIP.Fmg8sB3vJbbRQP8FnvjxzQHaEO&mediaurl=https%3a%2f%2fi.stack.imgur.com%2f1BoS4.png&exph=372&expw=651&q=osi+7%EA%B3%84%EC%B8%B5&simid=608027076513235119&selectedIndex=16&qft=+filterui%3alicense-L2_L3&ajaxhist=0

'Network ' 카테고리의 다른 글

Subnetting [ 서브넷팅 ]  (0) 2018.09.10
TCP/IP  (0) 2018.09.06
OSI 7계층  (0) 2018.09.03
패킷트레이서 사용방법  (0) 2018.08.28
Packet Tracer [ 패킷트레이서 ]  (0) 2018.08.27

 안녕하세요. 이번 시간에는 마우스의 반응속도를 높이는 방법에 대해 알아보도록 하겠습니다. 다름이 아니라 제가 게임을 하던 중 마우스가 반응이 약간 느린 것 같아 찾아보았습니다. 그럼 바로 알아보도록 하겠습니다. 


1. 윈도우 키 + R을 눌러주고 'regedit'이라고 입력해줍니다




2. 아래의 경로로 접속해줍니다



3. 중간의 많은 항목 중에서 'MenuShowDelay' 항목을 찾아 줍니다



4. 그리고 그 값을 0으로 바꿔줍니다(아마 처음에는 400으로 되어 있을겁니다)



5. 다시 왼쪽의 경로를 아래와 같이 들어가줍니다



6. 중간의 'MouseHoverTime'이라는 항목의 값을 0으로 수정해줍니다



7. 모든 창을 끄시면 됩니다


이상으로 마우스 반응속도 높이는 방법에 대한 포스팅을 마치도록 하겠습니다.

'Utility' 카테고리의 다른 글

메인보드 확인하는 방법  (0) 2018.11.07
한글입력이 안될 때  (1) 2018.09.18
윈도우 디펜더 끄기 - Window Defender Off  (0) 2018.08.27

 안녕하세요. 저번 시간에 패킷트레이서라는 프로그램에 대한 설명과 설치 방법에 대한 포스팅을 했었는데요. 이번 시간에는 이제 그 프로그램을 어떻게 사용하는지, 어떻게 이루어져 있는지 등을 알아보도록 하겠습니다. 우선 프로그램을 실행시키도록 합시다.



 프로그램을 실행하면 위와 같이 아무것도 없는 화면을 보실 수 있을 것입니다. 왼쪽 위에 보면 일반 한글이나 오피스같은 프로그램들에서도 볼 수 있듯이 프로그램에 대한 설정과 파일생성, 수정, 저장 등에 대한 설정이 있습니다. 그렇다면 아래와 오른쪽에 위치한 것들은 어떤 역할을 하는지 알아보도록 하겠습니다.



 왼쪽 아래에 있는 이 구역은 가상 환경에 사용될 가상의 라우터, 스위치, PC등의 모듈이 있는 구역입니다. 이 구역에서 원하는 버전의 라우터나 스위치를 끌어서 가운데 빈 화면으로 드래그하면 직접 설정할 수 있습니다.



 오른쪽의 이렇게 생긴 것은 핑(ping)을 보내거나 메모, 줄긋기와 같은 기능들이 있습니다.



 오른쪽 밑에 있는 이것은 핑(ping)을 보냈을 때 성공했는지 실패했는지의 여부를 나타내는 창입니다.



 위의 화면은 라우터, 스위치, PC를 하나씩 끌어놓은 모습입니다. 라우터는 라우터항목에, 스위치는 스위치항목처럼 각 장치별로 구별되어 위치하고 있습니다. 이제 저 장치를 랜선으로 연결해보도록 하겠습니다. 랜선은 왼쪽 밑 패널 중 번개모양을 누르면 찾을 수 있습니다. 그럼 서로 연결시켜 주도록 하겠습니다.



 모두 연결해준 모습입니다. 연결하는 방법은 간단합니다. 아래의 랜선 중 상황에 맞는 랜선을 누른 후 장치를 누르면 어떤 포트에 연결할 것인지가 나옵니다. 그때 상황에 맞는 포트에 연결해주면 됩니다.(위의 경우는 시범이기 때문에 임의의 포트에 연결했습니다) 그렇다면 본격적으로 각 장치를 설정해주도록 하겠습니다. 우선 라우터부터 보도록 하겠습니다.



 제일 처음 클릭하면 위와 같은 창이 나옵니다. 위를 보면 'Physical', 'Config', 'CLI' 항목으로 나누어져 있는 것을 볼 수 있습니다. 우선 'Physical'항목을 들어가보도록 하겠습니다.

 패킷트레이서는 실제처럼 구성해놓았기 때문에 라우터에 새로운 포트를 추가해줄 때에는 장치 그림의 오른쪽 밑의 전원 버튼을 끈 후, 왼쪽에서 모듈을 옮겨서 장착한 다음 다시 전원을 켜주어야 합니다.(꽤 번거롭습니다) 



 위의 두 사진 중 첫번째가 전원을 끈 모습이고 두번째가 왼쪽에서 필요한 모듈을 옮겨놓은 모습입니다. 이제 다시 전원을 켜서 설정해주면 됩니다. 위의 과정은 나중을 위한 과정이므로 꼭 지금 필요한 과정은 아닙니다. 그렇다면 'Config' 항목으로 넘어가도록 하겠습니다.



 'Config' 항목의 모습입니다. 보시다시피 왼쪽에는 기본적인 명령어들이 있고 중간에는 'Display Name'과 'Hostname'이 있습니다. 그리고 아래에는 왼쪽의 명령어를 클릭했을 때 표출되는 화면이 나와있습니다. 

※ 'Display Name'은 토폴로지 상에서의 장치 이름을 설정하는 것이고 'Hostname'은 장치 내에서의 이름을 설정해주는 것입니다.


 그렇다면 'CLI' 항목을 살펴보도록 하겠습니다.



 'CLI'는 직접적으로 명령어를 입력하는 구간입니다. 즉, 직접적인 설정을 하는 항목이라는 말이 됩니다. 앞으로 모든 설정은 이 항목에서 하게 될 것입니다. 위의 화면에서는 라우터에 모듈을 장착한 후 전원을 켠 후의 모습입니다.

 이렇게 라우터에 대해 알아보았습니다. 이번에는 스위치로 넘어가겠습니다.



 스위치도 라우터와 똑같이 3개의 항목으로 나누어져있습니다. 다만 스위치에는 전원버튼이 존재하지 않기 때문에 전원이 따로 존재하지 않고 L3 스위치와 같은 높은 레벨의 스위치가 아닌 이상은 장착할 모듈이 없습니다. 그렇다면 마찬가지로 'Config' 항목과 'CLI' 항목도 둘러보겠습니다.


 스위치도 라우터와 별반 다를 것이 없다는 것을 볼 수 있습니다. 그렇다면 이제 PC로 넘어가보도록 하겠습니다.



 PC는 다른 장치들과는 다르게 항목이 많습니다. 또 'CLI' 항목도 존재하지 않습니다. 그렇다면 각 항목이 어떤 것을 의미하는지 알아보도록 하겠습니다. 우선 'Physical' 항목은 다른 장치들과 다른 것 없이 모듈을 장착하거나 전원을 끄고 켤 수 있습니다. 'Config' 항목도 다른 장치와 다를 것이 없어 넘어가도록 하겠습니다. 그리고 바로 'Desktop' 항목을 보도록 하겠습니다.



 이 항목에서는 우리가 일반적으로 PC에서 사용하는 서비스들을 볼 수 있습니다. 'Command Prompt'는 cmd를 의미하고 'IP Configuration'은 IP를 설정할 수 있습니다. 그 외에도 다양한 서비스들이 있습니다. 이상으로 패킷트레이서 활용 1편에 대한 포스팅을 마치도록 하겠습니다.

'Network ' 카테고리의 다른 글

Subnetting [ 서브넷팅 ]  (0) 2018.09.10
TCP/IP  (0) 2018.09.06
OSI 7계층  (0) 2018.09.03
OSI(Open Systems Interconnection) 참조 모델  (0) 2018.08.29
Packet Tracer [ 패킷트레이서 ]  (0) 2018.08.27

 안녕하세요. 이번 시간에는 '윈도우 디펜더'라는 윈도우에서 기본적으로 제공하는 일종의 방화벽같은 프로그램을 끄는 방법에 대해 알아보도록 하겠습니다. 윈도우 디펜더는 말 그대로 방화벽과 같은 역할을 함으로써 의심스러운 파일이 설치되거나 발견되었을 경우에 알아서 차단하도록 되어있는 시스템입니다. 그런데 이로인해서 원하는 프로그램을 사용하지 못하는 경우가 종종 있는데요. 이럴 때 윈도우 디펜더를 차단함으로써 원하는 프로그램을 사용할 수 있습니다. 그럼 바로 알아보도록 하겠습니다.


 1. 윈도우 키(Alt 옆 창문모양) 을 누르거나 컴퓨터 왼쪽 하단의 버튼을 클릭해줍니다

 2. '그룹 정책 편집'이라고 입력한 후 나오는 항목을 클릭합니다

   


 3. 해당 항목을 클릭한 후 아래와 같은 경로로 들어가줍니다


  4. 오른쪽에 'Windows Defender 바이러스 백신 사용 안 함' 항목을 클릭해줍니다. 그럼 아래와 같은 창이 생성됩니다


  5. '사용 안 함'이라고 되어 있던 것을 '사용'으로 체크해준 후 확인을 눌러 종료해줍니다


이상으로 윈도우 디펜더 끄는 방법에 대한 포스팅을 마치도록 하겠습니다.




'Utility' 카테고리의 다른 글

메인보드 확인하는 방법  (0) 2018.11.07
한글입력이 안될 때  (1) 2018.09.18
마우스 반응속도 높이기  (1) 2018.08.28

+ Recent posts