티스토리 뷰

첫번째 계층을 통해서 인접한 컴퓨터들이 물리적인 통신을 할 수 있게 되었다. 하지만, 그렇다고 해서 모두 올바르게 통신 할 수 있지는 않다. 연결되어 있는 컴퓨터들이 동시에 신호를 보낼경우 충돌이 일어나고 그 충돌을 해결하기 위해서 재전송을 하기 때문이다.


그렇게 되면 효율이 매우 떨어진다.

데이터 링크 계층에서는 인접한 기기들끼리 통신을 할때 충돌이 일어나는것을 막아주는 역할을 한다. 즉 LAN에서의 충돌을 방지하는 역할 이것이 두번째 계층의 핵심이다.


대표적인 프로토콜로 이더넷 프로토콜이 있다. 이 프로토콜은 CSMA/CD방식을 사용한다. 네트워크에 누군가 신호를 보내고 있다면 그것을 감지하여 잠시동안 보내지 않고 보내지 않는다면 내가 보낸다. 근데 네트워크의 두 노드 이상이 동시에 데이터를 전송한경우 충돌이 일어날수밖에 없다. 이때 이 충돌을 감지하여 랜덤 시간 동안 기다렸다가 재전송한다.


허브를 사용하여 LAN을 구성했을때 이더넷 프로토콜을 사용하면 충돌을 최대한 막아 줄 수 있다.

그렇다고 해서, 충돌이 절대 일어나지 않는것은 아니다.

하지만 스위치를 사용할 경우 CSMA/CD방식을 사용할 필요도 없어진다.


스위치는 LAN에서 충돌 도메인을 구분하는 역할을 해주기 때문에 스위치에 동시에 두개 이상의 패킷이 수신되더라도 충돌이 발생하지 않는다.

참고) 충돌은 케이블에서 일어나는게 아니라 허브와 같은 장비에서 발생하는것이다.


스위치의 대표적인 역할 2가지 - MAC주소 학습, 버퍼링


MAC주소 학습

스위치는 수신된 패킷의 발신자 주소를 어드레스 테이블에 저장해놓고 다음번에 활용한다. 어떤 패킷의 수신지 맥 주소가 아직 학습되지 않은 주소라면 스위치는 다른 포트로 플러딩 시켜 버린다.


버퍼링

스위치는 맥 주소를 구분하여 그쪽 포트로만 데이터를 내주기 때문에 충돌을 방지한다. 그럼 만약 같은 포트로 송신된 데이터 두개가 동시에 들어온다면?

그때 스위치는 내부 버퍼에 늦게 수신된 데이터를 보관했다가 첫번째 데이터가 완전히 송신되면 그 다음에 두번째 데이터를 전송한다.


CSMA/CD방식을 사용해서 충돌을 방지하면 한번에 한 컴퓨터만 데이터를 전송할수 있기 때문에(Half-Duplex) 효율이 떨어진다.

반면에 스위치를 사용하여 충돌 도메인을 구분하면 동시에 여러 컴퓨터가 데이터를 전송 할 수 있기 때문에 효율이 높다(Full-Duplex).


요약

1Layer를 통해 인접한 기기끼리의 물리적 통신이 가능해졌다.

1Layer의 기능을 이용해서 소규모의 네트워크인 LAN을 구성할수 있다. 다만, 충돌 문제를 해결해야 한다. 이것이 2Layer의 역할이다.


이런 특징때문에 LAN을 구성하기 위해서는 Layer2까지만 있어도 된다. 




'컴퓨터 공학과 졸업 > 기본 개념2' 카테고리의 다른 글

OSI 3 Layer  (0) 2018.09.23
OSI 1 Layer(Physical Layer)  (0) 2018.09.16
네트워크 계층(Layer3)과 트랜스포트 계층의 관계(Layer4)  (0) 2018.08.31
소켓  (0) 2018.08.31
OSI 7Layer  (0) 2018.08.29
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함