41
First IEC Chapter7 Data Link Control Flow Control Error Detection Error Control HDLC

Chapter7 Data Link Control

  • Upload
    melody

  • View
    66

  • Download
    1

Embed Size (px)

DESCRIPTION

Chapter7 Data Link Control. Flow Control Error Detection Error Control HDLC. Flow Control. Flow Control 수신 엔티티의 용량 이상으로 Data 가 넘치지 않도록 송신 엔티티를 제어하는 기술 만약 , Flow Control 이 없으면 Receiver 의 Overflow 가 발생. 처리율

Citation preview

Page 1: Chapter7 Data Link Control

First IEC

Chapter7 Data Link Control

Flow ControlError DetectionError ControlHDLC

Page 2: Chapter7 Data Link Control

2

First IEC

Flow Control

Flow Control 수신 엔티티의 용량 이상으로 Data 가

넘치지 않도록 송신 엔티티를 제어하는 기술

만약 , Flow Control 이 없으면 Receiver의 Overflow 가 발생처리율 < 전송률 Buffer 에 저장 Flow Control

Page 3: Chapter7 Data Link Control

3

First IEC

Flow Control

Flow Control 방법 Sender 에서 보내는 Data 가 Receiver

의 처리 능력을 초과하지 않도록 맞춰줌 수신 데이터를 저장하는 Buffer 가 꽉 차지

않도록 함

Page 4: Chapter7 Data Link Control

4

First IEC

Flow Control

Fragmentation 하는 이유 Receiver 의 Buffer Size 가 제한 Error Check 를 빨리 할 수 있음 Error 발생시 Retransmission 하는

Data 의 양이 적음 Transmission Media 를 효율적으로 공유

Page 5: Chapter7 Data Link Control

5

First IEC

Flow Control

Fragment 의 크기 너무 클 때의 문제점

전송 매체를 점유하는 경우가 증가 불공평한 매체 사용

에러 발생에 의해 다시 전송할 때 부담이 큼 너무 작을 때의 문제점

전송을 위한 부가정보 ( 헤더 등 ) 의 비중이 커짐

Page 6: Chapter7 Data Link Control

6

First IEC

Flow Control

Transmission time 한 Frame 을 송신하는데 걸리는 시간

Propagation time Sender 가 Receiver 에 한 Bit 보내는데

걸리는 시간Sender Receiver

Transmission Media

Transmission Time

Propagation Time

Page 7: Chapter7 Data Link Control

7

First IEC

Flow Control

Frame Transmission Model

Page 8: Chapter7 Data Link Control

8

First IEC

Flow Control

Flow Control 의 종류 정확한 데이터 전송을 위해 ..

일정한 수의 데이터를 보낸 후 잘 받았다는 응답을 받는 형태로 반복

한번에 보내는 데이터의 양에 따라 분류Flow Control

Stop-and-Wait Sliding Window

한 번에 하나의 Frame 전송 한 번에 여러 개의 Frame 전송

Page 9: Chapter7 Data Link Control

9

First IEC

Flow Control

Stop and Wait 송신측은 하나의 Frame 을 전송 수신측은 Frame 을 잘 받았으면 ACK 전송 송신측은 ACK 를 기다림 일정 시간 동안 ACK 가 오지 않으면 재전송 장점

구현하기 쉽고 간단 단점

비효율적 → Frame 수가 적은 경우 사용

Page 10: Chapter7 Data Link Control

10

First IEC

Flow Control

Stop and Wait 의 동작원리단점 : ACK 가 돌아올 때까지 기다리는 시간낭비 Link 의 Utilization 이 저하

Page 11: Chapter7 Data Link Control

11

First IEC

Flow Control

Stop and Wait 의 Link Utilization

Page 12: Chapter7 Data Link Control

12

First IEC

Flow Control

Sliding Window Flow Control 한 번에 여러 개의 Frame 전송 송신 Frame 의 수는 수신측에서 결정 각 Frame 에 Sequence number 부여 ACK 에는 받고자 하는 다음 Frame 의

Sequence number 포함

Page 13: Chapter7 Data Link Control

13

First IEC

Flow Control

Sliding Window 동작 (Sander Window) Frame 을 송신 - 왼쪽 경계가 이동하여 윈도우 축소 ACK 를 수신 - 오른쪽 경계가 이동하여 윈도우를

확장

Page 14: Chapter7 Data Link Control

14

First IEC

Flow Control

Sliding Window 동작 (Receiver Window) Frame 을 수신 - 왼쪽 경계가 이동하여 윈도우 축소 ACK 를 송신 - 오른쪽 경계가 이동하여 윈도우를

확장

Page 15: Chapter7 Data Link Control

15

First IEC

Flow Control

Frame 보내면 한 칸 이동

ACK 받으면한 칸 이동

Frame 받으면 한 칸 이동

ACK 보내면한 칸 이동

전송 후 ACK 를 받은 Frame

수신 후 ACK 를 보내준 Frame

Page 16: Chapter7 Data Link Control

16

First IEC

Flow Control

1

2 34

5 68

79

10

12

11

ACK 받은 Frame

0,1,2 번 잘 받음 . 3 번 전송 요청 .

ACK 보낸 Frame

RR (Receive Ready) n : 이전 것은 잘 받았으니 n 번을 전송해 달라는 의미

Page 17: Chapter7 Data Link Control

17

First IEC

Error Detection

Error Control 수신된 데이터의 에러를 체크하고 정정하기

위한 제어 Error Detection

Error 를 감지하기 위해 송신측에서 특정 비트 정보를 추가해서 전송

Error 가 있으면 재전송 Error Correction

Error 를 감지하면 Error 를 정정

Page 18: Chapter7 Data Link Control

18

First IEC

Error Detection

Parity Check 1 의 수를 even parity 또는 odd parity 로

맞춰줌 에러가 여러 bit 에서 발생하면 체크하지

못함1 0 1 0 0 1 1 0 1 0 1 11 1Even Parity

1 bit error !

Even Parity 아니므로 Error !

1 0 1 0 0 1 1 0 01 1

2 bit error !

Even Parity Error 감지 못함

0 0 0

Page 19: Chapter7 Data Link Control

19

First IEC

Error DetectionCRC(Cyclic Redundancy Check)

Mod-2 division 에 근거한 오류검출 방식 송 · 수신 간에 “ divisor”(n+1 bits) 를

공유함 송신측 : CRC(n bits) 발생기 수신측 : CRC(n bits) 검사기

Page 20: Chapter7 Data Link Control

20

First IEC

Error Detection CRC 연산 방법

수신기는 수신된 프레임을 FCS 로 나누어 나머지가 없으면 에러가 없는 것으로 간주

모듈로 -2 연산 Carry 가 없는 2 진 덧셈 (exclusive-OR 연

산 )예 )

1111+ 1010

-------- 0101

11001x 11

-------------11001

11001 -------------101011

Page 21: Chapter7 Data Link Control

21

First IEC

Error Detection CRC 의 발생과 검사과정

Step-1 : n-bit extra “0” 정보 data 의 뒤에 n-bit 의 “ 0” 을 첨가

Step-2 : “divisor” generates CRC 첨가된 data 를 n+1 bit 의 “ divisor” 로 나누어 그 나머지를

CRC 로 결정Step-3 : CRC attaching

정보 data 뒤에 첨가된 n-bit “0” 대신 n-bit CRC 를 첨가 === 전송 (transmission) ===

Step-4 : CRC check 수신정보 ( 정보 data + CRC) 를 “ divisor” 로 나누어

나머지를 구함 나머지 = “0” ⇒ ‘ACK’ 나머지 ≠ “ 0” ⇒ ‘NAK’

Page 22: Chapter7 Data Link Control

22

First IEC

Error Detection

Page 23: Chapter7 Data Link Control

23

First IEC

Error Detection

Page 24: Chapter7 Data Link Control

24

First IEC

Error ControlError Control 방법

Error Control 은 Error Detection 과 Retransmission 을 포함

Data Link Layer 구현사항 Stop and Wait ARQ Sliding Window ARQ

Error Control

Stop and Wait ARQ Sliding Window ARQ

Go back N ARQ Selective Reject ARQ

Page 25: Chapter7 Data Link Control

25

First IEC

Error Control

ARQ(Automatic Repeat reQuest) 방식 에러 발생시 재전송을 자동으로 요청하는

방식 오류검출 부정응답 (NAK) 프레임 재전송

ARQ 의 종류 Stop and Wait ARQ Go Back N ARQ Selective Reject ARQ

Page 26: Chapter7 Data Link Control

26

First IEC

Error Control

Stop and Wait ARQ Stop and Wait Flow Control 에 손실

혹은 손상된 Frame 을 Retransmission할 수 있도록 확장

Page 27: Chapter7 Data Link Control

27

First IEC

Error Control

기본 Stop and Wait 에 추가할 사항 보낸 Frame 을 Buffer 에 가지고 있어야 함 Frame 식별을 위한 교대로 0 과 1 번호 사용

ACK 손실 체크 Frame 의 오류 발견시에 NAK 사용

Frame 번호에 관계없이 마지막 Frame Retransmission

Timer 사용 Timeout 이 발생하면 Frame 손실로 간주하고

Retransmission 받은 Frame 이 손상된 경우 ACK 가 손상되는 경우

Page 28: Chapter7 Data Link Control

28

First IEC

Error Control

Stop and Wait ARQ 의 동작원리 Stop and Wait 를 기반으로 함 Sender 의 동작

하나의 Frame 만 전송 후 ACK 를 기다림 일정 시간 동안 ACK 가 없으면 Timeout

되므로 Retransmission Receiver 의 동작

0 과 1 을 번갈아 ACK 에 번호를 붙임 받은 Frame 이 손상된 경우 , Frame 을 버림

Page 29: Chapter7 Data Link Control

29

First IEC

Error Control

Stop and Wait ARQ ( 손상된 Frame)

1

1

0

Page 30: Chapter7 Data Link Control

30

First IEC

Error Control

Stop and Wait ARQ ( 손실된 Frame)

Page 31: Chapter7 Data Link Control

31

First IEC

Error Control

Stop and Wait ARQ ( 손실된 ACK)

Page 32: Chapter7 Data Link Control

32

First IEC

Error Control

Sliding Window ARQ Sliding Window Flow Control 에 손실

혹은 손상된 Frame 을 Retransmission할 수 있도록 확장

Page 33: Chapter7 Data Link Control

33

First IEC

Error Control

기본 Sliding Window 에 추가할 사항 보낸 Frame 을 Buffer 에 가지고 있어야 함 Frame 의 오류 발견시에 NAK 사용

NAK 번호는 손상된 Frame 번호만 전송 Timer 사용

Timeout 이 발생하면 Frame 손실로 간주하고 Retransmission

받은 Frame 이 손상된 경우 ACK 가 손상되는 경우

Page 34: Chapter7 Data Link Control

34

First IEC

Error Control

Retransmission 방법에 따라 분류 Go Back N ARQ

하나의 Frame 이 손실되면 ACK 이후의 모든 Frame 을 Retransmission

Selective Reject ARQ 손상되거나 손실된 Frame 만 Retransmission

Page 35: Chapter7 Data Link Control

35

First IEC

Error Control

Go Back N ARQ 의 동작원리 Sliding window 를 기반으로 함 Sender 의 동작

한번에 여러 Frame 전송 에러 발생시 에러 발생한 Frame 부터 모두

Retransmission Receiver 의 동작

에러가 발생하지 않으면 다음으로 받을 Frame 의 번호를 ACK 에 표시하여 전송

에러 발생하면 에러 발생한 Frame 의 번호를 포함하여 NAK 전송

Page 36: Chapter7 Data Link Control

36

First IEC

Error Control

Go Back N ARQ ( 손상된 Frame)

손상된 Frame 이후수신된 Frame 은

패기

Page 37: Chapter7 Data Link Control

37

First IEC

Error Control

Go Back N ARQ ( 손실된 Frame)

도착한 Frame의

순서 검사

손상된 Frame 이후수신된 Frame 은 패기

Page 38: Chapter7 Data Link Control

38

First IEC

Error Control

Go Back N ARQ ( 손실된 ACK, NAK)

측정 타이머 가동

마지막 ACK 이후 전송했던

모든 Frame 을 재전송

Page 39: Chapter7 Data Link Control

39

First IEC

Error Control

Selective Reject ARQ 의 동작원리 Sliding Window 를 기반으로 함 Sender 의 동작

한 번에 여러 Frame 전송 손상되거나 손실된 Frame 만 Retransmission

Receiver 의 동작 에러가 발생하지 않으면 다음으로 받을 Frame 의

번호를 ACK 에 표시하여 전송 에러 발생하면 에러 발생한 Frame 의 번호를 포함하여

NAK 전송

Page 40: Chapter7 Data Link Control

40

First IEC

Error Control

Selective Reject ARQ ( 손상된 Frame)

재전송 요구된Frame 을 찾아 해당 Frame 만

재전송

Frame2 를 다시 받은 후에 ACK5 로

응답

수신 Frame 의 완전한 재배치까지

모든 Frame 을 유지

Page 41: Chapter7 Data Link Control

41

First IEC

Error Control

Go Bank N vs Selective Reject Frame 전송의 효율적인 측면

Selective Reject ARQ 가 유리 Sender 와 Receiver 의 구현 측면

Receiver 에서 요구하는 재배열 및 저장 공간의 복잡도

Sender 에서 요구하는 특정 Frame 선택을 위한 추가적인 로직이 필요함

Selective Reject ARQ 가 불리 구현의 단순성 때문에 Go Back N ARQ 를

선호