본 글은 '이것이 취업을 위한 컴퓨터 과학이다 with CS 기술 면접' 책을 읽고 정리한 글입니다.
네트워크 통신 모델에서 가장 하위 계층인 물리 계층과 데이터 링크 계층을 간단하게 정리하자면,
- 물리 계층: 통신 매체를 통해 비트 신호를 운반하는 계층
- 데이터 링크 계층: 같은 LAN에 속한 호스트끼리 정보를 주고받기 위한 계층
이다.
LAN 내의 호스트들이 올바르게 정보를 주고받을 수 있게 해주는 다양한 기술 중 하나인 이더넷에 대해 보자.
✔️ 이더넷
이더넷(Ethernet)은 LAN에서 가장 널리 사용되는 통신 기술로, 여러 장치(컴퓨터, 공유기 등)를 하나의 네트워크로 연결하여 데이터를 주고받을 수 있게 한다. 이더넷은 통신 매체를 통해 신호를 송수신하는 방법, 데이터 링크 계층에서 주고받는 데이터 형식 등 다양한 통신 규약이 정의된 기술이다.
이더넷 표준
제조사가 다른 네트워크 장비에도 LAN 내의 모든 컴퓨터가 호환되는 이유는 네트워크 장비들이 공통의 국제 표준을 준수하여 제작되었기 때문이다. 이더넷은 IEEE 802.3이라는 국제 표준을 기반으로 하며, 이 표준을 준수함으로써 다양한 장비 간 호환성과 상호 운용성을 확보할 수 있다.
아래는 이더넷 관련 표준들이다.
위 이더넷 표준을 모두 알고 있어야 할 필요는 없지만 다음 2가지 특징은 기억해 두는 것이 좋다.
1. 오늘날 LAN 대부분은 이더넷 표준을 따르기 때문에 대다수의 LAN 장비들이 특정 이더넷 표준을 따른다.
2. 이더넷 표준이 달라지면 통신 매체의 종류, 신호 송수신 방법, 최대 지원 속도 등이 달라질 수 있다.
이더넷 프레임
이더넷 프레임은 이더넷 기반의 네트워크에서 주고받는 프레임을 말한다. 위에서 언급했듯이 LAN 대부분이 이더넷을 기반으로 구현되므로 사실상 '프레임'이 이더넷 프레임을 지칭한다고 볼 수 있다.
아래는 프레임의 구조이다.
1. 프리앰블
프리앰블은 송수신지의 동기화를 위해 사용된다. 수신지는 이 비트로 이더넷 프레임이 수신되고 있다는 사실을 알아차린다.
2. 송/수신지 MAC 주소
택배를 배달할 때 보내는 주소와 받는 주소가 꼭 필요하듯이, 프레임에서 MAC 주소는 아주 중요한 정보다.
MAC 주소는 네트워크 인터페이스마다 부여되는 주소를 말한다. 여기서 네트워크 인터페이스는 연결 매체와의 연결 지점을 의미하며, 한 호스트가 여러 개의 MAC 주소를 가질 수도 있다. 보통 NIC라는 장치가 네트워크 인터페이스를 담당한다.
이 정보는 `ab:cd:ab:cd:00:01`과 같이 콜론(:)으로 구분된 16진수로 구성된다.
3. 타입/길이
이 필드는 프레임의 크기 또는 상위 프로토콜의 타입을 나타낸다.
2byte 크기의 정보로 값이 1500 이하`(16진수 05DC)`면 프레임의 크기 정보이고, 1536 이상`(16진수 0600)`이면 타입이다.
4. 데이터
데이터 필드는 페이로드 정보가 명시된다. 이때 데이터의 크기는 1500byte 이하로 제한되며, 이보다 큰 데이터를 보낼 경우 여러 패킷으로 나뉘어 보내게 된다.
5. FCS
FCS는 Frame Check Sequence의 약자로 프레임의 오류가 있는지의 여부를 확인하기 위한 필드이다. CRC(Cycle Redundancy Check)라는 오류 검출용 값이 명시된다.
송신지에서 <전송할 데이터 + 그에 대한 CRC 값>을 보내면 수신지에서는 전달받은 데이터에 대한 CRC 값을 계산하여 받은 CRC 값과 대조한다. 두 값이 같을 경우 프레임에 오류가 없다고 판단한다.
✔️ 통신 매체
유선 - 트위스티드 페어 케이블
트위스티드 페어 케이블은 구리선을 통해 전기적으로 신호를 주고 받는 통신 매체로, 구리선이 두 가닥씩 꼬아져있는 형태이다.
트위스티드 페어 케이블은 카테고리(category)라고 하는 등급에 따라 성능이 구분한다. 카테고리에 따라 주요 이더넷 표준이 다르고, 표준에 따른 최대 지원 속도도 달라진다.
카테고리는 `Cat`이라고 표기하고, 아래 사진과 같이 여러 종류가 있다.
트위스티드 페어 케이블은 구리선으로 전기적 신호를 주고받기 때문에 전기 신호에 왜곡을 줄 수 있는 주변 잡음에 취약하다. 이러한 잡음을 노이즈라고 하며, 노이즈 방지를 위해 그물 모양의 철사나 포일로 트위스티드 페어 케이블을 감싸기도 한다.
구리선 주변을 보호하여 노이즈를 감소시키는 방식을 차폐라고 하며, 차폐에 사용된 철사와 포일을 각각 브레이드 실드와 포일 실드라고 한다. 브레이드 실드로 노이즈를 감소시킨 케이블을 STP(Shielded Twisted Pair) 케이블, 포일 실드로 노이즈를 감소시킨 케이블을 FTP(Foil Twisted Pair) 케이블이라고 한다. 아무것도 감싸지 않은 케이블을 UTP(Unshielded Twisted Pair) 케이블이라고 한다.
무선 - 전파와 WiFi
전파는 3kHz부터 3THz 사이의 진동수를 갖는 전자기파이다.
와이파이 이름에 2.4G 또는 5G가 붙은 것을 자주 볼 수 있는데 이는 각각 진동수 2.4GHz와 5GHz를 의미한다. 두 진동수는 전파에 포함되며, 와이파이에 주로 활용된다.
유선 LAN에서 이더넷을 가장 많이 활용한다면, 무선 LAN에서는 와이파이를 가장 대중적으로 사용한다.
와이파이는 IEEE 802.11 표준을 따르는 무선 LAN 기술이다.
와이파이는 뒤에 붙는 숫자로 세대를 구분하고 지원되는 표준 규격이 다르다. 그에 따라 지원 가능한 최대 속도나 주파수도 달라질 수 있다.
와이파이는 주로 2.4G 또는 5G를 사용한다고 했는데, 이는 같은 지역 내 같은 대역을 사용하는 무선 네트워크가 여러 개 존재할 수 있음을 의미한다. 이 경우에 신호의 간섭이 발생할 수 있다.
이를 방지하기 위해 주파수 대역은 채널이라는 하위 주파수 대역으로 세분화되고 거기서 무선 통신이 이루어진다.
다음은 2.4GHz, 5GHz 대역의 일부 채널과 채널 번호를 표현한 그림이다.
그림에서 2.4GHz 대역 채널의 1, 6, 11번 채널의 주파수는 서로 중첩되지 않는다. 따라서 해당 채널을 사용하는 무선 네트워크는 아무리 많은 통신이 이루어지더라도 신호 간섭으로 인한 성능 저하가 발생하지 않는다. 그 외 채널은 신호 간섭으로 인해 성능이 저하될 수 있다.
✔️ 네트워크 인터페이스: NIC
네트워크 인터페이스는 네트워크 상에서 노드와 간선이 연결되는 지점을 말하는데, 네트워크 장비와 네트워크 사이의 통로와도 같다. 네트워크 인터페이스마다 MAC 주소가 부여되고 일반적으로 NIC(Network Interface Controller)라는 하드웨어가 네트워크 인터페이스 역할을 한다.
NIC는 신호를 호스트가 이해하는 프레임으로 변환하거나 호스트가 이해하는 프레임을 통신 매체의 신호로 변환하는 역할을 한다. 또한 MAC 주소를 토대로 잘못 전송된 패킷이 없는지 확인한다.
* NIC의 다양한 명칭: 네트워크 인터페이스 카드, 네트워크 어댑터, LAN 카드, 네트워크 카드, 이더넷 카드
✔️ 허브와 스위치
허브와 스위치는 물리 계층과 데이터 링크 계층 사이의 중간 노드이다. 오늘날에는 허브 대신 스위치를 사용하는 경우가 많다.
허브 - 물리 계층
허브는 물리 계층의 대표적인 네트워크 장비로, 여러 대의 호스트를 연결하는 장치이다. 리피터 허브라고도 하며, 이더넷 네트워크의 허브는 이더넷 허브라고 한다. 허브에서 케이블의 커넥터가 꽂히는 부분을 포트라고 한다.
허브의 특징
1. 전달받은 신호를 모든 포트로 내보낸다. 허브는 받은 신호에 대해 어떠한 조작이나 판단을 하지 않고 모든 포트에 내보낸다.
2. 반이중 모드로 통신한다. 반이중 모드란 송신 또는 수신을 번갈아가면서 수행해야 하는 통신 방식이다. 즉, 한 쪽이 송신할 때 다른 쪽은 송신이 불가능하다.
이에 대비되는 통신으로 전이중 통신이 있는데, 동시 송수신이 가능한 통신을 말한다.
스위치 - 데이터 링크 계층
스위치는 전달받은 신호를 목적지 호스트가 연결된 포트로만 내보내고, 전이중 모드를 지원한다.
스위치는 MAC 주소 학습 기능이 있으므로 신호를 원하는 포트에만 내보낼 수 있는 것이다. <포트, 연결된 호스트의 MAC 주소> 쌍을 MAC 주소 테이블에 저장하여 그 정보를 활용한다.
스위치의 또 다른 기능은 VLAN(Virtual LAN)이다. 이 기능은 같은 스위치에 연결된 모든 호스트를 하나의 네트워크로 간주하고 싶지 않을 때 사용한다.
아래 예시 그림에서 하나의 스위치에 연결된 A~I의 호스트를 2개의 논리적인 네트워크(VLAN)로 나누는 경우를 예로 들 수 있다. 호스트 A~D와 호스트 E~I는 서로 다른 VLAN에 속하므로 서로 다른 네트워크로 간주된다. 이 경우 두 네트워크가 서로 통신을 주고받으려면 네트워크 계층 이상의 장비가 필요하다.
'CS > 네트워크' 카테고리의 다른 글
[네트워크] 3. 네트워크 계층 - IP (2) | 2025.05.19 |
---|---|
[네트워크] 1. 네트워크 기본 (5) | 2025.05.07 |