네트워크 9

[데이터링크 계층] DLC (Data Link Control)

DLC (Data Link Control) DLC는 Point-to-Point, Broadcast 링크 모두에 포함된 하위 계층이었다. DLC는 링크의 종류에 관계없이 두 노드에 대한 통신 과정을 다룬다. DLC는 Framing, 흐름 & 오류 제어 기능을 포함한다. Framing 데이터링크 계층은 비트들을 프레임의 형태로 감싸 다른 프레임들과 구분한다. 이러한 Framing은 물리 계층으로부터 전달된 비트들을 어떻게 조직하는지를 의미하며, 송신자와 수신자의 주소를 추가함으로써 메시지를 분리한다. 이 목적지 주소를 통해 송신자는 수신자가 메시지를 받았다는 응답을 돕는다. 고정 크기 프레임 (Fixed-size Frame) : ATM이나 WAN에서 사용되며, 프레임 간의 경계를 지정할 필요가 없다. 가변 ..

[데이터링크 계층] 오류 검출 (Error Detection)

오류의 유형 (Error Types) 단일 비트 오류 (Single-bit Error) 주어진 데이터 단위(문자 하나, 또는 패킷 전체 등)에서 오직 하나의 비트가 변경된 오류이다. 버스트 오류 (Burst Error) 데이터 단위에서 둘 이상의 연속적인 비트가 변경된 오류이다. 중복성 (Redundancy) 중복성은 에러를 감지하고 수정하는 것에 있어 핵심적인 개념이다. 우리는 오류를 검출하거나 수정하기 위해 데이터에 추가적인 비트를 보낸다. 이를 중복 비트(Redundant bit)라 하며, 이러한 중복 비트들은 송신자에 의해 더해지거나 수신자에 의해 제거된다. 코딩 (Coding) 송신자는 실제 데이터 비트와 관련된 중복 비트들을 전송한다. 수신자는 이 두 비트들 사이의 관계를 확인해 오류를 검출하..

[데이터링크 계층] ARP (Address Resolution Protocol)

ARP (Address Resolution Protocol) 한 노드가 IP 데이터그램을 링크를 통해 다른 노드로 보내고자 할 때, 데이터그램은 수신 노드의 IP 주소를 포함한다. 하지만 IP 주소는 네트워크 계층의 주소이기 때문에, 데이터링크 계층에서 링크를 통해 프레임을 전달하는 데에는 그다지 유용하지 않다. 따라서 우리는 다음 노드(수신 노드)의 데이터링크 계층 주소가 필요하다. ARP는 네트워크 계층에 속해 있으며, IP 주소를 그에 상응하는 MAC 주소로 변환해준다. 다음은 Alice와 Bob이 통신하는 과정을 통해 ARP가 어떻게 동작하는지를 그림으로 나타낸 것이다. 그림에서 N으로 표현된 것이 네트워크 계층의 주소, 즉 IP주소이고 L로 표현된 것이 데이터링크 계층의 주소이다. 네트워크 계층..

[데이터링크 계층] Introduction

인터넷은 연결 장치들이 함께 붙어 있는 네트워크들의 집합이라 할 수 있다. 호스트로부터 다른 호스트로 보내지는 패킷은 이러한 네트워크를 지나간다. 이 카테고리에서는 데이터링크 계층에서의 통신을 알아본다. 노드와 링크 (Nodes and Links) 데이터링크 층에서의 통신은 노드와 노드 사이에서 이루어진다. (Node-to-Node) 인터넷의 한 지점에 존재한느 데이터 단위는 많은 네트워크들(LAN, WAN)을 통해 다른 지점으로 보내진다. 이러한 LAN, WAN들은 라우터에 의해 연결되어 있다. 우리는 라우터를 노드(Node)로 칭하고, 라우터 간의 네트워크를 링크(Link)라 칭한다. 서비스 (Service) 데이터링크 계층은 물리 계층과 네트워크 계층 사이에 존재한다. 따라서, 데이터링크 계층은 물..

[물리 계층] 디지털 신호의 전송 (Transmission of Digital Signals)

디지털 신호의 전송 우리는 어떻게 디지털 신호를 A지점으로부터 B지점까지 보낼 수 있을까? 우리는 디지털 신호를 변조(Modulation)해 다음 두 가지의 방법으로 전송할 수 있다. 기저 대역 전송 (Baseband Transmission) Baseband Transmission은 디지털 신호를 아날로그 신호로 변환하지 않고 전송하는 것을 의미한다. Baseband Transmission는 로우패스 채널(Low-Pass Channel)을 필요로 한다. 로우패스 채널은 0부터 시작하는 대역폭을 갖는 채널을 말한다. 따라서 하나의 채널에 대한 전용 매체를 가진 경우이다. 즉, 한 번에 두 대의 컴퓨터만을 연결할 수 있는 경우이다. 넓은 대역폭을 가진 로우패스 필터 전송 과정에서 아날로그 신호가 디지털 신호..

[네트워크] 프로토콜 (Protocol)

프로토콜(Protocol) 이란? 개념적으로 "약속"을 뜻한다. 즉, 컴퓨터 간 데이터 송수신에 필요한 통신 규약을 의미한다. 소켓을 생성할 때도 기본적인 프로토콜을 지정해야 한다. 인터넷 주소 (Internet Address) 인터넷 상에서 컴퓨터를 구분할 목적으로 사용되는 주소를 의미한다. 4바이트 주소체계인 IPv4와 6바이트 주소체계인 IPv6이 존재한다. 인터넷 주소는 네트워크 주소(Network Address)와 호스트 주소(Host Address)로 나뉜다. 네트워크 주소를 통해 네트워크 범위를 찾고, 그 범위 안에서 호스트 주소를 이용해 호스트를 구분한다. IPv4 주소체계 예를 들어 클래스 C의 주소는 32 * 256 * 256개의 네트워크 주소를 가지고, 각 네트워크는 256개의 호스트..

[네트워크] 소켓 (Socket)

네트워크 프로그래밍 (Network Programming) 소켓 프로그래밍이라고도 한다. 네트워크로 연결된 둘 이상의 컴퓨터 사이에서의 데이터 송수신 프로그램을 작성하는 것을 의미한다. 소켓 (Socket) 네트워크의 연결 도구이며, 운영체제가 제공하는 소프트웨어적 장치이다. 소켓을 통해 운영체제는 프로그래머가 데이터 송수신에 대한 물리적, 소프트웨어적인 깊은 내용을 알 필요 없도록 한다. 소켓은 OSI 모델에서 전송 계층과 세션 계층 사이에 위치하는 것으로 볼 수 있다. 따라서 소켓 위의 계층인 세션 ~ 응용 계층을 소켓 어플리케이션 (Socket Application)이라 하고, 아래 계층인 물리 ~ 전송 계층을 네트워크 시스템이라고 한다. 두 프로세스의 소켓이 연결되면 프로세스 간 통신이 가능하다...

[물리 계층] 데이터와 신호 (Data and Signal)

아날로그와 디지털 데이터 데이터는 아날로그 또는 디지털의 형태가 될 수 있다. 아날로그 데이터는 연속적인 정보를 의미하고, 디지털 데이터는 별개의 상태들로 구분되는 정보를 의미한다. 연속적인 값을 갖는 사람의 목소리는 마이크 등의장치에 의해 비연속적인 데이터가 될 수 있다. 아날로그와 디지털 신호 각 형태의 데이터를 표현하기 위해, 신호 또한 아날로그 또는 디지털의 형태가 될 수 있다. 아날로그 신호는 무한히 많은 level을 가진 연속적인 형태를 가지고, 디지털 신호는 한정된 값 내에서만 신호 값을 가진다. Periodic and Nonperiodic 아날로그, 디지털 신호 모두 주기(Periodic) 또는 비주기(Nonperiodic)의 형태를 갖는다. 주기 신호(Periodic Signal)은 측정..