NLP Learner in Switzerland

[쉬운 정리] 모두의 네트워크 4장 ::: 데이터 링크 계층 : 랜에서 데이터 전송하기 본문

Computer Networks/모두의 네트워크

[쉬운 정리] 모두의 네트워크 4장 ::: 데이터 링크 계층 : 랜에서 데이터 전송하기

초코빵 2021. 4. 14. 10:00
728x90
반응형

 

3장에서는 OSI모델의 물리 계층을 봤고,

4장에서는 그 상위 계층인 데이터 링크 계층이 나온다.

 

 

 

데이터 링크 계층은

네트워크 장비(물리계층에서 봤던 기기들)간에 신호를 주고 받는 규칙을 정하는 계층이다.

그 규칙중 가장 많이 사용되는 규칙이 이더넷(Ethernet)이다.

 

허브는 한 쪽에서 받은 데이터를 생각없이 나머지 모든 포트로 전송해버려서 문제가 발생한다고 했었다. (3장 참고)

이더넷에서 2가지 규칙을 정해서 이를 방지한다.

 

첫번째 규칙은

[목적지 정보(주소) 추가] 이다. 그러면 목적지 외의 컴퓨터는 데이터를 받아도 무시한다.

 

 

그럼 그 주소는 뭘 적는걸까?

MAC 주소(= 물리 주소)이다.

맥 주소는 0과1로 이루어진 데이터를 전기신호로 변환해주는 장비인 랜카드 위에 적혀있다. (3장 참고)

이 맥주소는 전세계 유일한 번호이며, 48비트 숫자로 구성된다.

앞 24비트는 랜카드 제조사 번호, 뒤 24비트는 일련번호이다.(숫자 또는 영문자 1개가 4비트)

 

 

데이터를 보낼 때 각 계층을 통과하면서 헤더를 붙여나가는 캡슐화가 일어난다고 했었다. (2장 참고)

 

이 맥 주소를 이용해서 데이터 링크 계층에서는 데이터 앞에 이더넷 헤더를, 뒤에는 트레일러를 붙인다.

이더넷 헤더는 목적지의 MAC주소 6바이트 + 출발지의 MAC주소 6바이트 + 유형 2바이트 = 14바이트로 이루어져 있다.

 

 

트레일러는 FCS라고 부르며 데이터 전송시 오류가 발생하는지 확인하는 용도이다.

이더넷 헤더 + 데이터 + 트레일러(FCS)를 전부 합쳐서 프레임이라고 부른다.

데이터를 받은 쪽에서는 다시 이 프레임을 해체해서 헤더와 트레일러를 떼내는 작업인 역캡슐화를 진행한다. (2장 참고)

 


 

컴퓨터 여러대가 동시에 허브를 통해서 데이터를 보내면 충돌이 발생할 수 있다. 그래서

두번째 규칙

[시간차 전송]을 하는 것이다. 이를 CSMA/CD라고 부른다.

CS : 송신하려는 컴퓨터가 케이블에 신호가 흐르고 있는지(다른애가 보내는 도중인지) 아닌지를 확인한다

MA : 케이블에 데이터가 흐르고 있지 않다면 데이터를 보내도 좋다.

CD : 충돌이 발생하고 있는지 확인한다.

 

하지만 이 방법은 비효율적이라서 지금은 쓰이지 않고, 스위치라는 장비를 통해 해결한다.

 

 

스위치는 생김새는 허브랑 비슷하게 생겼다.

 

스위치는 어떤식으로 작동할까?

스위치 내부에는 각 포트에 연결된 컴퓨터의 MAC주소를 저장해두는 DB(데이터베이스)인 MAC 주소 테이블이 있다.

최초에는 아무 맥주소도 등록이 안되어 있지만,

데이터를 보내는 쪽에서 MAC주소가 추가된 프레임을 보내면면 출발지 MAC주소가 꽂힌 포트번호와 함께 테이블에 등록된다.

하지만 아직 받는 쪽 MAC주소는 스위치에 등록이 안되어 있으므로 나머지 모든 포트에 전송을 하는 플러딩(Flooding)이 발생한다.

출발지 컴퓨터가 목적지 주소를 모르면 MAC주소를 알아내기 위해 IP주소를 이용해서 MAC주소를 찾는 방식인 ARP요청을 한다.

이렇게 MAC주소를 얻으면 ARP테이블에 보관해놓고, 차후 IP주소가 변경될 수도 있기 때문에 일정 기간후에 ARP요청을 다시 한다.

도식화해보면 이렇다.

 

 

 

그럼 스위치가 왜 허브보다 좋다는걸까?

허브 vs 스위치허브를 사용하면스위치를 사용하면
동작하는 계층물리 계층에서 동작데이터 링크 계층에서 동작
송수신나누어져 있지 않음송수신 동시에 가능
통신 방식반이중 통신 방식(회선 하나로 번갈아 전송)전이중 통신 방식(동시 송수신)
단점1번갈아하므로 네트워크 지연동시라서 지연 없음
단점2동시 전송하려고 하면 충돌발생.
충돌도메인은 포트의 모든 컴퓨터이다.
동시 송수신되므로 충돌 없음
그래서...안 쓰인다.전부 이걸 쓴다.

* 충돌 도메인(collision domain) = 충돌의 영향 범위

 

 

 

이더넷은

케이블 종류(3장 참고)와 통신 속도에 따라서 다양하게 분류된다.

 

 

e.g. 10BASE-T

10은 통신속도(10Mbps)

BASE는 전송방식(BASEBAND)

T는 케이블(UTP케이블)을 뜻한다.

 

 

 

하이픈 없이 숫자가 있는 규격의 경우에는 숫자가 케이블 길이를 뜻한다.

e.g. 10BASE5는 케이블 길이가 500m

 

현재는 1000BASE-T가 일반적이며 10GBASE-T도 많아지는 추세이다.

 


 

[복습하기]

 

1. 이더넷에서 데이터의 충돌을 방지하는 규칙은 CSMA/CD

2. MAC주소는 몇 비트? 48비트

3. 이더넷 헤더는 14바이트로 구성되어 있다. 목적지MAC주소, 출발지MAC주소, 유형은 각각 몇 바이트? 6,6,2

4. 데이터 링크 계층에서 데이터의 마지막에 추가되는 것 트레일러

5. 스위치의 포트 번호와 그 포트에 접속하는 컴퓨터의 MAC주소가 등록되는 데이터베이스 이름 MAC주소테이블

6. 스위치가 수신 포트 이외의 포트에 데이터를 송신하는 것 플러딩

7. 데이터의 송신과 수신이 동시에 일어나는 통신방식은 전이중 통신 방식

8. 회선 하나로 송신과 수신을 번갈아가며 하는 통신방식은 반이중 통신 방식

9. 데이터의 충돌이 발생했을 때 그 영향이 미치는 범위는 충돌 도메인

10. 이더넷 규격 10BASE2 케이블의 최대 길이는 185m

 

* 답은 각 문제의 오른쪽 부분을 드래그

Comments