데이터 링크 계층 (Data link) SLIP, Trailer, 이더넷 기초 상식

데이터 링크 계층 (Data link) SLIP, Trailer, 이더넷 기초 상식


데이터 링크 계층 이해하기

링크 계층(link layer)의 역할은 IP datagram, ARP 요구와 응답, RARP 요구와 응답을 주고받는 것이다. TCP/IP는 네트워크의 H/W 종류에 따라 서로 다른 데이터 링크 계층(link layer)을 지원한다. Ethernet, token ring, FDDI, RS-232 등.


Ethernet and IEEE 802 Encapsulation

이더넷은 CSMA/CD의 방법을 사용하며, 10Mbps의 동작 속도와 48-bit address를 사용한다. 일반적으로 RFC 894 encapsulation을 사용하며, destination과 source address로써 48-bit를 사용한다. 이를 hardware address라 부른다. 데이터 링크 계층에서 ARP와 RARP 프로토콜은 32-bit IP address와 48-bit hardware address를 mapping하는 역할을 한다. 그다음의 2byte type은 data의 종류를 나타낸다. (RFC 1340)

Trailer Encapsulation

RFC 893은 trailer encapsulation이라 부르는 Ethernet을 사용하는 encapsulation의 또 다른 형태를 설명하고 있다. 그것은 초기 BSD 시스템의 실험을 위한 것이었다. 그것은 IP datagram의 필드의 순서를 재배열함으로써 성능을 개선하려는 시도였다.


RFC 894 데이터 링크 계층[data link layer 역할] Ethernet 기초, IEEE 802.2 802.3 encapsulation (RFC 1042) and Ethernet encapsulation (RFC 894)


Ethernet frame(IP 헤더와 TCP 헤더)데이터 영역의 시작 부분에 있는 variable-length field는 끝으로 옮겨졌다. 이것은 frame의 데이터 영역을 hardware page에 매핑하는 것을 가능하게 하였다.


그리하여 데이터 링크 계층의 커널에서 메모리 간의 데이터 복사를 줄일 수 있었고, 512바이트의 배수인 TCP 데이터는 커널 페이지 테이블을 조작함으로써 이동할 수 있었다. 두 호스트 간에 trailer encapsulation을 사용할 것인가는 ARP의 extension을 사용함으로써 정해진다. 그러나 요즘은 사용하지 않는다.


SLIP: Serial Line IP

SLIP은 serial line에서의 IP datagram을 encapsulation 하는 하나의 단순한 형태이다. SLIP은 home system을 인터넷에 연결하는 가장 일반적인 방법이 되었다.


다음은 SLIP을 사용하여 frame을 기술하는 규칙들이다.


1. IP datagram은 END(0xc0)라는 문자로 시작하고 끝난다.


2. 만일 데이터 중에 END가 있으면 대신 ESC(0xdb), 0xdc를 전송한다.


3. 만일 데이터 중에 ESC가 있으면 대신 ESC(0xdb), 0xdd를 전송한다.


데이터 링크 계층 (Data link) SLIP[data link layer 역할] Ethernet 기초


데이터 링크 계층에서 SLIP은 단순한 프레이밍 방법이다. 다음에 부수적인 설명이 있다.


1. SLIP을 사용하려면 상대방의 IP address를 알아야 한다.


2. Ethernet frame의 type 필드와 같은 type 필드가 없다. serial line에 SLIP이 사용된다면, 동시에 다른 프로토콜을 사용할 수 없다.


3. Ethernet frame의 CRC 필드와 같이 SLIP에 의해 추가되는 checksum이 없다. 깨어진 프레임은 상위 레이어에서 detect 되고, 그것은 상위 layer에 반드시 CRC와 같은 형식이 있어야 하는 것을 의미한다.


IP 헤더, TCP 헤더, TCP 데이터에는 체크섬이 있지만, UDP 헤더와 UDP 데이터에서는 optional이다.


데이터 링크 계층, 기초 상식[data link layer 역할] Ethernet 기초


Compressed SLIP

SLIP line은 느리고 interactive traffic에 사용되기 때문에, 작은 TCP 패킷이 교환되는 경우가 많다. 1-byte의 데이터를 전송하기 위해 20-byte의 IP 헤더와 20-byte의 TCP 헤더가 필요하다. 그것은 40-byte의 오버헤드이다. 이러한 결점을 보완하는 CSLIP이 RFC 1144에 기술되어 있다.


CSLIP은 일반적으로 40-byte의 헤더를 3~5바이트로 줄여준다. 그것은 CSLIP link의 각각의 끝에 16개 이상의 TCP connection의 상태를 관리한다. 헤더의 내용은 일반적으로 거의 변하지 않으며, 바뀌더라도 아주 일부분이다. 이렇게 작아진 헤더는 inactive response time을 향상한다.


데이터 링크 계층 (Data link) SLIP, Trailer, 이더넷 기초 상식

이 글을 공유하기

댓글(0)

Designed by JB FACTORY