Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
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 31
Tags
more
Archives
Today
Total
관리 메뉴

rabbit97 님의 블로그

OSI 7계층 중 데이터링크 계층에 대해 본문

코딩 공부

OSI 7계층 중 데이터링크 계층에 대해

rabbit97 2024. 9. 10. 09:39

주제: 데이터 링크 계층이란?

참고블로그 : https://rf-yeolmu.tistory.com/138

 

2. 제2 계층: 데이터 링크 계층(Data Link Layer)

데이터 링크 계층(Data Link Layer)은 OSI 7 계층 중 두 번째 계층으로, 네트워크 기기 간 데이터 전송, 오류 검출 및 제어, 그리고 흐름 제어 등을 담당하는 역할을 수행합니다.

 

제1계 층만 있다면 네트워크 기기간에 데이터를 전송할 때 엄청난 비효율이 발생합니다. 원하는 목적지로 전송할 수 없어서 모든 곳에 동시에 전송하게 된다던가, 아니면 많은 케이블로 각각의 기기를 모두 연결해야 하는 상황이 발생합니다.

 

 

이런 문제를 해결하기 위해 생긴 것이 상위 계층들입니다. 그중에 데이터 링크 계층(Data Link Layer)은 신호를 올바른 목적지까지 전달하고, 전송 중 발생할 수 있는 오류를 검출 및 수정하며, 흐름 제어를 수행하는 역할을 합니다.

 

 

데이터 전송

목적지로 데이터를 전송하는 것에 있어서 구체적인 예시를 아래 그림을 통해 확인해 보겠습니다. AA라는 주소를 가진 컴퓨터가 DD라는 주소를 가진 컴퓨터가 있고 이 컴퓨터들이 각각 스위치라는 모듈과 연결되어 있습니다. 이러한 상황에서 데이터를 전송하는 방식을 나타내었습니다. 

데이터 링크 계층(Data Link Layer) 구성1

데이터 앞쪽에 송신자의 주소(AA)와 수신자의 주소(DD)를 붙이고 그 뒤에 데이터를 전송하면 스위치를 통해 원하는 목적지까지 데이터를 전송할 수 있게 됩니다.

 

오류 검출

오류 검출 및 수정은 어떤 식으로 진행이 되는 걸까요? 기존 AA 주소 컴퓨터에서 스위치를 통해 DD로 데이터를 보낼 때 AA | DD | 0100011로 보냈습니다. 이번에는 그 뒤에 추가로 오류를 검출할 수 있는 코드를 추가합니다.

데이터 링크 계층(Data Link Layer) 구성2

AA | DD | 0100011 | 0x1A4D(추가) 해당 데이터가 잘 보내졌는지 확인을 할 수 있는 코드가 추가되었습니다. 그리고 아래 과정을 거치면서 오류를 확인할 수 있습니다.

 

1. 송신 측(AA)에서 계산을 수행하여 오류 확인 코드를 생성.
2. 이 코드를 데이터 뒷부분에 추가되어 함께 전송
3. 수신 측(DD)에서 도착한 오류코드에 대해 동일한 계산을 수행
4. 수신 측에서 계산한 값과 프레임에 포함된 원래의 값을 비교
5. 두 값이 일치하면, 데이터 전송이 정상적으로 이루어진 것으로 판단

6. 만약 일치하지 않으면, 오류가 발생한 것으로 간주하고 재전송을 요청

 

정리하자면, 데이터 링크 계층은 기기 간 데이터 전송 흐름 제어와 오류 검출 및 제어 등을 담당하는 역할을 수행하며, 이더넷, 맥 주소, 스위치 등이 해당 계층에서 작동하는 예시입니다.

'코딩 공부' 카테고리의 다른 글

OSI 7계층 중 전송 계층이란?  (0) 2024.09.10
OSI 7계층 중 네트워크 계층이란?  (1) 2024.09.10
OSI 7계층 중 물리계층에 대해  (2) 2024.09.02
OSI의 7계층이란??  (1) 2024.08.28
클라이언트와 서버란??  (0) 2024.08.26