6 데이터 링크 계층 학습 목표 오류 제어, 흐름 제어의 원리와 동작 방식을 이해한다. 통신 프로토콜에서 윈도우의 개념과 동작 방식을 이해한다. 양방향 통신을 지원하는 슬라이딩 윈도우 프로토콜을 알아본다. HDLC 프로토콜을 통해 프로토콜을 구현하는 원리를 이해한다. 6 데이터 링크 계층
1절. 프로토콜의 기초 데이터 링크 계층은 두 호스트를 1:1로 통신하기 위한 점대점 방식을 지원 주요 기능 연결 구성도 오류제어 : 전진(순방향) 오류 수정방식, 후진(역방향) 오류 수정방식 흐름제어 데이터링크 주소 = MAC 주소 연결 구성도 점대점: 주소 개념 불필요 [그림 6-1(a)] 멀티 드롭: 주소 개념 필요 [그림 6-1(b)]
1절. 프로토콜의 기초 프레임의 종류 정보 프레임: I 프레임 긍정 응답 프레임: ACK 프레임 상위 계층이 전송 요구한 데이터를 송신하는 용도 순서번호, 송수신 호스트 정보 등이 포함됨 긍정 응답 프레임: ACK 프레임 전송 데이터가 올바르게 도착했음을 회신하는 용도 데이터를 수신한 호스트가 데이터를 송신한 호스트에게 전송 부정 응답 프레임: NAK 프레임 전송 데이터가 깨져서 도착했음을 회신하는 용도 데이터를 송신한 호스트는 원래의 데이터를 재전송하여 오류 복구
1절. 프로토콜의 기초 오류, 흐름 제어가 없는 프로토콜 가정 단방향 통신: 송신 호스트에서 수신 호스트 한쪽 방향으로만 데이터 전송 전송 오류가 없는 물리 매체: 어떠한 전송 오류도 발생하지 않음 무한 개의 수신 버퍼: 흐름 제어 기능이 필요 없음 단순 프로토콜 송신 호스트는 원하는 만큼 자유롭게 프레임을 전송할 수 있음 오류 제어: 프레임 분실/변형 오류가 발생하지 않음 흐름 제어: 수신 버퍼가 무한 개므로 분실 오류 없음
1절. 프로토콜의 기초 정지-대기(Stop & Wait) 프로토콜 송신측에서 하나의 프레임을 전송한 후 수신측으로부터 응답이 오기까지 기다림 응답이 긍정응답이면 다음 프레임을, 부정응답이면 프레임을 재전송함 단방향 통신: 송신 호스트에서 수신 호스트 한쪽 방향으로만 데이터 전송 프레임을 전송할 때 마다 수신측의 응답을 기다려야 하므로 전송효율이 가장 낮다
1절. 프로토콜의 기초 정지-대기(Stop & Wait) 프로토콜
2절. 슬라이딩 윈도우 프로토콜 윈도우 크기 : 수신측으로부터 응답을 받지 않고 보낼 수 있는 프레임 최대 갯수 송신 윈도우 크기 = 3인 경우 [그림 6-8] 윈도우 크기
2절. 슬라이딩 윈도우 프로토콜 슬라이딩 윈도우 프로토콜
2절. 슬라이딩 윈도우 프로토콜 기본 절차 양방향 통신을 지원 오류 제어와 흐름 제어 기능을 모두 지원 송신 호스트는 정보 프레임(전송 데이터 + 순서 번호 + 오류 검출 코드)을 순서 번호에 따라 순차적으로 전송함 정보 프레임을 수신한 수신 호스트가 응답하는 순서 번호는 정상적으로 수신한 번호가 아닌 다음에 수신하기를 기대하는 번호를 회신하는 것이 일반적임 송신 호스트가 관리하는 송신 윈도우는 전송은 되었지만 긍정 응답이 회신되지 않은 프레임을 보관함
2절. 슬라이딩 윈도우 프로토콜 흐름 제어 순서 번호 윈도우 크기 프레임 별로 부여되는 일련 번호 0 부터 임의의 최댓값까지 순환 방식으로 사용 일반적으로 순서 번호의 최댓값이 송신 윈도우 크기보다 커야 함 프레임에서 순서 번호의 공간 크기 = n 비트: 순서 번호의 범위는 0 ~ 2n – 1 윈도우 크기 긍정 응답 프레임을 받지 않고 연속으로 전송할 수 있는 프레임의 최대 개수
2절. 슬라이딩 윈도우 프로토콜 연속형 전송 정지-대기 프로토콜은 송신 윈도우 크기가 1인 경우 연속형 정지: ACK 프레임을 받지 않고 여러 프레임을 연속으로 전송 장점: 오류 가능성이 적은 환경에서 효율적 오류 해결 방법 선택적 재전송: 오류가 발생한 프레임만 재전송 고백 N: 오류가 발생한 프레임 이후의 모든 프레임을 재전송 예 [그림 6-9, 6-10] 윈도우 크기 = 8 10 번 ~ 17 번 프레임을 연속 전송 12 번 프레임만 전송 오류 발생
2절. 슬라이딩 윈도우 프로토콜 연속형 전송 고백 N 방식 [그림 6-9] 선택형 재전송[그림 6-10)
2절. 슬라이딩 윈도우 프로토콜 피기배킹 정보 프레임이 응답 프레임의 기능까지 수행 정보 프레임 = 정보 프레임 + 응답 프레임 2 개의 순서 번호: 전송 데이터용 순서 번호, 응답용 순서 번호 장점: 응답 프레임의 전송 회수가 줄어 전송 효율이 좋아짐 표기 방법: I(m, n) m: 정보 프레임에서 사용하는 전송 데이터의 순서 번호 n: 응답 프레임에서 사용하는 응답 순서 번호
2절. 슬라이딩 윈도우 프로토콜 피기배킹 방식
3절. HDLC 프로토콜 High level Data Link Protocol : 대표적인 데이터링크 프로토콜 일대일, 일대다 연결 환경을 지원 단방향, 반이중, 전이중 통신을 모두 지원 오류제어 방식으로 Go-back-N과 선택적 재전송방식을 사용 흐름제어 방식으로 슬라이딩윈도우 방식을 사용 호스트의 종류 주국: 명령을 전송하는 호스트 종국: 명령에 대한 응답을 회신하는 호스트 혼합국: 주국과 종국 기능을 모두 지닌 호스트 기본 동작 원리 주국이 종국에게 명령을 전송하고 종국은 주국에게 응답을 회신함
3절. HDLC 프로토콜 프레임 구조 [그림 6-12] 비트 프레임: 프레임의 시작과 끝에 플래그(01111110) 사용 Address: 일대다 환경을 지원 Control: 프레임 종류를 구분 Checksum: CRC-CCITT 생성 다항식 사용 정보 프레임 ㅁ 감독 프레임 : 응답(ACK,NACK 등) 3 비트 크기의 순서 번호: 0 ~ 7 Seq: 정보 프레임의 순서 번호 Next: 피기배킹 목적의 응답용 순서 번호
3절. HDLC 프로토콜 프레임 종류 비번호 프레임 순서 번호가 없는 프레임을 의미 SABM(Set ABM): 비동기 균형 모드의 연결 설정을 요구 SNRM(Set NRM): 정규 응답 모드의 연결 설정을 요구 SARM(Set ARM): 비동기 응답 모드의 연결 설정을 요구 DISC: 연결 해제를 요구 RSET: 리셋 기능을 수행 FRMR: 프레임 수신을 거부 UA: 비번호 프레임에 대한 응답 기능을 수행
3절. HDLC 프로토콜 데이터 전송모드 종류 연결 설정 모드의 종류: NRM, ABM, ARM 정규 응답(Normal Response Mode) 불균형 모드를 의미하므로, 호스트 하나는 주국이고 다른 하나는 종국 종국에서 데이터를 전송하려면 주국의 허락이 필요(반이중 통신) 비동기 균형(Asynchronous Balanced Mode) 두 호스트 모두 혼합국으로 동작 양쪽에서 명령과 응답을 전송할 수 있음(전이중 통신) 비동기 응답(Asynchronous Response Mode) 불균형 모드주국의 허락 없이 종국에서 데이터를 전송할 수 있음(전이중 통신) 오류복구 등의 제어기능은 주국에서만 가능
3절. HDLC 프로토콜 LAP LAPB [그림 6-15] 비동기 응답 모드인 ARM으로 동작 주국에서 SARM 명령을 전송하여 연결을 설정하는 경우 [그림 6-14(a)] LAPB [그림 6-15] 양쪽 호스트가 혼합국으로 동작