데이터 링크 계층 / 이더넷 / 충돌 / MAC 주소 / 스위치 / 전이중 통신 방식 / ARP / ARP 캐시·요청·응답
1. 데이터 링크 계층의 역할과 이더넷
랜에서 데이터를 주고 받으려면 데이터 링크 계층의 기술이 필요.
데이터 링크 계층은 네트워크 장비 간에 신호를 주고받는 규칙을 정하는 계층
1-1. 이더넷 (Ethernet)
신호를 주고받는 규칙 중 가장 일반적으로 사용되는 규칙 (랜에서 적용되는 규칙)
허브와 같은 장비에 연결된 컴퓨터와 데이터를 주고 받을 때 사용.
더미 허브의 문제점을 해결하는 규칙
▶ 보내려는 데이터에 목적지 정보를 추가해서 보내고 목적지 이외의 컴퓨터는 데이터를 받더라도 무시하게 되어 있음
허브의 경우 컴퓨터 여러 대가 동시에 데이터를 보내면 데이터들이 서로 부딪히는 충돌(collision)발생
따라서, 이더넷은 여러 컴퓨터가 동시에 데이터를 전송해도 충돌이 일어나지 않는 구조로 되어있음
예를 들어, 데이터를 동시에 보내야할 때 데이터를 보내는 시점을 늦춤. = CSMA/CD
*CSMA/CD(Carrier Sense Multiple Access with Collision Detection)
▶CS : 데이터를 보내려고 하는 컴퓨터가 케이블에 신호가 흐르고 있는지 아닌지를 확인 하는 규칙
▶MA : 케이블에 데이터가 흐르고 있지 않다면 데이터를 보내도 좋다는 규칙
▶CD : 충돌이 발생하고 있는지를 확인한다는 규칙
!!! 하지만, 효율이 좋지 않다는 이유로 CSMA/CD는 거의 사용하지 않고 있음
!!!! 현재는 스위치(switch)로 해당 역할 대체
2. MAC주소의 구조
2-1. MAC 주소 (Media Access Control Address)
랜 카드를 제조할 때 정해지는 물리적인 주소
랜 카드는 비트열을 전기 신호로 변환함. 이러한 랜 카드에는 MAC주소라는 번호가 정해져 있음
제조할 때 새겨지기 때문에 물리 주소라고 부름 = 전 세계에서 유일한 번호
MAC 주소는 48비트 숫자로 구성
앞 24비트는 랜 카드를 만든 제조사 번호
뒤 24비트는 제조사가 랜 카드에 붙인 일련번호
OSI모델에서는 데이터 링크 계층, TCP/IP 모델에서는 네트워크 계층에 해당하며,
이 계층에서 이더넷 헤더와 트레일러를 붙임
이더넷 헤더 : 목적지의 MAC주소(6바이트), 출발지 MAC주소(6바이트), 유형(2바이트) = 총 14 바이트로 구성
유형 : 이더넷으로 전송되는 상위 계층 프로토콜의 종류(프로토콜 종류를 식별하는 번호)
트레일러 : FCS(Frame Check Sequence) 라고도 하며, 데이터 전송 도중에 오류가 발생하는지 확인하는 용도
프레임 : 이더넷 헤더와 트레일러가 추가된 데이터
---- 컴퓨터1이 컴퓨터3 에 데이터 전송 예시 ----
- 컴퓨터 1은 이더넷 헤더에 데이터의 목적지인 컴퓨터 3의 MAC주소(목적지 MAC 주소)와 자신의 MAC(출발지 MAC주소) 정보를 넣고 데이터를 전송 = 캡슐화
- 데이터 링크 계층에서 데이터에 이더넷 헤더와 트레일러를 추가하여 프레임을 만들고, 물리 계층에서 이 프레임 비트열을 전기 신호로 변환하여 네트워크를 통해 전송
허브는 컴퓨터1이 보낸 데이터를 1번 포트로 수신하고 2~5의 모든 포트로 전송.
데이터는 컴퓨터 2~5에 전송되지만, 컴퓨터는 2,4,5 는 목적지 MAC주소가 자신의 MAC주소와 다르기 때문에 데이터를 파기함.
반면 컴퓨터3은 자신의 MAC주소가 컴퓨터1이 보낸 데이터의 목적지 MAC주소와 같으므로 데이터를 수신 = 역캡슐화
컴퓨터3 에서는물리 계층에서 전기 신호로 전송된 데이터를 비트열로 변환하고 데이터 링크 계층에서 이더넷 헤더와 트레일러를 분리함. ( 역캡슐화를 한 다음 데이터를 수신)
만약, 컴퓨터1과 컴퓨터2 가 동시에 컴퓨터3에 데이터를 전송하는 경우 CSMA/CD 방식 사용
3. 스위치(switch)의 구조
스위치는 허브와 달리 데이터 충돌이 발생하지 않음.
3-1. MAC 주소 테이블
스위치 : 데이터 링크 계층에서 동작하고 레이어2 스위치 또는 스위칭 허브라고 불림
장비 외형은 허브와 비슷 (하지만 기능은 완전 다름)
스위치 내부에는 MAC 주소 테이블 (bridge table 이라고도 함)이 있음
MAC주소 테이블: 스위치의 포트 번호와 해당 포트에 연결되어 있는 컴퓨터의 MAC 주소가 등록되는 데이터베이스
스위치의 전원을 킨 상태에서는 MAC 주소 테이블에 아무것도 등록되지 않음.
하지만, 컴퓨터에서 목적지 MAC 주소가 추가된 프레임이라는 데이터가 전송되면 MAC 주소 테이블을 확인하고 출발지 MAC 주소가 등록되어 있지 않으면 MAC주소를 포트와 함께 등록 = MAC 주소 학습 기능
플러딩 : 목적지 MAC 주소가 MAC 주소 테이블에 등록되어 있지 않는 경우 송신 포트를 제외한 모든 포트에 데이터가 전달됨
MAC 주소 필터링 : MAC 주소를 기준으로 목적지를 선택하는 것
▶ 불필요한 데이터를 네트워크에 전송하지 않음
4. 데이터가 케이블에서 충돌하지 않는 구조
4-1. 전이중 통신과 반이중 통신
전이중 통신 방식 : 데이터의 송수신을 동시에 통신하는 방식
▶컴퓨터 간을 직접 랜 케이블로 연결하는 방식
반이중 통신 방식 : 회선 하나로 송신과 수신을 번갈아가면서 통신하는 방식
전이중 통신 방식은 데이터를 동시에 전송해도 충돌이 발생하지 않지만, 반이중 통신 방식은 데이털르 동시에 전송하면 충돌이 발생
스위치를 사용하는 것이 효율이 높아서 현재 대부분의 네트워크 업체는 스위치만 판매
4-2. 충돌 도메인 (collision domain)
: 충돌이 발생할 때 그 영향이 미치는 범위
허브의 경우 연결되어 있는 컴퓨터 전체가 하나의 충돌 도메인이 됨.
스위치는 데이터를 동시에 송수신할 수 있는 전이중 통신 방식이기 때문에 충돌이 일어나지 않고 충돌 도메인의 범위도 좁음
ARP ( Address Resolution Protocol)
목적지 컴퓨터의 IP 주소를 이용하여 MAC 주소를 찾기 위한 프로토콜.
이더넷 프레임을 전송하려면 목적지 컴퓨터의 MAC주소를 지정해야 함
ARP 요청 : 출발지 컴퓨터가 목적지 주소를 모르면 MAC주소를 알아내기 위해 네트워크에 브로드캐스트함
ARP 응답 : ARP 요청에 대해 지정된 IP 주소를 가지고 있지 안은 컴퓨터는 응답하지 않지만 , 지정된 IP 주소를 가진 컴퓨터는 MAC 주소를 응답으로 보냄
▶ 이를 통해 출발지 컴퓨터는 MAC 주소를 얻고 이더넷 프레임을 만들 수 있음
ARP 테이블 : 출발지 컴퓨터에서는 MAC 주소를 얻은 후에 MAC 주소와 IP 주소의 매핑 정보를 메모리에 보관. 이후 데이터 통신은 자신의 컴퓨텅 보관된 ARP 테이블을 참고하여 전송
하지만, IP 주소가 변경되면 해당 MAC 주소도 변경되므로 제대로 통신할 수 없음.
따라서, ARP 테이블에서는 보존 기간을 ARP 캐시로 지정하고 일정 시간이 지나면 삭제하고 다시 ARP 요청
윈도우 ARP 캐시 확인 명령어
arp -a
ARP 캐시 강제로 삭제 명령어
arp -d
5. 이더넷의 종류와 특징
5-1. 이더넷 규격
'🏷️CS > Network' 카테고리의 다른 글
[네트워크] 전송 계층 : 신뢰할 수 있는 데이터 전송 (0) | 2023.07.07 |
---|---|
[네트워크] 네트워크 계층 : 목적지에 데이터 전달하기 (0) | 2023.07.02 |
[네트워크] 물리 계층 : 데이터를 전기 신호로 변환 (0) | 2023.07.01 |
[네트워크] 네크워크의 기본 규칙 (0) | 2023.07.01 |
[네트워크] 네트워크 기본 정리 (0) | 2023.06.23 |