이번주는 2장 데이터 링크 계층, 물리 계층 내용을 배웠다. 이번 주에는 해당 챕터의 문제 중 몇 문제를 풀어보고, 풀이와 관련된 개념을 정리할 것이다.
1. 이더넷 프레임
1.1 이더넷?
1.2. 이더넷 프레임?
1.2.1. 이더넷 프레임의 구조
2. CSMA/CD
2.1. 허브
2.2. 콜리전 도메인
2.3. CSMA/CD
3. 결론
1. 이더넷 프레임
문제는 아래와 같다.
* 이더넷 프레임에서 ㄱ, ㄴ, ㄷ에 들어갈 올바른 단어를 찾아 빈칸을 채워보시오.
ㄱ(8byte), 수신지 MAC 주소, ㄴ(6byte), 타입/길이(2byte), 데이터(46~1500byte), ㄷ(4byte)
<------------------------헤더-----------------------><-----페이로드------><-트레일러->
정답은 ㄱ : 프리앰블, ㄴ : 송신지 MAC 주소, ㄷ : FCS이다.
그러면 해당 구조의 목적을 알아보기 위해 관련 개념들을 차근차근 정리해보자.
1.1 이더넷?
= 이더넷은 다양한 통신 매체의 규격들과 송수신되는 프레임의 형태, 프레임을 주고받는 방법 등이 정의된 네트워크 기술이다.
++ 현재 이더넷은 국제적 표준화가 이루어진 상태이다. 해당 표준에 따라 지원되는 네트워크 장비, 통신 매체의 종류와 전송 속도 등이 달라질 수 있다.
1.2. 이더넷 프레임?
= 이더넷 프레임은 이더넷을 기반으로 구성된 네트워크 내 데이터 링크 계층에서 호스트가 정보를 주고받기 위해 사용하는 프레임 형식이다.
= 상위 계층으로부터 받아들인 정보에 헤더, 트레일러를 추가하는 캡슐화 과정을 통해 만들어진다.
= 수신자는 프레임의 헤더, 트레일러를 제거한 뒤 상위 계층으로 올려보내는 역캡슐화 과정을 거친다.
1.2.1. 이더넷 프레임의 구조
위에서 이더넷 프레임 구조를 정리했는데, 해당 부분의 기능을 정리해보았다.
- 프리앰블
= 이더넷 프레임의 시작을 알리는 8byte 크기의 정보.
= 송수신지 간의 동기화를 위해 존재하며, 첫 7바이트는 10101010, 마지막 바이트는 10101011을 가진다.
- 수신지 MAC 주소, 송신지 MAC 주소
= MAC 주소 : 물리적 주소라고 불리며, 네트워크 인터페이스마다 부여되는 6byte 길이의 주소이다. LAN 내 수신지와 송신지를 특정할 수 있다.
= 기기들은 MAC 주소를 일반적으로 변경되지 않는 고유 주소로 네트워크 인터페이스마다 부여한다. (NIC 장치가 해당 역할 수행)
(반드시 변경 불가능하고, 반드시 고유 주소로만 사용되는 건 아니지만 동일 네트워크 내에서 동작할 경우 MAC 주소가 같을 확률은 낮다)
- 타입/길이
= 크기가 1500 이하일 경우 프레임의 큭리(길이)를 나타내고, 1536 이상일 경우 타입을 나타내는 데 사용한다.
= 타입 : 이더넷 프레임이 어떤 정보를 캡슐화했는지 나타내는 정보. 이더타입이라고도 불린다.
- 데이터
= 상위 계층에서 전달받거나 상위 계층으로 전달해야 할 내용.
= 네트워크 계층의 PDU(데이터+헤더)가 포함.
= 최대 1500byte, 최소 46byte 이상.
= 그 이하라면 크기를 맞추기 위해 패딩으로 채워진다.
- FCS
= 수신한 이더넷 프레임에 오류가 있는지를 확인하기 위나 필드.
= CRC(순환 중복 검사라는 오류 검출용 값)이 들어간다.
2. CSMA/CD
문제는 아래와 같다.
* CSMA/CD와 관련해 서로 맞는 용어끼리 선으로 이어 보세요.
CS 충돌 검출
MA 캐리어 감지
CD 다중 접근
정답은 CS - 캐리어 감지, MA - 다중 접근, CD - 충돌 검출이다.
그러면 관련 내용을 정리해보자.
2.1. 허브
CSMA/CD는 허브에서 발생하는 충돌이기 때문에 허브에 대해서부터 알아보자.
= 허브는 여러 대의 호스트를 연결할 수 있는 물리 계층의 장비로, 전달받은 신호를 다른 모든 포트로 내보내며 반이중 모드로 통신한다.
= 오늘날 인터넷 환경에서 잘 사용되지 않는다.
= 전달받은 신호를 다른 모든 포트로 다시 그대로 내보낸다.
(물리 계층에 속하는 허브는 주소 개념이 없기 때문에 수신지 특성이 불가하다.)
= 반이중 모드로 통신한다. (반이중 모드 : 송수신을 번갈아가면서 하는 통신 방식으로, 동시에 송수신이 불가능하다.)
(++ 전이중 모드는 송수신을 양방향으로 할 수 있다.)
2.2. 콜리전 도메인
= 허브에서 충돌 발생 가능성이 있는 영역으로, 허브에 연결된 호스트 전체이다.
= 동시에 허브에 신호를 송신할 경우 충돌이 발생한다.
= 해당 문제를 해결하려면 CSMA/CD 프로토콜을 사용하거나 스위치 장비를 이용해야 한다.
2.3. CSMA/CD
= 반이중 이더넷 네트워크의 충돌 방지 프로토콜이다.
= Carrier Sense Multiple Access with Collision Detection의 약자이다.
= CS(캐리어 감지) : 현재 통신 매체의 사용 가능 여부를 검사하는 기능으로, 현재 네트워크상에서 전송 중인 것이 있는지를 확인한다.
= MA(다중 접근) : 캐리어 감지를 해도 복수의 호스트가 네트워크에 접근하려는 상황.
= CD(충돌 검출) : 충돌이 발생할 시 검출하는 기능으로, 충돌을 감지하면 전송이 중단되고 호스트는 잼 신호로 충돌이 발생했음을 알린다. 그리고 임의의 시간 동안 기다린 뒤 다시 전송한다.
3. 결론
오늘은 물리 계층, 데이터 계층의 충돌 이슈와 해당 이슈를 해결하는 방법, 그리고 이더넷에 대해 정리했다.