1 / 108

Chapter 11 데이터 링크 제어 (Data Link Control)

Chapter 11 데이터 링크 제어 (Data Link Control) . 11 장 데이터 링크 제어와 프로토콜. 11.1 프레임 짜기 11.2 흐름 및 오류 제어 11.3 프로토콜 11.4 무잡음 채널 11.5 잡음 있는 채널 11.6 HDLC 11.7 점 대 점 프로토콜 11.8 요약. 11.1 프레임 짜기 (FRAMING).

hyunki
Download Presentation

Chapter 11 데이터 링크 제어 (Data Link Control)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 11 데이터 링크 제어 (Data Link Control)

  2. 11 장 데이터 링크 제어와 프로토콜 11.1 프레임짜기 11.2 흐름 및 오류 제어 11.3 프로토콜 11.4 무잡음 채널 11.5 잡음 있는 채널 11.6 HDLC 11.7 점 대 점 프로토콜 11.8 요약

  3. 11.1 프레임 짜기(FRAMING) 데이터링크층은 비트들을 프레임 안에 만들어 넣어 각 프레임이 다른 프레임과 구분 되도록 해야 한다. 우편 시스템은 일종의 프레임 짜기의 예를 수행한다고 할 수 있다. 봉투에 편지를 넣는 간단한 행위로 인해 봉투가 분리 기능을 함으로써 서로 다른 정보가 뒤섞이지 않도록 하는 것이다. Topics discussed in this section: Fixed-Size Framing Variable-Size Framing

  4. 프레임 짜기 1. 고정크기 프레임 2. 가변 크기 프레임 • 문자 중심 프로토콜 • 비트 중심 프로토콜

  5. 고정크기 프레임 • 고정 길이 또는 가변 길이 - 예 : ATM 광역네트워크의 셀(cell) • 가변크기 프레임 - 주로 LAN에서 사용 - 프레임이 끝나는 곳과 다음 프레임이 시작하는 곳 지정

  6. 문자 중심 프로토콜(A frame in a character-oriented protocol) • 전달되는 데이터는 코딩 시스템의 8비트 문자(부록 A) • 시작과 마지막에 플래그 추가 • 문자 중심 프로토콜 프레임

  7. 바이트 채워 넣기(stuffing) 와 빼기(unstuffing) • 정보 내에 플래그로 사용되는 패턴이 있을 경우 이를 플래그로오인하지 않게 하기 위한 것

  8. 바이트 채우기는 텍스트에 플래그나 ESC 문제가 있을 때 여분의 1 바이트를 추가하는 처리이다. Byte stuffing is the process of adding 1 extra byte whenever there is a flag or escape character in the text.

  9. 비트 중심 프로토콜 • Bit-oriented protocol • 프레임의 데이터 부분을 전부 bit열로 인식 • 플래그는 “01111110”비트 패턴 사용 • 비트 중심 프로토콜의 프레임

  10. 비트 채워 넣기는 수신자가 데이터 속에 있는 “01111110”을 플래그로 오해하지 않도록 “0” 다음에 연속되는 “1”이 다섯개 있으면 여분의 “0” 비트를 추가하는 처리이다. Bit stuffing is the process of adding one extra 0 whenever five consecutive 1s follow a 0 in the data, so that the receiver does not mistake the pattern 0111110 for a flag.

  11. 비트채우기(stuffing)와 빼기(unstuffing)

  12. 11.2 흐름 제어와 오류 제어 데이터링크층의 가장 중요한 책무는 흐름 제어(flow control)와오류 제어(error control)이다. 총체적으로 이 기능들을 데이터링크 제어(data link control)라고 한다. Topics discussed in this section: Flow ControlError Control

  13. 흐름 제어는 송신자가 확인응답을 받기 전에 보낼 수 있는 데이터의 양을 제한하기 위해 사용하는 일련의 절차이다. Flow control refers to a set of procedures used to restrict the amount of data that the sender can send before waiting for acknowledgment.

  14. 데이터링크 층의 오류제어는 데이터 재전송을 요구하는 ARQ를 기반으로 한다. Error control in the data link layer is based on automatic repeat request, which is the retransmission of data.

  15. 11.3 프로토콜 이제 데이터링크층이 한 노드로부터 다른 노드로 데이터를 보내기 위해 어떻게 프레임 짜기, 흐름 제어 및 오류 제어를 엮는지 알아보자. 이러한 프로토콜들은 보통 프로그램 언어를 사용하여 소프트웨어로 구현된다. 구현 언어에 좌우되지 않기 위해서 언어 규칙에 구애 받지 않고 절차 자체를 설명하기 위해 각 프로토콜을 가성코드를 사용하여 설명한다.

  16. 이 장에서 논의된 프로토콜의 종류

  17. 11.4 무잡음(NOISELESS) CHANNELS 우선 프레임 손실도 없고 복제되지도 않으며 손상되지 않는 이상적인 채널을 가정하자. 이러한 종류의 채널에 대해서는 두 개의 프로토콜을 소개한다. Topics discussed in this section: Simplest Protocol Stop-and-Wait Protocol

  18. 흐름이나 오류제어 없는 가장 간단한 프로토콜 설계

  19. 가장 간단한 프로토콜의 송신측 알고리즘

  20. 가장 간단한 프로토콜의 수신측 알고리즘

  21. Example 11.1 그림 11.7은 이 프로토콜을 사용하는 통신의 예이다. 매우 간단한 것을 볼 수 있다. 송신자는 일련의 프레임을 수신자와 무관하게 보낸다. 세 개의 프레임을 보내기 위해서는 송신자 쪽에서는 세 개의 이벤트가 발생하고 수신자 쪽에서도 세 개의 이벤트가 발생한다. 데이터 프레임은 기우뚱한 상자로 나타내져 있으며 상자의 높이가 처음 비트와 마지막 비트의 전송 시간의 차이를 보여준다.

  22. Figure 11.7 Flow diagram for Example 11.1

  23. 정지 후 대기(Design of Stop-and-Wait) Protocol

  24. 정지-후-대기 프로토콜을 위한 송신측 알고리즘 (Sender-site algorithm for Stop-and-Wait Protocol)

  25. 정지-후-대기를 위한 수신측 알고리즘 (Receiver-site algorithm for Stop-and-Wait Protocol)

  26. Example 11.2 그림 11.9는 이 프로토콜을 사용하는 통신의 한 예를 보여준다. 여전히 매우 간단하다. 송신자는 프레임을 하나 보내고 수신자로부터의 응답을 기다린다. ACK가 도달하면 송신자는 다음 프레임을 보낸다. 이 프로토콜에서 프레임을 두 개 보내는 데는 송신자에게는 네 개의 이벤트가 연루되고 수신자에게는 두 개의 이벤트가 연루된다는 것에 유의하라.

  27. Figure 11.9 Flow diagram for Example 11.2

  28. 11.5 잡음 있는(NOISY) CHANNELS 정지 후 대기 프로토콜이 어떻게 흐름 제어를 더 할 것인지에 대한 아이디어를 제공하지만 무잡음 채널은 존재하지 않는다. 오류를 무시할 수 있거나 또는 오류 제어를 우리 프로토콜에 추가해야 한다. 본 절에서는 오류 제어를 사용하는 세 개의 프로토콜을 논의 한다. Topics discussed in this section: Stop-and-Wait Automatic Repeat RequestGo-Back-N Automatic Repeat RequestSelective Repeat Automatic Repeat Request

  29. 정지-후-대기 ARQ에서 오류제어는 전송된 프레임의 사본을 가지고 있다가 타이머가 종료되면 프레임을 재전송 한다. Error correction in Stop-and-Wait ARQ is done by keeping a copy of the sent frame and retransmitting of the frame when the timer expires.

  30. 정지-후-대기 ARQ에서 순서 번호는 프레임에 부여하여 사용한다. 순서번호는 모듈러-2 연산을 기반으로 한다. In Stop-and-Wait ARQ, we use sequence numbers to number the frames. The sequence numbers are based on modulo-2 arithmetic.

  31. 정지-후-대기 ARQ에서 확인응답 번호는 예상되는 다음 프레임의 순서 번호를 모듈러-2연산으로 만들어 보낸다. In Stop-and-Wait ARQ, the acknowledgment number always announces in modulo-2 arithmetic the sequence number of the next frame expected.

  32. Figure 11.10 Design of the Stop-and-Wait ARQ Protocol

  33. Algorithm 11.5 Sender-site algorithm for Stop-and-Wait ARQ (continued)

  34. Algorithm 11.5 Sender-site algorithm for Stop-and-Wait ARQ (continued)

  35. Algorithm 11.6 Receiver-site algorithm for Stop-and-Wait ARQ Protocol

  36. Example 11.3 그림 11.11은 정지 후 대기 ARQ의 예를 보여준다. 0번 프레임이 전송되어 응답을 받는다. 1번 프레임이 손실되어 타임아웃 이후에 재전송된다. 재전송된 1번 프레임이 응답되고 타이머가 멈춘다. 0번 프레임이 전송되고 응답받지만 응답 프레임이 손실된다. 송신자는 자기 프레임이 손실되었는지 응답 프레임이 손실되었는지 알지 못하며 0번 프레임을 다시 보내는데 이번에는 응답이 도달한다.

  37. Figure 11.11 Flow diagram for Example 11.3

  38. Example 11.4 정지 후 대기 ARQ에서 회선의 대역폭이 1 Mbps이고 1비트가 왕복하는데 20 ms가 소요된다고 가정하라. 대역폭-지연 곱은 얼마인가? 시스템의 데이터 프레임의 길이가 1,000비트라면 회선의 가용도는 얼마인가? Solution 대역폭-지연 곱은 다음과 같다.

  39. Example 11.4(continued) 이 시스템은 송신자로부터 데이터가 수신자에게 전달되고 다시 수신자로부터 송신자로 돌아오기까지 20,000 비트를 보낼 수 있다. 그러나 시스템은 오직 1000 비트만을 전송한다. 우리는 이 회선의 가용도는 오직 1000/20000 즉 5%라고 할 수 있다. 이와 같은 이유에서 높은 대역폭을 갖거나 긴 지연 시간을 갖는 회선에서는 정지 후 대기 ARQ는회선의 용량을 낭비하는 셈이다.

  40. Example 11.5 만일 예제 11.4에서 응답에 무관하게 15개의 프레임을 전송할 수 있다면 가용도는 어떻게 되는가? Solution 대역폭-지연 곱은 여전히 20,000비트이다. 시스템은 15개의 프레임 즉 15,000비트를 왕복 지연 시간 동안에 전송할 수 있다. 이는 가용도가 15000/20000 즉 75%라는 것을 의미한다. 물론 손상된 프레임을 재전송해야 하므로 가용도는 많이 떨어지게 된다.

  41. Go-Back-N 프로토콜 N 복귀 프로토콜에서 순서번호는 모듈로 2m인데, 여기서 m은 비트 단위의 순서 번호 필드의 길이이다. In the Go-Back-N Protocol, the sequence numbers are modulo 2m, where m is the size of the sequence number field in bits.

  42. Figure 11.12 Send window for Go-Back-N ARQ

  43. 송신 창은 세 개의 변수 Sf , Sn, Ssize를 갖는 크기가 2m − 1 인가상의 상자를 정의하는 추상적인 개념이다. The send window is an abstract concept defining an imaginary box of size 2m − 1 with three variables: Sf, Sn, and Ssize.

  44. 송신 창은 적법한 응답이 도착하면 한 칸 이상 밀려 갈 수 있다. The send window can slide one or more slots when a valid acknowledgment arrives.

  45. Figure 11.13 Receive window for Go-Back-N ARQ

  46. 수신 창은 한 개의 변수 Rn을 갖는 크기가 1인 가상 상자를 정의하는 추상적인 개념이다. 바른 프레임이 도달했을 때 창이 밀려지며 항상 1칸 씩 밀린다. The receive window is an abstract concept defining an imaginary box of size 1 with one single variable Rn. The window slides when a correct frame has arrived; sliding occurs one slot at a time.

  47. Figure 11.14 Design of Go-Back-N ARQ

  48. Figure 11.15 Window size for Go-Back-N ARQ

  49. N 복귀 ARQ에서는 송신 창의 크기는 2m보다 작아야 하며 수신 창의 크기는 항상 1이다. In Go-Back-N ARQ, the size of the send window must be less than 2m; the size of the receiver window is always 1.

  50. Algorithm 11.7 Go-Back-N sender algorithm (continued)

More Related