Earn this, Earn it.

TIL - [OSI 7 계층] 물리/데이터 링크 계층 본문

[개발 공부]

TIL - [OSI 7 계층] 물리/데이터 링크 계층

Narastro 2021. 12. 12. 02:41

OSI 7계층 중 다른 계층에 대한 포스팅은 아래 링크를 참고해주세요! :)

 

물리, 데이터 링크 계층 : https://hanastro.tistory.com/51

네트워크 계층 : https://hanastro.tistory.com/45

전송 계층 : https://hanastro.tistory.com/54

 

 

 OSI 7계층이란 무엇일까요? 

 

네트워크에서 통신이 일어나는 과정7단계로 나눈 것을 말하며, ISO라는 국제표준화기구에서 OIS 모델이라는 표준 규격을 제정했습니다.

 

 7계층을 나눈 이유? 

 

통신이 일어나는 과정을 단계별로 파악하기 위함입니다.

만약 7계층 중 특정 계층(레이어 라고도 함)에서 이상이 생기면 그 특정 계층에서만 이상 현상을 수정하면 됩니다.

따라서 문제를 파악하기 쉽죠.

 

 OSI 7계층과 TCP/IP 프로토콜 

이미지 출처 : https://shlee0882.tistory.com/110

 

"TCP/IP 모델이란 TCP, IP를 쓰는 모델로 OSI 7계층을 4계층으로 바꾼 것입니다"

 

 

 1계층: 물리계층 (Physical Layer), 데이터를 전기 신호로 변환하기 

 

이 계층은 주로 전기적, 기계적 특성을 고려하여 통신 케이블로 데이터를 전송하게 됩니다. 여기서 사용되는 통신 비트가 바로 0과 1이며 전기적 신호라고 생각하면 됩니다. 또한, 이 계층에서는 시스템 간의 물리적인 연결과 전기 신호를 변환 및 제어할 뿐이며, 여기서 0과 1을 전기 신호로 변환해 주는 것이 바로 '랜카드'입니다.

 

리피터와 허브

이미지 출처 : https://m.blog.naver.com/chlalsdud61/220744988172
이미지 출처 : https://m.blog.naver.com/chlalsdud61/220744988172

리피터일그러진 전기 신호를 복원하고 증폭하는 기능을 하는 네트워크 중계 장비이며(요즘엔 다른 네트워크 장비가 리피터를 지원하기 때문에 잘 쓰지 않음),

허브포트를 여러 개 가지고 있어서 컴퓨터 여러 대와도 통신할 수 있게 만들어줍니다. 허브는 전기 신호를 정형하고 증폭하는 기능을 하며 허브는 스스로 판단하지 않고 전기 신호를 모든 포트로 보내기 때문에 더미 허브라는 이름으로 불리기도 합니다.

 

 2계층: 데이터 링크 계층(DataLink Layer), 랜에서 데이터 전송하기 

 

데이터 링크 계층은 네트워크 장비 간에 신호를 주고받는 규칙을 정하는 계층으로 랜에서 정상적으로 데이터를 주고받기 위해 필요한 계층입니다. 그 규칙들 중 가장 많이 사용되는 규칙 이더넷입니다. 이더넷은 허브 같은 장비에 연결된 컴퓨터와 데이터를 주고 받을 때 사용합니다.

 

TMI. 이더넷은 여러 컴퓨터가 동시에 데이터를 전송해도 충돌이 일어나지 않는 구조로 되어 있는데 이는 이더넷에서 시점을 늦추는 방법인 CSMA/CD 방법을 사용하기 때문입니다. (여기서 CS는 데이터를 보내려고 하는 컴퓨터가 케이블에 신호가 흐르고 있는지 아닌지를 확인하다는 규칙이고 MA는 케이블에 데이터가 흐르고 있지 않다면 데이터를 보내도 좋다라는 규칙이며, CD는 충돌이 발생하고 있는지를 확인한다는 규칙입니다. 하지만 지금은 효율이 좋지 않다는 이유로 CSMA/CD는 거의 사용하지 않고 스위치라는 네트워크 장비를 이용합니다.)

 

MAC주소

랜카드는 비트열을 전기 신호로 변환하는데, 여기서 MAC 주소라는 번호가 정해져 있다. 이것은 제조할 때 새겨지는 물리 주소라고도 부르는데 전 세계에서 유일한 번호로 할당되어 있습니다. 중복되지 않도록 규칙이 명확하며 MAC 주소는 48비트 숫자로 구성되어 있습니다. 앞쪽 24비트는 제조사 번호이고 뒤쪽 24비트는 제조사가 랜카드에 붙인 일련번호입니다. 

 

이더넷 헤더

이미지 출처 : https://butter-shower.tistory.com/6

이더넷 헤더는 목적지의 MAC 주소 (6바이트), 출발지 MAC 주소(6바이트), 유형 (2바이트) 이렇게 총 14바이트로 구성되어 있습니다. (유형은 상위 계층 프로토콜의 종류, 즉 IPv4, ARP, IPv6와 같은 프로토콜 유형 번호가 들어갑니다.)

또한 데이터 뒤에 트레일러를 추가하는데 이는 FCS(Frame Check Sequence)라고 하여 데이터 전송 도중에 오류가 발생하는지 확인하는 용도입니다. 이처럼 이더넷 헤더와 트레일러가 추가된 데이터를 프레임이라고 합니다. 

 

즉 데이터 링크 계층은 데이터에 이더넷 헤더와 트레일러를 추가하여 프레임을 만드는 것이지요.

허브는 포트로 수신된 데이터 중 목적지 MAC 주소가 맞지 않는 데이터를 파기하고 맞는 데이터만 수신합니다.

 

스위치에 대해서

데이터 링크 계층에서 동작하고 스위칭 허브라고도 합니다. 외형은 허브와 비슷하나 스위치 내부에는 MAC 주소 테이블이라는 것이 있어서, 스위치의 포트 번호와 해당 포트에 연결되어 있는 컴퓨터의 MAC 주소가 등록되어 있는 데이터베이스입니다. 프레임이 전송되면 MAC 주소 테이블을 확인하고 출발지 MAC 주소가 등록되어 있지 않으면 MAC 주소를 포트와 함께 등록합니다. 이를 주소 학습 기능이라고 합니다.

 

ARP에 대해 알아보면

ARP(Address Resolution Protocol)목적지 컴퓨터의 IP 주소를 이용하여 MAC 주소를 찾기 위한 프로토콜입니다. 이더넷 프레임을 전송하려면 목적지 컴퓨터의 MAC 주소를 지정해야 합니다.

출발지 컴퓨터가 목적지 주소를 모르면 MAC 주소를 알아내기 위해 네트워크에 브로드캐스트를 하는데 이것을 ARP 요청이라고 하고 이 요청에 의해 지정된 IP를 갖는 컴퓨터는 MAC 주소를 응답으로 보냅니다. 이것을 ARP 응답이라고 합니다.

출발지 컴퓨터에서는 MAC 주소를 얻은 후에 MAC 주소와 IP 주소의 매핑 정보를 메모리에 보관하는데 이를 ARP 테이블이라고 합니다. 이후 데이터 통신은 이 ARP 테이블을 참고하여 전송됩니다.

윈도우에서 ARP 캐시 내용을 확인하려면 arp -a 를 입력하고 이를 삭제하려면 arp -d 명령어를 입력합니다.

 

 

 3계층: 네트워크 계층(Network), 목적지에 데이터 전달하기 

 

이 내용은 다음시간에 하겠습니다...!

 

 

 

 

 

 

 

 

 

출처 : '모두의 네트워크', 길벗 출판사

'[개발 공부]' 카테고리의 다른 글

TIL - [OSI 7 계층] 전송 계층  (0) 2021.12.23
[읽고 정리하기] 함수형 자바스크립트 - 1장  (1) 2021.12.18
TIL - UTF-8이란?  (0) 2021.12.10
TIL - AJAX란 무엇인가?  (2) 2021.12.04
TIL - HTTPS에 대해서  (0) 2021.11.27