OSI 7 Layer - 데이터링크 계층
OSI 7 Layer - 데이터링크 계층
1. 개요
단순히 컴퓨터 두 개간에 통신을 위해서라면 물리 계층에서 구동되는 형태의 통신으로도 충분하겠지만
우리는 N:N 형태의 통신이 필요하다. 따라서 이러한 1대1 구조에서 확장된 형태의 통신이 필요하다.
만약에 1대 1 통신 기반으로 다수의 컴퓨터 간에 통신을 하고자 한다면 아래와 같은 형태가 된다.
총 통신 대상이 N개라면 $ \sum_{k=1}^{N-1}k$개의 연결이 필요하다. 이렇게되면 통신하고자하는 대상 수가 늘수록 연결되는 전선이 늘어야하므로 매우 비효율적이다. 따라서 통신간에 좀 더 효율적인 방식을 취하게 되었는데 그 방식이 바로 동일한 선을 사용하는 방식이다.
모든 컴퓨터를 허브(HUB)$^{1)}$라는 장비에 선을 연결해서 전달하는 신호를 전체 컴퓨터에 뿌리는 것이다$^{2)}$.
이렇게 연결하니 연결해야하는 선의 개수는 많이 줄었다. 그러나 문제가 있다.
- 동일한 선으로 신호를 보내기 때문에(단 이중 방식$^{3)}$) 특정 신호가 이미 선을 점유하고 있다면 해당 신호가 다 전달될때까지 다른 신호를 보낼 수 없다.
때문에 한 개의 신호가 전체에 다 퍼지기 때문에 선이 IDLE한 상태가 매우 적으며 어떤 신호를 보내야할때까지 꽤 긴시간을 걸릴 수도 있다. - 보안적인 위험이 된다. 목적지 컴퓨터가 아닌 다른 컴퓨터가 해당 신호를 폐기하지 않고 수신하고 있다면 신호를 그대로 열람 할 수 있다. 아주 보안적으로 취약하다.
그렇다면 이 문제들을 어떻게 해결하면 될까?
결론은 간단하다. 정말 필요한 메세지만 판단하여 전달하면 된다. 허브는 연결된 다른 단말에 수신한 메세지를 모두 뿌리기 때문에 문제가 된다.
그렇다면 이 허브를 다른 걸로 대체하면 된다. 여기서 나오는 기기가 스위치$^{1)}$라는 것이다.
스위치는 허브와는 다르게 자신의 어디에 어떤 컴퓨터가 연결되어있는지 정보를 가지고 있다.
컴퓨터에 대한 식별자는 MAC 주소(Media Access Control Address)$^{4)}$를 사용한다.
메세지를 보낼때 대상 컴퓨터의 MAC 주소를 지정해서 보내게 되고 스위치에서는 메세지를 수신하게 되면 해당 컴퓨터로만 메세지를 전송할 수 있는 것이다. 또한 스위치는 전 이중 방식을 지원하기 때문에 동시에 주고 받을 수 있어서 대기 시간이 줄어든다.
2. 이더넷(Ethernet)
이전 포스팅(물리 계층에 대한 설명)과 위에서 언급한 MAC을 이용한 대상 식별 및 통신 방식을 이더넷(Ethernet)이라고 한다.
위에서 말했듯이 필요한 메세지만 대상에 보내기 위해서는 메세지에 어디에 보내야하는지 적어두어야한다.
따라서 보내고자하는 메세지 앞단에 수신자와 송신자의 MAC 주소를 기재하게 된다. 이 부분을 이더넷 헤더라고 부른다.
메세지와 이더넷 헤더가 결합된 데이터를 프레임이라고 부른다.
3. 주석
1) 허브, 스위치
a. 허브
반이중$^{3}$ 통신방식을 지원하는 네트워크 장비의 종류이다. 신호를 받으면 연결된 다른 모든 노드에 동일한 신호를 전송한다.
b. 스위치
전이중$^{3)}$ 통신방식을 지원하는 네트워크 장비의 종류이다. 신호를 받으면 대상 노드에만 신호를 전달한다. 대상 노드에 대한 정보를 갖고 있어야 가능한 일인데, 스위치 내부에서는 MAC 주소에 대한 테이블을 유지하고 있다. 이 테이블에 없는 대상으로 보내려는 메세지를 받게되면
연결된 모든 컴퓨터에 신호를 보내서(플러딩(flooding)이라고 한다) MAC 주소를 알아내 자신이 갖고 있는 MAC 주소의 테이블을 업데이트하고 업데이트한 테이블을 기준으로 메세지를 전달하게 된다.
2) 브로드 캐스트, 멀티 캐스트, 유니 캐스트
- 브로드 캐스트 : 연결된 모든 노드에 신호를 보내는 것을 뜻한다.
- 멀티 캐스트 : 연결된 특정 그룹에만 신호를 보내는 것을 뜻한다.
- 유니 캐스트 : 대상 노드에 대한 정보를 담아서 신호를 보낸다. 해당 정보를 대조해보고 대상이 아니면 해당 신호를 버린다.
3) 단방향(Simplex), 반이중(Half Duplex), 전이중(Full Duplex)
통신을 할 때 일방적으로 한 방향으로만 보내는 것을 단방향 통신이라고 한다. 그에 반해 반이중 방식은 양 방향 전부 다 보낼 수 있지만 동시에는 보낼 수 없는 방식이며 전이중 방식의 경우 양 방향 전부 전송이 가능하며 동시에 전송 역시 가능한 방식을 뜻한다.
4) MAC 주소(Media Access Control Address)
MAC 주소는 랜카드에 들어있는 고유한 번호이다. 총 48bit 길이로 되어있다.
앞 부분 24bits는 제조사의 넘버고, 뒤에 24bits는 시리얼 넘버이다.
출처 : https://en.wikipedia.org/wiki/File:MACaddressV3.png