이 글은 위의 책을 읽으며 제 생각과 함께 정리하는 내용입니다.
데이터 링크 계층?
데이터 링크 계층의 특징은 크게 두 가지 입니다.
1. 데이터 전송에 있어서 오류를 탐지하고 수정합니다.
2. 각 장치를 식별하기 위해 MAC주소로 이루어진 주소 체계를 관리합니다
오류 감지 방식
오류를 감지하는데 3 가지 방식이 있습니다
1. 회선 제어
회선 제어는 오류를 감지하기보다는 회피하는 방법으로 충돌 현상이 발생하지 않게 제어합니다
2. 오류 제어
CRC 혹은 패리티 검사로 오류 탐지 코드를 사용합니다.
탐지된 오류는 해밍 코드를 이용하여 정정합니다.
3. 흐름제어
흐름 제어는 송,수신 간의 데이터 처리 속도 차이를 조절하기 위해 수신자의 상황에 따라 송신자의 데이터 전송량을 조정하는 방법입니다.
이더넷?
이더넷이란 다수의 컴퓨터, 허브, 스위치 등을 하나의 인터넷 케이블에 연결한 네트워크 구조입니다.
이더넷은 CSMA/CD라고하는 프로토콜을 사용했었습니다. (더미 허브에서 나타나는 충돌에 대한 방안!)
하지만 이제 스위칭 허브에서 MAC주소를 이용한 통신으로 그 역할을 대신 해주기 때문에 사용하지 않습니다.
MAC 주소?
랜 카드 같은 "network interface card"에 할당된 고유 값입니다.
어디에 사용?
1계층에서 온 데이터가 2계층으로 넘어가면 2계층에서는 이 데이터(bit)에 헤더와 트레일러를 붙입니다.
붙이는 헤더에 송신자의 MAC주소, 수신자의 MAC주소가 구성되어 있습니다.
추가로 헤더에 IP의 프로토콜의 유형이 들어갑니다. (IPv4, IPv6, ARP)
ARP?
근데 보내는 사람의 MAC주소는 거기서 데이터가 나오니 알수 있다쳐도 목적지의 MAC주소는 어떻게 알까요?
이때 사용하는것이 ARP입니다.
ARP은 보내고자 하는 IP주소에 해당하는 MAC주소를 알려주는 프로토콜입니다.
과정은 이렇습니다.
- 컴퓨터A는 보내고자 하는 IP에 MAC주소가 있는지 자기의 ARP테이블을 확인합니다.
- 없다면 컴퓨터A는 같은 허브에 묶여 있는 모든 장치에게 목적지의 IP를 주며 "IP가 동일하면 MAC주소를 내놔라" 합니다.
- 모든 장치는 IP를 비교하고 동일한 장치가 나타날 경우, 그 장치는 MAC주소를 넘겨줍니다.
- 그 후 컴퓨터A는 받아온 MAC주소와 매핑된 IP를 자기 메모리의 ARP 테이블에 저장합니다.
- 다시 통신을 해야할시 1번으로 돌아갑니다.
그런데 아무래도 허브단에서 이루어지기 때문에 LAN환경에서만 가능합니다.
그러면 WAN환경에서는 어떻게 ARP가 사용될까요?
그래서 우리가 찾는 IP를 가진 장치가 허브와 연결되있지 않다면, 연결된 라우터로 이동하여 찾는 ip를 가진 장치를 다시 찾게 됩니다.
근데 중요한건 스위치에만 ARP테이블이 있는게 아니라, 각 컴퓨터에도 존재한다!
컴퓨터가 이미 통신하고자하는 IP의 MAC주소를 가지고 있다면 스위치에게 MAC주소를 찾아오라고 하지 않고,
MAC주소를 주면서 이 장치와 연결하겠다고 요청한다.
스위칭 허브?
https://ddidding.tistory.com/213 에 간단히 설명했다.
전송 방향에 따른 통신 방식
3 가지 종류가 있다.
- 단방향 통신
한쪽에서는 송신만, 반대편은 수신만 가능하다.
ex) TV, 라디오 - 양방향 통신(반이중 방식)
하나의 통신선에서 송,수신이 가능하다.
하지만 한쪽이 송신중이면 반대편은 수신만 가능하다.
ex) 더미 허브 - 양방향 통신(전이중 통신)
하나의 통신선에서 송,수신이 가능하다.
한쪽이 송신중이더라도 반대편이 송신이 가능하다, 수신도 마찬가지
ex) 스위칭 허브
용어 정리
데이터 링크 계층 :데이터 전송에 있어서 오류를 감지, 수정하는 계층
프레임 : 데이터 링크 계층에서 사용하는 데이터 단위, 다른 계층과 달리 데이터구조에 트레일러가 추가적으로 있다.
트레일러 : 전달한 데이터에 오류가 없는지 검출하기 위한 용도로 사용되는 데이터
CSMA/CD : 전류의 강도를 확인해 케이블이 사용 중인지 확인하는 방식
케이블이 사용 가능한지 확인하고 사용 가능하면 전송, 아니면 대기 (눈치 게임)
ARP : IP주소와 MAC주소를 매핑하기 위한 프로토콜
이더넷 : 허브나 스위치에 여러 컴퓨터를 연결한 형태의 LAN
'컴퓨터 공학 > [책] 모두의 네트워크' 카테고리의 다른 글
[03] 물리 계층, 데이터를 전기 신호로 변환하는 단계 (0) | 2024.05.22 |
---|---|
[02] 네트워크 통신을 위한 약속 (0) | 2024.05.21 |
[01] 네트워크란 무엇일까? (0) | 2024.05.18 |