본문 바로가기

Library

DBMS를 왜 사용하는가? 컴퓨팅이 시작된 초창기에는 데이터의 양이 그렇게 많지 않았기 때문에, 애플리케이션이 직접 데이터를 다루는 것이 일반적이었다. 그러나, 점차 데이터가 증가하면서 애플리케이션에서 데이터를 체계적으로 다루는 것이 불편해지기 시작한다. 데이터의 형식이 변경되면 애플리케이션은 그에 맞춰 직접 코드가 수정되어야 하며, 저장된 원시 데이터를 사용하여 2차적인 데이터를 얻고자 할 때도 애플리케이션 코드 수정이 불가피하기 때문이다. 특히, 이 데이터에 의존하는 애플리케이션이 많아질수록 이와 같은 종속성은 심화된다. DBMS(database management system)는 이와 같은 요구를 반영한 결과이다. DBMS를 사용하는 것과 애플리케이션에 의존적인 데이터 형식을 사용하는 것을 비교하면, DBMS를 사용하는 것이.. 더보기
ARP (Address Resolution Protocol) ARP 패킷은 IP와 거의 동일한 계층에서 동작한다. ARP는 ARP 패킷이 데이터링크 서비스에서 제공하는 물리 매체와 동작하기 때문에, IP와 별개의 프로토콜이다. ARP는 하위 계층 프레임에서 운반되는 프로토콜을 분류하면서 ARP를 동시에 지원하는 모든 네트워크에서 다르게 식별된다. ARP 패킷은 IP 패킷과 마찬가지로 데이터링크 계층과 직접 통신한다. 따라서 ARP 패킷은 IP 패킷과 완전히 별개이며, 프로토콜 ID는 0806으로 IP의 0800과 다르다. IP 패킷에서, 헤더의 프로토콜 ID에서는, 현재의 패킷이 TCP 패킷인지, UDP 패킷인지 따위를 명시해 주어야 한다. IP 패킷에서, 헤더 부분은 송신지와 수신지를 제외하면 나머지는 네트워크 상황에 따라 변경될 수 있다. IP 패킷의 크기는 .. 더보기
IP Addressing 인터넷 프로토콜은 데이터그램(Datagram)의 형태로 호스트들 사이에 데이터를 옮긴다. 각각의 데이터그램은 헤더의 도착지 주소에 들어있는 줏로 배달된다. 도착지의 주소는 네트워크와 네트워크 사이에서 유일하게 표현되는 32비트 크기를 가지는 주소값이다. IP 주소는 네트워크 부분과 호스트 부분을 가지지만, 이들 부분의 포맷은 모든 IP 주소에서 동일하지는 않다. 즉, 네트워크를 지정하는데 사용되는 주소 비트와 호스트를 지정하는데 사용되는 수는 주소의 prefix 길이에 따라 변한다. prefix 길이가 결정되는 데는 2가지 방법이 있다. 주소 클래스를 사용하거나 CIDR 주소 마스크를 사용하는 방법이 있다. 문제가 되는 IP 주소 공간 고갈 문제는, 32비트 주소 체계라는 근본적인 문제 때문에 일어난 일.. 더보기
Repeater, Bridge, and Router 이더넷의 데이터 전송 방식은 CSMA/CD(Carrier Sense Multiple Access / Collision Detection)이다. 데이터를 A에서 Z까지 보낸다면, 같은 네트워크에 물려 있는 모든 기계들이 데이터를 받을 수 있다. 데이터의 송수신 과정에서 서로 충돌하면, 이더넷은 데이터 송수신을 잠시 기다렸다가 다시 시도하게 된다. 대기 시간은 무작위로 결정된다. 리피터(Repeater)는 신호를 복원, 증폭하는 역할을 한다. 리피터는 신호를 다시 보내주는 역할 할 뿐이며, 신호를 필터링하지 않는다. 즉, 리피터는 신호가 들어왔을 때, 이것을 버려야 할지, 어디로 가야할지 따위를 결정하지 않는다. 브릿지(Bridge)는 신호를 필터링할 수 있다. 브릿지는 데이터링크 계층에서 동작하는 저수준의.. 더보기
Data Communication Layers 네트워크 모델에서의 각 계층(layer)들은 상대방 계층들에 대해서만 통신하게 된다. 전송측의 해당 Application 계층은 수신측의 Application에서 자신과 짝이 맞는 계층과 통신하게 된다. OSI 7 계층은 네트워크를 이론적으로 잘 설명하는 모델이지만, 실제 구현은 이것보다 훨씬 간략하게 되어 있다. OSI 7 계층을 그대로 구현한 프로토콜은 사실 찾아보기 힘들다. TCP/IP 프로토콜은 4계층, 혹은 5계층으로 구분하며, 특정 계층은 OSI 7 계층의 몇몇 계층의 기능을 하나의 계층으로 가지고 있다. 각 계층에서 데이터를 송수신하는 것은 우편물 보내기와 비슷한 면이 있다. 각 계층에서는, 자신에게 필요한 정보를 담은 헤더를 첨가하여 다음 계층에게 전달하는데, 이것은 내용물을 우편 봉투에 .. 더보기
Packet Switched Network Packet Switched Network과 Circuit Switched Network.. 유선 전화망이라면, 연결되는 과정에서 유일한 경로가 하나 설정된다. 즉, 데이터 송수신을 하는데 이 경로를 따라서 데이터가 이동하며, 만약 중간 지점에서 연결이 차단되는 경우가 생긴다면, 데이터 송수신은 실패하게 된다. 또, 이동 경로에 따라서 데이터 지연시간이 생기며, 데이터 송수신이 종료되는 순간까지 이 경로는 확실히 존재한다는 보장을 할 수 있다. 반면, 패킷 기반 통신망이라면 이것은 성립하지 않는다. 데이터는 연속된 흐름 대신, 패킷이라 불리는 작은 조각으로 분할되어 전송되며, 데이터의 이동 경로 또한 고정되지 않는다. 데이터가 지나가야 하는 특정 지점마다 패킷이 이동해야 하는 다음 지점을 가리키며, 이것.. 더보기